@charset "UTF-8";
/********************************************************************************
                    oo

88d8b.d8b. .d8888b. dP 88d888b.
88'`88'`88 88'  `88 88 88'  `88
88  88  88 88.  .88 88 88    88
dP  dP  dP `88888P8 dP dP    dP

********************************************************************************/
/********************************************************************************

.8888b                                  dP            dP   oo
88   "                                  88            88
88aaa  .d8888b. dP    dP 88d888b. .d888b88 .d8888b. d8888P dP .d8888b. 88d888b.
88     88'  `88 88    88 88'  `88 88'  `88 88'  `88   88   88 88'  `88 88'  `88
88     88.  .88 88.  .88 88    88 88.  .88 88.  .88   88   88 88.  .88 88    88
dP     `88888P' `88888P' dP    dP `88888P8 `88888P8   dP   dP `88888P' dP    dP

********************************************************************************/
/**/
/**
 * Foundation for Sites by ZURB
 * Version 6.5.3
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
@import url("https://fonts.googleapis.com/css?family=Roboto:400,500,700,900&display=swap");
.grid-container {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  max-width: 78.75rem;
  margin-left: auto;
  margin-right: auto; }
  @media print, screen and (min-width: 33.75em) {
    .grid-container {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .grid-container.fluid {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    @media print, screen and (min-width: 33.75em) {
      .grid-container.fluid {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
  .grid-container.full {
    padding-right: 0;
    padding-left: 0;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }

.grid-x {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap; }

.cell {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  min-height: 0px;
  min-width: 0px;
  width: 100%; }
  .cell.auto {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 0px;
    flex: 1 1 0px; }
  .cell.shrink {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto; }

.grid-x > .auto {
  width: auto; }

.grid-x > .shrink {
  width: auto; }

.grid-x > .small-shrink, .grid-x > .small-full, .grid-x > .small-1, .grid-x > .small-2, .grid-x > .small-3, .grid-x > .small-4, .grid-x > .small-5, .grid-x > .small-6, .grid-x > .small-7, .grid-x > .small-8, .grid-x > .small-9, .grid-x > .small-10, .grid-x > .small-11, .grid-x > .small-12 {
  -ms-flex-preferred-size: auto;
  flex-basis: auto; }

@media print, screen and (min-width: 33.75em) {
  .grid-x > .medium-shrink, .grid-x > .medium-full, .grid-x > .medium-1, .grid-x > .medium-2, .grid-x > .medium-3, .grid-x > .medium-4, .grid-x > .medium-5, .grid-x > .medium-6, .grid-x > .medium-7, .grid-x > .medium-8, .grid-x > .medium-9, .grid-x > .medium-10, .grid-x > .medium-11, .grid-x > .medium-12 {
    -ms-flex-preferred-size: auto;
    flex-basis: auto; } }

@media print, screen and (min-width: 46.875em) {
  .grid-x > .large-shrink, .grid-x > .large-full, .grid-x > .large-1, .grid-x > .large-2, .grid-x > .large-3, .grid-x > .large-4, .grid-x > .large-5, .grid-x > .large-6, .grid-x > .large-7, .grid-x > .large-8, .grid-x > .large-9, .grid-x > .large-10, .grid-x > .large-11, .grid-x > .large-12 {
    -ms-flex-preferred-size: auto;
    flex-basis: auto; } }

@media screen and (min-width: 64em) {
  .grid-x > .xlarge-shrink, .grid-x > .xlarge-full, .grid-x > .xlarge-1, .grid-x > .xlarge-2, .grid-x > .xlarge-3, .grid-x > .xlarge-4, .grid-x > .xlarge-5, .grid-x > .xlarge-6, .grid-x > .xlarge-7, .grid-x > .xlarge-8, .grid-x > .xlarge-9, .grid-x > .xlarge-10, .grid-x > .xlarge-11, .grid-x > .xlarge-12 {
    -ms-flex-preferred-size: auto;
    flex-basis: auto; } }

.grid-x > .small-1, .grid-x > .small-2, .grid-x > .small-3, .grid-x > .small-4, .grid-x > .small-5, .grid-x > .small-6, .grid-x > .small-7, .grid-x > .small-8, .grid-x > .small-9, .grid-x > .small-10, .grid-x > .small-11, .grid-x > .small-12 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto; }

.grid-x > .small-1 {
  width: 8.33333%; }

.grid-x > .small-2 {
  width: 16.66667%; }

.grid-x > .small-3 {
  width: 25%; }

.grid-x > .small-4 {
  width: 33.33333%; }

.grid-x > .small-5 {
  width: 41.66667%; }

.grid-x > .small-6 {
  width: 50%; }

.grid-x > .small-7 {
  width: 58.33333%; }

.grid-x > .small-8 {
  width: 66.66667%; }

.grid-x > .small-9 {
  width: 75%; }

.grid-x > .small-10 {
  width: 83.33333%; }

.grid-x > .small-11 {
  width: 91.66667%; }

.grid-x > .small-12 {
  width: 100%; }

@media print, screen and (min-width: 33.75em) {
  .grid-x > .medium-auto {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 0px;
    flex: 1 1 0px;
    width: auto; }
  .grid-x > .medium-shrink, .grid-x > .medium-1, .grid-x > .medium-2, .grid-x > .medium-3, .grid-x > .medium-4, .grid-x > .medium-5, .grid-x > .medium-6, .grid-x > .medium-7, .grid-x > .medium-8, .grid-x > .medium-9, .grid-x > .medium-10, .grid-x > .medium-11, .grid-x > .medium-12 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto; }
  .grid-x > .medium-shrink {
    width: auto; }
  .grid-x > .medium-1 {
    width: 8.33333%; }
  .grid-x > .medium-2 {
    width: 16.66667%; }
  .grid-x > .medium-3 {
    width: 25%; }
  .grid-x > .medium-4 {
    width: 33.33333%; }
  .grid-x > .medium-5 {
    width: 41.66667%; }
  .grid-x > .medium-6 {
    width: 50%; }
  .grid-x > .medium-7 {
    width: 58.33333%; }
  .grid-x > .medium-8 {
    width: 66.66667%; }
  .grid-x > .medium-9 {
    width: 75%; }
  .grid-x > .medium-10 {
    width: 83.33333%; }
  .grid-x > .medium-11 {
    width: 91.66667%; }
  .grid-x > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 46.875em) {
  .grid-x > .large-auto {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 0px;
    flex: 1 1 0px;
    width: auto; }
  .grid-x > .large-shrink, .grid-x > .large-1, .grid-x > .large-2, .grid-x > .large-3, .grid-x > .large-4, .grid-x > .large-5, .grid-x > .large-6, .grid-x > .large-7, .grid-x > .large-8, .grid-x > .large-9, .grid-x > .large-10, .grid-x > .large-11, .grid-x > .large-12 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto; }
  .grid-x > .large-shrink {
    width: auto; }
  .grid-x > .large-1 {
    width: 8.33333%; }
  .grid-x > .large-2 {
    width: 16.66667%; }
  .grid-x > .large-3 {
    width: 25%; }
  .grid-x > .large-4 {
    width: 33.33333%; }
  .grid-x > .large-5 {
    width: 41.66667%; }
  .grid-x > .large-6 {
    width: 50%; }
  .grid-x > .large-7 {
    width: 58.33333%; }
  .grid-x > .large-8 {
    width: 66.66667%; }
  .grid-x > .large-9 {
    width: 75%; }
  .grid-x > .large-10 {
    width: 83.33333%; }
  .grid-x > .large-11 {
    width: 91.66667%; }
  .grid-x > .large-12 {
    width: 100%; } }

@media screen and (min-width: 64em) {
  .grid-x > .xlarge-auto {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 0px;
    flex: 1 1 0px;
    width: auto; }
  .grid-x > .xlarge-shrink, .grid-x > .xlarge-1, .grid-x > .xlarge-2, .grid-x > .xlarge-3, .grid-x > .xlarge-4, .grid-x > .xlarge-5, .grid-x > .xlarge-6, .grid-x > .xlarge-7, .grid-x > .xlarge-8, .grid-x > .xlarge-9, .grid-x > .xlarge-10, .grid-x > .xlarge-11, .grid-x > .xlarge-12 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto; }
  .grid-x > .xlarge-shrink {
    width: auto; }
  .grid-x > .xlarge-1 {
    width: 8.33333%; }
  .grid-x > .xlarge-2 {
    width: 16.66667%; }
  .grid-x > .xlarge-3 {
    width: 25%; }
  .grid-x > .xlarge-4 {
    width: 33.33333%; }
  .grid-x > .xlarge-5 {
    width: 41.66667%; }
  .grid-x > .xlarge-6 {
    width: 50%; }
  .grid-x > .xlarge-7 {
    width: 58.33333%; }
  .grid-x > .xlarge-8 {
    width: 66.66667%; }
  .grid-x > .xlarge-9 {
    width: 75%; }
  .grid-x > .xlarge-10 {
    width: 83.33333%; }
  .grid-x > .xlarge-11 {
    width: 91.66667%; }
  .grid-x > .xlarge-12 {
    width: 100%; } }

.grid-margin-x:not(.grid-x) > .cell {
  width: auto; }

.grid-margin-y:not(.grid-y) > .cell {
  height: auto; }

.grid-margin-x {
  margin-left: -0.9375rem;
  margin-right: -0.9375rem; }
  @media print, screen and (min-width: 33.75em) {
    .grid-margin-x {
      margin-left: -0.9375rem;
      margin-right: -0.9375rem; } }
  .grid-margin-x > .cell {
    width: calc(100% - 1.875rem);
    margin-left: 0.9375rem;
    margin-right: 0.9375rem; }
  @media print, screen and (min-width: 33.75em) {
    .grid-margin-x > .cell {
      width: calc(100% - 1.875rem);
      margin-left: 0.9375rem;
      margin-right: 0.9375rem; } }
  .grid-margin-x > .auto {
    width: auto; }
  .grid-margin-x > .shrink {
    width: auto; }
  .grid-margin-x > .small-1 {
    width: calc(8.33333% - 1.875rem); }
  .grid-margin-x > .small-2 {
    width: calc(16.66667% - 1.875rem); }
  .grid-margin-x > .small-3 {
    width: calc(25% - 1.875rem); }
  .grid-margin-x > .small-4 {
    width: calc(33.33333% - 1.875rem); }
  .grid-margin-x > .small-5 {
    width: calc(41.66667% - 1.875rem); }
  .grid-margin-x > .small-6 {
    width: calc(50% - 1.875rem); }
  .grid-margin-x > .small-7 {
    width: calc(58.33333% - 1.875rem); }
  .grid-margin-x > .small-8 {
    width: calc(66.66667% - 1.875rem); }
  .grid-margin-x > .small-9 {
    width: calc(75% - 1.875rem); }
  .grid-margin-x > .small-10 {
    width: calc(83.33333% - 1.875rem); }
  .grid-margin-x > .small-11 {
    width: calc(91.66667% - 1.875rem); }
  .grid-margin-x > .small-12 {
    width: calc(100% - 1.875rem); }
  @media print, screen and (min-width: 33.75em) {
    .grid-margin-x > .auto {
      width: auto; }
    .grid-margin-x > .shrink {
      width: auto; }
    .grid-margin-x > .small-1 {
      width: calc(8.33333% - 1.875rem); }
    .grid-margin-x > .small-2 {
      width: calc(16.66667% - 1.875rem); }
    .grid-margin-x > .small-3 {
      width: calc(25% - 1.875rem); }
    .grid-margin-x > .small-4 {
      width: calc(33.33333% - 1.875rem); }
    .grid-margin-x > .small-5 {
      width: calc(41.66667% - 1.875rem); }
    .grid-margin-x > .small-6 {
      width: calc(50% - 1.875rem); }
    .grid-margin-x > .small-7 {
      width: calc(58.33333% - 1.875rem); }
    .grid-margin-x > .small-8 {
      width: calc(66.66667% - 1.875rem); }
    .grid-margin-x > .small-9 {
      width: calc(75% - 1.875rem); }
    .grid-margin-x > .small-10 {
      width: calc(83.33333% - 1.875rem); }
    .grid-margin-x > .small-11 {
      width: calc(91.66667% - 1.875rem); }
    .grid-margin-x > .small-12 {
      width: calc(100% - 1.875rem); }
    .grid-margin-x > .medium-auto {
      width: auto; }
    .grid-margin-x > .medium-shrink {
      width: auto; }
    .grid-margin-x > .medium-1 {
      width: calc(8.33333% - 1.875rem); }
    .grid-margin-x > .medium-2 {
      width: calc(16.66667% - 1.875rem); }
    .grid-margin-x > .medium-3 {
      width: calc(25% - 1.875rem); }
    .grid-margin-x > .medium-4 {
      width: calc(33.33333% - 1.875rem); }
    .grid-margin-x > .medium-5 {
      width: calc(41.66667% - 1.875rem); }
    .grid-margin-x > .medium-6 {
      width: calc(50% - 1.875rem); }
    .grid-margin-x > .medium-7 {
      width: calc(58.33333% - 1.875rem); }
    .grid-margin-x > .medium-8 {
      width: calc(66.66667% - 1.875rem); }
    .grid-margin-x > .medium-9 {
      width: calc(75% - 1.875rem); }
    .grid-margin-x > .medium-10 {
      width: calc(83.33333% - 1.875rem); }
    .grid-margin-x > .medium-11 {
      width: calc(91.66667% - 1.875rem); }
    .grid-margin-x > .medium-12 {
      width: calc(100% - 1.875rem); } }
  @media print, screen and (min-width: 46.875em) {
    .grid-margin-x > .large-auto {
      width: auto; }
    .grid-margin-x > .large-shrink {
      width: auto; }
    .grid-margin-x > .large-1 {
      width: calc(8.33333% - 1.875rem); }
    .grid-margin-x > .large-2 {
      width: calc(16.66667% - 1.875rem); }
    .grid-margin-x > .large-3 {
      width: calc(25% - 1.875rem); }
    .grid-margin-x > .large-4 {
      width: calc(33.33333% - 1.875rem); }
    .grid-margin-x > .large-5 {
      width: calc(41.66667% - 1.875rem); }
    .grid-margin-x > .large-6 {
      width: calc(50% - 1.875rem); }
    .grid-margin-x > .large-7 {
      width: calc(58.33333% - 1.875rem); }
    .grid-margin-x > .large-8 {
      width: calc(66.66667% - 1.875rem); }
    .grid-margin-x > .large-9 {
      width: calc(75% - 1.875rem); }
    .grid-margin-x > .large-10 {
      width: calc(83.33333% - 1.875rem); }
    .grid-margin-x > .large-11 {
      width: calc(91.66667% - 1.875rem); }
    .grid-margin-x > .large-12 {
      width: calc(100% - 1.875rem); } }
  @media screen and (min-width: 64em) {
    .grid-margin-x > .xlarge-auto {
      width: auto; }
    .grid-margin-x > .xlarge-shrink {
      width: auto; }
    .grid-margin-x > .xlarge-1 {
      width: calc(8.33333% - 1.875rem); }
    .grid-margin-x > .xlarge-2 {
      width: calc(16.66667% - 1.875rem); }
    .grid-margin-x > .xlarge-3 {
      width: calc(25% - 1.875rem); }
    .grid-margin-x > .xlarge-4 {
      width: calc(33.33333% - 1.875rem); }
    .grid-margin-x > .xlarge-5 {
      width: calc(41.66667% - 1.875rem); }
    .grid-margin-x > .xlarge-6 {
      width: calc(50% - 1.875rem); }
    .grid-margin-x > .xlarge-7 {
      width: calc(58.33333% - 1.875rem); }
    .grid-margin-x > .xlarge-8 {
      width: calc(66.66667% - 1.875rem); }
    .grid-margin-x > .xlarge-9 {
      width: calc(75% - 1.875rem); }
    .grid-margin-x > .xlarge-10 {
      width: calc(83.33333% - 1.875rem); }
    .grid-margin-x > .xlarge-11 {
      width: calc(91.66667% - 1.875rem); }
    .grid-margin-x > .xlarge-12 {
      width: calc(100% - 1.875rem); } }

.grid-padding-x .grid-padding-x {
  margin-right: -0.9375rem;
  margin-left: -0.9375rem; }
  @media print, screen and (min-width: 33.75em) {
    .grid-padding-x .grid-padding-x {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }

.grid-container:not(.full) > .grid-padding-x {
  margin-right: -0.9375rem;
  margin-left: -0.9375rem; }
  @media print, screen and (min-width: 33.75em) {
    .grid-container:not(.full) > .grid-padding-x {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }

.grid-padding-x > .cell {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem; }
  @media print, screen and (min-width: 33.75em) {
    .grid-padding-x > .cell {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }

.small-up-1 > .cell {
  width: 100%; }

.small-up-2 > .cell {
  width: 50%; }

.small-up-3 > .cell {
  width: 33.33333%; }

.small-up-4 > .cell {
  width: 25%; }

.small-up-5 > .cell {
  width: 20%; }

.small-up-6 > .cell {
  width: 16.66667%; }

.small-up-7 > .cell {
  width: 14.28571%; }

.small-up-8 > .cell {
  width: 12.5%; }

@media print, screen and (min-width: 33.75em) {
  .medium-up-1 > .cell {
    width: 100%; }
  .medium-up-2 > .cell {
    width: 50%; }
  .medium-up-3 > .cell {
    width: 33.33333%; }
  .medium-up-4 > .cell {
    width: 25%; }
  .medium-up-5 > .cell {
    width: 20%; }
  .medium-up-6 > .cell {
    width: 16.66667%; }
  .medium-up-7 > .cell {
    width: 14.28571%; }
  .medium-up-8 > .cell {
    width: 12.5%; } }

@media print, screen and (min-width: 46.875em) {
  .large-up-1 > .cell {
    width: 100%; }
  .large-up-2 > .cell {
    width: 50%; }
  .large-up-3 > .cell {
    width: 33.33333%; }
  .large-up-4 > .cell {
    width: 25%; }
  .large-up-5 > .cell {
    width: 20%; }
  .large-up-6 > .cell {
    width: 16.66667%; }
  .large-up-7 > .cell {
    width: 14.28571%; }
  .large-up-8 > .cell {
    width: 12.5%; } }

@media screen and (min-width: 64em) {
  .xlarge-up-1 > .cell {
    width: 100%; }
  .xlarge-up-2 > .cell {
    width: 50%; }
  .xlarge-up-3 > .cell {
    width: 33.33333%; }
  .xlarge-up-4 > .cell {
    width: 25%; }
  .xlarge-up-5 > .cell {
    width: 20%; }
  .xlarge-up-6 > .cell {
    width: 16.66667%; }
  .xlarge-up-7 > .cell {
    width: 14.28571%; }
  .xlarge-up-8 > .cell {
    width: 12.5%; } }

.grid-margin-x.small-up-1 > .cell {
  width: calc(100% - 1.875rem); }

.grid-margin-x.small-up-2 > .cell {
  width: calc(50% - 1.875rem); }

.grid-margin-x.small-up-3 > .cell {
  width: calc(33.33333% - 1.875rem); }

.grid-margin-x.small-up-4 > .cell {
  width: calc(25% - 1.875rem); }

.grid-margin-x.small-up-5 > .cell {
  width: calc(20% - 1.875rem); }

.grid-margin-x.small-up-6 > .cell {
  width: calc(16.66667% - 1.875rem); }

.grid-margin-x.small-up-7 > .cell {
  width: calc(14.28571% - 1.875rem); }

.grid-margin-x.small-up-8 > .cell {
  width: calc(12.5% - 1.875rem); }

@media print, screen and (min-width: 33.75em) {
  .grid-margin-x.small-up-1 > .cell {
    width: calc(100% - 1.875rem); }
  .grid-margin-x.small-up-2 > .cell {
    width: calc(50% - 1.875rem); }
  .grid-margin-x.small-up-3 > .cell {
    width: calc(33.33333% - 1.875rem); }
  .grid-margin-x.small-up-4 > .cell {
    width: calc(25% - 1.875rem); }
  .grid-margin-x.small-up-5 > .cell {
    width: calc(20% - 1.875rem); }
  .grid-margin-x.small-up-6 > .cell {
    width: calc(16.66667% - 1.875rem); }
  .grid-margin-x.small-up-7 > .cell {
    width: calc(14.28571% - 1.875rem); }
  .grid-margin-x.small-up-8 > .cell {
    width: calc(12.5% - 1.875rem); }
  .grid-margin-x.medium-up-1 > .cell {
    width: calc(100% - 1.875rem); }
  .grid-margin-x.medium-up-2 > .cell {
    width: calc(50% - 1.875rem); }
  .grid-margin-x.medium-up-3 > .cell {
    width: calc(33.33333% - 1.875rem); }
  .grid-margin-x.medium-up-4 > .cell {
    width: calc(25% - 1.875rem); }
  .grid-margin-x.medium-up-5 > .cell {
    width: calc(20% - 1.875rem); }
  .grid-margin-x.medium-up-6 > .cell {
    width: calc(16.66667% - 1.875rem); }
  .grid-margin-x.medium-up-7 > .cell {
    width: calc(14.28571% - 1.875rem); }
  .grid-margin-x.medium-up-8 > .cell {
    width: calc(12.5% - 1.875rem); } }

@media print, screen and (min-width: 46.875em) {
  .grid-margin-x.large-up-1 > .cell {
    width: calc(100% - 1.875rem); }
  .grid-margin-x.large-up-2 > .cell {
    width: calc(50% - 1.875rem); }
  .grid-margin-x.large-up-3 > .cell {
    width: calc(33.33333% - 1.875rem); }
  .grid-margin-x.large-up-4 > .cell {
    width: calc(25% - 1.875rem); }
  .grid-margin-x.large-up-5 > .cell {
    width: calc(20% - 1.875rem); }
  .grid-margin-x.large-up-6 > .cell {
    width: calc(16.66667% - 1.875rem); }
  .grid-margin-x.large-up-7 > .cell {
    width: calc(14.28571% - 1.875rem); }
  .grid-margin-x.large-up-8 > .cell {
    width: calc(12.5% - 1.875rem); } }

@media screen and (min-width: 64em) {
  .grid-margin-x.xlarge-up-1 > .cell {
    width: calc(100% - 1.875rem); }
  .grid-margin-x.xlarge-up-2 > .cell {
    width: calc(50% - 1.875rem); }
  .grid-margin-x.xlarge-up-3 > .cell {
    width: calc(33.33333% - 1.875rem); }
  .grid-margin-x.xlarge-up-4 > .cell {
    width: calc(25% - 1.875rem); }
  .grid-margin-x.xlarge-up-5 > .cell {
    width: calc(20% - 1.875rem); }
  .grid-margin-x.xlarge-up-6 > .cell {
    width: calc(16.66667% - 1.875rem); }
  .grid-margin-x.xlarge-up-7 > .cell {
    width: calc(14.28571% - 1.875rem); }
  .grid-margin-x.xlarge-up-8 > .cell {
    width: calc(12.5% - 1.875rem); } }

.small-margin-collapse {
  margin-right: 0;
  margin-left: 0; }
  .small-margin-collapse > .cell {
    margin-right: 0;
    margin-left: 0; }
  .small-margin-collapse > .small-1 {
    width: 8.33333%; }
  .small-margin-collapse > .small-2 {
    width: 16.66667%; }
  .small-margin-collapse > .small-3 {
    width: 25%; }
  .small-margin-collapse > .small-4 {
    width: 33.33333%; }
  .small-margin-collapse > .small-5 {
    width: 41.66667%; }
  .small-margin-collapse > .small-6 {
    width: 50%; }
  .small-margin-collapse > .small-7 {
    width: 58.33333%; }
  .small-margin-collapse > .small-8 {
    width: 66.66667%; }
  .small-margin-collapse > .small-9 {
    width: 75%; }
  .small-margin-collapse > .small-10 {
    width: 83.33333%; }
  .small-margin-collapse > .small-11 {
    width: 91.66667%; }
  .small-margin-collapse > .small-12 {
    width: 100%; }
  @media print, screen and (min-width: 33.75em) {
    .small-margin-collapse > .medium-1 {
      width: 8.33333%; }
    .small-margin-collapse > .medium-2 {
      width: 16.66667%; }
    .small-margin-collapse > .medium-3 {
      width: 25%; }
    .small-margin-collapse > .medium-4 {
      width: 33.33333%; }
    .small-margin-collapse > .medium-5 {
      width: 41.66667%; }
    .small-margin-collapse > .medium-6 {
      width: 50%; }
    .small-margin-collapse > .medium-7 {
      width: 58.33333%; }
    .small-margin-collapse > .medium-8 {
      width: 66.66667%; }
    .small-margin-collapse > .medium-9 {
      width: 75%; }
    .small-margin-collapse > .medium-10 {
      width: 83.33333%; }
    .small-margin-collapse > .medium-11 {
      width: 91.66667%; }
    .small-margin-collapse > .medium-12 {
      width: 100%; } }
  @media print, screen and (min-width: 46.875em) {
    .small-margin-collapse > .large-1 {
      width: 8.33333%; }
    .small-margin-collapse > .large-2 {
      width: 16.66667%; }
    .small-margin-collapse > .large-3 {
      width: 25%; }
    .small-margin-collapse > .large-4 {
      width: 33.33333%; }
    .small-margin-collapse > .large-5 {
      width: 41.66667%; }
    .small-margin-collapse > .large-6 {
      width: 50%; }
    .small-margin-collapse > .large-7 {
      width: 58.33333%; }
    .small-margin-collapse > .large-8 {
      width: 66.66667%; }
    .small-margin-collapse > .large-9 {
      width: 75%; }
    .small-margin-collapse > .large-10 {
      width: 83.33333%; }
    .small-margin-collapse > .large-11 {
      width: 91.66667%; }
    .small-margin-collapse > .large-12 {
      width: 100%; } }
  @media screen and (min-width: 64em) {
    .small-margin-collapse > .xlarge-1 {
      width: 8.33333%; }
    .small-margin-collapse > .xlarge-2 {
      width: 16.66667%; }
    .small-margin-collapse > .xlarge-3 {
      width: 25%; }
    .small-margin-collapse > .xlarge-4 {
      width: 33.33333%; }
    .small-margin-collapse > .xlarge-5 {
      width: 41.66667%; }
    .small-margin-collapse > .xlarge-6 {
      width: 50%; }
    .small-margin-collapse > .xlarge-7 {
      width: 58.33333%; }
    .small-margin-collapse > .xlarge-8 {
      width: 66.66667%; }
    .small-margin-collapse > .xlarge-9 {
      width: 75%; }
    .small-margin-collapse > .xlarge-10 {
      width: 83.33333%; }
    .small-margin-collapse > .xlarge-11 {
      width: 91.66667%; }
    .small-margin-collapse > .xlarge-12 {
      width: 100%; } }

.small-padding-collapse {
  margin-right: 0;
  margin-left: 0; }
  .small-padding-collapse > .cell {
    padding-right: 0;
    padding-left: 0; }

@media print, screen and (min-width: 33.75em) {
  .medium-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
    .medium-margin-collapse > .cell {
      margin-right: 0;
      margin-left: 0; } }

@media print, screen and (min-width: 33.75em) {
  .medium-margin-collapse > .small-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .small-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .small-3 {
    width: 25%; }
  .medium-margin-collapse > .small-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .small-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .small-6 {
    width: 50%; }
  .medium-margin-collapse > .small-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .small-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .small-9 {
    width: 75%; }
  .medium-margin-collapse > .small-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .small-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .small-12 {
    width: 100%; } }

@media print, screen and (min-width: 33.75em) {
  .medium-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .medium-3 {
    width: 25%; }
  .medium-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .medium-6 {
    width: 50%; }
  .medium-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .medium-9 {
    width: 75%; }
  .medium-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 46.875em) {
  .medium-margin-collapse > .large-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .large-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .large-3 {
    width: 25%; }
  .medium-margin-collapse > .large-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .large-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .large-6 {
    width: 50%; }
  .medium-margin-collapse > .large-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .large-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .large-9 {
    width: 75%; }
  .medium-margin-collapse > .large-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .large-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .large-12 {
    width: 100%; } }

@media screen and (min-width: 64em) {
  .medium-margin-collapse > .xlarge-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .xlarge-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .xlarge-3 {
    width: 25%; }
  .medium-margin-collapse > .xlarge-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .xlarge-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .xlarge-6 {
    width: 50%; }
  .medium-margin-collapse > .xlarge-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .xlarge-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .xlarge-9 {
    width: 75%; }
  .medium-margin-collapse > .xlarge-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .xlarge-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .xlarge-12 {
    width: 100%; } }

@media print, screen and (min-width: 33.75em) {
  .medium-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
    .medium-padding-collapse > .cell {
      padding-right: 0;
      padding-left: 0; } }

@media print, screen and (min-width: 46.875em) {
  .large-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
    .large-margin-collapse > .cell {
      margin-right: 0;
      margin-left: 0; } }

@media print, screen and (min-width: 46.875em) {
  .large-margin-collapse > .small-1 {
    width: 8.33333%; }
  .large-margin-collapse > .small-2 {
    width: 16.66667%; }
  .large-margin-collapse > .small-3 {
    width: 25%; }
  .large-margin-collapse > .small-4 {
    width: 33.33333%; }
  .large-margin-collapse > .small-5 {
    width: 41.66667%; }
  .large-margin-collapse > .small-6 {
    width: 50%; }
  .large-margin-collapse > .small-7 {
    width: 58.33333%; }
  .large-margin-collapse > .small-8 {
    width: 66.66667%; }
  .large-margin-collapse > .small-9 {
    width: 75%; }
  .large-margin-collapse > .small-10 {
    width: 83.33333%; }
  .large-margin-collapse > .small-11 {
    width: 91.66667%; }
  .large-margin-collapse > .small-12 {
    width: 100%; } }

@media print, screen and (min-width: 46.875em) {
  .large-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .large-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .large-margin-collapse > .medium-3 {
    width: 25%; }
  .large-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .large-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .large-margin-collapse > .medium-6 {
    width: 50%; }
  .large-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .large-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .large-margin-collapse > .medium-9 {
    width: 75%; }
  .large-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .large-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .large-margin-collapse > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 46.875em) {
  .large-margin-collapse > .large-1 {
    width: 8.33333%; }
  .large-margin-collapse > .large-2 {
    width: 16.66667%; }
  .large-margin-collapse > .large-3 {
    width: 25%; }
  .large-margin-collapse > .large-4 {
    width: 33.33333%; }
  .large-margin-collapse > .large-5 {
    width: 41.66667%; }
  .large-margin-collapse > .large-6 {
    width: 50%; }
  .large-margin-collapse > .large-7 {
    width: 58.33333%; }
  .large-margin-collapse > .large-8 {
    width: 66.66667%; }
  .large-margin-collapse > .large-9 {
    width: 75%; }
  .large-margin-collapse > .large-10 {
    width: 83.33333%; }
  .large-margin-collapse > .large-11 {
    width: 91.66667%; }
  .large-margin-collapse > .large-12 {
    width: 100%; } }

@media screen and (min-width: 64em) {
  .large-margin-collapse > .xlarge-1 {
    width: 8.33333%; }
  .large-margin-collapse > .xlarge-2 {
    width: 16.66667%; }
  .large-margin-collapse > .xlarge-3 {
    width: 25%; }
  .large-margin-collapse > .xlarge-4 {
    width: 33.33333%; }
  .large-margin-collapse > .xlarge-5 {
    width: 41.66667%; }
  .large-margin-collapse > .xlarge-6 {
    width: 50%; }
  .large-margin-collapse > .xlarge-7 {
    width: 58.33333%; }
  .large-margin-collapse > .xlarge-8 {
    width: 66.66667%; }
  .large-margin-collapse > .xlarge-9 {
    width: 75%; }
  .large-margin-collapse > .xlarge-10 {
    width: 83.33333%; }
  .large-margin-collapse > .xlarge-11 {
    width: 91.66667%; }
  .large-margin-collapse > .xlarge-12 {
    width: 100%; } }

@media print, screen and (min-width: 46.875em) {
  .large-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
    .large-padding-collapse > .cell {
      padding-right: 0;
      padding-left: 0; } }

@media screen and (min-width: 64em) {
  .xlarge-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
    .xlarge-margin-collapse > .cell {
      margin-right: 0;
      margin-left: 0; } }

@media screen and (min-width: 64em) {
  .xlarge-margin-collapse > .small-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .small-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .small-3 {
    width: 25%; }
  .xlarge-margin-collapse > .small-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .small-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .small-6 {
    width: 50%; }
  .xlarge-margin-collapse > .small-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .small-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .small-9 {
    width: 75%; }
  .xlarge-margin-collapse > .small-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .small-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .small-12 {
    width: 100%; } }

@media screen and (min-width: 64em) {
  .xlarge-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .medium-3 {
    width: 25%; }
  .xlarge-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .medium-6 {
    width: 50%; }
  .xlarge-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .medium-9 {
    width: 75%; }
  .xlarge-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .medium-12 {
    width: 100%; } }

@media screen and (min-width: 64em) {
  .xlarge-margin-collapse > .large-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .large-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .large-3 {
    width: 25%; }
  .xlarge-margin-collapse > .large-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .large-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .large-6 {
    width: 50%; }
  .xlarge-margin-collapse > .large-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .large-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .large-9 {
    width: 75%; }
  .xlarge-margin-collapse > .large-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .large-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .large-12 {
    width: 100%; } }

@media screen and (min-width: 64em) {
  .xlarge-margin-collapse > .xlarge-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .xlarge-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .xlarge-3 {
    width: 25%; }
  .xlarge-margin-collapse > .xlarge-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .xlarge-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .xlarge-6 {
    width: 50%; }
  .xlarge-margin-collapse > .xlarge-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .xlarge-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .xlarge-9 {
    width: 75%; }
  .xlarge-margin-collapse > .xlarge-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .xlarge-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .xlarge-12 {
    width: 100%; } }

@media screen and (min-width: 64em) {
  .xlarge-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
    .xlarge-padding-collapse > .cell {
      padding-right: 0;
      padding-left: 0; } }

.small-offset-0 {
  margin-left: 0%; }

.grid-margin-x > .small-offset-0 {
  margin-left: calc(0% + 0.9375rem); }

.small-offset-1 {
  margin-left: 8.33333%; }

.grid-margin-x > .small-offset-1 {
  margin-left: calc(8.33333% + 0.9375rem); }

.small-offset-2 {
  margin-left: 16.66667%; }

.grid-margin-x > .small-offset-2 {
  margin-left: calc(16.66667% + 0.9375rem); }

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

.grid-margin-x > .small-offset-3 {
  margin-left: calc(25% + 0.9375rem); }

.small-offset-4 {
  margin-left: 33.33333%; }

.grid-margin-x > .small-offset-4 {
  margin-left: calc(33.33333% + 0.9375rem); }

.small-offset-5 {
  margin-left: 41.66667%; }

.grid-margin-x > .small-offset-5 {
  margin-left: calc(41.66667% + 0.9375rem); }

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

.grid-margin-x > .small-offset-6 {
  margin-left: calc(50% + 0.9375rem); }

.small-offset-7 {
  margin-left: 58.33333%; }

.grid-margin-x > .small-offset-7 {
  margin-left: calc(58.33333% + 0.9375rem); }

.small-offset-8 {
  margin-left: 66.66667%; }

.grid-margin-x > .small-offset-8 {
  margin-left: calc(66.66667% + 0.9375rem); }

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

.grid-margin-x > .small-offset-9 {
  margin-left: calc(75% + 0.9375rem); }

.small-offset-10 {
  margin-left: 83.33333%; }

.grid-margin-x > .small-offset-10 {
  margin-left: calc(83.33333% + 0.9375rem); }

.small-offset-11 {
  margin-left: 91.66667%; }

.grid-margin-x > .small-offset-11 {
  margin-left: calc(91.66667% + 0.9375rem); }

@media print, screen and (min-width: 33.75em) {
  .medium-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .medium-offset-0 {
    margin-left: calc(0% + 0.9375rem); }
  .medium-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .medium-offset-1 {
    margin-left: calc(8.33333% + 0.9375rem); }
  .medium-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .medium-offset-2 {
    margin-left: calc(16.66667% + 0.9375rem); }
  .medium-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .medium-offset-3 {
    margin-left: calc(25% + 0.9375rem); }
  .medium-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .medium-offset-4 {
    margin-left: calc(33.33333% + 0.9375rem); }
  .medium-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .medium-offset-5 {
    margin-left: calc(41.66667% + 0.9375rem); }
  .medium-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .medium-offset-6 {
    margin-left: calc(50% + 0.9375rem); }
  .medium-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .medium-offset-7 {
    margin-left: calc(58.33333% + 0.9375rem); }
  .medium-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .medium-offset-8 {
    margin-left: calc(66.66667% + 0.9375rem); }
  .medium-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .medium-offset-9 {
    margin-left: calc(75% + 0.9375rem); }
  .medium-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .medium-offset-10 {
    margin-left: calc(83.33333% + 0.9375rem); }
  .medium-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .medium-offset-11 {
    margin-left: calc(91.66667% + 0.9375rem); } }

@media print, screen and (min-width: 46.875em) {
  .large-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .large-offset-0 {
    margin-left: calc(0% + 0.9375rem); }
  .large-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .large-offset-1 {
    margin-left: calc(8.33333% + 0.9375rem); }
  .large-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .large-offset-2 {
    margin-left: calc(16.66667% + 0.9375rem); }
  .large-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .large-offset-3 {
    margin-left: calc(25% + 0.9375rem); }
  .large-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .large-offset-4 {
    margin-left: calc(33.33333% + 0.9375rem); }
  .large-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .large-offset-5 {
    margin-left: calc(41.66667% + 0.9375rem); }
  .large-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .large-offset-6 {
    margin-left: calc(50% + 0.9375rem); }
  .large-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .large-offset-7 {
    margin-left: calc(58.33333% + 0.9375rem); }
  .large-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .large-offset-8 {
    margin-left: calc(66.66667% + 0.9375rem); }
  .large-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .large-offset-9 {
    margin-left: calc(75% + 0.9375rem); }
  .large-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .large-offset-10 {
    margin-left: calc(83.33333% + 0.9375rem); }
  .large-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .large-offset-11 {
    margin-left: calc(91.66667% + 0.9375rem); } }

@media screen and (min-width: 64em) {
  .xlarge-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .xlarge-offset-0 {
    margin-left: calc(0% + 0.9375rem); }
  .xlarge-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .xlarge-offset-1 {
    margin-left: calc(8.33333% + 0.9375rem); }
  .xlarge-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .xlarge-offset-2 {
    margin-left: calc(16.66667% + 0.9375rem); }
  .xlarge-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .xlarge-offset-3 {
    margin-left: calc(25% + 0.9375rem); }
  .xlarge-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .xlarge-offset-4 {
    margin-left: calc(33.33333% + 0.9375rem); }
  .xlarge-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .xlarge-offset-5 {
    margin-left: calc(41.66667% + 0.9375rem); }
  .xlarge-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .xlarge-offset-6 {
    margin-left: calc(50% + 0.9375rem); }
  .xlarge-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .xlarge-offset-7 {
    margin-left: calc(58.33333% + 0.9375rem); }
  .xlarge-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .xlarge-offset-8 {
    margin-left: calc(66.66667% + 0.9375rem); }
  .xlarge-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .xlarge-offset-9 {
    margin-left: calc(75% + 0.9375rem); }
  .xlarge-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .xlarge-offset-10 {
    margin-left: calc(83.33333% + 0.9375rem); }
  .xlarge-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .xlarge-offset-11 {
    margin-left: calc(91.66667% + 0.9375rem); } }

.grid-y {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-flow: column nowrap;
  flex-flow: column nowrap; }
  .grid-y > .cell {
    width: auto;
    max-width: none; }
  .grid-y > .auto {
    height: auto; }
  .grid-y > .shrink {
    height: auto; }
  .grid-y > .small-shrink, .grid-y > .small-full, .grid-y > .small-1, .grid-y > .small-2, .grid-y > .small-3, .grid-y > .small-4, .grid-y > .small-5, .grid-y > .small-6, .grid-y > .small-7, .grid-y > .small-8, .grid-y > .small-9, .grid-y > .small-10, .grid-y > .small-11, .grid-y > .small-12 {
    -ms-flex-preferred-size: auto;
    flex-basis: auto; }
  @media print, screen and (min-width: 33.75em) {
    .grid-y > .medium-shrink, .grid-y > .medium-full, .grid-y > .medium-1, .grid-y > .medium-2, .grid-y > .medium-3, .grid-y > .medium-4, .grid-y > .medium-5, .grid-y > .medium-6, .grid-y > .medium-7, .grid-y > .medium-8, .grid-y > .medium-9, .grid-y > .medium-10, .grid-y > .medium-11, .grid-y > .medium-12 {
      -ms-flex-preferred-size: auto;
      flex-basis: auto; } }
  @media print, screen and (min-width: 46.875em) {
    .grid-y > .large-shrink, .grid-y > .large-full, .grid-y > .large-1, .grid-y > .large-2, .grid-y > .large-3, .grid-y > .large-4, .grid-y > .large-5, .grid-y > .large-6, .grid-y > .large-7, .grid-y > .large-8, .grid-y > .large-9, .grid-y > .large-10, .grid-y > .large-11, .grid-y > .large-12 {
      -ms-flex-preferred-size: auto;
      flex-basis: auto; } }
  @media screen and (min-width: 64em) {
    .grid-y > .xlarge-shrink, .grid-y > .xlarge-full, .grid-y > .xlarge-1, .grid-y > .xlarge-2, .grid-y > .xlarge-3, .grid-y > .xlarge-4, .grid-y > .xlarge-5, .grid-y > .xlarge-6, .grid-y > .xlarge-7, .grid-y > .xlarge-8, .grid-y > .xlarge-9, .grid-y > .xlarge-10, .grid-y > .xlarge-11, .grid-y > .xlarge-12 {
      -ms-flex-preferred-size: auto;
      flex-basis: auto; } }
  .grid-y > .small-1, .grid-y > .small-2, .grid-y > .small-3, .grid-y > .small-4, .grid-y > .small-5, .grid-y > .small-6, .grid-y > .small-7, .grid-y > .small-8, .grid-y > .small-9, .grid-y > .small-10, .grid-y > .small-11, .grid-y > .small-12 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto; }
  .grid-y > .small-1 {
    height: 8.33333%; }
  .grid-y > .small-2 {
    height: 16.66667%; }
  .grid-y > .small-3 {
    height: 25%; }
  .grid-y > .small-4 {
    height: 33.33333%; }
  .grid-y > .small-5 {
    height: 41.66667%; }
  .grid-y > .small-6 {
    height: 50%; }
  .grid-y > .small-7 {
    height: 58.33333%; }
  .grid-y > .small-8 {
    height: 66.66667%; }
  .grid-y > .small-9 {
    height: 75%; }
  .grid-y > .small-10 {
    height: 83.33333%; }
  .grid-y > .small-11 {
    height: 91.66667%; }
  .grid-y > .small-12 {
    height: 100%; }
  @media print, screen and (min-width: 33.75em) {
    .grid-y > .medium-auto {
      -webkit-box-flex: 1;
      -ms-flex: 1 1 0px;
      flex: 1 1 0px;
      height: auto; }
    .grid-y > .medium-shrink, .grid-y > .medium-1, .grid-y > .medium-2, .grid-y > .medium-3, .grid-y > .medium-4, .grid-y > .medium-5, .grid-y > .medium-6, .grid-y > .medium-7, .grid-y > .medium-8, .grid-y > .medium-9, .grid-y > .medium-10, .grid-y > .medium-11, .grid-y > .medium-12 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
      flex: 0 0 auto; }
    .grid-y > .medium-shrink {
      height: auto; }
    .grid-y > .medium-1 {
      height: 8.33333%; }
    .grid-y > .medium-2 {
      height: 16.66667%; }
    .grid-y > .medium-3 {
      height: 25%; }
    .grid-y > .medium-4 {
      height: 33.33333%; }
    .grid-y > .medium-5 {
      height: 41.66667%; }
    .grid-y > .medium-6 {
      height: 50%; }
    .grid-y > .medium-7 {
      height: 58.33333%; }
    .grid-y > .medium-8 {
      height: 66.66667%; }
    .grid-y > .medium-9 {
      height: 75%; }
    .grid-y > .medium-10 {
      height: 83.33333%; }
    .grid-y > .medium-11 {
      height: 91.66667%; }
    .grid-y > .medium-12 {
      height: 100%; } }
  @media print, screen and (min-width: 46.875em) {
    .grid-y > .large-auto {
      -webkit-box-flex: 1;
      -ms-flex: 1 1 0px;
      flex: 1 1 0px;
      height: auto; }
    .grid-y > .large-shrink, .grid-y > .large-1, .grid-y > .large-2, .grid-y > .large-3, .grid-y > .large-4, .grid-y > .large-5, .grid-y > .large-6, .grid-y > .large-7, .grid-y > .large-8, .grid-y > .large-9, .grid-y > .large-10, .grid-y > .large-11, .grid-y > .large-12 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
      flex: 0 0 auto; }
    .grid-y > .large-shrink {
      height: auto; }
    .grid-y > .large-1 {
      height: 8.33333%; }
    .grid-y > .large-2 {
      height: 16.66667%; }
    .grid-y > .large-3 {
      height: 25%; }
    .grid-y > .large-4 {
      height: 33.33333%; }
    .grid-y > .large-5 {
      height: 41.66667%; }
    .grid-y > .large-6 {
      height: 50%; }
    .grid-y > .large-7 {
      height: 58.33333%; }
    .grid-y > .large-8 {
      height: 66.66667%; }
    .grid-y > .large-9 {
      height: 75%; }
    .grid-y > .large-10 {
      height: 83.33333%; }
    .grid-y > .large-11 {
      height: 91.66667%; }
    .grid-y > .large-12 {
      height: 100%; } }
  @media screen and (min-width: 64em) {
    .grid-y > .xlarge-auto {
      -webkit-box-flex: 1;
      -ms-flex: 1 1 0px;
      flex: 1 1 0px;
      height: auto; }
    .grid-y > .xlarge-shrink, .grid-y > .xlarge-1, .grid-y > .xlarge-2, .grid-y > .xlarge-3, .grid-y > .xlarge-4, .grid-y > .xlarge-5, .grid-y > .xlarge-6, .grid-y > .xlarge-7, .grid-y > .xlarge-8, .grid-y > .xlarge-9, .grid-y > .xlarge-10, .grid-y > .xlarge-11, .grid-y > .xlarge-12 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
      flex: 0 0 auto; }
    .grid-y > .xlarge-shrink {
      height: auto; }
    .grid-y > .xlarge-1 {
      height: 8.33333%; }
    .grid-y > .xlarge-2 {
      height: 16.66667%; }
    .grid-y > .xlarge-3 {
      height: 25%; }
    .grid-y > .xlarge-4 {
      height: 33.33333%; }
    .grid-y > .xlarge-5 {
      height: 41.66667%; }
    .grid-y > .xlarge-6 {
      height: 50%; }
    .grid-y > .xlarge-7 {
      height: 58.33333%; }
    .grid-y > .xlarge-8 {
      height: 66.66667%; }
    .grid-y > .xlarge-9 {
      height: 75%; }
    .grid-y > .xlarge-10 {
      height: 83.33333%; }
    .grid-y > .xlarge-11 {
      height: 91.66667%; }
    .grid-y > .xlarge-12 {
      height: 100%; } }

.grid-padding-y .grid-padding-y {
  margin-top: -0.9375rem;
  margin-bottom: -0.9375rem; }
  @media print, screen and (min-width: 33.75em) {
    .grid-padding-y .grid-padding-y {
      margin-top: -0.9375rem;
      margin-bottom: -0.9375rem; } }

.grid-padding-y > .cell {
  padding-top: 0.9375rem;
  padding-bottom: 0.9375rem; }
  @media print, screen and (min-width: 33.75em) {
    .grid-padding-y > .cell {
      padding-top: 0.9375rem;
      padding-bottom: 0.9375rem; } }

.grid-margin-y {
  margin-top: -0.9375rem;
  margin-bottom: -0.9375rem; }
  @media print, screen and (min-width: 33.75em) {
    .grid-margin-y {
      margin-top: -0.9375rem;
      margin-bottom: -0.9375rem; } }
  .grid-margin-y > .cell {
    height: calc(100% - 1.875rem);
    margin-top: 0.9375rem;
    margin-bottom: 0.9375rem; }
  @media print, screen and (min-width: 33.75em) {
    .grid-margin-y > .cell {
      height: calc(100% - 1.875rem);
      margin-top: 0.9375rem;
      margin-bottom: 0.9375rem; } }
  .grid-margin-y > .auto {
    height: auto; }
  .grid-margin-y > .shrink {
    height: auto; }
  .grid-margin-y > .small-1 {
    height: calc(8.33333% - 1.875rem); }
  .grid-margin-y > .small-2 {
    height: calc(16.66667% - 1.875rem); }
  .grid-margin-y > .small-3 {
    height: calc(25% - 1.875rem); }
  .grid-margin-y > .small-4 {
    height: calc(33.33333% - 1.875rem); }
  .grid-margin-y > .small-5 {
    height: calc(41.66667% - 1.875rem); }
  .grid-margin-y > .small-6 {
    height: calc(50% - 1.875rem); }
  .grid-margin-y > .small-7 {
    height: calc(58.33333% - 1.875rem); }
  .grid-margin-y > .small-8 {
    height: calc(66.66667% - 1.875rem); }
  .grid-margin-y > .small-9 {
    height: calc(75% - 1.875rem); }
  .grid-margin-y > .small-10 {
    height: calc(83.33333% - 1.875rem); }
  .grid-margin-y > .small-11 {
    height: calc(91.66667% - 1.875rem); }
  .grid-margin-y > .small-12 {
    height: calc(100% - 1.875rem); }
  @media print, screen and (min-width: 33.75em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 1.875rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 1.875rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 1.875rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 1.875rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 1.875rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 1.875rem); } }
  @media print, screen and (min-width: 46.875em) {
    .grid-margin-y > .large-auto {
      height: auto; }
    .grid-margin-y > .large-shrink {
      height: auto; }
    .grid-margin-y > .large-1 {
      height: calc(8.33333% - 1.875rem); }
    .grid-margin-y > .large-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .large-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .large-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .large-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .large-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .large-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .large-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .large-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .large-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .large-11 {
      height: calc(91.66667% - 1.875rem); }
    .grid-margin-y > .large-12 {
      height: calc(100% - 1.875rem); } }
  @media screen and (min-width: 64em) {
    .grid-margin-y > .xlarge-auto {
      height: auto; }
    .grid-margin-y > .xlarge-shrink {
      height: auto; }
    .grid-margin-y > .xlarge-1 {
      height: calc(8.33333% - 1.875rem); }
    .grid-margin-y > .xlarge-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .xlarge-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .xlarge-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .xlarge-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .xlarge-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .xlarge-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .xlarge-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .xlarge-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .xlarge-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .xlarge-11 {
      height: calc(91.66667% - 1.875rem); }
    .grid-margin-y > .xlarge-12 {
      height: calc(100% - 1.875rem); } }

.grid-frame {
  overflow: hidden;
  position: relative;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  width: 100vw; }

.cell .grid-frame {
  width: 100%; }

.cell-block {
  overflow-x: auto;
  max-width: 100%;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar; }

.cell-block-y {
  overflow-y: auto;
  max-height: 100%;
  min-height: 100%;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar; }

.cell-block-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  max-height: 100%; }
  .cell-block-container > .grid-x {
    max-height: 100%;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap; }

@media print, screen and (min-width: 33.75em) {
  .medium-grid-frame {
    overflow: hidden;
    position: relative;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    width: 100vw; }
  .cell .medium-grid-frame {
    width: 100%; }
  .medium-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; }
  .medium-cell-block-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    max-height: 100%; }
    .medium-cell-block-container > .grid-x {
      max-height: 100%;
      -ms-flex-wrap: nowrap;
      flex-wrap: nowrap; }
  .medium-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    min-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; } }

@media print, screen and (min-width: 46.875em) {
  .large-grid-frame {
    overflow: hidden;
    position: relative;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    width: 100vw; }
  .cell .large-grid-frame {
    width: 100%; }
  .large-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; }
  .large-cell-block-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    max-height: 100%; }
    .large-cell-block-container > .grid-x {
      max-height: 100%;
      -ms-flex-wrap: nowrap;
      flex-wrap: nowrap; }
  .large-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    min-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; } }

@media screen and (min-width: 64em) {
  .xlarge-grid-frame {
    overflow: hidden;
    position: relative;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    width: 100vw; }
  .cell .xlarge-grid-frame {
    width: 100%; }
  .xlarge-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; }
  .xlarge-cell-block-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    max-height: 100%; }
    .xlarge-cell-block-container > .grid-x {
      max-height: 100%;
      -ms-flex-wrap: nowrap;
      flex-wrap: nowrap; }
  .xlarge-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    min-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; } }

.grid-y.grid-frame {
  width: auto;
  overflow: hidden;
  position: relative;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  height: 100vh; }

@media print, screen and (min-width: 33.75em) {
  .grid-y.medium-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    height: 100vh; } }

@media print, screen and (min-width: 46.875em) {
  .grid-y.large-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    height: 100vh; } }

@media screen and (min-width: 64em) {
  .grid-y.xlarge-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    height: 100vh; } }

.cell .grid-y.grid-frame {
  height: 100%; }

@media print, screen and (min-width: 33.75em) {
  .cell .grid-y.medium-grid-frame {
    height: 100%; } }

@media print, screen and (min-width: 46.875em) {
  .cell .grid-y.large-grid-frame {
    height: 100%; } }

@media screen and (min-width: 64em) {
  .cell .grid-y.xlarge-grid-frame {
    height: 100%; } }

.grid-margin-y {
  margin-top: -0.9375rem;
  margin-bottom: -0.9375rem; }
  @media print, screen and (min-width: 33.75em) {
    .grid-margin-y {
      margin-top: -0.9375rem;
      margin-bottom: -0.9375rem; } }
  .grid-margin-y > .cell {
    height: calc(100% - 1.875rem);
    margin-top: 0.9375rem;
    margin-bottom: 0.9375rem; }
  @media print, screen and (min-width: 33.75em) {
    .grid-margin-y > .cell {
      height: calc(100% - 1.875rem);
      margin-top: 0.9375rem;
      margin-bottom: 0.9375rem; } }
  .grid-margin-y > .auto {
    height: auto; }
  .grid-margin-y > .shrink {
    height: auto; }
  .grid-margin-y > .small-1 {
    height: calc(8.33333% - 1.875rem); }
  .grid-margin-y > .small-2 {
    height: calc(16.66667% - 1.875rem); }
  .grid-margin-y > .small-3 {
    height: calc(25% - 1.875rem); }
  .grid-margin-y > .small-4 {
    height: calc(33.33333% - 1.875rem); }
  .grid-margin-y > .small-5 {
    height: calc(41.66667% - 1.875rem); }
  .grid-margin-y > .small-6 {
    height: calc(50% - 1.875rem); }
  .grid-margin-y > .small-7 {
    height: calc(58.33333% - 1.875rem); }
  .grid-margin-y > .small-8 {
    height: calc(66.66667% - 1.875rem); }
  .grid-margin-y > .small-9 {
    height: calc(75% - 1.875rem); }
  .grid-margin-y > .small-10 {
    height: calc(83.33333% - 1.875rem); }
  .grid-margin-y > .small-11 {
    height: calc(91.66667% - 1.875rem); }
  .grid-margin-y > .small-12 {
    height: calc(100% - 1.875rem); }
  @media print, screen and (min-width: 33.75em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 1.875rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 1.875rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 1.875rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 1.875rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 1.875rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 1.875rem); } }
  @media print, screen and (min-width: 46.875em) {
    .grid-margin-y > .large-auto {
      height: auto; }
    .grid-margin-y > .large-shrink {
      height: auto; }
    .grid-margin-y > .large-1 {
      height: calc(8.33333% - 1.875rem); }
    .grid-margin-y > .large-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .large-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .large-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .large-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .large-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .large-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .large-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .large-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .large-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .large-11 {
      height: calc(91.66667% - 1.875rem); }
    .grid-margin-y > .large-12 {
      height: calc(100% - 1.875rem); } }
  @media screen and (min-width: 64em) {
    .grid-margin-y > .xlarge-auto {
      height: auto; }
    .grid-margin-y > .xlarge-shrink {
      height: auto; }
    .grid-margin-y > .xlarge-1 {
      height: calc(8.33333% - 1.875rem); }
    .grid-margin-y > .xlarge-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .xlarge-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .xlarge-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .xlarge-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .xlarge-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .xlarge-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .xlarge-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .xlarge-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .xlarge-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .xlarge-11 {
      height: calc(91.66667% - 1.875rem); }
    .grid-margin-y > .xlarge-12 {
      height: calc(100% - 1.875rem); } }

.grid-frame.grid-margin-y {
  height: calc(100vh + 1.875rem); }
  @media print, screen and (min-width: 33.75em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 1.875rem); } }
  @media print, screen and (min-width: 46.875em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 1.875rem); } }
  @media screen and (min-width: 64em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 1.875rem); } }

@media print, screen and (min-width: 33.75em) {
  .grid-margin-y.medium-grid-frame {
    height: calc(100vh + 1.875rem); } }

@media print, screen and (min-width: 46.875em) {
  .grid-margin-y.large-grid-frame {
    height: calc(100vh + 1.875rem); } }

@media screen and (min-width: 64em) {
  .grid-margin-y.xlarge-grid-frame {
    height: calc(100vh + 1.875rem); } }

.hide {
  display: none !important; }

.invisible {
  visibility: hidden; }

@media screen and (max-width: 33.74875em) {
  .hide-for-small-only {
    display: none !important; } }

@media screen and (max-width: 0em), screen and (min-width: 33.75em) {
  .show-for-small-only {
    display: none !important; } }

@media print, screen and (min-width: 33.75em) {
  .hide-for-medium {
    display: none !important; } }

@media screen and (max-width: 33.74875em) {
  .show-for-medium {
    display: none !important; } }

@media screen and (min-width: 33.75em) and (max-width: 46.87375em) {
  .hide-for-medium-only {
    display: none !important; } }

@media screen and (max-width: 33.74875em), screen and (min-width: 46.875em) {
  .show-for-medium-only {
    display: none !important; } }

@media print, screen and (min-width: 46.875em) {
  .hide-for-large {
    display: none !important; } }

@media screen and (max-width: 46.87375em) {
  .show-for-large {
    display: none !important; } }

@media screen and (min-width: 46.875em) and (max-width: 63.99875em) {
  .hide-for-large-only {
    display: none !important; } }

@media screen and (max-width: 46.87375em), screen and (min-width: 64em) {
  .show-for-large-only {
    display: none !important; } }

@media screen and (min-width: 64em) {
  .hide-for-xlarge {
    display: none !important; } }

@media screen and (max-width: 63.99875em) {
  .show-for-xlarge {
    display: none !important; } }

@media screen and (min-width: 64em) and (max-width: 76.87375em) {
  .hide-for-xlarge-only {
    display: none !important; } }

@media screen and (max-width: 63.99875em), screen and (min-width: 76.875em) {
  .show-for-xlarge-only {
    display: none !important; } }

.show-for-sr,
.show-on-focus {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0; }

.show-on-focus:active, .show-on-focus:focus {
  position: static !important;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal; }

.show-for-landscape,
.hide-for-portrait {
  display: block !important; }
  @media screen and (orientation: landscape) {
    .show-for-landscape,
    .hide-for-portrait {
      display: block !important; } }
  @media screen and (orientation: portrait) {
    .show-for-landscape,
    .hide-for-portrait {
      display: none !important; } }

.hide-for-landscape,
.show-for-portrait {
  display: none !important; }
  @media screen and (orientation: landscape) {
    .hide-for-landscape,
    .show-for-portrait {
      display: none !important; } }
  @media screen and (orientation: portrait) {
    .hide-for-landscape,
    .show-for-portrait {
      display: block !important; } }

/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */
/* Document
       ========================================================================== */
/**
     * 1. Correct the line height in all browsers.
     * 2. Prevent adjustments of font size after orientation changes in
     *    IE on Windows Phone and in iOS.
     */
html {
  line-height: 1.15;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/* Sections
       ========================================================================== */
/**
     * Remove the margin in all browsers (opinionated).
     */
body {
  margin: 0; }

/**
     * Add the correct display in IE 9-.
     */
article,
aside,
footer,
header,
nav,
section {
  display: block; }

/**
     * Correct the font size and margin on `h1` elements within `section` and
     * `article` contexts in Chrome, Firefox, and Safari.
     */
h1 {
  font-size: 2em;
  margin: 0.67em 0; 
}

/* Grouping content
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
figcaption,
figure {
  display: block; }

/**
     * Add the correct margin in IE 8.
     */
figure {
  margin: 1em 40px; }

/**
     * 1. Add the correct box sizing in Firefox.
     * 2. Show the overflow in Edge and IE.
     */
hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/**
     * Add the correct display in IE.
     */
main {
  display: block; }

/**
     * 1. Correct the inheritance and scaling of font size in all browsers.
     * 2. Correct the odd `em` font sizing in all browsers.
     */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/* Links
       ========================================================================== */
/**
     * 1. Remove the gray background on active links in IE 10.
     * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
     */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */ }

/* Text-level semantics
       ========================================================================== */
/**
     * 1. Remove the bottom border in Chrome 57- and Firefox 39-.
     * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
     */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  /* 2 */ }

/**
     * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
     */
b,
strong {
  font-weight: inherit; }

/**
     * Add the correct font weight in Chrome, Edge, and Safari.
     */
b,
strong {
  font-weight: bolder; }

/**
     * 1. Correct the inheritance and scaling of font size in all browsers.
     * 2. Correct the odd `em` font sizing in all browsers.
     */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
     * Add the correct font style in Android 4.3-.
     */
dfn {
  font-style: italic; }

/**
     * Add the correct background and color in IE 9-.
     */
mark {
  background-color: #ff0;
  color: #000; }

/**
     * Add the correct font size in all browsers.
     */
small {
  font-size: 80%; }

/**
     * Prevent `sub` and `sup` elements from affecting the line height in
     * all browsers.
     */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
audio,
video {
  display: inline-block; }

/**
     * Add the correct display in iOS 4-7.
     */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
     * Remove the border on images inside links in IE 10-.
     */
img {
  border-style: none; }

/**
     * Hide the overflow in IE.
     */
svg:not(:root) {
  overflow: hidden; }

/* Forms
       ========================================================================== */
/**
     * 1. Change the font styles in all browsers (opinionated).
     * 2. Remove the margin in Firefox and Safari.
     */
button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */ }

/**
     * Show the overflow in IE.
     */
button {
  overflow: visible; }

/**
     * Remove the inheritance of text transform in Edge, Firefox, and IE.
     * 1. Remove the inheritance of text transform in Firefox.
     */
button,
select {
  /* 1 */
  text-transform: none; }

/**
     * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
     *    controls in Android 4.
     * 2. Correct the inability to style clickable types in iOS and Safari.
     */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */ }

button,
[type="button"],
[type="reset"],
[type="submit"] {
  /**
       * Remove the inner border and padding in Firefox.
       */
  /**
       * Restore the focus styles unset by the previous rule.
       */ }
  button::-moz-focus-inner,
  [type="button"]::-moz-focus-inner,
  [type="reset"]::-moz-focus-inner,
  [type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0; }
  button:-moz-focusring,
  [type="button"]:-moz-focusring,
  [type="reset"]:-moz-focusring,
  [type="submit"]:-moz-focusring {
    outline: 1px dotted ButtonText; }

/**
     * Show the overflow in Edge.
     */
input {
  overflow: visible; }

/**
     * 1. Add the correct box sizing in IE 10-.
     * 2. Remove the padding in IE 10-.
     */
[type="checkbox"],
[type="radio"] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
     * Correct the cursor style of increment and decrement buttons in Chrome.
     */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
     * 1. Correct the odd appearance in Chrome and Safari.
     * 2. Correct the outline style in Safari.
     */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
  /**
       * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
       */ }
  [type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration {
    -webkit-appearance: none; }

/**
     * 1. Correct the inability to style clickable types in iOS and Safari.
     * 2. Change font properties to `inherit` in Safari.
     */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/**
     * Correct the padding in Firefox.
     */
fieldset {
  padding: 0.35em 0.75em 0.625em; }

/**
     * 1. Correct the text wrapping in Edge and IE.
     * 2. Correct the color inheritance from `fieldset` elements in IE.
     * 3. Remove the padding so developers are not caught out when they zero out
     *    `fieldset` elements in all browsers.
     */
legend {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  /* 1 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  color: inherit;
  /* 2 */
  white-space: normal;
  /* 1 */ }

/**
     * 1. Add the correct display in IE 9-.
     * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
     */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
     * Remove the default vertical scrollbar in IE.
     */
textarea {
  overflow: auto; }

/* Interactive
       ========================================================================== */
/*
     * Add the correct display in Edge, IE, and Firefox.
     */
details {
  display: block; }

/*
     * Add the correct display in all browsers.
     */
summary {
  display: list-item; }

/*
     * Add the correct display in IE 9-.
     */
menu {
  display: block; }

/* Scripting
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
canvas {
  display: inline-block; }

/**
     * Add the correct display in IE.
     */
template {
  display: none; }

/* Hidden
       ========================================================================== */
/**
     * Add the correct display in IE 10-.
     */
[hidden] {
  display: none; }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block;
    max-width: 100%;
    width: 100%; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

/* Slider */
.slick-loading .slick-list {
  background: #fff url("./ajax-loader.gif") center center no-repeat; }

/* Icons */
@font-face {
  font-family: "slick";
  src: url("../fonts/slick.eot");
  src: url("../fonts/slick.eot?#iefix") format("embedded-opentype"), url("../fonts/slick.woff") format("woff"), url("../fonts/slick.ttf") format("truetype"), url("../fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal; 
  font-display: swap;
}

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none; }
  .slick-prev:hover, .slick-prev:focus,
  .slick-next:hover,
  .slick-next:focus {
    outline: none;
    background: transparent;
    color: transparent; }
    .slick-prev:hover:before, .slick-prev:focus:before,
    .slick-next:hover:before,
    .slick-next:focus:before {
      opacity: 1; }
  .slick-prev.slick-disabled:before,
  .slick-next.slick-disabled:before {
    opacity: 0.25; }
  .slick-prev:before,
  .slick-next:before {
    font-family: "slick";
    font-size: 20px;
    line-height: 1;
    color: white;
    opacity: 0.75;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.slick-prev {
  left: -25px; }
  [dir="rtl"] .slick-prev {
    left: auto;
    right: -25px; }
  .slick-prev:before {
    content: "←"; }
    [dir="rtl"] .slick-prev:before {
      content: "→"; }

.slick-next {
  right: -25px; }
  [dir="rtl"] .slick-next {
    left: -25px;
    right: auto; }
  .slick-next:before {
    content: "→"; }
    [dir="rtl"] .slick-next:before {
      content: "←"; }

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px; }

.slick-dots {
  position: absolute;
  bottom: 24px;
  left: 50%;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: auto;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0); }
  .slick-dots li {
    position: relative;
    display: inline-block;
    height: 20px;
    width: 20px;
    margin: 0 0;
    padding: 0;
    cursor: pointer; }
    .slick-dots li button {
      border: 0;
      background: transparent;
      display: block;
      height: 20px;
      width: 20px;
      outline: none;
      line-height: 0px;
      font-size: 0px;
      color: transparent;
      padding: 5px;
      cursor: pointer; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none; }
        .slick-dots li button:hover:before, .slick-dots li button:focus:before {
          opacity: 1; }
      .slick-dots li button:before {
        position: absolute;
        top: 0;
        left: 0;
        content: "•";
        width: 20px;
        height: 20px;
        font-family: "slick";
        font-size: 8px;
        line-height: 20px;
        text-align: center;
        color: rgba(255, 255, 255, 0.5);
        opacity: 0.25;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .slick-dots li.slick-active button:before {
      color: white;
      opacity: 0.75; }

/********************************************************************************

dP                dP
88                88
88d888b. .d8888b. 88 88d888b. .d8888b. 88d888b. .d8888b.
88'  `88 88ooood8 88 88'  `88 88ooood8 88'  `88 Y8ooooo.
88    88 88.  ... 88 88.  .88 88.  ... 88             88
dP    dP `88888P' dP 88Y888P' `88888P' dP       `88888P'
                     88
					 dP

********************************************************************************/
/********************************************************************************
  __  __               __  __               _   _    ____
U|' \/ '|u   ___       \ \/"/      ___     | \ |"|  / __"| u
\| |\/| |/  |_"_|      /\  /\     |_"_|   <|  \| |><\___ \/
 | |  | |    | |      U /  \ u     | |    U| |\  |u u___) |
 |_|  |_|  U/| |\u     /_/\_\    U/| |\u   |_| \_|  |____/>>
<<,-,,-..-,_|___|_,-.,-,>> \\_.-,_|___|_,-.||   \\,-.)(  (__)
 (./  \.)\_)-' '-(_/  \_)  (__)\_)-' '-(_/ (_")  (_/(__)

********************************************************************************/
/*
// =============================================================================
// Fonts
// =============================================================================

Font-face mixin example:

@include font-face(Optima, '../fonts/Optima-ExtraBlack', 900, normal, eot woff otf);

*/
/********************************************************************************

                  dP
                  88
.d8888b. .d8888b. 88 .d8888b. 88d888b. .d8888b.
88'  `"" 88'  `88 88 88'  `88 88'  `88 Y8ooooo.
88.  ... 88.  .88 88 88.  .88 88             88
`88888P' `88888P' dP `88888P' dP       `88888P'

********************************************************************************/
/*******************************************************
  __             _
 / _| ___  _ __ | |_ ___
| |_ / _ \| '_ \| __/ __|
|  _| (_) | | | | |_\__ \
|_|  \___/|_| |_|\__|___/

*******************************************************/
/*
	font-sizes
*/
.f__h1 {
  font-size: 2.5rem;
  font-weight: 900;
  line-height: 0.001rem;
  word-break: break-word; }
  @media print, screen and (min-width: 33.75em) {
    .f__h1 {
      font-size: 3.375rem;
      line-height: 4.1175rem; } }

.f__h2 {
  font-size: 1.75rem;
  font-weight: bold;
  line-height: 2.2575rem;
  word-break: break-word; }

.f__h3 {
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.625rem;
  word-break: break-word; }
  @media print, screen and (min-width: 33.75em) {
    .f__h3 {
      font-size: 1.5rem;
      line-height: 1.875rem; } }

.f__h4,
.f__h5 {
  font-size: 1rem;
  font-weight: bold;
  line-height: 1.375rem;
  word-break: break-word; }
  @media print, screen and (min-width: 33.75em) {
    .f__h4,
    .f__h5 {
      font-size: 1.25rem;
      line-height: 1.875rem; } }

/********************************************************************************

  dP
  88
d8888P .d8888b. .d8888b. .d8888b.
  88   88'  `88 88'  `88 Y8ooooo.
  88   88.  .88 88.  .88       88
  dP   `88888P8 `8888P88 `88888P'
                     .88
				 d8888P

********************************************************************************/
body {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  font-family: "Roboto", sans-serif;
  font-style: normal;
  font-weight: normal;
  font-size: 1rem;
  color: #4a5058;
  font-size: 1rem;
  line-height: 0.125rem;
  font-weight: normal;
  margin: 0 0 0 0;
  padding: 5.5875rem 0 0 0;
  max-width: 100%;
  min-width: 300px;
  position: relative;
  text-rendering: optimizeLegibility;
  width: 100%; }
  @media print, screen and (min-width: 33.75em) {
    body {
      font-size: 1.125rem;
      line-height: 1.75rem; } }
  body *,
  body *:before,
  body *:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    line-height: 1.5rem; }
  @media screen and (min-width: 64em) {
    body {
      padding: 5.625rem 0 0 0; } }

.bg-light-blue {
  background-color: #e8ecf1; }

.bg-white {
  background-color: white; }

.bg-gradient-dark-gray {
  background-color: #24272b; }

.element-button-wrapper {
  display: block;
  float: left;
  margin: -5px -5px -5px -5px;
  min-width: 100%;
  position: relative;
  text-align: center;
  z-index: 10; }
  .element-button-wrapper .element-button {
    clear: none;
    margin: 5px 5px 5px 5px; }

.element-button {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: black;
  border-radius: 0.25rem;
  border-width: 0;
  clear: both;
  color: white;
  cursor: pointer;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.05625rem;
  line-height: 0.875rem;
  margin: 0 0 0 0;
  max-width: 100%;
  max-width: none;
  min-height: 2.5rem;
  padding: 0 24px;
  position: relative;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  -webkit-transition: all 100ms ease;
  transition: all 100ms ease;
  width: 100%;
  /*
		solid
	*/ }
  .element-button:hover {
    background-color: grey;
    text-decoration: none; }
  .element-button:focus {
    outline: none; }
  .element-button:active {
    background-color: darkgrey; }
  .element-button:disabled:hover, .element-button:disabled:focus, .element-button:disabled:active, .element-button.is--disabled:hover, .element-button.is--disabled:focus, .element-button.is--disabled:active {
    cursor: not-allowed; }
  .element-button.has--icon {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 0 24px 0 44px;
    white-space: nowrap; }
    .element-button.has--icon .icon {
      left: -13px;
      margin-left: -7px;
      position: relative;
      top: -1px; }
  @media print, screen and (min-width: 33.75em) {
    .element-button {
      width: auto; } }
  .element-button.is--solid, .element-button.is--solid--default, .element-button.is--solid--black {
    background-color: black;
    color: #ffffff; }
    .element-button.is--solid:disabled, .element-button.is--solid:disabled:hover, .element-button.is--solid:disabled:focus, .element-button.is--solid:disabled:active, .element-button.is--solid.is--disabled, .element-button.is--solid.is--disabled:hover, .element-button.is--solid.is--disabled:focus, .element-button.is--solid.is--disabled:active, .element-button.is--solid--default:disabled, .element-button.is--solid--default:disabled:hover, .element-button.is--solid--default:disabled:focus, .element-button.is--solid--default:disabled:active, .element-button.is--solid--default.is--disabled, .element-button.is--solid--default.is--disabled:hover, .element-button.is--solid--default.is--disabled:focus, .element-button.is--solid--default.is--disabled:active, .element-button.is--solid--black:disabled, .element-button.is--solid--black:disabled:hover, .element-button.is--solid--black:disabled:focus, .element-button.is--solid--black:disabled:active, .element-button.is--solid--black.is--disabled, .element-button.is--solid--black.is--disabled:hover, .element-button.is--solid--black.is--disabled:focus, .element-button.is--solid--black.is--disabled:active {
      background-color: #868E96; }
    .element-button.is--solid:hover, .element-button.is--solid--default:hover, .element-button.is--solid--black:hover {
      background-color: black; }
    .element-button.is--solid:active, .element-button.is--solid--default:active, .element-button.is--solid--black:active {
      background-color: black; }
  .element-button.is--solid--transparent {
    background-color: transparent;
    border: 1px solid black;
    color: black; }
    .element-button.is--solid--transparent:disabled, .element-button.is--solid--transparent:disabled:hover, .element-button.is--solid--transparent:disabled:focus, .element-button.is--solid--transparent:disabled:active, .element-button.is--solid--transparent.is--disabled, .element-button.is--solid--transparent.is--disabled:hover, .element-button.is--solid--transparent.is--disabled:focus, .element-button.is--solid--transparent.is--disabled:active {
      background-color: #868E96; }
    .element-button.is--solid--transparent:hover {
      background-color: #e6e6e6; }
    .element-button.is--solid--transparent:active {
      background-color: #cccccc; }

.button-close {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-left: auto;
  background: transparent;
  border: none;
  width: 40px;
  height: 40px;
  text-indent: -9999px;
  overflow: hidden;
  margin: 0;
  padding: 0;
  font-size: 0;
  text-indent: -9999px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  cursor: pointer;
  outline: none; }
  .button-close .icon-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-left: auto;
    width: 40px;
    height: 40px;
    background-color: #ced4da;
    border-radius: 50%; }

.button-more-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  font-size: 1rem;
  font-weight: bold;
  line-height: 1.63rem;
  text-decoration: none;
  color: #C32A28;
  -webkit-transition: all 150ms ease;
  transition: all 150ms ease; }
  .button-more-link:hover {
    color: #b9201b; }
    .button-more-link:hover .icon-arrow-red path {
      fill: #b9201b; }
  .button-more-link.is--white {
    color: white; }
    .button-more-link.is--white:hover {
      color: #d9d9d9; }
      .button-more-link.is--white:hover .icon-arrow-white path {
        fill: #d9d9d9; }
  .button-more-link.is--black {
    color: #0a0a0a; }
    .button-more-link.is--black:hover {
      color: #303030; }
      .button-more-link.is--black:hover .icon-arrow-white path {
        fill: #303030; }
  .button-more-link.is--small {
    font-size: 0.8125rem;
    line-height: 1; }
  .button-more-link.text-uppercase {
    text-transform: uppercase; }
  .button-more-link .icon-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 14px;
    height: 10px;
    margin: 0 0 0 0.5rem; }

.button-share {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 0.75rem;
  line-height: 1.3725rem;
  font-weight: bold;
  margin: 0 0 0 auto;
  padding: 0 0 0 0;
  background: transparent;
  border: solid 1px transparent;
  color: white;
  cursor: pointer;
  text-transform: uppercase; }
  @media print, screen and (min-width: 46.875em) {
    .button-share {
      font-size: 0.875rem;
      line-height: 0.7525rem; } }
  .button-share:focus {
    outline: none; }
  .button-share:hover {
    opacity: .7; }
  .button-share .icon-container {
    width: 18px;
    height: 24px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0 0.5rem 0 0; }
    .button-share .icon-container .icon {
      width: 18px;
      height: 24px; }

.element-checkbox__wrapper {
  overflow: hidden;
  position: relative; }
  .element-checkbox__wrapper input[type=checkbox] {
    display: none; }
    .element-checkbox__wrapper input[type=checkbox] + label {
      color: black;
      cursor: pointer;
      font-size: 1rem;
      font-weight: normal;
      height: auto;
      line-height: 1.375rem;
      margin: 0 25px 0 0;
      min-height: 1.375rem;
      padding: 0 0 12px 27px;
      position: relative;
      -webkit-transition: all 100ms ease;
      transition: all 100ms ease;
      width: auto;
      overflow: initial;
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
      white-space: normal; }
      .element-checkbox__wrapper input[type=checkbox] + label:before {
        content: '';
        background-color: white;
        border-radius: 2px;
        border: 1px solid black;
        height: 17px;
        left: 0;
        position: absolute;
        top: 2px;
        -webkit-transition: border-color 100ms ease, background-color 100ms ease;
        transition: border-color 100ms ease, background-color 100ms ease;
        width: 17px; }
      @media screen and (max-width: 33.74875em) {
        .element-checkbox__wrapper input[type=checkbox] + label {
          display: block; } }
    .element-checkbox__wrapper input[type=checkbox]:checked + label:before {
      background-color: green;
      background-image: url("./../images/svg/check-white.svg");
      background-position: center center;
      background-repeat: no-repeat;
      background-size: auto 11px;
      border-color: green; }
    .element-checkbox__wrapper input[type=checkbox]:disabled + label {
      color: lightgrey; }
      .element-checkbox__wrapper input[type=checkbox]:disabled + label:before {
        background-color: grey;
        background-image: none;
        opacity: .3; }
  .element-checkbox__wrapper label:not([for]) {
    margin-bottom: 11px; }
  .element-checkbox__wrapper .element-checkbox__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .element-checkbox__wrapper .element-checkbox__container.is--checkbox-list {
      display: block; }

input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0; }

.element-input.is--invalid {
  background-color: #fff8f8;
  border-color: #ff6b6b; }

.element-input__description {
  display: inline-block; }

.element-input,
input[type="text"],
input[type="password"],
input[type="date"],
input[type="datetime"],
input[type="datetime-local"],
input[type="month"],
input[type="week"],
input[type="email"],
input[type="number"],
input[type="tel"],
input[type="time"],
input[type="url"],
input[type="color"] {
  font-size: 1rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: white;
  border-radius: 4px;
  border: 1px solid black;
  -webkit-box-shadow: 0;
  box-shadow: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: black;
  display: block;
  font-size: 1rem;
  font-weight: 400;
  height: 40px;
  line-height: 1;
  margin: 0 0 0 0;
  overflow: hidden;
  padding: 12px;
  text-overflow: ellipsis;
  -webkit-transition: all 150ms ease;
  transition: all 150ms ease;
  white-space: nowrap;
  width: 100%; }
  .element-input:-moz-read-only:not([read-only="false"]),
  input[type="text"]:-moz-read-only:not([read-only="false"]),
  input[type="password"]:-moz-read-only:not([read-only="false"]),
  input[type="date"]:-moz-read-only:not([read-only="false"]),
  input[type="datetime"]:-moz-read-only:not([read-only="false"]),
  input[type="datetime-local"]:-moz-read-only:not([read-only="false"]),
  input[type="month"]:-moz-read-only:not([read-only="false"]),
  input[type="week"]:-moz-read-only:not([read-only="false"]),
  input[type="email"]:-moz-read-only:not([read-only="false"]),
  input[type="number"]:-moz-read-only:not([read-only="false"]),
  input[type="tel"]:-moz-read-only:not([read-only="false"]),
  input[type="time"]:-moz-read-only:not([read-only="false"]),
  input[type="url"]:-moz-read-only:not([read-only="false"]),
  input[type="color"]:-moz-read-only:not([read-only="false"]) {
    color: #b1b1b1; }
  .element-input:read-only:not([read-only="false"]),
  input[type="text"]:read-only:not([read-only="false"]),
  input[type="password"]:read-only:not([read-only="false"]),
  input[type="date"]:read-only:not([read-only="false"]),
  input[type="datetime"]:read-only:not([read-only="false"]),
  input[type="datetime-local"]:read-only:not([read-only="false"]),
  input[type="month"]:read-only:not([read-only="false"]),
  input[type="week"]:read-only:not([read-only="false"]),
  input[type="email"]:read-only:not([read-only="false"]),
  input[type="number"]:read-only:not([read-only="false"]),
  input[type="tel"]:read-only:not([read-only="false"]),
  input[type="time"]:read-only:not([read-only="false"]),
  input[type="url"]:read-only:not([read-only="false"]),
  input[type="color"]:read-only:not([read-only="false"]) {
    color: #b1b1b1; }
  .element-input::-ms-clear,
  input[type="text"]::-ms-clear,
  input[type="password"]::-ms-clear,
  input[type="date"]::-ms-clear,
  input[type="datetime"]::-ms-clear,
  input[type="datetime-local"]::-ms-clear,
  input[type="month"]::-ms-clear,
  input[type="week"]::-ms-clear,
  input[type="email"]::-ms-clear,
  input[type="number"]::-ms-clear,
  input[type="tel"]::-ms-clear,
  input[type="time"]::-ms-clear,
  input[type="url"]::-ms-clear,
  input[type="color"]::-ms-clear {
    display: none; }
  .element-input:not(.is--invalid):focus,
  input[type="text"]:not(.is--invalid):focus,
  input[type="password"]:not(.is--invalid):focus,
  input[type="date"]:not(.is--invalid):focus,
  input[type="datetime"]:not(.is--invalid):focus,
  input[type="datetime-local"]:not(.is--invalid):focus,
  input[type="month"]:not(.is--invalid):focus,
  input[type="week"]:not(.is--invalid):focus,
  input[type="email"]:not(.is--invalid):focus,
  input[type="number"]:not(.is--invalid):focus,
  input[type="tel"]:not(.is--invalid):focus,
  input[type="time"]:not(.is--invalid):focus,
  input[type="url"]:not(.is--invalid):focus,
  input[type="color"]:not(.is--invalid):focus {
    outline: none;
    border-color: #98a0a9; }
  .element-input:placeholder,
  input[type="text"]:placeholder,
  input[type="password"]:placeholder,
  input[type="date"]:placeholder,
  input[type="datetime"]:placeholder,
  input[type="datetime-local"]:placeholder,
  input[type="month"]:placeholder,
  input[type="week"]:placeholder,
  input[type="email"]:placeholder,
  input[type="number"]:placeholder,
  input[type="tel"]:placeholder,
  input[type="time"]:placeholder,
  input[type="url"]:placeholder,
  input[type="color"]:placeholder {
    color: black; }

/*
<label for="inputXX" class="element-label">This is an example of a label with label styling</label>
*/
.element-label {
  margin: 0 0 0 0;
  display: block;
  width: 100%;
  padding: 0 0 0 0;
  font-weight: 700;
  font-size: 1rem;
  color: black;
  line-height: 1.375rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }
  .element-label + [class^="element-"] {
    margin-top: 8px; }

/*
<a href="#" class="element-link element-link--arrow">Fancy icon link</a>
*/
.element-link {
  color: black;
  cursor: pointer;
  font-weight: 700;
  -webkit-transition: color 100ms ease;
  transition: color 100ms ease;
  text-decoration: underline; }
  .element-link:hover, .element-link:active {
    color: steelblue; }
  .element-link--arrow {
    margin-right: 8px;
    max-width: 100%;
    padding-right: 22px;
    position: relative; }
    .element-link--arrow::after {
      content: '';
      background-image: url("https://cdn.onlinewebfonts.com/svg/img_447773.png");
      background-position: left center;
      background-repeat: no-repeat;
      background-size: contain;
      height: 15px;
      margin: 0 0 0 10px;
      position: absolute;
      -webkit-transition: margin 150ms ease-in-out;
      transition: margin 150ms ease-in-out;
      width: 1.375rem; }
    .element-link--arrow:hover::after {
      margin: 0 0 0 5px; }
  .element-link--no-decoration {
    color: black;
    cursor: pointer;
    font-weight: 700;
    -webkit-transition: color 100ms ease;
    transition: color 100ms ease;
    text-decoration: none; }
    .element-link--no-decoration:hover, .element-link--no-decoration:active {
      color: steelblue; }
    .element-link--no-decoration:hover, .element-link--no-decoration:active {
      color: steelblue; }

.element-list--unordered {
  list-style-type: none;
  margin-left: 0;
  margin-bottom: 0;
  padding-left: 0;
  width: 100%; }
  .element-list--unordered li {
    margin-left: 0;
    padding-left: 20px;
    position: relative; }
    .element-list--unordered li + li {
      margin-top: 12px; }
    .element-list--unordered li > *:last-child {
      margin-bottom: 0; }
    .element-list--unordered li li {
      margin-top: 5px; }
  @media print, screen and (min-width: 33.75em) {
    .element-list--unordered {
      margin-left: 8px; } }
  .element-list--unordered li:before {
    content: '';
    position: absolute;
    display: block;
    left: 0;
    top: 6px;
    margin: 0 0 0 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #000000; }

.element-list--ordered {
  list-style-type: none;
  margin-left: 0;
  margin-bottom: 0;
  padding-left: 0;
  width: 100%;
  counter-reset: li; }
  .element-list--ordered li {
    margin-left: 0;
    padding-left: 20px;
    position: relative; }
    .element-list--ordered li + li {
      margin-top: 12px; }
    .element-list--ordered li > *:last-child {
      margin-bottom: 0; }
    .element-list--ordered li li {
      margin-top: 5px; }
  @media print, screen and (min-width: 33.75em) {
    .element-list--ordered {
      margin-left: 8px; } }
  .element-list--ordered li {
    padding-left: 0; }
    .element-list--ordered li:before {
      content: counter(li) ". ";
      counter-increment: li; }

.element-radio__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative; }
  .element-radio__wrapper .element-radio {
    left: 2px;
    opacity: 0;
    position: absolute;
    top: 3px; }
  .element-radio__wrapper .element-label:not([for]) {
    margin-bottom: 11px; }
  .element-radio__wrapper .element-radio {
    left: 2px;
    opacity: 0;
    position: absolute;
    top: 3px; }
    .element-radio__wrapper .element-radio + .element-label {
      color: darkgrey;
      display: block;
      font-size: 0.875rem;
      font-weight: 700;
      height: auto;
      line-height: 1.5rem;
      margin: 0 25px 0 0;
      min-height: 1.375rem;
      padding: 0 0 12px 27px;
      position: relative;
      -webkit-transition: all 100ms ease;
      transition: all 100ms ease;
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
      width: auto;
      cursor: pointer; }
      .element-radio__wrapper .element-radio + .element-label:before {
        content: '';
        background-color: white;
        border-radius: 50%;
        border: 1px solid black;
        height: 18px;
        left: 0;
        position: absolute;
        top: 1px;
        -webkit-transition: border-color 100ms ease, background-color 100ms ease;
        transition: border-color 100ms ease, background-color 100ms ease;
        width: 18px; }
      .element-radio__wrapper .element-radio + .element-label:after {
        content: '';
        background-color: #ffffff;
        border-radius: 50%;
        display: none;
        height: 8px;
        left: 5px;
        position: absolute;
        top: 6px;
        width: 8px; }
      @media screen and (max-width: 33.74875em) {
        .element-radio__wrapper .element-radio + .element-label {
          display: block; } }
    .element-radio__wrapper .element-radio:checked + .element-label:before {
      background-color: green;
      border-color: green; }
    .element-radio__wrapper .element-radio:checked + .element-label:after {
      display: block; }
    .element-radio__wrapper .element-radio:disabled + .element-label {
      opacity: 0.3; }
      .element-radio__wrapper .element-radio:disabled + .element-label:before {
        background-image: none; }
  .element-radio__wrapper.is--radio-list {
    display: block; }

.element-select {
  position: relative; }
  .element-select:before, .element-select:after {
    content: "";
    width: 0;
    height: 0;
    border: 6px solid transparent;
    border-left-width: 5px;
    border-right-width: 5px;
    position: absolute;
    right: 10px;
    z-index: 1; }
  .element-select:before {
    border-color: transparent transparent black transparent;
    bottom: 20px; }
  .element-select:after {
    border-color: black transparent transparent transparent;
    bottom: 5px; }
  .element-select__select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: white;
    border-radius: 3px;
    border: 1px solid black;
    color: black;
    cursor: pointer;
    display: inline-block;
    font-size: 0.875rem;
    height: 40px;
    line-height: 1.75rem;
    padding: 0 12px;
    position: relative;
    -webkit-transition: all 0.2s ease-in;
    transition: all 0.2s ease-in;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    width: 100%; }
    .element-select__select:focus::-ms-value {
      background: white;
      color: black; }
    .element-select__select::-ms-expand {
      display: none; }
    .element-select__select:focus {
      outline: none; }
  .element-select.is--short {
    max-width: 191px; }

/*
  <textarea placeholder="Placeholder" class="element-input-textarea"></textarea>
*/
.element-input-textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: #ffffff;
  border-radius: 3px;
  border: 1px solid #ADB5BD;
  -webkit-box-shadow: 0;
  box-shadow: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #000000;
  display: block;
  font-weight: normal;
  height: auto;
  margin: 0 0 0 0;
  min-height: 42px;
  overflow: hidden;
  padding: 10px 13px;
  resize: vertical;
  -webkit-transition: all 100ms ease;
  transition: all 100ms ease;
  width: 100%; }
  .element-input-textarea.is--invalid {
    border-color: #E79EA1; }
  .element-input-textarea:-moz-read-only:not([read-only="false"]) {
    color: #b1b1b1; }
  .element-input-textarea:read-only:not([read-only="false"]) {
    color: #b1b1b1; }
  .element-input-textarea::-ms-clear {
    display: none; }
  .element-input-textarea:not(.is--invalid):focus {
    outline: none;
    border-color: #767D85; }
  .element-input-textarea:placeholder {
    color: #A2A2A2; }

.theme--light .element-input-textarea {
  border-color: #B5BBC1; }

.dotted-list {
  color: inherit;
  list-style-type: none;
  margin: 0;
  padding: 0;
  text-align: left;
  width: 100%; }
  .dotted-list__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; }
    .dotted-list__item + .dotted-list__item {
      padding-top: 10px; }
  .dotted-list__term {
    display: block;
    font-weight: 700;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    overflow: hidden;
    position: relative; }
    .dotted-list__term:after {
      content: "";
      bottom: 3.6px;
      display: none;
      border-bottom: 2px dotted black;
      margin-left: 3px;
      position: absolute;
      width: 100%; }
  .dotted-list__description {
    float: right;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2; }
  @media screen and (min-width: 33.75em) {
    .dotted-list__item {
      display: block; }
    .dotted-list__term:after {
      display: inline-block; }
    .dotted-list__description {
      padding-left: 3px; } }

.icon.icon-arrow-red {
  width: 14px;
  height: 10px; }

.icon.icon-arrow-white {
  width: 14px;
  height: 10px; }

.icon.icon-arrow-black {
  width: 14px;
  height: 10px; }

.icon.icon-arrow-right-black {
  width: 20px;
  height: 13px; }

.icon.icon-arrow-right-black-small {
  width: 14px;
  height: 10px; }

.icon.icon-arrow-right-grey-small {
  width: 14px;
  height: 10px; }

.icon.icon-arrow-chevron-down {
  width: 14px;
  height: 10px; }
  .icon.icon-arrow-chevron-down path {
    fill: white; }
  .icon.icon-arrow-chevron-down.is--gray path {
    fill: #9da5aa; }

.icon.icon-grade {
  width: 24px;
  height: 24px; }

.icon.icon-grade-inactive {
  width: 24px;
  height: 24px; }

.icon.icon-close-black {
  width: 14px;
  height: 14px; }

.icon.icon-search-large {
  width: 37px;
  height: 37px; }
  .icon.icon-search-large.is--white path {
    fill: white; }
  .icon.icon-search-large.is--gray path {
    fill: rgba(255, 255, 255, 0.2); }

.icon.icon-search {
  width: 19px;
  height: 19px; }

.icon.icon-clock {
  width: 11px;
  height: 11px; }

figure.image {
  display: inline-block;
  border: none;
  margin: 0 2px 0 1px;
  background: white;
  width: 100%;
  height: auto; }

figure.align-left {
  float: left; }

figure.align-right {
  float: right; }

figure.image img {
  margin: 0 0 0 0; }

figure.image figcaption {
  text-align: left; }

.ad-container {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
  &__box {
    background-color: #dee2e6;
    border: 5px solid rgba(34, 37, 42, 0.6);
    width: 100%;
    height: 100%;
    position: absolute;
  }

  img {
    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
  }

  &.vertical-banner {
    min-height: 450px;
  }

  &.wide-skyscraper {
    width: 160px;
    height: 600px;
  }

  &.half-page {
    width: 100%;
    max-width: 300px;
    // &::after{
    //   content: '';
    //   display: block;
    //   padding-bottom: 200%;
    // }
  }

  &.large-leaderboard {
    margin: 0 auto;
    max-width: 980px;
    &::after{
      content: '';
      display: block;
      padding-bottom: 24.49%;
    }
  }
  */ }
  .ad-container + .ad-container {
    margin: 20px auto 0 auto; }
  .ad-container-outer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end; }
  .ad-container-section.top {
    padding: 20px 0; }
  .ad-container-section.bottom {
    padding: 20px 0; }
  .ad-container-section.list-top {
    padding: 20px 0; }
  .ad-container-section.list-bottom {
    padding: 20px 0; }
  .ad-container-section.blue {
    background-color: #e8ecf1; }
  .ad-container .ad-desktop {
    display: none; }
  .ad-container .ad-mobile {
    display: block; }
  @media screen and (min-width: 64em) {
    .ad-container .ad-desktop {
      display: block; }
    .ad-container .ad-mobile {
      display: none; } }
  .ad-container.component-content__text-ad {
    width: 100%;
    margin-top: 25px; }

.accordion-navigation {
  float: left;
  width: 100%;
  height: auto;
  overflow-x: hidden; }
  .accordion-navigation ul {
    list-style-type: none;
    padding: 0 0 0 0;
    margin: 0 0 0 0;
    float: left;
    width: 100%;
    text-align: left;
    position: relative; }
  .accordion-navigation li {
    position: relative;
    margin: 0 0 0 0;
    display: block;
    float: left;
    width: 100%; }
  .accordion-navigation__link {
    float: left; }
  .accordion-navigation .link-wrapper {
    float: left;
    width: 100%;
    position: relative;
    overflow: hidden; }

.accordion-navigation {
  background: tomato;
  font-size: 14px;
  padding: 0 0 0 0;
  position: relative;
  top: -1px; }
  .accordion-navigation > ul + ul {
    margin-top: 10px; }
  .accordion-navigation li {
    background-color: #f1f1f1; }
    .accordion-navigation li + li {
      margin: 0 0 0 0; }
  .accordion-navigation__link {
    float: left;
    min-height: 50px;
    padding: 16px 20px; }
  .accordion-navigation .link-wrapper {
    padding-right: 50px; }
  .accordion-navigation > ul > li {
    -webkit-transition: all 0.05s ease;
    transition: all 0.05s ease; }
  .accordion-navigation > ul > li > ul > li {
    -webkit-transition: all 0.05s ease;
    transition: all 0.05s ease; }
    .accordion-navigation > ul > li > ul > li a {
      padding-left: 30px; }
  .accordion-navigation > ul > li > ul > li > ul > li {
    -webkit-transition: all 0.05s ease;
    transition: all 0.05s ease; }
    .accordion-navigation > ul > li > ul > li > ul > li a {
      padding-left: 40px; }
  .accordion-navigation > ul > li.is--active {
    background-color: #e4e4e4; }
    .accordion-navigation > ul > li.is--active > ul > li,
    .accordion-navigation > ul > li.is--active > ul > li > ul > li {
      background-color: #e4e4e4; }
  .accordion-navigation__button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: steelblue;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 18px auto;
    border: none;
    cursor: pointer;
    height: 50px;
    margin: 0;
    padding: 0 0 0 0;
    position: absolute;
    right: 0;
    top: 0;
    -webkit-transition: -webkit-transform 100ms ease;
    transition: -webkit-transform 100ms ease;
    transition: transform 100ms ease;
    transition: transform 100ms ease, -webkit-transform 100ms ease;
    width: 50px; }
  .accordion-navigation li:not(.is--active) > ul {
    display: none; }
  .accordion-navigation .is--active > .link-wrapper .accordion-navigation__button,
  .accordion-navigation .pre--active > .link-wrapper .accordion-navigation__button {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg); }
  .accordion-navigation .is--active.pre--active > .link-wrapper .accordion-navigation__button {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }

.article-list {
  list-style: none;
  padding: 0 0 0 0;
  margin: 1.75rem 0 0 0; }
  .article-list-wrapper:not(:first-child) {
    margin-top: 1.5rem; }
    @media screen and (min-width: 64em) {
      .article-list-wrapper:not(:first-child) {
        margin-top: 0; } }
  @media print, screen and (min-width: 46.875em) {
    .article-list-wrapper:not(:last-child) {
      margin-top: 0; } }
  .article-list__item + .article-list__item {
    margin: 1.5rem 0 0 0; }
  .article-list__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    text-decoration: none; }
    .article-list__link:hover .article-list__title {
      text-decoration: underline; }
  .article-list__title {
    font-size: 1.1rem!important;
    font-weight: bold;
    line-height: 1.45rem!important;
    color: #22252a;
    margin: 0.25rem 0 0 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden; }
    @media screen and (min-width: 76.875em) {
      .article-list__title {
        margin: 0.25rem 0 0 0;
        font-size: 1.25rem;
        line-height: 1.75rem; } }
  .article-list__body {
    padding: 0 0 0 1rem; 
  }
  .article-list img {
    max-width: 110px;
    width: 100%;
    height: auto;
    -ms-flex-negative: 0;
    flex-shrink: 0; }
    @media print, screen and (min-width: 46.875em) {
      .article-list img {
        max-width: 140px; } }
  .article-list .genre-label {
    font-size:0.85rem;
    font-weight: bold;
    line-height: 1;
    text-transform: uppercase;
    color: #555; }

.section-article-list .button-more-link {
  margin: 2rem 0 0 0; }

.section-article-list .cell + .cell {
  margin-top: 3.5rem; }
  @media print, screen and (min-width: 46.875em) {
    .section-article-list .cell + .cell:nth-child(2) {
      margin-top: 0; } }
  @media screen and (min-width: 64em) {
    .section-article-list .cell + .cell {
      margin-top: 0; } }

.search-results .article-list {
  margin: 0 0 0 0; }

.author {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start; }
  .author-name {
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.63rem;
    margin: 0 0 0 0; }
    .author-name a {
      color: #C32A28;
      text-decoration: none; }
      .author-name a:hover {
        color: #b9201b; }
    .author-name .articleType {
      color: white; }
  .author-image {
    border-radius: 50%;
    width: 48px;
    height: 48px; }
  .author-content.has--image {
    margin: 0 0 0 1rem; }
  .author .publish-date {
    color: #858e96;
    font-size: 0.875rem;
    font-weight: normal;
    line-height: 1.49625rem;
    margin: 0 0 0 0; }
  .author.is--inverse .author-name a {
    color: white; }
    .author.is--inverse .author-name a:hover {
      color: #e6e6e6; }

.billboard {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 70%;
  overflow: hidden;
  background-color: black;
  min-height: 375px; }
  @media print, screen and (min-width: 33.75em) {
    .billboard {
      padding-bottom: 42.1875%; } }
  @media screen and (min-width: 90.3125em) {
    .billboard {
      min-height: 675px; } }
  @media screen and (min-width: 90.3125em) {
    .billboard {
      padding-bottom: 675px; } }
  .billboard-wrapper.has--slider .billboard {
    display: block !important; }
  .billboard-wrapper.has--slider .slick-slider {
    background-color: black; }
  .billboard-wrapper.has--slider .slick-prev, .billboard-wrapper.has--slider .slick-next {
    background-color: white;
    z-index: 90;
    border-radius: 50%;
    width: 46px;
    height: 46px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    top: 50%; }
    .billboard-wrapper.has--slider .slick-prev::before, .billboard-wrapper.has--slider .slick-next::before {
      content: ''; }
    .billboard-wrapper.has--slider .slick-prev .icon, .billboard-wrapper.has--slider .slick-next .icon {
      width: 13px;
      height: 22px; }
  .billboard-wrapper.has--slider .slick-prev {
    left: 8px; }
    .billboard-wrapper.has--slider .slick-prev .icon {
      margin-right: 3px; }
  .billboard-wrapper.has--slider .slick-next {
    right: 8px;
    margin-left: 3px; }
  .billboard__aspect-ratio {
    position: relative;
    background-color: black;
    width: 100%;
    height: 80vw;
    height: 90vw; }
    @media screen and (min-width: 29.6875em) {
      .billboard__aspect-ratio {
        height: 60vw; } }
    @media screen and (min-width: 41.875em) {
      .billboard__aspect-ratio {
        height: 65vw; } }
    @media print, screen and (min-width: 46.875em) {
      .billboard__aspect-ratio {
        height: 43.1347vw; } }
    .billboard__aspect-ratio::before {
      display: none;
      content: '';
      position: absolute;
      left: 0;
      top: 0;
      right: 0;
      width: 100%;
      height: 148px;
      background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #000), to(rgba(0, 0, 0, 0)));
      background: -webkit-linear-gradient(top, #000 0, rgba(0, 0, 0, 0) 100%);
      background: linear-gradient(to bottom, #000 0, rgba(0, 0, 0, 0) 100%);
      z-index: 4; }
      @media screen and (min-width: 64em) {
        .billboard__aspect-ratio::before {
          display: block; } }
  @media print, screen and (min-width: 46.875em) {
    .billboard.type--article {
      padding-bottom: 42.1347%; } }
  .billboard.type--article .hero-image__outer-background {
    max-width: 1310px; }
  @media screen and (min-width: 90.3125em) {
    .billboard.type--article {
      padding-bottom: 660px;
      min-height: 660px; } }
  .billboard.no--image {
    padding-bottom: 0;
    height: auto;
    min-height: auto;
    background-color: #d40202; }
    .billboard.no--image .hero-content {
      position: relative; }
    @media screen and (min-width: 90.3125em) {
      .billboard.no--image {
        min-height: 380px; } }

.hero-image {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  right: 0;
  z-index: 3;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }
  .hero-image__gradient {
    width: 100%;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    min-height: 100%;
    position: absolute; }
  .hero-image__image {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    z-index: 1;
    -o-object-fit: cover;
    object-fit: cover;
    font-family: 'object-fit: cover;'; }
    @media print, screen and (min-width: 46.875em) {
      .hero-image__image {
        height: auto; } }
  .hero-image__outer-background {
    width: 100%;
    height: 100%;
    position: relative;
    max-width: 1600px; }
    .hero-image__outer-background::before {
      content: '';
      display: block;
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      width: 25%;
      background: -webkit-gradient(linear, left top, right top, color-stop(0, #000), to(rgba(0, 0, 0, 0)));
      background: -webkit-linear-gradient(left, #000 0, rgba(0, 0, 0, 0) 100%);
      background: linear-gradient(to right, #000 0, rgba(0, 0, 0, 0) 100%);
      z-index: 4; }
    .hero-image__outer-background::after {
      content: '';
      display: block;
      position: absolute;
      right: 0;
      top: 0;
      bottom: 0;
      width: 25%;
      background: -webkit-gradient(linear, right top, left top, color-stop(0, #000), to(rgba(0, 0, 0, 0)));
      background: -webkit-linear-gradient(right, #000 0, rgba(0, 0, 0, 0) 100%);
      background: linear-gradient(to left, #000 0, rgba(0, 0, 0, 0) 100%);
      z-index: 4; }
  .hero-image__inner-background {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, rgba(0, 0, 0, 0)), to(black));
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 60%, black);
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 60%, black);
    z-index: 6;
    min-height: 130px; }

.button-play-trailer-placeholder {
  width: 193px;
  height: 52px;
  margin-top: 34px; }

.hero-content {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 6;
  color: white; }
  .hero-content-link {
    text-decoration: none;
    color: inherit; }
  .hero-content .movie-information {
    width: 100%;
    max-width: calc(100% - 63px); }
    @media print, screen and (min-width: 46.875em) {
      .hero-content .movie-information {
        max-width: calc(100% - 208px); } }
    .hero-content .movie-information-container {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: end;
      -ms-flex-align: end;
      align-items: flex-end;
      height: 100%;
      padding-top: 2.5rem;
      padding-bottom: 2.5rem;
      position: relative; }
      @media print, screen and (min-width: 33.75em) {
        .hero-content .movie-information-container {
          padding-left: 1.5rem;
          padding-right: 1.5rem; } }
      @media print, screen and (min-width: 46.875em) {
        .hero-content .movie-information-container {
          padding-left: 2.5rem;
          padding-right: 2.5rem; } }
      @media screen and (min-width: 76.875em) {
        .hero-content .movie-information-container {
          padding-left: 0.9375rem;
          padding-right: 0.9375rem;
          padding-top: 3.125rem;
          padding-bottom: 9.375rem; } }
    .hero-content .movie-information h1 {
      font-size: 2.5rem;
      font-weight: 900;
      line-height: 3.125rem;
      margin: 0;
      max-width: 883px; }
      @media screen and (min-width: 64em) {
        .hero-content .movie-information h1 {
          font-size: 3.375rem;
          line-height: 4.1175rem; } }
    .hero-content .movie-information__meta-info {
      list-style: none;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      margin: 1rem 0 0 0;
      padding: 0 0 0 0;
      color: #858e96;
      font-size: 0.875rem;
      line-height: 1.49625rem; }
      .hero-content .movie-information__meta-info li {
        height: 21px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center; }
        @media print, screen and (min-width: 33.75em) {
          .hero-content .movie-information__meta-info li {
            height: 34px; } }
        .hero-content .movie-information__meta-info li .span {
          line-height: initial; }
        .hero-content .movie-information__meta-info li:not(:last-child) {
          margin: 0 0.5rem 0 0;
          padding-right: 0.5625rem;
          border-right-width: 1px;
          border-right-style: solid;
          border-right-color: rgba(255, 255, 255, 0.15); }
          @media print, screen and (min-width: 33.75em) {
            .hero-content .movie-information__meta-info li:not(:last-child) {
              border-right-color: rgba(255, 255, 255, 0.4); } }
      @media print, screen and (min-width: 33.75em) {
        .hero-content .movie-information__meta-info {
          color: white; } }
      @media print, screen and (min-width: 33.75em) {
        .hero-content .movie-information__meta-info {
          font-size: 1.5rem;
          line-height: 2.13rem; } }

.type--article .button-play-trailer {
  position: absolute;
  right: 0.9735rem;
  bottom: 2.5rem;
  z-index: 10; }
  @media screen and (min-width: 81.875em) {
    .type--article .button-play-trailer {
      bottom: 150px; } }

@media screen and (max-width: 33.74875em) {
  .type--article {
    min-height: 475px; } }

.type--start .button-play-trailer {
  margin: 1.5rem 0 0 0; }
  @media print, screen and (min-width: 46.875em) {
    .type--start .button-play-trailer {
      margin: 2.125rem 0 0 0; } }

@media screen and (min-width: 81.875em) {
  .no--image .hero-content .movie-information-container {
    padding-top: 3.125rem;
    padding-bottom: 9.375rem; } }

.button-play-trailer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 0 0 0 0;
  padding: 11px 11px 11px 11px;
  font-size: 1.125rem;
  font-weight: bold;
  line-height: 1;
  text-decoration: none;
  background-color: #C32A28;
  border: solid 1px transparent;
  border-radius: 50%;
  color: white;
  cursor: pointer;
  -webkit-transition: all .15s ease;
  transition: all .15s ease; }
  @media print, screen and (min-width: 46.875em) {
    .button-play-trailer {
      min-width: 186px;
      border-radius: 25px;
      padding: 13px 24px 13px 24px; } }
  .button-play-trailer:hover {
    background-color: #b91f1b; }
  .button-play-trailer .icon-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 24px;
    height: 24px;
    margin: 0 0 0 0; }
    @media print, screen and (min-width: 46.875em) {
      .button-play-trailer .icon-container {
        margin: 0 1rem 0 0; } }
  .button-play-trailer .title {
    display: none; }
    @media print, screen and (min-width: 46.875em) {
      .button-play-trailer .title {
        display: inline;
        -webkit-box-flex: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
        -ms-flex-negative: 0;
        flex-shrink: 0;} }

.article-card {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  background-color: white;
  border-radius: 3px;
  -webkit-box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.1); }
  .article-card-link {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
    text-decoration: none; }
    .article-card-link:hover .article-card-title {
      text-decoration: underline; }
  .article-card-img-wrapper {
    width: 100%;
    height: 0;
    padding: 31.5789% 0 31.5789% 0;
    overflow: hidden;
    position: relative; }
  .article-card-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
    -o-object-fit: cover;
    object-fit: cover;
    font-family: 'object-fit: cover;'; }
  .article-card-bg-img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 50% 50%; }
  .article-card-content {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    padding: 1.5rem 1rem 2.25rem 1rem;
    min-height: 141px; }
    .article-card-content p {
      display: none;
      margin: 0.5rem 0 0 0;
      font-size: 1rem;
      line-height: 1.625rem; }
      @media print, screen and (min-width: 33.75em) {
        .article-card-content p {
          display: block; } }
  .article-card-title {
    margin: 0.5rem 0 0 0;
    color: #0a0a0a;
    font-size: 1rem;
    line-height: 1.63rem;
    font-weight: bold;
    max-height: 141px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical; }
    @media screen and (min-width: 64em) {
      .article-card-title {
        display: block;
        font-size: 1.25rem;
        line-height: 1.875rem; } }
  .article-card-footer {
    margin: 1.25rem 0 0 0;
    display: none;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start; }
    @media print, screen and (min-width: 46.875em) {
      .article-card-footer {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; } }
  .article-card-service {
    margin: 0 0 0 0;
    font-size: 0.75rem;
    font-weight: 500;
    padding: 0.375rem;
    color: #0a0a0a;
    background-color: rgba(234, 236, 239, 0.6);
    border-radius: 3px;
    line-height: 1; }
    .article-card-service + .article-card-service {
      margin: 0 0 0 0.25rem; }
  .article-card .category-label {
    font-size: 0.85rem;
    line-height: 1;
    font-weight: bold;
    text-transform: uppercase;
    color: #858e96; }
    @media print, screen and (min-width: 46.875em) {
      .article-card .category-label {
        font-size: 0.85rem; } }
  .article-card.type--image-card {
    background-color: transparent;
    -webkit-box-shadow: none;
    box-shadow: none; }
    .article-card.type--image-card .article-card-link::before {
      content: '';
      display: block;
      width: 100%;
      height: 100%;
      position: absolute;
      left: 0;
      top: 0;
      border-radius: 3px;
      z-index: 2;
      background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(9%, rgba(0, 0, 0, 0.02)), color-stop(19%, rgba(0, 0, 0, 0.06)), color-stop(28%, rgba(0, 0, 0, 0.12)), color-stop(38%, rgba(0, 0, 0, 0.2)), color-stop(48%, rgba(0, 0, 0, 0.29)), color-stop(57%, rgba(0, 0, 0, 0.39)), color-stop(66%, rgba(0, 0, 0, 0.5)), color-stop(74%, rgba(0, 0, 0, 0.61)), color-stop(81%, rgba(0, 0, 0, 0.71)), color-stop(88%, rgba(0, 0, 0, 0.8)), color-stop(93%, rgba(0, 0, 0, 0.88)), color-stop(97%, rgba(0, 0, 0, 0.95)), color-stop(99%, rgba(0, 0, 0, 0.98)), to(black));
      background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.02) 9%, rgba(0, 0, 0, 0.06) 19%, rgba(0, 0, 0, 0.12) 28%, rgba(0, 0, 0, 0.2) 38%, rgba(0, 0, 0, 0.29) 48%, rgba(0, 0, 0, 0.39) 57%, rgba(0, 0, 0, 0.5) 66%, rgba(0, 0, 0, 0.61) 74%, rgba(0, 0, 0, 0.71) 81%, rgba(0, 0, 0, 0.8) 88%, rgba(0, 0, 0, 0.88) 93%, rgba(0, 0, 0, 0.95) 97%, rgba(0, 0, 0, 0.98) 99%, black);
      background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.02) 9%, rgba(0, 0, 0, 0.06) 19%, rgba(0, 0, 0, 0.12) 28%, rgba(0, 0, 0, 0.2) 38%, rgba(0, 0, 0, 0.29) 48%, rgba(0, 0, 0, 0.39) 57%, rgba(0, 0, 0, 0.5) 66%, rgba(0, 0, 0, 0.61) 74%, rgba(0, 0, 0, 0.71) 81%, rgba(0, 0, 0, 0.8) 88%, rgba(0, 0, 0, 0.88) 93%, rgba(0, 0, 0, 0.95) 97%, rgba(0, 0, 0, 0.98) 99%, black); }
    .article-card.type--image-card .article-card-link:hover .article-card-title {
      text-decoration: underline; }
    .article-card.type--image-card .article-card-img-wrapper {
      z-index: 1;
      padding-top: 30%;
      padding-bottom: 30%;
      border-radius: 3px; }
    .article-card.type--image-card .article-card-title {
      color: white;
      margin: 0.25rem 0 0 0; }
    .article-card.type--image-card .category-label {
      color: white; }
    .article-card.type--image-card .article-card-content {
      z-index: 2;
      color: white;
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      width: 100%;
      padding: 0 1rem 1.5rem 1rem;
      min-height: auto; }
      @media print, screen and (min-width: 46.875em) {
        .article-card.type--image-card .article-card-content {
          padding: 0 2rem 2rem 2rem; } }
    .article-card.type--image-card .article-card-service {
      color: white;
      background: rgba(234, 236, 239, 0.2); }
  .article-card .logo {
    position: absolute; }
    .article-card .logo.netflix {
      height: 30px;
      left: 2px;
      top: 7px; }
    .article-card .logo.hbo {
      height: 30px;
      left: 9px;
      top: 7px; }
    .article-card .logo.viaplay {
      height: 30px;
      left: 8px;
      top: 7px; }
    .article-card .logo.svtplay {
      height: 28px!important;
      left: 8px;
      top: 7px; }
    .article-card .logo.cmore {
      height: 30px;
      left: 8px;
      top: 7px; }
    .article-card .logo.disneyplus {
      width: 100px;
      left: 8px;
      top: 7px; }
    .article-card .logo.discoveryplus {
      height: 30px;
      left: 8px;
      top: 7px; }
    .article-card .logo.appletvplus {
      width: 80px;
      left: 8px;
      top: 7px; }
    .article-card .logo.amazonprime {
      width: 100px;
      left: 8px;
      top: 7px; }
    .article-card .logo.paramountplus {
      width: 80px;
      left: 8px;
      top: 7px; }
  .article-card.type--image-card .logo.netflix {
    height: 70px;
    left: -2px;
    top: 7px; }
  .article-card.type--image-card .logo.hbo {
    height: 70px;
    left: 9px;
    top: 7px; }
  .article-card.type--image-card .logo.viaplay {
    height: 70px;
    left: 7px;
    top: 7px; }
  .article-card.type--image-card .logo.svtplay {
    height: 30px;
    left: 7px;
    top: 7px; }
  .article-card.type--image-card .logo.cmore {
    height: 40px;
    left: 8px;
    top: 7px; }
  .article-card.type--image-card .logo.disneyplus {
    width: 120px;
    left: 8px;
    top: 7px; }
  .article-card.type--image-card .logo.discoveryplus {
    height: 40px;
    left: 8px;
    top: 7px; }
  .article-card.type--image-card .logo.appletvplus {
    width: 100px;
    left: 8px;
    top: 7px; }
  .article-card.type--image-card .logo.amazonprime {
    width: 100px;
    left: 8px;
    top: 7px; }
  .article-card.type--image-card .logo.paramountplus {
    width: 80px;
    left: 8px;
    top: 7px; }

.article-card-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 2rem -0.3125rem 0 -0.3125rem; }
  .article-card-group .article-card {
    width: calc(50% - 10px);
    margin: 0 0.3125rem 1rem 0.3125rem; }
    @media print, screen and (min-width: 46.875em) {
      .article-card-group .article-card {
        width: calc(25% - 30px);
        margin: 0 0.9375rem 1.875rem 0.9375rem; } }
    .article-card-group .article-card.type--image-card {
      width: 100%; }
      @media print, screen and (min-width: 46.875em) {
        .article-card-group .article-card.type--image-card {
          width: calc(50% - 30px); } }
  @media print, screen and (min-width: 46.875em) {
    .article-card-group {
      margin: 2rem -0.9375rem 0 -0.9375rem; } }

.component-content-generic,
.mceContentBody {
  max-width: 810px;
  width: 100%;
  /*
		links
	*/
  /*
		paragraphs
	*/
  /*
		preamble
	*/
  /*
		text-large
	*/
  /*
		images
	*/
  /*
		media, images etc...
	*/
  /*
		lists
	*/
  /*
		video
	*/
  /*
		headings
	*/
  /*
		misc
  */ }
  .component-content-generic > *:first-child,
  .mceContentBody > *:first-child {
    margin-top: 0; }
  .component-content-generic > *:last-child,
  .mceContentBody > *:last-child {
    margin-bottom: 0; }
  .component-content-generic.theme--light,
  .component-content-generic.theme--light *,
  .mceContentBody.theme--light,
  .mceContentBody.theme--light * {
    color: #ffffff; }
  .component-content-generic a,
  .mceContentBody a {
    font-weight: bold;
    color: #C32A28;
    text-decoration: none; }
  .component-content-generic > * + a,
  .mceContentBody > * + a {
    margin-top: 10px; }
    @media print, screen and (min-width: 33.75em) {
      .component-content-generic > * + a,
      .mceContentBody > * + a {
        margin-top: 10px; } }
  .component-content-generic > a + a,
  .mceContentBody > a + a {
    margin-top: 0; }
  .component-content-generic a[rel*="external"],
  .mceContentBody a[rel*="external"] {
    font-weight: bold; }
  .component-content-generic p,
  .mceContentBody p {
    font-size: 1rem;
    font-weight: normal;
    line-height: 1.625rem;
    display: block;
    margin: 0 0 0 0;
    width: 100%; }
    @media print, screen and (min-width: 33.75em) {
      .component-content-generic p,
      .mceContentBody p {
        font-size: 1.125rem;
        line-height: 1.75rem; } }
    .component-content-generic p + *,
    .mceContentBody p + * {
      margin-top: 25px; }
      @media print, screen and (min-width: 33.75em) {
        .component-content-generic p + *,
        .mceContentBody p + * {
          margin-top: 40px; } }
    .component-content-generic p + p,
    .mceContentBody p + p {
      margin-top: 20px; }
  .component-content-generic * + p,
  .mceContentBody * + p {
    margin-top: 20px; }
  .component-content-generic .preamble,
  .mceContentBody .preamble {
    font-size: 1.25rem;
    font-weight: 500;
    line-height: 1.375rem; }
    @media print, screen and (min-width: 33.75em) {
      .component-content-generic .preamble,
      .mceContentBody .preamble {
        font-size: 1.375rem;
        line-height: 1.5rem; } }
    .component-content-generic .preamble + *,
    .component-content-generic .preamble + p,
    .mceContentBody .preamble + *,
    .mceContentBody .preamble + p {
      margin-top: 19px; }
    .component-content-generic .preamble + .preamble,
    .mceContentBody .preamble + .preamble {
      margin-top: 19px; }
    @media print, screen and (min-width: 33.75em) {
      .component-content-generic .preamble + *,
      .component-content-generic .preamble + p,
      .mceContentBody .preamble + *,
      .mceContentBody .preamble + p {
        margin-top: 19px; }
      .component-content-generic .preamble + .preamble,
      .mceContentBody .preamble + .preamble {
        margin-top: 19px; } }
  .component-content-generic h1 + .preamble,
  .mceContentBody h1 + .preamble {
    margin-top: 20px; }
  .component-content-generic .text--large,
  .mceContentBody .text--large {
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.375rem;
    max-width: 680px; }
    @media print, screen and (min-width: 33.75em) {
      .component-content-generic .text--large,
      .mceContentBody .text--large {
        font-size: 1.25rem;
        line-height: 1.5rem; } }
    .component-content-generic .text--large + *,
    .component-content-generic .text--large + p,
    .mceContentBody .text--large + *,
    .mceContentBody .text--large + p {
      margin-top: 19px; }
    .component-content-generic .text--large + .text--large,
    .mceContentBody .text--large + .text--large {
      margin-top: 19px; }
    @media print, screen and (min-width: 33.75em) {
      .component-content-generic .text--large + *,
      .component-content-generic .text--large + p,
      .mceContentBody .text--large + *,
      .mceContentBody .text--large + p {
        margin-top: 19px; }
      .component-content-generic .text--large + .text--large,
      .mceContentBody .text--large + .text--large {
        margin-top: 19px; } }
  .component-content-generic > img,
  .component-content-generic > picture,
  .mceContentBody > img,
  .mceContentBody > picture {
    max-width: 700px; }
  .component-content-generic p img,
  .component-content-generic p picture,
  .mceContentBody p img,
  .mceContentBody p picture {
    margin: 25px 0 0 0; }
    @media print, screen and (min-width: 33.75em) {
      .component-content-generic p img,
      .component-content-generic p picture,
      .mceContentBody p img,
      .mceContentBody p picture {
        margin: 35px 0 0 0; } }
  .component-content-generic p .align-right,
  .component-content-generic p .align-right img,
  .component-content-generic p .align-right picture,
  .component-content-generic p .align-left,
  .component-content-generic p .align-left img,
  .component-content-generic p .align-left picture,
  .component-content-generic * + .align-right,
  .component-content-generic * + .align-right img,
  .component-content-generic * + .align-right picture,
  .component-content-generic * + .align-left,
  .component-content-generic * + .align-left img,
  .component-content-generic * + .align-left picture,
  .mceContentBody p .align-right,
  .mceContentBody p .align-right img,
  .mceContentBody p .align-right picture,
  .mceContentBody p .align-left,
  .mceContentBody p .align-left img,
  .mceContentBody p .align-left picture,
  .mceContentBody * + .align-right,
  .mceContentBody * + .align-right img,
  .mceContentBody * + .align-right picture,
  .mceContentBody * + .align-left,
  .mceContentBody * + .align-left img,
  .mceContentBody * + .align-left picture {
    margin-top: 0; }
  .component-content-generic img,
  .component-content-generic picture,
  .mceContentBody img,
  .mceContentBody picture {
    display: block;
    height: auto;
    max-width: 100% !important;
    -webkit-margin-start: 0px;
    margin-inline-start: 0px;
    width: auto !important;
    height: auto !important; }
    .component-content-generic img + *:not(.image-caption),
    .component-content-generic picture + *:not(.image-caption),
    .mceContentBody img + *:not(.image-caption),
    .mceContentBody picture + *:not(.image-caption) {
      margin-top: 20px; }
    @media print, screen and (min-width: 33.75em) {
      .component-content-generic img + *:not(.image-caption),
      .component-content-generic picture + *:not(.image-caption),
      .mceContentBody img + *:not(.image-caption),
      .mceContentBody picture + *:not(.image-caption) {
        margin-top: 30px; } }
  .component-content-generic * + img,
  .component-content-generic * + picture,
  .mceContentBody * + img,
  .mceContentBody * + picture {
    margin-top: 24px; }
  .component-content-generic hr + img,
  .component-content-generic hr + picture,
  .mceContentBody hr + img,
  .mceContentBody hr + picture {
    margin-top: 80px; }
  .component-content-generic .media-container,
  .mceContentBody .media-container {
    display: block;
    height: auto;
    max-width: 100%;
    width: auto; }
    .component-content-generic .media-container img,
    .component-content-generic .media-container picture,
    .mceContentBody .media-container img,
    .mceContentBody .media-container picture {
      margin-top: 0; }
    .component-content-generic .media-container + *,
    .mceContentBody .media-container + * {
      margin-top: 20px; }
    @media print, screen and (min-width: 33.75em) {
      .component-content-generic .media-container + *,
      .mceContentBody .media-container + * {
        margin-top: 30px; }
      .component-content-generic .media-container.align-right, .component-content-generic .media-container.align-left,
      .mceContentBody .media-container.align-right,
      .mceContentBody .media-container.align-left {
        margin-bottom: 15px;
        max-width: 50%; }
        .component-content-generic .media-container.align-right + *, .component-content-generic .media-container.align-left + *,
        .mceContentBody .media-container.align-right + *,
        .mceContentBody .media-container.align-left + * {
          margin-top: 18px; }
      .component-content-generic .media-container.align-right,
      .mceContentBody .media-container.align-right {
        float: right;
        margin-left: 20px; }
      .component-content-generic .media-container.align-left,
      .mceContentBody .media-container.align-left {
        margin-right: 20px; } }
  .component-content-generic .image-caption, .component-content-generic figure.image figcaption, figure.image .component-content-generic figcaption,
  .mceContentBody .image-caption,
  .mceContentBody figure.image figcaption,
  figure.image .mceContentBody figcaption {
    color: #4a5058;
    display: inline-block;
    font-size: 0.875rem;
    line-height: 1.49625rem;
    margin-top: 8px;
    width: 100%; }
    .component-content-generic .image-caption strong, .component-content-generic figure.image figcaption strong, figure.image .component-content-generic figcaption strong,
    .mceContentBody .image-caption strong,
    .mceContentBody figure.image figcaption strong,
    figure.image .mceContentBody figcaption strong {
      color: #0a0a0a; }
    .component-content-generic .image-caption + *, .component-content-generic figure.image figcaption + *, figure.image .component-content-generic figcaption + *,
    .mceContentBody .image-caption + *,
    .mceContentBody figure.image figcaption + *,
    figure.image .mceContentBody figcaption + * {
      margin-top: 20px; }
  .component-content-generic ul,
  .component-content-generic ol,
  .mceContentBody ul,
  .mceContentBody ol {
    max-width: 680px;
    width: 100%; }
    .component-content-generic ul,
    .component-content-generic ul *,
    .component-content-generic ol,
    .component-content-generic ol *,
    .mceContentBody ul,
    .mceContentBody ul *,
    .mceContentBody ol,
    .mceContentBody ol * {
      font-size: 1rem;
      font-weight: normal;
      line-height: 1.625rem; }
      @media print, screen and (min-width: 33.75em) {
        .component-content-generic ul,
        .component-content-generic ul *,
        .component-content-generic ol,
        .component-content-generic ol *,
        .mceContentBody ul,
        .mceContentBody ul *,
        .mceContentBody ol,
        .mceContentBody ol * {
          font-size: 1.125rem;
          line-height: 1.75rem; } }
    @media print, screen and (min-width: 33.75em) {
      .component-content-generic ul,
      .component-content-generic ol,
      .mceContentBody ul,
      .mceContentBody ol {
        max-width: 700px; } }
  .component-content-generic * + ul,
  .component-content-generic * + ol,
  .component-content-generic ul + *,
  .component-content-generic ol + *,
  .mceContentBody * + ul,
  .mceContentBody * + ol,
  .mceContentBody ul + *,
  .mceContentBody ol + * {
    margin-top: 20px; }
  .component-content-generic ul,
  .mceContentBody ul {
    list-style-type: none;
    margin-left: 0;
    margin-bottom: 0;
    padding-left: 0;
    width: 100%; }
    .component-content-generic ul li,
    .mceContentBody ul li {
      margin-left: 0;
      padding-left: 20px;
      position: relative; }
      .component-content-generic ul li + li,
      .mceContentBody ul li + li {
        margin-top: 12px; }
      .component-content-generic ul li > *:last-child,
      .mceContentBody ul li > *:last-child {
        margin-bottom: 0; }
      .component-content-generic ul li li,
      .mceContentBody ul li li {
        margin-top: 5px; }
    @media print, screen and (min-width: 33.75em) {
      .component-content-generic ul,
      .mceContentBody ul {
        margin-left: 8px; } }
    .component-content-generic ul li:before,
    .mceContentBody ul li:before {
      content: '';
      position: absolute;
      display: block;
      left: 0;
      top: 6px;
      margin: 0 0 0 0;
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background-color: #000000; }
  .component-content-generic ol,
  .mceContentBody ol {
    list-style-type: none;
    margin-left: 0;
    margin-bottom: 0;
    padding-left: 0;
    width: 100%;
    counter-reset: li; }
    .component-content-generic ol li,
    .mceContentBody ol li {
      margin-left: 0;
      padding-left: 20px;
      position: relative; }
      .component-content-generic ol li + li,
      .mceContentBody ol li + li {
        margin-top: 12px; }
      .component-content-generic ol li > *:last-child,
      .mceContentBody ol li > *:last-child {
        margin-bottom: 0; }
      .component-content-generic ol li li,
      .mceContentBody ol li li {
        margin-top: 5px; }
    @media print, screen and (min-width: 33.75em) {
      .component-content-generic ol,
      .mceContentBody ol {
        margin-left: 8px; } }
    .component-content-generic ol li,
    .mceContentBody ol li {
      padding-left: 0; }
      .component-content-generic ol li:before,
      .mceContentBody ol li:before {
        content: counter(li) ". ";
        counter-increment: li; }
  .component-content-generic .movie-wrapper,
  .mceContentBody .movie-wrapper {
    padding-top: 56.25%;
    position: relative;
    width: 100%; }
    .component-content-generic .movie-wrapper > *:first-child,
    .mceContentBody .movie-wrapper > *:first-child {
      height: 100%;
      left: 0;
      position: absolute;
      top: 0;
      width: 100%; }
  .component-content-generic iframe,
  .mceContentBody iframe {
    max-width: 100%;
    min-width: 100%;
    width: 100%; }
  .component-content-generic h1,
  .mceContentBody h1 {
    font-size: 2.5rem;
    font-weight: 900;
    line-height: 0.001rem;
    word-break: break-word; }
    @media print, screen and (min-width: 33.75em) {
      .component-content-generic h1,
      .mceContentBody h1 {
        font-size: 3.375rem;
        line-height: 4.1175rem; } }
  .component-content-generic h2,
  .mceContentBody h2 {
    font-size: 1.75rem;
    font-weight: bold;
    line-height: 2.2575rem;
    word-break: break-word; }
  .component-content-generic h3,
  .mceContentBody h3 {
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1.625rem;
    word-break: break-word; }
    @media print, screen and (min-width: 33.75em) {
      .component-content-generic h3,
      .mceContentBody h3 {
        font-size: 1.5rem;
        line-height: 1.875rem; } }
  .component-content-generic h4,
  .component-content-generic h5,
  .mceContentBody h4,
  .mceContentBody h5 {
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.375rem;
    word-break: break-word; }
    @media print, screen and (min-width: 33.75em) {
      .component-content-generic h4,
      .component-content-generic h5,
      .mceContentBody h4,
      .mceContentBody h5 {
        font-size: 1.25rem;
        line-height: 1.875rem; } }
  .component-content-generic h1,
  .mceContentBody h1 {
    margin-bottom: 0;
    width: 100%; }
    .component-content-generic h1 + *,
    .mceContentBody h1 + * {
      margin-top: 14px; }
      @media print, screen and (min-width: 33.75em) {
        .component-content-generic h1 + *,
        .mceContentBody h1 + * {
          margin-top: 14px; } }
  .component-content-generic h2,
  .component-content-generic h3,
  .component-content-generic h4,
  .component-content-generic h5 .f__h2,
  .component-content-generic .f__h3,
  .component-content-generic .f__h4,
  .component-content-generic .f__h5,
  .mceContentBody h2,
  .mceContentBody h3,
  .mceContentBody h4,
  .mceContentBody h5 .f__h2,
  .mceContentBody .f__h3,
  .mceContentBody .f__h4,
  .mceContentBody .f__h5 {
    color: #0a0a0a;
    margin-bottom: 0;
    width: 100%; }
    .component-content-generic h2 + *,
    .component-content-generic h3 + *,
    .component-content-generic h4 + *,
    .component-content-generic h5 .f__h2 + *,
    .component-content-generic .f__h3 + *,
    .component-content-generic .f__h4 + *,
    .component-content-generic .f__h5 + *,
    .mceContentBody h2 + *,
    .mceContentBody h3 + *,
    .mceContentBody h4 + *,
    .mceContentBody h5 .f__h2 + *,
    .mceContentBody .f__h3 + *,
    .mceContentBody .f__h4 + *,
    .mceContentBody .f__h5 + * {
      margin-top: 10px; }
    .component-content-generic h2,
    * + .component-content-generic h2,
    .component-content-generic h3,
    * +
    .component-content-generic h3,
    .component-content-generic h4,
    * +
    .component-content-generic h4,
    .component-content-generic h5 .f__h2,
    * +
    .component-content-generic h5 .f__h2,
    .component-content-generic .f__h3,
    * +
    .component-content-generic .f__h3,
    .component-content-generic .f__h4,
    * +
    .component-content-generic .f__h4,
    .component-content-generic .f__h5,
    * +
    .component-content-generic .f__h5,
    .mceContentBody h2,
    * +
    .mceContentBody h2,
    .mceContentBody h3,
    * +
    .mceContentBody h3,
    .mceContentBody h4,
    * +
    .mceContentBody h4,
    .mceContentBody h5 .f__h2,
    * +
    .mceContentBody h5 .f__h2,
    .mceContentBody .f__h3,
    * +
    .mceContentBody .f__h3,
    .mceContentBody .f__h4,
    * +
    .mceContentBody .f__h4,
    .mceContentBody .f__h5,
    * +
    .mceContentBody .f__h5 {
      margin-top: 24px; }
    @media print, screen and (min-width: 33.75em) {
      .component-content-generic h2,
      * + .component-content-generic h2,
      .component-content-generic h3,
      * +
      .component-content-generic h3,
      .component-content-generic h4,
      * +
      .component-content-generic h4,
      .component-content-generic h5 .f__h2,
      * +
      .component-content-generic h5 .f__h2,
      .component-content-generic .f__h3,
      * +
      .component-content-generic .f__h3,
      .component-content-generic .f__h4,
      * +
      .component-content-generic .f__h4,
      .component-content-generic .f__h5,
      * +
      .component-content-generic .f__h5,
      .mceContentBody h2,
      * +
      .mceContentBody h2,
      .mceContentBody h3,
      * +
      .mceContentBody h3,
      .mceContentBody h4,
      * +
      .mceContentBody h4,
      .mceContentBody h5 .f__h2,
      * +
      .mceContentBody h5 .f__h2,
      .mceContentBody .f__h3,
      * +
      .mceContentBody .f__h3,
      .mceContentBody .f__h4,
      * +
      .mceContentBody .f__h4,
      .mceContentBody .f__h5,
      * +
      .mceContentBody .f__h5 {
        margin-top: 24px; } }
  @media print, screen and (min-width: 33.75em) {
    .component-content-generic h2 + *,
    .mceContentBody h2 + * {
      margin-top: 12px; } }
  .component-content-generic hr,
  .mceContentBody hr {
    border-color: #ced4da;
    border-bottom-style: solid;
    border-top-style: none;
    border-left-style: none;
    border-right-style: none; }
  .component-content-generic .component-content-generic,
  .component-content-generic + .component-content-generic,
  .mceContentBody .component-content-generic,
  .mceContentBody + .component-content-generic {
    margin-top: 20px; }
  @media print, screen and (min-width: 33.75em) {
    .component-content-generic + .component-content-generic,
    .mceContentBody + .component-content-generic {
      margin-top: 20px; } }

.cookie-disclaimer {
  position: fixed;
  bottom: 0;
  width: 100%;
  margin: 0 auto;
  padding: 20px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  left: 50%;
  display: none; }
  .cookie-disclaimer__content {
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column wrap;
    flex-flow: column wrap; }
  .cookie-disclaimer__info {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1; }
  .cookie-disclaimer__button-wrapper {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; }

.cookie-disclaimer {
  background-color: black;
  max-width: 100%;
  z-index: 100;
  padding: 2rem;
  bottom: 0; }
  @media print, screen and (min-width: 46.875em) {
    .cookie-disclaimer {
      bottom: 0; } }
  .cookie-disclaimer__content {
    max-width: 100%;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-flow: wrap;
    flex-flow: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; }
  .cookie-disclaimer__info {
    font-size: 1rem;
    font-weight: normal;
    line-height: 1.625rem;
    color: white;
    -webkit-box-flex: 0;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto; }
    .cookie-disclaimer__info p {
      margin: 0 0 0 0; }
      .cookie-disclaimer__info p + p {
        margin: .5rem 0 0 0; }
      .cookie-disclaimer__info p a {
        color: white;
        font-weight: bold; }
    .cookie-disclaimer__info + .cookie-disclaimer__button-wrapper {
      -webkit-box-flex: 0;
      -ms-flex: 0 1 auto;
      flex: 0 1 auto;
      margin-left: 2.375rem; }
  .cookie-disclaimer__button {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: black;
    border-radius: 0.25rem;
    border-width: 0;
    clear: both;
    color: white;
    cursor: pointer;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.05625rem;
    line-height: 0.875rem;
    margin: 0 0 0 0;
    max-width: 100%;
    max-width: none;
    min-height: 2.5rem;
    padding: 0 24px;
    position: relative;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    -webkit-transition: all 100ms ease;
    transition: all 100ms ease;
    width: 100%;
    font-weight: bold;
    letter-spacing: 0.1;
    background-color: transparent;
    border: solid 2px white;
    height: 50px;
    color: white;
    margin: 24px 0 0 0; }
    .cookie-disclaimer__button:hover {
      background-color: grey;
      text-decoration: none; }
    .cookie-disclaimer__button:focus {
      outline: none; }
    .cookie-disclaimer__button:active {
      background-color: darkgrey; }
    .cookie-disclaimer__button:disabled:hover, .cookie-disclaimer__button:disabled:focus, .cookie-disclaimer__button:disabled:active, .cookie-disclaimer__button.is--disabled:hover, .cookie-disclaimer__button.is--disabled:focus, .cookie-disclaimer__button.is--disabled:active {
      cursor: not-allowed; }
    .cookie-disclaimer__button.has--icon {
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      padding: 0 24px 0 44px;
      white-space: nowrap; }
      .cookie-disclaimer__button.has--icon .icon {
        left: -13px;
        margin-left: -7px;
        position: relative;
        top: -1px; }
    @media print, screen and (min-width: 33.75em) {
      .cookie-disclaimer__button {
        width: auto; } }
    .cookie-disclaimer__button:hover {
      background-color: #b9201b; }
    @media print, screen and (min-width: 46.875em) {
      .cookie-disclaimer__button {
        margin: 0 0 0 0; } }

.panel {
  display: none;
  background-color: white;
  border-left: solid 1px #eaecef;
  border-right: solid 1px #eaecef;
  border-bottom: solid 1px #eaecef;
  width: 100%;
  height: auto;
  position: absolute;
  top: 63px;
  left: 0;
  top: -1000px;
  -webkit-transition: top 2s ease 0s;
  transition: top 2s ease 0s;
  /* Panel top */
  /* Panel top navigation */
  /* Panel sub navigation */ }
  @media screen and (min-width: 64em) {
    .panel {
      top: 90px; } }
  .panel.is--open {
    display: block; }
  .panel__top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end; }
    .panel__top .button-close {
      right: 10px;
      top: 0px;
      z-index: 2; }
      @media screen and (min-width: 90.3125em) {
        .panel__top .button-close {
          right: 0; } }
  .panel__main {
    padding-bottom: 4.375rem !important; }
  .panel__header {
    padding: 0; }
  .panel__title {
    font-size: 1.625rem;
    font-weight: bold;
    line-height: 2.2425rem;
    color: #0a0a0a;
    margin: 0 0 0 0; }
    .panel__title__link {
      text-decoration: none;
      color: inherit; }
      .panel__title__link:hover {
        text-decoration: underline; }
  .panel__preamble {
    font-size: 1.125rem;
    font-weight: normal;
    line-height: 1.755rem;
    margin: 0.5rem 0 0 0; }
  .panel__featured {
    position: absolute;
    right: 0;
    top: 0;
    width: 605px;
    height: 100%;
    background-color: #e8ecf1;
    display: none;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; }
    .panel__featured__inner {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center; }
    .panel__featured__link {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      text-decoration: none; }
    .panel__featured__heading {
      margin: 0 0 0 0;
      font-size: 1.625rem;
      font-weight: bold;
      line-height: 2.2425rem;
      color: #0a0a0a; }
    .panel__featured__image {
      margin: 1.5rem 0 0 0;
      -webkit-box-shadow: 0 20px 30px -10px rgba(0, 0, 0, 0.4);
      box-shadow: 0 20px 30px -10px rgba(0, 0, 0, 0.4); }
    .panel__featured__content {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; }
      .panel__featured__content .category-list {
        list-style: none;
        padding: 0 0 0 0;
        margin: 2px 0 0 0;
        text-align: center; }
        .panel__featured__content .category-list__item {
          display: inline;
          font-size: 1rem;
          line-height: 1.63rem;
          color: #858e96; }
          .panel__featured__content .category-list__item:not(:last-child)::after {
            content: ", ";
            display: inline-block;
            padding-right: 4px; }
    .panel__featured__title {
      font-size: 1.375rem;
      font-weight: bold;
      line-height: 2.37875rem;
      color: #0a0a0a;
      margin: 1rem 0 0 0;
      text-align: center; }
    @media screen and (min-width: 90.3125em) {
      .panel__featured {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; } }
  .panel .button-more-link {
    margin: 2rem 0 0 0; }
  .panel .button-next-level {
    border: 0;
    background-color: transparent;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    outline: none; }
  .panel .top-nav {
    list-style: none;
    padding: 0 0 0 1.875rem;
    margin: 0 0 0 0;
    border-left: solid 1px #eaecef; }
    .panel .top-nav__item {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; }
      .panel .top-nav__item + .top-nav__item {
        margin: 1rem 0 0 0; }
    .panel .top-nav__link, .panel .top-nav__button {
      outline: none;
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
      border: none;
      background: none;
      padding: 0;
      margin: 0;
      text-decoration: none;
      text-align: left;
      color: #0a0a0a;
      font-size: 1.25rem;
      font-weight: bold;
      line-height: 1.875rem; }
      .panel .top-nav__link.is--active, .panel .top-nav__button.is--active {
        color: #0a0a0a; }
      .panel .top-nav__link.is--inactive, .panel .top-nav__button.is--inactive {
        color: #bdbdbd; }
      .panel .top-nav__link:hover, .panel .top-nav__button:hover {
        text-decoration: underline;
        color: #0a0a0a; }
  .panel .sub-nav {
    list-style: none;
    padding: 0 0 0 1.875rem;
    margin: 0 0 0 0;
    border-left: solid 1px #eaecef;
    display: none; }
    .panel .sub-nav__item {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; }
      .panel .sub-nav__item + .sub-nav__item {
        margin: 1rem 0 0 0; }
    .panel .sub-nav__link {
      color: #0a0a0a;
      font-size: 1rem;
      font-weight: bold;
      line-height: 1.63rem;
      text-decoration: none; }
      .panel .sub-nav__link:hover {
        text-decoration: underline;
        color: #0a0a0a; }
    .panel .sub-nav.is--open {
      display: block; }

.form .form-element-wrapper {
  padding: 0 0 20px 0;
  position: relative; }

.form .element-form-description {
  display: inline-block; }

.form .align-bottom .form-element-wrapper {
  -ms-flex-item-align: end;
  align-self: flex-end; }

.validation-text--error {
  right: 0;
  text-align: right;
  bottom: 0;
  color: #e03131;
  font-size: 0.875rem;
  font-weight: normal;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  line-height: 1.57;
  padding-top: 8px;
  position: absolute;
  width: 100%; }

.is--invalid ~ .validation-text--error,
.not--hidden.validation-text--error {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.form-newsletter {
  margin: 1.5rem 0 0 0; }
  .form-newsletter__row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; }
    @media print, screen and (min-width: 33.75em) {
      .form-newsletter__row {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row; } }
  .form-newsletter__input[type="text"] {
    width: 100%;
    background-color: #0a0a0a;
    color: white;
    border: solid 1px #0a0a0a;
    font-size: 1rem;
    line-height: 1;
    padding: 0.75rem 0.75rem 0.75rem 0.75rem; }
    .form-newsletter__input[type="text"]:not(.is--invalid):focus {
      border-color: #0a0a0a;
      outline: 0; }
    .form-newsletter__input[type="text"]::-webkit-input-placeholder {
      color: rgba(255, 255, 255, 0.25); }
    .form-newsletter__input[type="text"]::-moz-placeholder {
      color: rgba(255, 255, 255, 0.25); }
    .form-newsletter__input[type="text"]::-ms-input-placeholder {
      color: rgba(255, 255, 255, 0.25); }
    .form-newsletter__input[type="text"]::placeholder {
      color: rgba(255, 255, 255, 0.25); }
    @media print, screen and (min-width: 33.75em) {
      .form-newsletter__input[type="text"] {
        max-width: 343px; } }
  .form-newsletter__submit {
    width: 100%;
    display: block;
    background-color: #C32A28;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1;
    color: white;
    border: solid 1px transparent;
    border-radius: 20px;
    margin: 1rem 0 0 0;
    padding: 0.625rem 0.75rem 0.625rem 0.75rem; }
    @media print, screen and (min-width: 33.75em) {
      .form-newsletter__submit {
        border-radius: 3px;
        min-width: 143px;
        margin: 0 0 0 0.5rem; } }

.grade-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  list-style: none;
  padding: 0 0 0 0;
  margin: 0 0 0 0; }
  .grade-list__item + .grade-list__item {
    margin: 0 0 0 0.25rem; }
  .grade-list__item .icon {
    width: 24px;
    height: 24px; }

.movie-information .grade-list {
  margin: 1rem 0 0 0; }
  @media print, screen and (min-width: 46.875em) {
    .movie-information .grade-list {
      margin: 1.5rem 0 0 0; } }

.article-card .grade-list + .article-card-service {
  margin-left: 1rem; }

.megamenu__featured__content .grade-list {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin: 1.5rem 0 0 0; }

.site-nav-mobile {
  position: fixed;
  background: #ffffff;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  max-width: 400px;
  z-index: 100;
  -webkit-transition: -webkit-transform 250ms ease;
  transition: -webkit-transform 250ms ease;
  transition: transform 250ms ease;
  transition: transform 250ms ease, -webkit-transform 250ms ease;
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0); }
  .site-nav-mobile__header {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 80px;
    background: #ffffff;
    border-bottom: 1px solid transparent;
    z-index: 10; }
  .site-nav-mobile__content-wrapper {
    padding: 80px 0 0 0;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    z-index: 9;
    -webkit-overflow-scrolling: touch; }
  .site-nav-mobile--active,
  .site-nav-mobile--active body {
    overflow: hidden;
    height: 100%;
    width: 100%; }
  .site-nav-mobile--active .site-nav-mobile {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }

.site-nav-mobile-overlay {
  display: none; }
  @media print, screen and (min-width: 33.75em) {
    .site-nav-mobile-overlay {
      display: block;
      content: '';
      position: absolute;
      width: 0;
      height: 0;
      background-color: #000000;
      left: -9999px;
      top: -9999px;
      visibility: hidden;
      z-index: 99;
      cursor: pointer; } }

@media print, screen and (min-width: 33.75em) {
  .site-nav-mobile--active .site-nav-mobile-overlay {
    -webkit-animation: bygga-offcanvas-menu-overlay 150ms ease;
    animation: bygga-offcanvas-menu-overlay 150ms ease;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    opacity: 0.3;
    visibility: visible; } }

@-webkit-keyframes bygga-offcanvas-menu-overlay {
  0% {
    opacity: 0; }
  100% {
    opacity: 0.3; } }

@keyframes bygga-offcanvas-menu-overlay {
  0% {
    opacity: 0; }
  100% {
    opacity: 0.3; } }

.site-nav-mobile__button {
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
  width: 24px;
  height: 14px;
  font-size: 0;
  text-indent: -9999px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  border-radius: none;
  border: none;
  cursor: pointer;
  position: relative;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  -webkit-transition: background 100ms;
  transition: background 100ms;
  background-color: transparent;}
  .site-nav-mobile__button-icon {
    display: block;
    position: absolute;
    top: 6px;
    left: 0px;
    right: 0px;
    height: 2px;
    background: #9da5aa;
    -webkit-transition: background 0s 100ms;
    transition: background 0s 100ms; }
    .site-nav-mobile__button-icon:before, .site-nav-mobile__button-icon:after {
      position: absolute;
      display: block;
      left: 0;
      width: 100%;
      height: 2px;
      background-color: #9da5aa;
      content: "";
      -webkit-transition-duration: 100ms, 100ms;
      transition-duration: 100ms, 100ms;
      -webkit-transition-delay: 100ms, 0s;
      transition-delay: 100ms, 0s; }
    .site-nav-mobile__button-icon:before {
      top: -6px;
      -webkit-transition-property: top, -webkit-transform;
      transition-property: top, -webkit-transform;
      transition-property: top, transform;
      transition-property: top, transform, -webkit-transform; }
    .site-nav-mobile__button-icon:after {
      bottom: -6px;
      -webkit-transition-property: bottom, -webkit-transform;
      transition-property: bottom, -webkit-transform;
      transition-property: bottom, transform;
      transition-property: bottom, transform, -webkit-transform; }
  .site-nav-mobile__button:focus {
    outline: none; }

.site-nav-mobile--active .site-nav-mobile__button-icon {
  background: none;
  -webkit-transition: background 0s 0s;
  transition: background 0s 0s; }
  .site-nav-mobile--active .site-nav-mobile__button-icon::before {
    top: 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg); }
  .site-nav-mobile--active .site-nav-mobile__button-icon::after {
    bottom: 0;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg); }
  .site-nav-mobile--active .site-nav-mobile__button-icon::before, .site-nav-mobile--active .site-nav-mobile__button-icon::after {
    -webkit-transition-delay: 0s, 100ms;
    transition-delay: 0s, 100ms; }

.site-nav-mobile {
  position: fixed;
  -webkit-transition: all 150ms ease;
  transition: all 150ms ease;
  max-width: 475px;
  width: 85%;
  top: 0;
  display: block;
  z-index: 120; }
  @media screen and (min-width: 64em) {
    .site-nav-mobile {
      display: none;
      position: fixed;
      top: 90px; } }
  .site-nav-mobile__header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 0 0 0 0;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-line-pack: center;
    align-content: center;
    height: auto;
    min-height: 63px;
    border-bottom: none; }
    .site-nav-mobile__header__content {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      width: 100%;
      padding: 1rem 1.8125rem; }
  .site-nav-mobile__content-wrapper {
    position: relative;
    padding: 0;
    height: calc(100% - 90px);
    overflow-y: auto;
    overflow-x: hidden;
    margin-top: 90px; }
  .site-nav-mobile__button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-left: 0;
    border: none;
    width: 18px;
    height: 15px; }
    @media screen and (min-width: 64em) {
      .site-nav-mobile__button {
        display: none; } }

.site-search-is--active .site-nav-mobile {
  top: 151px; }

.site-nav-mobile--active .site-nav-mobile-overlay {
  top: 0;
  opacity: .7;
  display: block;
  position: absolute;
  -webkit-animation: bygga-offcanvas-menu-overlay 150ms ease;
  animation: bygga-offcanvas-menu-overlay 150ms ease;
  width: 100%;
  height: 100%;
  left: 0;
  z-index: 110;
  background-color: #000;
  visibility: visible; }
  @media screen and (min-width: 64em) {
    .site-nav-mobile--active .site-nav-mobile-overlay {
      display: none; } }

.site-nav-mobile--active.site-search-is--active .site-nav-mobile-overlay {
  top: 151px; }
  @media screen and (min-width: 64em) {
    .site-nav-mobile--active.site-search-is--active .site-nav-mobile-overlay {
      top: 284px; } }

.nav-desktop-hamburger {
  margin: 3rem 0 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .nav-desktop-hamburger__nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    min-width: 18.4375rem;
    margin: 0 0 0 11.5625rem;
    padding: 0 0 0 0;
    list-style: none; }
    .nav-desktop-hamburger__nav__item + .nav-desktop-hamburger__nav__item {
      margin: 1.5rem 0 0 0; }
    .nav-desktop-hamburger__nav__item.is--active .nav-desktop-hamburger__nav__link {
      opacity: 1; }
    .nav-desktop-hamburger__nav__link {
      font-size: 1.625rem;
      font-weight: bold;
      line-height: 2.2425rem;
      letter-spacing: normal;
      color: #0a0a0a;
      text-decoration: none;
      display: block;
      opacity: 1;
      -webkit-transition: opacity .15s ease;
      transition: opacity .15s ease;
      -webkit-transition-delay: .15s;
      transition-delay: .15s; }
  .nav-desktop-hamburger__sub-nav {
    list-style: none;
    padding: 0 0 0 0;
    margin: 2rem 0 0 0; }
    .nav-desktop-hamburger__sub-nav-container {
      display: none;
      opacity: 0;
      -webkit-transition: opacity .15s ease;
      transition: opacity .15s ease;
      -webkit-transition-delay: 0;
      transition-delay: 0;
      padding: 0 0 1.875rem 1.875rem;
      border-left: solid 1px #eaecef; }
      .nav-desktop-hamburger__sub-nav-container.is--active {
        display: block;
        opacity: 1;
        -webkit-transition: opacity .35s ease;
        transition: opacity .35s ease;
        -webkit-transition-delay: .15s;
        transition-delay: .15s; }
    .nav-desktop-hamburger__sub-nav__item + .nav-desktop-hamburger__sub-nav__item {
      margin: 1rem 0 0 0; }
    .nav-desktop-hamburger__sub-nav__item.is--active .nav-desktop-hamburger__sub-nav__link {
      opacity: 1; }
    .nav-desktop-hamburger__sub-nav__link {
      font-size: 1rem;
      font-weight: bold;
      line-height: 1.63rem;
      letter-spacing: normal;
      color: #0a0a0a;
      text-decoration: none;
      display: block; }
      .nav-desktop-hamburger__sub-nav__link:hover {
        text-decoration: underline; }

.secondarymenu--is-open .nav-desktop-hamburger__nav__link:not(.is--active) {
  opacity: .25; }
  .secondarymenu--is-open .nav-desktop-hamburger__nav__link:not(.is--active):hover {
    opacity: 1; }

.nav-category {
  background-color: #22252a;
  width: 100%;
  padding: 1.5rem 0 1.5rem 0;
  position: relative;
  overflow: visible; }
  .nav-category__nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    list-style: none;
    padding: 0 0 0 0;
    margin: 0 0 0 0; }
    .nav-category__nav__item:not(:first-child) {
      margin: 0 0 0 3rem; }
    .nav-category__nav__link {
      font-size: 1rem;
      font-weight: bold;
      line-height: 1.625rem;
      color: #9da5aa;
      text-decoration: none; }
      .nav-category__nav__link .icon {
        margin: 0 0 0 0.5rem; }
      .nav-category__nav__link:hover {
        color: white; }
        .nav-category__nav__link:hover .icon {
          -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
          -webkit-transition: all 150ms ease;
          transition: all 150ms ease; }
          .nav-category__nav__link:hover .icon path {
            fill: white; }
      .nav-category__nav__link.is--active {
        color: white; }
        .nav-category__nav__link.is--active .icon {
          -webkit-transform: rotate(-180deg);
          transform: rotate(-180deg); }
          .nav-category__nav__link.is--active .icon path {
            fill: white; }
  .nav-category__sub-nav {
    list-style: none;
    margin: 0 0 0 0;
    padding: 0 0 0 0; }
    .nav-category__sub-nav__item {
      line-height: 1; }
      .nav-category__sub-nav__item:not(:first-child) {
        margin: 1rem 0 0 0; }
    .nav-category__sub-nav__link {
      font-size: 0.875rem;
      font-weight: bold;
      line-height: 1;
      color: #4a5058;
      text-decoration: none; }
      .nav-category__sub-nav__link:hover {
        color: #272a2e; }
  .nav-category__content {
    display: none;
    background-color: #f2f3f5;
    padding: 2rem 0 2rem 0;
    position: relative; }
    .nav-category__content.is--active {
      position: absolute;
      z-index: 9;
      left: 0;
      top: 100%;
      display: block;
      width: 100%;
      min-height: 168px; }
    .nav-category__content .close-container {
      position: relative; }
    .nav-category__content .button-close {
      position: absolute;
      right: 0;
      top: 0; }
      .nav-category__content .button-close .icon-container {
        background-color: white;
        border: solid 1px #ced4da; }

.mp-pusher {
  position: relative;
  width: 100%;
  height: 100%; }
  .mp-pusher .icon {
    z-index: -1; }
  @media screen and (min-width: 64em) {
    .mp-pusher {
      display: none; } }

.mp-menu {
  position: absolute;
  /* we can't use fixed here :( */
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 40px);
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0); }

.mp-level {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
  -webkit-transition: -webkit-transform .15s ease;
  transition: -webkit-transform .15s ease;
  transition: transform .15s ease;
  transition: transform .15s ease, -webkit-transform .15s ease; }

/* overlays for pusher and for level that gets covered */
/*
.mp-pusher::after,
.mp-level::after,
.mp-level::before {
	position: absolute;
	top: 0;
	right: -32px;
	width: 0;
	height: 0;
	content: '';
	opacity: 1;
}
*/
.mp-pusher,
.mp-level {
  -webkit-transition: all 0.25s;
  transition: all 0.25s; }

.mp-level::after {
  z-index: -1; }

.mp-pusher.mp-pushed::after,
.mp-level.mp-level-overlay::after {
  width: 100%;
  height: 100%;
  opacity: 1;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s; }

.mp-level.mp-level-overlay {
  cursor: pointer; }

.mp-level.mp-level-overlay.mp-level::before {
  width: 100%;
  height: 100%;
  background: transparent;
  opacity: 1; }

/* overlap */
.mp-overlap .mp-level.mp-level-open {
  -webkit-box-shadow: 1px 0 2px rgba(0, 0, 0, 0.2);
  box-shadow: 1px 0 2px rgba(0, 0, 0, 0.2);
  -webkit-transform: translate3d(-40px, 0, 0);
  transform: translate3d(-40px, 0, 0); }

/* First level */
.mp-menu > .mp-level,
.mp-menu > .mp-level.mp-level-open,
.mp-menu.mp-overlap > .mp-level,
.mp-menu.mp-overlap > .mp-level.mp-level-open {
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

/* cover */
.mp-cover .mp-level.mp-level-open {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.mp-cover .mp-level.mp-level-open > ul > li > .mp-level:not(.mp-level-open) {
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0); }

/* content style */
.mp-menu ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  list-style: none;
  margin: 0 0 0 0;
  padding: 0 0 0 0; }
  .mp-menu ul li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    .mp-menu ul li a {
      width: 100%; }
    .mp-menu ul li .button-next-level {
      position: relative;
      padding: 0 32px 0 10px;
      border: 0;
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
      background-color: transparent;
      outline: none; }

.mp-menu h2 {
  margin: 0;
  padding: 1em;
  color: rgba(0, 0, 0, 0.4);
  text-shadow: 0 0 1px rgba(0, 0, 0, 0.1);
  font-weight: 300;
  font-size: 2em; }

.mp-menu.mp-overlap h2::before {
  position: absolute;
  top: 0;
  right: 0;
  margin-right: 8px;
  font-size: 75%;
  line-height: 1.8;
  opacity: 0;
  -webkit-transition: opacity 0.3s, -webkit-transform 0.1s 0.3s;
  transition: opacity 0.3s, -webkit-transform 0.1s 0.3s;
  transition: opacity 0.3s, transform 0.1s 0.3s;
  transition: opacity 0.3s, transform 0.1s 0.3s, -webkit-transform 0.1s 0.3s;
  -webkit-transform: translateX(100%);
  transform: translateX(100%); }

.mp-menu.mp-cover h2 {
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 1px;
  font-size: 1em; }

.mp-overlap .mp-level.mp-level-overlay > h2::before {
  opacity: 1;
  -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
  transition: opacity 0.3s, -webkit-transform 0.3s;
  transition: transform 0.3s, opacity 0.3s;
  transition: transform 0.3s, opacity 0.3s, -webkit-transform 0.3s;
  -webkit-transform: translateX(0);
  transform: translateX(0); }

.mp-menu ul li:hover {
  background: #f0f0f0; }

.mp-menu ul li > a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #0a0a0a;
  text-decoration: none;
  font-size: 22px;
  font-weight: bold;
  line-height: 32px;
  padding: 8px 32px 8px 32px; }

.mp-menu li.divider {
  padding: 0 23px 0 32px; }

div[data-level="2"] ul li > a,
div[data-level="3"] ul li > a,
div[data-level="4"] ul li > a {
  font-size: 1rem;
  font-weight: bold;
  line-height: 1.625rem;
  padding: 8px 0 8px 32px;
  position: relative;
  -webkit-transition: all 150ms ease;
  transition: all 150ms ease; }
  div[data-level="2"] ul li > a::after,
  div[data-level="3"] ul li > a::after,
  div[data-level="4"] ul li > a::after {
    content: "";
    width: calc(100% - 64px);
    height: 1px;
    background: #eaecef;
    position: absolute;
    bottom: 0;
    left: 32px; }

div[data-level="2"] ul li > .button-next-level::after,
div[data-level="3"] ul li > .button-next-level::after,
div[data-level="4"] ul li > .button-next-level::after {
  content: "";
  width: 100%;
  height: 1px;
  background: #eaecef;
  position: absolute;
  bottom: 0;
  right: 32px; }

div[data-level="2"] {
  z-index: 3; }

div[data-level="3"] {
  z-index: 2; }

div[data-level="4"] {
  z-index: 1; }

.mp-menu .is--small > a {
  font-size: 1rem;
  font-weight: bold;
  line-height: 1.625rem; }

/* seems like Chrome 34.0.1847.131 needs the second shadow otherwise the transition breaks */
.mp-back {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-weight: bold;
  font-size: 0.8125rem;
  line-height: 0.8125rem;
  color: #4a5058;
  text-transform: uppercase;
  text-decoration: none;
  padding: 0.5rem 1.4375rem 0.5rem 2rem;
  -webkit-transition: all 150ms ease;
  transition: all 150ms ease; }
  .mp-back .icon {
    -webkit-transform: rotate(-180deg);
    transform: rotate(-180deg);
    margin-right: 8px; }
    .mp-back .icon path {
      fill: #4a5058; }
  .mp-back:hover {
    color: #000000; }
    .mp-back:hover .icon path {
      fill: #000000; }

.mp-back + ul {
  margin: 1rem 0 0 0; }

/* Fallback example for browsers that don't support 3D transforms (and no JS fallback) */
/* We'll show the first level only */
.no-csstransforms3d .mp-pusher,
.no-js .mp-pusher {
  padding-left: 300px; }

.no-csstransforms3d .mp-menu .mp-level,
.no-js .mp-menu .mp-level {
  display: none; }

.no-csstransforms3d .mp-menu > .mp-level,
.no-js .mp-menu > .mp-level {
  display: block; }

.nav-push-menu-mobile-wrapper {
  display: block;
  padding: 40px 32px 32px 32px; }
  @media screen and (min-width: 64em) {
    .nav-push-menu-mobile-wrapper {
      display: none; } }

.nav-push-menu-mobile__divider {
  width: 100%;
  height: 1px;
  background-color: #eaecef;
  margin: 15px 0; }

.nav-push-menu-mobile .button-more-link {
  font-size: 0.8125rem;
  margin: 32px 0 0 32px;
  text-transform: uppercase; }

.overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #000000;
  z-index: 100;
  opacity: 1; }
  .overlay.is--active {
    display: block; }

/*
html.overlay--active {
  &, body {
    width: 100%;
    height: 100%;
    overflow: hidden;
  }
}
*/
.overlay__content {
  bottom: 0;
  height: 100%;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  z-index: 1; }
  .overlay__content.type--video .video-container {
    background-color: #000;
    bottom: 0;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
    @media print, screen and (min-width: 46.875em) {
      .overlay__content.type--video .video-container {
        max-width: 80%;
        left: 50%;
        -webkit-transform: translate(-50%, 0);
        transform: translate(-50%, 0); } }
  .overlay__content.type--video .sizing-wrapper {
    bottom: 0;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 1; }
  .overlay__content.type--video .responsive-embed {
    width: 100%; }
  .overlay__content__button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: transparent;
    border: none;
    outline: 0;
    font-size: 1.125rem;
    line-height: 1;
    color: white;
    cursor: pointer;
    -webkit-transition: all 150ms ease;
    transition: all 150ms ease; }
    @media print, screen and (min-width: 46.875em) {
      .overlay__content__button {
        font-size: 1.5rem; } }
    .overlay__content__button__text {
      -webkit-transition: all 150ms ease;
      transition: all 150ms ease; }
    .overlay__content__button .icon-container {
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      width: 2rem;
      margin: 0 0.5rem 0 0; }
      @media print, screen and (min-width: 46.875em) {
        .overlay__content__button .icon-container {
          width: 1.875rem; } }
    .overlay__content__button .icon-arrow-white {
      width: 100%;
      height: auto;
      -webkit-transform: rotate(180deg);
      transform: rotate(180deg); }
    .overlay__content__button:hover .overlay__content__button__text {
      color: #cccccc; }
    .overlay__content__button:hover .icon-arrow-white path {
      fill: #cccccc; }
  .overlay__content__navigation {
    position: absolute;
    left: 0;
    top: 1rem;
    z-index: 200; }
    @media print, screen and (min-width: 46.875em) {
      .overlay__content__navigation {
        left: 1.5rem;
        top: 1.5rem; } }

.pagination-list {
  list-style: none;
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }
  .pagination-list__item {
    padding: 0 .25rem 0 .25rem; }
    .pagination-list__item:first-child, .pagination-list__item:last-child {
      width: 100%;
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      margin: 1rem 0 1rem 0; }
      @media print, screen and (min-width: 46.875em) {
        .pagination-list__item:first-child, .pagination-list__item:last-child {
          width: auto;
          margin: 0 0 0 0; } }
    .pagination-list__item.is--active .pagination-list__page {
      background-color: #0a0a0a;
      color: white; }
    .pagination-list__item.is--disabled .pagination-list__button {
      color: rgba(10, 10, 10, 0.4); }
      .pagination-list__item.is--disabled .pagination-list__button .icon-arrow-black path {
        fill: rgba(10, 10, 10, 0.4); }
  .pagination-list__page {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-decoration: none;
    color: #0a0a0a;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.63rem;
    letter-spacing: 0px;
    text-align: center;
    -webkit-transition: all 150ms ease;
    transition: all 150ms ease; }
    .pagination-list__page:hover {
      background-color: rgba(10, 10, 10, 0.1); }
  .pagination-list__button {
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.63rem;
    color: #0a0a0a;
    text-decoration: none;
    -webkit-transition: all 150ms ease;
    transition: all 150ms ease; }
    .pagination-list__button:hover {
      color: rgba(10, 10, 10, 0.7); }
      .pagination-list__button:hover .icon-arrow-black path {
        fill: rgba(10, 10, 10, 0.7); }
    @media print, screen and (min-width: 46.875em) {
      .pagination-list__button.previous {
        margin-right: 28px; } }
    .pagination-list__button.previous .icon-container {
      margin-right: .5rem; }
    .pagination-list__button.previous .icon-arrow-black {
      -webkit-transform: rotate(-180deg);
      transform: rotate(-180deg); }
    @media print, screen and (min-width: 46.875em) {
      .pagination-list__button.next {
        margin-left: 28px; } }
    .pagination-list__button.next .icon-container {
      margin-left: .5rem; }

.responsive-embed {
  position: relative;
  height: 0; }
  .responsive-embed__item {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%; }
  .responsive-embed.aspect-ratio-16-by-9 {
    padding-top: 56.25%; }

.component-content__iframe {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding-top: 56.25%;
  /* 16:9 Aspect Ratio (divide 9 by 16 = 0.5625) */ }

/* Then style the iframe to fit in the container div with full height and width */
.component-content__iframe iframe {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%; }

.search-results__item {
  padding: 0 0 1.5rem 0;
  border-bottom: solid 1px #ced4da; }
  .search-results__item:last-child {
    border-bottom: none; }
  .search-results__item__meta {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start; }
    .search-results__item__meta__tag {
      font-size: 0.75rem;
      font-weight: bold;
      line-height: 1;
      text-transform: uppercase;
      color: #858e96; }
    .search-results__item__meta__date {
      font-size: 0.75rem;
      font-weight: normal;
      line-height: 1;
      color: #858e96;
      margin: 0 0 0 0.25rem; }
    .search-results__item__meta .icon-container {
      width: 11px;
      height: 11px;
      margin: 0 0 0 0.5rem;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
  .search-results__item__title {
    font-size: 1.375rem;
    font-weight: bold;
    line-height: 1.99375rem;
    color: black;
    margin: 0.5rem 0 0 0; }
  .search-results__item__content {
    color: #4a5058;
    font-size: 1rem;
    font-weight: normal;
    margin: 0.5rem 0 0 0; }
  .search-results__item + .search-results__item {
    margin: 1.5rem 0 0 0; }
  .search-results__item img {
    width: 100%;
    height: auto;
    max-width: 100%; }
  .search-results__item__link {
    display: block;
    text-decoration: none;
    color: black; }
    .search-results__item__link:hover .search-results__item__title {
      text-decoration: underline; }

.section {
  position: relative;
  padding: 2.5rem 0 3.75rem 0; }
  .section__header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 0 1rem 0;
    border-bottom: solid 1px #bbc3cb; }
    .section__header .button-more {
      display: none; }
      @media print, screen and (min-width: 46.875em) {
        .section__header .button-more {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex; } }
  .section__heading {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    color: #0a0a0a; }
  .section__footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end; }
    @media print, screen and (min-width: 46.875em) {
      .section__footer {
        display: none; } }
  .section.section-article-list .section__header {
    border-color: #ced4da; }
  .section.section-latest-trailers {
    position: relative;
    padding: 3rem 0 4rem 0;
    background-color: #50545a;
    z-index: 4; }
    .section.section-latest-trailers .section__heading {
      color: white; }
    .section.section-latest-trailers .section__header {
      border-color: rgba(255, 255, 255, 0.25); }
    .section.section-latest-trailers .responsive-embed {
      margin: 2rem 0 0 0; }
  .section.section-review {
    padding: 0 0 3.75rem 0; }

.slider-wrapper {
  width: 100%; }

.slider-item {
  outline: none; }
  .slider-item__title {
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1.875rem;
    text-align: center;
    color: white;
    margin: 1rem 0 0 0; }
  .slider-item__link {
    display: block;
    text-decoration: none;
    -webkit-tap-highlight-color: transparent; }
    .slider-item__link:focus {
      outline: none !important;
      outline-width: 0 !important;
      -webkit-box-shadow: none;
      box-shadow: none; }
  .slider-item__image {
    opacity: .5; }
  .slider-item .slide-category-list {
    list-style: none;
    padding: 0 0 0 0;
    margin: 2px 0 0 0;
    text-align: center; }
    .slider-item .slide-category-list__item {
      display: inline;
      font-size: 0.875rem;
      line-height: 1.49625rem;
      color: rgba(255, 255, 255, 0.45); }
      .slider-item .slide-category-list__item:not(:last-child)::after {
        content: ', ';
        display: inline-block;
        padding-right: 4px; }

.slick-current .slider-item__image {
  opacity: 1; }

.slider-movies {
  background-color: #24272b;
  padding: 2.625rem 0 0 0;
  position: relative;
  overflow: hidden; }
  @media print, screen and (min-width: 46.875em) {
    .slider-movies {
      padding: 3rem 0 0 0; } }
  .slider-movies::after {
    content: '';
    position: relative;
    display: block;
    width: 100%;
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), color-stop(9%, rgba(255, 255, 255, 0.02)), color-stop(17%, rgba(255, 255, 255, 0.06)), color-stop(24%, rgba(255, 255, 255, 0.12)), color-stop(31%, rgba(255, 255, 255, 0.2)), color-stop(37%, rgba(255, 255, 255, 0.29)), color-stop(44%, rgba(255, 255, 255, 0.39)), color-stop(50%, rgba(255, 255, 255, 0.5)), color-stop(56%, rgba(255, 255, 255, 0.61)), color-stop(63%, rgba(255, 255, 255, 0.71)), color-stop(69%, rgba(255, 255, 255, 0.8)), color-stop(76%, rgba(255, 255, 255, 0.88)), color-stop(83%, rgba(255, 255, 255, 0.95)), color-stop(91%, rgba(255, 255, 255, 0.98)), to(white));
    background-image: -webkit-linear-gradient(top, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.02) 9%, rgba(255, 255, 255, 0.06) 17%, rgba(255, 255, 255, 0.12) 24%, rgba(255, 255, 255, 0.2) 31%, rgba(255, 255, 255, 0.29) 37%, rgba(255, 255, 255, 0.39) 44%, rgba(255, 255, 255, 0.5) 50%, rgba(255, 255, 255, 0.61) 56%, rgba(255, 255, 255, 0.71) 63%, rgba(255, 255, 255, 0.8) 69%, rgba(255, 255, 255, 0.88) 76%, rgba(255, 255, 255, 0.95) 83%, rgba(255, 255, 255, 0.98) 91%, white);
    background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.02) 9%, rgba(255, 255, 255, 0.06) 17%, rgba(255, 255, 255, 0.12) 24%, rgba(255, 255, 255, 0.2) 31%, rgba(255, 255, 255, 0.29) 37%, rgba(255, 255, 255, 0.39) 44%, rgba(255, 255, 255, 0.5) 50%, rgba(255, 255, 255, 0.61) 56%, rgba(255, 255, 255, 0.71) 63%, rgba(255, 255, 255, 0.8) 69%, rgba(255, 255, 255, 0.88) 76%, rgba(255, 255, 255, 0.95) 83%, rgba(255, 255, 255, 0.98) 91%, white); }
  .slider-movies-wrapper {
    background-color: white; }
  .slider-movies__header {
    position: relative;
    z-index: 1; }
  .slider-movies__header-bar {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding: 0 0 1rem 0;
    border-bottom: solid 1px rgba(255, 255, 255, 0.2); }
    @media print, screen and (min-width: 46.875em) {
      .slider-movies__header-bar {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center; } }
  .slider-movies__title {
    font-size: 1.125rem;
    font-weight: bold;
    line-height: 1.755rem;
    color: white;
    margin: 0 0 0 0;
    padding: 0 0 0 0; }
    @media screen and (min-width: 64em) {
      .slider-movies__title {
        font-size: 1.625rem;
        line-height: 2.2425rem; } }
  .slider-movies__category-list {
    list-style: none;
    margin: 1.5rem 0 0 0;
    padding: 0 0 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row; }
    .slider-movies__category-list__item + .slider-movies__category-list__item {
      margin: 0 0 0 1.5rem; }
    .slider-movies__category-list__item.is--active .slider-movies__category-list__button {
      color: white; }
      .slider-movies__category-list__item.is--active .slider-movies__category-list__button::after {
        content: '';
        background-color: white;
        -webkit-transform: scaleX(1);
        transform: scaleX(1); }
    .slider-movies__category-list__button {
      color: rgba(255, 255, 255, 0.3);
      background-color: transparent;
      font-size: 0.875rem;
      font-weight: bold;
      line-height: 1.49625rem;
      padding: 0 0 0 0;
      border-style: none;
      outline: 0;
      cursor: pointer; }
      .slider-movies__category-list__button:hover {
        color: white; }
      .slider-movies__category-list__button::after {
        content: '';
        display: block;
        width: 100%;
        height: 2px;
        -webkit-transform: scaleX(0);
        transform: scaleX(0);
        -webkit-transition: all 150ms ease;
        transition: all 150ms ease; }
      @media screen and (min-width: 64em) {
        .slider-movies__category-list__button {
          font-size: 1rem;
          line-height: 1.63rem; } }
  .slider-movies .current-slide-blurred {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0;
    opacity: .6;
    -webkit-transition: all 500ms ease;
    transition: all 500ms ease; }
    .slider-movies .current-slide-blurred.type--image {
      -webkit-filter: blur(50px);
      filter: blur(50px);
      background-position: center;
      background-repeat: no-repeat;
      background-size: cover; }
      @media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
        .slider-movies .current-slide-blurred.type--image {
          display: none; } }
    .slider-movies .current-slide-blurred.type--svg {
      display: none; }
      @media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
        .slider-movies .current-slide-blurred.type--svg {
          display: block; } }
      .slider-movies .current-slide-blurred.type--svg image {
        width: 100%;
        height: auto; }
  .slider-movies .slider-wrapper {
    position: relative;
    z-index: 2; }
  .slider-movies .slick-slider {
    margin: 1.5rem 0 0 0; }
    .slider-movies .slick-slider .slick-list {
      padding-top: 100px !important;
      padding-bottom: 100px !important; }
    .slider-movies .slick-slider .slick-slide {
      padding: 0 0.9375rem;
      -webkit-transition: -webkit-transform .35s ease;
      transition: -webkit-transform .35s ease;
      transition: transform .35s ease;
      transition: transform .35s ease, -webkit-transform .35s ease;
      -webkit-transform: translateX(-25%);
      transform: translateX(-25%); }
      .slider-movies .slick-slider .slick-slide img {
        -webkit-transition: -webkit-transform .35s ease;
        transition: -webkit-transform .35s ease;
        transition: transform .35s ease;
        transition: transform .35s ease, -webkit-transform .35s ease; }
    .slider-movies .slick-slider .slick-current {
      -webkit-transform: translateX(0);
      transform: translateX(0);
      -webkit-transform: scale(1.5);
      transform: scale(1.5);
      /*img {
        transform: scale(1.5);
      }*/ }
      .slider-movies .slick-slider .slick-current .slider-item__title {
        -webkit-transform: scale(0.75);
        transform: scale(0.75); }
      .slider-movies .slick-slider .slick-current .slide-category-list {
        -webkit-transform: scale(0.75);
        transform: scale(0.75); }
      .slider-movies .slick-slider .slick-current ~ .slick-slide {
        -webkit-transform: translateX(25%);
        transform: translateX(25%); }
    .slider-movies .slick-slider .slick-prev, .slider-movies .slick-slider .slick-next {
      background-color: white;
      z-index: 100;
      border-radius: 50%;
      width: 46px;
      height: 46px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      top: 40%; }
      .slider-movies .slick-slider .slick-prev::before, .slider-movies .slick-slider .slick-next::before {
        content: ''; }
      .slider-movies .slick-slider .slick-prev .icon, .slider-movies .slick-slider .slick-next .icon {
        width: 13px;
        height: 22px; }
    .slider-movies .slick-slider .slick-prev {
      left: 8px; }
      .slider-movies .slick-slider .slick-prev .icon {
        margin-right: 3px; }
    .slider-movies .slick-slider .slick-next {
      right: 8px;
      margin-left: 3px; }

.site-search {
  min-height: 5.5rem;
  padding: 1.5rem 0 1.5rem 0;
  background-color: #24272b;
  -webkit-transform: translate(0, -100%);
  transform: translate(0, -100%);
  margin-top: -5.5rem;
  -webkit-transition: all 150ms ease;
  transition: all 150ms ease; }
  @media screen and (min-width: 64em) {
    .site-search {
      min-height: 12.125rem;
      padding: 4.9375rem 0 3rem 0;
      margin-top: -12.125rem; } }
  .site-search.is--active {
    margin-top: -5.5rem;
    min-height: 5.5rem;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    margin-top: 0; }
    @media screen and (min-width: 64em) {
      .site-search.is--active {
        margin-top: -12.125rem;
        min-height: 12.125rem;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        margin-top: 0; } }
  .site-search__input[type="text"] {
    min-height: 36px;
    font-size: 1.5rem;
    line-height: 1.5rem;
    padding: 0 1rem 0.5rem 0;
    background-color: #24272b;
    border-top-style: none;
    border-left-style: none;
    border-right-style: none;
    border-bottom: solid 1px rgba(255, 255, 255, 0.16);
    border-radius: 0;
    -webkit-transition: all 350ms ease;
    transition: all 350ms ease; }
    @media screen and (min-width: 64em) {
      .site-search__input[type="text"] {
        min-height: 66px;
        font-size: 2.25rem;
        line-height: 3.1275rem;
        padding: 0 3.125rem 1rem 0; } }
  .site-search__input::-webkit-input-placeholder {
    color: #4d4e50; }
  .site-search__input::-moz-placeholder {
    color: #4d4e50; }
  .site-search__input::-ms-input-placeholder {
    color: #4d4e50; }
  .site-search__input::placeholder {
    color: #4d4e50; }
  .site-search__input:focus {
    border-color: white;
    color: white; }
  .site-search__input-wrapper {
    position: relative;
    width: 100%; }
  .site-search .icon-container {
    width: 24px;
    height: 24px;
    position: absolute;
    right: 0;
    bottom: 1.125rem; }
    .site-search .icon-container .icon {
      width: 24px;
      height: 24px; }
    @media screen and (min-width: 64em) {
      .site-search .icon-container {
        width: 37px;
        height: 37px;
        bottom: 1.4375rem; }
        .site-search .icon-container .icon {
          width: 37px;
          height: 37px; } }

.sticky-sidebar {
  display: none; }
  @media screen and (min-width: 64em) {
    .sticky-sidebar {
      display: block;
      margin: 3.4375rem 0 0 0;
      position: -webkit-sticky;
      position: sticky;
      top: 110px; } }

.tag-list {
  list-style: none;
  padding: 0 0 0 0;
  margin: 2rem 0 0 0;
  max-width: 500px; }
  .tag-list__item {
    display: inline-block;
    margin: 3px 0 3px 0; }
  .tag-list__link {
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1;
    color: #0a0a0a;
    text-decoration: none;
    padding: 0.375rem 0.375rem 0.375rem 0.375rem;
    border-radius: 3px;
    background-color: rgba(234, 236, 239, 0.6);
    -webkit-transition: all .15s ease;
    transition: all .15s ease; }
    .tag-list__link:hover {
      background-color: rgba(205, 210, 217, 0.6); }

.text-block .component-content-generic {
  max-width: 100%; }

.text-block .two-col {
  -webkit-columns: 1;
  -moz-columns: 1;
  columns: 1;
  -webkit-column-gap: 30px;
  -moz-column-gap: 30px;
  column-gap: 30px; }
  @media print, screen and (min-width: 46.875em) {
    .text-block .two-col {
      -webkit-columns: 2;
      -moz-columns: 2;
      columns: 2; } }

.header {
  background-color: black;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100; }
  .header__navbar {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    height: 63px; }
    @media screen and (min-width: 64em) {
      .header__navbar {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        height: 90px; } }
  .header__navbar-wrapper {
    background-color: transparent; }
  .header__logo {
    width: 170px;
    height: auto;
    margin: 0 0 0 0;
    display: block; }
    @media print, screen and (min-width: 46.875em) {
      .header__logo {
        margin: 0 1.625rem 0 0;
        width: 224px;
        height: 39px; } }
  .header__logo-image {
    width: 170px;
    height: auto;
    margin: 0 0 0 0;
    display: block; }
    @media print, screen and (min-width: 46.875em) {
      .header__logo-image {
        width: 224px;
        height: 39px; } }
  .header__navigation {
    margin: 0 0 0 0;
    display: none;
    height: 100%; }
    @media screen and (min-width: 64em) {
      .header__navigation {
        display: block; } }
    .header__navigation__nav {
      list-style-type: none;
      margin: 0 0 0 0;
      padding: 0 0 0 0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      height: 100%; }
      .header__navigation__nav__item {
        display: inline-block;
        height: 100%; }
        .header__navigation__nav__item + .header__navigation__nav__item {
          margin: 0; }
        .header__navigation__nav__item.is--active .header__navigation__nav__link,
        .header__navigation__nav__item.is--active .header__navigation__nav__button {
          color: white; }
      .header__navigation__nav__button, .header__navigation__nav__link {
        height: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        background: none;
        border: none;
        outline: none;
        text-align: left;
        font-size: 1rem;
        font-weight: bold;
        padding: 0.375rem 0.75rem 0.375rem 0.75rem;
        line-height: 1.625rem;
        color: #9da5aa;
        text-decoration: none;
        -webkit-transition: all 150ms ease;
        transition: all 150ms ease;
        cursor: pointer; }
        .header__navigation__nav__button:hover, .header__navigation__nav__link:hover {
          color: white; }
  .header-search__button {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 19px;
    height: 19px;
    background-color: transparent;
    border: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    cursor: pointer; }
    .header-search__button-icon-search {
      display: block;
      width: 19px;
      height: 19px; }
    .header-search__button-icon-close {
      display: none; }
    .header-search__button:focus {
      outline: none; }
    @media screen and (min-width: 64em) {
      .header-search__button {
        margin: 0 0 0 auto; } }
  @media screen and (min-width: 64em) {
    .header {
      position: fixed;
      width: 100%;
      left: 0;
      top: 0;
      z-index: 100; } }

.dropdown--is--active .header {
  background-color: black; }

.site-search-is--active .header-search__button-icon-close {
  width: 16px;
  height: 16px;
  display: block; }

.site-search-is--active .header-search__button-icon-search {
  display: none; }

.site-nav-mobile--active {
  /*
  .header__logo-image {
    &.neg {
      display: block;
      @include breakpoint(medium) {
        display: none;
      }
    }
    &.pos {
      display: none;
      @include breakpoint(medium) {
        display: block;
      }
    }
  }*/ }
  @media screen and (max-width: 33.74875em) {
    .site-nav-mobile--active .site-nav-mobile__button-icon:before,
    .site-nav-mobile--active .site-nav-mobile__button-icon:after {
      background-color: #4a5058; } }

.footer {
  margin: 0 0 0 0;
  padding: 4.0625rem 0 0 0;
  background-color: #24272b;
  color: #9da5aa;
  font-size: 0.875rem; }
  .footer .display-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .footer__logo {
    display: block; }
    .footer__logo .logo {
      width: 224px;
      height: 39px;
      outline: none;
      border: none;
      border-style: none; }
  .footer__row-top__company {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    text-align: center; }
    @media print, screen and (min-width: 46.875em) {
      .footer__row-top__company {
        text-align: left; } }
  .footer__row-top__newsletter {
    margin: 2.5rem 0 0 0;
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; }
    @media print, screen and (min-width: 46.875em) {
      .footer__row-top__newsletter {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
        margin: 0 0 0 0; } }
  .footer__row-top__social {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    justify-content: center; }
    .footer__row-top__social .social-links {
      list-style: none;
      padding: 0;
      margin: 2rem 0 0 0;
      -ms-flex-item-align: end;
      align-self: flex-end; }
      @media print, screen and (min-width: 46.875em) {
        .footer__row-top__social .social-links {
          margin: 0 0 0 auto; } }
      .footer__row-top__social .social-links li {
        display: inline-block; }
        .footer__row-top__social .social-links li + li {
          margin: 0 0 0 0.5rem; }
      .footer__row-top__social .social-links__link {
        display: block;
        /*
          &.type {
            &--facebook {
              background-image: url('/Static/images/svg/facebook-circle-o.svg');
            }
            &--instagram {
              background-image: url('/Static/images/svg/instagram-circle-o.svg');
            }
            &--twitter {
              background-image: url('/Static/images/svg/twitter-circle-o.svg');
            }
          }*/ }
        .footer__row-top__social .social-links__link .img {
          width: 40px;
          height: 40px; }
      @media print, screen and (min-width: 33.75em) {
        .footer__row-top__social .social-links {
          -webkit-box-pack: start;
          -ms-flex-pack: start;
          justify-content: flex-start;
          -webkit-box-ordinal-group: 4;
          -ms-flex-order: 3;
          order: 3; } }
  .footer__row-top .copyright {
    font-size: 0.875rem;
    line-height: 1.49625rem;
    color: #929497;
    margin: 2rem 0 0 0; }
  .footer__row-middle {
    margin: 2.5rem 0 0 0;
    padding: 0 0 3.5rem 0; }
  .footer__row-bottom {
    padding: 1rem 0 1rem 0;
    background-color: #0a0a0a;
    text-align: center;
    display: block; }
    .footer__row-bottom__links {
      list-style: none;
      margin: 0 0 0 0;
      padding: 0 0 0 0;
      width: 100%;
      text-align: center; }
      .footer__row-bottom__links li {
        display: block;
        width: 100%; }
        .footer__row-bottom__links li + li {
          margin: 0 0 0 0; }
          @media print, screen and (min-width: 33.75em) {
            .footer__row-bottom__links li + li {
              margin: 0 0 0 1.5rem; } }
        @media print, screen and (min-width: 33.75em) {
          .footer__row-bottom__links li {
            display: inline-block;
            width: auto; } }
      .footer__row-bottom__links a {
        display: block;
        line-height: 1.49625rem;
        color: #929497;
        text-decoration: none; }
    @media print, screen and (min-width: 33.75em) {
      .footer__row-bottom {
        text-align: left; } }
  .footer__item {
    width: 100%; }
  .footer__heading {
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1.875rem;
    word-break: break-word;
    color: white;
    padding: 0 0 0.5rem 0;
    margin: 2.5rem 0 0 0;
    border-bottom: solid 1px #3e4145; }
    .footer__heading.no--border {
      padding: 0 0 0 0;
      border-bottom: none; }
    .footer__heading.news-letter {
      margin: 1.125rem 0 0 0; }
    @media print, screen and (min-width: 46.875em) {
      .footer__heading {
        margin: 0 0 0 0; } }
  .footer__links ul {
    display: block;
    list-style-type: none;
    margin: 1rem 0 0 0;
    padding: 0;
    -webkit-columns: 2;
    -moz-columns: 2;
    columns: 2; }
    .footer__links ul li {
      display: block; }
      .footer__links ul li + li {
        margin: 0.5rem 0 0 0; }
    .footer__links ul a {
      font-size: 0.875rem;
      font-weight: bold;
      line-height: 1.49625rem;
      text-decoration: none;
      display: block;
      color: #9da5aa; }
      .footer__links ul a:hover {
        color: #c6cbce; }
    @media print, screen and (min-width: 46.875em) {
      .footer__links ul {
        -webkit-columns: 1;
        -moz-columns: 1;
        columns: 1; } }
  .footer__usp {
    font-size: 0.875rem;
    line-height: 1.6275rem;
    font-weight: normal; }
    .footer__usp p {
      margin: 1rem 0 0 0; }
    .footer__usp a {
      font-weight: bold;
      color: white;
      text-decoration: none; }
      .footer__usp a:hover {
        color: #d9d9d9; }
    .footer__usp dl {
      margin: 1rem 0 0 0; }
      .footer__usp dl dt {
        display: inline; }
      .footer__usp dl dd {
        display: inline;
        margin: 0 0 0 0; }

@media print, screen and (min-width: 33.75em) {
  margin: 40px 0 0 0;
  padding: 40px 0 40px 0; }

.content-general {
  padding: 0 0 0 0; }
  .content-general__bar {
    width: 100%;
    height: auto;
    background-color: #24272b;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 0;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    padding: 1rem 1.5rem 1rem 1.5rem; }
    @media print, screen and (min-width: 46.875em) {
      .content-general__bar {
        padding: 0.875rem 2.5rem 1.125rem 2.5rem;
        height: 80px; } }
    .content-general__bar::before {
      content: '';
      display: block;
      position: absolute;
      left: 15px;
      top: 0;
      right: 15px;
      height: 1px;
      width: calc(100% - 30px);
      background-color: rgba(255, 255, 255, 0.15); }
      @media screen and (min-width: 64em) {
        .content-general__bar::before {
          display: none; } }
  .content-general__wrapper {
    position: relative;
    z-index: 6;
    top: 0;
    margin: 0 auto 0 auto;
    background-color: white;
    min-height: 1000px;
    max-width: 81.875rem; }
    @media screen and (min-width: 81.875em) {
      .content-general__wrapper {
        top: -6.875rem; } }
  .content-general__header .film-meta {
    list-style: none;
    margin: 2.5rem 0 0 0;
    padding: 0 0 0 0;
    border-bottom: solid 1px #ced4da; }
    @media print, screen and (min-width: 46.875em) {
      .content-general__header .film-meta li:first-child {
        padding-right: 30px; } }
    .content-general__header .film-meta dl {
      margin: 0 0 0 0;
      border-top: solid 1px #ced4da;
      padding: 0.5rem 0 0.5rem 0; }
      .content-general__header .film-meta dl dt {
        font-size: 1rem;
        font-weight: bold;
        line-height: 1.63rem;
        color: #4a5058; }
      .content-general__header .film-meta dl dd {
        margin: 0 0 0 0;
        line-height: 1.63rem; }
  .content-general__title {
    font-size: 1.625rem;
    font-weight: bold;
    line-height: 2.12875rem;
    color: #0a0a0a;
    margin: 1rem 0 0 0; }
    @media print, screen and (min-width: 46.875em) {
      .content-general__title {
        font-size: 2rem;
        line-height: 2.26rem;
        margin: 3.4375rem 0 0 0; } }
  .content-general__preamble {
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1.755rem;
    letter-spacing: normal;
    color: #353a41; }
    @media print, screen and (min-width: 46.875em) {
      .content-general__preamble {
        font-size: 1.5rem;
        line-height: 2.13rem; } }
  .content-general__content {
    padding: 2.5rem 0 4.5rem 0; }
    @media print, screen and (min-width: 46.875em) {
      .content-general__content {
        padding: 0 0 4.5rem 0; } }
  .content-general .component-content-generic {
    margin: 2.625rem 0 0 0; }
    @media print, screen and (min-width: 46.875em) {
      .content-general .component-content-generic {
        margin: 3.0625rem 0 0 0; } }
  .content-general__footer {
    margin: 2.5rem 0 0 0;
    padding: 1.5rem 0 0 0;
    border-top: solid 1px #ced4da; }
    .content-general__footer p:first-child {
      margin: 4rem 0 5rem 0; }
    .content-general__footer p a {
      color: #C32A28;
      font-weight: bold;
      text-decoration: none; }
      .content-general__footer p a:hover {
        color: #b9201b; }

.content-article {
  padding: 0 0 0 0; }
  .content-article__bar {
    width: 100%;
    height: auto;
    background-color: #24272b;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 0;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    padding: 1rem 1.5rem 1rem 1.5rem; }
    @media print, screen and (min-width: 46.875em) {
      .content-article__bar {
        padding: 0.875rem 2.5rem 1.125rem 2.5rem;
        height: 80px; } }
    .content-article__bar::before {
      content: '';
      display: block;
      position: absolute;
      left: 15px;
      top: 0;
      right: 15px;
      height: 1px;
      width: calc(100% - 30px);
      background-color: rgba(255, 255, 255, 0.15); }
      @media screen and (min-width: 64em) {
        .content-article__bar::before {
          display: none; } }
  .content-article__wrapper {
    position: relative;
    z-index: 6;
    top: 0;
    margin: 0 auto 0 auto;
    background-color: white;
    min-height: 1000px;
    max-width: 1310px; }
    @media screen and (min-width: 81.875em) {
      .content-article__wrapper {
        margin-top: -110px; } }
  .content-article__header .film-meta {
    list-style: none;
    margin: 40px 0 0 0;
    padding: 0 0 0 0;
    border-bottom: solid 1px #ced4da; }
    @media print, screen and (min-width: 46.875em) {
      .content-article__header .film-meta li:first-child {
        padding-right: 30px; } }
    .content-article__header .film-meta dl {
      margin: 0 0 0 0;
      border-top: solid 1px #ced4da;
      padding: 8px 0 8px 0; }
      .content-article__header .film-meta dl dt {
        font-size: 1rem;
        font-weight: bold;
        line-height: 1.63rem;
        color: #4a5058; }
      .content-article__header .film-meta dl dd {
        font-size: 1rem;
        margin: 0 0 0 0;
        line-height: 1.63rem; }
  .content-article__title {
    font-size: 1.625rem;
    font-weight: bold;
    line-height: 34.06px;
    color: #0a0a0a;
    margin: 1rem 0 0 0; }
    @media print, screen and (min-width: 46.875em) {
      .content-article__title {
        font-size: 2rem;
        line-height: 2.26rem;
        margin: 3.4375rem 0 0 0; } }
  .content-article__preamble {
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1.755rem;
    letter-spacing: normal;
    color: #4a5058; }
    @media print, screen and (min-width: 46.875em) {
      .content-article__preamble {
        font-size: 1.5rem;
        line-height: 2.13rem; } }
  .content-article__content {
    padding: 40px 0 40px 0; }
    @media print, screen and (min-width: 46.875em) {
      .content-article__content {
        padding: 0 0 40px 0; } }
  .content-article .component-content-generic {
    margin: 2.625rem 0 0 0; }
    @media print, screen and (min-width: 46.875em) {
      .content-article .component-content-generic {
        margin: 3.0625rem 0 0 0; } }
  .content-article__footer {
    margin: 2.5rem 0 0 0;
    padding: 1.5rem 0 0 0;
    border-top: solid 1px #ced4da; }

.search-results__header {
  background-color: #e8ecf1;
  padding: 5.8125rem 0 2rem 0; }
  .search-results__header__title {
    color: #0a0a0a;
    margin: 0 0 0 0;
    font-size: 3.375rem;
    font-weight: 900;
    line-height: 4.1175rem; }
  .search-results__header__num-hits {
    color: #0a0a0a;
    margin: 1rem 0 0 0;
    font-weight: bold;
    font-size: 1.25rem;
    line-height: 1.875rem; }

.search-results__form {
  margin: 1.5rem 0 0 0; }
  .search-results__form .input-wrapper {
    position: relative;
    max-width: 343px; }
  .search-results__form .search-input {
    min-height: 40px;
    border-radius: 20px;
    border: solid 1px #acb5bd;
    padding: .5rem 1rem;
    color: #4a5058; }
  .search-results__form .icon-container {
    position: absolute;
    right: 1rem;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    width: 19px;
    height: 19px; }

.search-results__results {
  padding: 4rem 0 7.875rem 0; }

.search-results__pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  border-top: solid 1px #ced4da;
  margin: 3.5rem 0 0 0;
  padding: 2.5rem 0 0 0; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uY3NzIiwibWFpbi5zY3NzIiwiX2ZvdW5kYXRpb24taW1wb3J0LnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsIl9mb250cy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19jbGFzc2VzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2d1dHRlcnMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZ3JpZC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL191bml0LnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2JyZWFrcG9pbnQuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fY2VsbC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19sYXlvdXQuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fY29sbGFwc2Uuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fcG9zaXRpb24uc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZnJhbWUuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdmlzaWJpbGl0eS5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX3ZlcnRpY2FsLXJoeXRobS5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL192YXJpYWJsZXMuc2NzcyIsIi4uL3ZlbmRvci9zbGljay9fc2xpY2stY3VzdG9tLnNjc3MiLCIuLi92ZW5kb3Ivc2xpY2svX3NsaWNrLXRoZW1lLWN1c3RvbS5zY3NzIiwiX2hlbHBlcnMuc2NzcyIsIl9taXhpbnMuc2NzcyIsIl9jb2xvcnMuc2NzcyIsIl9odG1sLXRhZ3Muc2NzcyIsIl9iYWNrZ3JvdW5kcy5zY3NzIiwiLi4vLi4vZWxlbWVudHMvQnV0dG9uL19CdXR0b24uc2NzcyIsIi4uLy4uL2VsZW1lbnRzL0J1dHRvbkNsb3NlL19CdXR0b25DbG9zZS5zY3NzIiwiLi4vLi4vZWxlbWVudHMvQnV0dG9uTW9yZUxpbmsvX0J1dHRvbk1vcmVMaW5rLnNjc3MiLCIuLi8uLi9lbGVtZW50cy9CdXR0b25TaGFyZS9fQnV0dG9uU2hhcmUuc2NzcyIsIi4uLy4uL2VsZW1lbnRzL0NoZWNrYm94L19DaGVja2JveC5zY3NzIiwiLi4vLi4vZWxlbWVudHMvSW5wdXQvX0lucHV0LnNjc3MiLCIuLi8uLi9lbGVtZW50cy9MYWJlbC9fTGFiZWwuc2NzcyIsIi4uLy4uL2VsZW1lbnRzL0xpbmsvX0xpbmsuc2NzcyIsIi4uLy4uL2VsZW1lbnRzL0xpc3QvX0xpc3Quc2NzcyIsIi4uLy4uL2VsZW1lbnRzL1JhZGlvL19SYWRpby5zY3NzIiwiLi4vLi4vZWxlbWVudHMvU2VsZWN0L19TZWxlY3Quc2NzcyIsIi4uLy4uL2VsZW1lbnRzL1RleHRhcmVhL19UZXh0YXJlYS5zY3NzIiwiLi4vLi4vZWxlbWVudHMvRG90dGVkTGlzdC9fRG90dGVkTGlzdC5zY3NzIiwiLi4vLi4vZWxlbWVudHMvSWNvbi9fSWNvbi5zY3NzIiwiLi4vLi4vZWxlbWVudHMvRmlndXJlL19GaWd1cmUuc2NzcyIsIi4uLy4uL2NvbXBvbmVudHMvQWRDb250YWluZXIvX0FkQ29udGFpbmVyLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYnlnZ2EtYWNjb3JkaW9uLW5hdmlnYXRpb24vc3JjL19ieWdnYS1hY2NvcmRpb24tbmF2aWdhdGlvbi5zY3NzIiwiLi4vLi4vY29tcG9uZW50cy9BY2NvcmRpb25OYXZpZ2F0aW9uL19BY2NvcmRpb25OYXZpZ2F0aW9uLnNjc3MiLCIuLi8uLi9jb21wb25lbnRzL0FydGljbGVMaXN0L19BcnRpY2xlTGlzdC5zY3NzIiwiLi4vLi4vY29tcG9uZW50cy9BdXRob3IvX0F1dGhvci5zY3NzIiwiLi4vLi4vY29tcG9uZW50cy9CaWxsYm9hcmQvX0JpbGxib2FyZC5zY3NzIiwiLi4vLi4vY29tcG9uZW50cy9CaWxsYm9hcmQvX0hlcm9Db250ZW50LnNjc3MiLCIuLi8uLi9jb21wb25lbnRzL0J1dHRvblRyaWdnZXJWaWRlb092ZXJsYXkvX0J1dHRvblRyaWdnZXJWaWRlb092ZXJsYXkuc2NzcyIsIi4uLy4uL2NvbXBvbmVudHMvQ2FyZC9fQ2FyZC5zY3NzIiwiLi4vLi4vY29tcG9uZW50cy9DYXJkR3JvdXAvX0NhcmRHcm91cC5zY3NzIiwiLi4vLi4vY29tcG9uZW50cy9Db250ZW50L19Db250ZW50LnNjc3MiLCIuLi8uLi8uLi8uLi9sb2NhbC1saWJyYXJpZXMvYnlnZ2EtY29va2llLWRpc2NsYWltZXIvc3JjL19ieWdnYS1jb29raWUtZGlzY2xhaW1lci5zY3NzIiwiLi4vLi4vY29tcG9uZW50cy9Db29raWVEaXNjbGFpbWVyL19Db29raWVEaXNjbGFpbWVyLnNjc3MiLCIuLi8uLi9jb21wb25lbnRzL01lZ2FNZW51L19NZWdhTWVudS5zY3NzIiwiLi4vLi4vY29tcG9uZW50cy9Gb3JtL19Gb3JtLnNjc3MiLCIuLi8uLi9jb21wb25lbnRzL0Zvcm0vX0Zvcm1WYWxpZGF0aW9uLnNjc3MiLCIuLi8uLi9jb21wb25lbnRzL0Zvcm1OZXdzTGV0dGVyL19Gb3JtTmV3c0xldHRlci5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCIuLi8uLi9jb21wb25lbnRzL0dyYWRlTGlzdC9fR3JhZGVMaXN0LnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYnlnZ2Etb2ZmY2FudmFzLW1lbnUvc3JjL19ieWdnYS1vZmZjYW52YXMtbWVudS5zY3NzIiwiLi4vLi4vY29tcG9uZW50cy9OYXZNb2JpbGUvX05hdk1vYmlsZS5zY3NzIiwiLi4vLi4vY29tcG9uZW50cy9OYXZEZXNrdG9wSGFtYnVyZ2VyL19OYXZEZXNrdG9wSGFtYnVyZ2VyLnNjc3MiLCIuLi8uLi9jb21wb25lbnRzL05hdkNhdGVnb3J5L19OYXZDYXRlZ29yeS5zY3NzIiwiLi4vLi4vY29tcG9uZW50cy9OYXZQdXNoTWVudS9fTXVsdGlMZXZlbFB1c2hNZW51LnNjc3MiLCIuLi8uLi9jb21wb25lbnRzL05hdlB1c2hNZW51L19OYXZQdXNoTWVudU1vYmlsZS5zY3NzIiwiLi4vLi4vY29tcG9uZW50cy9PdmVybGF5L19PdmVybGF5LnNjc3MiLCIuLi8uLi9jb21wb25lbnRzL092ZXJsYXkvX092ZXJsYXlDb250ZW50LnNjc3MiLCIuLi8uLi9jb21wb25lbnRzL1BhZ2luYXRpb24vX1BhZ2luYXRpb24uc2NzcyIsIi4uLy4uL2NvbXBvbmVudHMvUmVzcG9uc2l2ZUVtYmVkL19SZXNwb25zaXZlRW1iZWQuc2NzcyIsIi4uLy4uL2NvbXBvbmVudHMvU2VhcmNoUmVzdWx0c0l0ZW0vX1NlYXJjaFJlc3VsdHNJdGVtLnNjc3MiLCIuLi8uLi9jb21wb25lbnRzL1NlY3Rpb24vX1NlY3Rpb24uc2NzcyIsIi4uLy4uL2NvbXBvbmVudHMvU2xpZGVySGVyby9fU2xpZGVySGVyby5zY3NzIiwiLi4vLi4vY29tcG9uZW50cy9TbGlkZXJNb3ZpZXMvX1NsaWRlckl0ZW0uc2NzcyIsIi4uLy4uL2NvbXBvbmVudHMvU2xpZGVyTW92aWVzL19TbGlkZXJNb3ZpZXMuc2NzcyIsIi4uLy4uL2NvbXBvbmVudHMvU2l0ZVNlYXJjaC9fU2l0ZVNlYXJjaC5zY3NzIiwiLi4vLi4vY29tcG9uZW50cy9TdGlja3lTaWRlYmFyL19TdGlja3lTaWRlYmFyLnNjc3MiLCIuLi8uLi9jb21wb25lbnRzL1RhZ0xpc3QvX1RhZ0xpc3Quc2NzcyIsIi4uLy4uL2NvbXBvbmVudHMvVGV4dEJsb2NrL19UZXh0QmxvY2suc2NzcyIsIi4uLy4uL2NvbnRhaW5lcnMvSGVhZGVyL19IZWFkZXIuc2NzcyIsIi4uLy4uL2NvbnRhaW5lcnMvRm9vdGVyL19Gb290ZXIuc2NzcyIsIi4uLy4uL2NvbnRhaW5lcnMvQ29udGVudEdlbmVyYWwvX0NvbnRlbnRHZW5lcmFsLnNjc3MiLCIuLi8uLi9jb250YWluZXJzL0NvbnRlbnRBcnRpY2xlL19Db250ZW50QXJ0aWNsZS5zY3NzIiwiLi4vLi4vY29udGFpbmVycy9TZWN0aW9uU2VhcmNoUmVzdWx0cy9fU2VhcmNoUmVzdWx0cy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlCQUFpQjtBQ0FqQjs7Ozs7Ozs7aUZBUWlGO0FDUmpGOzs7Ozs7Ozs7aUZBU2lGO0FBRWpGLElBQUk7QUNYSjs7Ozs7R0FLRztBQ0dILDhFQUFZO0FDSVY7RUNvQk0seUJBQTZEO0VBQTdELHdCQUE2RDtFQ2RuRSxvQkNzRXVEO0VEckV2RCxrQkFBaUI7RUFDakIsbUJBQWtCLEVGRWpCO0VJZ0pHO0lKMUpKO01Db0JNLHlCQUE2RDtNQUE3RCx3QkFBNkQsRURWbEUsRUFBQTtFQVZEO0lDb0JNLHlCQUE2RDtJQUE3RCx3QkFBNkQ7SUNkbkUsZ0JGRm1D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RUFGRDtJS25DQSw0QkFEZ0gsRUxzQy9HO0VBRkQ7SUtuQ0Esa0NBRGdILEVMc0MvRztFQUZEO0lLbkNBLGtDQURnSCxFTHNDL0c7RUFGRDtJS25DQSw2QkFEZ0gsRUxzQy9HO0VJdUNDO0lKckRKO01LL0JFLFlBQW1CLEVMaUNwQjtJQUVEO01LL0JFLFlBQW1CLEVMaUNwQjtJQU1DO01LbkNBLGlDQURnSCxFTHNDL0c7SUFGRDtNS25DQSxrQ0FEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsNEJBRGdILEVMc0MvRztJQUZEO01LbkNBLGtDQURnSCxFTHNDL0c7SUFGRDtNS25DQSxrQ0FEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsNEJBRGdILEVMc0MvRztJQUZEO01LbkNBLGtDQURnSCxFTHNDL0c7SUFGRDtNS25DQSxrQ0FEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsNEJBRGdILEVMc0MvRztJQUZEO01LbkNBLGtDQURnSCxFTHNDL0c7SUFGRDtNS25DQSxrQ0FEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsNkJBRGdILEVMc0MvRztJQWRIO01LL0JFLFlBQW1CLEVMaUNwQjtJQUVEO01LL0JFLFlBQW1CLEVMaUNwQjtJQU1DO01LbkNBLGlDQURnSCxFTHNDL0c7SUFGRDtNS25DQSxrQ0FEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsNEJBRGdILEVMc0MvRztJQUZEO01LbkNBLGtDQURnSCxFTHNDL0c7SUFGRDtNS25DQSxrQ0FEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsNEJBRGdILEVMc0MvRztJQUZEO01LbkNBLGtDQURnSCxFTHNDL0c7SUFGRDtNS25DQSxrQ0FEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsNEJBRGdILEVMc0MvRztJQUZEO01LbkNBLGtDQURnSCxFTHNDL0c7SUFGRDtNS25DQSxrQ0FEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsNkJBRGdILEVMc0MvRyxFQUFBO0VJdUNDO0lKckRKO01LL0JFLFlBQW1CLEVMaUNwQjtJQUVEO01LL0JFLFlBQW1CLEVMaUNwQjtJQU1DO01LbkNBLGlDQURnSCxFTHNDL0c7SUFGRDtNS25DQSxrQ0FEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsNEJBRGdILEVMc0MvRztJQUZEO01LbkNBLGtDQURnSCxFTHNDL0c7SUFGRDtNS25DQSxrQ0FEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsNEJBRGdILEVMc0MvRztJQUZEO01LbkNBLGtDQURnSCxFTHNDL0c7SUFGRDtNS25DQSxrQ0FEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsNEJBRGdILEVMc0MvRztJQUZEO01LbkNBLGtDQURnSCxFTHNDL0c7SUFGRDtNS25DQSxrQ0FEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsNkJBRGdILEVMc0MvRyxFQUFBO0VJNENDO0lKMURKO01LL0JFLFlBQW1CLEVMaUNwQjtJQUVEO01LL0JFLFlBQW1CLEVMaUNwQjtJQU1DO01LbkNBLGlDQURnSCxFTHNDL0c7SUFGRDtNS25DQSxrQ0FEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsNEJBRGdILEVMc0MvRztJQUZEO01LbkNBLGtDQURnSCxFTHNDL0c7SUFGRDtNS25DQSxrQ0FEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsNEJBRGdILEVMc0MvRztJQUZEO01LbkNBLGtDQURnSCxFTHNDL0c7SUFGRDtNS25DQSxrQ0FEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsNEJBRGdILEVMc0MvRztJQUZEO01LbkNBLGtDQURnSCxFTHNDL0c7SUFGRDtNS25DQSxrQ0FEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsNkJBRGdILEVMc0MvRyxFQUFBOztBQThDSDtFQzdJTSx5QkFBNkQ7RUFBN0Qsd0JBQTZELEVEa0poRTtFSVpDO0lKT0o7TUM3SU0seUJBQTZEO01BQTdELHdCQUE2RCxFRGtKaEUsRUFBQTs7QUFJRDtFQ3RKSSx5QkFBNkQ7RUFBN0Qsd0JBQTZELEVEd0poRTtFSWxCQztJSmdCRjtNQ3RKSSx5QkFBNkQ7TUFBN0Qsd0JBQTZELEVEd0poRSxFQUFBOztBQVhIO0VDN0lNLHlCQUE2RDtFQUE3RCx3QkFBNkQsRUQ2SmhFO0VJdkJDO0lKT0o7TUM3SU0seUJBQTZEO01BQTdELHdCQUE2RCxFRDZKaEUsRUFBQTs7QU0vSkg7RUQ0REUsWUFEb0QsRUN6RHJEOztBQUZEO0VENERFLFdBRG9ELEVDekRyRDs7QUFGRDtFRDRERSxpQkFEb0QsRUN6RHJEOztBQUZEO0VENERFLFdBRG9ELEVDekRyRDs7QUFGRDtFRDRERSxXQURvRCxFQ3pEckQ7O0FBRkQ7RUQ0REUsaUJBRG9ELEVDekRyRDs7QUFGRDtFRDRERSxpQkFEb0QsRUN6RHJEOztBQUZEO0VENERFLGFBRG9ELEVDekRyRDs7QUZzSUc7RUV4SUo7SUQ0REUsWUFEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsV0FEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsaUJBRG9ELEVDekRyRDtFQUZEO0lENERFLFdBRG9ELEVDekRyRDtFQUZEO0lENERFLFdBRG9ELEVDekRyRDtFQUZEO0lENERFLGlCQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxpQkFEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsYUFEb0QsRUN6RHJELEVBQUE7O0FGc0lHO0VFeElKO0lENERFLFlBRG9ELEVDekRyRDtFQUZEO0lENERFLFdBRG9ELEVDekRyRDtFQUZEO0lENERFLGlCQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxXQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxXQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxpQkFEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsaUJBRG9ELEVDekRyRDtFQUZEO0lENERFLGFBRG9ELEVDekRyRCxFQUFBOztBRjJJRztFRTdJSjtJRDRERSxZQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxXQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxpQkFEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsV0FEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsV0FEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsaUJBRG9ELEVDekRyRDtFQUZEO0lENERFLGlCQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxhQURvRCxFQ3pEckQsRUFBQTs7QUFGRDtFRDRERSw2QkFEZ0gsRUN6RGpIOztBQUZEO0VENERFLDRCQURnSCxFQ3pEakg7O0FBRkQ7RUQ0REUsa0NBRGdILEVDekRqSDs7QUFGRDtFRDRERSw0QkFEZ0gsRUN6RGpIOztBQUZEO0VENERFLDRCQURnSCxFQ3pEakg7O0FBRkQ7RUQ0REUsa0NBRGdILEVDekRqSDs7QUFGRDtFRDRERSxrQ0FEZ0gsRUN6RGpIOztBQUZEO0VENERFLDhCQURnSCxFQ3pEakg7O0FGc0lHO0VFeElKO0lENERFLDZCQURnSCxFQ3pEakg7RUFGRDtJRDRERSw0QkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsa0NBRGdILEVDekRqSDtFQUZEO0lENERFLDRCQURnSCxFQ3pEakg7RUFGRDtJRDRERSw0QkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsa0NBRGdILEVDekRqSDtFQUZEO0lENERFLGtDQURnSCxFQ3pEakg7RUFGRDtJRDRERSw4QkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsNkJBRGdILEVDekRqSDtFQUZEO0lENERFLDRCQURnSCxFQ3pEakg7RUFGRDtJRDRERSxrQ0FEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsNEJBRGdILEVDekRqSDtFQUZEO0lENERFLDRCQURnSCxFQ3pEakg7RUFGRDtJRDRERSxrQ0FEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsa0NBRGdILEVDekRqSDtFQUZEO0lENERFLDhCQURnSCxFQ3pEakgsRUFBQTs7QUZzSUc7RUV4SUo7SUQ0REUsNkJBRGdILEVDekRqSDtFQUZEO0lENERFLDRCQURnSCxFQ3pEakg7RUFGRDtJRDRERSxrQ0FEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsNEJBRGdILEVDekRqSDtFQUZEO0lENERFLDRCQURnSCxFQ3pEakg7RUFGRDtJRDRERSxrQ0FEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsa0NBRGdILEVDekRqSDtFQUZEO0lENERFLDhCQURnSCxFQ3pEakgsRUFBQTs7QUYySUc7RUU3SUo7SUQ0REUsNkJBRGdILEVDekRqSDtFQUZEO0lENERFLDRCQURnSCxFQ3pEakg7RUFGRDtJRDRERSxrQ0FEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsNEJBRGdILEVDekRqSDtFQUZEO0lENERFLDRCQURnSCxFQ3pEakg7RUFGRDtJRDRERSxrQ0FEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsa0NBRGdILEVDekRqSDtFQUZEO0lENERFLDhCQURnSCxFQ3pEakgsRUFBQTs7QU55TUc7RU9oTkUsZ0JBQTBCO0VBQTFCLGVBQTBCLEVQa04zQjtFTy9NRDtJQUVJLGdCQUEwQjtJQUExQixlQUEwQixFQUU3QjtFQW9CSztJRnNDUixnQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFlBRG9ELEVFbkMzQztFSGdIUDtJR2xITTtNRnNDUixnQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLFdBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsV0FEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixXQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLFlBRG9ELEVFbkMzQyxFQUFBO0VIZ0hQO0lHbEhNO01Gc0NSLGdCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsV0FEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixXQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLFdBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsWUFEb0QsRUVuQzNDLEVBQUE7RUhxSFA7SUd2SE07TUZzQ1IsZ0JBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixXQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLFdBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsV0FEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixZQURvRCxFRW5DM0MsRUFBQTs7QVB5TFA7RU8vS0UsZ0JBQTBCO0VBQTFCLGVBQTBCLEVQaUwzQjtFTzlLRDtJQUVJLGlCQUE0QjtJQUE1QixnQkFBNEIsRUFFL0I7O0FIK0ZEO0VKbUVBO0lPaE5FLGdCQUEwQjtJQUExQixlQUEwQixFUGtOM0I7SU8vTUQ7TUFFSSxnQkFBMEI7TUFBMUIsZUFBMEIsRUFFN0IsRUFBQTs7QUhzSUQ7RUczSE07SUYrQ1IsZ0JBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixZQURvRCxFRTVDM0MsRUFBQTs7QUh5SFA7RUdsSE07SUZzQ1IsZ0JBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixZQURvRCxFRW5DM0MsRUFBQTs7QUhnSFA7RUdsSE07SUZzQ1IsZ0JBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixZQURvRCxFRW5DM0MsRUFBQTs7QUhxSFA7RUd2SE07SUZzQ1IsZ0JBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixZQURvRCxFRW5DM0MsRUFBQTs7QUhnSFA7RUp5RUE7SU8vS0UsZ0JBQTBCO0lBQTFCLGVBQTBCLEVQaUwzQjtJTzlLRDtNQUVJLGlCQUE0QjtNQUE1QixnQkFBNEIsRUFFL0IsRUFBQTs7QUgrRkQ7RUptRUE7SU9oTkUsZ0JBQTBCO0lBQTFCLGVBQTBCLEVQa04zQjtJTy9NRDtNQUVJLGdCQUEwQjtNQUExQixlQUEwQixFQUU3QixFQUFBOztBSHNJRDtFRzNITTtJRitDUixnQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFlBRG9ELEVFNUMzQyxFQUFBOztBSHlIUDtFRzNITTtJRitDUixnQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFlBRG9ELEVFNUMzQyxFQUFBOztBSHlIUDtFR2xITTtJRnNDUixnQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFlBRG9ELEVFbkMzQyxFQUFBOztBSHFIUDtFR3ZITTtJRnNDUixnQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFlBRG9ELEVFbkMzQyxFQUFBOztBSGdIUDtFSnlFQTtJTy9LRSxnQkFBMEI7SUFBMUIsZUFBMEIsRVBpTDNCO0lPOUtEO01BRUksaUJBQTRCO01BQTVCLGdCQUE0QixFQUUvQixFQUFBOztBSG9HRDtFSjhEQTtJT2hORSxnQkFBMEI7SUFBMUIsZUFBMEIsRVBrTjNCO0lPL01EO01BRUksZ0JBQTBCO01BQTFCLGVBQTBCLEVBRTdCLEVBQUE7O0FIMklEO0VHaElNO0lGK0NSLGdCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsWUFEb0QsRUU1QzNDLEVBQUE7O0FIOEhQO0VHaElNO0lGK0NSLGdCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsWUFEb0QsRUU1QzNDLEVBQUE7O0FIOEhQO0VHaElNO0lGK0NSLGdCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsWUFEb0QsRUU1QzNDLEVBQUE7O0FIOEhQO0VHdkhNO0lGc0NSLGdCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsWUFEb0QsRUVuQzNDLEVBQUE7O0FIcUhQO0VKb0VBO0lPL0tFLGdCQUEwQjtJQUExQixlQUEwQixFUGlMM0I7SU85S0Q7TUFFSSxpQkFBNEI7TUFBNUIsZ0JBQTRCLEVBRS9CLEVBQUE7O0FQc0xEO0VRaE9GLGdCQUE2QixFUmtPMUI7O0FBRUQ7RVFwT0Ysa0NBQTZCLEVSc08xQjs7QUFORDtFUWhPRixzQkFBNkIsRVJrTzFCOztBQUVEO0VRcE9GLHdDQUE2QixFUnNPMUI7O0FBTkQ7RVFoT0YsdUJBQTZCLEVSa08xQjs7QUFFRDtFUXBPRix5Q0FBNkIsRVJzTzFCOztBQU5EO0VRaE9GLGlCQUE2QixFUmtPMUI7O0FBRUQ7RVFwT0YsbUNBQTZCLEVSc08xQjs7QUFORDtFUWhPRix1QkFBNkIsRVJrTzFCOztBQUVEO0VRcE9GLHlDQUE2QixFUnNPMUI7O0FBTkQ7RVFoT0YsdUJBQTZCLEVSa08xQjs7QUFFRDtFUXBPRix5Q0FBNkIsRVJzTzFCOztBQU5EO0VRaE9GLGlCQUE2QixFUmtPMUI7O0FBRUQ7RVFwT0YsbUNBQTZCLEVSc08xQjs7QUFORDtFUWhPRix1QkFBNkIsRVJrTzFCOztBQUVEO0VRcE9GLHlDQUE2QixFUnNPMUI7O0FBTkQ7RVFoT0YsdUJBQTZCLEVSa08xQjs7QUFFRDtFUXBPRix5Q0FBNkIsRVJzTzFCOztBQU5EO0VRaE9GLGlCQUE2QixFUmtPMUI7O0FBRUQ7RVFwT0YsbUNBQTZCLEVSc08xQjs7QUFORDtFUWhPRix1QkFBNkIsRVJrTzFCOztBQUVEO0VRcE9GLHlDQUE2QixFUnNPMUI7O0FBTkQ7RVFoT0YsdUJBQTZCLEVSa08xQjs7QUFFRDtFUXBPRix5Q0FBNkIsRVJzTzFCOztBSTdGRDtFSnVGQTtJUWhPRixnQkFBNkIsRVJrTzFCO0VBRUQ7SVFwT0Ysa0NBQTZCLEVSc08xQjtFQU5EO0lRaE9GLHNCQUE2QixFUmtPMUI7RUFFRDtJUXBPRix3Q0FBNkIsRVJzTzFCO0VBTkQ7SVFoT0YsdUJBQTZCLEVSa08xQjtFQUVEO0lRcE9GLHlDQUE2QixFUnNPMUI7RUFORDtJUWhPRixpQkFBNkIsRVJrTzFCO0VBRUQ7SVFwT0YsbUNBQTZCLEVSc08xQjtFQU5EO0lRaE9GLHVCQUE2QixFUmtPMUI7RUFFRDtJUXBPRix5Q0FBNkIsRVJzTzFCO0VBTkQ7SVFoT0YsdUJBQTZCLEVSa08xQjtFQUVEO0lRcE9GLHlDQUE2QixFUnNPMUI7RUFORDtJUWhPRixpQkFBNkIsRVJrTzFCO0VBRUQ7SVFwT0YsbUNBQTZCLEVSc08xQjtFQU5EO0lRaE9GLHVCQUE2QixFUmtPMUI7RUFFRDtJUXBPRix5Q0FBNkIsRVJzTzFCO0VBTkQ7SVFoT0YsdUJBQTZCLEVSa08xQjtFQUVEO0lRcE9GLHlDQUE2QixFUnNPMUI7RUFORDtJUWhPRixpQkFBNkIsRVJrTzFCO0VBRUQ7SVFwT0YsbUNBQTZCLEVSc08xQjtFQU5EO0lRaE9GLHVCQUE2QixFUmtPMUI7RUFFRDtJUXBPRix5Q0FBNkIsRVJzTzFCO0VBTkQ7SVFoT0YsdUJBQTZCLEVSa08xQjtFQUVEO0lRcE9GLHlDQUE2QixFUnNPMUIsRUFBQTs7QUk3RkQ7RUp1RkE7SVFoT0YsZ0JBQTZCLEVSa08xQjtFQUVEO0lRcE9GLGtDQUE2QixFUnNPMUI7RUFORDtJUWhPRixzQkFBNkIsRVJrTzFCO0VBRUQ7SVFwT0Ysd0NBQTZCLEVSc08xQjtFQU5EO0lRaE9GLHVCQUE2QixFUmtPMUI7RUFFRDtJUXBPRix5Q0FBNkIsRVJzTzFCO0VBTkQ7SVFoT0YsaUJBQTZCLEVSa08xQjtFQUVEO0lRcE9GLG1DQUE2QixFUnNPMUI7RUFORDtJUWhPRix1QkFBNkIsRVJrTzFCO0VBRUQ7SVFwT0YseUNBQTZCLEVSc08xQjtFQU5EO0lRaE9GLHVCQUE2QixFUmtPMUI7RUFFRDtJUXBPRix5Q0FBNkIsRVJzTzFCO0VBTkQ7SVFoT0YsaUJBQTZCLEVSa08xQjtFQUVEO0lRcE9GLG1DQUE2QixFUnNPMUI7RUFORDtJUWhPRix1QkFBNkIsRVJrTzFCO0VBRUQ7SVFwT0YseUNBQTZCLEVSc08xQjtFQU5EO0lRaE9GLHVCQUE2QixFUmtPMUI7RUFFRDtJUXBPRix5Q0FBNkIsRVJzTzFCO0VBTkQ7SVFoT0YsaUJBQTZCLEVSa08xQjtFQUVEO0lRcE9GLG1DQUE2QixFUnNPMUI7RUFORDtJUWhPRix1QkFBNkIsRVJrTzFCO0VBRUQ7SVFwT0YseUNBQTZCLEVSc08xQjtFQU5EO0lRaE9GLHVCQUE2QixFUmtPMUI7RUFFRDtJUXBPRix5Q0FBNkIsRVJzTzFCLEVBQUE7O0FJeEZEO0VKa0ZBO0lRaE9GLGdCQUE2QixFUmtPMUI7RUFFRDtJUXBPRixrQ0FBNkIsRVJzTzFCO0VBTkQ7SVFoT0Ysc0JBQTZCLEVSa08xQjtFQUVEO0lRcE9GLHdDQUE2QixFUnNPMUI7RUFORDtJUWhPRix1QkFBNkIsRVJrTzFCO0VBRUQ7SVFwT0YseUNBQTZCLEVSc08xQjtFQU5EO0lRaE9GLGlCQUE2QixFUmtPMUI7RUFFRDtJUXBPRixtQ0FBNkIsRVJzTzFCO0VBTkQ7SVFoT0YsdUJBQTZCLEVSa08xQjtFQUVEO0lRcE9GLHlDQUE2QixFUnNPMUI7RUFORDtJUWhPRix1QkFBNkIsRVJrTzFCO0VBRUQ7SVFwT0YseUNBQTZCLEVSc08xQjtFQU5EO0lRaE9GLGlCQUE2QixFUmtPMUI7RUFFRDtJUXBPRixtQ0FBNkIsRVJzTzFCO0VBTkQ7SVFoT0YsdUJBQTZCLEVSa08xQjtFQUVEO0lRcE9GLHlDQUE2QixFUnNPMUI7RUFORDtJUWhPRix1QkFBNkIsRVJrTzFCO0VBRUQ7SVFwT0YseUNBQTZCLEVSc08xQjtFQU5EO0lRaE9GLGlCQUE2QixFUmtPMUI7RUFFRDtJUXBPRixtQ0FBNkIsRVJzTzFCO0VBTkQ7SVFoT0YsdUJBQTZCLEVSa08xQjtFQUVEO0lRcE9GLHlDQUE2QixFUnNPMUI7RUFORDtJUWhPRix1QkFBNkIsRVJrTzFC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SUtuQ0EsbUNBRGdILEVMc0MvRztFQUZEO0lLbkNBLDZCQURnSCxFTHNDL0c7RUFGRDtJS25DQSxtQ0FEZ0gsRUxzQy9HO0VBRkQ7SUtuQ0EsbUNBRGdILEVMc0MvRztFQUZEO0lLbkNBLDhCQURnSCxFTHNDL0c7RUl1Q0M7SUpyREo7TUsvQkUsYUFBbUIsRUxpQ3BCO0lBRUQ7TUsvQkUsYUFBbUIsRUxpQ3BCO0lBTUM7TUtuQ0Esa0NBRGdILEVMc0MvRztJQUZEO01LbkNBLG1DQURnSCxFTHNDL0c7SUFGRDtNS25DQSw2QkFEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsbUNBRGdILEVMc0MvRztJQUZEO01LbkNBLG1DQURnSCxFTHNDL0c7SUFGRDtNS25DQSw2QkFEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsbUNBRGdILEVMc0MvRztJQUZEO01LbkNBLG1DQURnSCxFTHNDL0c7SUFGRDtNS25DQSw2QkFEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsbUNBRGdILEVMc0MvRztJQUZEO01LbkNBLG1DQURnSCxFTHNDL0c7SUFGRDtNS25DQSw4QkFEZ0gsRUxzQy9HO0lBZEg7TUsvQkUsYUFBbUIsRUxpQ3BCO0lBRUQ7TUsvQkUsYUFBbUIsRUxpQ3BCO0lBTUM7TUtuQ0Esa0NBRGdILEVMc0MvRztJQUZEO01LbkNBLG1DQURnSCxFTHNDL0c7SUFGRDtNS25DQSw2QkFEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsbUNBRGdILEVMc0MvRztJQUZEO01LbkNBLG1DQURnSCxFTHNDL0c7SUFGRDtNS25DQSw2QkFEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsbUNBRGdILEVMc0MvRztJQUZEO01LbkNBLG1DQURnSCxFTHNDL0c7SUFGRDtNS25DQSw2QkFEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsbUNBRGdILEVMc0MvRztJQUZEO01LbkNBLG1DQURnSCxFTHNDL0c7SUFGRDtNS25DQSw4QkFEZ0gsRUxzQy9HLEVBQUE7RUl1Q0M7SUpyREo7TUsvQkUsYUFBbUIsRUxpQ3BCO0lBRUQ7TUsvQkUsYUFBbUIsRUxpQ3BCO0lBTUM7TUtuQ0Esa0NBRGdI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Qy9HO0VBRkQ7SUtuQ0EsbUNBRGdILEVMc0MvRztFQUZEO0lLbkNBLDhCQURnSCxFTHNDL0c7RUl1Q0M7SUpyREo7TUsvQkUsYUFBbUIsRUxpQ3BCO0lBRUQ7TUsvQkUsYUFBbUIsRUxpQ3BCO0lBTUM7TUtuQ0Esa0NBRGdILEVMc0MvRztJQUZEO01LbkNBLG1DQURnSCxFTHNDL0c7SUFGRDtNS25DQSw2QkFEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsbUNBRGdILEVMc0MvRztJQUZEO01LbkNBLG1DQURnSCxFTHNDL0c7SUFGRDtNS25DQSw2QkFEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsbUNBRGdILEVMc0MvRztJQUZEO01LbkNBLG1DQURnSCxFTHNDL0c7SUFGRDtNS25DQSw2QkFEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsbUNBRGdILEVMc0MvRztJQUZEO01LbkNBLG1DQURnSCxFTHNDL0c7SUFGRDtNS25DQSw4QkFEZ0gsRUxzQy9HO0lBZEg7TUsvQkUsYUFBbUIsRUxpQ3BCO0lBRUQ7TUsvQkUsYUFBbUIsRUxpQ3BCO0lBTUM7TUtuQ0Esa0NBRGdILEVMc0MvRztJQUZEO01LbkNBLG1DQURnSCxFTHNDL0c7SUFGRDtNS25DQSw2QkFEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsbUNBRGdILEVMc0MvRztJQUZEO01LbkNBLG1DQURnSCxFTHNDL0c7SUFGRDtNS25DQSw2QkFEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsbUNBRGdILEVMc0MvRztJQUZEO01LbkNBLG1DQURnSCxFTHNDL0c7SUFGRDtNS25DQSw2QkFEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsbUNBRGdILEVMc0MvRztJQUZEO01LbkNBLG1DQURnSCxFTHNDL0c7SUFGRDtNS25DQSw4QkFEZ0gsRUxzQy9HLEVBQUE7RUl1Q0M7SUpyREo7TUsvQkUsYUFBbUIsRUxpQ3BCO0lBRUQ7TUsvQkUsYUFBbUIsRUxpQ3BCO0lBTUM7TUtuQ0Esa0NBRGdILEVMc0MvRztJQUZEO01LbkNBLG1DQURnSCxFTHNDL0c7SUFGRDtNS25DQSw2QkFEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsbUNBRGdILEVMc0MvRztJQUZEO01LbkNBLG1DQURnSCxFTHNDL0c7SUFGRDtNS25DQSw2QkFEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsbUNBRGdILEVMc0MvRztJQUZEO01LbkNBLG1DQURnSCxFTHNDL0c7SUFGRDtNS25DQSw2QkFEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsbUNBRGdILEVMc0MvRztJQUZEO01LbkNBLG1DQURnSCxFTHNDL0c7SUFGRDtNS25DQSw4QkFEZ0gsRUxzQy9HLEVBQUE7RUk0Q0M7SUoxREo7TUsvQkUsYUFBbUIsRUxpQ3BCO0lBRUQ7TUsvQkUsYUFBbUIsRUxpQ3BCO0lBTUM7TUtuQ0Esa0NBRGdILEVMc0MvRztJQUZEO01LbkNBLG1DQURnSCxFTHNDL0c7SUFGRDtNS25DQSw2QkFEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsbUNBRGdILEVMc0MvRztJQUZEO01LbkNBLG1DQURnSCxFTHNDL0c7SUFGRDtNS25DQSw2QkFEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsbUNBRGdILEVMc0MvRztJQUZEO01LbkNBLG1DQURnSCxFTHNDL0c7SUFGRDtNS25DQSw2QkFEZ0gsRUxzQy9HO0lBRkQ7TUtuQ0EsbUNBRGdILEVMc0MvRztJQUZEO01LbkNBLG1DQURnSCxFTHNDL0c7SUFGRDtNS25DQSw4QkFEZ0gsRUxzQy9HLEVBQUE7O0FBbVREO0VTL1lJLCtCQUFtQyxFVGladEM7RUk5UUM7SUo0UUY7TVMvWUksK0JBQW1DLEVUaVp0QyxFQUFBO0VJOVFDO0lKNFFGO01TL1lJLCtCQUFtQyxFVGladEMsRUFBQTtFSXpRQztJSnVRRjtNUy9ZSSwrQkFBbUMsRVRpWnRDLEVBQUE7O0FJOVFDO0VKZ1JBO0lTblpFLCtCQUFtQyxFVHFacEMsRUFBQTs7QUlsUkQ7RUpnUkE7SVNuWkUsK0JBQW1DLEVUcVpwQyxFQUFBOztBSTdRRDtFSjJRQTtJU25aRSwrQkFBbUMsRVRxWnBDLEVBQUE7O0FVeFhMO0VBQ0UseUJBQXdCLEVBQ3pCOztBQUVEO0VBQ0UsbUJBQWtCLEVBQ25COztBTnFHRztFTXZGRjtJQTFC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LG9CQUFtQjtJQUNuQixlNURINkIsRTRESTlCO0VBWkY7SUFjRyxtQkFBa0I7SUFDbEIsWUFBVztJQUNYLFNBQVE7SUFDUixzQ0FBNkI7SUFBN0IsOEJBQTZCO0lBQzdCLFlBQVc7SUFDWCxhQUFZLEVBQ2I7O0FBRUg7RUFDRSwyQkFBMkMsRUFDNUM7O0FBQ0Q7RUFDRSxxQkFBYTtFQUFiLHFCQUFhO0VBQWIsY0FBYTtFQUNiLCtCQUFtQjtFQUFuQiw4QkFBbUI7RUFBbkIsd0JBQW1CO0VBQW5CLG9CQUFtQjtFQUNuQiwwQkFBbUI7RUFBbkIsdUJBQW1CO0VBQW5CLG9CQUFtQjtFQUNuQix5QkFBdUI7RUFBdkIsc0JBQXVCO0VBQXZCLHdCQUF1QjtFQUN2Qiw4QkFBNkI7RUFDN0IscUJBQStCO0VBQy9CLHNCQUE2QixFQUM5QiIsImZpbGUiOiJtYWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gICAgICAgICAgICAgICAgICAgIG9vXHJcblxyXG44OGQ4Yi5kOGIuIC5kODg4OGIuIGRQIDg4ZDg4OGIuXHJcbjg4J2A4OCdgODggODgnICBgODggODggODgnICBgODhcclxuODggIDg4ICA4OCA4OC4gIC44OCA4OCA4OCAgICA4OFxyXG5kUCAgZFAgIGRQIGA4ODg4OFA4IGRQIGRQICAgIGRQXHJcblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuLjg4ODhiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRQICAgICAgICAgICAgZFAgICBvb1xyXG44OCAgIFwiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDg4ICAgICAgICAgICAgODhcclxuODhhYWEgIC5kODg4OGIuIGRQICAgIGRQIDg4ZDg4OGIuIC5kODg4Yjg4IC5kODg4OGIuIGQ4ODg4UCBkUCAuZDg4ODhiLiA4OGQ4ODhiLlxyXG44OCAgICAgODgnICBgODggODggICAgODggODgnICBgODggODgnICBgODggODgnICBgODggICA4OCAgIDg4IDg4JyAgYDg4IDg4JyAgYDg4XHJcbjg4ICAgICA4OC4gIC44OCA4OC4gIC44OCA4OCAgICA4OCA4OC4gIC44OCA4OC4gIC44OCAgIDg4ICAgODggODguICAuODggODggICAgODhcclxuZFAgICAgIGA4ODg4OFAnIGA4ODg4OFAnIGRQICAgIGRQIGA4ODg4OFA4IGA4ODg4OFA4ICAgZFAgICBkUCBgODg4ODhQJyBkUCAgICBkUFxyXG5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiovXG4vKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbiAqIFZlcnNpb24gNi41LjNcbiAqIGZvdW5kYXRpb24uenVyYi5jb21cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuICovXG5AaW1wb3J0IHVybChcImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Sb2JvdG86NDAwLDUwMCw3MDAsOTAwXCIpO1xuLmdyaWQtY29udGFpbmVyIHtcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgbWF4LXdpZHRoOiA3OC43NXJlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5ncmlkLWNvbnRhaW5lci5mbHVpZCB7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgICAgLmdyaWQtY29udGFpbmVyLmZsdWlkIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5ncmlkLWNvbnRhaW5lci5mdWxsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi5ncmlkLXgge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG5cbi5jZWxsIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIG1pbi1oZWlnaHQ6IDBweDtcbiAgbWluLXdpZHRoOiAwcHg7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5jZWxsLmF1dG8ge1xuICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgLmNlbGwuc2hyaW5rIHtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuXG4uZ3JpZC14ID4gLmF1dG8ge1xuICB3aWR0aDogYXV0bzsgfVxuXG4uZ3JpZC14ID4gLnNocmluayB7XG4gIHdpZHRoOiBhdXRvOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtc2hyaW5rLCAuZ3JpZC14ID4gLnNtYWxsLWZ1bGwsIC5ncmlkLXggPiAuc21hbGwtMSwgLmdyaWQteCA+IC5zbWFsbC0yLCAuZ3JpZC14ID4gLnNtYWxsLTMsIC5ncmlkLXggPiAuc21hbGwtNCwgLmdyaWQteCA+IC5zbWFsbC01LCAuZ3JpZC14ID4gLnNtYWxsLTYsIC5ncmlkLXggPiAuc21hbGwtNywgLmdyaWQteCA+IC5zbWFsbC04LCAuZ3JpZC14ID4gLnNtYWxsLTksIC5ncmlkLXggPiAuc21hbGwtMTAsIC5ncmlkLXggPiAuc21hbGwtMTEsIC5ncmlkLXggPiAuc21hbGwtMTIge1xuICBmbGV4LWJhc2lzOiBhdXRvOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gIC5ncmlkLXggPiAubWVkaXVtLXNocmluaywgLmdyaWQteCA+IC5tZWRpdW0tZnVsbCwgLmdyaWQteCA+IC5tZWRpdW0tMSwgLmdyaWQteCA+IC5tZWRpdW0tMiwgLmdyaWQteCA+IC5tZWRpdW0tMywgLmdyaWQteCA+IC5tZWRpdW0tNCwgLmdyaWQteCA+IC5tZWRpdW0tNSwgLmdyaWQteCA+IC5tZWRpdW0tNiwgLmdyaWQteCA+IC5tZWRpdW0tNywgLmdyaWQteCA+IC5tZWRpdW0tOCwgLmdyaWQteCA+IC5tZWRpdW0tOSwgLmdyaWQteCA+IC5tZWRpdW0tMTAsIC5ncmlkLXggPiAubWVkaXVtLTExLCAuZ3JpZC14ID4gLm1lZGl1bS0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuZ3JpZC14ID4gLmxhcmdlLXNocmluaywgLmdyaWQteCA+IC5sYXJnZS1mdWxsLCAuZ3JpZC14ID4gLmxhcmdlLTEsIC5ncmlkLXggPiAubGFyZ2UtMiwgLmdyaWQteCA+IC5sYXJnZS0zLCAuZ3JpZC14ID4gLmxhcmdlLTQsIC5ncmlkLXggPiAubGFyZ2UtNSwgLmdyaWQteCA+IC5sYXJnZS02LCAuZ3JpZC14ID4gLmxhcmdlLTcsIC5ncmlkLXggPiAubGFyZ2UtOCwgLmdyaWQteCA+IC5sYXJnZS05LCAuZ3JpZC14ID4gLmxhcmdlLTEwLCAuZ3JpZC14ID4gLmxhcmdlLTExLCAuZ3JpZC14ID4gLmxhcmdlLTEyIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC14ID4gLnhsYXJnZS1zaHJpbmssIC5ncmlkLXggPiAueGxhcmdlLWZ1bGwsIC5ncmlkLXggPiAueGxhcmdlLTEsIC5ncmlkLXggPiAueGxhcmdlLTIsIC5ncmlkLXggPiAueGxhcmdlLTMsIC5ncmlkLXggPiAueGxhcmdlLTQsIC5ncmlkLXggPiAueGxhcmdlLTUsIC5ncmlkLXggPiAueGxhcmdlLTYsIC5ncmlkLXggPiAueGxhcmdlLTcsIC5ncmlkLXggPiAueGxhcmdlLTgsIC5ncmlkLXggPiAueGxhcmdlLTksIC5ncmlkLXggPiAueGxhcmdlLTEwLCAuZ3JpZC14ID4gLnhsYXJnZS0xMSwgLmdyaWQteCA+IC54bGFyZ2UtMTIge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTEsIC5ncmlkLXggPiAuc21hbGwtMiwgLmdyaWQteCA+IC5zbWFsbC0zLCAuZ3JpZC14ID4gLnNtYWxsLTQsIC5ncmlkLXggPiAuc21hbGwtNSwgLmdyaWQteCA+IC5zbWFsbC02LCAuZ3JpZC14ID4gLnNtYWxsLTcsIC5ncmlkLXggPiAuc21hbGwtOCwgLmdyaWQteCA+IC5zbWFsbC05LCAuZ3JpZC14ID4gLnNtYWxsLTEwLCAuZ3JpZC14ID4gLnNtYWxsLTExLCAuZ3JpZC14ID4gLnNtYWxsLTEyIHtcbiAgZmxleDogMCAwIGF1dG87IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xIHtcbiAgd2lkdGg6IDguMzMzMzMlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMiB7XG4gIHdpZHRoOiAxNi42NjY2NyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0zIHtcbiAgd2lkdGg6IDI1JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTQge1xuICB3aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtNSB7XG4gIHdpZHRoOiA0MS42NjY2NyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC02IHtcbiAgd2lkdGg6IDUwJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTcge1xuICB3aWR0aDogNTguMzMzMzMlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtOCB7XG4gIHdpZHRoOiA2Ni42NjY2NyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC05IHtcbiAgd2lkdGg6IDc1JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTEwIHtcbiAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTExIHtcbiAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTEyIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIHtcbiAgLmdyaWQteCA+IC5tZWRpdW0tYXV0byB7XG4gICAgZmxleDogMSAxIDBweDtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS1zaHJpbmssIC5ncmlkLXggPiAubWVkaXVtLTEsIC5ncmlkLXggPiAubWVkaXVtLTIsIC5ncmlkLXggPiAubWVkaXVtLTMsIC5ncmlkLXggPiAubWVkaXVtLTQsIC5ncmlkLXggPiAubWVkaXVtLTUsIC5ncmlkLXggPiAubWVkaXVtLTYsIC5ncmlkLXggPiAubWVkaXVtLTcsIC5ncmlkLXggPiAubWVkaXVtLTgsIC5ncmlkLXggPiAubWVkaXVtLTksIC5ncmlkLXggPiAubWVkaXVtLTEwLCAuZ3JpZC14ID4gLm1lZGl1bS0xMSwgLmdyaWQteCA+IC5tZWRpdW0tMTIge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLXNocmluayB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmdyaWQteCA+IC5sYXJnZS1hdXRvIHtcbiAgICBmbGV4OiAxIDEgMHB4O1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAubGFyZ2Utc2hyaW5rLCAuZ3JpZC14ID4gLmxhcmdlLTEsIC5ncmlkLXggPiAubGFyZ2UtMiwgLmdyaWQteCA+IC5sYXJnZS0zLCAuZ3JpZC14ID4gLmxhcmdlLTQsIC5ncmlkLXggPiAubGFyZ2UtNSwgLmdyaWQteCA+IC5sYXJnZS02LCAuZ3JpZC14ID4gLmxhcmdlLTcsIC5ncmlkLXggPiAubGFyZ2UtOCwgLmdyaWQteCA+IC5sYXJnZS05LCAuZ3JpZC14ID4gLmxhcmdlLTEwLCAuZ3JpZC14ID4gLmxhcmdlLTExLCAuZ3JpZC14ID4gLmxhcmdlLTEyIHtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLXNocmluayB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLXggPiAueGxhcmdlLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC54bGFyZ2Utc2hyaW5rLCAuZ3JpZC14ID4gLnhsYXJnZS0xLCAuZ3JpZC14ID4gLnhsYXJnZS0yLCAuZ3JpZC14ID4gLnhsYXJnZS0zLCAuZ3JpZC14ID4gLnhsYXJnZS00LCAuZ3JpZC14ID4gLnhsYXJnZS01LCAuZ3JpZC14ID4gLnhsYXJnZS02LCAuZ3JpZC14ID4gLnhsYXJnZS03LCAuZ3JpZC14ID4gLnhsYXJnZS04LCAuZ3JpZC14ID4gLnhsYXJnZS05LCAuZ3JpZC14ID4gLnhsYXJnZS0xMCwgLmdyaWQteCA+IC54bGFyZ2UtMTEsIC5ncmlkLXggPiAueGxhcmdlLTEyIHtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS1zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLmdyaWQtbWFyZ2luLXg6bm90KC5ncmlkLXgpID4gLmNlbGwge1xuICB3aWR0aDogYXV0bzsgfVxuXG4uZ3JpZC1tYXJnaW4teTpub3QoLmdyaWQteSkgPiAuY2VsbCB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uZ3JpZC1tYXJnaW4teCB7XG4gIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCB7XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14ID4gLmNlbGwge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmF1dG8ge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNocmluayB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMSB7XG4gICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTMge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTYge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC03IHtcbiAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiBjYWxjKDc1JSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMCB7XG4gICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTIge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5hdXRvIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc2hyaW5rIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMSB7XG4gICAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC00IHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC03IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMCB7XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLWF1dG8ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEge1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNCB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNyB7XG4gICAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMTAge1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLXNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTEge1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTMge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNCB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTYge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNyB7XG4gICAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTkge1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTAge1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtMSB7XG4gICAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS0zIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS00IHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS02IHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS03IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS05IHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS0xMCB7XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTEyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH0gfVxuXG4uZ3JpZC1wYWRkaW5nLXggLmdyaWQtcGFkZGluZy14IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteCAuZ3JpZC1wYWRkaW5nLXgge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuXG4uZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+IC5ncmlkLXBhZGRpbmcteCB7XG4gIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIHtcbiAgICAuZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+IC5ncmlkLXBhZGRpbmcteCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG5cbi5ncmlkLXBhZGRpbmcteCA+IC5jZWxsIHtcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteCA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cblxuLnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5zbWFsbC11cC0yID4gLmNlbGwge1xuICB3aWR0aDogNTAlOyB9XG5cbi5zbWFsbC11cC0zID4gLmNlbGwge1xuICB3aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC11cC00ID4gLmNlbGwge1xuICB3aWR0aDogMjUlOyB9XG5cbi5zbWFsbC11cC01ID4gLmNlbGwge1xuICB3aWR0aDogMjAlOyB9XG5cbi5zbWFsbC11cC02ID4gLmNlbGwge1xuICB3aWR0aDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC11cC03ID4gLmNlbGwge1xuICB3aWR0aDogMTQuMjg1NzElOyB9XG5cbi5zbWFsbC11cC04ID4gLmNlbGwge1xuICB3aWR0aDogMTIuNSU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIHtcbiAgLm1lZGl1bS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5tZWRpdW0tdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjAlOyB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTQuMjg1NzElOyB9XG4gIC5tZWRpdW0tdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTIuNSU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmxhcmdlLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmxhcmdlLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDIwJTsgfVxuICAubGFyZ2UtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLmxhcmdlLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEyLjUlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAueGxhcmdlLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnhsYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnhsYXJnZS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnhsYXJnZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgLnhsYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLnhsYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMi41JTsgfSB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMiA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC00ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNSA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMjAlIC0gMS44NzVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTYgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC03ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxLjg3NXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtOCA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMTIuNSUgLSAxLjg3NXJlbSk7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDEuODc1cmVtKTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDEuODc1cmVtKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDEuODc1cmVtKTsgfSB9XG5cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2Uge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMSB7XG4gICAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0yIHtcbiAgICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0zIHtcbiAgICAgIHdpZHRoOiAyNSU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS00IHtcbiAgICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS01IHtcbiAgICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHtcbiAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS03IHtcbiAgICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS04IHtcbiAgICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS05IHtcbiAgICAgIHdpZHRoOiA3NSU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMCB7XG4gICAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTEge1xuICAgICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEyIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHtcbiAgICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMiB7XG4gICAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHtcbiAgICAgIHdpZHRoOiAyNSU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQge1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7XG4gICAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS02IHtcbiAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTcge1xuICAgICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOCB7XG4gICAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICAgIHdpZHRoOiA3NSU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTExIHtcbiAgICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEge1xuICAgICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMiB7XG4gICAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMyB7XG4gICAgICB3aWR0aDogMjUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNCB7XG4gICAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNSB7XG4gICAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNiB7XG4gICAgICB3aWR0aDogNTAlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNyB7XG4gICAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOCB7XG4gICAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOSB7XG4gICAgICB3aWR0aDogNzUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTAge1xuICAgICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTExIHtcbiAgICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMiB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5zbWFsbC1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuICAuc21hbGwtcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIHtcbiAgLm1lZGl1bS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAubWVkaXVtLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmxhcmdlLXBhZGRpbmctY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5sYXJnZS1wYWRkaW5nLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAueGxhcmdlLXBhZGRpbmctY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC54bGFyZ2UtcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuXG4uc21hbGwtb2Zmc2V0LTAge1xuICBtYXJnaW4tbGVmdDogMCU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTAge1xuICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDAuOTM3NXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAwLjkzNzVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTQge1xuICBtYXJnaW4tbGVmdDogY2FsYygzMy4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTUge1xuICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtNiB7XG4gIG1hcmdpbi1sZWZ0OiA1MCU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAwLjkzNzVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogY2FsYyg1OC4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiA3NSU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAwLjkzNzVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDgzLjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoOTEuNjY2NjclICsgMC45Mzc1cmVtKTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAubWVkaXVtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDAuOTM3NXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAwLjkzNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygzMy4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAwLjkzNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1OC4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAwLjkzNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDgzLjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOTEuNjY2NjclICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAubGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMCUgKyAwLjkzNzVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMC45Mzc1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMC45Mzc1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNzUlICsgMC45Mzc1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOTEuNjY2NjclICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnhsYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMCUgKyAwLjkzNzVyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjclICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMzMuMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjclICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjclICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNzUlICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY3JSArIDAuOTM3NXJlbSk7IH0gfVxuXG4uZ3JpZC15IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwOyB9XG4gIC5ncmlkLXkgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIC5ncmlkLXkgPiAuYXV0byB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLXkgPiAuc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQteSA+IC5zbWFsbC1zaHJpbmssIC5ncmlkLXkgPiAuc21hbGwtZnVsbCwgLmdyaWQteSA+IC5zbWFsbC0xLCAuZ3JpZC15ID4gLnNtYWxsLTIsIC5ncmlkLXkgPiAuc21hbGwtMywgLmdyaWQteSA+IC5zbWFsbC00LCAuZ3JpZC15ID4gLnNtYWxsLTUsIC5ncmlkLXkgPiAuc21hbGwtNiwgLmdyaWQteSA+IC5zbWFsbC03LCAuZ3JpZC15ID4gLnNtYWxsLTgsIC5ncmlkLXkgPiAuc21hbGwtOSwgLmdyaWQteSA+IC5zbWFsbC0xMCwgLmdyaWQteSA+IC5zbWFsbC0xMSwgLmdyaWQteSA+IC5zbWFsbC0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bzsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgIC5ncmlkLXkgPiAubWVkaXVtLXNocmluaywgLmdyaWQteSA+IC5tZWRpdW0tZnVsbCwgLmdyaWQteSA+IC5tZWRpdW0tMSwgLmdyaWQteSA+IC5tZWRpdW0tMiwgLmdyaWQteSA+IC5tZWRpdW0tMywgLmdyaWQteSA+IC5tZWRpdW0tNCwgLmdyaWQteSA+IC5tZWRpdW0tNSwgLmdyaWQteSA+IC5tZWRpdW0tNiwgLmdyaWQteSA+IC5tZWRpdW0tNywgLmdyaWQteSA+IC5tZWRpdW0tOCwgLmdyaWQteSA+IC5tZWRpdW0tOSwgLmdyaWQteSA+IC5tZWRpdW0tMTAsIC5ncmlkLXkgPiAubWVkaXVtLTExLCAuZ3JpZC15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgLmdyaWQteSA+IC5sYXJnZS1zaHJpbmssIC5ncmlkLXkgPiAubGFyZ2UtZnVsbCwgLmdyaWQteSA+IC5sYXJnZS0xLCAuZ3JpZC15ID4gLmxhcmdlLTIsIC5ncmlkLXkgPiAubGFyZ2UtMywgLmdyaWQteSA+IC5sYXJnZS00LCAuZ3JpZC15ID4gLmxhcmdlLTUsIC5ncmlkLXkgPiAubGFyZ2UtNiwgLmdyaWQteSA+IC5sYXJnZS03LCAuZ3JpZC15ID4gLmxhcmdlLTgsIC5ncmlkLXkgPiAubGFyZ2UtOSwgLmdyaWQteSA+IC5sYXJnZS0xMCwgLmdyaWQteSA+IC5sYXJnZS0xMSwgLmdyaWQteSA+IC5sYXJnZS0xMiB7XG4gICAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLXkgPiAueGxhcmdlLXNocmluaywgLmdyaWQteSA+IC54bGFyZ2UtZnVsbCwgLmdyaWQteSA+IC54bGFyZ2UtMSwgLmdyaWQteSA+IC54bGFyZ2UtMiwgLmdyaWQteSA+IC54bGFyZ2UtMywgLmdyaWQteSA+IC54bGFyZ2UtNCwgLmdyaWQteSA+IC54bGFyZ2UtNSwgLmdyaWQteSA+IC54bGFyZ2UtNiwgLmdyaWQteSA+IC54bGFyZ2UtNywgLmdyaWQteSA+IC54bGFyZ2UtOCwgLmdyaWQteSA+IC54bGFyZ2UtOSwgLmdyaWQteSA+IC54bGFyZ2UtMTAsIC5ncmlkLXkgPiAueGxhcmdlLTExLCAuZ3JpZC15ID4gLnhsYXJnZS0xMiB7XG4gICAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0xLCAuZ3JpZC15ID4gLnNtYWxsLTIsIC5ncmlkLXkgPiAuc21hbGwtMywgLmdyaWQteSA+IC5zbWFsbC00LCAuZ3JpZC15ID4gLnNtYWxsLTUsIC5ncmlkLXkgPiAuc21hbGwtNiwgLmdyaWQteSA+IC5zbWFsbC03LCAuZ3JpZC15ID4gLnNtYWxsLTgsIC5ncmlkLXkgPiAuc21hbGwtOSwgLmdyaWQteSA+IC5zbWFsbC0xMCwgLmdyaWQteSA+IC5zbWFsbC0xMSwgLmdyaWQteSA+IC5zbWFsbC0xMiB7XG4gICAgZmxleDogMCAwIGF1dG87IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0xIHtcbiAgICBoZWlnaHQ6IDguMzMzMzMlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMiB7XG4gICAgaGVpZ2h0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0zIHtcbiAgICBoZWlnaHQ6IDI1JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTQge1xuICAgIGhlaWdodDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtNSB7XG4gICAgaGVpZ2h0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC02IHtcbiAgICBoZWlnaHQ6IDUwJTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTcge1xuICAgIGhlaWdodDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtOCB7XG4gICAgaGVpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC05IHtcbiAgICBoZWlnaHQ6IDc1JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTEwIHtcbiAgICBoZWlnaHQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTExIHtcbiAgICBoZWlnaHQ6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTEyIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIHtcbiAgICAuZ3JpZC15ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS1zaHJpbmssIC5ncmlkLXkgPiAubWVkaXVtLTEsIC5ncmlkLXkgPiAubWVkaXVtLTIsIC5ncmlkLXkgPiAubWVkaXVtLTMsIC5ncmlkLXkgPiAubWVkaXVtLTQsIC5ncmlkLXkgPiAubWVkaXVtLTUsIC5ncmlkLXkgPiAubWVkaXVtLTYsIC5ncmlkLXkgPiAubWVkaXVtLTcsIC5ncmlkLXkgPiAubWVkaXVtLTgsIC5ncmlkLXkgPiAubWVkaXVtLTksIC5ncmlkLXkgPiAubWVkaXVtLTEwLCAuZ3JpZC15ID4gLm1lZGl1bS0xMSwgLmdyaWQteSA+IC5tZWRpdW0tMTIge1xuICAgICAgZmxleDogMCAwIGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMSB7XG4gICAgICBoZWlnaHQ6IDguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMiB7XG4gICAgICBoZWlnaHQ6IDE2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTMge1xuICAgICAgaGVpZ2h0OiAyNSU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS00IHtcbiAgICAgIGhlaWdodDogMzMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tNSB7XG4gICAgICBoZWlnaHQ6IDQxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTYge1xuICAgICAgaGVpZ2h0OiA1MCU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS03IHtcbiAgICAgIGhlaWdodDogNTguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tOCB7XG4gICAgICBoZWlnaHQ6IDY2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTkge1xuICAgICAgaGVpZ2h0OiA3NSU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0xMCB7XG4gICAgICBoZWlnaHQ6IDgzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTExIHtcbiAgICAgIGhlaWdodDogOTEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMTIge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgLmdyaWQteSA+IC5sYXJnZS1hdXRvIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLXNocmluaywgLmdyaWQteSA+IC5sYXJnZS0xLCAuZ3JpZC15ID4gLmxhcmdlLTIsIC5ncmlkLXkgPiAubGFyZ2UtMywgLmdyaWQteSA+IC5sYXJnZS00LCAuZ3JpZC15ID4gLmxhcmdlLTUsIC5ncmlkLXkgPiAubGFyZ2UtNiwgLmdyaWQteSA+IC5sYXJnZS03LCAuZ3JpZC15ID4gLmxhcmdlLTgsIC5ncmlkLXkgPiAubGFyZ2UtOSwgLmdyaWQteSA+IC5sYXJnZS0xMCwgLmdyaWQteSA+IC5sYXJnZS0xMSwgLmdyaWQteSA+IC5sYXJnZS0xMiB7XG4gICAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2Utc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IDguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0yIHtcbiAgICAgIGhlaWdodDogMTYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0zIHtcbiAgICAgIGhlaWdodDogMjUlOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS00IHtcbiAgICAgIGhlaWdodDogMzMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS01IHtcbiAgICAgIGhlaWdodDogNDEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS02IHtcbiAgICAgIGhlaWdodDogNTAlOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS03IHtcbiAgICAgIGhlaWdodDogNTguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS04IHtcbiAgICAgIGhlaWdodDogNjYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS05IHtcbiAgICAgIGhlaWdodDogNzUlOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IDgzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiA5MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogMTAwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC15ID4gLnhsYXJnZS1hdXRvIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS1zaHJpbmssIC5ncmlkLXkgPiAueGxhcmdlLTEsIC5ncmlkLXkgPiAueGxhcmdlLTIsIC5ncmlkLXkgPiAueGxhcmdlLTMsIC5ncmlkLXkgPiAueGxhcmdlLTQsIC5ncmlkLXkgPiAueGxhcmdlLTUsIC5ncmlkLXkgPiAueGxhcmdlLTYsIC5ncmlkLXkgPiAueGxhcmdlLTcsIC5ncmlkLXkgPiAueGxhcmdlLTgsIC5ncmlkLXkgPiAueGxhcmdlLTksIC5ncmlkLXkgPiAueGxhcmdlLTEwLCAuZ3JpZC15ID4gLnhsYXJnZS0xMSwgLmdyaWQteSA+IC54bGFyZ2UtMTIge1xuICAgICAgZmxleDogMCAwIGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IDguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IDE2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiAyNSU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS00IHtcbiAgICAgIGhlaWdodDogMzMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IDQxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiA1MCU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS03IHtcbiAgICAgIGhlaWdodDogNTguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IDY2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiA3NSU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IDgzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogOTEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuLmdyaWQtcGFkZGluZy15IC5ncmlkLXBhZGRpbmcteSB7XG4gIG1hcmdpbi10b3A6IC0wLjkzNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IC0wLjkzNzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkgLmdyaWQtcGFkZGluZy15IHtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMC45Mzc1cmVtOyB9IH1cblxuLmdyaWQtcGFkZGluZy15ID4gLmNlbGwge1xuICBwYWRkaW5nLXRvcDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC45Mzc1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy15ID4gLmNlbGwge1xuICAgICAgcGFkZGluZy10b3A6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwLjkzNzVyZW07IH0gfVxuXG4uZ3JpZC1tYXJnaW4teSB7XG4gIG1hcmdpbi10b3A6IC0wLjkzNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IC0wLjkzNzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTAuOTM3NXJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICAgIG1hcmdpbi10b3A6IDAuOTM3NXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luLXRvcDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH0gfVxuXG4uZ3JpZC1mcmFtZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwdnc7IH1cblxuLmNlbGwgLmdyaWQtZnJhbWUge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uY2VsbC1ibG9jayB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuXG4uY2VsbC1ibG9jay15IHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuXG4uY2VsbC1ibG9jay1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtaGVpZ2h0OiAxMDAlOyB9XG4gIC5jZWxsLWJsb2NrLWNvbnRhaW5lciA+IC5ncmlkLXgge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIHtcbiAgLm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogMTAwdnc7IH1cbiAgLmNlbGwgLm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubWVkaXVtLWNlbGwtYmxvY2sge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuICAubWVkaXVtLWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAgIC5tZWRpdW0tY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAubWVkaXVtLWNlbGwtYmxvY2steSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogMTAwdnc7IH1cbiAgLmNlbGwgLmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5sYXJnZS1jZWxsLWJsb2NrIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cbiAgLmxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAgIC5sYXJnZS1jZWxsLWJsb2NrLWNvbnRhaW5lciA+IC5ncmlkLXgge1xuICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG4gIC5sYXJnZS1jZWxsLWJsb2NrLXkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogMTAwdnc7IH1cbiAgLmNlbGwgLnhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAueGxhcmdlLWNlbGwtYmxvY2sge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuICAueGxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAgIC54bGFyZ2UtY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAueGxhcmdlLWNlbGwtYmxvY2steSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9IH1cblxuLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgd2lkdGg6IGF1dG87XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBoZWlnaHQ6IDEwMHZoOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gIC5ncmlkLXkubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGhlaWdodDogMTAwdmg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmdyaWQteS5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IDEwMHZoOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC15LnhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IDEwMHZoOyB9IH1cblxuLmNlbGwgLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gIC5jZWxsIC5ncmlkLXkubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuY2VsbCAuZ3JpZC15LmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNlbGwgLmdyaWQteS54bGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuLmdyaWQtbWFyZ2luLXkge1xuICBtYXJnaW4tdG9wOiAtMC45Mzc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMC45Mzc1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkge1xuICAgICAgbWFyZ2luLXRvcDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0wLjkzNzVyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW4tdG9wOiAwLjkzNzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuY2VsbCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbi10b3A6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQge1xuICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9IH1cblxuLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gIGhlaWdodDogY2FsYygxMDB2aCArIDEuODc1cmVtKTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgIC5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS44NzVyZW0pOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjg3NXJlbSk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjg3NXJlbSk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAuZ3JpZC1tYXJnaW4teS5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS44NzVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5ncmlkLW1hcmdpbi15LmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCArIDEuODc1cmVtKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkueGxhcmdlLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCArIDEuODc1cmVtKTsgfSB9XG5cbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzMuNzQ4NzVlbSkge1xuICAuaGlkZS1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMGVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gIC5zaG93LWZvci1zbWFsbC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMy43NDg3NWVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIGFuZCAobWF4LXdpZHRoOiA0Ni44NzM3NWVtKSB7XG4gIC5oaWRlLWZvci1tZWRpdW0tb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzMuNzQ4NzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLnNob3ctZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmhpZGUtZm9yLWxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ni44NzM3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ni44NzM3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaG93LWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5oaWRlLWZvci14bGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLnNob3ctZm9yLXhsYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtYXgtd2lkdGg6IDc2Ljg3Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLXhsYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3Ni44NzVlbSkge1xuICAuc2hvdy1mb3IteGxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi5zaG93LWZvci1zcixcbi5zaG93LW9uLWZvY3VzIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDA7IH1cblxuLnNob3ctb24tZm9jdXM6YWN0aXZlLCAuc2hvdy1vbi1mb2N1czpmb2N1cyB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IH1cblxuLnNob3ctZm9yLWxhbmRzY2FwZSxcbi5oaWRlLWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAgIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gICAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi5oaWRlLWZvci1sYW5kc2NhcGUsXG4uc2hvdy1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG5cbi8qISBub3JtYWxpemUtc2NzcyB8IE1JVC9HUEx2MiBMaWNlbnNlIHwgYml0Lmx5L25vcm1hbGl6ZS1zY3NzICovXG4vKiBEb2N1bWVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpblxuICAgICAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAgICAgKi9cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi8gfVxuXG4vKiBTZWN0aW9uc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5hcnRpY2xlLFxuYXNpZGUsXG5mb290ZXIsXG5oZWFkZXIsXG5uYXYsXG5zZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gICAgICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAgICAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gICAgICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5maWdjYXB0aW9uLFxuZmlndXJlIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxuICAgICAqL1xuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDsgfVxuXG4vKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAgICAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICAgICAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqLyB9XG5cbi8qIExpbmtzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICAgKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gICAgICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0cztcbiAgLyogMiAqLyB9XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctIGFuZCBGaXJlZm94IDM5LS5cbiAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LlxuICAgICAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0OyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gICAgICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICAgICAqL1xuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBiYWNrZ3JvdW5kIGFuZCBjb2xvciBpbiBJRSA5LS5cbiAgICAgKi9cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICBjb2xvcjogIzAwMDsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7IH1cblxuLyoqXG4gICAgICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gICAgICogYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07IH1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07IH1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbmF1ZGlvLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAgICAgKi9cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDsgfVxuXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbiAgICAgKi9cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgfVxuXG4vKipcbiAgICAgKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKiBGb3Jtc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAgICAgKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAgICAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAgICAgKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLyoqXG4gICAgICogMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4gICAgICogICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAgICovXG5idXR0b24sXG5odG1sIFt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDIgKi8gfVxuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC8qKlxuICAgICAgICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAgICAgICAqL1xuICAvKipcbiAgICAgICAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAgICAgICAqLyB9XG4gIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDsgfVxuICBidXR0b246LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0OyB9XG5cbi8qKlxuICAgICAqIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gICAgICovXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICAgICAqL1xuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gICAgICovXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAgICAqL1xuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLyogMiAqL1xuICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gICAgICAgKi8gfVxuICBbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbiwgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAgICAgKi9cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICAgICAqL1xuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07IH1cblxuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gICAgICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAgICAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMyAqL1xuICBjb2xvcjogaW5oZXJpdDtcbiAgLyogMiAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAvKiAxICovIH1cblxuLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAgICAgKi9cbnByb2dyZXNzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gICAgICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi8qIEludGVyYWN0aXZlXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxuICAgICAqL1xuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgfVxuXG4vKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xubWVudSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qIFNjcmlwdGluZ1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbmNhbnZhcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBIaWRkZW5cbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICAgICAqL1xuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIFNsaWRlciAqL1xuLnNsaWNrLXNsaWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4uc2xpY2stbGlzdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuICAuc2xpY2stbGlzdDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuICAuc2xpY2stbGlzdC5kcmFnZ2luZyB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGN1cnNvcjogaGFuZDsgfVxuXG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cblxuLnNsaWNrLXRyYWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIC5zbGljay10cmFjazpiZWZvcmUsIC5zbGljay10cmFjazphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAuc2xpY2stdHJhY2s6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbGljay1sb2FkaW5nIC5zbGljay10cmFjayB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGljay1zbGlkZSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBbZGlyPVwicnRsXCJdIC5zbGljay1zbGlkZSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5zbGljay1zbGlkZSBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuc2xpY2stc2xpZGUuc2xpY2stbG9hZGluZyBpbWcge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnNsaWNrLXNsaWRlLmRyYWdnaW5nIGltZyB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXNsaWRlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLnNsaWNrLXZlcnRpY2FsIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XG5cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIFNsaWRlciAqL1xuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLWxpc3Qge1xuICBiYWNrZ3JvdW5kOiAjZmZmIHVybChcIi4vYWpheC1sb2FkZXIuZ2lmXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0OyB9XG5cbi8qIEljb25zICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9zbGljay5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvc2xpY2suZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvc2xpY2sud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9zbGljay50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL3NsaWNrLnN2ZyNzbGlja1wiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG4vKiBBcnJvd3MgKi9cbi5zbGljay1wcmV2LFxuLnNsaWNrLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDIwcHg7XG4gIHdpZHRoOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMHB4O1xuICBmb250LXNpemU6IDBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lOyB9XG4gIC5zbGljay1wcmV2OmhvdmVyLCAuc2xpY2stcHJldjpmb2N1cyxcbiAgLnNsaWNrLW5leHQ6aG92ZXIsXG4gIC5zbGljay1uZXh0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5zbGljay1wcmV2OmhvdmVyOmJlZm9yZSwgLnNsaWNrLXByZXY6Zm9jdXM6YmVmb3JlLFxuICAgIC5zbGljay1uZXh0OmhvdmVyOmJlZm9yZSxcbiAgICAuc2xpY2stbmV4dDpmb2N1czpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAuc2xpY2stcHJldi5zbGljay1kaXNhYmxlZDpiZWZvcmUsXG4gIC5zbGljay1uZXh0LnNsaWNrLWRpc2FibGVkOmJlZm9yZSB7XG4gICAgb3BhY2l0eTogMC4yNTsgfVxuICAuc2xpY2stcHJldjpiZWZvcmUsXG4gIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIG9wYWNpdHk6IDAuNzU7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG4uc2xpY2stcHJldiB7XG4gIGxlZnQ6IC0yNXB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IC0yNXB4OyB9XG4gIC5zbGljay1wcmV2OmJlZm9yZSB7XG4gICAgY29udGVudDogXCLihpBcIjsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnNsaWNrLXByZXY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwi4oaSXCI7IH1cblxuLnNsaWNrLW5leHQge1xuICByaWdodDogLTI1cHg7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuc2xpY2stbmV4dCB7XG4gICAgbGVmdDogLTI1cHg7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIuKGklwiOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgICAgY29udGVudDogXCLihpBcIjsgfVxuXG4vKiBEb3RzICovXG4uc2xpY2stZG90dGVkLnNsaWNrLXNsaWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cblxuLnNsaWNrLWRvdHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMjRweDtcbiAgbGVmdDogNTAlO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiBhdXRvO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTsgfVxuICAuc2xpY2stZG90cyBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgbWFyZ2luOiAwIDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAuc2xpY2stZG90cyBsaSBidXR0b24ge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgICBmb250LXNpemU6IDBweDtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmhvdmVyLCAuc2xpY2stZG90cyBsaSBidXR0b246Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lOyB9XG4gICAgICAgIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpob3ZlcjpiZWZvcmUsIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpmb2N1czpiZWZvcmUge1xuICAgICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAgIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgY29udGVudDogXCLigKJcIjtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgICAgICAgZm9udC1zaXplOiA4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gICAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG4gICAgLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgb3BhY2l0eTogMC43NTsgfVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbmRQICAgICAgICAgICAgICAgIGRQXHJcbjg4ICAgICAgICAgICAgICAgIDg4XHJcbjg4ZDg4OGIuIC5kODg4OGIuIDg4IDg4ZDg4OGIuIC5kODg4OGIuIDg4ZDg4OGIuIC5kODg4OGIuXHJcbjg4JyAgYDg4IDg4b29vb2Q4IDg4IDg4JyAgYDg4IDg4b29vb2Q4IDg4JyAgYDg4IFk4b29vb28uXHJcbjg4ICAgIDg4IDg4LiAgLi4uIDg4IDg4LiAgLjg4IDg4LiAgLi4uIDg4ICAgICAgICAgICAgIDg4XHJcbmRQICAgIGRQIGA4ODg4OFAnIGRQIDg4WTg4OFAnIGA4ODg4OFAnIGRQICAgICAgIGA4ODg4OFAnXHJcbiAgICAgICAgICAgICAgICAgICAgIDg4XHJcblx0XHRcdFx0XHQgZFBcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAgX18gIF9fICAgICAgICAgICAgICAgX18gIF9fICAgICAgICAgICAgICAgXyAgIF8gICAgX19fX1xyXG5VfCcgXFwvICd8dSAgIF9fXyAgICAgICBcXCBcXC9cIi8gICAgICBfX18gICAgIHwgXFwgfFwifCAgLyBfX1wifCB1XHJcblxcfCB8XFwvfCB8LyAgfF9cIl98ICAgICAgL1xcICAvXFwgICAgIHxfXCJffCAgIDx8ICBcXHwgfD48XFxfX18gXFwvXHJcbiB8IHwgIHwgfCAgICB8IHwgICAgICBVIC8gIFxcIHUgICAgIHwgfCAgICBVfCB8XFwgIHx1IHVfX18pIHxcclxuIHxffCAgfF98ICBVL3wgfFxcdSAgICAgL18vXFxfXFwgICAgVS98IHxcXHUgICB8X3wgXFxffCAgfF9fX18vPj5cclxuPDwsLSwsLS4uLSxffF9fX3xfLC0uLC0sPj4gXFxcXF8uLSxffF9fX3xfLC0ufHwgICBcXFxcLC0uKSggIChfXylcclxuICguLyAgXFwuKVxcXyktJyAnLShfLyAgXFxfKSAgKF9fKVxcXyktJyAnLShfLyAoX1wiKSAgKF8vKF9fKVxyXG5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKlxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBGb250c1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuRm9udC1mYWNlIG1peGluIGV4YW1wbGU6XHJcblxyXG5AaW5jbHVkZSBmb250LWZhY2UoT3B0aW1hLCAnLi4vZm9udHMvT3B0aW1hLUV4dHJhQmxhY2snLCA5MDAsIG5vcm1hbCwgZW90IHdvZmYgb3RmKTtcclxuXHJcbiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbiAgICAgICAgICAgICAgICAgIGRQXHJcbiAgICAgICAgICAgICAgICAgIDg4XHJcbi5kODg4OGIuIC5kODg4OGIuIDg4IC5kODg4OGIuIDg4ZDg4OGIuIC5kODg4OGIuXHJcbjg4JyAgYFwiXCIgODgnICBgODggODggODgnICBgODggODgnICBgODggWThvb29vby5cclxuODguICAuLi4gODguICAuODggODggODguICAuODggODggICAgICAgICAgICAgODhcclxuYDg4ODg4UCcgYDg4ODg4UCcgZFAgYDg4ODg4UCcgZFAgICAgICAgYDg4ODg4UCdcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICBfXyAgICAgICAgICAgICBfXHJcbiAvIF98IF9fXyAgXyBfXyB8IHxfIF9fX1xyXG58IHxfIC8gXyBcXHwgJ18gXFx8IF9fLyBfX3xcclxufCAgX3wgKF8pIHwgfCB8IHwgfF9cXF9fIFxcXHJcbnxffCAgXFxfX18vfF98IHxffFxcX198X19fL1xyXG5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qXHJcblx0Zm9udC1zaXplc1xyXG4qL1xuLmZfX2gxIHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxpbmUtaGVpZ2h0OiAwLjAwMXJlbTtcbiAgd29yZC1icmVhazogYnJlYWstd29yZDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgIC5mX19oMSB7XG4gICAgICBmb250LXNpemU6IDMuMzc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDQuMTE3NXJlbTsgfSB9XG5cbi5mX19oMiB7XG4gIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAyLjI1NzVyZW07XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7IH1cblxuLmZfX2gzIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMS42MjVyZW07XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIHtcbiAgICAuZl9faDMge1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS44NzVyZW07IH0gfVxuXG4uZl9faDQsXG4uZl9faDUge1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMS4zNzVyZW07XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIHtcbiAgICAuZl9faDQsXG4gICAgLmZfX2g1IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTsgfSB9XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuICBkUFxyXG4gIDg4XHJcbmQ4ODg4UCAuZDg4ODhiLiAuZDg4ODhiLiAuZDg4ODhiLlxyXG4gIDg4ICAgODgnICBgODggODgnICBgODggWThvb29vby5cclxuICA4OCAgIDg4LiAgLjg4IDg4LiAgLjg4ICAgICAgIDg4XHJcbiAgZFAgICBgODg4ODhQOCBgODg4OFA4OCBgODg4ODhQJ1xyXG4gICAgICAgICAgICAgICAgICAgICAuODhcclxuXHRcdFx0XHQgZDg4ODhQXHJcblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbmJvZHkge1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiAjNGE1MDU4O1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAwLjEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luOiAwIDAgMCAwO1xuICBwYWRkaW5nOiAzLjY4NzVyZW0gMCAwIDA7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAzMDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgIGJvZHkge1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjc1cmVtOyB9IH1cbiAgYm9keSAqLFxuICBib2R5ICo6YmVmb3JlLFxuICBib2R5ICo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbGluZS1oZWlnaHQ6IDEuNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgYm9keSB7XG4gICAgICBwYWRkaW5nOiA1LjYyNXJlbSAwIDAgMDsgfSB9XG5cbi5iZy1saWdodC1ibHVlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZWNmMTsgfVxuXG4uYmctd2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsgfVxuXG4uYmctZ3JhZGllbnQtZGFyay1ncmF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI0MjcyYjsgfVxuXG4uZWxlbWVudC1idXR0b24td3JhcHBlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAtNXB4IC01cHggLTVweCAtNXB4O1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB6LWluZGV4OiAxMDsgfVxuICAuZWxlbWVudC1idXR0b24td3JhcHBlciAuZWxlbWVudC1idXR0b24ge1xuICAgIGNsZWFyOiBub25lO1xuICAgIG1hcmdpbjogNXB4IDVweCA1cHggNXB4OyB9XG5cbi5lbGVtZW50LWJ1dHRvbiB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBib3JkZXItd2lkdGg6IDA7XG4gIGNsZWFyOiBib3RoO1xuICBjb2xvcjogd2hpdGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDU2MjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAwLjg3NXJlbTtcbiAgbWFyZ2luOiAwIDAgMCAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgbWluLWhlaWdodDogMi41cmVtO1xuICBwYWRkaW5nOiAwIDI0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRyYW5zaXRpb246IGFsbCAxMDBtcyBlYXNlO1xuICB3aWR0aDogMTAwJTtcbiAgLypcclxuXHRcdHNvbGlkXHJcblx0Ki8gfVxuICAuZWxlbWVudC1idXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGdyZXk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5lbGVtZW50LWJ1dHRvbjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuICAuZWxlbWVudC1idXR0b246YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZ3JleTsgfVxuICAuZWxlbWVudC1idXR0b246ZGlzYWJsZWQ6aG92ZXIsIC5lbGVtZW50LWJ1dHRvbjpkaXNhYmxlZDpmb2N1cywgLmVsZW1lbnQtYnV0dG9uOmRpc2FibGVkOmFjdGl2ZSwgLmVsZW1lbnQtYnV0dG9uLmlzLS1kaXNhYmxlZDpob3ZlciwgLmVsZW1lbnQtYnV0dG9uLmlzLS1kaXNhYmxlZDpmb2N1cywgLmVsZW1lbnQtYnV0dG9uLmlzLS1kaXNhYmxlZDphY3RpdmUge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgLmVsZW1lbnQtYnV0dG9uLmhhcy0taWNvbiB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZzogMCAyNHB4IDAgNDRweDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gICAgLmVsZW1lbnQtYnV0dG9uLmhhcy0taWNvbiAuaWNvbiB7XG4gICAgICBsZWZ0OiAtMTNweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtN3B4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAtMXB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gICAgLmVsZW1lbnQtYnV0dG9uIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9IH1cbiAgLmVsZW1lbnQtYnV0dG9uLmlzLS1zb2xpZCwgLmVsZW1lbnQtYnV0dG9uLmlzLS1zb2xpZC0tZGVmYXVsdCwgLmVsZW1lbnQtYnV0dG9uLmlzLS1zb2xpZC0tYmxhY2sge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLmVsZW1lbnQtYnV0dG9uLmlzLS1zb2xpZDpkaXNhYmxlZCwgLmVsZW1lbnQtYnV0dG9uLmlzLS1zb2xpZDpkaXNhYmxlZDpob3ZlciwgLmVsZW1lbnQtYnV0dG9uLmlzLS1zb2xpZDpkaXNhYmxlZDpmb2N1cywgLmVsZW1lbnQtYnV0dG9uLmlzLS1zb2xpZDpkaXNhYmxlZDphY3RpdmUsIC5lbGVtZW50LWJ1dHRvbi5pcy0tc29saWQuaXMtLWRpc2FibGVkLCAuZWxlbWVudC1idXR0b24uaXMtLXNvbGlkLmlzLS1kaXNhYmxlZDpob3ZlciwgLmVsZW1lbnQtYnV0dG9uLmlzLS1zb2xpZC5pcy0tZGlzYWJsZWQ6Zm9jdXMsIC5lbGVtZW50LWJ1dHRvbi5pcy0tc29saWQuaXMtLWRpc2FibGVkOmFjdGl2ZSwgLmVsZW1lbnQtYnV0dG9uLmlzLS1zb2xpZC0tZGVmYXVsdDpkaXNhYmxlZCwgLmVsZW1lbnQtYnV0dG9uLmlzLS1zb2xpZC0tZGVmYXVsdDpkaXNhYmxlZDpob3ZlciwgLmVsZW1lbnQtYnV0dG9uLmlzLS1zb2xpZC0tZGVmYXVsdDpkaXNhYmxlZDpmb2N1cywgLmVsZW1lbnQtYnV0dG9uLmlzLS1zb2xpZC0tZGVmYXVsdDpkaXNhYmxlZDphY3RpdmUsIC5lbGVtZW50LWJ1dHRvbi5pcy0tc29saWQtLWRlZmF1bHQuaXMtLWRpc2FibGVkLCAuZWxlbWVudC1idXR0b24uaXMtLXNvbGlkLS1kZWZhdWx0LmlzLS1kaXNhYmxlZDpob3ZlciwgLmVsZW1lbnQtYnV0dG9uLmlzLS1zb2xpZC0tZGVmYXVsdC5pcy0tZGlzYWJsZWQ6Zm9jdXMsIC5lbGVtZW50LWJ1dHRvbi5pcy0tc29saWQtLWRlZmF1bHQuaXMtLWRpc2FibGVkOmFjdGl2ZSwgLmVsZW1lbnQtYnV0dG9uLmlzLS1zb2xpZC0tYmxhY2s6ZGlzYWJsZWQsIC5lbGVtZW50LWJ1dHRvbi5pcy0tc29saWQtLWJsYWNrOmRpc2FibGVkOmhvdmVyLCAuZWxlbWVudC1idXR0b24uaXMtLXNvbGlkLS1ibGFjazpkaXNhYmxlZDpmb2N1cywgLmVsZW1lbnQtYnV0dG9uLmlzLS1zb2xpZC0tYmxhY2s6ZGlzYWJsZWQ6YWN0aXZlLCAuZWxlbWVudC1idXR0b24uaXMtLXNvbGlkLS1ibGFjay5pcy0tZGlzYWJsZWQsIC5lbGVtZW50LWJ1dHRvbi5pcy0tc29saWQtLWJsYWNrLmlzLS1kaXNhYmxlZDpob3ZlciwgLmVsZW1lbnQtYnV0dG9uLmlzLS1zb2xpZC0tYmxhY2suaXMtLWRpc2FibGVkOmZvY3VzLCAuZWxlbWVudC1idXR0b24uaXMtLXNvbGlkLS1ibGFjay5pcy0tZGlzYWJsZWQ6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4NjhFOTY7IH1cbiAgICAuZWxlbWVudC1idXR0b24uaXMtLXNvbGlkOmhvdmVyLCAuZWxlbWVudC1idXR0b24uaXMtLXNvbGlkLS1kZWZhdWx0OmhvdmVyLCAuZWxlbWVudC1idXR0b24uaXMtLXNvbGlkLS1ibGFjazpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjazsgfVxuICAgIC5lbGVtZW50LWJ1dHRvbi5pcy0tc29saWQ6YWN0aXZlLCAuZWxlbWVudC1idXR0b24uaXMtLXNvbGlkLS1kZWZhdWx0OmFjdGl2ZSwgLmVsZW1lbnQtYnV0dG9uLmlzLS1zb2xpZC0tYmxhY2s6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrOyB9XG4gIC5lbGVtZW50LWJ1dHRvbi5pcy0tc29saWQtLXRyYW5zcGFyZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcbiAgICBjb2xvcjogYmxhY2s7IH1cbiAgICAuZWxlbWVudC1idXR0b24uaXMtLXNvbGlkLS10cmFuc3BhcmVudDpkaXNhYmxlZCwgLmVsZW1lbnQtYnV0dG9uLmlzLS1zb2xpZC0tdHJhbnNwYXJlbnQ6ZGlzYWJsZWQ6aG92ZXIsIC5lbGVtZW50LWJ1dHRvbi5pcy0tc29saWQtLXRyYW5zcGFyZW50OmRpc2FibGVkOmZvY3VzLCAuZWxlbWVudC1idXR0b24uaXMtLXNvbGlkLS10cmFuc3BhcmVudDpkaXNhYmxlZDphY3RpdmUsIC5lbGVtZW50LWJ1dHRvbi5pcy0tc29saWQtLXRyYW5zcGFyZW50LmlzLS1kaXNhYmxlZCwgLmVsZW1lbnQtYnV0dG9uLmlzLS1zb2xpZC0tdHJhbnNwYXJlbnQuaXMtLWRpc2FibGVkOmhvdmVyLCAuZWxlbWVudC1idXR0b24uaXMtLXNvbGlkLS10cmFuc3BhcmVudC5pcy0tZGlzYWJsZWQ6Zm9jdXMsIC5lbGVtZW50LWJ1dHRvbi5pcy0tc29saWQtLXRyYW5zcGFyZW50LmlzLS1kaXNhYmxlZDphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzg2OEU5NjsgfVxuICAgIC5lbGVtZW50LWJ1dHRvbi5pcy0tc29saWQtLXRyYW5zcGFyZW50OmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7IH1cbiAgICAuZWxlbWVudC1idXR0b24uaXMtLXNvbGlkLS10cmFuc3BhcmVudDphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NjY2NjYzsgfVxuXG4uYnV0dG9uLWNsb3NlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogMDtcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3V0bGluZTogbm9uZTsgfVxuICAuYnV0dG9uLWNsb3NlIC5pY29uLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjZWQ0ZGE7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG5cbi5idXR0b24tbW9yZS1saW5rIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luOiAwIDAgMCAwO1xuICBwYWRkaW5nOiAwIDAgMCAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMS42M3JlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogI2RmMmQyODtcbiAgdHJhbnNpdGlvbjogYWxsIDE1MG1zIGVhc2U7IH1cbiAgLmJ1dHRvbi1tb3JlLWxpbms6aG92ZXIge1xuICAgIGNvbG9yOiAjYjkyMDFiOyB9XG4gICAgLmJ1dHRvbi1tb3JlLWxpbms6aG92ZXIgLmljb24tYXJyb3ctcmVkIHBhdGgge1xuICAgICAgZmlsbDogI2I5MjAxYjsgfVxuICAuYnV0dG9uLW1vcmUtbGluay5pcy0td2hpdGUge1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5idXR0b24tbW9yZS1saW5rLmlzLS13aGl0ZTpob3ZlciB7XG4gICAgICBjb2xvcjogI2Q5ZDlkOTsgfVxuICAgICAgLmJ1dHRvbi1tb3JlLWxpbmsuaXMtLXdoaXRlOmhvdmVyIC5pY29uLWFycm93LXdoaXRlIHBhdGgge1xuICAgICAgICBmaWxsOiAjZDlkOWQ5OyB9XG4gIC5idXR0b24tbW9yZS1saW5rLmlzLS1ibGFjayB7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgICAuYnV0dG9uLW1vcmUtbGluay5pcy0tYmxhY2s6aG92ZXIge1xuICAgICAgY29sb3I6ICMzMDMwMzA7IH1cbiAgICAgIC5idXR0b24tbW9yZS1saW5rLmlzLS1ibGFjazpob3ZlciAuaWNvbi1hcnJvdy13aGl0ZSBwYXRoIHtcbiAgICAgICAgZmlsbDogIzMwMzAzMDsgfVxuICAuYnV0dG9uLW1vcmUtbGluay5pcy0tc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5idXR0b24tbW9yZS1saW5rLnRleHQtdXBwZXJjYXNlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIC5idXR0b24tbW9yZS1saW5rIC5pY29uLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHdpZHRoOiAxNHB4O1xuICAgIGhlaWdodDogMTBweDtcbiAgICBtYXJnaW46IDAgMCAwIDAuNXJlbTsgfVxuXG4uYnV0dG9uLXNoYXJlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4zNzI1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luOiAwIDAgMCBhdXRvO1xuICBwYWRkaW5nOiAwIDAgMCAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCAxcHggdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAgIC5idXR0b24tc2hhcmUge1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwLjc1MjVyZW07IH0gfVxuICAuYnV0dG9uLXNoYXJlOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIC5idXR0b24tc2hhcmU6aG92ZXIge1xuICAgIG9wYWNpdHk6IC43OyB9XG4gIC5idXR0b24tc2hhcmUgLmljb24tY29udGFpbmVyIHtcbiAgICB3aWR0aDogMThweDtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1hcmdpbjogMCAwLjVyZW0gMCAwOyB9XG4gICAgLmJ1dHRvbi1zaGFyZSAuaWNvbi1jb250YWluZXIgLmljb24ge1xuICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICBoZWlnaHQ6IDI0cHg7IH1cblxuLmVsZW1lbnQtY2hlY2tib3hfX3dyYXBwZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmVsZW1lbnQtY2hlY2tib3hfX3dyYXBwZXIgaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuZWxlbWVudC1jaGVja2JveF9fd3JhcHBlciBpbnB1dFt0eXBlPWNoZWNrYm94XSArIGxhYmVsIHtcbiAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBsaW5lLWhlaWdodDogMS4zNzVyZW07XG4gICAgICBtYXJnaW46IDAgMjVweCAwIDA7XG4gICAgICBtaW4taGVpZ2h0OiAxLjM3NXJlbTtcbiAgICAgIHBhZGRpbmc6IDAgMCAxMnB4IDI3cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMTAwbXMgZWFzZTtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgb3ZlcmZsb3c6IGluaXRpYWw7XG4gICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IH1cbiAgICAgIC5lbGVtZW50LWNoZWNrYm94X193cmFwcGVyIGlucHV0W3R5cGU9Y2hlY2tib3hdICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrO1xuICAgICAgICBoZWlnaHQ6IDE3cHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAycHg7XG4gICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAxMDBtcyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDEwMG1zIGVhc2U7XG4gICAgICAgIHdpZHRoOiAxN3B4OyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMy43NDg3NWVtKSB7XG4gICAgICAgIC5lbGVtZW50LWNoZWNrYm94X193cmFwcGVyIGlucHV0W3R5cGU9Y2hlY2tib3hdICsgbGFiZWwge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICAuZWxlbWVudC1jaGVja2JveF9fd3JhcHBlciBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVuO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi8uLi9pbWFnZXMvc3ZnL2NoZWNrLXdoaXRlLnN2Z1wiKTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDExcHg7XG4gICAgICBib3JkZXItY29sb3I6IGdyZWVuOyB9XG4gICAgLmVsZW1lbnQtY2hlY2tib3hfX3dyYXBwZXIgaW5wdXRbdHlwZT1jaGVja2JveF06ZGlzYWJsZWQgKyBsYWJlbCB7XG4gICAgICBjb2xvcjogbGlnaHRncmV5OyB9XG4gICAgICAuZWxlbWVudC1jaGVja2JveF9fd3JhcHBlciBpbnB1dFt0eXBlPWNoZWNrYm94XTpkaXNhYmxlZCArIGxhYmVsOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyZXk7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIG9wYWNpdHk6IC4zOyB9XG4gIC5lbGVtZW50LWNoZWNrYm94X193cmFwcGVyIGxhYmVsOm5vdChbZm9yXSkge1xuICAgIG1hcmdpbi1ib3R0b206IDExcHg7IH1cbiAgLmVsZW1lbnQtY2hlY2tib3hfX3dyYXBwZXIgLmVsZW1lbnQtY2hlY2tib3hfX2NvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAgIC5lbGVtZW50LWNoZWNrYm94X193cmFwcGVyIC5lbGVtZW50LWNoZWNrYm94X19jb250YWluZXIuaXMtLWNoZWNrYm94LWxpc3Qge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cblxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiwgaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgbWFyZ2luOiAwOyB9XG5cbi5lbGVtZW50LWlucHV0LmlzLS1pbnZhbGlkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjhmODtcbiAgYm9yZGVyLWNvbG9yOiAjZmY2YjZiOyB9XG5cbi5lbGVtZW50LWlucHV0X19kZXNjcmlwdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4uZWxlbWVudC1pbnB1dCxcbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuaW5wdXRbdHlwZT1cImRhdGVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0sXG5pbnB1dFt0eXBlPVwid2Vla1wiXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG5pbnB1dFt0eXBlPVwidGVsXCJdLFxuaW5wdXRbdHlwZT1cInRpbWVcIl0sXG5pbnB1dFt0eXBlPVwidXJsXCJdLFxuaW5wdXRbdHlwZT1cImNvbG9yXCJdIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcbiAgYm94LXNoYWRvdzogMDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY29sb3I6IGJsYWNrO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBoZWlnaHQ6IDQwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW46IDAgMCAwIDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDEycHg7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB0cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmVsZW1lbnQtaW5wdXQ6cmVhZC1vbmx5Om5vdChbcmVhZC1vbmx5PVwiZmFsc2VcIl0pLFxuICBpbnB1dFt0eXBlPVwidGV4dFwiXTpyZWFkLW9ubHk6bm90KFtyZWFkLW9ubHk9XCJmYWxzZVwiXSksXG4gIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpyZWFkLW9ubHk6bm90KFtyZWFkLW9ubHk9XCJmYWxzZVwiXSksXG4gIGlucHV0W3R5cGU9XCJkYXRlXCJdOnJlYWQtb25seTpub3QoW3JlYWQtb25seT1cImZhbHNlXCJdKSxcbiAgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdOnJlYWQtb25seTpub3QoW3JlYWQtb25seT1cImZhbHNlXCJdKSxcbiAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdOnJlYWQtb25seTpub3QoW3JlYWQtb25seT1cImZhbHNlXCJdKSxcbiAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdOnJlYWQtb25seTpub3QoW3JlYWQtb25seT1cImZhbHNlXCJdKSxcbiAgaW5wdXRbdHlwZT1cIndlZWtcIl06cmVhZC1vbmx5Om5vdChbcmVhZC1vbmx5PVwiZmFsc2VcIl0pLFxuICBpbnB1dFt0eXBlPVwiZW1haWxcIl06cmVhZC1vbmx5Om5vdChbcmVhZC1vbmx5PVwiZmFsc2VcIl0pLFxuICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOnJlYWQtb25seTpub3QoW3JlYWQtb25seT1cImZhbHNlXCJdKSxcbiAgaW5wdXRbdHlwZT1cInRlbFwiXTpyZWFkLW9ubHk6bm90KFtyZWFkLW9ubHk9XCJmYWxzZVwiXSksXG4gIGlucHV0W3R5cGU9XCJ0aW1lXCJdOnJlYWQtb25seTpub3QoW3JlYWQtb25seT1cImZhbHNlXCJdKSxcbiAgaW5wdXRbdHlwZT1cInVybFwiXTpyZWFkLW9ubHk6bm90KFtyZWFkLW9ubHk9XCJmYWxzZVwiXSksXG4gIGlucHV0W3R5cGU9XCJjb2xvclwiXTpyZWFkLW9ubHk6bm90KFtyZWFkLW9ubHk9XCJmYWxzZVwiXSkge1xuICAgIGNvbG9yOiAjYjFiMWIxOyB9XG4gIC5lbGVtZW50LWlucHV0OjotbXMtY2xlYXIsXG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOjotbXMtY2xlYXIsXG4gIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTo6LW1zLWNsZWFyLFxuICBpbnB1dFt0eXBlPVwiZGF0ZVwiXTo6LW1zLWNsZWFyLFxuICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl06Oi1tcy1jbGVhcixcbiAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdOjotbXMtY2xlYXIsXG4gIGlucHV0W3R5cGU9XCJtb250aFwiXTo6LW1zLWNsZWFyLFxuICBpbnB1dFt0eXBlPVwid2Vla1wiXTo6LW1zLWNsZWFyLFxuICBpbnB1dFt0eXBlPVwiZW1haWxcIl06Oi1tcy1jbGVhcixcbiAgaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LW1zLWNsZWFyLFxuICBpbnB1dFt0eXBlPVwidGVsXCJdOjotbXMtY2xlYXIsXG4gIGlucHV0W3R5cGU9XCJ0aW1lXCJdOjotbXMtY2xlYXIsXG4gIGlucHV0W3R5cGU9XCJ1cmxcIl06Oi1tcy1jbGVhcixcbiAgaW5wdXRbdHlwZT1cImNvbG9yXCJdOjotbXMtY2xlYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmVsZW1lbnQtaW5wdXQ6bm90KC5pcy0taW52YWxpZCk6Zm9jdXMsXG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOm5vdCguaXMtLWludmFsaWQpOmZvY3VzLFxuICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06bm90KC5pcy0taW52YWxpZCk6Zm9jdXMsXG4gIGlucHV0W3R5cGU9XCJkYXRlXCJdOm5vdCguaXMtLWludmFsaWQpOmZvY3VzLFxuICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl06bm90KC5pcy0taW52YWxpZCk6Zm9jdXMsXG4gIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXTpub3QoLmlzLS1pbnZhbGlkKTpmb2N1cyxcbiAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdOm5vdCguaXMtLWludmFsaWQpOmZvY3VzLFxuICBpbnB1dFt0eXBlPVwid2Vla1wiXTpub3QoLmlzLS1pbnZhbGlkKTpmb2N1cyxcbiAgaW5wdXRbdHlwZT1cImVtYWlsXCJdOm5vdCguaXMtLWludmFsaWQpOmZvY3VzLFxuICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOm5vdCguaXMtLWludmFsaWQpOmZvY3VzLFxuICBpbnB1dFt0eXBlPVwidGVsXCJdOm5vdCguaXMtLWludmFsaWQpOmZvY3VzLFxuICBpbnB1dFt0eXBlPVwidGltZVwiXTpub3QoLmlzLS1pbnZhbGlkKTpmb2N1cyxcbiAgaW5wdXRbdHlwZT1cInVybFwiXTpub3QoLmlzLS1pbnZhbGlkKTpmb2N1cyxcbiAgaW5wdXRbdHlwZT1cImNvbG9yXCJdOm5vdCguaXMtLWludmFsaWQpOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlci1jb2xvcjogIzk4YTBhOTsgfVxuICAuZWxlbWVudC1pbnB1dDpwbGFjZWhvbGRlcixcbiAgaW5wdXRbdHlwZT1cInRleHRcIl06cGxhY2Vob2xkZXIsXG4gIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpwbGFjZWhvbGRlcixcbiAgaW5wdXRbdHlwZT1cImRhdGVcIl06cGxhY2Vob2xkZXIsXG4gIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXTpwbGFjZWhvbGRlcixcbiAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdOnBsYWNlaG9sZGVyLFxuICBpbnB1dFt0eXBlPVwibW9udGhcIl06cGxhY2Vob2xkZXIsXG4gIGlucHV0W3R5cGU9XCJ3ZWVrXCJdOnBsYWNlaG9sZGVyLFxuICBpbnB1dFt0eXBlPVwiZW1haWxcIl06cGxhY2Vob2xkZXIsXG4gIGlucHV0W3R5cGU9XCJudW1iZXJcIl06cGxhY2Vob2xkZXIsXG4gIGlucHV0W3R5cGU9XCJ0ZWxcIl06cGxhY2Vob2xkZXIsXG4gIGlucHV0W3R5cGU9XCJ0aW1lXCJdOnBsYWNlaG9sZGVyLFxuICBpbnB1dFt0eXBlPVwidXJsXCJdOnBsYWNlaG9sZGVyLFxuICBpbnB1dFt0eXBlPVwiY29sb3JcIl06cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiBibGFjazsgfVxuXG4vKlxyXG48bGFiZWwgZm9yPVwiaW5wdXRYWFwiIGNsYXNzPVwiZWxlbWVudC1sYWJlbFwiPlRoaXMgaXMgYW4gZXhhbXBsZSBvZiBhIGxhYmVsIHdpdGggbGFiZWwgc3R5bGluZzwvbGFiZWw+XHJcbiovXG4uZWxlbWVudC1sYWJlbCB7XG4gIG1hcmdpbjogMCAwIDAgMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwIDAgMCAwO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiBibGFjaztcbiAgbGluZS1oZWlnaHQ6IDEuMzc1cmVtO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgfVxuICAuZWxlbWVudC1sYWJlbCArIFtjbGFzc149XCJlbGVtZW50LVwiXSB7XG4gICAgbWFyZ2luLXRvcDogOHB4OyB9XG5cbi8qXHJcbjxhIGhyZWY9XCIjXCIgY2xhc3M9XCJlbGVtZW50LWxpbmsgZWxlbWVudC1saW5rLS1hcnJvd1wiPkZhbmN5IGljb24gbGluazwvYT5cclxuKi9cbi5lbGVtZW50LWxpbmsge1xuICBjb2xvcjogYmxhY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdHJhbnNpdGlvbjogY29sb3IgMTAwbXMgZWFzZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLmVsZW1lbnQtbGluazpob3ZlciwgLmVsZW1lbnQtbGluazphY3RpdmUge1xuICAgIGNvbG9yOiBzdGVlbGJsdWU7IH1cbiAgLmVsZW1lbnQtbGluay0tYXJyb3cge1xuICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMnB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5lbGVtZW50LWxpbmstLWFycm93OjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHBzOi8vY2RuLm9ubGluZXdlYmZvbnRzLmNvbS9zdmcvaW1nXzQ0Nzc3My5wbmdcIik7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICBtYXJnaW46IDAgMCAwIDEwcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0cmFuc2l0aW9uOiBtYXJnaW4gMTUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICB3aWR0aDogMS4zNzVyZW07IH1cbiAgICAuZWxlbWVudC1saW5rLS1hcnJvdzpob3Zlcjo6YWZ0ZXIge1xuICAgICAgbWFyZ2luOiAwIDAgMCA1cHg7IH1cbiAgLmVsZW1lbnQtbGluay0tbm8tZGVjb3JhdGlvbiB7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDEwMG1zIGVhc2U7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgLmVsZW1lbnQtbGluay0tbm8tZGVjb3JhdGlvbjpob3ZlciwgLmVsZW1lbnQtbGluay0tbm8tZGVjb3JhdGlvbjphY3RpdmUge1xuICAgICAgY29sb3I6IHN0ZWVsYmx1ZTsgfVxuICAgIC5lbGVtZW50LWxpbmstLW5vLWRlY29yYXRpb246aG92ZXIsIC5lbGVtZW50LWxpbmstLW5vLWRlY29yYXRpb246YWN0aXZlIHtcbiAgICAgIGNvbG9yOiBzdGVlbGJsdWU7IH1cblxuLmVsZW1lbnQtbGlzdC0tdW5vcmRlcmVkIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICB3aWR0aDogMTAwJTsgfVxuICAuZWxlbWVudC1saXN0LS11bm9yZGVyZWQgbGkge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuZWxlbWVudC1saXN0LS11bm9yZGVyZWQgbGkgKyBsaSB7XG4gICAgICBtYXJnaW4tdG9wOiAxMnB4OyB9XG4gICAgLmVsZW1lbnQtbGlzdC0tdW5vcmRlcmVkIGxpID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuZWxlbWVudC1saXN0LS11bm9yZGVyZWQgbGkgbGkge1xuICAgICAgbWFyZ2luLXRvcDogNXB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gICAgLmVsZW1lbnQtbGlzdC0tdW5vcmRlcmVkIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH0gfVxuICAuZWxlbWVudC1saXN0LS11bm9yZGVyZWQgbGk6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDZweDtcbiAgICBtYXJnaW46IDAgMCAwIDA7XG4gICAgd2lkdGg6IDhweDtcbiAgICBoZWlnaHQ6IDhweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDsgfVxuXG4uZWxlbWVudC1saXN0LS1vcmRlcmVkIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgY291bnRlci1yZXNldDogbGk7IH1cbiAgLmVsZW1lbnQtbGlzdC0tb3JkZXJlZCBsaSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5lbGVtZW50LWxpc3QtLW9yZGVyZWQgbGkgKyBsaSB7XG4gICAgICBtYXJnaW4tdG9wOiAxMnB4OyB9XG4gICAgLmVsZW1lbnQtbGlzdC0tb3JkZXJlZCBsaSA+ICo6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmVsZW1lbnQtbGlzdC0tb3JkZXJlZCBsaSBsaSB7XG4gICAgICBtYXJnaW4tdG9wOiA1cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIHtcbiAgICAuZWxlbWVudC1saXN0LS1vcmRlcmVkIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH0gfVxuICAuZWxlbWVudC1saXN0LS1vcmRlcmVkIGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAuZWxlbWVudC1saXN0LS1vcmRlcmVkIGxpOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBjb3VudGVyKGxpKSBcIi4gXCI7XG4gICAgICBjb3VudGVyLWluY3JlbWVudDogbGk7IH1cblxuLmVsZW1lbnQtcmFkaW9fX3dyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmVsZW1lbnQtcmFkaW9fX3dyYXBwZXIgLmVsZW1lbnQtcmFkaW8ge1xuICAgIGxlZnQ6IDJweDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDNweDsgfVxuICAuZWxlbWVudC1yYWRpb19fd3JhcHBlciAuZWxlbWVudC1sYWJlbDpub3QoW2Zvcl0pIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMXB4OyB9XG4gIC5lbGVtZW50LXJhZGlvX193cmFwcGVyIC5lbGVtZW50LXJhZGlvIHtcbiAgICBsZWZ0OiAycHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAzcHg7IH1cbiAgICAuZWxlbWVudC1yYWRpb19fd3JhcHBlciAuZWxlbWVudC1yYWRpbyArIC5lbGVtZW50LWxhYmVsIHtcbiAgICAgIGNvbG9yOiBkYXJrZ3JleTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuICAgICAgbWFyZ2luOiAwIDI1cHggMCAwO1xuICAgICAgbWluLWhlaWdodDogMS4zNzVyZW07XG4gICAgICBwYWRkaW5nOiAwIDAgMTJweCAyN3B4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDEwMG1zIGVhc2U7XG4gICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICAuZWxlbWVudC1yYWRpb19fd3JhcHBlciAuZWxlbWVudC1yYWRpbyArIC5lbGVtZW50LWxhYmVsOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcbiAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMXB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMTAwbXMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAxMDBtcyBlYXNlO1xuICAgICAgICB3aWR0aDogMThweDsgfVxuICAgICAgLmVsZW1lbnQtcmFkaW9fX3dyYXBwZXIgLmVsZW1lbnQtcmFkaW8gKyAuZWxlbWVudC1sYWJlbDphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGhlaWdodDogOHB4O1xuICAgICAgICBsZWZ0OiA1cHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA2cHg7XG4gICAgICAgIHdpZHRoOiA4cHg7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDMzLjc0ODc1ZW0pIHtcbiAgICAgICAgLmVsZW1lbnQtcmFkaW9fX3dyYXBwZXIgLmVsZW1lbnQtcmFkaW8gKyAuZWxlbWVudC1sYWJlbCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgIC5lbGVtZW50LXJhZGlvX193cmFwcGVyIC5lbGVtZW50LXJhZGlvOmNoZWNrZWQgKyAuZWxlbWVudC1sYWJlbDpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47XG4gICAgICBib3JkZXItY29sb3I6IGdyZWVuOyB9XG4gICAgLmVsZW1lbnQtcmFkaW9fX3dyYXBwZXIgLmVsZW1lbnQtcmFkaW86Y2hlY2tlZCArIC5lbGVtZW50LWxhYmVsOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLmVsZW1lbnQtcmFkaW9fX3dyYXBwZXIgLmVsZW1lbnQtcmFkaW86ZGlzYWJsZWQgKyAuZWxlbWVudC1sYWJlbCB7XG4gICAgICBvcGFjaXR5OiAwLjM7IH1cbiAgICAgIC5lbGVtZW50LXJhZGlvX193cmFwcGVyIC5lbGVtZW50LXJhZGlvOmRpc2FibGVkICsgLmVsZW1lbnQtbGFiZWw6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuICAuZWxlbWVudC1yYWRpb19fd3JhcHBlci5pcy0tcmFkaW8tbGlzdCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmVsZW1lbnQtc2VsZWN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5lbGVtZW50LXNlbGVjdDpiZWZvcmUsIC5lbGVtZW50LXNlbGVjdDphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDVweDtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDVweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgei1pbmRleDogMTsgfVxuICAuZWxlbWVudC1zZWxlY3Q6YmVmb3JlIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IGJsYWNrIHRyYW5zcGFyZW50O1xuICAgIGJvdHRvbTogMjBweDsgfVxuICAuZWxlbWVudC1zZWxlY3Q6YWZ0ZXIge1xuICAgIGJvcmRlci1jb2xvcjogYmxhY2sgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm90dG9tOiA1cHg7IH1cbiAgLmVsZW1lbnQtc2VsZWN0X19zZWxlY3Qge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrO1xuICAgIGNvbG9yOiBibGFjaztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjc1cmVtO1xuICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5lbGVtZW50LXNlbGVjdF9fc2VsZWN0OmZvY3VzOjotbXMtdmFsdWUge1xuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICBjb2xvcjogYmxhY2s7IH1cbiAgICAuZWxlbWVudC1zZWxlY3RfX3NlbGVjdDo6LW1zLWV4cGFuZCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmVsZW1lbnQtc2VsZWN0X19zZWxlY3Q6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTsgfVxuICAuZWxlbWVudC1zZWxlY3QuaXMtLXNob3J0IHtcbiAgICBtYXgtd2lkdGg6IDE5MXB4OyB9XG5cbi8qXHJcbiAgPHRleHRhcmVhIHBsYWNlaG9sZGVyPVwiUGxhY2Vob2xkZXJcIiBjbGFzcz1cImVsZW1lbnQtaW5wdXQtdGV4dGFyZWFcIj48L3RleHRhcmVhPlxyXG4qL1xuLmVsZW1lbnQtaW5wdXQtdGV4dGFyZWEge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNBREI1QkQ7XG4gIGJveC1zaGFkb3c6IDA7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDAgMCAwIDA7XG4gIG1pbi1oZWlnaHQ6IDQycHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDEwcHggMTNweDtcbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbiAgdHJhbnNpdGlvbjogYWxsIDEwMG1zIGVhc2U7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5lbGVtZW50LWlucHV0LXRleHRhcmVhLmlzLS1pbnZhbGlkIHtcbiAgICBib3JkZXItY29sb3I6ICNFNzlFQTE7IH1cbiAgLmVsZW1lbnQtaW5wdXQtdGV4dGFyZWE6cmVhZC1vbmx5Om5vdChbcmVhZC1vbmx5PVwiZmFsc2VcIl0pIHtcbiAgICBjb2xvcjogI2IxYjFiMTsgfVxuICAuZWxlbWVudC1pbnB1dC10ZXh0YXJlYTo6LW1zLWNsZWFyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5lbGVtZW50LWlucHV0LXRleHRhcmVhOm5vdCguaXMtLWludmFsaWQpOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlci1jb2xvcjogIzc2N0Q4NTsgfVxuICAuZWxlbWVudC1pbnB1dC10ZXh0YXJlYTpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICNBMkEyQTI7IH1cblxuLnRoZW1lLS1saWdodCAuZWxlbWVudC1pbnB1dC10ZXh0YXJlYSB7XG4gIGJvcmRlci1jb2xvcjogI0I1QkJDMTsgfVxuXG4uZG90dGVkLWxpc3Qge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5kb3R0ZWQtbGlzdF9faXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLmRvdHRlZC1saXN0X19pdGVtICsgLmRvdHRlZC1saXN0X19pdGVtIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMHB4OyB9XG4gIC5kb3R0ZWQtbGlzdF9fdGVybSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBvcmRlcjogMTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5kb3R0ZWQtbGlzdF9fdGVybTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm90dG9tOiAzLjZweDtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggZG90dGVkIGJsYWNrO1xuICAgICAgbWFyZ2luLWxlZnQ6IDNweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5kb3R0ZWQtbGlzdF9fZGVzY3JpcHRpb24ge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBvcmRlcjogMjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gICAgLmRvdHRlZC1saXN0X19pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLmRvdHRlZC1saXN0X190ZXJtOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC5kb3R0ZWQtbGlzdF9fZGVzY3JpcHRpb24ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAzcHg7IH0gfVxuXG4uaWNvbi5pY29uLWFycm93LXJlZCB7XG4gIHdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDEwcHg7IH1cblxuLmljb24uaWNvbi1hcnJvdy13aGl0ZSB7XG4gIHdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDEwcHg7IH1cblxuLmljb24uaWNvbi1hcnJvdy1ibGFjayB7XG4gIHdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDEwcHg7IH1cblxuLmljb24uaWNvbi1hcnJvdy1yaWdodC1ibGFjayB7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDEzcHg7IH1cblxuLmljb24uaWNvbi1hcnJvdy1yaWdodC1ibGFjay1zbWFsbCB7XG4gIHdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDEwcHg7IH1cblxuLmljb24uaWNvbi1hcnJvdy1yaWdodC1ncmV5LXNtYWxsIHtcbiAgd2lkdGg6IDE0cHg7XG4gIGhlaWdodDogMTBweDsgfVxuXG4uaWNvbi5pY29uLWFycm93LWNoZXZyb24tZG93biB7XG4gIHdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDEwcHg7IH1cbiAgLmljb24uaWNvbi1hcnJvdy1jaGV2cm9uLWRvd24gcGF0aCB7XG4gICAgZmlsbDogd2hpdGU7IH1cbiAgLmljb24uaWNvbi1hcnJvdy1jaGV2cm9uLWRvd24uaXMtLWdyYXkgcGF0aCB7XG4gICAgZmlsbDogIzlkYTVhYTsgfVxuXG4uaWNvbi5pY29uLWdyYWRlIHtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDsgfVxuXG4uaWNvbi5pY29uLWdyYWRlLWluYWN0aXZlIHtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDsgfVxuXG4uaWNvbi5pY29uLWNsb3NlLWJsYWNrIHtcbiAgd2lkdGg6IDE0cHg7XG4gIGhlaWdodDogMTRweDsgfVxuXG4uaWNvbi5pY29uLXNlYXJjaC1sYXJnZSB7XG4gIHdpZHRoOiAzN3B4O1xuICBoZWlnaHQ6IDM3cHg7IH1cbiAgLmljb24uaWNvbi1zZWFyY2gtbGFyZ2UuaXMtLXdoaXRlIHBhdGgge1xuICAgIGZpbGw6IHdoaXRlOyB9XG4gIC5pY29uLmljb24tc2VhcmNoLWxhcmdlLmlzLS1ncmF5IHBhdGgge1xuICAgIGZpbGw6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTsgfVxuXG4uaWNvbi5pY29uLXNlYXJjaCB7XG4gIHdpZHRoOiAxOXB4O1xuICBoZWlnaHQ6IDE5cHg7IH1cblxuLmljb24uaWNvbi1jbG9jayB7XG4gIHdpZHRoOiAxMXB4O1xuICBoZWlnaHQ6IDExcHg7IH1cblxuZmlndXJlLmltYWdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbjogMCAycHggMCAxcHg7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbmZpZ3VyZS5hbGlnbi1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuZmlndXJlLmFsaWduLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbmZpZ3VyZS5pbWFnZSBpbWcge1xuICBtYXJnaW46IDAgMCAwIDA7IH1cblxuZmlndXJlLmltYWdlIGZpZ2NhcHRpb24ge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5hZC1jb250YWluZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAvKlxyXG4gICZfX2JveCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGVlMmU2O1xyXG4gICAgYm9yZGVyOiA1cHggc29saWQgcmdiYSgzNCwgMzcsIDQyLCAwLjYpO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgfVxyXG5cclxuICBpbWcge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICB9XHJcblxyXG4gICYudmVydGljYWwtYmFubmVyIHtcclxuICAgIG1pbi1oZWlnaHQ6IDQ1MHB4O1xyXG4gIH1cclxuXHJcbiAgJi53aWRlLXNreXNjcmFwZXIge1xyXG4gICAgd2lkdGg6IDE2MHB4O1xyXG4gICAgaGVpZ2h0OiA2MDBweDtcclxuICB9XHJcblxyXG4gICYuaGFsZi1wYWdlIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiAzMDBweDtcclxuICAgIC8vICY6OmFmdGVye1xyXG4gICAgLy8gICBjb250ZW50OiAnJztcclxuICAgIC8vICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAvLyAgIHBhZGRpbmctYm90dG9tOiAyMDAlO1xyXG4gICAgLy8gfVxyXG4gIH1cclxuXHJcbiAgJi5sYXJnZS1sZWFkZXJib2FyZCB7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIG1heC13aWR0aDogOTgwcHg7XHJcbiAgICAmOjphZnRlcntcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjQuNDklO1xyXG4gICAgfVxyXG4gIH1cclxuICAqLyB9XG4gIC5hZC1jb250YWluZXIgKyAuYWQtY29udGFpbmVyIHtcbiAgICBtYXJnaW46IDIwcHggYXV0byAwIGF1dG87IH1cbiAgLmFkLWNvbnRhaW5lci1vdXRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cbiAgLmFkLWNvbnRhaW5lci1zZWN0aW9uLnRvcCB7XG4gICAgcGFkZGluZzogMjBweCAwOyB9XG4gIC5hZC1jb250YWluZXItc2VjdGlvbi5ib3R0b20ge1xuICAgIHBhZGRpbmc6IDIwcHggMDsgfVxuICAuYWQtY29udGFpbmVyLXNlY3Rpb24ubGlzdC10b3Age1xuICAgIHBhZGRpbmc6IDIwcHggMDsgfVxuICAuYWQtY29udGFpbmVyLXNlY3Rpb24ubGlzdC1ib3R0b20ge1xuICAgIHBhZGRpbmc6IDIwcHggMDsgfVxuICAuYWQtY29udGFpbmVyLXNlY3Rpb24uYmx1ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZWNmMTsgfVxuICAuYWQtY29udGFpbmVyIC5hZC1kZXNrdG9wIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5hZC1jb250YWluZXIgLmFkLW1vYmlsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5hZC1jb250YWluZXIgLmFkLWRlc2t0b3Age1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAuYWQtY29udGFpbmVyIC5hZC1tb2JpbGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5hZC1jb250YWluZXIuY29tcG9uZW50LWNvbnRlbnRfX3RleHQtYWQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDI1cHg7IH1cblxuLmFjY29yZGlvbi1uYXZpZ2F0aW9uIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93LXg6IGhpZGRlbjsgfVxuICAuYWNjb3JkaW9uLW5hdmlnYXRpb24gdWwge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwIDAgMCAwO1xuICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuYWNjb3JkaW9uLW5hdmlnYXRpb24gbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDAgMCAwIDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmFjY29yZGlvbi1uYXZpZ2F0aW9uX19saW5rIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAuYWNjb3JkaW9uLW5hdmlnYXRpb24gLmxpbmstd3JhcHBlciB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmFjY29yZGlvbi1uYXZpZ2F0aW9uIHtcbiAgYmFja2dyb3VuZDogdG9tYXRvO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHBhZGRpbmc6IDAgMCAwIDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4OyB9XG4gIC5hY2NvcmRpb24tbmF2aWdhdGlvbiA+IHVsICsgdWwge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgLmFjY29yZGlvbi1uYXZpZ2F0aW9uIGxpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxOyB9XG4gICAgLmFjY29yZGlvbi1uYXZpZ2F0aW9uIGxpICsgbGkge1xuICAgICAgbWFyZ2luOiAwIDAgMCAwOyB9XG4gIC5hY2NvcmRpb24tbmF2aWdhdGlvbl9fbGluayB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBwYWRkaW5nOiAxNnB4IDIwcHg7IH1cbiAgLmFjY29yZGlvbi1uYXZpZ2F0aW9uIC5saW5rLXdyYXBwZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7IH1cbiAgLmFjY29yZGlvbi1uYXZpZ2F0aW9uID4gdWwgPiBsaSB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMDVzIGVhc2U7IH1cbiAgLmFjY29yZGlvbi1uYXZpZ2F0aW9uID4gdWwgPiBsaSA+IHVsID4gbGkge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjA1cyBlYXNlOyB9XG4gICAgLmFjY29yZGlvbi1uYXZpZ2F0aW9uID4gdWwgPiBsaSA+IHVsID4gbGkgYSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7IH1cbiAgLmFjY29yZGlvbi1uYXZpZ2F0aW9uID4gdWwgPiBsaSA+IHVsID4gbGkgPiB1bCA+IGxpIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4wNXMgZWFzZTsgfVxuICAgIC5hY2NvcmRpb24tbmF2aWdhdGlvbiA+IHVsID4gbGkgPiB1bCA+IGxpID4gdWwgPiBsaSBhIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDsgfVxuICAuYWNjb3JkaW9uLW5hdmlnYXRpb24gPiB1bCA+IGxpLmlzLS1hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNGU0ZTQ7IH1cbiAgICAuYWNjb3JkaW9uLW5hdmlnYXRpb24gPiB1bCA+IGxpLmlzLS1hY3RpdmUgPiB1bCA+IGxpLFxuICAgIC5hY2NvcmRpb24tbmF2aWdhdGlvbiA+IHVsID4gbGkuaXMtLWFjdGl2ZSA+IHVsID4gbGkgPiB1bCA+IGxpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlNGU0ZTQ7IH1cbiAgLmFjY29yZGlvbi1uYXZpZ2F0aW9uX19idXR0b24ge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogc3RlZWxibHVlO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE4cHggYXV0bztcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGhlaWdodDogNTBweDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAwIDAgMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxMDBtcyBlYXNlO1xuICAgIHdpZHRoOiA1MHB4OyB9XG4gIC5hY2NvcmRpb24tbmF2aWdhdGlvbiBsaTpub3QoLmlzLS1hY3RpdmUpID4gdWwge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmFjY29yZGlvbi1uYXZpZ2F0aW9uIC5pcy0tYWN0aXZlID4gLmxpbmstd3JhcHBlciAuYWNjb3JkaW9uLW5hdmlnYXRpb25fX2J1dHRvbixcbiAgLmFjY29yZGlvbi1uYXZpZ2F0aW9uIC5wcmUtLWFjdGl2ZSA+IC5saW5rLXdyYXBwZXIgLmFjY29yZGlvbi1uYXZpZ2F0aW9uX19idXR0b24ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cbiAgLmFjY29yZGlvbi1uYXZpZ2F0aW9uIC5pcy0tYWN0aXZlLnByZS0tYWN0aXZlID4gLmxpbmstd3JhcHBlciAuYWNjb3JkaW9uLW5hdmlnYXRpb25fX2J1dHRvbiB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cblxuLmFydGljbGUtbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDAgMCAwIDA7XG4gIG1hcmdpbjogMS43NXJlbSAwIDAgMDsgfVxuICAuYXJ0aWNsZS1saXN0LXdyYXBwZXI6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5hcnRpY2xlLWxpc3Qtd3JhcHBlcjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgICAuYXJ0aWNsZS1saXN0LXdyYXBwZXI6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cbiAgLmFydGljbGUtbGlzdF9faXRlbSArIC5hcnRpY2xlLWxpc3RfX2l0ZW0ge1xuICAgIG1hcmdpbjogMS41cmVtIDAgMCAwOyB9XG4gIC5hcnRpY2xlLWxpc3RfX2xpbmsge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgLmFydGljbGUtbGlzdF9fbGluazpob3ZlciAuYXJ0aWNsZS1saXN0X190aXRsZSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAuYXJ0aWNsZS1saXN0X190aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMS42MnJlbTtcbiAgICBjb2xvcjogIzIyMjUyYTtcbiAgICBtYXJnaW46IDAuMjVyZW0gMCAwIDA7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgLXdlYmtpdC1saW5lLWNsYW1wOiAyO1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2Ljg3NWVtKSB7XG4gICAgICAuYXJ0aWNsZS1saXN0X190aXRsZSB7XG4gICAgICAgIG1hcmdpbjogMC4yNXJlbSAwIDAgMDtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS43NXJlbTsgfSB9XG4gIC5hcnRpY2xlLWxpc3RfX2JvZHkge1xuICAgIHBhZGRpbmc6IDAgMCAwIDFyZW07IH1cbiAgLmFydGljbGUtbGlzdCBpbWcge1xuICAgIG1heC13aWR0aDogMTEwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGZsZXgtc2hyaW5rOiAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAuYXJ0aWNsZS1saXN0IGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTQwcHg7IH0gfVxuICAuYXJ0aWNsZS1saXN0IC5nZW5yZS1sYWJlbCB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICM4NThlOTY7IH1cblxuLnNlY3Rpb24tYXJ0aWNsZS1saXN0IC5idXR0b24tbW9yZS1saW5rIHtcbiAgbWFyZ2luOiAycmVtIDAgMCAwOyB9XG5cbi5zZWN0aW9uLWFydGljbGUtbGlzdCAuY2VsbCArIC5jZWxsIHtcbiAgbWFyZ2luLXRvcDogMy41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAgIC5zZWN0aW9uLWFydGljbGUtbGlzdCAuY2VsbCArIC5jZWxsOm50aC1jaGlsZCgyKSB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zZWN0aW9uLWFydGljbGUtbGlzdCAuY2VsbCArIC5jZWxsIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuXG4uc2VhcmNoLXJlc3VsdHMgLmFydGljbGUtbGlzdCB7XG4gIG1hcmdpbjogMCAwIDAgMDsgfVxuXG4uYXV0aG9yIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgLmF1dGhvci1uYW1lIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjNyZW07XG4gICAgbWFyZ2luOiAwIDAgMCAwOyB9XG4gICAgLmF1dGhvci1uYW1lIGEge1xuICAgICAgY29sb3I6ICNkZjJkMjg7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAgIC5hdXRob3ItbmFtZSBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNiOTIwMWI7IH1cbiAgICAuYXV0aG9yLW5hbWUgLmFydGljbGVUeXBlIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAuYXV0aG9yLWltYWdlIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgd2lkdGg6IDQ4cHg7XG4gICAgaGVpZ2h0OiA0OHB4OyB9XG4gIC5hdXRob3ItY29udGVudC5oYXMtLWltYWdlIHtcbiAgICBtYXJnaW46IDAgMCAwIDFyZW07IH1cbiAgLmF1dGhvciAucHVibGlzaC1kYXRlIHtcbiAgICBjb2xvcjogIzg1OGU5NjtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDk2MjVyZW07XG4gICAgbWFyZ2luOiAwIDAgMCAwOyB9XG4gIC5hdXRob3IuaXMtLWludmVyc2UgLmF1dGhvci1uYW1lIGEge1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5hdXRob3IuaXMtLWludmVyc2UgLmF1dGhvci1uYW1lIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICNlNmU2ZTY7IH1cblxuLmJpbGxib2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMDtcbiAgcGFkZGluZy1ib3R0b206IDcwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gIG1pbi1oZWlnaHQ6IDM3NXB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gICAgLmJpbGxib2FyZCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNDIuMTg3NSU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MC4zMTI1ZW0pIHtcbiAgICAuYmlsbGJvYXJkIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDY3NXB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAuMzEyNWVtKSB7XG4gICAgLmJpbGxib2FyZCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNjc1cHg7IH0gfVxuICAuYmlsbGJvYXJkLXdyYXBwZXIuaGFzLS1zbGlkZXIgLmJpbGxib2FyZCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAuYmlsbGJvYXJkLXdyYXBwZXIuaGFzLS1zbGlkZXIgLnNsaWNrLXNsaWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7IH1cbiAgLmJpbGxib2FyZC13cmFwcGVyLmhhcy0tc2xpZGVyIC5zbGljay1wcmV2LCAuYmlsbGJvYXJkLXdyYXBwZXIuaGFzLS1zbGlkZXIgLnNsaWNrLW5leHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIHotaW5kZXg6IDkwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB3aWR0aDogNDZweDtcbiAgICBoZWlnaHQ6IDQ2cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgdG9wOiA1MCU7IH1cbiAgICAuYmlsbGJvYXJkLXdyYXBwZXIuaGFzLS1zbGlkZXIgLnNsaWNrLXByZXY6OmJlZm9yZSwgLmJpbGxib2FyZC13cmFwcGVyLmhhcy0tc2xpZGVyIC5zbGljay1uZXh0OjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7IH1cbiAgICAuYmlsbGJvYXJkLXdyYXBwZXIuaGFzLS1zbGlkZXIgLnNsaWNrLXByZXYgLmljb24sIC5iaWxsYm9hcmQtd3JhcHBlci5oYXMtLXNsaWRlciAuc2xpY2stbmV4dCAuaWNvbiB7XG4gICAgICB3aWR0aDogMTNweDtcbiAgICAgIGhlaWdodDogMjJweDsgfVxuICAuYmlsbGJvYXJkLXdyYXBwZXIuaGFzLS1zbGlkZXIgLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IDhweDsgfVxuICAgIC5iaWxsYm9hcmQtd3JhcHBlci5oYXMtLXNsaWRlciAuc2xpY2stcHJldiAuaWNvbiB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDNweDsgfVxuICAuYmlsbGJvYXJkLXdyYXBwZXIuaGFzLS1zbGlkZXIgLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0OiA4cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDNweDsgfVxuICAuYmlsbGJvYXJkX19hc3BlY3QtcmF0aW8ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDgwdnc7XG4gICAgaGVpZ2h0OiA5MHZ3OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMjkuNjg3NWVtKSB7XG4gICAgICAuYmlsbGJvYXJkX19hc3BlY3QtcmF0aW8ge1xuICAgICAgICBoZWlnaHQ6IDYwdnc7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQxLjg3NWVtKSB7XG4gICAgICAuYmlsbGJvYXJkX19hc3BlY3QtcmF0aW8ge1xuICAgICAgICBoZWlnaHQ6IDY1dnc7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAgICAgLmJpbGxib2FyZF9fYXNwZWN0LXJhdGlvIHtcbiAgICAgICAgaGVpZ2h0OiA0My4xMzQ3dnc7IH0gfVxuICAgIC5iaWxsYm9hcmRfX2FzcGVjdC1yYXRpbzo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxNDhweDtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICMwMDAgMCwgcmdiYSgwLCAwLCAwLCAwKSAxMDAlKTtcbiAgICAgIHotaW5kZXg6IDQ7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmJpbGxib2FyZF9fYXNwZWN0LXJhdGlvOjpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgLmJpbGxib2FyZC50eXBlLS1hcnRpY2xlIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0Mi4xMzQ3JTsgfSB9XG4gIC5iaWxsYm9hcmQudHlwZS0tYXJ0aWNsZSAuaGVyby1pbWFnZV9fb3V0ZXItYmFja2dyb3VuZCB7XG4gICAgbWF4LXdpZHRoOiAxMzEwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAuMzEyNWVtKSB7XG4gICAgLmJpbGxib2FyZC50eXBlLS1hcnRpY2xlIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA2NjBweDtcbiAgICAgIG1pbi1oZWlnaHQ6IDY2MHB4OyB9IH1cbiAgLmJpbGxib2FyZC5uby0taW1hZ2Uge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkNDAyMDI7IH1cbiAgICAuYmlsbGJvYXJkLm5vLS1pbWFnZSAuaGVyby1jb250ZW50IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwLjMxMjVlbSkge1xuICAgICAgLmJpbGxib2FyZC5uby0taW1hZ2Uge1xuICAgICAgICBtaW4taGVpZ2h0OiAzODBweDsgfSB9XG5cbi5oZXJvLWltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAzO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAuaGVyby1pbWFnZV9fZ3JhZGllbnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogZml0LWNvbnRlbnQ7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgLmhlcm8taW1hZ2VfX2ltYWdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgZm9udC1mYW1pbHk6ICdvYmplY3QtZml0OiBjb3ZlcjsnOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAuaGVyby1pbWFnZV9faW1hZ2Uge1xuICAgICAgICBoZWlnaHQ6IGF1dG87IH0gfVxuICAuaGVyby1pbWFnZV9fb3V0ZXItYmFja2dyb3VuZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtd2lkdGg6IDE2MDBweDsgfVxuICAgIC5oZXJvLWltYWdlX19vdXRlci1iYWNrZ3JvdW5kOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWR0aDogMjUlO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjMDAwIDAsIHJnYmEoMCwgMCwgMCwgMCkgMTAwJSk7XG4gICAgICB6LWluZGV4OiA0OyB9XG4gICAgLmhlcm8taW1hZ2VfX291dGVyLWJhY2tncm91bmQ6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiAyNSU7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgIzAwMCAwLCByZ2JhKDAsIDAsIDAsIDApIDEwMCUpO1xuICAgICAgei1pbmRleDogNDsgfVxuICAuaGVyby1pbWFnZV9faW5uZXItYmFja2dyb3VuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDAsIDAsIDAsIDApIDYwJSwgYmxhY2spO1xuICAgIHotaW5kZXg6IDY7XG4gICAgbWluLWhlaWdodDogMTMwcHg7IH1cblxuLmJ1dHRvbi1wbGF5LXRyYWlsZXItcGxhY2Vob2xkZXIge1xuICB3aWR0aDogMTkzcHg7XG4gIGhlaWdodDogNTJweDtcbiAgbWFyZ2luLXRvcDogMzRweDsgfVxuXG4uaGVyby1jb250ZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDY7XG4gIGNvbG9yOiB3aGl0ZTsgfVxuICAuaGVyby1jb250ZW50LWxpbmsge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAuaGVyby1jb250ZW50IC5tb3ZpZS1pbmZvcm1hdGlvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA2M3B4KTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAgICAgLmhlcm8tY29udGVudCAubW92aWUtaW5mb3JtYXRpb24ge1xuICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDIwOHB4KTsgfSB9XG4gICAgLmhlcm8tY29udGVudCAubW92aWUtaW5mb3JtYXRpb24tY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwYWRkaW5nLXRvcDogMi41cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDIuNXJlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIHtcbiAgICAgICAgLmhlcm8tY29udGVudCAubW92aWUtaW5mb3JtYXRpb24tY29udGFpbmVyIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAgIC5oZXJvLWNvbnRlbnQgLm1vdmllLWluZm9ybWF0aW9uLWNvbnRhaW5lciB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAyLjVyZW07XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMi41cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2Ljg3NWVtKSB7XG4gICAgICAgIC5oZXJvLWNvbnRlbnQgLm1vdmllLWluZm9ybWF0aW9uLWNvbnRhaW5lciB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAzLjEyNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogOS4zNzVyZW07IH0gfVxuICAgIC5oZXJvLWNvbnRlbnQgLm1vdmllLWluZm9ybWF0aW9uIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzLjEyNXJlbTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIG1heC13aWR0aDogODgzcHg7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmhlcm8tY29udGVudCAubW92aWUtaW5mb3JtYXRpb24gaDEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMy4zNzVyZW07XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDQuMTE3NXJlbTsgfSB9XG4gICAgLmhlcm8tY29udGVudCAubW92aWUtaW5mb3JtYXRpb25fX21ldGEtaW5mbyB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDEuNXJlbSAwIDAgMDtcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDA7XG4gICAgICBjb2xvcjogIzg1OGU5NjtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS40OTYyNXJlbTsgfVxuICAgICAgLmhlcm8tY29udGVudCAubW92aWUtaW5mb3JtYXRpb25fX21ldGEtaW5mbyBsaSB7XG4gICAgICAgIGhlaWdodDogMjFweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgICAgICAgIC5oZXJvLWNvbnRlbnQgLm1vdmllLWluZm9ybWF0aW9uX19tZXRhLWluZm8gbGkge1xuICAgICAgICAgICAgaGVpZ2h0OiAzNHB4OyB9IH1cbiAgICAgICAgLmhlcm8tY29udGVudCAubW92aWUtaW5mb3JtYXRpb25fX21ldGEtaW5mbyBsaSAuc3BhbiB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IGluaXRpYWw7IH1cbiAgICAgICAgLmhlcm8tY29udGVudCAubW92aWUtaW5mb3JtYXRpb25fX21ldGEtaW5mbyBsaTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICBtYXJnaW46IDAgMC41cmVtIDAgMDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjU2MjVyZW07XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAxcHg7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7IH1cbiAgICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgICAgICAgICAgLmhlcm8tY29udGVudCAubW92aWUtaW5mb3JtYXRpb25fX21ldGEtaW5mbyBsaTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIHtcbiAgICAgICAgLmhlcm8tY29udGVudCAubW92aWUtaW5mb3JtYXRpb25fX21ldGEtaW5mbyB7XG4gICAgICAgICAgY29sb3I6IHdoaXRlOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gICAgICAgIC5oZXJvLWNvbnRlbnQgLm1vdmllLWluZm9ybWF0aW9uX19tZXRhLWluZm8ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyLjEzcmVtOyB9IH1cblxuLnR5cGUtLWFydGljbGUgLmJ1dHRvbi1wbGF5LXRyYWlsZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwLjk3MzVyZW07XG4gIGJvdHRvbTogMi41cmVtO1xuICB6LWluZGV4OiAxMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS44NzVlbSkge1xuICAgIC50eXBlLS1hcnRpY2xlIC5idXR0b24tcGxheS10cmFpbGVyIHtcbiAgICAgIGJvdHRvbTogMTUwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMy43NDg3NWVtKSB7XG4gIC50eXBlLS1hcnRpY2xlIHtcbiAgICBtaW4taGVpZ2h0OiA0NzVweDsgfSB9XG5cbi50eXBlLS1zdGFydCAuYnV0dG9uLXBsYXktdHJhaWxlciB7XG4gIG1hcmdpbjogMS41cmVtIDAgMCAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAgIC50eXBlLS1zdGFydCAuYnV0dG9uLXBsYXktdHJhaWxlciB7XG4gICAgICBtYXJnaW46IDIuMTI1cmVtIDAgMCAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuODc1ZW0pIHtcbiAgLm5vLS1pbWFnZSAuaGVyby1jb250ZW50IC5tb3ZpZS1pbmZvcm1hdGlvbi1jb250YWluZXIge1xuICAgIHBhZGRpbmctdG9wOiAzLjEyNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogOS4zNzVyZW07IH0gfVxuXG4uYnV0dG9uLXBsYXktdHJhaWxlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luOiAwIDAgMCAwO1xuICBwYWRkaW5nOiAxMXB4IDExcHggMTFweCAxMXB4O1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RmMmQyODtcbiAgYm9yZGVyOiBzb2xpZCAxcHggdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgY29sb3I6IHdoaXRlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGFsbCAuMTVzIGVhc2U7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgLmJ1dHRvbi1wbGF5LXRyYWlsZXIge1xuICAgICAgbWluLXdpZHRoOiAxODZweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDI1cHg7XG4gICAgICBwYWRkaW5nOiAxM3B4IDI0cHggMTNweCAyNHB4OyB9IH1cbiAgLmJ1dHRvbi1wbGF5LXRyYWlsZXI6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiOTFmMWI7IH1cbiAgLmJ1dHRvbi1wbGF5LXRyYWlsZXIgLmljb24tY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIG1hcmdpbjogMCAwIDAgMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAgICAgLmJ1dHRvbi1wbGF5LXRyYWlsZXIgLmljb24tY29udGFpbmVyIHtcbiAgICAgICAgbWFyZ2luOiAwIDFyZW0gMCAwOyB9IH1cbiAgLmJ1dHRvbi1wbGF5LXRyYWlsZXIgLnRpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAuYnV0dG9uLXBsYXktdHJhaWxlciAudGl0bGUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7IH0gfVxuXG4uYXJ0aWNsZS1jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3gtc2hhZG93OiAwIDFweCA2cHggMCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgLmFydGljbGUtY2FyZC1saW5rIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleDogMSAwIGF1dG87XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgLmFydGljbGUtY2FyZC1saW5rOmhvdmVyIC5hcnRpY2xlLWNhcmQtdGl0bGUge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLmFydGljbGUtY2FyZC1pbWctd3JhcHBlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHBhZGRpbmc6IDMxLjU3ODklIDAgMzEuNTc4OSUgMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuYXJ0aWNsZS1jYXJkLWltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAzcHg7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDNweDtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBmb250LWZhbWlseTogJ29iamVjdC1maXQ6IGNvdmVyOyc7IH1cbiAgLmFydGljbGUtY2FyZC1iZy1pbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7IH1cbiAgLmFydGljbGUtY2FyZC1jb250ZW50IHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICBwYWRkaW5nOiAxLjVyZW0gMXJlbSAyLjI1cmVtIDFyZW07XG4gICAgbWluLWhlaWdodDogMTQxcHg7IH1cbiAgICAuYXJ0aWNsZS1jYXJkLWNvbnRlbnQgcCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgbWFyZ2luOiAwLjVyZW0gMCAwIDA7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS42MjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gICAgICAgIC5hcnRpY2xlLWNhcmQtY29udGVudCBwIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC5hcnRpY2xlLWNhcmQtdGl0bGUge1xuICAgIG1hcmdpbjogMC41cmVtIDAgMCAwO1xuICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS42M3JlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXgtaGVpZ2h0OiAxNDFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIC13ZWJraXQtbGluZS1jbGFtcDogMjtcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmFydGljbGUtY2FyZC10aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTsgfSB9XG4gIC5hcnRpY2xlLWNhcmQtZm9vdGVyIHtcbiAgICBtYXJnaW46IDEuMjVyZW0gMCAwIDA7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAuYXJ0aWNsZS1jYXJkLWZvb3RlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuICAuYXJ0aWNsZS1jYXJkLXNlcnZpY2Uge1xuICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBwYWRkaW5nOiAwLjM3NXJlbTtcbiAgICBjb2xvcjogIzBhMGEwYTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIzNCwgMjM2LCAyMzksIDAuNik7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICAgLmFydGljbGUtY2FyZC1zZXJ2aWNlICsgLmFydGljbGUtY2FyZC1zZXJ2aWNlIHtcbiAgICAgIG1hcmdpbjogMCAwIDAgMC4yNXJlbTsgfVxuICAuYXJ0aWNsZS1jYXJkIC5jYXRlZ29yeS1sYWJlbCB7XG4gICAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogIzg1OGU5NjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAgICAgLmFydGljbGUtY2FyZCAuY2F0ZWdvcnktbGFiZWwge1xuICAgICAgICBmb250LXNpemU6IDAuNzVyZW07IH0gfVxuICAuYXJ0aWNsZS1jYXJkLnR5cGUtLWltYWdlLWNhcmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgICAuYXJ0aWNsZS1jYXJkLnR5cGUtLWltYWdlLWNhcmQgLmFydGljbGUtY2FyZC1saW5rOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDApLCByZ2JhKDAsIDAsIDAsIDAuMDIpIDklLCByZ2JhKDAsIDAsIDAsIDAuMDYpIDE5JSwgcmdiYSgwLCAwLCAwLCAwLjEyKSAyOCUsIHJnYmEoMCwgMCwgMCwgMC4yKSAzOCUsIHJnYmEoMCwgMCwgMCwgMC4yOSkgNDglLCByZ2JhKDAsIDAsIDAsIDAuMzkpIDU3JSwgcmdiYSgwLCAwLCAwLCAwLjUpIDY2JSwgcmdiYSgwLCAwLCAwLCAwLjYxKSA3NCUsIHJnYmEoMCwgMCwgMCwgMC43MSkgODElLCByZ2JhKDAsIDAsIDAsIDAuOCkgODglLCByZ2JhKDAsIDAsIDAsIDAuODgpIDkzJSwgcmdiYSgwLCAwLCAwLCAwLjk1KSA5NyUsIHJnYmEoMCwgMCwgMCwgMC45OCkgOTklLCBibGFjayk7IH1cbiAgICAuYXJ0aWNsZS1jYXJkLnR5cGUtLWltYWdlLWNhcmQgLmFydGljbGUtY2FyZC1saW5rOmhvdmVyIC5hcnRpY2xlLWNhcmQtdGl0bGUge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICAuYXJ0aWNsZS1jYXJkLnR5cGUtLWltYWdlLWNhcmQgLmFydGljbGUtY2FyZC1pbWctd3JhcHBlciB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgcGFkZGluZy10b3A6IDMwJTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzMCU7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7IH1cbiAgICAuYXJ0aWNsZS1jYXJkLnR5cGUtLWltYWdlLWNhcmQgLmFydGljbGUtY2FyZC10aXRsZSB7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBtYXJnaW46IDAuMjVyZW0gMCAwIDA7IH1cbiAgICAuYXJ0aWNsZS1jYXJkLnR5cGUtLWltYWdlLWNhcmQgLmNhdGVnb3J5LWxhYmVsIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5hcnRpY2xlLWNhcmQudHlwZS0taW1hZ2UtY2FyZCAuYXJ0aWNsZS1jYXJkLWNvbnRlbnQge1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMCAxcmVtIDEuNXJlbSAxcmVtO1xuICAgICAgbWluLWhlaWdodDogYXV0bzsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAgIC5hcnRpY2xlLWNhcmQudHlwZS0taW1hZ2UtY2FyZCAuYXJ0aWNsZS1jYXJkLWNvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmc6IDAgMnJlbSAycmVtIDJyZW07IH0gfVxuICAgIC5hcnRpY2xlLWNhcmQudHlwZS0taW1hZ2UtY2FyZCAuYXJ0aWNsZS1jYXJkLXNlcnZpY2Uge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyMzQsIDIzNiwgMjM5LCAwLjIpOyB9XG4gIC5hcnRpY2xlLWNhcmQgLmxvZ28ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAgIC5hcnRpY2xlLWNhcmQgLmxvZ28ubmV0ZmxpeCB7XG4gICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICBsZWZ0OiAycHg7XG4gICAgICB0b3A6IDdweDsgfVxuICAgIC5hcnRpY2xlLWNhcmQgLmxvZ28uaGJvIHtcbiAgICAgIGhlaWdodDogMzVweDtcbiAgICAgIGxlZnQ6IDlweDtcbiAgICAgIHRvcDogN3B4OyB9XG4gICAgLmFydGljbGUtY2FyZCAubG9nby52aWFwbGF5IHtcbiAgICAgIGhlaWdodDogMzVweDtcbiAgICAgIGxlZnQ6IDhweDtcbiAgICAgIHRvcDogN3B4OyB9XG4gICAgLmFydGljbGUtY2FyZCAubG9nby5zdnRwbGF5IHtcbiAgICAgIGhlaWdodDogMzVweDtcbiAgICAgIGxlZnQ6IDhweDtcbiAgICAgIHRvcDogN3B4OyB9XG4gICAgLmFydGljbGUtY2FyZCAubG9nby5jbW9yZSB7XG4gICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICBsZWZ0OiA4cHg7XG4gICAgICB0b3A6IDdweDsgfVxuICAgIC5hcnRpY2xlLWNhcmQgLmxvZ28uZGlzbmV5cGx1cyB7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgICBsZWZ0OiA4cHg7XG4gICAgICB0b3A6IDdweDsgfVxuICAgIC5hcnRpY2xlLWNhcmQgLmxvZ28uZGlzY292ZXJ5cGx1cyB7XG4gICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICBsZWZ0OiA4cHg7XG4gICAgICB0b3A6IDdweDsgfVxuICAgIC5hcnRpY2xlLWNhcmQgLmxvZ28uYXBwbGV0dnBsdXMge1xuICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICBsZWZ0OiA4cHg7XG4gICAgICB0b3A6IDdweDsgfVxuICAgIC5hcnRpY2xlLWNhcmQgLmxvZ28uYW1hem9ucHJpbWUge1xuICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgbGVmdDogOHB4O1xuICAgICAgdG9wOiA3cHg7IH1cbiAgICAuYXJ0aWNsZS1jYXJkIC5sb2dvLnBhcmFtb3VudHBsdXMge1xuICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICBsZWZ0OiA4cHg7XG4gICAgICB0b3A6IDdweDsgfVxuICAuYXJ0aWNsZS1jYXJkLnR5cGUtLWltYWdlLWNhcmQgLmxvZ28ubmV0ZmxpeCB7XG4gICAgaGVpZ2h0OiA3MHB4O1xuICAgIGxlZnQ6IC0ycHg7XG4gICAgdG9wOiA3cHg7IH1cbiAgLmFydGljbGUtY2FyZC50eXBlLS1pbWFnZS1jYXJkIC5sb2dvLmhibyB7XG4gICAgaGVpZ2h0OiA3MHB4O1xuICAgIGxlZnQ6IDlweDtcbiAgICB0b3A6IDdweDsgfVxuICAuYXJ0aWNsZS1jYXJkLnR5cGUtLWltYWdlLWNhcmQgLmxvZ28udmlhcGxheSB7XG4gICAgaGVpZ2h0OiA3MHB4O1xuICAgIGxlZnQ6IDdweDtcbiAgICB0b3A6IDdweDsgfVxuICAuYXJ0aWNsZS1jYXJkLnR5cGUtLWltYWdlLWNhcmQgLmxvZ28uc3Z0cGxheSB7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGxlZnQ6IDdweDtcbiAgICB0b3A6IDdweDsgfVxuICAuYXJ0aWNsZS1jYXJkLnR5cGUtLWltYWdlLWNhcmQgLmxvZ28uY21vcmUge1xuICAgIGhlaWdodDogNDBweDtcbiAgICBsZWZ0OiA4cHg7XG4gICAgdG9wOiA3cHg7IH1cbiAgLmFydGljbGUtY2FyZC50eXBlLS1pbWFnZS1jYXJkIC5sb2dvLmRpc25leXBsdXMge1xuICAgIHdpZHRoOiAxMjBweDtcbiAgICBsZWZ0OiA4cHg7XG4gICAgdG9wOiA3cHg7IH1cbiAgLmFydGljbGUtY2FyZC50eXBlLS1pbWFnZS1jYXJkIC5sb2dvLmRpc2NvdmVyeXBsdXMge1xuICAgIGhlaWdodDogNDBweDtcbiAgICBsZWZ0OiA4cHg7XG4gICAgdG9wOiA3cHg7IH1cbiAgLmFydGljbGUtY2FyZC50eXBlLS1pbWFnZS1jYXJkIC5sb2dvLmFwcGxldHZwbHVzIHtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgbGVmdDogOHB4O1xuICAgIHRvcDogN3B4OyB9XG4gIC5hcnRpY2xlLWNhcmQudHlwZS0taW1hZ2UtY2FyZCAubG9nby5hbWF6b25wcmltZSB7XG4gICAgd2lkdGg6IDEwMHB4O1xuICAgIGxlZnQ6IDhweDtcbiAgICB0b3A6IDdweDsgfVxuICAuYXJ0aWNsZS1jYXJkLnR5cGUtLWltYWdlLWNhcmQgLmxvZ28ucGFyYW1vdW50cGx1cyB7XG4gICAgd2lkdGg6IDgwcHg7XG4gICAgbGVmdDogOHB4O1xuICAgIHRvcDogN3B4OyB9XG5cbi5hcnRpY2xlLWNhcmQtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luOiAycmVtIC0wLjMxMjVyZW0gMCAtMC4zMTI1cmVtOyB9XG4gIC5hcnRpY2xlLWNhcmQtZ3JvdXAgLmFydGljbGUtY2FyZCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMTBweCk7XG4gICAgbWFyZ2luOiAwIDAuMzEyNXJlbSAxcmVtIDAuMzEyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAgICAgLmFydGljbGUtY2FyZC1ncm91cCAuYXJ0aWNsZS1jYXJkIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMzBweCk7XG4gICAgICAgIG1hcmdpbjogMCAwLjkzNzVyZW0gMS44NzVyZW0gMC45Mzc1cmVtOyB9IH1cbiAgICAuYXJ0aWNsZS1jYXJkLWdyb3VwIC5hcnRpY2xlLWNhcmQudHlwZS0taW1hZ2UtY2FyZCB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAgIC5hcnRpY2xlLWNhcmQtZ3JvdXAgLmFydGljbGUtY2FyZC50eXBlLS1pbWFnZS1jYXJkIHtcbiAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAzMHB4KTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAgIC5hcnRpY2xlLWNhcmQtZ3JvdXAge1xuICAgICAgbWFyZ2luOiAycmVtIC0wLjkzNzVyZW0gMCAtMC45Mzc1cmVtOyB9IH1cblxuLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMsXG4ubWNlQ29udGVudEJvZHkge1xuICBtYXgtd2lkdGg6IDgxMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgLypcclxuXHRcdGxpbmtzXHJcblx0Ki9cbiAgLypcclxuXHRcdHBhcmFncmFwaHNcclxuXHQqL1xuICAvKlxyXG5cdFx0cHJlYW1ibGVcclxuXHQqL1xuICAvKlxyXG5cdFx0dGV4dC1sYXJnZVxyXG5cdCovXG4gIC8qXHJcblx0XHRpbWFnZXNcclxuXHQqL1xuICAvKlxyXG5cdFx0bWVkaWEsIGltYWdlcyBldGMuLi5cclxuXHQqL1xuICAvKlxyXG5cdFx0bGlzdHNcclxuXHQqL1xuICAvKlxyXG5cdFx0dmlkZW9cclxuXHQqL1xuICAvKlxyXG5cdFx0aGVhZGluZ3NcclxuXHQqL1xuICAvKlxyXG5cdFx0bWlzY1xyXG4gICovIH1cbiAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgPiAqOmZpcnN0LWNoaWxkLFxuICAubWNlQ29udGVudEJvZHkgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljID4gKjpsYXN0LWNoaWxkLFxuICAubWNlQ29udGVudEJvZHkgPiAqOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMudGhlbWUtLWxpZ2h0LFxuICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYy50aGVtZS0tbGlnaHQgKixcbiAgLm1jZUNvbnRlbnRCb2R5LnRoZW1lLS1saWdodCxcbiAgLm1jZUNvbnRlbnRCb2R5LnRoZW1lLS1saWdodCAqIHtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBhLFxuICAubWNlQ29udGVudEJvZHkgYSB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICNkZjJkMjg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljID4gKiArIGEsXG4gIC5tY2VDb250ZW50Qm9keSA+ICogKyBhIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIHtcbiAgICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljID4gKiArIGEsXG4gICAgICAubWNlQ29udGVudEJvZHkgPiAqICsgYSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7IH0gfVxuICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyA+IGEgKyBhLFxuICAubWNlQ29udGVudEJvZHkgPiBhICsgYSB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBhW3JlbCo9XCJleHRlcm5hbFwiXSxcbiAgLm1jZUNvbnRlbnRCb2R5IGFbcmVsKj1cImV4dGVybmFsXCJdIHtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBwLFxuICAubWNlQ29udGVudEJvZHkgcCB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjI1cmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gICAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBwLFxuICAgICAgLm1jZUNvbnRlbnRCb2R5IHAge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS43NXJlbTsgfSB9XG4gICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgcCArICosXG4gICAgLm1jZUNvbnRlbnRCb2R5IHAgKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gICAgICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIHAgKyAqLFxuICAgICAgICAubWNlQ29udGVudEJvZHkgcCArICoge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7IH0gfVxuICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIHAgKyBwLFxuICAgIC5tY2VDb250ZW50Qm9keSBwICsgcCB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljICogKyBwLFxuICAubWNlQ29udGVudEJvZHkgKiArIHAge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgLnByZWFtYmxlLFxuICAubWNlQ29udGVudEJvZHkgLnByZWFtYmxlIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsaW5lLWhlaWdodDogMS4zNzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgLnByZWFtYmxlLFxuICAgICAgLm1jZUNvbnRlbnRCb2R5IC5wcmVhbWJsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07IH0gfVxuICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIC5wcmVhbWJsZSArICosXG4gICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgLnByZWFtYmxlICsgcCxcbiAgICAubWNlQ29udGVudEJvZHkgLnByZWFtYmxlICsgKixcbiAgICAubWNlQ29udGVudEJvZHkgLnByZWFtYmxlICsgcCB7XG4gICAgICBtYXJnaW4tdG9wOiAxOXB4OyB9XG4gICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgLnByZWFtYmxlICsgLnByZWFtYmxlLFxuICAgIC5tY2VDb250ZW50Qm9keSAucHJlYW1ibGUgKyAucHJlYW1ibGUge1xuICAgICAgbWFyZ2luLXRvcDogMTlweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gICAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyAucHJlYW1ibGUgKyAqLFxuICAgICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgLnByZWFtYmxlICsgcCxcbiAgICAgIC5tY2VDb250ZW50Qm9keSAucHJlYW1ibGUgKyAqLFxuICAgICAgLm1jZUNvbnRlbnRCb2R5IC5wcmVhbWJsZSArIHAge1xuICAgICAgICBtYXJnaW4tdG9wOiAxOXB4OyB9XG4gICAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyAucHJlYW1ibGUgKyAucHJlYW1ibGUsXG4gICAgICAubWNlQ29udGVudEJvZHkgLnByZWFtYmxlICsgLnByZWFtYmxlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTlweDsgfSB9XG4gIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIGgxICsgLnByZWFtYmxlLFxuICAubWNlQ29udGVudEJvZHkgaDEgKyAucHJlYW1ibGUge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgLnRleHQtLWxhcmdlLFxuICAubWNlQ29udGVudEJvZHkgLnRleHQtLWxhcmdlIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsaW5lLWhlaWdodDogMS4zNzVyZW07XG4gICAgbWF4LXdpZHRoOiA2ODBweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gICAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyAudGV4dC0tbGFyZ2UsXG4gICAgICAubWNlQ29udGVudEJvZHkgLnRleHQtLWxhcmdlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41cmVtOyB9IH1cbiAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyAudGV4dC0tbGFyZ2UgKyAqLFxuICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIC50ZXh0LS1sYXJnZSArIHAsXG4gICAgLm1jZUNvbnRlbnRCb2R5IC50ZXh0LS1sYXJnZSArICosXG4gICAgLm1jZUNvbnRlbnRCb2R5IC50ZXh0LS1sYXJnZSArIHAge1xuICAgICAgbWFyZ2luLXRvcDogMTlweDsgfVxuICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIC50ZXh0LS1sYXJnZSArIC50ZXh0LS1sYXJnZSxcbiAgICAubWNlQ29udGVudEJvZHkgLnRleHQtLWxhcmdlICsgLnRleHQtLWxhcmdlIHtcbiAgICAgIG1hcmdpbi10b3A6IDE5cHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgLnRleHQtLWxhcmdlICsgKixcbiAgICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIC50ZXh0LS1sYXJnZSArIHAsXG4gICAgICAubWNlQ29udGVudEJvZHkgLnRleHQtLWxhcmdlICsgKixcbiAgICAgIC5tY2VDb250ZW50Qm9keSAudGV4dC0tbGFyZ2UgKyBwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTlweDsgfVxuICAgICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgLnRleHQtLWxhcmdlICsgLnRleHQtLWxhcmdlLFxuICAgICAgLm1jZUNvbnRlbnRCb2R5IC50ZXh0LS1sYXJnZSArIC50ZXh0LS1sYXJnZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE5cHg7IH0gfVxuICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyA+IGltZyxcbiAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgPiBwaWN0dXJlLFxuICAubWNlQ29udGVudEJvZHkgPiBpbWcsXG4gIC5tY2VDb250ZW50Qm9keSA+IHBpY3R1cmUge1xuICAgIG1heC13aWR0aDogNzAwcHg7IH1cbiAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgcCBpbWcsXG4gIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIHAgcGljdHVyZSxcbiAgLm1jZUNvbnRlbnRCb2R5IHAgaW1nLFxuICAubWNlQ29udGVudEJvZHkgcCBwaWN0dXJlIHtcbiAgICBtYXJnaW46IDI1cHggMCAwIDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgcCBpbWcsXG4gICAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBwIHBpY3R1cmUsXG4gICAgICAubWNlQ29udGVudEJvZHkgcCBpbWcsXG4gICAgICAubWNlQ29udGVudEJvZHkgcCBwaWN0dXJlIHtcbiAgICAgICAgbWFyZ2luOiAzNXB4IDAgMCAwOyB9IH1cbiAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgcCAuYWxpZ24tcmlnaHQsXG4gIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIHAgLmFsaWduLXJpZ2h0IGltZyxcbiAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgcCAuYWxpZ24tcmlnaHQgcGljdHVyZSxcbiAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgcCAuYWxpZ24tbGVmdCxcbiAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgcCAuYWxpZ24tbGVmdCBpbWcsXG4gIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIHAgLmFsaWduLWxlZnQgcGljdHVyZSxcbiAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgKiArIC5hbGlnbi1yaWdodCxcbiAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgKiArIC5hbGlnbi1yaWdodCBpbWcsXG4gIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljICogKyAuYWxpZ24tcmlnaHQgcGljdHVyZSxcbiAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgKiArIC5hbGlnbi1sZWZ0LFxuICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyAqICsgLmFsaWduLWxlZnQgaW1nLFxuICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyAqICsgLmFsaWduLWxlZnQgcGljdHVyZSxcbiAgLm1jZUNvbnRlbnRCb2R5IHAgLmFsaWduLXJpZ2h0LFxuICAubWNlQ29udGVudEJvZHkgcCAuYWxpZ24tcmlnaHQgaW1nLFxuICAubWNlQ29udGVudEJvZHkgcCAuYWxpZ24tcmlnaHQgcGljdHVyZSxcbiAgLm1jZUNvbnRlbnRCb2R5IHAgLmFsaWduLWxlZnQsXG4gIC5tY2VDb250ZW50Qm9keSBwIC5hbGlnbi1sZWZ0IGltZyxcbiAgLm1jZUNvbnRlbnRCb2R5IHAgLmFsaWduLWxlZnQgcGljdHVyZSxcbiAgLm1jZUNvbnRlbnRCb2R5ICogKyAuYWxpZ24tcmlnaHQsXG4gIC5tY2VDb250ZW50Qm9keSAqICsgLmFsaWduLXJpZ2h0IGltZyxcbiAgLm1jZUNvbnRlbnRCb2R5ICogKyAuYWxpZ24tcmlnaHQgcGljdHVyZSxcbiAgLm1jZUNvbnRlbnRCb2R5ICogKyAuYWxpZ24tbGVmdCxcbiAgLm1jZUNvbnRlbnRCb2R5ICogKyAuYWxpZ24tbGVmdCBpbWcsXG4gIC5tY2VDb250ZW50Qm9keSAqICsgLmFsaWduLWxlZnQgcGljdHVyZSB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBpbWcsXG4gIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIHBpY3R1cmUsXG4gIC5tY2VDb250ZW50Qm9keSBpbWcsXG4gIC5tY2VDb250ZW50Qm9keSBwaWN0dXJlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWlubGluZS1zdGFydDogMHB4O1xuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBpbWcgKyAqOm5vdCguaW1hZ2UtY2FwdGlvbiksXG4gICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgcGljdHVyZSArICo6bm90KC5pbWFnZS1jYXB0aW9uKSxcbiAgICAubWNlQ29udGVudEJvZHkgaW1nICsgKjpub3QoLmltYWdlLWNhcHRpb24pLFxuICAgIC5tY2VDb250ZW50Qm9keSBwaWN0dXJlICsgKjpub3QoLmltYWdlLWNhcHRpb24pIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgaW1nICsgKjpub3QoLmltYWdlLWNhcHRpb24pLFxuICAgICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgcGljdHVyZSArICo6bm90KC5pbWFnZS1jYXB0aW9uKSxcbiAgICAgIC5tY2VDb250ZW50Qm9keSBpbWcgKyAqOm5vdCguaW1hZ2UtY2FwdGlvbiksXG4gICAgICAubWNlQ29udGVudEJvZHkgcGljdHVyZSArICo6bm90KC5pbWFnZS1jYXB0aW9uKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7IH0gfVxuICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyAqICsgaW1nLFxuICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyAqICsgcGljdHVyZSxcbiAgLm1jZUNvbnRlbnRCb2R5ICogKyBpbWcsXG4gIC5tY2VDb250ZW50Qm9keSAqICsgcGljdHVyZSB7XG4gICAgbWFyZ2luLXRvcDogMjRweDsgfVxuICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBociArIGltZyxcbiAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgaHIgKyBwaWN0dXJlLFxuICAubWNlQ29udGVudEJvZHkgaHIgKyBpbWcsXG4gIC5tY2VDb250ZW50Qm9keSBociArIHBpY3R1cmUge1xuICAgIG1hcmdpbi10b3A6IDgwcHg7IH1cbiAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgLm1lZGlhLWNvbnRhaW5lcixcbiAgLm1jZUNvbnRlbnRCb2R5IC5tZWRpYS1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyAubWVkaWEtY29udGFpbmVyIGltZyxcbiAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyAubWVkaWEtY29udGFpbmVyIHBpY3R1cmUsXG4gICAgLm1jZUNvbnRlbnRCb2R5IC5tZWRpYS1jb250YWluZXIgaW1nLFxuICAgIC5tY2VDb250ZW50Qm9keSAubWVkaWEtY29udGFpbmVyIHBpY3R1cmUge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfVxuICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIC5tZWRpYS1jb250YWluZXIgKyAqLFxuICAgIC5tY2VDb250ZW50Qm9keSAubWVkaWEtY29udGFpbmVyICsgKiB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIHtcbiAgICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIC5tZWRpYS1jb250YWluZXIgKyAqLFxuICAgICAgLm1jZUNvbnRlbnRCb2R5IC5tZWRpYS1jb250YWluZXIgKyAqIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDsgfVxuICAgICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgLm1lZGlhLWNvbnRhaW5lci5hbGlnbi1yaWdodCwgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgLm1lZGlhLWNvbnRhaW5lci5hbGlnbi1sZWZ0LFxuICAgICAgLm1jZUNvbnRlbnRCb2R5IC5tZWRpYS1jb250YWluZXIuYWxpZ24tcmlnaHQsXG4gICAgICAubWNlQ29udGVudEJvZHkgLm1lZGlhLWNvbnRhaW5lci5hbGlnbi1sZWZ0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgICAgICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgLm1lZGlhLWNvbnRhaW5lci5hbGlnbi1yaWdodCArICosIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIC5tZWRpYS1jb250YWluZXIuYWxpZ24tbGVmdCArICosXG4gICAgICAgIC5tY2VDb250ZW50Qm9keSAubWVkaWEtY29udGFpbmVyLmFsaWduLXJpZ2h0ICsgKixcbiAgICAgICAgLm1jZUNvbnRlbnRCb2R5IC5tZWRpYS1jb250YWluZXIuYWxpZ24tbGVmdCArICoge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDE4cHg7IH1cbiAgICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIC5tZWRpYS1jb250YWluZXIuYWxpZ24tcmlnaHQsXG4gICAgICAubWNlQ29udGVudEJvZHkgLm1lZGlhLWNvbnRhaW5lci5hbGlnbi1yaWdodCB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7IH1cbiAgICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIC5tZWRpYS1jb250YWluZXIuYWxpZ24tbGVmdCxcbiAgICAgIC5tY2VDb250ZW50Qm9keSAubWVkaWEtY29udGFpbmVyLmFsaWduLWxlZnQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH0gfVxuICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyAuaW1hZ2UtY2FwdGlvbiwgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgZmlndXJlLmltYWdlIGZpZ2NhcHRpb24sIGZpZ3VyZS5pbWFnZSAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBmaWdjYXB0aW9uLFxuICAubWNlQ29udGVudEJvZHkgLmltYWdlLWNhcHRpb24sXG4gIC5tY2VDb250ZW50Qm9keSBmaWd1cmUuaW1hZ2UgZmlnY2FwdGlvbixcbiAgZmlndXJlLmltYWdlIC5tY2VDb250ZW50Qm9keSBmaWdjYXB0aW9uIHtcbiAgICBjb2xvcjogIzRhNTA1ODtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS40OTYyNXJlbTtcbiAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyAuaW1hZ2UtY2FwdGlvbiBzdHJvbmcsIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIGZpZ3VyZS5pbWFnZSBmaWdjYXB0aW9uIHN0cm9uZywgZmlndXJlLmltYWdlIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIGZpZ2NhcHRpb24gc3Ryb25nLFxuICAgIC5tY2VDb250ZW50Qm9keSAuaW1hZ2UtY2FwdGlvbiBzdHJvbmcsXG4gICAgLm1jZUNvbnRlbnRCb2R5IGZpZ3VyZS5pbWFnZSBmaWdjYXB0aW9uIHN0cm9uZyxcbiAgICBmaWd1cmUuaW1hZ2UgLm1jZUNvbnRlbnRCb2R5IGZpZ2NhcHRpb24gc3Ryb25nIHtcbiAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgLmltYWdlLWNhcHRpb24gKyAqLCAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBmaWd1cmUuaW1hZ2UgZmlnY2FwdGlvbiArICosIGZpZ3VyZS5pbWFnZSAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBmaWdjYXB0aW9uICsgKixcbiAgICAubWNlQ29udGVudEJvZHkgLmltYWdlLWNhcHRpb24gKyAqLFxuICAgIC5tY2VDb250ZW50Qm9keSBmaWd1cmUuaW1hZ2UgZmlnY2FwdGlvbiArICosXG4gICAgZmlndXJlLmltYWdlIC5tY2VDb250ZW50Qm9keSBmaWdjYXB0aW9uICsgKiB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIHVsLFxuICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBvbCxcbiAgLm1jZUNvbnRlbnRCb2R5IHVsLFxuICAubWNlQ29udGVudEJvZHkgb2wge1xuICAgIG1heC13aWR0aDogNjgwcHg7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyB1bCxcbiAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyB1bCAqLFxuICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIG9sLFxuICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIG9sICosXG4gICAgLm1jZUNvbnRlbnRCb2R5IHVsLFxuICAgIC5tY2VDb250ZW50Qm9keSB1bCAqLFxuICAgIC5tY2VDb250ZW50Qm9keSBvbCxcbiAgICAubWNlQ29udGVudEJvZHkgb2wgKiB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNjI1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgICAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyB1bCxcbiAgICAgICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgdWwgKixcbiAgICAgICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgb2wsXG4gICAgICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIG9sICosXG4gICAgICAgIC5tY2VDb250ZW50Qm9keSB1bCxcbiAgICAgICAgLm1jZUNvbnRlbnRCb2R5IHVsICosXG4gICAgICAgIC5tY2VDb250ZW50Qm9keSBvbCxcbiAgICAgICAgLm1jZUNvbnRlbnRCb2R5IG9sICoge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gICAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyB1bCxcbiAgICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIG9sLFxuICAgICAgLm1jZUNvbnRlbnRCb2R5IHVsLFxuICAgICAgLm1jZUNvbnRlbnRCb2R5IG9sIHtcbiAgICAgICAgbWF4LXdpZHRoOiA3MDBweDsgfSB9XG4gIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljICogKyB1bCxcbiAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgKiArIG9sLFxuICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyB1bCArICosXG4gIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIG9sICsgKixcbiAgLm1jZUNvbnRlbnRCb2R5ICogKyB1bCxcbiAgLm1jZUNvbnRlbnRCb2R5ICogKyBvbCxcbiAgLm1jZUNvbnRlbnRCb2R5IHVsICsgKixcbiAgLm1jZUNvbnRlbnRCb2R5IG9sICsgKiB7XG4gICAgbWFyZ2luLXRvcDogMjBweDsgfVxuICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyB1bCxcbiAgLm1jZUNvbnRlbnRCb2R5IHVsIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyB1bCBsaSxcbiAgICAubWNlQ29udGVudEJvZHkgdWwgbGkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIHVsIGxpICsgbGksXG4gICAgICAubWNlQ29udGVudEJvZHkgdWwgbGkgKyBsaSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEycHg7IH1cbiAgICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIHVsIGxpID4gKjpsYXN0LWNoaWxkLFxuICAgICAgLm1jZUNvbnRlbnRCb2R5IHVsIGxpID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgdWwgbGkgbGksXG4gICAgICAubWNlQ29udGVudEJvZHkgdWwgbGkgbGkge1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgdWwsXG4gICAgICAubWNlQ29udGVudEJvZHkgdWwge1xuICAgICAgICBtYXJnaW4tbGVmdDogOHB4OyB9IH1cbiAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyB1bCBsaTpiZWZvcmUsXG4gICAgLm1jZUNvbnRlbnRCb2R5IHVsIGxpOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogNnB4O1xuICAgICAgbWFyZ2luOiAwIDAgMCAwO1xuICAgICAgd2lkdGg6IDhweDtcbiAgICAgIGhlaWdodDogOHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDsgfVxuICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBvbCxcbiAgLm1jZUNvbnRlbnRCb2R5IG9sIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY291bnRlci1yZXNldDogbGk7IH1cbiAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBvbCBsaSxcbiAgICAubWNlQ29udGVudEJvZHkgb2wgbGkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIG9sIGxpICsgbGksXG4gICAgICAubWNlQ29udGVudEJvZHkgb2wgbGkgKyBsaSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEycHg7IH1cbiAgICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIG9sIGxpID4gKjpsYXN0LWNoaWxkLFxuICAgICAgLm1jZUNvbnRlbnRCb2R5IG9sIGxpID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgb2wgbGkgbGksXG4gICAgICAubWNlQ29udGVudEJvZHkgb2wgbGkgbGkge1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgb2wsXG4gICAgICAubWNlQ29udGVudEJvZHkgb2wge1xuICAgICAgICBtYXJnaW4tbGVmdDogOHB4OyB9IH1cbiAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBvbCBsaSxcbiAgICAubWNlQ29udGVudEJvZHkgb2wgbGkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBvbCBsaTpiZWZvcmUsXG4gICAgICAubWNlQ29udGVudEJvZHkgb2wgbGk6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogY291bnRlcihsaSkgXCIuIFwiO1xuICAgICAgICBjb3VudGVyLWluY3JlbWVudDogbGk7IH1cbiAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgLm1vdmllLXdyYXBwZXIsXG4gIC5tY2VDb250ZW50Qm9keSAubW92aWUtd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDU2LjI1JTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyAubW92aWUtd3JhcHBlciA+ICo6Zmlyc3QtY2hpbGQsXG4gICAgLm1jZUNvbnRlbnRCb2R5IC5tb3ZpZS13cmFwcGVyID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgaWZyYW1lLFxuICAubWNlQ29udGVudEJvZHkgaWZyYW1lIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIGgxLFxuICAubWNlQ29udGVudEJvZHkgaDEge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgbGluZS1oZWlnaHQ6IDAuMDAxcmVtO1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgaDEsXG4gICAgICAubWNlQ29udGVudEJvZHkgaDEge1xuICAgICAgICBmb250LXNpemU6IDMuMzc1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogNC4xMTc1cmVtOyB9IH1cbiAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgaDIsXG4gIC5tY2VDb250ZW50Qm9keSBoMiB7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjI1NzVyZW07XG4gICAgd29yZC1icmVhazogYnJlYWstd29yZDsgfVxuICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBoMyxcbiAgLm1jZUNvbnRlbnRCb2R5IGgzIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMS42MjVyZW07XG4gICAgd29yZC1icmVhazogYnJlYWstd29yZDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gICAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBoMyxcbiAgICAgIC5tY2VDb250ZW50Qm9keSBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS44NzVyZW07IH0gfVxuICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBoNCxcbiAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgaDUsXG4gIC5tY2VDb250ZW50Qm9keSBoNCxcbiAgLm1jZUNvbnRlbnRCb2R5IGg1IHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMzc1cmVtO1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgaDQsXG4gICAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBoNSxcbiAgICAgIC5tY2VDb250ZW50Qm9keSBoNCxcbiAgICAgIC5tY2VDb250ZW50Qm9keSBoNSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtOyB9IH1cbiAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgaDEsXG4gIC5tY2VDb250ZW50Qm9keSBoMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIGgxICsgKixcbiAgICAubWNlQ29udGVudEJvZHkgaDEgKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDE0cHg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gICAgICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIGgxICsgKixcbiAgICAgICAgLm1jZUNvbnRlbnRCb2R5IGgxICsgKiB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTRweDsgfSB9XG4gIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIGgyLFxuICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBoMyxcbiAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgaDQsXG4gIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIGg1IC5mX19oMixcbiAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgLmZfX2gzLFxuICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyAuZl9faDQsXG4gIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIC5mX19oNSxcbiAgLm1jZUNvbnRlbnRCb2R5IGgyLFxuICAubWNlQ29udGVudEJvZHkgaDMsXG4gIC5tY2VDb250ZW50Qm9keSBoNCxcbiAgLm1jZUNvbnRlbnRCb2R5IGg1IC5mX19oMixcbiAgLm1jZUNvbnRlbnRCb2R5IC5mX19oMyxcbiAgLm1jZUNvbnRlbnRCb2R5IC5mX19oNCxcbiAgLm1jZUNvbnRlbnRCb2R5IC5mX19oNSB7XG4gICAgY29sb3I6ICMwYTBhMGE7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIGgyICsgKixcbiAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBoMyArICosXG4gICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgaDQgKyAqLFxuICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIGg1IC5mX19oMiArICosXG4gICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgLmZfX2gzICsgKixcbiAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyAuZl9faDQgKyAqLFxuICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIC5mX19oNSArICosXG4gICAgLm1jZUNvbnRlbnRCb2R5IGgyICsgKixcbiAgICAubWNlQ29udGVudEJvZHkgaDMgKyAqLFxuICAgIC5tY2VDb250ZW50Qm9keSBoNCArICosXG4gICAgLm1jZUNvbnRlbnRCb2R5IGg1IC5mX19oMiArICosXG4gICAgLm1jZUNvbnRlbnRCb2R5IC5mX19oMyArICosXG4gICAgLm1jZUNvbnRlbnRCb2R5IC5mX19oNCArICosXG4gICAgLm1jZUNvbnRlbnRCb2R5IC5mX19oNSArICoge1xuICAgICAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIGgyLFxuICAgICogKyAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBoMixcbiAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBoMyxcbiAgICAqICtcbiAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBoMyxcbiAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBoNCxcbiAgICAqICtcbiAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBoNCxcbiAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBoNSAuZl9faDIsXG4gICAgKiArXG4gICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgaDUgLmZfX2gyLFxuICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIC5mX19oMyxcbiAgICAqICtcbiAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyAuZl9faDMsXG4gICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgLmZfX2g0LFxuICAgICogK1xuICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIC5mX19oNCxcbiAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyAuZl9faDUsXG4gICAgKiArXG4gICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgLmZfX2g1LFxuICAgIC5tY2VDb250ZW50Qm9keSBoMixcbiAgICAqICtcbiAgICAubWNlQ29udGVudEJvZHkgaDIsXG4gICAgLm1jZUNvbnRlbnRCb2R5IGgzLFxuICAgICogK1xuICAgIC5tY2VDb250ZW50Qm9keSBoMyxcbiAgICAubWNlQ29udGVudEJvZHkgaDQsXG4gICAgKiArXG4gICAgLm1jZUNvbnRlbnRCb2R5IGg0LFxuICAgIC5tY2VDb250ZW50Qm9keSBoNSAuZl9faDIsXG4gICAgKiArXG4gICAgLm1jZUNvbnRlbnRCb2R5IGg1IC5mX19oMixcbiAgICAubWNlQ29udGVudEJvZHkgLmZfX2gzLFxuICAgICogK1xuICAgIC5tY2VDb250ZW50Qm9keSAuZl9faDMsXG4gICAgLm1jZUNvbnRlbnRCb2R5IC5mX19oNCxcbiAgICAqICtcbiAgICAubWNlQ29udGVudEJvZHkgLmZfX2g0LFxuICAgIC5tY2VDb250ZW50Qm9keSAuZl9faDUsXG4gICAgKiArXG4gICAgLm1jZUNvbnRlbnRCb2R5IC5mX19oNSB7XG4gICAgICBtYXJnaW4tdG9wOiAyNHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIHtcbiAgICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIGgyLFxuICAgICAgKiArIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIGgyLFxuICAgICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgaDMsXG4gICAgICAqICtcbiAgICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIGgzLFxuICAgICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgaDQsXG4gICAgICAqICtcbiAgICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIGg0LFxuICAgICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgaDUgLmZfX2gyLFxuICAgICAgKiArXG4gICAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyBoNSAuZl9faDIsXG4gICAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyAuZl9faDMsXG4gICAgICAqICtcbiAgICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIC5mX19oMyxcbiAgICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIC5mX19oNCxcbiAgICAgICogK1xuICAgICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgLmZfX2g0LFxuICAgICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgLmZfX2g1LFxuICAgICAgKiArXG4gICAgICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyAuZl9faDUsXG4gICAgICAubWNlQ29udGVudEJvZHkgaDIsXG4gICAgICAqICtcbiAgICAgIC5tY2VDb250ZW50Qm9keSBoMixcbiAgICAgIC5tY2VDb250ZW50Qm9keSBoMyxcbiAgICAgICogK1xuICAgICAgLm1jZUNvbnRlbnRCb2R5IGgzLFxuICAgICAgLm1jZUNvbnRlbnRCb2R5IGg0LFxuICAgICAgKiArXG4gICAgICAubWNlQ29udGVudEJvZHkgaDQsXG4gICAgICAubWNlQ29udGVudEJvZHkgaDUgLmZfX2gyLFxuICAgICAgKiArXG4gICAgICAubWNlQ29udGVudEJvZHkgaDUgLmZfX2gyLFxuICAgICAgLm1jZUNvbnRlbnRCb2R5IC5mX19oMyxcbiAgICAgICogK1xuICAgICAgLm1jZUNvbnRlbnRCb2R5IC5mX19oMyxcbiAgICAgIC5tY2VDb250ZW50Qm9keSAuZl9faDQsXG4gICAgICAqICtcbiAgICAgIC5tY2VDb250ZW50Qm9keSAuZl9faDQsXG4gICAgICAubWNlQ29udGVudEJvZHkgLmZfX2g1LFxuICAgICAgKiArXG4gICAgICAubWNlQ29udGVudEJvZHkgLmZfX2g1IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjRweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gICAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgaDIgKyAqLFxuICAgIC5tY2VDb250ZW50Qm9keSBoMiArICoge1xuICAgICAgbWFyZ2luLXRvcDogMTJweDsgfSB9XG4gIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIGhyLFxuICAubWNlQ29udGVudEJvZHkgaHIge1xuICAgIGJvcmRlci1jb2xvcjogI2NlZDRkYTtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBub25lO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBub25lO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogbm9uZTsgfVxuICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyxcbiAgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMgKyAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyxcbiAgLm1jZUNvbnRlbnRCb2R5IC5jb21wb25lbnQtY29udGVudC1nZW5lcmljLFxuICAubWNlQ29udGVudEJvZHkgKyAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyB7XG4gICAgbWFyZ2luLXRvcDogMjBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljICsgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMsXG4gICAgLm1jZUNvbnRlbnRCb2R5ICsgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDsgfSB9XG5cbi5jb29raWUtZGlzY2xhaW1lciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDIwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgbGVmdDogNTAlO1xuICBkaXNwbGF5OiBub25lOyB9XG4gIC5jb29raWUtZGlzY2xhaW1lcl9fY29udGVudCB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtZmxvdzogY29sdW1uIHdyYXA7IH1cbiAgLmNvb2tpZS1kaXNjbGFpbWVyX19pbmZvIHtcbiAgICBmbGV4OiAxOyB9XG4gIC5jb29raWUtZGlzY2xhaW1lcl9fYnV0dG9uLXdyYXBwZXIge1xuICAgIGZsZXg6IDE7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uY29va2llLWRpc2NsYWltZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDA7XG4gIHBhZGRpbmc6IDJyZW07XG4gIGJvdHRvbTogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgICAuY29va2llLWRpc2NsYWltZXIge1xuICAgICAgYm90dG9tOiAwOyB9IH1cbiAgLmNvb2tpZS1kaXNjbGFpbWVyX19jb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LWZsb3c6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLmNvb2tpZS1kaXNjbGFpbWVyX19pbmZvIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogMS42MjVyZW07XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gICAgLmNvb2tpZS1kaXNjbGFpbWVyX19pbmZvIHAge1xuICAgICAgbWFyZ2luOiAwIDAgMCAwOyB9XG4gICAgICAuY29va2llLWRpc2NsYWltZXJfX2luZm8gcCArIHAge1xuICAgICAgICBtYXJnaW46IC41cmVtIDAgMCAwOyB9XG4gICAgICAuY29va2llLWRpc2NsYWltZXJfX2luZm8gcCBhIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgIC5jb29raWUtZGlzY2xhaW1lcl9faW5mbyArIC5jb29raWUtZGlzY2xhaW1lcl9fYnV0dG9uLXdyYXBwZXIge1xuICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogMi4zNzVyZW07IH1cbiAgLmNvb2tpZS1kaXNjbGFpbWVyX19idXR0b24ge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNTYyNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMC44NzVyZW07XG4gICAgbWFyZ2luOiAwIDAgMCAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgbWluLWhlaWdodDogMi41cmVtO1xuICAgIHBhZGRpbmc6IDAgMjRweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRyYW5zaXRpb246IGFsbCAxMDBtcyBlYXNlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiBzb2xpZCAycHggd2hpdGU7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBtYXJnaW46IDI0cHggMCAwIDA7IH1cbiAgICAuY29va2llLWRpc2NsYWltZXJfX2J1dHRvbjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmV5O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgLmNvb2tpZS1kaXNjbGFpbWVyX19idXR0b246Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTsgfVxuICAgIC5jb29raWUtZGlzY2xhaW1lcl9fYnV0dG9uOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZ3JleTsgfVxuICAgIC5jb29raWUtZGlzY2xhaW1lcl9fYnV0dG9uOmRpc2FibGVkOmhvdmVyLCAuY29va2llLWRpc2NsYWltZXJfX2J1dHRvbjpkaXNhYmxlZDpmb2N1cywgLmNvb2tpZS1kaXNjbGFpbWVyX19idXR0b246ZGlzYWJsZWQ6YWN0aXZlLCAuY29va2llLWRpc2NsYWltZXJfX2J1dHRvbi5pcy0tZGlzYWJsZWQ6aG92ZXIsIC5jb29raWUtZGlzY2xhaW1lcl9fYnV0dG9uLmlzLS1kaXNhYmxlZDpmb2N1cywgLmNvb2tpZS1kaXNjbGFpbWVyX19idXR0b24uaXMtLWRpc2FibGVkOmFjdGl2ZSB7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgLmNvb2tpZS1kaXNjbGFpbWVyX19idXR0b24uaGFzLS1pY29uIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgcGFkZGluZzogMCAyNHB4IDAgNDRweDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgICAgIC5jb29raWUtZGlzY2xhaW1lcl9fYnV0dG9uLmhhcy0taWNvbiAuaWNvbiB7XG4gICAgICAgIGxlZnQ6IC0xM3B4O1xuICAgICAgICBtYXJnaW4tbGVmdDogLTdweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IC0xcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgICAgLmNvb2tpZS1kaXNjbGFpbWVyX19idXR0b24ge1xuICAgICAgICB3aWR0aDogYXV0bzsgfSB9XG4gICAgLmNvb2tpZS1kaXNjbGFpbWVyX19idXR0b246aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2I5MjAxYjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAgICAgLmNvb2tpZS1kaXNjbGFpbWVyX19idXR0b24ge1xuICAgICAgICBtYXJnaW46IDAgMCAwIDA7IH0gfVxuXG4ucGFuZWwge1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCAjZWFlY2VmO1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIDFweCAjZWFlY2VmO1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2VhZWNlZjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDYzcHg7XG4gIGxlZnQ6IDA7XG4gIHRvcDogLTEwMDBweDtcbiAgdHJhbnNpdGlvbjogdG9wIDJzIGVhc2UgMHM7XG4gIC8qIFBhbmVsIHRvcCAqL1xuICAvKiBQYW5lbCB0b3AgbmF2aWdhdGlvbiAqL1xuICAvKiBQYW5lbCBzdWIgbmF2aWdhdGlvbiAqLyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucGFuZWwge1xuICAgICAgdG9wOiA5MHB4OyB9IH1cbiAgLnBhbmVsLmlzLS1vcGVuIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAucGFuZWxfX3RvcCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gICAgLnBhbmVsX190b3AgLmJ1dHRvbi1jbG9zZSB7XG4gICAgICByaWdodDogMTBweDtcbiAgICAgIHRvcDogMHB4O1xuICAgICAgei1pbmRleDogMjsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAuMzEyNWVtKSB7XG4gICAgICAgIC5wYW5lbF9fdG9wIC5idXR0b24tY2xvc2Uge1xuICAgICAgICAgIHJpZ2h0OiAwOyB9IH1cbiAgLnBhbmVsX19tYWluIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNC4zNzVyZW0gIWltcG9ydGFudDsgfVxuICAucGFuZWxfX2hlYWRlciB7XG4gICAgcGFkZGluZzogMDsgfVxuICAucGFuZWxfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDEuNjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjI0MjVyZW07XG4gICAgY29sb3I6ICMwYTBhMGE7XG4gICAgbWFyZ2luOiAwIDAgMCAwOyB9XG4gICAgLnBhbmVsX190aXRsZV9fbGluayB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAgICAgLnBhbmVsX190aXRsZV9fbGluazpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIC5wYW5lbF9fcHJlYW1ibGUge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogMS43NTVyZW07XG4gICAgbWFyZ2luOiAwLjVyZW0gMCAwIDA7IH1cbiAgLnBhbmVsX19mZWF0dXJlZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogNjA1cHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlOGVjZjE7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAucGFuZWxfX2ZlYXR1cmVkX19pbm5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIC5wYW5lbF9fZmVhdHVyZWRfX2xpbmsge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAucGFuZWxfX2ZlYXR1cmVkX19oZWFkaW5nIHtcbiAgICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgICAgIGZvbnQtc2l6ZTogMS42MjVyZW07XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyLjI0MjVyZW07XG4gICAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAgIC5wYW5lbF9fZmVhdHVyZWRfX2ltYWdlIHtcbiAgICAgIG1hcmdpbjogMS41cmVtIDAgMCAwO1xuICAgICAgYm94LXNoYWRvdzogMCAyMHB4IDMwcHggLTEwcHggcmdiYSgwLCAwLCAwLCAwLjQpOyB9XG4gICAgLnBhbmVsX19mZWF0dXJlZF9fY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLnBhbmVsX19mZWF0dXJlZF9fY29udGVudCAuY2F0ZWdvcnktbGlzdCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAwIDA7XG4gICAgICAgIG1hcmdpbjogMnB4IDAgMCAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgICAgLnBhbmVsX19mZWF0dXJlZF9fY29udGVudCAuY2F0ZWdvcnktbGlzdF9faXRlbSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS42M3JlbTtcbiAgICAgICAgICBjb2xvcjogIzg1OGU5NjsgfVxuICAgICAgICAgIC5wYW5lbF9fZmVhdHVyZWRfX2NvbnRlbnQgLmNhdGVnb3J5LWxpc3RfX2l0ZW06bm90KDpsYXN0LWNoaWxkKTo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCIsIFwiO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNHB4OyB9XG4gICAgLnBhbmVsX19mZWF0dXJlZF9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgbGluZS1oZWlnaHQ6IDIuMzc4NzVyZW07XG4gICAgICBjb2xvcjogIzBhMGEwYTtcbiAgICAgIG1hcmdpbjogMXJlbSAwIDAgMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwLjMxMjVlbSkge1xuICAgICAgLnBhbmVsX19mZWF0dXJlZCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuICAucGFuZWwgLmJ1dHRvbi1tb3JlLWxpbmsge1xuICAgIG1hcmdpbjogMnJlbSAwIDAgMDsgfVxuICAucGFuZWwgLmJ1dHRvbi1uZXh0LWxldmVsIHtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuICAucGFuZWwgLnRvcC1uYXYge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMCAwIDAgMS44NzVyZW07XG4gICAgbWFyZ2luOiAwIDAgMCAwO1xuICAgIGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggI2VhZWNlZjsgfVxuICAgIC5wYW5lbCAudG9wLW5hdl9faXRlbSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgICAucGFuZWwgLnRvcC1uYXZfX2l0ZW0gKyAudG9wLW5hdl9faXRlbSB7XG4gICAgICAgIG1hcmdpbjogMXJlbSAwIDAgMDsgfVxuICAgIC5wYW5lbCAudG9wLW5hdl9fbGluaywgLnBhbmVsIC50b3AtbmF2X19idXR0b24ge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBjb2xvcjogIzBhMGEwYTtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtOyB9XG4gICAgICAucGFuZWwgLnRvcC1uYXZfX2xpbmsuaXMtLWFjdGl2ZSwgLnBhbmVsIC50b3AtbmF2X19idXR0b24uaXMtLWFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgICAucGFuZWwgLnRvcC1uYXZfX2xpbmsuaXMtLWluYWN0aXZlLCAucGFuZWwgLnRvcC1uYXZfX2J1dHRvbi5pcy0taW5hY3RpdmUge1xuICAgICAgICBjb2xvcjogI2JkYmRiZDsgfVxuICAgICAgLnBhbmVsIC50b3AtbmF2X19saW5rOmhvdmVyLCAucGFuZWwgLnRvcC1uYXZfX2J1dHRvbjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAucGFuZWwgLnN1Yi1uYXYge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMCAwIDAgMS44NzVyZW07XG4gICAgbWFyZ2luOiAwIDAgMCAwO1xuICAgIGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggI2VhZWNlZjtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnBhbmVsIC5zdWItbmF2X19pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAgIC5wYW5lbCAuc3ViLW5hdl9faXRlbSArIC5zdWItbmF2X19pdGVtIHtcbiAgICAgICAgbWFyZ2luOiAxcmVtIDAgMCAwOyB9XG4gICAgLnBhbmVsIC5zdWItbmF2X19saW5rIHtcbiAgICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMS42M3JlbTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgLnBhbmVsIC5zdWItbmF2X19saW5rOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgLnBhbmVsIC5zdWItbmF2LmlzLS1vcGVuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5mb3JtIC5mb3JtLWVsZW1lbnQtd3JhcHBlciB7XG4gIHBhZGRpbmc6IDAgMCAyMHB4IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uZm9ybSAuZWxlbWVudC1mb3JtLWRlc2NyaXB0aW9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5mb3JtIC5hbGlnbi1ib3R0b20gLmZvcm0tZWxlbWVudC13cmFwcGVyIHtcbiAgYWxpZ24tc2VsZjogZmxleC1lbmQ7IH1cblxuLnZhbGlkYXRpb24tdGV4dC0tZXJyb3Ige1xuICByaWdodDogMDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGJvdHRvbTogMDtcbiAgY29sb3I6ICNlMDMxMzE7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgbGluZS1oZWlnaHQ6IDEuNTc7XG4gIHBhZGRpbmctdG9wOiA4cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmlzLS1pbnZhbGlkIH4gLnZhbGlkYXRpb24tdGV4dC0tZXJyb3IsXG4ubm90LS1oaWRkZW4udmFsaWRhdGlvbi10ZXh0LS1lcnJvciB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cblxuLmZvcm0tbmV3c2xldHRlciB7XG4gIG1hcmdpbjogMS41cmVtIDAgMCAwOyB9XG4gIC5mb3JtLW5ld3NsZXR0ZXJfX3JvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIHtcbiAgICAgIC5mb3JtLW5ld3NsZXR0ZXJfX3JvdyB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuICAuZm9ybS1uZXdzbGV0dGVyX19pbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggIzBhMGEwYTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgcGFkZGluZzogMC43NXJlbSAwLjc1cmVtIDAuNzVyZW0gMC43NXJlbTsgfVxuICAgIC5mb3JtLW5ld3NsZXR0ZXJfX2lucHV0W3R5cGU9XCJ0ZXh0XCJdOm5vdCguaXMtLWludmFsaWQpOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzBhMGEwYTtcbiAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAuZm9ybS1uZXdzbGV0dGVyX19pbnB1dFt0eXBlPVwidGV4dFwiXTo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgICAgLmZvcm0tbmV3c2xldHRlcl9faW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICBtYXgtd2lkdGg6IDM0M3B4OyB9IH1cbiAgLmZvcm0tbmV3c2xldHRlcl9fc3VibWl0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGYyZDI4O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICBtYXJnaW46IDFyZW0gMCAwIDA7XG4gICAgcGFkZGluZzogMC42MjVyZW0gMC43NXJlbSAwLjYyNXJlbSAwLjc1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIHtcbiAgICAgIC5mb3JtLW5ld3NsZXR0ZXJfX3N1Ym1pdCB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgbWluLXdpZHRoOiAxNDNweDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAwLjVyZW07IH0gfVxuXG4uZ3JhZGUtbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDAgMCAwIDA7XG4gIG1hcmdpbjogMCAwIDAgMDsgfVxuICAuZ3JhZGUtbGlzdF9faXRlbSArIC5ncmFkZS1saXN0X19pdGVtIHtcbiAgICBtYXJnaW46IDAgMCAwIDAuMjVyZW07IH1cbiAgLmdyYWRlLWxpc3RfX2l0ZW0gLmljb24ge1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIGhlaWdodDogMjRweDsgfVxuXG4ubW92aWUtaW5mb3JtYXRpb24gLmdyYWRlLWxpc3Qge1xuICBtYXJnaW46IDFyZW0gMCAwIDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgLm1vdmllLWluZm9ybWF0aW9uIC5ncmFkZS1saXN0IHtcbiAgICAgIG1hcmdpbjogMS41cmVtIDAgMCAwOyB9IH1cblxuLmFydGljbGUtY2FyZCAuZ3JhZGUtbGlzdCArIC5hcnRpY2xlLWNhcmQtc2VydmljZSB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG5cbi5tZWdhbWVudV9fZmVhdHVyZWRfX2NvbnRlbnQgLmdyYWRlLWxpc3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWFyZ2luOiAxLjVyZW0gMCAwIDA7IH1cblxuLnNpdGUtbmF2LW1vYmlsZSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDQwMHB4O1xuICB6LWluZGV4OiAxMDA7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyNTBtcyBlYXNlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsgfVxuICAuc2l0ZS1uYXYtbW9iaWxlX19oZWFkZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgei1pbmRleDogMTA7IH1cbiAgLnNpdGUtbmF2LW1vYmlsZV9fY29udGVudC13cmFwcGVyIHtcbiAgICBwYWRkaW5nOiA4MHB4IDAgMCAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgei1pbmRleDogOTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IH1cbiAgLnNpdGUtbmF2LW1vYmlsZS0tYWN0aXZlLFxuICAuc2l0ZS1uYXYtbW9iaWxlLS1hY3RpdmUgYm9keSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnNpdGUtbmF2LW1vYmlsZS0tYWN0aXZlIC5zaXRlLW5hdi1tb2JpbGUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cblxuLnNpdGUtbmF2LW1vYmlsZS1vdmVybGF5IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgIC5zaXRlLW5hdi1tb2JpbGUtb3ZlcmxheSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICAgICAgbGVmdDogLTk5OTlweDtcbiAgICAgIHRvcDogLTk5OTlweDtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIHotaW5kZXg6IDk5O1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjc1ZW0pIHtcbiAgLnNpdGUtbmF2LW1vYmlsZS0tYWN0aXZlIC5zaXRlLW5hdi1tb2JpbGUtb3ZlcmxheSB7XG4gICAgYW5pbWF0aW9uOiBieWdnYS1vZmZjYW52YXMtbWVudS1vdmVybGF5IDE1MG1zIGVhc2U7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDAuMztcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9IH1cblxuQGtleWZyYW1lcyBieWdnYS1vZmZjYW52YXMtbWVudS1vdmVybGF5IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMC4zOyB9IH1cblxuLnNpdGUtbmF2LW1vYmlsZV9fYnV0dG9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMTRweDtcbiAgZm9udC1zaXplOiAwO1xuICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMTAwbXM7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5zaXRlLW5hdi1tb2JpbGVfX2J1dHRvbi1pY29uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA2cHg7XG4gICAgbGVmdDogMHB4O1xuICAgIHJpZ2h0OiAwcHg7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZDogIzlkYTVhYTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDBzIDEwMG1zOyB9XG4gICAgLnNpdGUtbmF2LW1vYmlsZV9fYnV0dG9uLWljb246YmVmb3JlLCAuc2l0ZS1uYXYtbW9iaWxlX19idXR0b24taWNvbjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzlkYTVhYTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxMDBtcywgMTAwbXM7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAxMDBtcywgMHM7IH1cbiAgICAuc2l0ZS1uYXYtbW9iaWxlX19idXR0b24taWNvbjpiZWZvcmUge1xuICAgICAgdG9wOiAtNnB4O1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdG9wLCB0cmFuc2Zvcm07IH1cbiAgICAuc2l0ZS1uYXYtbW9iaWxlX19idXR0b24taWNvbjphZnRlciB7XG4gICAgICBib3R0b206IC02cHg7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBib3R0b20sIHRyYW5zZm9ybTsgfVxuICAuc2l0ZS1uYXYtbW9iaWxlX19idXR0b246Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7IH1cblxuLnNpdGUtbmF2LW1vYmlsZS0tYWN0aXZlIC5zaXRlLW5hdi1tb2JpbGVfX2J1dHRvbi1pY29uIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwcyAwczsgfVxuICAuc2l0ZS1uYXYtbW9iaWxlLS1hY3RpdmUgLnNpdGUtbmF2LW1vYmlsZV9fYnV0dG9uLWljb246OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsgfVxuICAuc2l0ZS1uYXYtbW9iaWxlLS1hY3RpdmUgLnNpdGUtbmF2LW1vYmlsZV9fYnV0dG9uLWljb246OmFmdGVyIHtcbiAgICBib3R0b206IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsgfVxuICAuc2l0ZS1uYXYtbW9iaWxlLS1hY3RpdmUgLnNpdGUtbmF2LW1vYmlsZV9fYnV0dG9uLWljb246OmJlZm9yZSwgLnNpdGUtbmF2LW1vYmlsZS0tYWN0aXZlIC5zaXRlLW5hdi1tb2JpbGVfX2J1dHRvbi1pY29uOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHMsIDEwMG1zOyB9XG5cbi5zaXRlLW5hdi1tb2JpbGUge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlO1xuICBtYXgtd2lkdGg6IDQ3NXB4O1xuICB3aWR0aDogODUlO1xuICB0b3A6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB6LWluZGV4OiAxMjA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zaXRlLW5hdi1tb2JpbGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIHRvcDogOTBweDsgfSB9XG4gIC5zaXRlLW5hdi1tb2JpbGVfX2hlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nOiAwIDAgMCAwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDYzcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuICAgIC5zaXRlLW5hdi1tb2JpbGVfX2hlYWRlcl9fY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMXJlbSAxLjgxMjVyZW07IH1cbiAgLnNpdGUtbmF2LW1vYmlsZV9fY29udGVudC13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDkwcHgpO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG1hcmdpbi10b3A6IDkwcHg7IH1cbiAgLnNpdGUtbmF2LW1vYmlsZV9fYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgd2lkdGg6IDE4cHg7XG4gICAgaGVpZ2h0OiAxNXB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnNpdGUtbmF2LW1vYmlsZV9fYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5zaXRlLXNlYXJjaC1pcy0tYWN0aXZlIC5zaXRlLW5hdi1tb2JpbGUge1xuICB0b3A6IDE1MXB4OyB9XG5cbi5zaXRlLW5hdi1tb2JpbGUtLWFjdGl2ZSAuc2l0ZS1uYXYtbW9iaWxlLW92ZXJsYXkge1xuICB0b3A6IDA7XG4gIG9wYWNpdHk6IC43O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBhbmltYXRpb246IGJ5Z2dhLW9mZmNhbnZhcy1tZW51LW92ZXJsYXkgMTUwbXMgZWFzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTEwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2l0ZS1uYXYtbW9iaWxlLS1hY3RpdmUgLnNpdGUtbmF2LW1vYmlsZS1vdmVybGF5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uc2l0ZS1uYXYtbW9iaWxlLS1hY3RpdmUuc2l0ZS1zZWFyY2gtaXMtLWFjdGl2ZSAuc2l0ZS1uYXYtbW9iaWxlLW92ZXJsYXkge1xuICB0b3A6IDE1MXB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2l0ZS1uYXYtbW9iaWxlLS1hY3RpdmUuc2l0ZS1zZWFyY2gtaXMtLWFjdGl2ZSAuc2l0ZS1uYXYtbW9iaWxlLW92ZXJsYXkge1xuICAgICAgdG9wOiAyODRweDsgfSB9XG5cbi5uYXYtZGVza3RvcC1oYW1idXJnZXIge1xuICBtYXJnaW46IDNyZW0gMCAwIDA7XG4gIGRpc3BsYXk6IGZsZXg7IH1cbiAgLm5hdi1kZXNrdG9wLWhhbWJ1cmdlcl9fbmF2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgbWluLXdpZHRoOiAxOC40Mzc1cmVtO1xuICAgIG1hcmdpbjogMCAwIDAgMTEuNTYyNXJlbTtcbiAgICBwYWRkaW5nOiAwIDAgMCAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAubmF2LWRlc2t0b3AtaGFtYnVyZ2VyX19uYXZfX2l0ZW0gKyAubmF2LWRlc2t0b3AtaGFtYnVyZ2VyX19uYXZfX2l0ZW0ge1xuICAgICAgbWFyZ2luOiAxLjVyZW0gMCAwIDA7IH1cbiAgICAubmF2LWRlc2t0b3AtaGFtYnVyZ2VyX19uYXZfX2l0ZW0uaXMtLWFjdGl2ZSAubmF2LWRlc2t0b3AtaGFtYnVyZ2VyX19uYXZfX2xpbmsge1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAgIC5uYXYtZGVza3RvcC1oYW1idXJnZXJfX25hdl9fbGluayB7XG4gICAgICBmb250LXNpemU6IDEuNjI1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMi4yNDI1cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMTVzIGVhc2U7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAuMTVzOyB9XG4gIC5uYXYtZGVza3RvcC1oYW1idXJnZXJfX3N1Yi1uYXYge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMCAwIDAgMDtcbiAgICBtYXJnaW46IDJyZW0gMCAwIDA7IH1cbiAgICAubmF2LWRlc2t0b3AtaGFtYnVyZ2VyX19zdWItbmF2LWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjE1cyBlYXNlO1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMDtcbiAgICAgIHBhZGRpbmc6IDAgMCAxLjg3NXJlbSAxLjg3NXJlbTtcbiAgICAgIGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggI2VhZWNlZjsgfVxuICAgICAgLm5hdi1kZXNrdG9wLWhhbWJ1cmdlcl9fc3ViLW5hdi1jb250YWluZXIuaXMtLWFjdGl2ZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zNXMgZWFzZTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogLjE1czsgfVxuICAgIC5uYXYtZGVza3RvcC1oYW1idXJnZXJfX3N1Yi1uYXZfX2l0ZW0gKyAubmF2LWRlc2t0b3AtaGFtYnVyZ2VyX19zdWItbmF2X19pdGVtIHtcbiAgICAgIG1hcmdpbjogMXJlbSAwIDAgMDsgfVxuICAgIC5uYXYtZGVza3RvcC1oYW1idXJnZXJfX3N1Yi1uYXZfX2l0ZW0uaXMtLWFjdGl2ZSAubmF2LWRlc2t0b3AtaGFtYnVyZ2VyX19zdWItbmF2X19saW5rIHtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAubmF2LWRlc2t0b3AtaGFtYnVyZ2VyX19zdWItbmF2X19saW5rIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNjNyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgICAgY29sb3I6ICMwYTBhMGE7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLm5hdi1kZXNrdG9wLWhhbWJ1cmdlcl9fc3ViLW5hdl9fbGluazpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5zZWNvbmRhcnltZW51LS1pcy1vcGVuIC5uYXYtZGVza3RvcC1oYW1idXJnZXJfX25hdl9fbGluazpub3QoLmlzLS1hY3RpdmUpIHtcbiAgb3BhY2l0eTogLjI1OyB9XG4gIC5zZWNvbmRhcnltZW51LS1pcy1vcGVuIC5uYXYtZGVza3RvcC1oYW1idXJnZXJfX25hdl9fbGluazpub3QoLmlzLS1hY3RpdmUpOmhvdmVyIHtcbiAgICBvcGFjaXR5OiAxOyB9XG5cbi5uYXYtY2F0ZWdvcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyNTJhO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMS41cmVtIDAgMS41cmVtIDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgLm5hdi1jYXRlZ29yeV9fbmF2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwIDAgMCAwO1xuICAgIG1hcmdpbjogMCAwIDAgMDsgfVxuICAgIC5uYXYtY2F0ZWdvcnlfX25hdl9faXRlbTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW46IDAgMCAwIDNyZW07IH1cbiAgICAubmF2LWNhdGVnb3J5X19uYXZfX2xpbmsge1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMS42MjVyZW07XG4gICAgICBjb2xvcjogIzlkYTVhYTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgLm5hdi1jYXRlZ29yeV9fbmF2X19saW5rIC5pY29uIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAwLjVyZW07IH1cbiAgICAgIC5uYXYtY2F0ZWdvcnlfX25hdl9fbGluazpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgICAgICAubmF2LWNhdGVnb3J5X19uYXZfX2xpbms6aG92ZXIgLmljb24ge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlOyB9XG4gICAgICAgICAgLm5hdi1jYXRlZ29yeV9fbmF2X19saW5rOmhvdmVyIC5pY29uIHBhdGgge1xuICAgICAgICAgICAgZmlsbDogd2hpdGU7IH1cbiAgICAgIC5uYXYtY2F0ZWdvcnlfX25hdl9fbGluay5pcy0tYWN0aXZlIHtcbiAgICAgICAgY29sb3I6IHdoaXRlOyB9XG4gICAgICAgIC5uYXYtY2F0ZWdvcnlfX25hdl9fbGluay5pcy0tYWN0aXZlIC5pY29uIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTsgfVxuICAgICAgICAgIC5uYXYtY2F0ZWdvcnlfX25hdl9fbGluay5pcy0tYWN0aXZlIC5pY29uIHBhdGgge1xuICAgICAgICAgICAgZmlsbDogd2hpdGU7IH1cbiAgLm5hdi1jYXRlZ29yeV9fc3ViLW5hdiB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDAgMCAwIDA7XG4gICAgcGFkZGluZzogMCAwIDAgMDsgfVxuICAgIC5uYXYtY2F0ZWdvcnlfX3N1Yi1uYXZfX2l0ZW0ge1xuICAgICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICAgIC5uYXYtY2F0ZWdvcnlfX3N1Yi1uYXZfX2l0ZW06bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW46IDFyZW0gMCAwIDA7IH1cbiAgICAubmF2LWNhdGVnb3J5X19zdWItbmF2X19saW5rIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgY29sb3I6ICM0YTUwNTg7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAgIC5uYXYtY2F0ZWdvcnlfX3N1Yi1uYXZfX2xpbms6aG92ZXIge1xuICAgICAgICBjb2xvcjogIzI3MmEyZTsgfVxuICAubmF2LWNhdGVnb3J5X19jb250ZW50IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmYzZjU7XG4gICAgcGFkZGluZzogMnJlbSAwIDJyZW0gMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAubmF2LWNhdGVnb3J5X19jb250ZW50LmlzLS1hY3RpdmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogOTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWluLWhlaWdodDogMTY4cHg7IH1cbiAgICAubmF2LWNhdGVnb3J5X19jb250ZW50IC5jbG9zZS1jb250YWluZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLm5hdi1jYXRlZ29yeV9fY29udGVudCAuYnV0dG9uLWNsb3NlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiAwOyB9XG4gICAgICAubmF2LWNhdGVnb3J5X19jb250ZW50IC5idXR0b24tY2xvc2UgLmljb24tY29udGFpbmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIGJvcmRlcjogc29saWQgMXB4ICNjZWQ0ZGE7IH1cblxuLm1wLXB1c2hlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTsgfVxuICAubXAtcHVzaGVyIC5pY29uIHtcbiAgICB6LWluZGV4OiAtMTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1wLXB1c2hlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLm1wLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIC8qIHdlIGNhbid0IHVzZSBmaXhlZCBoZXJlIDooICovXG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gNDBweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7IH1cblxuLm1wLWxldmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMTVzIGVhc2U7IH1cblxuLyogb3ZlcmxheXMgZm9yIHB1c2hlciBhbmQgZm9yIGxldmVsIHRoYXQgZ2V0cyBjb3ZlcmVkICovXG4vKlxyXG4ubXAtcHVzaGVyOjphZnRlcixcclxuLm1wLWxldmVsOjphZnRlcixcclxuLm1wLWxldmVsOjpiZWZvcmUge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDA7XHJcblx0cmlnaHQ6IC0zMnB4O1xyXG5cdHdpZHRoOiAwO1xyXG5cdGhlaWdodDogMDtcclxuXHRjb250ZW50OiAnJztcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcbiovXG4ubXAtcHVzaGVyLFxuLm1wLWxldmVsIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMjVzOyB9XG5cbi5tcC1sZXZlbDo6YWZ0ZXIge1xuICB6LWluZGV4OiAtMTsgfVxuXG4ubXAtcHVzaGVyLm1wLXB1c2hlZDo6YWZ0ZXIsXG4ubXAtbGV2ZWwubXAtbGV2ZWwtb3ZlcmxheTo6YWZ0ZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3M7IH1cblxuLm1wLWxldmVsLm1wLWxldmVsLW92ZXJsYXkge1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLm1wLWxldmVsLm1wLWxldmVsLW92ZXJsYXkubXAtbGV2ZWw6OmJlZm9yZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBvcGFjaXR5OiAxOyB9XG5cbi8qIG92ZXJsYXAgKi9cbi5tcC1vdmVybGFwIC5tcC1sZXZlbC5tcC1sZXZlbC1vcGVuIHtcbiAgYm94LXNoYWRvdzogMXB4IDAgMnB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNDBweCwgMCwgMCk7IH1cblxuLyogRmlyc3QgbGV2ZWwgKi9cbi5tcC1tZW51ID4gLm1wLWxldmVsLFxuLm1wLW1lbnUgPiAubXAtbGV2ZWwubXAtbGV2ZWwtb3Blbixcbi5tcC1tZW51Lm1wLW92ZXJsYXAgPiAubXAtbGV2ZWwsXG4ubXAtbWVudS5tcC1vdmVybGFwID4gLm1wLWxldmVsLm1wLWxldmVsLW9wZW4ge1xuICBib3gtc2hhZG93OiBub25lO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG5cbi8qIGNvdmVyICovXG4ubXAtY292ZXIgLm1wLWxldmVsLm1wLWxldmVsLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG5cbi5tcC1jb3ZlciAubXAtbGV2ZWwubXAtbGV2ZWwtb3BlbiA+IHVsID4gbGkgPiAubXAtbGV2ZWw6bm90KC5tcC1sZXZlbC1vcGVuKSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7IH1cblxuLyogY29udGVudCBzdHlsZSAqL1xuLm1wLW1lbnUgdWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDAgMCAwIDA7XG4gIHBhZGRpbmc6IDAgMCAwIDA7IH1cbiAgLm1wLW1lbnUgdWwgbGkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgLm1wLW1lbnUgdWwgbGkgYSB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5tcC1tZW51IHVsIGxpIC5idXR0b24tbmV4dC1sZXZlbCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiAwIDMycHggMCAxMHB4O1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgb3V0bGluZTogbm9uZTsgfVxuXG4ubXAtbWVudSBoMiB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMWVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICB0ZXh0LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc2l6ZTogMmVtOyB9XG5cbi5tcC1tZW51Lm1wLW92ZXJsYXAgaDI6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMS44O1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MsIHRyYW5zZm9ybSAwLjFzIDAuM3M7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTsgfVxuXG4ubXAtbWVudS5tcC1jb3ZlciBoMiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gIGZvbnQtc2l6ZTogMWVtOyB9XG5cbi5tcC1vdmVybGFwIC5tcC1sZXZlbC5tcC1sZXZlbC1vdmVybGF5ID4gaDI6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzLCBvcGFjaXR5IDAuM3M7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxuXG4ubXAtbWVudSB1bCBsaTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmMGYwZjA7IH1cblxuLm1wLW1lbnUgdWwgbGkgPiBhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IDIycHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMzJweDtcbiAgcGFkZGluZzogOHB4IDMycHggOHB4IDMycHg7IH1cblxuLm1wLW1lbnUgbGkuZGl2aWRlciB7XG4gIHBhZGRpbmc6IDAgMjNweCAwIDMycHg7IH1cblxuZGl2W2RhdGEtbGV2ZWw9XCIyXCJdIHVsIGxpID4gYSxcbmRpdltkYXRhLWxldmVsPVwiM1wiXSB1bCBsaSA+IGEsXG5kaXZbZGF0YS1sZXZlbD1cIjRcIl0gdWwgbGkgPiBhIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDEuNjI1cmVtO1xuICBwYWRkaW5nOiA4cHggMCA4cHggMzJweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZTsgfVxuICBkaXZbZGF0YS1sZXZlbD1cIjJcIl0gdWwgbGkgPiBhOjphZnRlcixcbiAgZGl2W2RhdGEtbGV2ZWw9XCIzXCJdIHVsIGxpID4gYTo6YWZ0ZXIsXG4gIGRpdltkYXRhLWxldmVsPVwiNFwiXSB1bCBsaSA+IGE6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA2NHB4KTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBiYWNrZ3JvdW5kOiAjZWFlY2VmO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMzJweDsgfVxuXG5kaXZbZGF0YS1sZXZlbD1cIjJcIl0gdWwgbGkgPiAuYnV0dG9uLW5leHQtbGV2ZWw6OmFmdGVyLFxuZGl2W2RhdGEtbGV2ZWw9XCIzXCJdIHVsIGxpID4gLmJ1dHRvbi1uZXh0LWxldmVsOjphZnRlcixcbmRpdltkYXRhLWxldmVsPVwiNFwiXSB1bCBsaSA+IC5idXR0b24tbmV4dC1sZXZlbDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJhY2tncm91bmQ6ICNlYWVjZWY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMzJweDsgfVxuXG5kaXZbZGF0YS1sZXZlbD1cIjJcIl0ge1xuICB6LWluZGV4OiAzOyB9XG5cbmRpdltkYXRhLWxldmVsPVwiM1wiXSB7XG4gIHotaW5kZXg6IDI7IH1cblxuZGl2W2RhdGEtbGV2ZWw9XCI0XCJdIHtcbiAgei1pbmRleDogMTsgfVxuXG4ubXAtbWVudSAuaXMtLXNtYWxsID4gYSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjYyNXJlbTsgfVxuXG4vKiBzZWVtcyBsaWtlIENocm9tZSAzNC4wLjE4NDcuMTMxIG5lZWRzIHRoZSBzZWNvbmQgc2hhZG93IG90aGVyd2lzZSB0aGUgdHJhbnNpdGlvbiBicmVha3MgKi9cbi5tcC1iYWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAwLjgxMjVyZW07XG4gIGNvbG9yOiAjNGE1MDU4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHBhZGRpbmc6IDAuNXJlbSAxLjQzNzVyZW0gMC41cmVtIDJyZW07XG4gIHRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlOyB9XG4gIC5tcC1iYWNrIC5pY29uIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDsgfVxuICAgIC5tcC1iYWNrIC5pY29uIHBhdGgge1xuICAgICAgZmlsbDogIzRhNTA1ODsgfVxuICAubXAtYmFjazpob3ZlciB7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAubXAtYmFjazpob3ZlciAuaWNvbiBwYXRoIHtcbiAgICAgIGZpbGw6ICMwMDAwMDA7IH1cblxuLm1wLWJhY2sgKyB1bCB7XG4gIG1hcmdpbjogMXJlbSAwIDAgMDsgfVxuXG4vKiBGYWxsYmFjayBleGFtcGxlIGZvciBicm93c2VycyB0aGF0IGRvbid0IHN1cHBvcnQgM0QgdHJhbnNmb3JtcyAoYW5kIG5vIEpTIGZhbGxiYWNrKSAqL1xuLyogV2UnbGwgc2hvdyB0aGUgZmlyc3QgbGV2ZWwgb25seSAqL1xuLm5vLWNzc3RyYW5zZm9ybXMzZCAubXAtcHVzaGVyLFxuLm5vLWpzIC5tcC1wdXNoZXIge1xuICBwYWRkaW5nLWxlZnQ6IDMwMHB4OyB9XG5cbi5uby1jc3N0cmFuc2Zvcm1zM2QgLm1wLW1lbnUgLm1wLWxldmVsLFxuLm5vLWpzIC5tcC1tZW51IC5tcC1sZXZlbCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm5vLWNzc3RyYW5zZm9ybXMzZCAubXAtbWVudSA+IC5tcC1sZXZlbCxcbi5uby1qcyAubXAtbWVudSA+IC5tcC1sZXZlbCB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5uYXYtcHVzaC1tZW51LW1vYmlsZS13cmFwcGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDQwcHggMzJweCAzMnB4IDMycHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5uYXYtcHVzaC1tZW51LW1vYmlsZS13cmFwcGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ubmF2LXB1c2gtbWVudS1tb2JpbGVfX2RpdmlkZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYWVjZWY7XG4gIG1hcmdpbjogMTVweCAwOyB9XG5cbi5uYXYtcHVzaC1tZW51LW1vYmlsZSAuYnV0dG9uLW1vcmUtbGluayB7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBtYXJnaW46IDMycHggMCAwIDMycHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLm92ZXJsYXkge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgei1pbmRleDogMTAwO1xuICBvcGFjaXR5OiAxOyB9XG4gIC5vdmVybGF5LmlzLS1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qXHJcbmh0bWwub3ZlcmxheS0tYWN0aXZlIHtcclxuICAmLCBib2R5IHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB9XHJcbn1cclxuKi9cbi5vdmVybGF5X19jb250ZW50IHtcbiAgYm90dG9tOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDE7IH1cbiAgLm92ZXJsYXlfX2NvbnRlbnQudHlwZS0tdmlkZW8gLnZpZGVvLWNvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAgICAgLm92ZXJsYXlfX2NvbnRlbnQudHlwZS0tdmlkZW8gLnZpZGVvLWNvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogODAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApOyB9IH1cbiAgLm92ZXJsYXlfX2NvbnRlbnQudHlwZS0tdmlkZW8gLnNpemluZy13cmFwcGVyIHtcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAxOyB9XG4gIC5vdmVybGF5X19jb250ZW50LnR5cGUtLXZpZGVvIC5yZXNwb25zaXZlLWVtYmVkIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAub3ZlcmxheV9fY29udGVudF9fYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAub3ZlcmxheV9fY29udGVudF9fYnV0dG9uIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07IH0gfVxuICAgIC5vdmVybGF5X19jb250ZW50X19idXR0b25fX3RleHQge1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDE1MG1zIGVhc2U7IH1cbiAgICAub3ZlcmxheV9fY29udGVudF9fYnV0dG9uIC5pY29uLWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB3aWR0aDogMnJlbTtcbiAgICAgIG1hcmdpbjogMCAwLjVyZW0gMCAwOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgICAgICAgLm92ZXJsYXlfX2NvbnRlbnRfX2J1dHRvbiAuaWNvbi1jb250YWluZXIge1xuICAgICAgICAgIHdpZHRoOiAxLjg3NXJlbTsgfSB9XG4gICAgLm92ZXJsYXlfX2NvbnRlbnRfX2J1dHRvbiAuaWNvbi1hcnJvdy13aGl0ZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cbiAgICAub3ZlcmxheV9fY29udGVudF9fYnV0dG9uOmhvdmVyIC5vdmVybGF5X19jb250ZW50X19idXR0b25fX3RleHQge1xuICAgICAgY29sb3I6ICNjY2NjY2M7IH1cbiAgICAub3ZlcmxheV9fY29udGVudF9fYnV0dG9uOmhvdmVyIC5pY29uLWFycm93LXdoaXRlIHBhdGgge1xuICAgICAgZmlsbDogI2NjY2NjYzsgfVxuICAub3ZlcmxheV9fY29udGVudF9fbmF2aWdhdGlvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAxcmVtO1xuICAgIHotaW5kZXg6IDIwMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAgICAgLm92ZXJsYXlfX2NvbnRlbnRfX25hdmlnYXRpb24ge1xuICAgICAgICBsZWZ0OiAxLjVyZW07XG4gICAgICAgIHRvcDogMS41cmVtOyB9IH1cblxuLnBhZ2luYXRpb24tbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMCAwIDAgMDtcbiAgcGFkZGluZzogMCAwIDAgMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAucGFnaW5hdGlvbi1saXN0X19pdGVtIHtcbiAgICBwYWRkaW5nOiAwIC4yNXJlbSAwIC4yNXJlbTsgfVxuICAgIC5wYWdpbmF0aW9uLWxpc3RfX2l0ZW06Zmlyc3QtY2hpbGQsIC5wYWdpbmF0aW9uLWxpc3RfX2l0ZW06bGFzdC1jaGlsZCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDFyZW0gMCAxcmVtIDA7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAgICAgICAucGFnaW5hdGlvbi1saXN0X19pdGVtOmZpcnN0LWNoaWxkLCAucGFnaW5hdGlvbi1saXN0X19pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDAgMDsgfSB9XG4gICAgLnBhZ2luYXRpb24tbGlzdF9faXRlbS5pcy0tYWN0aXZlIC5wYWdpbmF0aW9uLWxpc3RfX3BhZ2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbiAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5wYWdpbmF0aW9uLWxpc3RfX2l0ZW0uaXMtLWRpc2FibGVkIC5wYWdpbmF0aW9uLWxpc3RfX2J1dHRvbiB7XG4gICAgICBjb2xvcjogcmdiYSgxMCwgMTAsIDEwLCAwLjQpOyB9XG4gICAgICAucGFnaW5hdGlvbi1saXN0X19pdGVtLmlzLS1kaXNhYmxlZCAucGFnaW5hdGlvbi1saXN0X19idXR0b24gLmljb24tYXJyb3ctYmxhY2sgcGF0aCB7XG4gICAgICAgIGZpbGw6IHJnYmEoMTAsIDEwLCAxMCwgMC40KTsgfVxuICAucGFnaW5hdGlvbi1saXN0X19wYWdlIHtcbiAgICB3aWR0aDogMzhweDtcbiAgICBoZWlnaHQ6IDM4cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogIzBhMGEwYTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjNyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIDE1MG1zIGVhc2U7IH1cbiAgICAucGFnaW5hdGlvbi1saXN0X19wYWdlOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgMC4xKTsgfVxuICAucGFnaW5hdGlvbi1saXN0X19idXR0b24ge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMS42M3JlbTtcbiAgICBjb2xvcjogIzBhMGEwYTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDE1MG1zIGVhc2U7IH1cbiAgICAucGFnaW5hdGlvbi1saXN0X19idXR0b246aG92ZXIge1xuICAgICAgY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgMC43KTsgfVxuICAgICAgLnBhZ2luYXRpb24tbGlzdF9fYnV0dG9uOmhvdmVyIC5pY29uLWFycm93LWJsYWNrIHBhdGgge1xuICAgICAgICBmaWxsOiByZ2JhKDEwLCAxMCwgMTAsIDAuNyk7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgICAgIC5wYWdpbmF0aW9uLWxpc3RfX2J1dHRvbi5wcmV2aW91cyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjhweDsgfSB9XG4gICAgLnBhZ2luYXRpb24tbGlzdF9fYnV0dG9uLnByZXZpb3VzIC5pY29uLWNvbnRhaW5lciB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC41cmVtOyB9XG4gICAgLnBhZ2luYXRpb24tbGlzdF9fYnV0dG9uLnByZXZpb3VzIC5pY29uLWFycm93LWJsYWNrIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAucGFnaW5hdGlvbi1saXN0X19idXR0b24ubmV4dCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyOHB4OyB9IH1cbiAgICAucGFnaW5hdGlvbi1saXN0X19idXR0b24ubmV4dCAuaWNvbi1jb250YWluZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IC41cmVtOyB9XG5cbi5yZXNwb25zaXZlLWVtYmVkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7IH1cbiAgLnJlc3BvbnNpdmUtZW1iZWRfX2l0ZW0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5yZXNwb25zaXZlLWVtYmVkLmFzcGVjdC1yYXRpby0xNi1ieS05IHtcbiAgICBwYWRkaW5nLXRvcDogNTYuMjUlOyB9XG5cbi5jb21wb25lbnQtY29udGVudF9faWZyYW1lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy10b3A6IDU2LjI1JTtcbiAgLyogMTY6OSBBc3BlY3QgUmF0aW8gKGRpdmlkZSA5IGJ5IDE2ID0gMC41NjI1KSAqLyB9XG5cbi8qIFRoZW4gc3R5bGUgdGhlIGlmcmFtZSB0byBmaXQgaW4gdGhlIGNvbnRhaW5lciBkaXYgd2l0aCBmdWxsIGhlaWdodCBhbmQgd2lkdGggKi9cbi5jb21wb25lbnQtY29udGVudF9faWZyYW1lIGlmcmFtZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5zZWFyY2gtcmVzdWx0c19faXRlbSB7XG4gIHBhZGRpbmc6IDAgMCAxLjVyZW0gMDtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNjZWQ0ZGE7IH1cbiAgLnNlYXJjaC1yZXN1bHRzX19pdGVtOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7IH1cbiAgLnNlYXJjaC1yZXN1bHRzX19pdGVtX19tZXRhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgICAuc2VhcmNoLXJlc3VsdHNfX2l0ZW1fX21ldGFfX3RhZyB7XG4gICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGNvbG9yOiAjODU4ZTk2OyB9XG4gICAgLnNlYXJjaC1yZXN1bHRzX19pdGVtX19tZXRhX19kYXRlIHtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIGNvbG9yOiAjODU4ZTk2O1xuICAgICAgbWFyZ2luOiAwIDAgMCAwLjI1cmVtOyB9XG4gICAgLnNlYXJjaC1yZXN1bHRzX19pdGVtX19tZXRhIC5pY29uLWNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMTFweDtcbiAgICAgIGhlaWdodDogMTFweDtcbiAgICAgIG1hcmdpbjogMCAwIDAgMC41cmVtO1xuICAgICAgZGlzcGxheTogZmxleDsgfVxuICAuc2VhcmNoLXJlc3VsdHNfX2l0ZW1fX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjk5Mzc1cmVtO1xuICAgIGNvbG9yOiBibGFjaztcbiAgICBtYXJnaW46IDAuNXJlbSAwIDAgMDsgfVxuICAuc2VhcmNoLXJlc3VsdHNfX2l0ZW1fX2NvbnRlbnQge1xuICAgIGNvbG9yOiAjNGE1MDU4O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIG1hcmdpbjogMC41cmVtIDAgMCAwOyB9XG4gIC5zZWFyY2gtcmVzdWx0c19faXRlbSArIC5zZWFyY2gtcmVzdWx0c19faXRlbSB7XG4gICAgbWFyZ2luOiAxLjVyZW0gMCAwIDA7IH1cbiAgLnNlYXJjaC1yZXN1bHRzX19pdGVtIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAuc2VhcmNoLXJlc3VsdHNfX2l0ZW1fX2xpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogYmxhY2s7IH1cbiAgICAuc2VhcmNoLXJlc3VsdHNfX2l0ZW1fX2xpbms6aG92ZXIgLnNlYXJjaC1yZXN1bHRzX19pdGVtX190aXRsZSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMi41cmVtIDAgMy43NXJlbSAwOyB9XG4gIC5zZWN0aW9uX19oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwIDAgMXJlbSAwO1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjYmJjM2NiOyB9XG4gICAgLnNlY3Rpb25fX2hlYWRlciAuYnV0dG9uLW1vcmUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAgIC5zZWN0aW9uX19oZWFkZXIgLmJ1dHRvbi1tb3JlIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4OyB9IH1cbiAgLnNlY3Rpb25fX2hlYWRpbmcge1xuICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgICBwYWRkaW5nOiAwIDAgMCAwO1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5zZWN0aW9uX19mb290ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAuc2VjdGlvbl9fZm9vdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5zZWN0aW9uLnNlY3Rpb24tYXJ0aWNsZS1saXN0IC5zZWN0aW9uX19oZWFkZXIge1xuICAgIGJvcmRlci1jb2xvcjogI2NlZDRkYTsgfVxuICAuc2VjdGlvbi5zZWN0aW9uLWxhdGVzdC10cmFpbGVycyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDNyZW0gMCA0cmVtIDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzUwNTQ1YTtcbiAgICB6LWluZGV4OiA0OyB9XG4gICAgLnNlY3Rpb24uc2VjdGlvbi1sYXRlc3QtdHJhaWxlcnMgLnNlY3Rpb25fX2hlYWRpbmcge1xuICAgICAgY29sb3I6IHdoaXRlOyB9XG4gICAgLnNlY3Rpb24uc2VjdGlvbi1sYXRlc3QtdHJhaWxlcnMgLnNlY3Rpb25fX2hlYWRlciB7XG4gICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7IH1cbiAgICAuc2VjdGlvbi5zZWN0aW9uLWxhdGVzdC10cmFpbGVycyAucmVzcG9uc2l2ZS1lbWJlZCB7XG4gICAgICBtYXJnaW46IDJyZW0gMCAwIDA7IH1cbiAgLnNlY3Rpb24uc2VjdGlvbi1yZXZpZXcge1xuICAgIHBhZGRpbmc6IDAgMCAzLjc1cmVtIDA7IH1cblxuLnNsaWRlci13cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnNsaWRlci1pdGVtIHtcbiAgb3V0bGluZTogbm9uZTsgfVxuICAuc2xpZGVyLWl0ZW1fX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgbWFyZ2luOiAxcmVtIDAgMCAwOyB9XG4gIC5zbGlkZXItaXRlbV9fbGluayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuc2xpZGVyLWl0ZW1fX2xpbms6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgb3V0bGluZS13aWR0aDogMCAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAuc2xpZGVyLWl0ZW1fX2ltYWdlIHtcbiAgICBvcGFjaXR5OiAuNTsgfVxuICAuc2xpZGVyLWl0ZW0gLnNsaWRlLWNhdGVnb3J5LWxpc3Qge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMCAwIDAgMDtcbiAgICBtYXJnaW46IDJweCAwIDAgMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAuc2xpZGVyLWl0ZW0gLnNsaWRlLWNhdGVnb3J5LWxpc3RfX2l0ZW0ge1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ5NjI1cmVtO1xuICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40NSk7IH1cbiAgICAgIC5zbGlkZXItaXRlbSAuc2xpZGUtY2F0ZWdvcnktbGlzdF9faXRlbTpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcsICc7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZy1yaWdodDogNHB4OyB9XG5cbi5zbGljay1jdXJyZW50IC5zbGlkZXItaXRlbV9faW1hZ2Uge1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zbGlkZXItbW92aWVzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI0MjcyYjtcbiAgcGFkZGluZzogMi42MjVyZW0gMCAwIDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgICAuc2xpZGVyLW1vdmllcyB7XG4gICAgICBwYWRkaW5nOiAzcmVtIDAgMCAwOyB9IH1cbiAgLnNsaWRlci1tb3ZpZXM6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAyKSA5JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA2KSAxNyUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMikgMjQlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMikgMzElLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjkpIDM3JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM5KSA0NCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42MSkgNTYlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzEpIDYzJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpIDY5JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg4KSA3NiUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NSkgODMlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTgpIDkxJSwgd2hpdGUpOyB9XG4gIC5zbGlkZXItbW92aWVzLXdyYXBwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XG4gIC5zbGlkZXItbW92aWVzX19oZWFkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxOyB9XG4gIC5zbGlkZXItbW92aWVzX19oZWFkZXItYmFyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgcGFkZGluZzogMCAwIDFyZW0gMDtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAuc2xpZGVyLW1vdmllc19faGVhZGVyLWJhciB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9XG4gIC5zbGlkZXItbW92aWVzX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMS43NTVyZW07XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgICBwYWRkaW5nOiAwIDAgMCAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnNsaWRlci1tb3ZpZXNfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIuMjQyNXJlbTsgfSB9XG4gIC5zbGlkZXItbW92aWVzX19jYXRlZ29yeS1saXN0IHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMS41cmVtIDAgMCAwO1xuICAgIHBhZGRpbmc6IDAgMCAwIDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gICAgLnNsaWRlci1tb3ZpZXNfX2NhdGVnb3J5LWxpc3RfX2l0ZW0gKyAuc2xpZGVyLW1vdmllc19fY2F0ZWdvcnktbGlzdF9faXRlbSB7XG4gICAgICBtYXJnaW46IDAgMCAwIDEuNXJlbTsgfVxuICAgIC5zbGlkZXItbW92aWVzX19jYXRlZ29yeS1saXN0X19pdGVtLmlzLS1hY3RpdmUgLnNsaWRlci1tb3ZpZXNfX2NhdGVnb3J5LWxpc3RfX2J1dHRvbiB7XG4gICAgICBjb2xvcjogd2hpdGU7IH1cbiAgICAgIC5zbGlkZXItbW92aWVzX19jYXRlZ29yeS1saXN0X19pdGVtLmlzLS1hY3RpdmUgLnNsaWRlci1tb3ZpZXNfX2NhdGVnb3J5LWxpc3RfX2J1dHRvbjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpOyB9XG4gICAgLnNsaWRlci1tb3ZpZXNfX2NhdGVnb3J5LWxpc3RfX2J1dHRvbiB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMS40OTYyNXJlbTtcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDA7XG4gICAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICAuc2xpZGVyLW1vdmllc19fY2F0ZWdvcnktbGlzdF9fYnV0dG9uOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHdoaXRlOyB9XG4gICAgICAuc2xpZGVyLW1vdmllc19fY2F0ZWdvcnktbGlzdF9fYnV0dG9uOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDE1MG1zIGVhc2U7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnNsaWRlci1tb3ZpZXNfX2NhdGVnb3J5LWxpc3RfX2J1dHRvbiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjYzcmVtOyB9IH1cbiAgLnNsaWRlci1tb3ZpZXMgLmN1cnJlbnQtc2xpZGUtYmx1cnJlZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAwO1xuICAgIG9wYWNpdHk6IC42O1xuICAgIHRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlOyB9XG4gICAgLnNsaWRlci1tb3ZpZXMgLmN1cnJlbnQtc2xpZGUtYmx1cnJlZC50eXBlLS1pbWFnZSB7XG4gICAgICBmaWx0ZXI6IGJsdXIoNTBweCk7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAgICAgICAuc2xpZGVyLW1vdmllcyAuY3VycmVudC1zbGlkZS1ibHVycmVkLnR5cGUtLWltYWdlIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAuc2xpZGVyLW1vdmllcyAuY3VycmVudC1zbGlkZS1ibHVycmVkLnR5cGUtLXN2ZyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgICAgIC5zbGlkZXItbW92aWVzIC5jdXJyZW50LXNsaWRlLWJsdXJyZWQudHlwZS0tc3ZnIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgICAuc2xpZGVyLW1vdmllcyAuY3VycmVudC1zbGlkZS1ibHVycmVkLnR5cGUtLXN2ZyBpbWFnZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLnNsaWRlci1tb3ZpZXMgLnNsaWRlci13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjsgfVxuICAuc2xpZGVyLW1vdmllcyAuc2xpY2stc2xpZGVyIHtcbiAgICBtYXJnaW46IDEuNXJlbSAwIDAgMDsgfVxuICAgIC5zbGlkZXItbW92aWVzIC5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAgICAgcGFkZGluZy10b3A6IDEwMHB4ICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHggIWltcG9ydGFudDsgfVxuICAgIC5zbGlkZXItbW92aWVzIC5zbGljay1zbGlkZXIgLnNsaWNrLXNsaWRlIHtcbiAgICAgIHBhZGRpbmc6IDAgMC45Mzc1cmVtO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zNXMgZWFzZTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUlKTsgfVxuICAgICAgLnNsaWRlci1tb3ZpZXMgLnNsaWNrLXNsaWRlciAuc2xpY2stc2xpZGUgaW1nIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zNXMgZWFzZTsgfVxuICAgIC5zbGlkZXItbW92aWVzIC5zbGljay1zbGlkZXIgLnNsaWNrLWN1cnJlbnQge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgICAgLyppbWcge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS41KTtcclxuICAgICAgfSovIH1cbiAgICAgIC5zbGlkZXItbW92aWVzIC5zbGljay1zbGlkZXIgLnNsaWNrLWN1cnJlbnQgLnNsaWRlci1pdGVtX190aXRsZSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC43NSk7IH1cbiAgICAgIC5zbGlkZXItbW92aWVzIC5zbGljay1zbGlkZXIgLnNsaWNrLWN1cnJlbnQgLnNsaWRlLWNhdGVnb3J5LWxpc3Qge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNzUpOyB9XG4gICAgICAuc2xpZGVyLW1vdmllcyAuc2xpY2stc2xpZGVyIC5zbGljay1jdXJyZW50IH4gLnNsaWNrLXNsaWRlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1JSk7IH1cbiAgICAuc2xpZGVyLW1vdmllcyAuc2xpY2stc2xpZGVyIC5zbGljay1wcmV2LCAuc2xpZGVyLW1vdmllcyAuc2xpY2stc2xpZGVyIC5zbGljay1uZXh0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgei1pbmRleDogMTAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgd2lkdGg6IDQ2cHg7XG4gICAgICBoZWlnaHQ6IDQ2cHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHRvcDogNDAlOyB9XG4gICAgICAuc2xpZGVyLW1vdmllcyAuc2xpY2stc2xpZGVyIC5zbGljay1wcmV2OjpiZWZvcmUsIC5zbGlkZXItbW92aWVzIC5zbGljay1zbGlkZXIgLnNsaWNrLW5leHQ6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnOyB9XG4gICAgICAuc2xpZGVyLW1vdmllcyAuc2xpY2stc2xpZGVyIC5zbGljay1wcmV2IC5pY29uLCAuc2xpZGVyLW1vdmllcyAuc2xpY2stc2xpZGVyIC5zbGljay1uZXh0IC5pY29uIHtcbiAgICAgICAgd2lkdGg6IDEzcHg7XG4gICAgICAgIGhlaWdodDogMjJweDsgfVxuICAgIC5zbGlkZXItbW92aWVzIC5zbGljay1zbGlkZXIgLnNsaWNrLXByZXYge1xuICAgICAgbGVmdDogOHB4OyB9XG4gICAgICAuc2xpZGVyLW1vdmllcyAuc2xpY2stc2xpZGVyIC5zbGljay1wcmV2IC5pY29uIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAzcHg7IH1cbiAgICAuc2xpZGVyLW1vdmllcyAuc2xpY2stc2xpZGVyIC5zbGljay1uZXh0IHtcbiAgICAgIHJpZ2h0OiA4cHg7XG4gICAgICBtYXJnaW4tbGVmdDogM3B4OyB9XG5cbi5zaXRlLXNlYXJjaCB7XG4gIG1pbi1oZWlnaHQ6IDUuNXJlbTtcbiAgcGFkZGluZzogMS41cmVtIDAgMS41cmVtIDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNDI3MmI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xMDAlKTtcbiAgbWFyZ2luLXRvcDogLTUuNXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDE1MG1zIGVhc2U7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zaXRlLXNlYXJjaCB7XG4gICAgICBtaW4taGVpZ2h0OiAxMi4xMjVyZW07XG4gICAgICBwYWRkaW5nOiA0LjkzNzVyZW0gMCAzcmVtIDA7XG4gICAgICBtYXJnaW4tdG9wOiAtMTIuMTI1cmVtOyB9IH1cbiAgLnNpdGUtc2VhcmNoLmlzLS1hY3RpdmUge1xuICAgIG1hcmdpbi10b3A6IC01LjVyZW07XG4gICAgbWluLWhlaWdodDogNS41cmVtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuc2l0ZS1zZWFyY2guaXMtLWFjdGl2ZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xMi4xMjVyZW07XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEyLjEyNXJlbTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuICAuc2l0ZS1zZWFyY2hfX2lucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICBtaW4taGVpZ2h0OiAzNnB4O1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gICAgcGFkZGluZzogMCAxcmVtIDAuNXJlbSAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyNDI3MmI7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogbm9uZTtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogbm9uZTtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNik7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zaXRlLXNlYXJjaF9faW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICBtaW4taGVpZ2h0OiA2NnB4O1xuICAgICAgICBmb250LXNpemU6IDIuMjVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzLjEyNzVyZW07XG4gICAgICAgIHBhZGRpbmc6IDAgMy4xMjVyZW0gMXJlbSAwOyB9IH1cbiAgLnNpdGUtc2VhcmNoX19pbnB1dDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjNGQ0ZTUwOyB9XG4gIC5zaXRlLXNlYXJjaF9faW5wdXQ6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogd2hpdGU7XG4gICAgY29sb3I6IHdoaXRlOyB9XG4gIC5zaXRlLXNlYXJjaF9faW5wdXQtd3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5zaXRlLXNlYXJjaCAuaWNvbi1jb250YWluZXIge1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIGhlaWdodDogMjRweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAxLjEyNXJlbTsgfVxuICAgIC5zaXRlLXNlYXJjaCAuaWNvbi1jb250YWluZXIgLmljb24ge1xuICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICBoZWlnaHQ6IDI0cHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuc2l0ZS1zZWFyY2ggLmljb24tY29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6IDM3cHg7XG4gICAgICAgIGhlaWdodDogMzdweDtcbiAgICAgICAgYm90dG9tOiAxLjQzNzVyZW07IH1cbiAgICAgICAgLnNpdGUtc2VhcmNoIC5pY29uLWNvbnRhaW5lciAuaWNvbiB7XG4gICAgICAgICAgd2lkdGg6IDM3cHg7XG4gICAgICAgICAgaGVpZ2h0OiAzN3B4OyB9IH1cblxuLnN0aWNreS1zaWRlYmFyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnN0aWNreS1zaWRlYmFyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAzLjQzNzVyZW0gMCAwIDA7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgdG9wOiAxMTBweDsgfSB9XG5cbi50YWctbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDAgMCAwIDA7XG4gIG1hcmdpbjogMnJlbSAwIDAgMDtcbiAgbWF4LXdpZHRoOiA1MDBweDsgfVxuICAudGFnLWxpc3RfX2l0ZW0ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDNweCAwIDNweCAwOyB9XG4gIC50YWctbGlzdF9fbGluayB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICMwYTBhMGE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHBhZGRpbmc6IDAuMzc1cmVtIDAuMzc1cmVtIDAuMzc1cmVtIDAuMzc1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIzNCwgMjM2LCAyMzksIDAuNik7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZTsgfVxuICAgIC50YWctbGlzdF9fbGluazpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwNSwgMjEwLCAyMTcsIDAuNik7IH1cblxuLnRleHQtYmxvY2sgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMge1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLnRleHQtYmxvY2sgLnR3by1jb2wge1xuICBjb2x1bW5zOiAxO1xuICBjb2x1bW4tZ2FwOiAzMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAgIC50ZXh0LWJsb2NrIC50d28tY29sIHtcbiAgICAgIGNvbHVtbnM6IDI7IH0gfVxuXG4uaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTAwOyB9XG4gIC5oZWFkZXJfX25hdmJhciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBoZWlnaHQ6IDYzcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuaGVhZGVyX19uYXZiYXIge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGhlaWdodDogOTBweDsgfSB9XG4gIC5oZWFkZXJfX25hdmJhci13cmFwcGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuaGVhZGVyX19sb2dvIHtcbiAgICB3aWR0aDogMTcwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAgICAgLmhlYWRlcl9fbG9nbyB7XG4gICAgICAgIG1hcmdpbjogMCAxLjYyNXJlbSAwIDA7XG4gICAgICAgIHdpZHRoOiAyMjRweDtcbiAgICAgICAgaGVpZ2h0OiAzOXB4OyB9IH1cbiAgLmhlYWRlcl9fbG9nby1pbWFnZSB7XG4gICAgd2lkdGg6IDE3MHB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDAgMCAwIDA7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgICAgIC5oZWFkZXJfX2xvZ28taW1hZ2Uge1xuICAgICAgICB3aWR0aDogMjI0cHg7XG4gICAgICAgIGhlaWdodDogMzlweDsgfSB9XG4gIC5oZWFkZXJfX25hdmlnYXRpb24ge1xuICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5oZWFkZXJfX25hdmlnYXRpb24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgLmhlYWRlcl9fbmF2aWdhdGlvbl9fbmF2IHtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDA7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgICAgLmhlYWRlcl9fbmF2aWdhdGlvbl9fbmF2X19pdGVtIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAgICAgLmhlYWRlcl9fbmF2aWdhdGlvbl9fbmF2X19pdGVtICsgLmhlYWRlcl9fbmF2aWdhdGlvbl9fbmF2X19pdGVtIHtcbiAgICAgICAgICBtYXJnaW46IDA7IH1cbiAgICAgICAgLmhlYWRlcl9fbmF2aWdhdGlvbl9fbmF2X19pdGVtLmlzLS1hY3RpdmUgLmhlYWRlcl9fbmF2aWdhdGlvbl9fbmF2X19saW5rLFxuICAgICAgICAuaGVhZGVyX19uYXZpZ2F0aW9uX19uYXZfX2l0ZW0uaXMtLWFjdGl2ZSAuaGVhZGVyX19uYXZpZ2F0aW9uX19uYXZfX2J1dHRvbiB7XG4gICAgICAgICAgY29sb3I6IHdoaXRlOyB9XG4gICAgICAuaGVhZGVyX19uYXZpZ2F0aW9uX19uYXZfX2J1dHRvbiwgLmhlYWRlcl9fbmF2aWdhdGlvbl9fbmF2X19saW5rIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW0gMC4zNzVyZW0gMC43NXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjI1cmVtO1xuICAgICAgICBjb2xvcjogIzlkYTVhYTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICAgIC5oZWFkZXJfX25hdmlnYXRpb25fX25hdl9fYnV0dG9uOmhvdmVyLCAuaGVhZGVyX19uYXZpZ2F0aW9uX19uYXZfX2xpbms6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAuaGVhZGVyLXNlYXJjaF9fYnV0dG9uIHtcbiAgICBtYXJnaW46IDAgMCAwIDA7XG4gICAgcGFkZGluZzogMCAwIDAgMDtcbiAgICB3aWR0aDogMTlweDtcbiAgICBoZWlnaHQ6IDE5cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAuaGVhZGVyLXNlYXJjaF9fYnV0dG9uLWljb24tc2VhcmNoIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDE5cHg7XG4gICAgICBoZWlnaHQ6IDE5cHg7IH1cbiAgICAuaGVhZGVyLXNlYXJjaF9fYnV0dG9uLWljb24tY2xvc2Uge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5oZWFkZXItc2VhcmNoX19idXR0b246Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5oZWFkZXItc2VhcmNoX19idXR0b24ge1xuICAgICAgICBtYXJnaW46IDAgMCAwIGF1dG87IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhlYWRlciB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICB6LWluZGV4OiAxMDA7IH0gfVxuXG4uZHJvcGRvd24tLWlzLS1hY3RpdmUgLmhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IGJsYWNrOyB9XG5cbi5zaXRlLXNlYXJjaC1pcy0tYWN0aXZlIC5oZWFkZXItc2VhcmNoX19idXR0b24taWNvbi1jbG9zZSB7XG4gIHdpZHRoOiAxNnB4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5zaXRlLXNlYXJjaC1pcy0tYWN0aXZlIC5oZWFkZXItc2VhcmNoX19idXR0b24taWNvbi1zZWFyY2gge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5zaXRlLW5hdi1tb2JpbGUtLWFjdGl2ZSB7XG4gIC8qXHJcbiAgLmhlYWRlcl9fbG9nby1pbWFnZSB7XHJcbiAgICAmLm5lZyB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYucG9zIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH0qLyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDMzLjc0ODc1ZW0pIHtcbiAgICAuc2l0ZS1uYXYtbW9iaWxlLS1hY3RpdmUgLnNpdGUtbmF2LW1vYmlsZV9fYnV0dG9uLWljb246YmVmb3JlLFxuICAgIC5zaXRlLW5hdi1tb2JpbGUtLWFjdGl2ZSAuc2l0ZS1uYXYtbW9iaWxlX19idXR0b24taWNvbjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGE1MDU4OyB9IH1cblxuLmZvb3RlciB7XG4gIG1hcmdpbjogMCAwIDAgMDtcbiAgcGFkZGluZzogNC4wNjI1cmVtIDAgMCAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjQyNzJiO1xuICBjb2xvcjogIzlkYTVhYTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuICAuZm9vdGVyIC5kaXNwbGF5LWZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLmZvb3Rlcl9fbG9nbyB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAuZm9vdGVyX19sb2dvIC5sb2dvIHtcbiAgICAgIHdpZHRoOiAyMjRweDtcbiAgICAgIGhlaWdodDogMzlweDtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBib3JkZXItc3R5bGU6IG5vbmU7IH1cbiAgLmZvb3Rlcl9fcm93LXRvcF9fY29tcGFueSB7XG4gICAgb3JkZXI6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAuZm9vdGVyX19yb3ctdG9wX19jb21wYW55IHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfSB9XG4gIC5mb290ZXJfX3Jvdy10b3BfX25ld3NsZXR0ZXIge1xuICAgIG1hcmdpbjogMi41cmVtIDAgMCAwO1xuICAgIG9yZGVyOiAzO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAuZm9vdGVyX19yb3ctdG9wX19uZXdzbGV0dGVyIHtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgMDsgfSB9XG4gIC5mb290ZXJfX3Jvdy10b3BfX3NvY2lhbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG9yZGVyOiAyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLmZvb3Rlcl9fcm93LXRvcF9fc29jaWFsIC5zb2NpYWwtbGlua3Mge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDJyZW0gMCAwIDA7XG4gICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAgIC5mb290ZXJfX3Jvdy10b3BfX3NvY2lhbCAuc29jaWFsLWxpbmtzIHtcbiAgICAgICAgICBtYXJnaW46IDAgMCAwIGF1dG87IH0gfVxuICAgICAgLmZvb3Rlcl9fcm93LXRvcF9fc29jaWFsIC5zb2NpYWwtbGlua3MgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAgICAgLmZvb3Rlcl9fcm93LXRvcF9fc29jaWFsIC5zb2NpYWwtbGlua3MgbGkgKyBsaSB7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMCAwLjVyZW07IH1cbiAgICAgIC5mb290ZXJfX3Jvdy10b3BfX3NvY2lhbCAuc29jaWFsLWxpbmtzX19saW5rIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIC8qXHJcbiAgICAgICAgICAmLnR5cGUge1xyXG4gICAgICAgICAgICAmLS1mYWNlYm9vayB7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvU3RhdGljL2ltYWdlcy9zdmcvZmFjZWJvb2stY2lyY2xlLW8uc3ZnJyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi0taW5zdGFncmFtIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9TdGF0aWMvaW1hZ2VzL3N2Zy9pbnN0YWdyYW0tY2lyY2xlLW8uc3ZnJyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi0tdHdpdHRlciB7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvU3RhdGljL2ltYWdlcy9zdmcvdHdpdHRlci1jaXJjbGUtby5zdmcnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSovIH1cbiAgICAgICAgLmZvb3Rlcl9fcm93LXRvcF9fc29jaWFsIC5zb2NpYWwtbGlua3NfX2xpbmsgLmltZyB7XG4gICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA0MHB4OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgICAgICAuZm9vdGVyX19yb3ctdG9wX19zb2NpYWwgLnNvY2lhbC1saW5rcyB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgIG9yZGVyOiAzOyB9IH1cbiAgLmZvb3Rlcl9fcm93LXRvcCAuY29weXJpZ2h0IHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ5NjI1cmVtO1xuICAgIGNvbG9yOiAjNjE2NzcwO1xuICAgIG1hcmdpbjogMnJlbSAwIDAgMDsgfVxuICAuZm9vdGVyX19yb3ctbWlkZGxlIHtcbiAgICBtYXJnaW46IDIuNXJlbSAwIDAgMDtcbiAgICBwYWRkaW5nOiAwIDAgMy41cmVtIDA7IH1cbiAgLmZvb3Rlcl9fcm93LWJvdHRvbSB7XG4gICAgcGFkZGluZzogMXJlbSAwIDFyZW0gMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5mb290ZXJfX3Jvdy1ib3R0b21fX2xpbmtzIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDAgMCAwIDA7XG4gICAgICBwYWRkaW5nOiAwIDAgMCAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIC5mb290ZXJfX3Jvdy1ib3R0b21fX2xpbmtzIGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIC5mb290ZXJfX3Jvdy1ib3R0b21fX2xpbmtzIGxpICsgbGkge1xuICAgICAgICAgIG1hcmdpbjogMCAwIDAgMDsgfVxuICAgICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gICAgICAgICAgICAuZm9vdGVyX19yb3ctYm90dG9tX19saW5rcyBsaSArIGxpIHtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCAxLjVyZW07IH0gfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgICAgICAgIC5mb290ZXJfX3Jvdy1ib3R0b21fX2xpbmtzIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvOyB9IH1cbiAgICAgIC5mb290ZXJfX3Jvdy1ib3R0b21fX2xpbmtzIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDk2MjVyZW07XG4gICAgICAgIGNvbG9yOiAjNjE2NzcwO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuNzVlbSkge1xuICAgICAgLmZvb3Rlcl9fcm93LWJvdHRvbSB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuICAuZm9vdGVyX19pdGVtIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuZm9vdGVyX19oZWFkaW5nIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHBhZGRpbmc6IDAgMCAwLjVyZW0gMDtcbiAgICBtYXJnaW46IDIuNXJlbSAwIDAgMDtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggIzNlNDE0NTsgfVxuICAgIC5mb290ZXJfX2hlYWRpbmcubm8tLWJvcmRlciB7XG4gICAgICBwYWRkaW5nOiAwIDAgMCAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuICAgIC5mb290ZXJfX2hlYWRpbmcubmV3cy1sZXR0ZXIge1xuICAgICAgbWFyZ2luOiAxLjEyNXJlbSAwIDAgMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAgICAgLmZvb3Rlcl9faGVhZGluZyB7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgMDsgfSB9XG4gIC5mb290ZXJfX2xpbmtzIHVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgbWFyZ2luOiAxcmVtIDAgMCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY29sdW1uczogMjsgfVxuICAgIC5mb290ZXJfX2xpbmtzIHVsIGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuZm9vdGVyX19saW5rcyB1bCBsaSArIGxpIHtcbiAgICAgICAgbWFyZ2luOiAwLjVyZW0gMCAwIDA7IH1cbiAgICAuZm9vdGVyX19saW5rcyB1bCBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ5NjI1cmVtO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb2xvcjogIzlkYTVhYTsgfVxuICAgICAgLmZvb3Rlcl9fbGlua3MgdWwgYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjYzZjYmNlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAuZm9vdGVyX19saW5rcyB1bCB7XG4gICAgICAgIGNvbHVtbnM6IDE7IH0gfVxuICAuZm9vdGVyX191c3Age1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNjI3NXJlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsOyB9XG4gICAgLmZvb3Rlcl9fdXNwIHAge1xuICAgICAgbWFyZ2luOiAxcmVtIDAgMCAwOyB9XG4gICAgLmZvb3Rlcl9fdXNwIGEge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAgIC5mb290ZXJfX3VzcCBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNkOWQ5ZDk7IH1cbiAgICAuZm9vdGVyX191c3AgZGwge1xuICAgICAgbWFyZ2luOiAxcmVtIDAgMCAwOyB9XG4gICAgICAuZm9vdGVyX191c3AgZGwgZHQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7IH1cbiAgICAgIC5mb290ZXJfX3VzcCBkbCBkZCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy43NWVtKSB7XG4gIG1hcmdpbjogNDBweCAwIDAgMDtcbiAgcGFkZGluZzogNDBweCAwIDQwcHggMDsgfVxuXG4uY29udGVudC1nZW5lcmFsIHtcbiAgcGFkZGluZzogMCAwIDAgMDsgfVxuICAuY29udGVudC1nZW5lcmFsX19iYXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjQyNzJiO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMXJlbSAxLjVyZW0gMXJlbSAxLjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgICAgIC5jb250ZW50LWdlbmVyYWxfX2JhciB7XG4gICAgICAgIHBhZGRpbmc6IDAuODc1cmVtIDIuNXJlbSAxLjEyNXJlbSAyLjVyZW07XG4gICAgICAgIGhlaWdodDogODBweDsgfSB9XG4gICAgLmNvbnRlbnQtZ2VuZXJhbF9fYmFyOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMTVweDtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuY29udGVudC1nZW5lcmFsX19iYXI6OmJlZm9yZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5jb250ZW50LWdlbmVyYWxfX3dyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiA2O1xuICAgIHRvcDogMDtcbiAgICBtYXJnaW46IDAgYXV0byAwIGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgbWluLWhlaWdodDogMTAwMHB4O1xuICAgIG1heC13aWR0aDogODEuODc1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuODc1ZW0pIHtcbiAgICAgIC5jb250ZW50LWdlbmVyYWxfX3dyYXBwZXIge1xuICAgICAgICB0b3A6IC02Ljg3NXJlbTsgfSB9XG4gIC5jb250ZW50LWdlbmVyYWxfX2hlYWRlciAuZmlsbS1tZXRhIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMi41cmVtIDAgMCAwO1xuICAgIHBhZGRpbmc6IDAgMCAwIDA7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNjZWQ0ZGE7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgICAgIC5jb250ZW50LWdlbmVyYWxfX2hlYWRlciAuZmlsbS1tZXRhIGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMzBweDsgfSB9XG4gICAgLmNvbnRlbnQtZ2VuZXJhbF9faGVhZGVyIC5maWxtLW1ldGEgZGwge1xuICAgICAgbWFyZ2luOiAwIDAgMCAwO1xuICAgICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICNjZWQ0ZGE7XG4gICAgICBwYWRkaW5nOiAwLjVyZW0gMCAwLjVyZW0gMDsgfVxuICAgICAgLmNvbnRlbnQtZ2VuZXJhbF9faGVhZGVyIC5maWxtLW1ldGEgZGwgZHQge1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBsaW5lLWhlaWdodDogMS42M3JlbTtcbiAgICAgICAgY29sb3I6ICM0YTUwNTg7IH1cbiAgICAgIC5jb250ZW50LWdlbmVyYWxfX2hlYWRlciAuZmlsbS1tZXRhIGRsIGRkIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS42M3JlbTsgfVxuICAuY29udGVudC1nZW5lcmFsX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMi4xMjg3NXJlbTtcbiAgICBjb2xvcjogIzBhMGEwYTtcbiAgICBtYXJnaW46IDFyZW0gMCAwIDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgICAgIC5jb250ZW50LWdlbmVyYWxfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMi4yNnJlbTtcbiAgICAgICAgbWFyZ2luOiAzLjQzNzVyZW0gMCAwIDA7IH0gfVxuICAuY29udGVudC1nZW5lcmFsX19wcmVhbWJsZSB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjc1NXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgIGNvbG9yOiAjMzUzYTQxOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAuY29udGVudC1nZW5lcmFsX19wcmVhbWJsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMi4xM3JlbTsgfSB9XG4gIC5jb250ZW50LWdlbmVyYWxfX2NvbnRlbnQge1xuICAgIHBhZGRpbmc6IDIuNXJlbSAwIDQuNXJlbSAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAuY29udGVudC1nZW5lcmFsX19jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMCAwIDQuNXJlbSAwOyB9IH1cbiAgLmNvbnRlbnQtZ2VuZXJhbCAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyB7XG4gICAgbWFyZ2luOiAyLjYyNXJlbSAwIDAgMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAgICAgLmNvbnRlbnQtZ2VuZXJhbCAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyB7XG4gICAgICAgIG1hcmdpbjogMy4wNjI1cmVtIDAgMCAwOyB9IH1cbiAgLmNvbnRlbnQtZ2VuZXJhbF9fZm9vdGVyIHtcbiAgICBtYXJnaW46IDIuNXJlbSAwIDAgMDtcbiAgICBwYWRkaW5nOiAxLjVyZW0gMCAwIDA7XG4gICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICNjZWQ0ZGE7IH1cbiAgICAuY29udGVudC1nZW5lcmFsX19mb290ZXIgcDpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW46IDRyZW0gMCA1cmVtIDA7IH1cbiAgICAuY29udGVudC1nZW5lcmFsX19mb290ZXIgcCBhIHtcbiAgICAgIGNvbG9yOiAjZGYyZDI4O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAgIC5jb250ZW50LWdlbmVyYWxfX2Zvb3RlciBwIGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogI2I5MjAxYjsgfVxuXG4uY29udGVudC1hcnRpY2xlIHtcbiAgcGFkZGluZzogMCAwIDAgMDsgfVxuICAuY29udGVudC1hcnRpY2xlX19iYXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjQyNzJiO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMXJlbSAxLjVyZW0gMXJlbSAxLjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgICAgIC5jb250ZW50LWFydGljbGVfX2JhciB7XG4gICAgICAgIHBhZGRpbmc6IDAuODc1cmVtIDIuNXJlbSAxLjEyNXJlbSAyLjVyZW07XG4gICAgICAgIGhlaWdodDogODBweDsgfSB9XG4gICAgLmNvbnRlbnQtYXJ0aWNsZV9fYmFyOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMTVweDtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuY29udGVudC1hcnRpY2xlX19iYXI6OmJlZm9yZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5jb250ZW50LWFydGljbGVfX3dyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiA2O1xuICAgIHRvcDogMDtcbiAgICBtYXJnaW46IDAgYXV0byAwIGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgbWluLWhlaWdodDogMTAwMHB4O1xuICAgIG1heC13aWR0aDogMTMxMHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuODc1ZW0pIHtcbiAgICAgIC5jb250ZW50LWFydGljbGVfX3dyYXBwZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAtMTEwcHg7IH0gfVxuICAuY29udGVudC1hcnRpY2xlX19oZWFkZXIgLmZpbG0tbWV0YSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDQwcHggMCAwIDA7XG4gICAgcGFkZGluZzogMCAwIDAgMDtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2NlZDRkYTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAgICAgLmNvbnRlbnQtYXJ0aWNsZV9faGVhZGVyIC5maWxtLW1ldGEgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4OyB9IH1cbiAgICAuY29udGVudC1hcnRpY2xlX19oZWFkZXIgLmZpbG0tbWV0YSBkbCB7XG4gICAgICBtYXJnaW46IDAgMCAwIDA7XG4gICAgICBib3JkZXItdG9wOiBzb2xpZCAxcHggI2NlZDRkYTtcbiAgICAgIHBhZGRpbmc6IDhweCAwIDhweCAwOyB9XG4gICAgICAuY29udGVudC1hcnRpY2xlX19oZWFkZXIgLmZpbG0tbWV0YSBkbCBkdCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjYzcmVtO1xuICAgICAgICBjb2xvcjogIzRhNTA1ODsgfVxuICAgICAgLmNvbnRlbnQtYXJ0aWNsZV9faGVhZGVyIC5maWxtLW1ldGEgZGwgZGQge1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjNyZW07IH1cbiAgLmNvbnRlbnQtYXJ0aWNsZV9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS42MjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDM0LjA2cHg7XG4gICAgY29sb3I6ICMwYTBhMGE7XG4gICAgbWFyZ2luOiAxcmVtIDAgMCAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAuY29udGVudC1hcnRpY2xlX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIuMjZyZW07XG4gICAgICAgIG1hcmdpbjogMy40Mzc1cmVtIDAgMCAwOyB9IH1cbiAgLmNvbnRlbnQtYXJ0aWNsZV9fcHJlYW1ibGUge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsaW5lLWhlaWdodDogMS43NTVyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICBjb2xvcjogIzRhNTA1ODsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAgICAgLmNvbnRlbnQtYXJ0aWNsZV9fcHJlYW1ibGUge1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIuMTNyZW07IH0gfVxuICAuY29udGVudC1hcnRpY2xlX19jb250ZW50IHtcbiAgICBwYWRkaW5nOiA0MHB4IDAgNDBweCAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAuY29udGVudC1hcnRpY2xlX19jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMCAwIDQwcHggMDsgfSB9XG4gIC5jb250ZW50LWFydGljbGUgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMge1xuICAgIG1hcmdpbjogMi42MjVyZW0gMCAwIDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgICAgIC5jb250ZW50LWFydGljbGUgLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMge1xuICAgICAgICBtYXJnaW46IDMuMDYyNXJlbSAwIDAgMDsgfSB9XG4gIC5jb250ZW50LWFydGljbGVfX2Zvb3RlciB7XG4gICAgbWFyZ2luOiAyLjVyZW0gMCAwIDA7XG4gICAgcGFkZGluZzogMS41cmVtIDAgMCAwO1xuICAgIGJvcmRlci10b3A6IHNvbGlkIDFweCAjY2VkNGRhOyB9XG5cbi5zZWFyY2gtcmVzdWx0c19faGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZWNmMTtcbiAgcGFkZGluZzogNS44MTI1cmVtIDAgMnJlbSAwOyB9XG4gIC5zZWFyY2gtcmVzdWx0c19faGVhZGVyX190aXRsZSB7XG4gICAgY29sb3I6ICMwYTBhMGE7XG4gICAgbWFyZ2luOiAwIDAgMCAwO1xuICAgIGZvbnQtc2l6ZTogMy4zNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBsaW5lLWhlaWdodDogNC4xMTc1cmVtOyB9XG4gIC5zZWFyY2gtcmVzdWx0c19faGVhZGVyX19udW0taGl0cyB7XG4gICAgY29sb3I6ICMwYTBhMGE7XG4gICAgbWFyZ2luOiAxcmVtIDAgMCAwO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS44NzVyZW07IH1cblxuLnNlYXJjaC1yZXN1bHRzX19mb3JtIHtcbiAgbWFyZ2luOiAxLjVyZW0gMCAwIDA7IH1cbiAgLnNlYXJjaC1yZXN1bHRzX19mb3JtIC5pbnB1dC13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWF4LXdpZHRoOiAzNDNweDsgfVxuICAuc2VhcmNoLXJlc3VsdHNfX2Zvcm0gLnNlYXJjaC1pbnB1dCB7XG4gICAgbWluLWhlaWdodDogNDBweDtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgIGJvcmRlcjogc29saWQgMXB4ICNhY2I1YmQ7XG4gICAgcGFkZGluZzogLjVyZW0gMXJlbTtcbiAgICBjb2xvcjogIzRhNTA1ODsgfVxuICAuc2VhcmNoLXJlc3VsdHNfX2Zvcm0gLmljb24tY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgd2lkdGg6IDE5cHg7XG4gICAgaGVpZ2h0OiAxOXB4OyB9XG5cbi5zZWFyY2gtcmVzdWx0c19fcmVzdWx0cyB7XG4gIHBhZGRpbmc6IDRyZW0gMCA3Ljg3NXJlbSAwOyB9XG5cbi5zZWFyY2gtcmVzdWx0c19fcGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3JkZXItdG9wOiBzb2xpZCAxcHggI2NlZDRkYTtcbiAgbWFyZ2luOiAzLjVyZW0gMCAwIDA7XG4gIHBhZGRpbmc6IDIuNXJlbSAwIDAgMDsgfVxuIiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAgICAgICAgICAgICAgICAgICAgb29cclxuXHJcbjg4ZDhiLmQ4Yi4gLmQ4ODg4Yi4gZFAgODhkODg4Yi5cclxuODgnYDg4J2A4OCA4OCcgIGA4OCA4OCA4OCcgIGA4OFxyXG44OCAgODggIDg4IDg4LiAgLjg4IDg4IDg4ICAgIDg4XHJcbmRQICBkUCAgZFAgYDg4ODg4UDggZFAgZFAgICAgZFBcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5cclxuLy8gUHJlIHZlbmRvclxyXG5AaW1wb3J0ICcuLy4uLy4uLy4uLy4uL2xvY2FsLWxpYnJhcmllcy9ieWdnYS1jb29raWUtZGlzY2xhaW1lci9zcmMvYnlnZ2EtY29va2llLWRpc2NsYWltZXInO1xyXG4vLyBMYXlvdXRcclxuQGltcG9ydCBcImZvdW5kYXRpb24taW1wb3J0XCI7XHJcbi8vIFZlbmRvclxyXG5AaW1wb3J0IFwibm9ybWFsaXplXCI7XHJcbkBpbmNsdWRlIG5vcm1hbGl6ZSgpO1xyXG5AaW1wb3J0ICcuLy4uL3ZlbmRvci9zbGljay9zbGljay1jdXN0b20nO1xyXG5AaW1wb3J0ICcuLy4uL3ZlbmRvci9zbGljay9zbGljay10aGVtZS1jdXN0b20nO1xyXG5AaW1wb3J0IFwiaGVscGVyc1wiO1xyXG5AaW1wb3J0IFwibWl4aW5zXCI7XHJcbi8vIEJhc2UgcHJvamVjdFxyXG5AaW1wb3J0IFwiY29sb3JzXCI7XHJcbkBpbXBvcnQgXCJmb250c1wiO1xyXG4vLyBIVE1MIEVsZW1lbnRzXHJcbkBpbXBvcnQgXCJodG1sLXRhZ3NcIjtcclxuQGltcG9ydCBcImJhY2tncm91bmRzXCI7XHJcbi8vIEVsZW1lbnRzXHJcbkBpbXBvcnQgXCIuLi8uLi9lbGVtZW50cy9pbXBvcnRzXCI7XHJcbi8vIENvbXBvbmVudHNcclxuQGltcG9ydCBcIi4uLy4uL2NvbXBvbmVudHMvaW1wb3J0c1wiO1xyXG4vLyBDb250YWluZXJzXHJcbkBpbXBvcnQgXCIuLi8uLi9jb250YWluZXJzL2ltcG9ydHNcIjtcclxuIiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4uODg4OGIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZFAgICAgICAgICAgICBkUCAgIG9vXHJcbjg4ICAgXCIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgODggICAgICAgICAgICA4OFxyXG44OGFhYSAgLmQ4ODg4Yi4gZFAgICAgZFAgODhkODg4Yi4gLmQ4ODhiODggLmQ4ODg4Yi4gZDg4ODhQIGRQIC5kODg4OGIuIDg4ZDg4OGIuXHJcbjg4ICAgICA4OCcgIGA4OCA4OCAgICA4OCA4OCcgIGA4OCA4OCcgIGA4OCA4OCcgIGA4OCAgIDg4ICAgODggODgnICBgODggODgnICBgODhcclxuODggICAgIDg4LiAgLjg4IDg4LiAgLjg4IDg4ICAgIDg4IDg4LiAgLjg4IDg4LiAgLjg4ICAgODggICA4OCA4OC4gIC44OCA4OCAgICA4OFxyXG5kUCAgICAgYDg4ODg4UCcgYDg4ODg4UCcgZFAgICAgZFAgYDg4ODg4UDggYDg4ODg4UDggICBkUCAgIGRQIGA4ODg4OFAnIGRQICAgIGRQXHJcblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuXHJcbi8qKi9cclxuXHJcbi8vIEZvdW5kYXRpb24gWFktR3JpZCBDdXN0b20gU2V0dGluZ3NcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbkBpbXBvcnQgXCJ1dGlsL3V0aWxcIjtcclxuXHJcbi8vIDEuIEdsb2JhbFxyXG4vLyAtIG5vdGU6ICRndXR0ZXItd2lkdGgtKiB1c2VkIGluIC5zY3JlZW4tcGFkZGluZyBoZWxwZXIgY2xhc3NcclxuLy8gLS0tLS0tLS0tXHJcbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlO1xyXG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjYwKTtcclxuXHJcbi8vIDIuIEJyZWFrcG9pbnRzXHJcbi8vIC0tLS0tLS0tLS0tLS0tXHJcbiRicmVha3BvaW50czogKFxyXG4gICAgc21hbGw6IDAsXHJcbiAgICBtZWRpdW06IDU0MHB4LFxyXG4gICAgbGFyZ2U6IDc1MHB4LFxyXG4gICAgeGxhcmdlOiAxMDI0cHgsXHJcbiAgICB4eGxhcmdlOiAxMjMwcHgsXHJcbiAgICB4eHhsYXJnZTogMTMxMHB4LFxyXG4gICAgdmlld01heDogMTQ0NXB4LFxyXG4gICAgbWVnYTogMTYwMHB4LFxyXG4pO1xyXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2U7XHJcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UgeGxhcmdlKTtcclxuXHJcbi8vIDMuIFRoZSBHcmlkXHJcbi8vIC0tLS0tLS0tLS0tXHJcbi8vLyBAZ3JvdXAgeHktZ3JpZFxyXG5cclxuLy8vIEVuYWJsZXMgdGhlIFhZIGdyaWQuXHJcbi8vLyBAdHlwZSBCb29sZWFuXHJcbiR4eS1ncmlkOiB0cnVlICFkZWZhdWx0O1xyXG4vLy8gVGhlIG1heGltdW0gd2lkdGggb2YgYSBncmlkIGNvbnRhaW5lci5cclxuLy8vIEB0eXBlIE51bWJlclxyXG4kZ3JpZC1jb250YWluZXI6ICRnbG9iYWwtd2lkdGggIWRlZmF1bHQ7XHJcbi8vLyBUaGUgbnVtYmVyIG9mIGNvbHVtbnMgdXNlZCBpbiB0aGUgZ3JpZC5cclxuLy8vIEB0eXBlIE51bWJlclxyXG4kZ3JpZC1jb2x1bW5zOiAxMiAhZGVmYXVsdDtcclxuLy8vIFRoZSBhbW91bnQgb2YgbWFyZ2luIGJldHdlZW4gY2VsbHMgYXQgZGlmZmVyZW50IHNjcmVlbiBzaXplcyB3aGVuIHVzaW5nIHRoZSBtYXJnaW4gZ3JpZC4gVG8gdXNlIGp1c3Qgb25lIHNpemUsIHNldCB0aGUgdmFyaWFibGUgdG8gYSBudW1iZXIgaW5zdGVhZCBvZiBhIG1hcC5cclxuLy8vIEB0eXBlIE1hcCB8IExlbmd0aFxyXG4kZ3JpZC1tYXJnaW4tZ3V0dGVyczogKFxyXG4gICAgc21hbGw6IDMwcHgsXHJcbiAgICBtZWRpdW06IDMwcHhcclxuKSAhZGVmYXVsdDtcclxuLy8vIFRoZSBhbW91bnQgb2YgcGFkZGluZyBpbiBjZWxscyBhdCBkaWZmZXJlbnQgc2NyZWVuIHNpemVzIHdoZW4gdXNpbmcgdGhlIHBhZGRpbmcgZ3JpZC4gVG8gdXNlIGp1c3Qgb25lIHNpemUsIHNldCB0aGUgdmFyaWFibGUgdG8gYSBudW1iZXIgaW5zdGVhZCBvZiBhIG1hcC5cclxuLy8vIEB0eXBlIE1hcCB8IExlbmd0aFxyXG4kZ3JpZC1wYWRkaW5nLWd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzICFkZWZhdWx0O1xyXG4vLy8gVGhlIGFtb3VudCBvZiBwYWRkaW5nIHRvIHVzZSB3aGVuIHBhZGRpbmcgdGhlIGdyaWQtY29udGFpbmVyLlxyXG4vLy8gQHR5cGUgTWFwIHwgTGVuZ3RoXHJcbiRncmlkLWNvbnRhaW5lci1wYWRkaW5nOiAoXHJcbiAgICBzbWFsbDogMzBweCxcclxuICAgIG1lZGl1bTogMzBweFxyXG4pICFkZWZhdWx0O1xyXG4vLy8gVGhlIG1heGltdW0gd2lkdGggdG8gYXBwbHkgdG8gYSBncmlkIGNvbnRhaW5lclxyXG4vLy8gQHR5cGUgTnVtYmVyXHJcbiRncmlkLWNvbnRhaW5lci1tYXg6ICRnbG9iYWwtd2lkdGggIWRlZmF1bHQ7XHJcbi8vLyBUaGUgbWF4aW11bSBudW1iZXIgb2YgY2VsbHMgaW4gYW4gWFkgYmxvY2sgZ3JpZC5cclxuLy8vIEB0eXBlIE51bWJlclxyXG4keHktYmxvY2stZ3JpZC1tYXg6IDggIWRlZmF1bHQ7XHJcblxyXG4vLyA0LiBJbmNsdWRlc1xyXG4vLyAtLS0tLS0tLS0tLVxyXG5AaW1wb3J0IFwiZm91bmRhdGlvblwiO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLXh5LWdyaWQtY2xhc3NlcztcclxuQGltcG9ydCBcInh5LWdyaWQvZ3V0dGVyc1wiO1xyXG5AaW1wb3J0IFwieHktZ3JpZC9ncmlkXCI7XHJcbkBpbXBvcnQgXCJ4eS1ncmlkL2NlbGxcIjtcclxuQGltcG9ydCBcInh5LWdyaWQvZnJhbWVcIjtcclxuQGltcG9ydCBcInh5LWdyaWQvcG9zaXRpb25cIjtcclxuQGltcG9ydCBcInh5LWdyaWQvbGF5b3V0XCI7XHJcbkBpbXBvcnQgXCJ4eS1ncmlkL2NvbGxhcHNlXCI7XHJcbkBpbXBvcnQgXCJ4eS1ncmlkL2NsYXNzZXNcIjtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXM7XHJcbiIsIi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjUuM1xuICogZm91bmRhdGlvbi56dXJiLmNvbVxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cblxuLy8gRGVwZW5kZW5jaWVzXG5AaW1wb3J0ICd2ZW5kb3Ivbm9ybWFsaXplJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy9taXNzaW5nLWRlcGVuZGVuY2llcyc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2hlbHBlcnMvdHJ1ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9jb250YWluJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3B1cmdlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlbW92ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZXBsYWNlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3RvLWxpc3QnO1xuXG4vLyAtLS0gU2V0dGluZ3MgLS0tXG4vLyBpbXBvcnQgeW91ciBvd24gYHNldHRpbmdzYCBoZXJlIG9yXG4vLyBpbXBvcnQgYW5kIG1vZGlmeSB0aGUgZGVmYXVsdCBzZXR0aW5ncyB0aHJvdWdoXG4vLyBAaW1wb3J0ICdzZXR0aW5ncy9zZXR0aW5ncyc7XG5cbi8vIC0tLSBDb21wb25lbnRzIC0tLVxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuLy8gR2xvYmFsIHN0eWxlc1xuQGltcG9ydCAnZ2xvYmFsJztcbkBpbXBvcnQgJ2Zvcm1zL2Zvcm1zJztcbkBpbXBvcnQgJ3R5cG9ncmFwaHkvdHlwb2dyYXBoeSc7XG5cbi8vIEdyaWRzXG5AaW1wb3J0ICdncmlkL2dyaWQnO1xuQGltcG9ydCAneHktZ3JpZC94eS1ncmlkJztcbi8vIEdlbmVyaWMgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24tZ3JvdXAnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jbG9zZS1idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9sYWJlbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Byb2dyZXNzLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NsaWRlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N3aXRjaCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYmxlJztcbi8vIEJhc2ljIGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYmFkZ2UnO1xuQGltcG9ydCAnY29tcG9uZW50cy9icmVhZGNydW1icyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhbGxvdXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYXJkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9wYWdpbmF0aW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9vbHRpcCc7XG5cbi8vIENvbnRhaW5lcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEtb2JqZWN0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb3JiaXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXNwb25zaXZlLWVtYmVkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFicyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RodW1ibmFpbCc7XG4vLyBNZW51LWJhc2VkIGNvbnRhaW5lcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lbnUtaWNvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbi1tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJpbGxkb3duJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24tbWVudSc7XG5cbi8vIExheW91dCBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL29mZi1jYW52YXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXZlYWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9zdGlja3knO1xuQGltcG9ydCAnY29tcG9uZW50cy90aXRsZS1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy90b3AtYmFyJztcblxuLy8gSGVscGVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9mbG9hdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ZsZXgnO1xuQGltcG9ydCAnY29tcG9uZW50cy92aXNpYmlsaXR5JztcbkBpbXBvcnQgJ3Byb3RvdHlwZS9wcm90b3R5cGUnO1xuXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWV2ZXJ5dGhpbmcoXG4gICRmbGV4OiB0cnVlLFxuICAkcHJvdG90eXBlOiBmYWxzZVxuKSB7XG4gIEBpZiAkZmxleCB7XG4gICAgJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICAvLyBHbG9iYWwgc3R5bGVzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mb3JtcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xuXG4gIC8vIEdyaWRzXG4gIEBpZiBub3QgJGZsZXgge1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZ3JpZDtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGlmICR4eS1ncmlkIHtcbiAgICAgIEBpbmNsdWRlIGZvdW5kYXRpb24teHktZ3JpZC1jbGFzc2VzO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcbiAgICB9XG4gIH1cblxuICAvLyBHZW5lcmljIGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1sYWJlbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm9ncmVzcy1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc2xpZGVyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbiAgLy8gQmFzaWMgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJhZGdlO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhbGxvdXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FyZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wYWdpbmF0aW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvb2x0aXA7XG5cbiAgLy8gQ29udGFpbmVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZWRpYS1vYmplY3Q7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb3JiaXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcbiAgLy8gTWVudS1iYXNlZCBjb250YWluZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcblxuICAvLyBMYXlvdXQgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9mZi1jYW52YXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmV2ZWFsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN0aWNreTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aXRsZS1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9wLWJhcjtcblxuICAvLyBIZWxwZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxvYXQtY2xhc3NlcztcbiAgQGlmICRmbGV4IHsgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7IH1cbiAgQGluY2x1ZGUgZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXM7XG4gIEBpZiAkcHJvdG90eXBlIHsgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm90b3R5cGUtY2xhc3NlczsgfVxufVxuIiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICBfXyAgICAgICAgICAgICBfXHJcbiAvIF98IF9fXyAgXyBfXyB8IHxfIF9fX1xyXG58IHxfIC8gXyBcXHwgJ18gXFx8IF9fLyBfX3xcclxufCAgX3wgKF8pIHwgfCB8IHwgfF9cXF9fIFxcXHJcbnxffCAgXFxfX18vfF98IHxffFxcX198X19fL1xyXG5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Sb2JvdG86NDAwLDUwMCw3MDAsOTAwJyk7XHJcbiRmX19yb2JvdG86ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xyXG5cclxuLypcclxuXHRmb250LXNpemVzXHJcbiovXHJcblxyXG5AbWl4aW4gZl9faDEge1xyXG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoNDBweCk7XHJcbiAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMSwyNSo0MHB4KTtcclxuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDU0cHgpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDEuMjIqNTRweCk7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gZl9faDItbGcge1xyXG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjZweCk7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDEsMzEqMjZweCk7XHJcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygzMnB4KTtcclxuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxLjEzKjMycHgpO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGZfX2gyIHtcclxuICBmb250LXNpemU6IHJlbS1jYWxjKDI4cHgpO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxLjI5KjI4cHgpO1xyXG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcbn1cclxuXHJcbkBtaXhpbiBmX19oMyB7XHJcbiAgZm9udC1zaXplOiByZW0tY2FsYygyNHB4KTtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjZweCk7XHJcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyNHB4KTtcclxuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzMHB4KTtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBmX19oNCB7XHJcbiAgZm9udC1zaXplOiByZW0tY2FsYygxNnB4KTtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjJweCk7XHJcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMHB4KTtcclxuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzMHB4KTtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBmX19mb290ZXItaGVhZGluZyB7XHJcbiAgZm9udC1zaXplOiByZW0tY2FsYygyMHB4KTtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMS41KjIwcHgpO1xyXG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcbn1cclxuXHJcbkBtaXhpbiBmX19wcmVhbWJsZSB7XHJcbiAgZm9udC1zaXplOiByZW0tY2FsYygxOHB4KTtcclxuICBmb250LXdlaWdodDogNTAwO1xyXG4gIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxLjU2KjE4cHgpO1xyXG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjRweCk7XHJcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMS40MioyNHB4KTtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBmX19ib2R5IHtcclxuICBmb250LXNpemU6IHJlbS1jYWxjKDE2cHgpO1xyXG4gIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygycHgpO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMThweCk7XHJcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjhweCk7XHJcbiAgfVxyXG59XHJcblxyXG4uZl9faDEge1xyXG4gIEBpbmNsdWRlIGZfX2gxO1xyXG59XHJcblxyXG4uZl9faDIge1xyXG4gIEBpbmNsdWRlIGZfX2gyO1xyXG59XHJcblxyXG4uZl9faDMge1xyXG4gIEBpbmNsdWRlIGZfX2gzO1xyXG59XHJcblxyXG4uZl9faDQsXHJcbi5mX19oNSB7XHJcbiAgQGluY2x1ZGUgZl9faDQ7XHJcbn1cclxuXHJcbkBtaXhpbiBmX190ZXh0IHtcclxuICBmb250LXNpemU6IHJlbS1jYWxjKDE2cHgpO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI2cHgpO1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4cHgpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI4cHgpO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGZfX3RleHQtbGFyZ2Uge1xyXG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTZweCk7XHJcbiAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjJweCk7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjBweCk7XHJcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjRweCk7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gZl9fdGV4dC1wcmVhbWJsZSB7XHJcbiAgZm9udC1zaXplOiByZW0tY2FsYygyMHB4KTtcclxuICBmb250LXdlaWdodDogNTAwO1xyXG4gIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyMnB4KTtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMnB4KTtcclxuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNHB4KTtcclxuICB9XHJcbn1cclxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLyBNYXJnaW4gR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktYmFzZS1ncmlkLWNsYXNzZXMge1xuXG4gIC8vIEdyaWQgQ29udGFpbmVyXG4gIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XG5cbiAgICAmLmZsdWlkIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyKDEwMCUpO1xuICAgIH1cblxuICAgICYuZnVsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcigxMDAlLCAwKTtcbiAgICB9XG4gIH1cblxuICAvLyBCYXNlIGdyaWQgc3R5bGVzXG4gIC5ncmlkLXgge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQ7XG4gIH1cblxuICAuY2VsbCB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKCk7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGdyaWQtY29sdW1ucywgZmFsc2UsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG5cbiAgICAmLmF1dG8ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKGF1dG8pO1xuICAgIH1cblxuICAgICYuc2hyaW5rIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgIH1cblxuICB9XG4gIC5ncmlkLXgge1xuICAgID4gLmF1dG8ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoYXV0bywgZmFsc2UpO1xuICAgIH1cblxuICAgID4gLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhzaHJpbmssIGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICAvLyBBdXRvIHdpZHRoXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgLy8gVGhpcyBpcyBhIGJpdCBvZiBhIGhhY2svd29ya2Fyb3VuZCwgc2VlIHRoZXNlIGlzc3VlcyAmIFBScyBmb3IgdGhlIGJhY2tzdG9yeTpcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMDI0NFxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDIyMiBhbmRcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAxNjRcbiAgICAuZ3JpZC14IHtcbiAgICAgICRzdHI6IFwiPiAuI3skLXpmLXNpemV9LXNocmluaywgPiAuI3skLXpmLXNpemV9LWZ1bGxcIjtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICRzdHI6ICRzdHIgKyBcIiwgPiAuI3skLXpmLXNpemV9LSN7JGl9XCJcbiAgICAgIH1cbiAgICAgICN7JHN0cn0ge1xuICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgLy8gUmVzcG9uc2l2ZSBcImF1dG9cIiBtb2RpZmllclxuICAgIEBpZiBub3QoJC16Zi1zaXplID09IHNtYWxsKSB7XG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKGF1dG8pO1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJS14eS1jZWxsLWJhc2Utc2hyaW5rLWhvcml6b250YWwtI3skLXpmLXNpemV9IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgXCJzaHJpbmtcIiBtb2RpZmllclxuICAgIEBpZiBub3QoJC16Zi1zaXplID09IHNtYWxsKSB7XG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS1zaHJpbmsge1xuICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay1ob3Jpem9udGFsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSB3aWR0aCBtb2RpZmllcnNcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgLmdyaWQteCA+IC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay1ob3Jpem9udGFsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGksIGZhbHNlLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IHdpZHRoIHdoZW4gdXNpbmcgYC5ncmlkLW1hcmdpbi14YCBub3Qgb24gYC5ncmlkLXhgXG4gIC5ncmlkLW1hcmdpbi14Om5vdCguZ3JpZC14KSA+IC5jZWxsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC8vIFJlc2V0IGhlaWdodCB3aGVuIHVzaW5nIGAuZ3JpZC1tYXJnaW4teWAgbm90IG9uIGAuZ3JpZC15YFxuICAuZ3JpZC1tYXJnaW4teTpub3QoLmdyaWQteSkgPiAuY2VsbCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbkBtaXhpbiAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJGNsYXNzLWJyZWFrcG9pbnQsICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsKSB7XG4gICRwcmVmaXg6IGlmKCRjbGFzcy1icmVha3BvaW50ID09ICQtemYtemVyby1icmVha3BvaW50LCAnJywgJyN7JGNsYXNzLWJyZWFrcG9pbnR9LScpO1xuICA+IC4jeyRwcmVmaXh9YXV0byB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoYXV0bywgZmFsc2UsICRicmVha3BvaW50OiAkZ3V0dGVyLWJyZWFrcG9pbnQsICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgfVxuXG4gID4gLiN7JHByZWZpeH1zaHJpbmsge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKHNocmluaywgZmFsc2UsICRicmVha3BvaW50OiAkZ3V0dGVyLWJyZWFrcG9pbnQsICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICRjbGFzc25hbWU6IGlmKCR2ZXJ0aWNhbCwgJy4jeyRjbGFzcy1icmVha3BvaW50fS0jeyRpfScsICcuI3skY2xhc3MtYnJlYWtwb2ludH0tI3skaX0nKTtcblxuICAgID4gI3skY2xhc3NuYW1lfSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkaSwgZmFsc2UsICRicmVha3BvaW50OiAkZ3V0dGVyLWJyZWFrcG9pbnQsICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWFyZ2luIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXMoXG4gICRndXR0ZXItcG9zaXRpb246IGxlZnQgcmlnaHQsXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICR3cmFwcGluZy1zZWxlY3RvcjogJy5ncmlkLW1hcmdpbi14J1xuKXtcbiAgI3skd3JhcHBpbmctc2VsZWN0b3J9IHtcbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSwgJGd1dHRlci1wb3NpdGlvbjogJGd1dHRlci1wb3NpdGlvbik7XG5cbiAgICAvLyBCYXNlIGNlbGwgc3R5bGVzXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkdmVydGljYWw6ICR2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgLy8gYmFzZSBzdHlsZXMgbmVlZCB0byBhbGwgYmUgYmVmb3JlIHRoZSBhdXRvIGFuZCBzaHJpbmsgc3R5bGVzXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIEBpZih0eXBlLW9mKCRncmlkLW1hcmdpbi1ndXR0ZXJzKSA9PSAnbWFwJyBhbmQgbWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSkgYW5kICQtemYtc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgICA+IC5jZWxsIHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkYnJlYWtwb2ludDogJC16Zi1zaXplLCAkdmVydGljYWw6ICR2ZXJ0aWNhbCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuXG4gICAgICAvLyBUaGlzIGlzIHB1cmVseSBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzIC0gdGhlIG1hcmdpbiBncmlkIGhhcyB0byBnbyBiYWNrIGFuZCBhZGp1c3Qgd2lkdGhzIChvciBoZWlnaHRzKVxuICAgICAgLy8gZm9yIGFsbCBwcmlvciBicmVha3BvaW50cy5cbiAgICAgIC8vIEFzIHRoZWlyIGd1dHRlciBpcyBkZWZpbmVkIHdpdGggdGhlaXIgd2lkdGgvaGVpZ2h0LCBldmVuIGJyZWFrcG9pbnQgd2l0aG91dCBhIG5ldyBtYXJnaW4gbXVzdCBiZVxuICAgICAgLy8gZ2VuZXJhdGVkIHRvIG5vdCBoYXZpbmcgdGhlaXIgd2lkdGgvaGVpZ2h0IG92ZXJyaWRlZCBieSByZS1hZGp1c3RlZCBzbWFsbGVyIGJyZWFrcG9pbnRzLlxuICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSkge1xuICAgICAgICBAZWFjaCAkYnAgaW4gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkLXpmLXNpemUpIHtcbiAgICAgICAgICBAaW5jbHVkZSAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJGJwLCAkLXpmLXNpemUsICR2ZXJ0aWNhbCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXh5LWJyZWFrcG9pbnQtY2VsbC1jbGFzc2VzKCQtemYtc2l6ZSwgJC16Zi1zaXplLCAkdmVydGljYWwpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQYWRkaW5nIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LXBhZGRpbmctZ3JpZC1jbGFzc2VzIHtcbiAgLmdyaWQtcGFkZGluZy14IHtcblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3IgbmVzdGVkIGdyaWRzXG4gICAgLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlKTtcbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIGdyaWRzIHdpdGhpbiBgZ3JpZC1jb250YWluZXIvZ3JpZC1jb250YWluZXIuZmx1aWRgXG4gICAgLy8gVGhpcyBhbGxvd3MgbWFyZ2luIGFuZCBwYWRkaW5nIGdyaWRzIHRvIGxpbmUgdXAgd2l0aCBlYWNob3RoZXJcbiAgICAuZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+ICYge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUpO1xuICAgIH1cblxuICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQmxvY2sgR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktYmxvY2stZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZDogdHJ1ZSwgJHBhZGRpbmctZ3JpZDogdHJ1ZSkge1xuICBAaWYgJHBhZGRpbmctZ3JpZCB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR4eS1ibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KCRuOiAkaSwgJHNlbGVjdG9yOiAnLmNlbGwnLCAkZ3V0dGVyLW91dHB1dDogZmFsc2UsICRndXR0ZXItdHlwZTogcGFkZGluZywgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLy8gVGhpcyBpcyBwdXJlbHkgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycyAtIHRoZSBtYXJnaW4gZ3JpZCBoYXMgdG8gZ28gYmFjayBhbmQgYWRqdXN0IHdpZHRocyAob3IgaGVpZ2h0cylcbiAgICAgICAgLy8gZm9yIHByaW9yIGJyZWFrcG9pbnRzIGJhc2VkIG9uIHRoZSByZXNwb25zaXZlIGd1dHRlci5cbiAgICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSkge1xuICAgICAgICAgIEBlYWNoICRicCBpbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCQtemYtc2l6ZSkge1xuICAgICAgICAgICAgQGlmKG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkYnApKSB7XG4gICAgICAgICAgICAgIC5ncmlkLW1hcmdpbi14LiN7JGJwfS11cC0jeyRpfSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItb3V0cHV0OiBmYWxzZSwgJGd1dHRlci10eXBlOiBtYXJnaW4sICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR4eS1ibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC5ncmlkLW1hcmdpbi14LiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItb3V0cHV0OiBmYWxzZSwgJGd1dHRlci10eXBlOiBtYXJnaW4sICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIENvbGxhcHNlIGNsYXNzZXNcbkBtaXhpbiB4eS1jb2xsYXBzZS1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkOiB0cnVlLCAkcGFkZGluZy1ncmlkOiB0cnVlKSB7XG4gIEBlYWNoICRicCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICAgIC4jeyRicH0tbWFyZ2luLWNvbGxhcHNlIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb2xsYXBzZSgkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJG1pbi1icmVha3BvaW50OiAkYnApO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAgIC4jeyRicH0tcGFkZGluZy1jb2xsYXBzZSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29sbGFwc2UoJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkbWluLWJyZWFrcG9pbnQ6ICRicCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE9mZnNldCBjbGFzc2VzXG5AbWl4aW4geHktb2Zmc2V0LWNlbGwtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAvLyBPZmZzZXRzXG4gICAgICAkbzogJGkgLSAxO1xuXG4gICAgICAuI3skLXpmLXNpemV9LW9mZnNldC0jeyRvfSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtb2Zmc2V0KCRvLCAkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgfVxuXG4gICAgICAuZ3JpZC1tYXJnaW4teCA+IC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1vZmZzZXQoJG8sICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBWZXJ0aWNhbCBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS12ZXJ0aWNhbC1ncmlkLWNsYXNzZXMoXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZVxuKSB7XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSBzbWFsbCkge1xuICAgIH1cbiAgfVxuXG4gIC5ncmlkLXkge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQodmVydGljYWwsIGZhbHNlKTtcblxuXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXJlc2V0KCk7XG4gICAgfVxuXG4gICAgPiAuYXV0byB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICB9XG5cbiAgICA+IC5zaHJpbmsge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICB9XG5cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICAvLyBUaGlzIGlzIGEgYml0IG9mIGEgaGFjay93b3JrYXJvdW5kLCBzZWUgdGhlc2UgaXNzdWVzIGFuZCBQUnMgZm9yIHRoZSBiYWNrc3Rvcnk6XG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMDI0NFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMjIyIGFuZFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMTY0XG4gICAgICAkc3RyOiBcIj4gLiN7JC16Zi1zaXplfS1zaHJpbmssID4gLiN7JC16Zi1zaXplfS1mdWxsXCI7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAkc3RyOiAkc3RyICsgXCIsID4gLiN7JC16Zi1zaXplfS0jeyRpfVwiXG4gICAgICB9XG4gICAgICAjeyRzdHJ9IHtcbiAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgLy8gUmVzcG9uc2l2ZSBcImF1dG9cIiBtb2RpZmllclxuICAgICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gc21hbGwpIHtcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LWF1dG8ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShhdXRvKTtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAlLXh5LWNlbGwtYmFzZS1zaHJpbmstdmVydGljYWwtI3skLXpmLXNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKHNocmluayk7XG4gICAgICB9XG5cbiAgICAgIC8vIFJlc3BvbnNpdmUgXCJzaHJpbmtcIiBtb2RpZmllclxuICAgICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gc21hbGwpIHtcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LXNocmluayB7XG4gICAgICAgICAgQGV4dGVuZCAlLXh5LWNlbGwtYmFzZS1zaHJpbmstdmVydGljYWwtI3skLXpmLXNpemV9O1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKHNocmluaywgZmFsc2UsICRicmVha3BvaW50OiAkLXpmLXNpemUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gUmVzcG9uc2l2ZSB3aWR0aCBtb2RpZmllcnNcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LSN7JGl9IHtcbiAgICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay12ZXJ0aWNhbC0jeyQtemYtc2l6ZX07XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGksIGZhbHNlLCAkdmVydGljYWw6IHRydWUsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgfVxuXG4gIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkge1xuICAgICAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBuZXN0ZWQgZ3JpZHNcbiAgICAgIC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cblxuICAgICAgLy8gQmFzZSBjZWxsIHN0eWxlc1xuICAgICAgPiAuY2VsbCB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKHRvcCBib3R0b20sIHRydWUsICcuZ3JpZC1tYXJnaW4teScpO1xuICB9XG5cbn1cblxuQG1peGluIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZDogdHJ1ZSwgJG1hcmdpbi1ncmlkOiB0cnVlKSB7XG4gIC8vIEZyYW1lZCBncmlkIHN0eWxlc1xuICAuZ3JpZC1mcmFtZSB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZTtcbiAgfVxuXG4gIC5jZWxsIC5ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgfVxuXG4gIC5jZWxsLWJsb2NrIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKCk7XG4gIH1cblxuICAuY2VsbC1ibG9jay15IHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICB9XG5cblxuICAuY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCk7XG4gIH1cblxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcblxuICAgIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lO1xuICAgIH1cblxuICAgIC5jZWxsIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2sge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jaygpO1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jay1jb250YWluZXIoKTtcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2steSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdmVydGljYWwtZ3JpZCB7XG4gICAgLmdyaWQteSB7XG4gICAgICAmLmdyaWQtZnJhbWUge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAmLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUpO1xuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICB9XG4gICAgLmNlbGwge1xuICAgICAgLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAuZ3JpZC15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGlmICRtYXJnaW4tZ3JpZCB7XG4gICAgQGluY2x1ZGUgeHktbWFyZ2luLWdyaWQtY2xhc3Nlcyh0b3AgYm90dG9tLCB0cnVlLCAnLmdyaWQtbWFyZ2luLXknKTtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSwgZmFsc2UsICRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkaW5jbHVkZS1iYXNlOiBmYWxzZSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcbiAgICAgIC5ncmlkLW1hcmdpbi15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlLCBmYWxzZSwgJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSwgZmFsc2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBGaW5hbCBjbGFzc2VzXG5AbWl4aW4gZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXMoXG4gICRiYXNlLWdyaWQ6IHRydWUsXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZSxcbiAgJGJsb2NrLWdyaWQ6IHRydWUsXG4gICRjb2xsYXBzZTogdHJ1ZSxcbiAgJG9mZnNldDogdHJ1ZSxcbiAgJHZlcnRpY2FsLWdyaWQ6IHRydWUsXG4gICRmcmFtZS1ncmlkOiB0cnVlXG4pIHtcblxuICAvLyBCYXNlIGdyaWQgc3R5bGVzXG4gIEBpZigkYmFzZS1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktYmFzZS1ncmlkLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIE1hcmdpbiBncmlkXG4gIEBpZigkbWFyZ2luLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBQYWRkaW5nIGdyaWRcbiAgQGlmKCRwYWRkaW5nLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1wYWRkaW5nLWdyaWQtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZFxuICBAaWYoJGJsb2NrLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1ibG9jay1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkLCAkcGFkZGluZy1ncmlkKTtcbiAgfVxuXG4gIC8vIENvbGxhcHNlIGd1dHRlcnNcbiAgQGlmKCRjb2xsYXBzZSkge1xuICAgIEBpbmNsdWRlIHh5LWNvbGxhcHNlLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgLy8gT2Zmc2V0IGd1dHRlcnNcbiAgQGlmKCRvZmZzZXQpIHtcbiAgICBAaW5jbHVkZSB4eS1vZmZzZXQtY2VsbC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBWZXJ0aWNhbCBncmlkXG4gIEBpZigkdmVydGljYWwtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LXZlcnRpY2FsLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgQGlmICgkZnJhbWUtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZCwgJG1hcmdpbi1ncmlkKVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDcmVhdGUgZ3V0dGVycyBmb3IgYSBjZWxsL2NvbnRhaW5lci5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgZWl0aGVyIG1hcmdpbiBvciBwYWRkaW5nLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbcmlnaHQgbGVmdF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkbmVnYXRpdmUgW2ZhbHNlXSAtIFdoZXRoZXIgdG8gYXBwbHkgdGhlIGd1dHRlciBhcyBhIG5lZ2F0aXZlIHZhbHVlLiBDb21tb25seSB1c2VkIGZvciBuZXN0ZWQgZ3JpZHMuXG5AbWl4aW4geHktZ3V0dGVycyhcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJG5lZ2F0aXZlOiBmYWxzZVxuKSB7XG4gICRvcGVyYXRvcjogaWYoJG5lZ2F0aXZlLCAnLScsICcnKTtcblxuICAvLyBJZiB3ZSBoYXZlIGRlY2xhcmVkIG5lZ2F0aXZlIGd1dHRlcnMsIGZvcmNlIHR5cGUgdG8gYG1hcmdpbi5cbiAgJGd1dHRlci10eXBlOiBpZigkbmVnYXRpdmUsICdtYXJnaW4nLCAkZ3V0dGVyLXR5cGUpO1xuXG4gIC8vIE91dHB1dCBvdXIgbWFyZ2luIGd1dHRlcnMuXG4gIEBpZiAodHlwZS1vZigkZ3V0dGVycykgPT0gJ21hcCcpIHtcbiAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZShhdXRvLCAkZ3V0dGVycykge1xuICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSkgLyAyO1xuXG4gICAgICAvLyBMb29wIHRocm91Z2ggZWFjaCBndXR0ZXIgcG9zaXRpb25cbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgI3skZ3V0dGVyLXR5cGV9LSN7JHZhbHVlfTogdW5xdW90ZShcIiN7JG9wZXJhdG9yfSN7JGd1dHRlcn1cIik7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICh0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbnVtYmVyJykge1xuICAgICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXJzKSAvIDI7XG5cbiAgICAvLyBMb29wIHRocm91Z2ggZWFjaCBndXR0ZXIgcG9zaXRpb25cbiAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAjeyRndXR0ZXItdHlwZX0tI3skdmFsdWV9OiB1bnF1b3RlKFwiI3skb3BlcmF0b3J9I3skZ3V0dGVyfVwiKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZXMgYSBtYXggd2lkdGggY29udGFpbmVyLCBkZXNpZ25lZCB0byBob3VzZSB5b3VyIGdyaWQgY29udGVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWyRncmlkLWNvbnRhaW5lcl0gLSBhIHdpZHRoIHRvIGxpbWl0IHRoZSBjb250YWluZXIgdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkaW5nIFskZ3JpZC1jb250YWluZXItcGFkZGluZ10gLSBwYWRkaW5ncyBvZiB0aGUgY29udGFpbmVyLlxuQG1peGluIHh5LWdyaWQtY29udGFpbmVyKFxuICAkd2lkdGg6ICRncmlkLWNvbnRhaW5lcixcbiAgJHBhZGRpbmc6ICRncmlkLWNvbnRhaW5lci1wYWRkaW5nXG4pIHtcbiAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyczogJHBhZGRpbmcsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG5cbiAgbWF4LXdpZHRoOiAkd2lkdGg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi8vLyBDcmVhdGVzIGEgY29udGFpbmVyIGZvciB5b3VyIGZsZXggY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW2hvcml6b250YWxdIC0gRWl0aGVyIGhvcml6b250YWwgb3IgdmVydGljYWwgZGlyZWN0aW9uIG9mIGNlbGxzIHdpdGhpbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR3cmFwIFt0cnVlXSAtIElmIHRoZSBjZWxscyB3aXRoaW4gc2hvdWxkIHdyYXAgb3Igbm90LlxuQG1peGluIHh5LWdyaWQoXG4gICRkaXJlY3Rpb246IGhvcml6b250YWwsXG4gICR3cmFwOiB0cnVlXG4pIHtcbiAgJGRpcmVjdGlvbjogaWYoJGRpcmVjdGlvbiA9PSAnaG9yaXpvbnRhbCcsIHJvdywgY29sdW1uKTtcbiAgJHdyYXA6IGlmKCR3cmFwLCB3cmFwLCBub3dyYXApO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogJGRpcmVjdGlvbiAkd3JhcDtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIFJlbW92ZXMgdGhlIHVuaXQgKGUuZy4gcHgsIGVtLCByZW0pIGZyb20gYSB2YWx1ZSwgcmV0dXJuaW5nIHRoZSBudW1iZXIgb25seS5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbnVtIC0gTnVtYmVyIHRvIHN0cmlwIHVuaXQgZnJvbS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBzYW1lIG51bWJlciwgc2FucyB1bml0LlxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bSkge1xuICBAcmV0dXJuICRudW0gLyAoJG51bSAqIDAgKyAxKTtcbn1cblxuLy8vIENvbnZlcnRzIG9uZSBvciBtb3JlIHBpeGVsIHZhbHVlcyBpbnRvIG1hdGNoaW5nIHJlbSB2YWx1ZXMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkdmFsdWVzIC0gT25lIG9yIG1vcmUgdmFsdWVzIHRvIGNvbnZlcnQuIEJlIHN1cmUgdG8gc2VwYXJhdGUgdGhlbSB3aXRoIHNwYWNlcyBhbmQgbm90IGNvbW1hcy4gSWYgeW91IG5lZWQgdG8gY29udmVydCBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0LCB3cmFwIHRoZSBsaXN0IGluIHBhcmVudGhlc2VzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBUaGUgYmFzZSB2YWx1ZSB0byB1c2Ugd2hlbiBjYWxjdWxhdGluZyB0aGUgYHJlbWAuIElmIHlvdSdyZSB1c2luZyBGb3VuZGF0aW9uIG91dCBvZiB0aGUgYm94LCB0aGlzIGlzIDE2cHguIElmIHRoaXMgcGFyYW1ldGVyIGlzIGBudWxsYCwgdGhlIGZ1bmN0aW9uIHdpbGwgcmVmZXJlbmNlIHRoZSBgJGdsb2JhbC1mb250LXNpemVgIHZhcmlhYmxlIGFzIHRoZSBiYXNlLlxuLy8vXG4vLy8gQHJldHVybnMge0xpc3R9IEEgbGlzdCBvZiBjb252ZXJ0ZWQgdmFsdWVzLlxuQGZ1bmN0aW9uIHJlbS1jYWxjKCR2YWx1ZXMsICRiYXNlOiBudWxsKSB7XG4gICRyZW0tdmFsdWVzOiAoKTtcbiAgJGNvdW50OiBsZW5ndGgoJHZhbHVlcyk7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIC8vIFRoaXMgaXMgYmVjYXVzZSAxMDAlIGZvbnQgc2l6ZSA9IDE2cHggaW4gbW9zdCBhbGwgYnJvd3NlcnNcbiAgQGlmIHVuaXQoJGJhc2UpID09ICclJyB7XG4gICAgJGJhc2U6ICgkYmFzZSAvIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIC8vIFVzaW5nIHJlbSBhcyBiYXNlIGFsbG93cyBjb3JyZWN0IHNjYWxpbmdcbiAgQGlmIHVuaXQoJGJhc2UpID09ICdyZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmICRjb3VudCA9PSAxIHtcbiAgICBAcmV0dXJuIC16Zi10by1yZW0oJHZhbHVlcywgJGJhc2UpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY291bnQge1xuICAgICRyZW0tdmFsdWVzOiBhcHBlbmQoJHJlbS12YWx1ZXMsIC16Zi10by1yZW0obnRoKCR2YWx1ZXMsICRpKSwgJGJhc2UpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHJlbS12YWx1ZXM7XG59XG5cbi8vIENvbnZlcnRzIGEgdW5pdGxlc3MsIHBpeGVsLCBvciByZW0gdmFsdWUgdG8gZW0sIGZvciB1c2UgaW4gYnJlYWtwb2ludHMuXG5AZnVuY3Rpb24gLXpmLWJwLXRvLWVtKCR2YWx1ZSkge1xuICAvLyBQaXhlbCBhbmQgdW5pdGxlc3MgdmFsdWVzIGFyZSBjb252ZXJ0ZWQgdG8gcmVtc1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdweCcgb3IgdW5pdGxlc3MoJHZhbHVlKSB7XG4gICAgJHZhbHVlOiByZW0tY2FsYygkdmFsdWUsICRiYXNlOiAxNnB4KTtcbiAgfVxuXG4gIC8vIFRoZW4gdGhlIHZhbHVlIGlzIGNvbnZlcnRlZCB0byBlbXNcbiAgQHJldHVybiBzdHJpcC11bml0KCR2YWx1ZSkgKiAxZW07XG59XG5cbi8vLyBDb252ZXJ0cyBhIHBpeGVsIHZhbHVlIHRvIG1hdGNoaW5nIHJlbSB2YWx1ZS4gKkFueSogdmFsdWUgcGFzc2VkLCByZWdhcmRsZXNzIG9mIHVuaXQsIGlzIGFzc3VtZWQgdG8gYmUgYSBwaXhlbCB2YWx1ZS4gQnkgZGVmYXVsdCwgdGhlIGJhc2UgcGl4ZWwgdmFsdWUgdXNlZCB0byBjYWxjdWxhdGUgdGhlIHJlbSB2YWx1ZSBpcyB0YWtlbiBmcm9tIHRoZSBgJGdsb2JhbC1mb250LXNpemVgIHZhcmlhYmxlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFBpeGVsIHZhbHVlIHRvIGNvbnZlcnQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIEJhc2UgZm9yIHBpeGVsIGNvbnZlcnNpb24uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBBIG51bWJlciBpbiByZW1zLCBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSBnaXZlbiB2YWx1ZSBhbmQgdGhlIGJhc2UgcGl4ZWwgdmFsdWUuIHJlbSB2YWx1ZXMgYXJlIHBhc3NlZCB0aHJvdWdoIGFzIGlzLlxuQGZ1bmN0aW9uIC16Zi10by1yZW0oJHZhbHVlLCAkYmFzZTogbnVsbCkge1xuICAvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSAhPSAnbnVtYmVyJyB7XG4gICAgQHdhcm4gaW5zcGVjdCgkdmFsdWUpICsgJyB3YXMgcGFzc2VkIHRvIHJlbS1jYWxjKCksIHdoaWNoIGlzIG5vdCBhIG51bWJlci4nO1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG5cbiAgLy8gVHJhbnNmb3JtIGVtIGludG8gcmVtIGlmIHNvbWVvbmUgaGFuZHMgb3ZlciAnZW0nc1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogMXJlbTtcbiAgfVxuXG4gIC8vIENhbGN1bGF0ZSByZW0gaWYgdW5pdHMgZm9yICR2YWx1ZSBpcyBub3QgcmVtIG9yIGVtXG4gIEBpZiB1bml0KCR2YWx1ZSkgIT0gJ3JlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZSkgKiAxcmVtO1xuICB9XG5cbiAgLy8gVHVybiAwcmVtIGludG8gMFxuICBAaWYgJHZhbHVlID09IDByZW0ge1xuICAgICR2YWx1ZTogMDtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCwgcGVyY2VudGFnZSwgcmVtIG9yIGVtIHZhbHVlIHRvIGEgdW5pdGxlc3MgdmFsdWUgYmFzZWQgb24gYSBnaXZlbiBmb250IHNpemUuIElkZWFsIGZvciB3b3JraW5nIG91dCB1bml0bGVzcyBsaW5lIGhlaWdodHMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gY29udmVydCB0byBhIHVuaXRsZXNzIGxpbmUgaGVpZ2h0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIC0gVGhlIGZvbnQgc2l6ZSB0byB1c2UgdG8gd29yayBvdXQgdGhlIGxpbmUgaGVpZ2h0IC0gZGVmYXVsdHMgdG8gJGdsb2JhbC1mb250LXNpemVcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gLSBVbml0bGVzcyBudW1iZXJcbkBmdW5jdGlvbiB1bml0bGVzcy1jYWxjKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcblxuICAvLyBJZiBubyBiYXNlIGlzIGRlZmluZWQsIGRlZmVyIHRvIHRoZSBnbG9iYWwgZm9udCBzaXplXG4gIEBpZiAkYmFzZSA9PSBudWxsIHtcbiAgICAkYmFzZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBGaXJzdCwgbGV0cyBjb252ZXJ0IG91ciAkYmFzZSB0byBwaXhlbHNcblxuICAvLyBJZiB0aGUgYmFzZSBmb250IHNpemUgaXMgYSAlLCB0aGVuIG11bHRpcGx5IGl0IGJ5IDE2cHhcbiAgQGlmIHVuaXQoJGJhc2UpID09ICclJyB7XG4gICAgJGJhc2U6ICgkYmFzZSAvIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgLy8gTm93IGxldCdzIGNvbnZlcnQgb3VyIHZhbHVlIHRvIHBpeGVscyB0b29cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnJScge1xuICAgICR2YWx1ZTogKCR2YWx1ZSAvIDEwMCUpICogJGJhc2U7XG4gIH1cblxuICBAaWYgdW5pdCgkdmFsdWUpID09ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqICRiYXNlO1xuICB9XG5cbiAgLy8gJ3B4J1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdweCcge1xuICAgIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZSk7XG4gIH1cblxuICAvLyBhc3N1bWUgdGhhdCBsaW5lLWhlaWdodHMgZ3JlYXRlciB0aGFuIDEwIGFyZSBtZWFudCB0byBiZSBhYnNvbHV0ZSBpbiAncHgnXG4gIEBpZiB1bml0bGVzcygkdmFsdWUpIGFuZCAoJHZhbHVlID4gMTApIHtcbiAgICBAcmV0dXJuICR2YWx1ZSAvIHN0cmlwLXVuaXQoJGJhc2UpO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVha3BvaW50c1xuLy8vL1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzLlxuLy8vIEB0eXBlIE1hcFxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsYXJnZXN0IG5hbWVkIGJyZWFrcG9pbnQgaW4gd2hpY2ggdG8gaW5jbHVkZSBwcmludCBhcyBhIG1lZGlhIHR5cGVcbi8vLyBAdHlwZSBLZXl3b3JkXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2UgIWRlZmF1bHQ7XG5cbiQtemYtemVyby1icmVha3BvaW50OiBzbWFsbCAhZGVmYXVsdDtcblxuJC16Zi1icmVha3BvaW50cy1rZXlzOiBtYXAtdG8tbGlzdCgkYnJlYWtwb2ludHMsICdrZXlzJyk7XG5cbkBpZiBudGgobWFwLXZhbHVlcygkYnJlYWtwb2ludHMpLCAxKSAhPSAwIHtcbiAgQGVycm9yICdUaGUgZmlyc3Qga2V5IGluIHRoZSAkYnJlYWtwb2ludHMgbWFwIG11c3QgaGF2ZSBhIHZhbHVlIG9mIFwiMFwiLic7XG59XG5AZWxzZSB7XG4gICQtemYtemVyby1icmVha3BvaW50OiBudGgobWFwLWtleXMoJGJyZWFrcG9pbnRzKSwgMSk7XG59XG5cbi8vLyBBbGwgb2YgdGhlIG5hbWVzIGluIHRoaXMgbGlzdCB3aWxsIGJlIG91dHB1dCBhcyBjbGFzc2VzIGluIHlvdXIgQ1NTLCBsaWtlIGAuc21hbGwtMTJgLCBgLm1lZGl1bS02YCwgYW5kIHNvIG9uLiBFYWNoIHZhbHVlIGluIHRoaXMgbGlzdCBtdXN0IGFsc28gYmUgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcC5cbi8vLyBAdHlwZSBMaXN0XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKSAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IHN0cmluZyBtYXRjaGluZyB0aGUgaW5wdXQgdmFsdWUuIFJlZmVyIHRvIHRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gc2VlIHdoYXQgdGhlIHBvc3NpYmxlIGlucHV0cyBhcmUuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsIFtzbWFsbF0gLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG5AZnVuY3Rpb24gYnJlYWtwb2ludCgkdmFsOiAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAvLyBTaXplIG9yIGtleXdvcmRcbiAgJGJwOiBudGgoJHZhbCwgMSk7XG4gIC8vIFZhbHVlIGZvciBtYXgtd2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnAtbWF4OiAwO1xuICAvLyBEaXJlY3Rpb24gb2YgbWVkaWEgcXVlcnkgKHVwLCBkb3duLCBvciBvbmx5KVxuICAkZGlyOiBpZihsZW5ndGgoJHZhbCkgPiAxLCBudGgoJHZhbCwgMiksIHVwKTtcbiAgLy8gRXZlbnR1YWwgb3V0cHV0XG4gICRzdHI6ICcnO1xuICAvLyBJcyBpdCBhIG5hbWVkIG1lZGlhIHF1ZXJ5P1xuICAkbmFtZWQ6IGZhbHNlO1xuXG4gIC8vIE9yaWVudGF0aW9uIG1lZGlhIHF1ZXJpZXMgaGF2ZSBhIHVuaXF1ZSBzeW50YXhcbiAgQGlmICRicCA9PSAnbGFuZHNjYXBlJyBvciAkYnAgPT0gJ3BvcnRyYWl0JyB7XG4gICAgQHJldHVybiAnKG9yaWVudGF0aW9uOiAjeyRicH0pJztcbiAgfVxuICBAZWxzZSBpZiAkYnAgPT0gJ3JldGluYScge1xuICAgIEByZXR1cm4gJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSknO1xuICB9XG5cbiAgLy8gVHJ5IHRvIHB1bGwgYSBuYW1lZCBicmVha3BvaW50IG91dCBvZiB0aGUgJGJyZWFrcG9pbnRzIG1hcFxuICBAaWYgdHlwZS1vZigkYnApID09ICdzdHJpbmcnIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkYnApIHtcbiAgICAgIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgICAgICRicC1tYXg6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICB9XG5cbiAgICAgICRicDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICAkbmFtZWQ6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRicDogMDtcbiAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IFwiI3skdmFsfVwiIGlzIG5vdCBkZWZpbmVkIGluIHlvdXIgJGJyZWFrcG9pbnRzIHNldHRpbmcuJztcbiAgICB9XG4gIH1cblxuICAvLyBDb252ZXJ0IGFueSBwaXhlbCwgcmVtLCBvciB1bml0bGVzcyB2YWx1ZSB0byBlbVxuICAkYnA6IC16Zi1icC10by1lbSgkYnApO1xuICAvLyBNYXggdmFsdWUgaXMgMC4ycHggdW5kZXIgdGhlIG5leHQgYnJlYWtwb2ludCAoMC4wMiAvIDE2ID0gMC4wMDEyNSkuXG4gIC8vIFVzZSBhIHByZWNpc2lvbiB1bmRlciAxcHggdG8gc3VwcG9ydCBicm93c2VyIHpvb20sIGJ1dCBub3QgdG8gbG93IHRvIGF2b2lkIHJvdW5kaW5nLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTEzMTNcbiAgQGlmICRicC1tYXgge1xuICAgICRicC1tYXg6IC16Zi1icC10by1lbSgkYnAtbWF4KSAtIC4wMDEyNTtcbiAgfVxuXG4gIC8vIENvbmRpdGlvbnMgdG8gc2tpcCBtZWRpYSBxdWVyeSBjcmVhdGlvblxuICAvLyAtIEl0J3MgYSBuYW1lZCBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIGRvd25cIiBvciBcIjAgdXBcIlxuICAvLyAtIEl0J3MgYSBudW1lcmljIGJyZWFrcG9pbnQgdGhhdCByZXNvbHZlZCB0byBcIjAgXCIgKyBhbnl0aGluZ1xuICBAaWYgJGJwID4gMGVtIG9yICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAvLyBgb25seWAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKSBhbmQgKG1heC13aWR0aDogbilgXG4gICAgQGlmICRkaXIgPT0gJ29ubHknIHtcbiAgICAgIC8vIE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBcIm9ubHlcIiByYW5nZVxuICAgICAgQGlmICRuYW1lZCA9PSB0cnVlIHtcbiAgICAgICAgLy8gT25seSB1c2UgXCJtaW4td2lkdGhcIiBpZiB0aGUgZmxvb3IgaXMgZ3JlYXRlciB0aGFuIDBcbiAgICAgICAgQGlmICRicCA+IDBlbSB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcblxuICAgICAgICAgIC8vIE9ubHkgYWRkIFwiYW5kXCIgdG8gdGhlIG1lZGlhIHF1ZXJ5IGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgICAgQGlmICRicC1tYXggIT0gbnVsbCB7XG4gICAgICAgICAgICAkc3RyOiAkc3RyICsgJyBhbmQgJztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBPbmx5IHVzZSBcIm1heC13aWR0aFwiIGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1heC13aWR0aDogI3skYnAtbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBgb25seWAgcmFuZ2UuJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgZG93bmAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWF4LXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkZGlyID09ICdkb3duJyB7XG4gICAgICAkbWF4OiBpZigkbmFtZWQsICRicC1tYXgsICRicCk7XG5cbiAgICAgIC8vIFNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb24gaWYgaW5wdXQgdmFsdWUgaXMgZXhhY3RseSBcIjAgZG93blwiLFxuICAgICAgLy8gdW5sZXNzIHRoZSBmdW5jdGlvbiB3YXMgY2FsbGVkIGFzIFwic21hbGwgZG93blwiLCBpbiB3aGljaCBjYXNlIGl0J3MganVzdCBcInNtYWxsIG9ubHlcIlxuICAgICAgQGlmICRuYW1lZCBvciAkYnAgPiAwZW0ge1xuICAgICAgICBAaWYgJG1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JG1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGB1cGAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkYnAgPiAwZW0ge1xuICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBXcmFwcyBhIG1lZGlhIHF1ZXJ5IGFyb3VuZCB0aGUgY29udGVudCB5b3UgcHV0IGluc2lkZSB0aGUgbWl4aW4uIFRoaXMgbWl4aW4gYWNjZXB0cyBhIG51bWJlciBvZiB2YWx1ZXM6XG4vLy8gIC0gSWYgYSBzdHJpbmcgaXMgcGFzc2VkLCB0aGUgbWl4aW4gd2lsbCBsb29rIGZvciBpdCBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLCBhbmQgdXNlIGEgbWVkaWEgcXVlcnkgdGhlcmUuXG4vLy8gIC0gSWYgYSBwaXhlbCB2YWx1ZSBpcyBwYXNzZWQsIGl0IHdpbGwgYmUgY29udmVydGVkIHRvIGFuIGVtIHZhbHVlIHVzaW5nIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgYXMgdGhlIGJhc2UuXG4vLy8gIC0gSWYgYSByZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdW5pdCB3aWxsIGJlIGNoYW5nZWQgdG8gZW0uXG4vLy8gIC0gSWYgYW4gZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdmFsdWUgd2lsbCBiZSB1c2VkIGFzLWlzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuLy8vXG4vLy8gQG91dHB1dCBJZiB0aGUgYnJlYWtwb2ludCBpcyBcIjBweCBhbmQgbGFyZ2VyXCIsIG91dHB1dHMgdGhlIGNvbnRlbnQgYXMtaXMuIE90aGVyd2lzZSwgb3V0cHV0cyB0aGUgY29udGVudCB3cmFwcGVkIGluIGEgbWVkaWEgcXVlcnkuXG5AbWl4aW4gYnJlYWtwb2ludCgkdmFsdWUpIHtcbiAgJHN0cjogYnJlYWtwb2ludCgkdmFsdWUpO1xuICAkYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHZhbHVlKTtcbiAgJHBicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkcHJpbnQtYnJlYWtwb2ludCk7XG5cbiAgJG9sZC16Zi1zaXplOiBudWxsO1xuXG4gIC8vIE1ha2UgYnJlYWtwb2ludCBzaXplIGF2YWlsYWJsZSBhcyBhIHZhcmlhYmxlXG4gIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSB7XG4gICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gIH1cbiAgJC16Zi1zaXplOiBudGgoJHZhbHVlLCAxKSAhZ2xvYmFsOyAvLyBnZXQgdGhlIGZpcnN0IHZhbHVlIHRvIGFjY291bnQgZm9yIGBvbmx5YCBhbmQgYGRvd25gIGtleXdvcmRzXG5cbiAgLy8gSWYgJHN0ciBpcyBzdGlsbCBhbiBlbXB0eSBzdHJpbmcsIG5vIG1lZGlhIHF1ZXJ5IGlzIG5lZWRlZFxuICBAaWYgJHN0ciA9PSAnJyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAvLyBPdGhlcndpc2UsIHdyYXAgdGhlIGNvbnRlbnQgaW4gYSBtZWRpYSBxdWVyeVxuICBAZWxzZSB7XG4gICAgLy8gRm9yIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAkcHJpbnQtYnJlYWtwb2ludCwgYWRkIHByaW50IHRvIHRoZSBtZWRpYSB0eXBlc1xuICAgIEBpZiAkYnAgIT0gbnVsbCBhbmQgJGJwIDw9ICRwYnAge1xuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAkLXpmLXNpemU6ICRvbGQtemYtc2l6ZSAhZ2xvYmFsO1xufVxuXG4vLy8gQ29udmVydHMgdGhlIGJyZWFrcG9pbnRzIG1hcCB0byBhIFVSTC1lbmNvZGVkIHN0cmluZywgbGlrZSB0aGlzOiBga2V5MT12YWx1ZTEma2V5Mj12YWx1ZTJgLiBUaGUgdmFsdWUgaXMgdGhlbiBkcm9wcGVkIGludG8gdGhlIENTUyBmb3IgYSBzcGVjaWFsIGA8bWV0YT5gIHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0LiBUaGlzIGlzIGhvdyB3ZSB0cmFuc2ZlciB2YWx1ZXMgZnJvbSBTYXNzIHRvIEphdmFTY3JpcHQsIHNvIHRoZXkgY2FuIGJlIGRlZmluZWQgaW4gb25lIHBsYWNlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gY29udmVydC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IEEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG1hcCdzIGNvbnRlbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC1zZXJpYWxpemUoJG1hcCkge1xuICAkc3RyOiAnJztcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICRzdHI6ICRzdHIgKyAka2V5ICsgJz0nICsgLXpmLWJwLXRvLWVtKCR2YWx1ZSkgKyAnJic7XG4gIH1cbiAgJHN0cjogc3RyLXNsaWNlKCRzdHIsIDEsIC0yKTtcblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IGtleSBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSB2YWx1ZSBmb3IgdGhlIGtleSBhZnRlciBgJGtleWAsIGlmIGAka2V5YCB3YXMgZm91bmQuIElmIGAka2V5YCB3YXMgbm90IGZvdW5kLCBvciBgJGtleWAgd2FzIHRoZSBsYXN0IHZhbHVlIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dCgkbWFwLCAka2V5KSB7XG5cbiAgLy8gU3RvcmUgdGhlIGtleXMgb2YgdGhlIG1hcCBhcyBhIGxpc3RcbiAgJHZhbHVlczogbWFwLWtleXMoJG1hcCk7XG5cbiAgJGk6IDA7XG5cbiAgLy8gSWYgdGhlIEtleSBFeGlzdHMsIEdldCB0aGUgaW5kZXggb2YgdGhlIGtleSB3aXRoaW4gdGhlIG1hcCBhbmQgYWRkIDEgdG8gaXQgZm9yIHRoZSBuZXh0IGJyZWFrcG9pbnQgaW4gdGhlIG1hcFxuICBAaWYgKG1hcC1oYXMta2V5KCRtYXAsICRrZXkpKSB7XG4gICAgJGk6IGluZGV4KCR2YWx1ZXMsICRrZXkpICsgMTtcbiAgfVxuXG4gIC8vIElmIHRoZSBrZXkgZG9lc24ndCBleGlzdCwgb3IgaXQncyB0aGUgbGFzdCBrZXkgaW4gdGhlIG1hcCwgcmV0dXJuIG51bGxcbiAgQGlmICgkaSA+IGxlbmd0aCgkbWFwKSBvciAkaSA9PSAwKSB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgcmV0dXJuIHRoZSB2YWx1ZVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsIG50aCgkdmFsdWVzLCAkaSkpO1xuICB9XG5cbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGtleSAtIEtleSB0byB1c2UgYXMgbGFzdCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJGtleSkge1xuICAkbGlzdDogKCk7XG4gICRmb3VuZF9rZXk6IGZhbHNlO1xuXG4gIEBlYWNoICRuYW1lIGluICQtemYtYnJlYWtwb2ludHMta2V5cyB7XG4gICAgQGlmICgkbmFtZSA9PSAka2V5KSB7XG4gICAgICAkZm91bmRfa2V5OiB0cnVlO1xuICAgIH1cbiAgICBAaWYgbm90ICRmb3VuZF9rZXkge1xuICAgICAgJGxpc3Q6IGFwcGVuZCgkbGlzdCwgJG5hbWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRsaXN0O1xufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCAtIGEgbmFtZWQgb3Igbm9uLW5hbWVkIGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAkbGFzdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQ7XG4gICRmb3VuZDogZmFsc2U7XG5cbiAgJHZhbHVlOiB1bml0bGVzcy1jYWxjKCRicmVha3BvaW50LCAxcHgpO1xuICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgQGlmIHVuaXRsZXNzLWNhbGMoJHZhbCkgPiAkdmFsdWUge1xuICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJGxhc3Q6ICRrZXk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbGFzdDtcbn1cblxuLy8vIEdldCBhIHZhbHVlIGZvciBhIGJyZWFrcG9pbnQgZnJvbSBhIHJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXQgcmVnYXJkbGVzcyBvZiBgJHZhbHVlYC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGhhcyB0aGUga2V5IGAkdmFsdWVgLCB0aGUgZXhhY3QgYnJlYWtwb2ludCB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGRvZXMgKm5vdCogaGF2ZSB0aGUgYnJlYWtwb2ludCwgdGhlIHZhbHVlIG1hdGNoaW5nIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGluIHRoZSBjb25maWcgbWFwIGlzIHJldHVybmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gUmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtNaXhlZH0gVGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZS5cbkBmdW5jdGlvbiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkdmFsdWUpIHtcbiAgLy8gSWYgdGhlIGdpdmVuIG1hcCBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0XG4gIEBpZiB0eXBlLW9mKCRtYXApID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICRtYXA7XG4gIH1cblxuXG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGdsb2JhbGx5XG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICAgICR2YWx1ZTogLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkdmFsdWUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBpbiB0aGUgbG9jYWwgY29uZmlnIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkbWFwLCAkdmFsdWUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJHZhbHVlKTtcbiAgfVxuICAvLyBPdGhlcndpc2UsIGZpbmQgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgYW5kIHJldHVybiB0aGF0IHZhbHVlXG4gIEBlbHNlIHtcbiAgICAkYW5jaG9yOiBudWxsO1xuICAgICRmb3VuZDogZmFsc2U7XG5cbiAgICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLCAka2V5KSB7XG4gICAgICAgICAgJGFuY2hvcjogJGtleTtcbiAgICAgICAgfVxuICAgICAgICBAaWYgJGtleSA9PSAkdmFsdWUge1xuICAgICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkYW5jaG9yKTtcbiAgfVxufVxuXG4kc21hbGwtdXA6ICcnO1xuJHNtYWxsLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBzbWFsbCkge1xuICAkc21hbGwtdXA6IHNjcmVlbjtcbiAgJHNtYWxsLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHNtYWxsIG9ubHkpfScpO1xufVxuXG4kbWVkaXVtLXVwOiAnJztcbiRtZWRpdW0tb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIG1lZGl1bSkge1xuICAkbWVkaXVtLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfScpO1xuICAkbWVkaXVtLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBvbmx5KX0nKTtcbn1cblxuJGxhcmdlLXVwOiAnJztcbiRsYXJnZS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbGFyZ2UpIHtcbiAgJGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSl9Jyk7XG4gICRsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSBvbmx5KX0nKTtcbn1cblxuJHhsYXJnZS11cDogJyc7XG4keGxhcmdlLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4bGFyZ2UpIHtcbiAgJHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlKX0nKTtcbiAgJHhsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2Ugb25seSl9Jyk7XG59XG5cbiR4eGxhcmdlLXVwOiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeHhsYXJnZSkge1xuICAkeHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeHhsYXJnZSl9Jyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDYWxjdWxhdGUgdGhlIHBlcmNlbnRhZ2Ugc2l6ZSBvZiBhIGNlbGwuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkc2l6ZSBbJGdyaWQtY29sdW1uc10gLSBTaXplIHRvIG1ha2UgdGhlIGNlbGwuIFlvdSBjYW4gcGFzcyBhIHZhbHVlIGluIG11bHRpcGxlIGZvcm1hdHMsIHN1Y2ggYXMgYDZgLCBgNTAlYCwgYDEgb2YgMmAgb3IgYDEvM2AuXG5AZnVuY3Rpb24geHktY2VsbC1zaXplKFxuICAkc2l6ZTogJGdyaWQtY29sdW1uc1xuKSB7XG4gIC8vIFBhcnNpbmcgcGVyY2VudHMsIGRlY2ltYWxzLCBuIG9mIG4gYW5kIG51bWJlciBjb3VudHNcbiAgQGlmIHR5cGUtb2YoJHNpemUpID09ICdudW1iZXInIHtcbiAgICBAaWYgdW5pdCgkc2l6ZSkgPT0gJyUnIHtcbiAgICAgICRzaXplOiAkc2l6ZTtcbiAgICB9XG4gICAgQGVsc2UgaWYgJHNpemUgPCAxIHtcbiAgICAgICRzaXplOiBwZXJjZW50YWdlKCRzaXplKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHNpemU6IHBlcmNlbnRhZ2UoJHNpemUgLyAkZ3JpZC1jb2x1bW5zKTtcbiAgICB9XG4gIH1cblxuICAvLyBQYXJzaW5nIFwibiBvZiBuXCIgb3IgXCJuL25cIiBleHByZXNzaW9uc1xuICBAZWxzZSBpZiB0eXBlLW9mKCRzaXplKSA9PSAnbGlzdCcge1xuICAgIEBpZiBsZW5ndGgoJHNpemUpICE9IDMge1xuICAgICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIHh5LWNlbGwtc2l6ZSgpLiBVc2UgdGhlIGZvcm1hdCBcIm4gb2YgblwiIG9yIFwibi9uXCIuJztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHNpemU6IHBlcmNlbnRhZ2UobnRoKCRzaXplLCAxKSAvIG50aCgkc2l6ZSwgMykpO1xuICAgIH1cbiAgfVxuICAvLyBBbnl0aGluZyBlbHNlIGlzIGluY29ycmVjdFxuICBAZWxzZSB7XG4gICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIHh5LWNlbGwtc2l6ZSgpLiBVc2UgYSBudW1iZXIsIGRlY2ltYWwsIHBlcmNlbnRhZ2UsIG9yIFwibiBvZiBuXCIgLyBcIm4vblwiLic7XG4gIH1cblxuICBAcmV0dXJuICRzaXplO1xufVxuXG4vLy8gU2V0cyBiYXNlIGZsZXggcHJvcGVydGllcyBmb3IgY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQWNjZXB0cyBgZnVsbGAsIGBhdXRvYCwgYHNocmlua2Agb3IgYGdyb3dgLlxuQG1peGluIHh5LWNlbGwtYmFzZSgkc2l6ZTogZnVsbCkge1xuICBAaWYoJHNpemUgPT0gJ2Z1bGwnKSB7XG4gICAgLy8gVGhpcyBpcyB0aGUgYmFzZSBzdHlsZSwgYWxsIG90aGVycyBpbmhlcml0IGZyb20gaXRcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBtaW4taGVpZ2h0OiAwcHg7XG4gICAgbWluLXdpZHRoOiAwcHg7XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdhdXRvJykge1xuICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdzaHJpbmsnKSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdncm93Jykge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICB9XG59XG5cbi8vLyBSZXNldHMgYSBjZWxscyB3aWR0aCAob3IgaGVpZ2h0IGlmIHZlcnRpY2FsIGlzIHRydWUpIGFzIHdlbGwgYXMgc3RyaXBzIGl0cyBndXR0ZXJzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwtcmVzZXQoJHZlcnRpY2FsOiB0cnVlKSB7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCB3aWR0aCwgaGVpZ2h0KTtcbiAgI3skZGlyZWN0aW9ufTogYXV0bztcbiAgbWF4LSN7JGRpcmVjdGlvbn06IG5vbmU7XG59XG5cbi8vIFNldHMgb3VyIGNlbGwgd2lkdGhzIG9yIGhlaWdodHMgZGVwZW5kaW5nIG9uIGd1dHRlciB0eXBlLlxuQG1peGluIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsICRtYXJnaW4tZ3V0dGVyLCAkdmVydGljYWwpIHtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIGhlaWdodCwgd2lkdGgpO1xuICBAaWYoJHNpemUgPT0gJ2Z1bGwnKSB7XG4gICAgJHZhbDogaWYoJG1hcmdpbi1ndXR0ZXIgPT0gMCwgMTAwJSwgY2FsYygxMDAlIC0gI3tyZW0tY2FsYygkbWFyZ2luLWd1dHRlcil9KSk7XG4gICAgI3skZGlyZWN0aW9ufTogJHZhbDtcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ2F1dG8nKSB7XG4gICAgI3skZGlyZWN0aW9ufTogYXV0bztcbiAgICAkdmFsOiBpZigkbWFyZ2luLWd1dHRlciA9PSAwLCAxMDAlLCBjYWxjKDEwMCUgLSAje3JlbS1jYWxjKCRtYXJnaW4tZ3V0dGVyKX0pKTtcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ3NocmluaycpIHtcbiAgICAjeyRkaXJlY3Rpb259OiBhdXRvO1xuICB9XG4gIEBlbHNlIHtcbiAgICAkdmFsOiBpZigkbWFyZ2luLWd1dHRlciA9PSAwLCAje3h5LWNlbGwtc2l6ZSgkc2l6ZSl9LCBjYWxjKCN7eHktY2VsbC1zaXplKCRzaXplKX0gLSAje3JlbS1jYWxjKCRtYXJnaW4tZ3V0dGVyKX0pKTtcbiAgICAjeyRkaXJlY3Rpb259OiAkdmFsO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgY2VsbCBmb3IgeW91ciBncmlkLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBDYW4gYmUgYGZ1bGxgIChkZWZhdWx0KSBmb3IgMTAwJSB3aWR0aCwgYGF1dG9gIHRvIHVzZSB1cCBhdmFpbGFibGUgc3BhY2UgYW5kIGBzaHJpbmtgIHRvIHVzZSB1cCBvbmx5IHJlcXVpcmVkIHNwYWNlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gb3V0cHV0IGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW3JpZ2h0IGxlZnRdIC0gVGhlIHBvc2l0aW9uIHRvIGFwcGx5IGd1dHRlcnMgdG8uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktY2VsbChcbiAgJHNpemU6IGZ1bGwsXG4gICRndXR0ZXItb3V0cHV0OiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiByaWdodCBsZWZ0LFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRicC1pcy1mYWxsYmFjazogZmFsc2U7XG5cbiAgQGlmKCRicmVha3BvaW50ID09IG51bGwpIHtcbiAgICAvLyBJZiBgJGJwLXNpemVgIGlzIGF2YWlsYWJsZSB0aGVuIHVzZSB0aGlzLCBvdGhlcndpc2UgcmV2ZXJ0IHRvIHRoZSBzbWFsbGVzdCBicC5cbiAgICBAaWYodmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSBhbmQgdHlwZS1vZigkLXpmLXNpemUpICE9ICdudW1iZXInKSBhbmQgJC16Zi1zaXplICE9IG51bGwge1xuICAgICAgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJGJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50O1xuICAgICAgJGJwLWlzLWZhbGxiYWNrOiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIC8vIEdldCB0aGUgZ3V0dGVyIGZvciB0aGUgZ2l2ZW4gYnJlYWtwb2ludC92YWx1ZS5cbiAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgaXMgYSBmYWxsYmFjaywgdXNlIGEgZmFsbGJhY2sgZ3V0dGVyIGFzIHdlbGxcbiAgQGlmICgkYnAtaXMtZmFsbGJhY2sgPT0gdHJ1ZSBhbmQgJGd1dHRlciA9PSBudWxsKSB7XG4gICAgJGd1dHRlcjogMDtcbiAgfVxuXG4gIEBpZigkZ3V0dGVyICE9IG51bGwpIHtcbiAgICAvLyBCYXNlIGZsZXggcHJvcGVydGllc1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZSgkc2l6ZSk7XG5cbiAgICBAaWYoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG4gICAgICBAaW5jbHVkZSAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAkZ3V0dGVyLCAkdmVydGljYWwpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAwLCAkdmVydGljYWwpO1xuICAgIH1cblxuICAgIEBpZiAkZ3V0dGVyLW91dHB1dCB7XG4gICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXIsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbik7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAneHktY2VsbDogbm8gZ3V0dGVycyB3ZXJlIGZvdW5kIGluIGAkZ3V0dGVyc2AgZm9yIFwiJGJyZWFrcG9pbnQ6ICN7JGJyZWFrcG9pbnR9XCIsIGNlbGwgd2FzIG5vdCBnZW5lcmF0ZWRgJ1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc2luZ2xlIGJyZWFrcG9pbnQgc2l6ZWQgZ3JpZC4gVXNlZCB0byBnZW5lcmF0ZSBvdXIgZ3JpZCBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBDYW4gYmUgYGZ1bGxgIChkZWZhdWx0KSBmb3IgMTAwJSB3aWR0aCwgYGF1dG9gIHRvIHVzZSB1cCBhdmFpbGFibGUgc3BhY2UgYW5kIGBzaHJpbmtgIHRvIHVzZSB1cCBvbmx5IHJlcXVpcmVkIHNwYWNlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gb3V0cHV0IGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwtc3RhdGljKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlci1vdXRwdXQ6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRicmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG5cbiAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgJGd1dHRlci1wb3NpdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIHRvcCBib3R0b20sIGxlZnQgcmlnaHQpO1xuXG4gIEBpZigkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcbiAgICBAaW5jbHVkZSAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAkZ3V0dGVyLCAkdmVydGljYWwpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAwLCAkdmVydGljYWwpO1xuICB9XG5cbiAgLy8gSWYgd2Ugd2FudCB0byBvdXRwdXQgdGhlIGd1dHRlcnNcbiAgQGlmKCRndXR0ZXItb3V0cHV0KSB7XG4gICAgLy8gVE9ETzogRmlndXJlIG91dCBpZiB3ZSBuZWVkIHRvIHBhc3MgYnJlYWtwb2ludCBpbiBoZXJlIHRvby5cbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXIsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbik7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIFNpemVzIGNoaWxkIGVsZW1lbnRzIHNvIHRoYXQgYCRuYCBudW1iZXIgb2YgaXRlbXMgYXBwZWFyIG9uIGVhY2ggcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRuIC0gTnVtYmVyIG9mIGVsZW1lbnRzIHRvIGRpc3BsYXkgcGVyIHJvdy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFsnLmNlbGwnXSAtIFNlbGVjdG9yKHMpIHRvIHVzZSBmb3IgY2hpbGQgZWxlbWVudHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZ3V0dGVyLW91dHB1dCBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgYG1hcmdpbmAgb3IgYHBhZGRpbmdgLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbcmlnaHQgbGVmdF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBicmVha3BvaW50IHRvIHVzZSBmb3IgdGhlIGNlbGwgZ2VuZXJhdGlvbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktZ3JpZC1sYXlvdXQoXG4gICRuLFxuICAkc2VsZWN0b3I6ICcuY2VsbCcsXG4gICRndXR0ZXItb3V0cHV0OiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiByaWdodCBsZWZ0LFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRzaXplOiBwZXJjZW50YWdlKDEvJG4pO1xuXG4gICYgPiAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwoJHNpemUsICRndXR0ZXItb3V0cHV0LCAkZ3V0dGVycywgJGd1dHRlci10eXBlLCAkZ3V0dGVyLXBvc2l0aW9uLCAkYnJlYWtwb2ludCwgJHZlcnRpY2FsKTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ29sbGFwc2VzIHRoZSBncmlkIGEgY2VsbHMgd2l0aGluIGl0LlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbLmNlbGxdIC0gVGhlIGNoaWxkIGVsZW1lbnQgdG8gcmVtb3ZlIHRoZSBndXR0ZXIgZnJvbS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFRoZSB0eXBlIG9mIGd1dHRlciB0byByZW1vdmUuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbnMgdG8gcmVtb3ZlIGd1dHRlcnMgZnJvbS4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkbWluLWJyZWFrcG9pbnQgWyQtemYtemVyby1icmVha3BvaW50XSAtIE1pbmltdW0gYnJlYWtwb2ludCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgZm9yIHdoaWNoIHRvIGNvbGxhcHNlIHRoZSBndXR0ZXIuXG5AbWl4aW4geHktZ3JpZC1jb2xsYXBzZShcbiAgJHNlbGVjdG9yOiAnLmNlbGwnLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJG1pbi1icmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludFxuKSB7XG4gIC8vIEZpcnN0LCBsZXRzIG5lZ2F0ZSBhbnkgbWFyZ2lucyBvbiB0aGUgdG9wIGxldmVsXG4gIEBpZiAoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgfVxuXG4gICAgICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJGV4Y2x1ZGVkLWJwczogLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkbWluLWJyZWFrcG9pbnQpO1xuXG4gICAgLy8gT3V0cHV0IG5ldyB3aWR0aHMgdG8gbm90IGluY2x1ZGUgZ3V0dGVyc1xuICAgIEBlYWNoICRicCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZihzbC1jb250YWluKCRleGNsdWRlZC1icHMsICRicCkpIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICAgICAgPiAuI3skYnB9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGksICRndXR0ZXItb3V0cHV0OiBmYWxzZSwgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicCkge1xuICAgICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAgICAgICA+IC4jeyRicH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkaSwgJGd1dHRlci1vdXRwdXQ6IGZhbHNlLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgfVxuXG4gICAgICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgICBwYWRkaW5nLSN7JHZhbHVlfTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQvYm90dG9tIGJ5IGAkbmAgY29sdW1ucy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gU2l6ZSB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGB6Zi1jZWxsKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSBNYXAgb2YgZ3V0dGVycyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIGZvciByZXNwb25zaXZlIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHVzZS4gQ2FuIGJlIGBtYXJnaW5gIG9yIGBwYWRkaW5nYFxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRicmVha3BvaW50IFskLXpmLXplcm8tYnJlYWtwb2ludF0gLSBTaW5nbGUgdmFsdWUsIGJyZWFrcG9pbnQgbmFtZSwgb3IgbGlzdCBvZiBicmVha3BvaW50IG5hbWVzIHRvIHVzZSBmb3IgYCRndXR0ZXJzYC4gU2VlIGAtemYtYnJlYWtwb2ludC12YWx1ZSgpYC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIFNldHMgdGhlIGRpcmVjdGlvbiBvZiB0aGUgb2Zmc2V0LiBJZiBzZXQgdG8gdHJ1ZSB3aWxsIGFwcGx5IG1hcmdpbi10b3AgaW5zdGVhZC5cbkBtaXhpbiB4eS1jZWxsLW9mZnNldChcbiAkbixcbiAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gJGJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50LFxuICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkZGlyZWN0aW9uOiBpZigkdmVydGljYWwsICd0b3AnLCAkZ2xvYmFsLWxlZnQpO1xuXG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRicmVha3BvaW50LCAkZ3V0dGVycykge1xuICAgICRndXR0ZXI6IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpIC8gMjtcbiAgICAkZ3V0dGVyLW1hcmdpbjogaWYoJGd1dHRlci10eXBlID09ICdtYXJnaW4nLCAkZ3V0dGVyLCAwKTtcbiAgICAkc2l6ZTogaWYoJGd1dHRlci1tYXJnaW4gPT0gMCwgI3t4eS1jZWxsLXNpemUoJG4pfSwgY2FsYygje3h5LWNlbGwtc2l6ZSgkbil9ICsgI3skZ3V0dGVyLW1hcmdpbn0pKTtcblxuICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAjeyRzaXplfTtcbiAgfVxufVxuIiwiLy8vIE1vZGlmaWVzIGEgZ3JpZCB0byBnaXZlIGl0IFwiZnJhbWVcIiBiZWhhdmlvciAobm8gb3ZlcmZsb3csIG5vIHdyYXAsIHN0cmV0Y2ggYmVoYXZpb3IpXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gSXMgZ3JpZCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsLiBTaG91bGQgbWF0Y2ggZ3JpZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRuZXN0ZWQgW2ZhbHNlXSAtIElzIGdyaWQgbmVzdGVkIG9yIG5vdC4gSWYgbmVzdGVkIGlzIHRydWUgdGhpcyBzZXRzIHRoZSBmcmFtZSB0byAxMDAlIGhlaWdodCwgb3RoZXJ3aXNlIHdpbGwgYmUgMTAwdmguXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbbnVsbF0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaW5jbHVkZS1iYXNlIFt0cnVlXSAtIEluY2x1ZGUgdGhlIGJhc2Ugc3R5bGVzIHRoYXQgZG9uJ3QgdmFyeSBwZXIgYnJlYWtwb2ludC5cbkBtaXhpbiB4eS1ncmlkLWZyYW1lKFxuICAkdmVydGljYWw6IGZhbHNlLFxuICAkbmVzdGVkOiBmYWxzZSxcbiAgJGd1dHRlcnM6IG51bGwsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkaW5jbHVkZS1iYXNlOiB0cnVlXG4pIHtcblxuICBAaWYgJGluY2x1ZGUtYmFzZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIH1cblxuICBAaWYgJGJyZWFrcG9pbnQgPT0gbnVsbCBhbmQgdHlwZS1vZigkZ3V0dGVycykgPT0gJ21hcCcge1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKCR2ZXJ0aWNhbCwgJG5lc3RlZCwgJGd1dHRlcnMsICQtemYtc2l6ZSwgZmFsc2UpO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgLy8gR2V0IG91ciBndXR0ZXJzIGlmIGFwcGxpY2FibGVcbiAgICAkZ3V0dGVyOiAtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuXG4gICAgLy8gSWYgd2UgaGF2ZSBhIGd1dHRlciwgYWRkIGl0IHRvIHRoZSB3aWR0aC9oZWlnaHRcbiAgICBAaWYgJGd1dHRlciB7XG4gICAgICBAaWYgJHZlcnRpY2FsID09IHRydWUge1xuICAgICAgICAkdW5pdDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2aCk7XG4gICAgICAgICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXIpO1xuICAgICAgICBoZWlnaHQ6IGNhbGMoI3skdW5pdH0gKyAjeyRndXR0ZXJ9KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkdW5pdDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2dyk7XG4gICAgICAgICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXIpO1xuICAgICAgICB3aWR0aDogY2FsYygjeyR1bml0fSArICN7JGd1dHRlcn0pO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaWYgJHZlcnRpY2FsID09IHRydWUge1xuICAgICAgICBoZWlnaHQ6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdmgpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIHdpZHRoOiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZ3KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIE1vZGlmaWVzIGEgY2VsbCB0byBnaXZlIGl0IFwiYmxvY2tcIiBiZWhhdmlvciAob3ZlcmZsb3cgYXV0bywgaW5lcnRpYWwgc2Nyb2xsaW5nKVxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIElzIGdyaWQgdmVydGljYWwgb3IgaG9yaXpvbnRhbC4gU2hvdWxkIG1hdGNoIGdyaWQuXG5AbWl4aW4geHktY2VsbC1ibG9jayhcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRwcm9wZXJ0eTogaWYoJHZlcnRpY2FsID09IHRydWUsICdvdmVyZmxvdy15JywgJ292ZXJmbG93LXgnKTtcblxuICBAaWYgJHZlcnRpY2FsID09IHRydWUge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICB9IEBlbHNlIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG59XG5cbi8vLyBDb250YWluZXIgZm9yIGluc2lkZSBhIGdyaWQgZnJhbWUgY29udGFpbmluZyBtdWx0aXBsZSBibG9ja3MuIFR5cGljYWxseSB1c2VkXG4vLy8gYXMgYSBtb2RpZmllciBmb3IgYSBgLmNlbGxgIHRvIGFsbG93IHRoZSBjZWxsIHRvIHBhc3MgYWxvbmcgZmxleCBzaXppbmdcbi8vLyBjb25zdHJhaW50cyAvIGZyb20gcGFyZW50cyB0byBjaGlsZHJlbi5cbkBtaXhpbiB4eS1jZWxsLWJsb2NrLWNvbnRhaW5lcigpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWF4LWhlaWdodDogMTAwJTtcblxuICA+IC5ncmlkLXgge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvcigkc2l6ZSkge1xuICAkc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgLy8gTWF4IHZhbHVlIGlzIDAuMnB4IHVuZGVyIHRoZSBuZXh0IGJyZWFrcG9pbnQgKDAuMDIgLyAxNiA9IDAuMDAxMjUpLlxuICAvLyBVc2UgYSBwcmVjaXNpb24gdW5kZXIgMXB4IHRvIHN1cHBvcnQgYnJvd3NlciB6b29tLCBidXQgbm90IHRvIGxvdyB0byBhdm9pZCByb3VuZGluZy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzExMzEzXG4gICRzaXplOiAtemYtYnAtdG8tZW0oJHNpemUpIC0gLjAwMTI1O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCB3aXRoaW4gYSBjZXJ0YWluIGJyZWFrcG9pbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvci1vbmx5KCRzaXplKSB7XG4gICRsb3dlci1ib3VuZC1zaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkdXBwZXItYm91bmQtc2l6ZTogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJHNpemUpO1xuXG4gIC8vIG1vcmUgb2Z0ZW4gdGhhbiBub3QgdGhpcyB3aWxsIGJlIGNvcnJlY3QsIGp1c3Qgb25lIHRpbWUgcm91bmQgdGhlIGxvb3AgaXQgd29uJ3Qgc28gc2V0IGluIHNjb3BlIGhlcmVcbiAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpIC0gLjAwMTI1O1xuICAvLyB0ZXN0IGFjdHVhbCBsb3dlci1ib3VuZC1zaXplLCBpZiAwIHNldCBpdCB0byAwZW1cbiAgQGlmIHN0cmlwLXVuaXQoJGxvd2VyLWJvdW5kLXNpemUpID09IDAge1xuICAgICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKTtcbiAgfVxuXG4gIEBpZiAkdXBwZXItYm91bmQtc2l6ZSA9PSBudWxsIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgICR1cHBlci1ib3VuZDogLXpmLWJwLXRvLWVtKCR1cHBlci1ib3VuZC1zaXplKTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHVwcGVyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvcigkc2l6ZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3Itb25seSgkc2l6ZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIG9ubHkpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzIHtcbiAgLy8gQmFzaWMgaGlkaW5nIGNsYXNzZXNcbiAgLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pbnZpc2libGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAuaGlkZS1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBoaWRlLWZvcigkc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIC5zaG93LWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIHNob3ctZm9yKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGlkZS1mb3ItI3skc2l6ZX0tb25seSB7XG4gICAgICBAaW5jbHVkZSBoaWRlLWZvci1vbmx5KCRzaXplKTtcbiAgICB9XG5cbiAgICAuc2hvdy1mb3ItI3skc2l6ZX0tb25seSB7XG4gICAgICBAaW5jbHVkZSBzaG93LWZvci1vbmx5KCRzaXplKTtcbiAgICB9XG4gIH1cblxuICAvLyBTY3JlZW4gcmVhZGVyIHZpc2liaWxpdHkgY2xhc3Nlc1xuICAvLyBOZWVkIGEgXCJoaWRlLWZvci1zclwiIGNsYXNzPyBBZGQgYXJpYS1oaWRkZW49J3RydWUnIHRvIHRoZSBlbGVtZW50XG4gIC5zaG93LWZvci1zcixcbiAgLnNob3ctb24tZm9jdXMge1xuICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlO1xuICB9XG5cbiAgLy8gT25seSBkaXNwbGF5IHRoZSBlbGVtZW50IHdoZW4gaXQncyBmb2N1c2VkXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlLW9mZjtcbiAgICB9XG4gIH1cblxuICAvLyBMYW5kc2NhcGUgYW5kIHBvcnRyYWl0IHZpc2liaWxpdHlcbiAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYW5kc2NhcGUpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYW5kc2NhcGUpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDcmVhdGVzIGFuIGlubmVyIGJveC1zaGFkb3cgZm9yIG9ubHkgb25lIHNpZGVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpZGUgLSBTaWRlIHRoZSBzaGFkb3cgaXMgc3VwcG9zZWQgdG8gYXBwZWFyLiBDYW4gYmUgYHRvcGAsIGBsZWZ0YCwgYHJpZ2h0YCBvciBgYm90dG9tYC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgLSBXaWR0aCBmb3IgdGhlIHRhcmdldCBzaWRlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIG9mIHRoZSBzaGFkb3cuXG5AbWl4aW4gaW5uZXItc2lkZS1zaGFkb3coXG4gICRzaWRlOiBib3R0b20sXG4gICRzaXplOiAyMHB4LFxuICAkY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KVxuKSB7XG5cbiAgJGhlbHBlcjogcm91bmQoJHNpemUgKiAwLjY1KTtcblxuICBAaWYgKCRzaWRlID09IHRvcCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSBsZWZ0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IHJpZ2h0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgKC0xKSokaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gYm90dG9tKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAoLTEpKiRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIENTUyB0cmlhbmdsZSwgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIGRyb3Bkb3duIGFycm93cywgZHJvcGRvd24gcGlwcywgYW5kIG1vcmUuIFVzZSB0aGlzIG1peGluIGluc2lkZSBhIGAmOjpiZWZvcmVgIG9yIGAmOjphZnRlcmAgc2VsZWN0b3IsIHRvIGF0dGFjaCB0aGUgdHJpYW5nbGUgdG8gYW4gZXhpc3RpbmcgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdHJpYW5nbGUtc2l6ZSAtIFdpZHRoIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkdHJpYW5nbGUtY29sb3IgLSBDb2xvciBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHJpYW5nbGUtZGlyZWN0aW9uIC0gRGlyZWN0aW9uIHRoZSB0cmlhbmdsZSBwb2ludHMuIENhbiBiZSBgdXBgLCBgcmlnaHRgLCBgZG93bmAsIG9yIGBsZWZ0YC5cbkBtaXhpbiBjc3MtdHJpYW5nbGUoXG4gICR0cmlhbmdsZS1zaXplLFxuICAkdHJpYW5nbGUtY29sb3IsXG4gICR0cmlhbmdsZS1kaXJlY3Rpb25cbikge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcblxuICBib3JkZXI6IGluc2V0ICR0cmlhbmdsZS1zaXplO1xuXG4gIGNvbnRlbnQ6ICcnO1xuXG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBkb3duKSB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gdXApIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSByaWdodCkge1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgbWVudSBpY29uIHdpdGggYSBzZXQgd2lkdGgsIGhlaWdodCwgbnVtYmVyIG9mIGJhcnMsIGFuZCBjb2xvcnMuIFRoZSBtaXhpbiB1c2VzIHRoZSBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgdGhlIGJhcnMgdG8gZGV0ZXJtaW5lIHNwYWNpbmcuIDxkaXYgY2xhc3M9XCJkb2NzLWV4YW1wbGUtYnVyZ2VyXCI+PC9kaXY+XG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvci1ob3ZlciBbJGRhcmstZ3JheV0gLSBDb2xvciB0byB1c2Ugd2hlbiB0aGUgaWNvbiBpcyBob3ZlcmVkIG92ZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbMjBweF0gLSBXaWR0aCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGhlaWdodCBbMTZweF0gLSBIZWlnaHQgb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3ZWlnaHQgWzJweF0gLSBIZWlnaHQgb2YgaW5kaXZpZHVhbCBiYXJzIGluIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFycyBbM10gLSBOdW1iZXIgb2YgYmFycyBpbiB0aGUgaWNvbi5cbkBtaXhpbiBoYW1idXJnZXIoXG4gICRjb2xvcjogJGJsYWNrLFxuICAkY29sb3ItaG92ZXI6ICRkYXJrLWdyYXksXG4gICR3aWR0aDogMjBweCxcbiAgJGhlaWdodDogMTZweCxcbiAgJHdlaWdodDogMnB4LFxuICAkYmFyczogM1xuKSB7XG4gIC8vIGJveC1zaGFkb3cgQ1NTIG91dHB1dFxuICAkc2hhZG93OiAoKTtcbiAgJGhvdmVyLXNoYWRvdzogKCk7XG5cbiAgLy8gU3BhY2luZyBiZXR3ZWVuIGJhcnMgaXMgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgdG90YWwgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIGVhY2ggYmFyXG4gICRzcGFjaW5nOiAoJGhlaWdodCAtICgkd2VpZ2h0ICogJGJhcnMpKSAvICgkYmFycyAtIDEpO1xuXG4gIEBpZiB1bml0KCRzcGFjaW5nKSA9PSAncHgnIHtcbiAgICAkc3BhY2luZzogZmxvb3IoJHNwYWNpbmcpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAkc2hhZG93OiBhcHBlbmQoJHNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLCBjb21tYSk7XG4gIH1cblxuICAvLyBJY29uIGNvbnRhaW5lclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gSWNvbiBiYXJzXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICR3ZWlnaHQ7XG5cbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGlmICRjb2xvci1ob3ZlciB7XG4gICAgLy8gR2VuZXJhdGUgQ1NTXG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICAgJGhvdmVyLXNoYWRvdzogYXBwZW5kKCRob3Zlci1zaGFkb3csIDAgJG9mZnNldCAwICRjb2xvci1ob3ZlciwgY29tbWEpO1xuICAgIH1cblxuICAgICY6aG92ZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ob3ZlcjtcbiAgICAgIGJveC1zaGFkb3c6ICRob3Zlci1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGEgZG93bndhcmQtZmFjaW5nIHRyaWFuZ2xlIGFzIGEgYmFja2dyb3VuZCBpbWFnZSB0byBhbiBlbGVtZW50LiBUaGUgaW1hZ2UgaXMgZm9ybWF0dGVkIGFzIGFuIFNWRywgbWFraW5nIGl0IGVhc3kgdG8gY2hhbmdlIHRoZSBjb2xvci4gQmVjYXVzZSBJbnRlcm5ldCBFeHBsb3JlciBkb2Vzbid0IHN1cHBvcnQgZW5jb2RlZCBTVkdzIGFzIGJhY2tncm91bmQgaW1hZ2VzLCBhIFBORyBmYWxsYmFjayBpcyBhbHNvIGluY2x1ZGVkLlxuLy8vIFRoZXJlIGFyZSB0d28gUE5HIGZhbGxiYWNrczogYSBibGFjayB0cmlhbmdsZSBhbmQgYSB3aGl0ZSB0cmlhbmdsZS4gVGhlIG9uZSB1c2VkIGRlcGVuZHMgb24gdGhlIGxpZ2h0bmVzcyBvZiB0aGUgaW5wdXQgY29sb3IuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSB0cmlhbmdsZS5cbkBtaXhpbiBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRjb2xvcjogJGJsYWNrKSB7XG4gICRyZ2I6ICdyZ2IlMjgje3JvdW5kKHJlZCgkY29sb3IpKX0sICN7cm91bmQoZ3JlZW4oJGNvbG9yKSl9LCAje3JvdW5kKGJsdWUoJGNvbG9yKSl9JTI5JztcblxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6ICN7JHJnYn0nPjwvcG9seWdvbj48L3N2Zz5cIik7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDowXFwwKSB7XG4gICAgQGlmIGxpZ2h0bmVzcygkY29sb3IpIDwgNjAlIHtcbiAgICAgIC8vIFdoaXRlIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQmxhY2sgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFNQkpSRUZVZU5yRWxsc09oQ0FNUlZzekM5SWx6VTdLQ21WSFRKc29NV1lNVXRweXY5QmdidVhRQjVaU2RnQllZWTR5Y2dCaXZrOEtZRnNRTWZNaVRUQlA0bzNuVXpDS3pPYWJMSmJMeTIvZzMxZXZHa0FnaW5SNC9aZWdLSDVxWDNiSkNzY0EzdDB4M2tnTzV0UUZ5aGhGZjUweFJxRkxieU1VTkpRemd5akdTL3dnQ3B2S3FrUkJwdVdyRTRWOWQrMUU0ZFBVWHFJZzEwN1NRT0UvMkRSUXhNd1REeWdJSW5WREVUOVQzbENvai82ai9WQ21HalpPbDJsS3BaOEFBd0RRUDd6SWltREdGUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQXBwbGllcyB0aGUgbWljcm8gY2xlYXJmaXggaGFjayBwb3B1bGFyaXplZCBieSBOaWNvbGFzIEdhbGxhZ2hlci4gSW5jbHVkZSB0aGlzIG1peGluIG9uIGEgY29udGFpbmVyIGlmIGl0cyBjaGlsZHJlbiBhcmUgYWxsIGZsb2F0ZWQsIHRvIGdpdmUgdGhlIGNvbnRhaW5lciBhIHByb3BlciBoZWlnaHQuXG4vLy8gVGhlIGNsZWFyZml4IGlzIGF1Z21lbnRlZCB3aXRoIHNwZWNpZmljIHN0eWxlcyB0byBwcmV2ZW50IGJvcmRlcnMgaW4gZmxleGJveCBlbnZpcm9ubWVudHNcbi8vLyBAbGluayBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay8gTWljcm8gQ2xlYXJmaXggSGFja1xuLy8vIEBsaW5rIGh0dHA6Ly9kYW5pc2FkZXNpZ25lci5jb20vYmxvZy9mbGV4Ym94LWNsZWFyLWZpeC1wc2V1ZG8tZWxlbWVudHMvIEZsZXhib3ggZml4XG5AbWl4aW4gY2xlYXJmaXgge1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTtcbiAgICB9XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLy8vIEFkZHMgQ1NTIGZvciBhIFwicXVhbnRpdHkgcXVlcnlcIiBzZWxlY3RvciB0aGF0IGF1dG9tYXRpY2FsbHkgc2l6ZXMgZWxlbWVudHMgYmFzZWQgb24gaG93IG1hbnkgdGhlcmUgYXJlIGluc2lkZSBhIGNvbnRhaW5lci5cbi8vLyBAbGluayBodHRwOi8vYWxpc3RhcGFydC5jb20vYXJ0aWNsZS9xdWFudGl0eS1xdWVyaWVzLWZvci1jc3MgUXVhbnRpdHkgUXVlcmllcyBmb3IgQ1NTXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCAtIE1heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRldGVjdC4gVGhlIGhpZ2hlciB0aGlzIG51bWJlciBpcywgdGhlIG1vcmUgQ1NTIHRoYXQncyByZXF1aXJlZCB0byBjb3ZlciBlYWNoIG51bWJlciBvZiBpdGVtcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRlbGVtIFtsaV0gLSBUYWcgdG8gdXNlIGZvciBzaWJsaW5nIHNlbGVjdG9ycy5cbkBtaXhpbiBhdXRvLXdpZHRoKCRtYXgsICRlbGVtOiBsaSkge1xuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRtYXgge1xuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkLFxuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkIH4gI3skZWxlbX0ge1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMSAvICRpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgdGhlIGZvY3VzIHJpbmcgYXJvdW5kIGFuIGVsZW1lbnQgd2hlbiBhIG1vdXNlIGlucHV0IGlzIGRldGVjdGVkLlxuQG1peGluIGRpc2FibGUtbW91c2Utb3V0bGluZSB7XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAmIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbi8vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiwgYnV0IHN0aWxsIGFjY2Vzc2libGUgdG8ga2V5Ym9hcmRzIGFuZCBhc3Npc3RpdmUgZGV2aWNlcy5cbi8vLyBAbGluayBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5IEhpZGluZyBDb250ZW50IGZvciBBY2Nlc3NpYmlsaXR5XG4vLy8gQGxpbmsgaHR0cDovL2h1Z29naXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLDAsMCwwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLy8gUmV2ZXJzZXMgdGhlIENTUyBvdXRwdXQgY3JlYXRlZCBieSB0aGUgYGVsZW1lbnQtaW52aXNpYmxlKClgIG1peGluLlxuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlLW9mZiB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIHZlcnRpY2FsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEhvcml6b250YWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBob3Jpem9udGFsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi8vLyBBYnNvbHV0ZWx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGFic29sdXRlLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi8vLyBJdGVyYXRlcyB0aHJvdWdoIGJyZWFrcG9pbnRzIGRlZmluZWQgaW4gYCRicmVha3BvaW50LWNsYXNzZXNgIGFuZCBwcmludHMgdGhlIENTUyBpbnNpZGUgdGhlIG1peGluIGF0IGVhY2ggYnJlYWtwb2ludCdzIG1lZGlhIHF1ZXJ5LiBVc2UgdGhpcyB3aXRoIHRoZSBncmlkLCBvciBhbnkgb3RoZXIgY29tcG9uZW50IHRoYXQgaGFzIHJlc3BvbnNpdmUgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHNtYWxsIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIHNraXAgdGhlIGBzbWFsbGAgYnJlYWtwb2ludC4gVXNlIHRoaXMgd2l0aCBjb21wb25lbnRzIHRoYXQgZG9uJ3QgcHJlZml4IGNsYXNzZXMgd2l0aCBgc21hbGwtYCwgb25seSBgbWVkaXVtLWAgYW5kIHVwLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIGl0ZXJhdGUgb3ZlciBicmVha3BvaW50cyB3aXRob3V0IGRvaW5nIHRoZSBtZWRpYSBxdWVyeSBpdHNlbGYuIFVzZWZ1bCBmb3IgbW9yZSBjb21wbGV4IG1lZGlhIHF1ZXJ5IGdlbmVyYXRpb24gYXMgaW4gdGhlIG1hcmdpbiBncmlkLlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQoJHNtYWxsOiB0cnVlLCAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHM6IHRydWUpIHtcbiAgJGxpc3Q6ICRicmVha3BvaW50LWNsYXNzZXM7XG5cbiAgQGlmIG5vdCAkc21hbGwge1xuICAgICRsaXN0OiBzbC1yZW1vdmUoJGxpc3QsICQtemYtemVyby1icmVha3BvaW50KTtcbiAgfVxuXG4gIEBlYWNoICRuYW1lIGluICRsaXN0IHtcbiAgICAkb2xkLXpmLXNpemU6IG51bGw7XG4gICAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIHtcbiAgICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICAgIH1cbiAgICAkLXpmLXNpemU6ICRuYW1lICFnbG9iYWw7XG5cbiAgICBAaWYgJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHRoZSBgQGNvbnRlbnRgIHBhc3NlZCB0byB0aGUgbWl4aW4gd2l0aCBhIHZhbHVlIGAkLXpmLWJwLXZhbHVlYCByZWxhdGVkIHRvIGEgYnJlYWtwb2ludCwgZGVwZW5kaW5nIG9uIHRoZSBgJG5hbWVgIHBhcmFtZXRlcjpcbi8vLyAtIEZvciBhIHNpbmdsZSB2YWx1ZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoaXMgdmFsdWUuXG4vLy8gLSBGb3IgYSBicmVha3BvaW50IG5hbWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYC5cbi8vLyAtIEZvciBcImF1dG9cIiwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgIGFuZCBpcyBwYXNzZWQgdG8gYEBjb250ZW50YCwgd2hpY2ggaXMgbWFkZSByZXNwb25zaXZlIGZvciBlYWNoIGJyZWFrcG9pbnQgb2YgYCRtYXBgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRuYW1lIFthdXRvXSAtIFNpbmdsZSB2YWx1ZSwgYnJlYWtwb2ludCBuYW1lLCBvciBsaXN0IG9mIGJyZWFrcG9pbnQgbmFtZXMgdG8gdXNlLiBcImF1dG9cIiBieSBkZWZhdWx0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIE1hcCBvZiBicmVha3BvaW50cyBhbmQgdmFsdWVzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuXG5AbWl4aW4gLXpmLWJyZWFrcG9pbnQtdmFsdWUoXG4gICRuYW1lOiBhdXRvLFxuICAkbWFwOiBudWxsXG4pIHtcbiAgQGlmICRuYW1lID09IGF1dG8gYW5kIHR5cGUtb2YoJG1hcCkgPT0gJ21hcCcge1xuICAgIC8vIFwiYXV0b1wiXG4gICAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkaykge1xuICAgICAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkdiwgJG1hcCkge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBicmVha3BvaW50IG5hbWVcbiAgICBAaWYgdHlwZS1vZigkbmFtZSkgPT0gJ3N0cmluZycge1xuICAgICAgJG5hbWU6IC16Zi1nZXQtYnAtdmFsKCRtYXAsICRuYW1lKTtcbiAgICB9XG5cbiAgICAvLyBicmVha3BvaW50IHZhbHVlXG4gICAgJC16Zi1icC12YWx1ZTogJG5hbWUgIWdsb2JhbDtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gSGVscGVyIGZ1bmN0aW9uIGZvciB0aGUgbm9ybWFsaXplKCkgbWl4aW4uXG5AZnVuY3Rpb24gX25vcm1hbGl6ZS1pbmNsdWRlKCRzZWN0aW9uLCAkZXhjbHVkZTogbnVsbCkge1xuICAvLyBJbml0aWFsaXplIHRoZSBnbG9iYWwgdmFyaWFibGVzIG5lZWRlZCBieSB0aGlzIGZ1bmN0aW9uLlxuICBAaWYgbm90IGdsb2JhbF92YXJpYWJsZV9leGlzdHMoX25vcm1hbGl6ZS1pbmNsdWRlKSB7XG4gICAgJF9ub3JtYWxpemUtaW5jbHVkZTogKCkgIWdsb2JhbDtcbiAgICAkX25vcm1hbGl6ZS1leGNsdWRlOiAoKSAhZ2xvYmFsO1xuICB9XG4gIC8vIFNpbmNlIHdlIGFyZSBnaXZlbiAyIHBhcmFtZXRlcnMsIHNldCB0aGUgZ2xvYmFsIHZhcmlhYmxlcy5cbiAgQGlmICRleGNsdWRlICE9IG51bGwge1xuICAgICRpbmNsdWRlOiAkc2VjdGlvbjtcbiAgICAvLyBTYXNzIGRvZXNuJ3QgaGF2ZSBzdGF0aWMgdmFyaWFibGVzLCBzbyB0aGUgd29yay1hcm91bmQgaXMgdG8gc3R1ZmYgdGhlc2VcbiAgICAvLyB2YWx1ZXMgaW50byBnbG9iYWwgdmFyaWFibGVzIHNvIHdlIGNhbiBhY2Nlc3MgdGhlbSBpbiBmdXR1cmUgY2FsbHMuXG4gICAgJF9ub3JtYWxpemUtaW5jbHVkZTogaWYodHlwZS1vZigkaW5jbHVkZSkgPT0gJ2xpc3QnLCAkaW5jbHVkZSwgKCRpbmNsdWRlKSkgIWdsb2JhbDtcbiAgICAkX25vcm1hbGl6ZS1leGNsdWRlOiBpZih0eXBlLW9mKCRleGNsdWRlKSA9PSAnbGlzdCcsICRleGNsdWRlLCAoJGV4Y2x1ZGUpKSAhZ2xvYmFsO1xuICAgIEByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmICRzZWN0aW9uIGlzIGluIHRoZSAkaW5jbHVkZSBsaXN0LlxuICBAaWYgaW5kZXgoJF9ub3JtYWxpemUtaW5jbHVkZSwgJHNlY3Rpb24pIHtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cbiAgLy8gSWYgJGluY2x1ZGUgaXMgc2V0IHRvIChhbGwpLCBtYWtlIHN1cmUgJHNlY3Rpb24gaXMgbm90IGluICRleGNsdWRlLlxuICBAZWxzZSBpZiBub3QgaW5kZXgoJF9ub3JtYWxpemUtZXhjbHVkZSwgJHNlY3Rpb24pIGFuZCBpbmRleCgkX25vcm1hbGl6ZS1pbmNsdWRlLCBhbGwpIHtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cbiAgQHJldHVybiBmYWxzZTtcbn1cblxuQG1peGluIG5vcm1hbGl6ZSgkaW5jbHVkZTogKGFsbCksICRleGNsdWRlOiAoKSkge1xuICAvLyBJbml0aWFsaXplIHRoZSBoZWxwZXIgZnVuY3Rpb24gYnkgcGFzc2luZyBpdCB0aGlzIG1peGluJ3MgcGFyYW1ldGVycy5cbiAgJGluaXQ6IF9ub3JtYWxpemUtaW5jbHVkZSgkaW5jbHVkZSwgJGV4Y2x1ZGUpO1xuXG4gIC8vIElmIHdlJ3ZlIGN1c3RvbWl6ZWQgYW55IGZvbnQgdmFyaWFibGVzLCB3ZSdsbCBuZWVkIGV4dHJhIHByb3BlcnRpZXMuXG4gIEBpZiAkYmFzZS1saW5lLWhlaWdodCAhPSAyNHB4XG4gICAgb3IgJGJhc2UtdW5pdCAhPSAnZW0nXG4gICAgb3IgJGgyLWZvbnQtc2l6ZSAhPSAxLjUgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGgzLWZvbnQtc2l6ZSAhPSAxLjE3ICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg0LWZvbnQtc2l6ZSAhPSAxICAgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg1LWZvbnQtc2l6ZSAhPSAwLjgzICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg2LWZvbnQtc2l6ZSAhPSAwLjY3ICogJGJhc2UtZm9udC1zaXplIHtcbiAgICAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobTogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgLyohIG5vcm1hbGl6ZS1zY3NzIHwgTUlUL0dQTHYyIExpY2Vuc2UgfCBiaXQubHkvbm9ybWFsaXplLXNjc3MgKi9cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGRvY3VtZW50KSB7XG4gICAgLyogRG9jdW1lbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAgICAgKiAgICBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4gICAgICovXG5cbiAgICBodG1sIHtcbiAgICAgIEBpZiAkYmFzZS1mb250LWZhbWlseSB7XG4gICAgICAgIC8qIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS4gKi9cbiAgICAgICAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5O1xuICAgICAgfVxuICAgICAgQGlmICRiYXNlLWZvbnQtc2l6ZSAhPSAxNnB4IG9yICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgLy8gQ29ycmVjdCBvbGQgYnJvd3NlciBidWcgdGhhdCBwcmV2ZW50ZWQgYWNjZXNzaWJsZSByZXNpemluZyBvZiB0ZXh0XG4gICAgICAgIC8vIHdoZW4gcm9vdCBmb250LXNpemUgaXMgc2V0IHdpdGggcHggb3IgZW0uXG4gICAgICAgIGZvbnQtc2l6ZTogKCRiYXNlLWZvbnQtc2l6ZSAvIDE2cHgpICogMTAwJTtcbiAgICAgIH1cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAoJGJhc2UtbGluZS1oZWlnaHQgLyAkYmFzZS1mb250LXNpemUpICogMWVtOyAvKiAxICovXG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gICAgICB9XG4gICAgICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xuICAgICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShzZWN0aW9ucykge1xuICAgIC8qIFNlY3Rpb25zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuXG4gICAgYm9keSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBhcnRpY2xlLFxuICAgIGFzaWRlLFxuICAgIGZvb3RlcixcbiAgICBoZWFkZXIsXG4gICAgbmF2LFxuICAgIHNlY3Rpb24ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAgICAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBoMSB7XG4gICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoMS1mb250LXNpemUpO1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMS1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICAvKiBTZXQgMSB1bml0IG9mIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gKi9cbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMS1mb250LXNpemUpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBtYXJnaW46IDAuNjdlbSAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICBoMiB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDItZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMi1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoMyB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDMtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMy1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNCB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDQtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNC1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDUtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNS1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNiB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDYtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNi1mb250LXNpemUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZ3JvdXBpbmcpIHtcbiAgICAvKiBHcm91cGluZyBjb250ZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAvKipcbiAgICAgICAqIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgKi9cblxuICAgICAgYmxvY2txdW90ZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAkaW5kZW50LWFtb3VudCk7XG4gICAgICB9XG5cbiAgICAgIGRsLFxuICAgICAgb2wsXG4gICAgICB1bCB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTtcbiAgICAgIH1cblxuICAgICAgLyoqXG4gICAgICAgKiBUdXJuIG9mZiBtYXJnaW5zIG9uIG5lc3RlZCBsaXN0cy5cbiAgICAgICAqL1xuXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgb2wsXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZGQge1xuICAgICAgICBtYXJnaW46IDAgMCAwICRpbmRlbnQtYW1vdW50O1xuICAgICAgfVxuXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBmaWdjYXB0aW9uLFxuICAgIGZpZ3VyZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gICAgICovXG5cbiAgICBmaWd1cmUge1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxICRpbmRlbnQtYW1vdW50KTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbWFyZ2luOiAxZW0gJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgICAgKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKi9cblxuICAgIGhyIHtcbiAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gICAgICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG5cbiAgICBtYWluIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAvKipcbiAgICAgICAqIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgKi9cblxuICAgICAgcCxcbiAgICAgIHByZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHByZSB7XG4gICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShsaW5rcykge1xuICAgIC8qIExpbmtzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICAgKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gICAgICovXG5cbiAgICBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAxICovXG4gICAgICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzOyAvKiAyICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZSh0ZXh0KSB7XG4gICAgLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny0gYW5kIEZpcmVmb3ggMzktLlxuICAgICAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBhYmJyW3RpdGxlXSB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gICAgICovXG5cbiAgICBiLFxuICAgIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYixcbiAgICBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIGNvZGUsXG4gICAga2JkLFxuICAgIHNhbXAge1xuICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gICAgICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAgICAgKi9cblxuICAgIGRmbiB7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICAgICAqL1xuXG4gICAgbWFyayB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzbWFsbCB7XG4gICAgICBmb250LXNpemU6IDgwJTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgICAgKiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzdWIsXG4gICAgc3VwIHtcbiAgICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgfVxuXG4gICAgc3ViIHtcbiAgICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgICB9XG5cbiAgICBzdXAge1xuICAgICAgdG9wOiAtMC41ZW07XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShlbWJlZGRlZCkge1xuICAgIC8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBhdWRpbyxcbiAgICB2aWRlbyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAgICAgKi9cblxuICAgIGF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cblxuICAgIHN2Zzpub3QoOnJvb3QpIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShmb3Jtcykge1xuICAgIC8qIEZvcm1zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIGlucHV0LFxuICAgIG9wdGdyb3VwLFxuICAgIHNlbGVjdCxcbiAgICB0ZXh0YXJlYSB7XG4gICAgICBmb250LWZhbWlseTogaWYoJGJhc2UtZm9udC1mYW1pbHksICRiYXNlLWZvbnQtZmFtaWx5LCBzYW5zLXNlcmlmKTsgLyogMSAqL1xuICAgICAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICBsaW5lLWhlaWdodDogKCRiYXNlLWxpbmUtaGVpZ2h0IC8gJGJhc2UtZm9udC1zaXplKSAqIDFlbTsgLyogMSAqL1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAgICAgfVxuICAgICAgbWFyZ2luOiAwOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5cbiAgICBidXR0b24ge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gICAgICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIHNlbGVjdCB7IC8qIDEgKi9cbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICAgICAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIGh0bWwgW3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cbiAgICBbdHlwZT1cInJlc2V0XCJdLFxuICAgIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXG4gICAgfVxuXG4gICAgYnV0dG9uLFxuICAgIFt0eXBlPVwiYnV0dG9uXCJdLFxuICAgIFt0eXBlPVwicmVzZXRcIl0sXG4gICAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuXG4gICAgICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gICAgICAgKi9cblxuICAgICAgJjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgLyoqXG4gICAgICAgKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gICAgICAgKi9cblxuICAgICAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICAgICAqL1xuXG4gICAgaW5wdXQge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICAgICAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBbdHlwZT1cImNoZWNrYm94XCJdLFxuICAgIFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICAgICAgcGFkZGluZzogMDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAgICAgKi9cblxuICAgIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAgIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gICAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xuXG4gICAgICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gICAgICAgKi9cblxuICAgICAgJjo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbiAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gICAgICovXG5cbiAgICA6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gICAgICBmb250OiBpbmhlcml0OyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICAgICAqL1xuXG4gICAgZmllbGRzZXQge1xuICAgICAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAgICAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgICAgKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIGxlZ2VuZCB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gICAgICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gICAgICBwYWRkaW5nOiAwOyAvKiAzICovXG4gICAgICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqIDIuIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gICAgICovXG5cbiAgICBwcm9ncmVzcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cbiAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gICAgICovXG5cbiAgICB0ZXh0YXJlYSB7XG4gICAgICBvdmVyZmxvdzogYXV0bztcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGludGVyYWN0aXZlKSB7XG4gICAgLyogSW50ZXJhY3RpdmVcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gICAgICovXG5cbiAgICBkZXRhaWxzIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgc3VtbWFyeSB7XG4gICAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gICAgfVxuXG4gICAgLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIG1lbnUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIC8qXG4gICAgICAgICAqIDEuIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgICAqIDIuIFNldCBjb25zaXN0ZW50IHNwYWNlIGZvciB0aGUgbGlzdCBzdHlsZSBpbWFnZS5cbiAgICAgICAgICovXG5cbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDApOyAvKiAxICovXG4gICAgICAgIHBhZGRpbmc6IDAgMCAwICRpbmRlbnQtYW1vdW50OyAvKiAyICovXG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIFR1cm4gb2ZmIG1hcmdpbnMgb24gbmVzdGVkIGxpc3RzLlxuICAgICAgICAgKi9cblxuICAgICAgICBtZW51ICYsXG4gICAgICAgIG9sICYsXG4gICAgICAgIHVsICYge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoc2NyaXB0aW5nKSB7XG4gICAgLyogU2NyaXB0aW5nXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuXG4gICAgY2FudmFzIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cblxuICAgIHRlbXBsYXRlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShoaWRkZW4pIHtcbiAgICAvKiBIaWRkZW5cbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgW2hpZGRlbl0ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBWZXJ0aWNhbCBSaHl0aG1cbi8vXG4vLyBUaGlzIGlzIHRoZSBtaW5pbWFsIGFtb3VudCBvZiBjb2RlIG5lZWRlZCB0byBjcmVhdGUgdmVydGljYWwgcmh5dGhtIGluIG91clxuLy8gQ1NTLiBJZiB5b3UgYXJlIGxvb2tpbmcgZm9yIGEgcm9idXN0IHNvbHV0aW9uLCBsb29rIGF0IHRoZSBleGNlbGxlbnQgVHlwZXlcbi8vIGxpYnJhcnkuIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2pwdGFyYW50by90eXBleVxuXG5AZnVuY3Rpb24gbm9ybWFsaXplLXJoeXRobSgkdmFsdWUsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplLCAkdW5pdDogJGJhc2UtdW5pdCkge1xuICBAaWYgdW5pdCgkdmFsdWUpICE9IHB4IHtcbiAgICBAZXJyb3IgXCJUaGUgbm9ybWFsaXplIHZlcnRpY2FsLXJoeXRobSBtb2R1bGUgb25seSBzdXBwb3J0cyBweCBpbnB1dHMuIFRoZSB0eXBleSBsaWJyYXJ5IGlzIGJldHRlci5cIjtcbiAgfVxuICBAaWYgJHVuaXQgPT0gcmVtIHtcbiAgICBAcmV0dXJuICgkdmFsdWUgLyAkYmFzZS1mb250LXNpemUpICogMXJlbTtcbiAgfVxuICBAZWxzZSBpZiAkdW5pdCA9PSBlbSB7XG4gICAgQHJldHVybiAoJHZhbHVlIC8gJHJlbGF0aXZlLXRvKSAqIDFlbTtcbiAgfVxuICBAZWxzZSB7IC8vICR1bml0ID09IHB4XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cbn1cblxuQG1peGluIG5vcm1hbGl6ZS1mb250LXNpemUoJHZhbHVlLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdweCcge1xuICAgIEBlcnJvciBcIm5vcm1hbGl6ZS1mb250LXNpemUoKSBvbmx5IHN1cHBvcnRzIHB4IGlucHV0cy4gVGhlIHR5cGV5IGxpYnJhcnkgaXMgYmV0dGVyLlwiO1xuICB9XG4gIGZvbnQtc2l6ZTogbm9ybWFsaXplLXJoeXRobSgkdmFsdWUsICRyZWxhdGl2ZS10byk7XG59XG5cbkBtaXhpbiBub3JtYWxpemUtcmh5dGhtKCRwcm9wZXJ0eSwgJHZhbHVlcywgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUpIHtcbiAgJHZhbHVlLWxpc3Q6ICR2YWx1ZXM7XG4gICRzZXA6IHNwYWNlO1xuICBAaWYgdHlwZS1vZigkdmFsdWVzKSA9PSAnbGlzdCcge1xuICAgICRzZXA6IGxpc3Qtc2VwYXJhdG9yKCR2YWx1ZXMpO1xuICB9XG4gIEBlbHNlIHtcbiAgICAkdmFsdWUtbGlzdDogYXBwZW5kKCgpLCAkdmFsdWVzKTtcbiAgfVxuXG4gICRub3JtYWxpemVkLXZhbHVlczogKCk7XG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWUtbGlzdCB7XG4gICAgQGlmIHVuaXRsZXNzKCR2YWx1ZSkgYW5kICR2YWx1ZSAhPSAwIHtcbiAgICAgICR2YWx1ZTogJHZhbHVlICogbm9ybWFsaXplLXJoeXRobSgkYmFzZS1saW5lLWhlaWdodCwgJHJlbGF0aXZlLXRvKTtcbiAgICB9XG4gICAgJG5vcm1hbGl6ZWQtdmFsdWVzOiBhcHBlbmQoJG5vcm1hbGl6ZWQtdmFsdWVzLCAkdmFsdWUsICRzZXApO1xuICB9XG4gICN7JHByb3BlcnR5fTogJG5vcm1hbGl6ZWQtdmFsdWVzO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplLW1hcmdpbigkdmFsdWVzLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xuICBAaW5jbHVkZSBub3JtYWxpemUtcmh5dGhtKG1hcmdpbiwgJHZhbHVlcywgJHJlbGF0aXZlLXRvKTtcbn1cblxuQG1peGluIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkZm9udC1zaXplLCAkbWluLWxpbmUtcGFkZGluZzogMnB4KSB7XG4gICRsaW5lczogY2VpbCgkZm9udC1zaXplIC8gJGJhc2UtbGluZS1oZWlnaHQpO1xuICAvLyBJZiBsaW5lcyBhcmUgY3JhbXBlZCBpbmNsdWRlIHNvbWUgZXh0cmEgbGVhZGluZy5cbiAgQGlmICgkbGluZXMgKiAkYmFzZS1saW5lLWhlaWdodCAtICRmb250LXNpemUpIDwgKCRtaW4tbGluZS1wYWRkaW5nICogMikge1xuICAgICRsaW5lczogJGxpbmVzICsgMTtcbiAgfVxuICBAaW5jbHVkZSBub3JtYWxpemUtcmh5dGhtKGxpbmUtaGVpZ2h0LCAkbGluZXMsICRmb250LXNpemUpO1xufVxuIiwiLy9cbi8vIFZhcmlhYmxlc1xuLy9cbi8vIFlvdSBjYW4gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgdmFsdWVzIGJ5IHNldHRpbmcgdGhlIHZhcmlhYmxlcyBpbiB5b3VyIFNhc3Ncbi8vIGJlZm9yZSBpbXBvcnRpbmcgdGhlIG5vcm1hbGl6ZS1zY3NzIGxpYnJhcnkuXG5cbi8vIFRoZSBmb250IHNpemUgc2V0IG9uIHRoZSByb290IGh0bWwgZWxlbWVudC5cbiRiYXNlLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcblxuLy8gVGhlIGJhc2UgbGluZSBoZWlnaHQgZGV0ZXJtaW5lcyB0aGUgYmFzaWMgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0uXG4kYmFzZS1saW5lLWhlaWdodDogMjRweCAhZGVmYXVsdDtcblxuLy8gVGhlIGxlbmd0aCB1bml0IGluIHdoaWNoIHRvIG91dHB1dCB2ZXJ0aWNhbCByaHl0aG0gdmFsdWVzLlxuLy8gU3VwcG9ydGVkIHZhbHVlczogcHgsIGVtLCByZW0uXG4kYmFzZS11bml0OiAnZW0nICFkZWZhdWx0O1xuXG4vLyBUaGUgZGVmYXVsdCBmb250IGZhbWlseS5cbiRiYXNlLWZvbnQtZmFtaWx5OiBudWxsICFkZWZhdWx0O1xuXG4vLyBUaGUgZm9udCBzaXplcyBmb3IgaDEtaDYuXG4kaDEtZm9udC1zaXplOiAyICAgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogMS41ICAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6IDEuMTcgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAxICAgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogMC44MyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6IDAuNjcgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vIFRoZSBhbW91bnQgbGlzdHMgYW5kIGJsb2NrcXVvdGVzIGFyZSBpbmRlbnRlZC5cbiRpbmRlbnQtYW1vdW50OiA0MHB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgZm9sbG93aW5nIHZhcmlhYmxlIGNvbnRyb2xzIHdoZXRoZXIgbm9ybWFsaXplLXNjc3Mgd2lsbCBvdXRwdXRcbi8vIGZvbnQtc2l6ZXMsIGxpbmUtaGVpZ2h0cyBhbmQgYmxvY2stbGV2ZWwgdG9wL2JvdHRvbSBtYXJnaW5zIHRoYXQgZm9ybSBhIGJhc2ljXG4vLyB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHBhZ2UsIHdoaWNoIGRpZmZlcnMgZnJvbSB0aGUgb3JpZ2luYWwgTm9ybWFsaXplLmNzcy5cbi8vIEhvd2V2ZXIsIGNoYW5naW5nIGFueSBvZiB0aGUgdmFyaWFibGVzIGFib3ZlIHdpbGwgY2F1c2Vcbi8vICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHRvIGJlIGF1dG9tYXRpY2FsbHkgc2V0IHRvIHRydWUuXG4kbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobTogZmFsc2UgIWRlZmF1bHQ7XG4iLCIvKiBTbGlkZXIgKi9cclxuXHJcbi5zbGljay1zbGlkZXIge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcclxuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcclxuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xyXG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcclxuICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcclxuICB0b3VjaC1hY3Rpb246IHBhbi15O1xyXG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuLnNsaWNrLWxpc3Qge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIG1hcmdpbjogMDtcclxuICBwYWRkaW5nOiAwO1xyXG5cclxuICAmOmZvY3VzIHtcclxuICAgICAgb3V0bGluZTogbm9uZTtcclxuICB9XHJcblxyXG4gICYuZHJhZ2dpbmcge1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgIGN1cnNvcjogaGFuZDtcclxuICB9XHJcbn1cclxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXHJcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG59XHJcblxyXG4uc2xpY2stdHJhY2sge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBsZWZ0OiAwO1xyXG4gIHRvcDogMDtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tbGVmdDogYXV0bztcclxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcblxyXG4gICY6YmVmb3JlLFxyXG4gICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICBkaXNwbGF5OiB0YWJsZTtcclxuICB9XHJcblxyXG4gICY6YWZ0ZXIge1xyXG4gICAgICBjbGVhcjogYm90aDtcclxuICB9XHJcblxyXG4gIC5zbGljay1sb2FkaW5nICYge1xyXG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgfVxyXG59XHJcbi5zbGljay1zbGlkZSB7XHJcbiAgZmxvYXQ6IGxlZnQ7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIG1pbi1oZWlnaHQ6IDFweDtcclxuICBbZGlyPVwicnRsXCJdICYge1xyXG4gICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgfVxyXG4gIGltZyB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuICAmLnNsaWNrLWxvYWRpbmcgaW1nIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcblxyXG4gIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICYuZHJhZ2dpbmcgaW1nIHtcclxuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAuc2xpY2staW5pdGlhbGl6ZWQgJiB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuXHJcbiAgLnNsaWNrLWxvYWRpbmcgJiB7XHJcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICB9XHJcblxyXG4gIC5zbGljay12ZXJ0aWNhbCAmIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgfVxyXG59XHJcbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8gRGVmYXVsdCBWYXJpYWJsZXNcclxuXHJcbi8vIFNsaWNrIGljb24gZW50aXR5IGNvZGVzIG91dHB1dHMgdGhlIGZvbGxvd2luZ1xyXG4vLyBcIlxcMjE5MFwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oaQXCJcclxuLy8gXCJcXDIxOTJcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKGklwiXHJcbi8vIFwiXFwyMDIyXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLigKJcIlxyXG5cclxuJHNsaWNrLWZvbnQtcGF0aDogXCIuLi9mb250cy9cIiAhZGVmYXVsdDtcclxuJHNsaWNrLWZvbnQtZmFtaWx5OiBcInNsaWNrXCIgIWRlZmF1bHQ7XHJcbiRzbGljay1sb2FkZXItcGF0aDogXCIuL1wiICFkZWZhdWx0O1xyXG4kc2xpY2stYXJyb3ctY29sb3I6IHdoaXRlICFkZWZhdWx0O1xyXG4kc2xpY2stZG90LWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC41MCkgIWRlZmF1bHQ7XHJcbiRzbGljay1kb3QtY29sb3ItYWN0aXZlOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpICFkZWZhdWx0O1xyXG4kc2xpY2stcHJldi1jaGFyYWN0ZXI6IFwiXFwyMTkwXCIgIWRlZmF1bHQ7XHJcbiRzbGljay1uZXh0LWNoYXJhY3RlcjogXCJcXDIxOTJcIiAhZGVmYXVsdDtcclxuJHNsaWNrLWRvdC1jaGFyYWN0ZXI6IFwiXFwyMDIyXCIgIWRlZmF1bHQ7XHJcbiRzbGljay1kb3Qtc2l6ZTogOHB4ICFkZWZhdWx0O1xyXG4kc2xpY2stb3BhY2l0eS1kZWZhdWx0OiAwLjc1ICFkZWZhdWx0O1xyXG4kc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjogMSAhZGVmYXVsdDtcclxuJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTogMC4yNSAhZGVmYXVsdDtcclxuXHJcbkBmdW5jdGlvbiBzbGljay1pbWFnZS11cmwoJHVybCkge1xyXG4gICAgQGlmIGZ1bmN0aW9uLWV4aXN0cyhpbWFnZS11cmwpIHtcclxuICAgICAgICBAcmV0dXJuIGltYWdlLXVybCgkdXJsKTtcclxuICAgIH1cclxuICAgIEBlbHNlIHtcclxuICAgICAgICBAcmV0dXJuIHVybCgkc2xpY2stbG9hZGVyLXBhdGggKyAkdXJsKTtcclxuICAgIH1cclxufVxyXG5cclxuQGZ1bmN0aW9uIHNsaWNrLWZvbnQtdXJsKCR1cmwpIHtcclxuICAgIEBpZiBmdW5jdGlvbi1leGlzdHMoZm9udC11cmwpIHtcclxuICAgICAgICBAcmV0dXJuIGZvbnQtdXJsKCR1cmwpO1xyXG4gICAgfVxyXG4gICAgQGVsc2Uge1xyXG4gICAgICAgIEByZXR1cm4gdXJsKCRzbGljay1mb250LXBhdGggKyAkdXJsKTtcclxuICAgIH1cclxufVxyXG5cclxuLyogU2xpZGVyICovXHJcblxyXG4uc2xpY2stbGlzdCB7XHJcbiAgICAuc2xpY2stbG9hZGluZyAmIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmIHNsaWNrLWltYWdlLXVybChcImFqYXgtbG9hZGVyLmdpZlwiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcclxuICAgIH1cclxufVxyXG5cclxuLyogSWNvbnMgKi9cclxuQGlmICRzbGljay1mb250LWZhbWlseSA9PSBcInNsaWNrXCIge1xyXG4gICAgQGZvbnQtZmFjZSB7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcclxuICAgICAgICBzcmM6IHNsaWNrLWZvbnQtdXJsKFwic2xpY2suZW90XCIpO1xyXG4gICAgICAgIHNyYzogc2xpY2stZm9udC11cmwoXCJzbGljay5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2suc3ZnI3NsaWNrXCIpIGZvcm1hdChcInN2Z1wiKTtcclxuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgIH1cclxufVxyXG5cclxuLyogQXJyb3dzICovXHJcblxyXG4uc2xpY2stcHJldixcclxuLnNsaWNrLW5leHQge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICB3aWR0aDogMjBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAwcHg7XHJcbiAgICBmb250LXNpemU6IDBweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xyXG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktb24taG92ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5zbGljay1kaXNhYmxlZDpiZWZvcmUge1xyXG4gICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU7XHJcbiAgICB9XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRzbGljay1mb250LWZhbWlseTtcclxuICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgY29sb3I6ICRzbGljay1hcnJvdy1jb2xvcjtcclxuICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1kZWZhdWx0O1xyXG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zbGljay1wcmV2IHtcclxuICAgIGxlZnQ6IC0yNXB4O1xyXG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcclxuICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgIHJpZ2h0OiAtMjVweDtcclxuICAgIH1cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiAkc2xpY2stcHJldi1jaGFyYWN0ZXI7XHJcbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcclxuICAgICAgICAgICAgY29udGVudDogJHNsaWNrLW5leHQtY2hhcmFjdGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnNsaWNrLW5leHQge1xyXG4gICAgcmlnaHQ6IC0yNXB4O1xyXG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcclxuICAgICAgICBsZWZ0OiAtMjVweDtcclxuICAgICAgICByaWdodDogYXV0bztcclxuICAgIH1cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiAkc2xpY2stbmV4dC1jaGFyYWN0ZXI7XHJcbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcclxuICAgICAgICAgICAgY29udGVudDogJHNsaWNrLXByZXYtY2hhcmFjdGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyogRG90cyAqL1xyXG5cclxuLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxufVxyXG5cclxuLnNsaWNrLWRvdHMge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm90dG9tOiAyNHB4O1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XHJcbiAgICBsaSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIDA7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgYnV0dG9uIHtcclxuICAgICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMHB4O1xyXG4gICAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktb24taG92ZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICRzbGljay1kb3QtY2hhcmFjdGVyO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJHNsaWNrLWZvbnQtZmFtaWx5O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkc2xpY2stZG90LXNpemU7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcclxuICAgICAgICAgICAgY29sb3I6ICRzbGljay1kb3QtY29sb3ItYWN0aXZlO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1kZWZhdWx0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbmRQICAgICAgICAgICAgICAgIGRQXHJcbjg4ICAgICAgICAgICAgICAgIDg4XHJcbjg4ZDg4OGIuIC5kODg4OGIuIDg4IDg4ZDg4OGIuIC5kODg4OGIuIDg4ZDg4OGIuIC5kODg4OGIuXHJcbjg4JyAgYDg4IDg4b29vb2Q4IDg4IDg4JyAgYDg4IDg4b29vb2Q4IDg4JyAgYDg4IFk4b29vb28uXHJcbjg4ICAgIDg4IDg4LiAgLi4uIDg4IDg4LiAgLjg4IDg4LiAgLi4uIDg4ICAgICAgICAgICAgIDg4XHJcbmRQICAgIGRQIGA4ODg4OFAnIGRQIDg4WTg4OFAnIGA4ODg4OFAnIGRQICAgICAgIGA4ODg4OFAnXHJcbiAgICAgICAgICAgICAgICAgICAgIDg4XHJcblx0XHRcdFx0XHQgZFBcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5cclxuJGFuaW1hdGlvbi1zcGVlZC1mYXN0OiAxNTBtcztcclxuJGFuaW1hdGlvbi1zcGVlZC1tZWRpdW06IDM1MG1zO1xyXG4kYW5pbWF0aW9uLXNwZWVkLXNsb3c6IDUwMG1zO1xyXG4iLCIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICBfXyAgX18gICAgICAgICAgICAgICBfXyAgX18gICAgICAgICAgICAgICBfICAgXyAgICBfX19fXHJcblV8JyBcXC8gJ3x1ICAgX19fICAgICAgIFxcIFxcL1wiLyAgICAgIF9fXyAgICAgfCBcXCB8XCJ8ICAvIF9fXCJ8IHVcclxuXFx8IHxcXC98IHwvICB8X1wiX3wgICAgICAvXFwgIC9cXCAgICAgfF9cIl98ICAgPHwgIFxcfCB8PjxcXF9fXyBcXC9cclxuIHwgfCAgfCB8ICAgIHwgfCAgICAgIFUgLyAgXFwgdSAgICAgfCB8ICAgIFV8IHxcXCAgfHUgdV9fXykgfFxyXG4gfF98ICB8X3wgIFUvfCB8XFx1ICAgICAvXy9cXF9cXCAgICBVL3wgfFxcdSAgIHxffCBcXF98ICB8X19fXy8+PlxyXG48PCwtLCwtLi4tLF98X19ffF8sLS4sLSw+PiBcXFxcXy4tLF98X19ffF8sLS58fCAgIFxcXFwsLS4pKCAgKF9fKVxyXG4gKC4vICBcXC4pXFxfKS0nICctKF8vICBcXF8pICAoX18pXFxfKS0nICctKF8vIChfXCIpICAoXy8oX18pXHJcblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuXHJcblxyXG4vKlxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBGb250c1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuRm9udC1mYWNlIG1peGluIGV4YW1wbGU6XHJcblxyXG5AaW5jbHVkZSBmb250LWZhY2UoT3B0aW1hLCAnLi4vZm9udHMvT3B0aW1hLUV4dHJhQmxhY2snLCA5MDAsIG5vcm1hbCwgZW90IHdvZmYgb3RmKTtcclxuXHJcbiovXHJcblxyXG4vLyBTdHJpbmcgUmVwbGFjZSBIZWxwZXJcclxuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzZWFyY2gsICRyZXBsYWNlOiBcIlwiKSB7XHJcbiAgJGluZGV4OiBzdHItaW5kZXgoJHN0cmluZywgJHNlYXJjaCk7XHJcbiAgQGlmICRpbmRleCB7XHJcbiAgICBAcmV0dXJuIHN0ci1zbGljZSgkc3RyaW5nLCAxLCAkaW5kZXggLSAxKSskcmVwbGFjZStzdHItcmVwbGFjZShzdHItc2xpY2UoJHN0cmluZywgJGluZGV4ICsgc3RyLWxlbmd0aCgkc2VhcmNoKSksICRzZWFyY2gsICRyZXBsYWNlKTtcclxuICB9XHJcbiAgQHJldHVybiAkc3RyaW5nO1xyXG59XHJcblxyXG4vLyBGb250IEZhY2VcclxuQG1peGluIGZvbnQtZmFjZSgkbmFtZSwgJHBhdGgsICR3ZWlnaHQ6IG51bGwsICRzdHlsZTogbnVsbCwgJGV4dHM6IGVvdCB3b2ZmIHR0ZiBvdGYpIHtcclxuICAkc3JjOiBudWxsO1xyXG4gICRleHRtb2RzOiAoIGVvdDogXCI/I2llZml4XCIsIHN2ZzogXCIjXCIgKyBzdHItcmVwbGFjZSgkbmFtZSwgXCIgXCIsIFwiX1wiKSk7XHJcbiAgJGZvcm1hdHM6ICggb3RmOiBcIm9wZW50eXBlXCIsIHR0ZjogXCJ0cnVldHlwZVwiKTtcclxuICBAZWFjaCAkZXh0IGluICRleHRzIHtcclxuICAgICRleHRtb2Q6IGlmKG1hcC1oYXMta2V5KCRleHRtb2RzLCAkZXh0KSwgJGV4dCArIG1hcC1nZXQoJGV4dG1vZHMsICRleHQpLCAkZXh0KTtcclxuICAgICRmb3JtYXQ6IGlmKG1hcC1oYXMta2V5KCRmb3JtYXRzLCAkZXh0KSwgbWFwLWdldCgkZm9ybWF0cywgJGV4dCksICRleHQpO1xyXG4gICAgJHNyYzogYXBwZW5kKCRzcmMsIHVybChxdW90ZSgkcGF0aCArIFwiLlwiICsgJGV4dG1vZCkpIGZvcm1hdChxdW90ZSgkZm9ybWF0KSksIGNvbW1hKTtcclxuICB9XHJcbiAgQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogcXVvdGUoJG5hbWUpO1xyXG4gICAgZm9udC1zdHlsZTogJHN0eWxlO1xyXG4gICAgZm9udC13ZWlnaHQ6ICR3ZWlnaHQ7XHJcbiAgICBzcmM6ICRzcmM7XHJcbiAgfVxyXG59IiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4gICAgICAgICAgICAgICAgICBkUFxyXG4gICAgICAgICAgICAgICAgICA4OFxyXG4uZDg4ODhiLiAuZDg4ODhiLiA4OCAuZDg4ODhiLiA4OGQ4ODhiLiAuZDg4ODhiLlxyXG44OCcgIGBcIlwiIDg4JyAgYDg4IDg4IDg4JyAgYDg4IDg4JyAgYDg4IFk4b29vb28uXHJcbjg4LiAgLi4uIDg4LiAgLjg4IDg4IDg4LiAgLjg4IDg4ICAgICAgICAgICAgIDg4XHJcbmA4ODg4OFAnIGA4ODg4OFAnIGRQIGA4ODg4OFAnIGRQICAgICAgIGA4ODg4OFAnXHJcblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuXHJcbiRjX193aGl0ZTogcmdiYSgyNTUsIDI1NSwgMjU1LCAxKTsgLy8gI2ZmZmZmZlxyXG4kY19fYmxhY2s6IHJnYmEoMCwgMCwgMCwgMSk7IC8vICMwMDAwMDBcclxuLy8gZ3JheXNcclxuJGNfX2dyYXktc2hhcms6IHJnYmEoMzYsIDM5LCA0MywgMSk7IC8vICMyNDI3MmJcclxuJGNfX2xpZ2h0LWdyYXktc2hhcms6IHJnYmEoNzcsIDc4LCA4MCwgMSk7IC8vICM0ZDRlNTBcclxuJGNfX2dyYXktYXRoZW5zOiByZ2JhKDIzNCwgMjM2LCAyMzksIDEpOyAvLyAjZWFlY2VmXHJcbiRjX19ncmF5LXNoYXJrLTI6IHJnYmEoMzQsIDM3LCA0MiwgMSk7IC8vICMyMjI1MmFcclxuJGNfX2dyYXktbWFrbzogcmdiYSg2MiwgNjUsIDY5LCAxKTsgLy8jM2U0MTQ1XHJcbiRjX19ncmF5LXR1bmE6IHJnYmEoNTMsIDU4LCA2NSwgMSk7IC8vICMzNTNhNDFcclxuJGNfX2dyYXktYWJiZXk6IHJnYmEoODAsIDg0LCA5MCwgMSk7IC8vICM1MDU0NUFcclxuJGNfX2dyYXktc2h1dHRsZTogcmdiYSg5NywgMTAzLCAxMTIsIDEpOyAvLyAjNjE2NzcwXHJcbiRjX19ncmF5LWNoYXRlYXU6IHJnYmEoMTU3LCAxNjUsIDE3MCwgMSk7IC8vICM5ZGE1YWE7XHJcbiRjX19ncmF5LW9zbG86IHJnYmEoMTMzLCAxNDIsIDE1MCwgMSk7IC8vICM4NThFOTZcclxuJGNfX2dyYXktY29kOiByZ2JhKDEwLCAxMCwgMTAsIDEpOyAvLyAjMGEwYTBhXHJcbiRjX19ncmF5LWxvYmxvbGx5OiByZ2JhKDE4NywgMTk1LCAyMDMsIDEpOyAvLyAjYmJjM2NiXHJcbiRjX19ncmF5LWdob3N0OiByZ2JhKDIwNiwgMjEyLCAyMTgsIDEpOyAvLyAjY2VkNGRhXHJcbiRjX19ncmF5LXRyb3V0OiByZ2JhKDc0LCA4MCwgODgsIDEpOyAvLyAjNGE1MDU4XHJcbiRjX19ncmF5LW15c3RpYzogcmdiYSgyMzIsIDIzNiwgMjQxLCAxKTsgLy8gI2U4ZWNmMVxyXG4kY19fcmVkLWFsaXphcmluLWNyaW1zb246IHJnYmEoMjIzLCA0NSwgNDAsIDEpOyAvLyAjREYyRDI4XHJcbiRjX19yZWQtbW9uemE6IHJnYmEoMjI5LCA5LCAyMCwgMSk7IC8vICNlNTA5MTRcclxuXHJcbi8vIGJyYW5kXHJcbiRjX19icmFuZDogcmdiYSgyMjMsIDQ1LCA0MCwgMSk7IC8vICNERjJEMjhcclxuXHJcbiRjX19kYXJrLWdyYXk6ICRjX19ncmF5LWNvZDtcclxuXHJcbi8vIGdlbnJlc1xyXG4kY19fZ3JheS1yZWdlbnQ6IHJnYmEoMTMxLCAxNDIsIDE1MSwgMSk7IC8vICM4MzhlOTdcclxuJGNfX3llbGxvdy1nb2xkOiByZ2JhKDI1NSwgMjEwLCAwLCAxKTsgLy8gI0ZGRDIwMFxyXG4kY19fZ3JheS10cm91dC0yOiByZ2JhKDcyLCA4MCwgODksIDEpOyAvLyAjNDg1MDU5XHJcbiRjX19ncmVlbi1saW1lYWRlOiByZ2JhKDEwNSwgMjA1LCAwLCAxKTsgLy8gIzY5Q0QwMFxyXG4kY19fcHVycGxlLWVsZWN0cmljLXZpb2xldDogcmdiYSgxMjksIDcyLCAyNTEsIDEpOyAvLyAjODE0OEZCXHJcbiRjX19ibHVlLXBpY3RvbjogcmdiYSg0MywgMTQ1LCAyMzMsIDEpOyAvLyAjMkI5MUU5XHJcbiRjX19waW5rLXRpY2tsZS1tZTogcmdiYSgyNTUsIDEyMSwgMTczLCAxKTsgLy8gI2ZmNzlhZFxyXG4kY19fcmVkLW1vbnphLTI6IHJnYmEoMjE5LCA1LCAzMCwgMSk7IC8vICNkYjA1MWVcclxuJGNfX3JlZC1ndWFyZHNtYW46ICByZ2JhKDIxMiwyLDIsMSk7IC8vI0Q0MDIwMjtcclxuXHJcbi8vIHRleHQgY29sb3JzXHJcbiRjX19ib2R5LXRleHQ6ICRjX19ncmF5LXRyb3V0O1xyXG4kY19faGVhZGluZy1kYXJrZXI6ICRjX19ncmF5LWNvZDtcclxuJGNfX2hlYWRpbmctZGFyazogJGNfX2dyYXktY29kO1xyXG5cclxuLy8gY2FyZFxyXG4kY19fY2FyZC10aXRsZTogJGNfX2dyYXktY29kO1xyXG4kY19fY2FyZC1jYXRlZ29yeTogJGNfX2dyYXktb3NsbztcclxuJGNfX2ltYWdlLWNhcmQtdGV4dDogJGNfX3doaXRlO1xyXG5cclxuLy8gYXJ0aWNsZS1saXN0XHJcbiRjX19hcnRpY2xlLWxpc3QtdGl0bGU6ICRjX19ncmF5LXNoYXJrLTI7XHJcbiRjX19hcnRpY2xlLWxpc3QtY2F0ZWdvcnk6ICRjX19ncmF5LW9zbG87XHJcbiRjX19hcnRpY2xlLWxpc3QtYm9yZGVyOiAkY19fZ3JheS1naG9zdDtcclxuXHJcbi8vIGJhY2tncm91bmRzXHJcbiRjX19iZy1saWdodC1ibHVlOiAkY19fZ3JheS1teXN0aWM7XHJcbiRjX19iZy10cmFpbGVyczogJGNfX2dyYXktYWJiZXk7XHJcbiRjX19iZy1oZXJvLW5vLWltYWdlOiAkY19fcmVkLWd1YXJkc21hbjtcclxuXHJcbi8vIGhlYWRlclxyXG4kY19faGVhZGVyLW5hdi1saW5rOiAkY19fZ3JheS1jaGF0ZWF1O1xyXG4kY19faGVhZGVyLW5hdi1saW5rLWFjdGl2ZTogJGNfX3doaXRlO1xyXG4kY19faGVhZGVyLWhhbWJ1cmdlci1iYXJzOiAkY19faGVhZGVyLW5hdi1saW5rO1xyXG5cclxuLy8gaGVyb1xyXG4kY19faGVyby1nZW5yZTogJGNfX2dyYXktb3NsbztcclxuXHJcbi8vIHNlYXJjaFxyXG4kY19fc2VhcmNoLWJhY2tncm91bmQ6ICRjX19ncmF5LXNoYXJrO1xyXG4kY19fc2VhcmNoLWJvcmRlci1kZXNlbGVjdGVkOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xNik7XHJcbiRjX19zZWFyY2gtcGxhY2Vob2xkZXI6ICRjX19saWdodC1ncmF5LXNoYXJrO1xyXG5cclxuLy8gc2VjdGlvbnNcclxuJGNfX3NlY3Rpb24taGVhZGVyLWJvcmRlcjogJGNfX2dyYXktbG9ibG9sbHk7XHJcbiRjX19zZWN0aW9uLXRyYWlsZXJzLWJvcmRlcjogJGNfX2dyYXktb3NsbztcclxuJGNfX3NlY3Rpb24tdHJhaWxlcnMtYmFja2dyb3VuZDogJGNfX2dyYXktc2hhcms7XHJcblxyXG4vLyBmb290ZXJcclxuJGNfX2Zvb3Rlci1iZzogJGNfX2dyYXktc2hhcms7XHJcbiRjX19mb290ZXItYmctZGFyazogJGNfX2JsYWNrO1xyXG4kY19fZm9vdGVyLWhlYWRpbmc6ICRjX193aGl0ZTtcclxuJGNfX2Zvb3Rlci1oZWFkaW5nLWJvcmRlcjogJGNfX2dyYXktbWFrbztcclxuJGNfX2Zvb3Rlci10ZXh0OiAkY19fZ3JheS1jaGF0ZWF1O1xyXG4kY19fZm9vdGVyLWNvcHlyaWdodDogJGNfX2dyYXktc2h1dHRsZTtcclxuXHJcbi8vIGNvb2tpZSBkaXNjbGFpbWVyXHJcbiRjX19jb29raWUtZGlzY2xhaW1lci1iZzogJGNfX2JsYWNrO1xyXG5cclxuLy8gcmV2aWV3IHBhZ2VcclxuJGNfX3Jldmlldy10b3AtYmFyLWJnOiAkY19fZ3JheS1zaGFyaztcclxuJGNfX3Jldmlldy10aXRsZTogJGNfX2dyYXktY29kO1xyXG4kY19fcmV2aWV3LXByZWFtYmxlOiAkY19fZ3JheS10cm91dDtcclxuXHJcbi8vIGF1dGhvclxyXG4kY19fYXV0aG9yLW5hbWU6ICRjX19yZWQtYWxpemFyaW4tY3JpbXNvbjtcclxuJGNfX2F1dGhvci1uYW1lLWludmVyc2U6ICRjX193aGl0ZTtcclxuJGNfX3B1Ymxpc2gtZGF0ZTogJGNfX2dyYXktb3NsbztcclxuXHJcblxyXG5cclxuIiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4gIGRQXHJcbiAgODhcclxuZDg4ODhQIC5kODg4OGIuIC5kODg4OGIuIC5kODg4OGIuXHJcbiAgODggICA4OCcgIGA4OCA4OCcgIGA4OCBZOG9vb29vLlxyXG4gIDg4ICAgODguICAuODggODguICAuODggICAgICAgODhcclxuICBkUCAgIGA4ODg4OFA4IGA4ODg4UDg4IGA4ODg4OFAnXHJcbiAgICAgICAgICAgICAgICAgICAgIC44OFxyXG5cdFx0XHRcdCBkODg4OFBcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5cclxuYm9keSB7XHJcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICBmb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgZm9udC1mYW1pbHk6ICRmX19yb2JvdG87XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgZm9udC1zaXplOiAxcmVtO1xyXG4gIGNvbG9yOiAkY19fYm9keS10ZXh0O1xyXG4gIEBpbmNsdWRlIGZfX2JvZHk7XHJcbiAgbWFyZ2luOiAwIDAgMCAwO1xyXG4gIHBhZGRpbmc6IHJlbS1jYWxjKDU5cHgpIDAgMCAwO1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxuICBtaW4td2lkdGg6IDMwMHB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gICYgKixcclxuICAmICo6YmVmb3JlLFxyXG4gICYgKjphZnRlciB7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI0cHgpO1xyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoOTBweCkgMCAwIDA7XHJcbiAgfVxyXG59XHJcblxyXG4iLCIuYmctbGlnaHQtYmx1ZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNfX2JnLWxpZ2h0LWJsdWU7XHJcbn1cclxuLmJnLXdoaXRlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY19fd2hpdGU7XHJcbn1cclxuXHJcbi5iZy1ncmFkaWVudC1kYXJrLWdyYXkge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjX19zZWN0aW9uLXRyYWlsZXJzLWJhY2tncm91bmQ7XHJcbn1cclxuIiwiQG1peGluIGVsZW1lbnQtYnV0dG9uIHtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xyXG4gIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDRweCk7XHJcbiAgYm9yZGVyLXdpZHRoOiAwO1xyXG4gIGNsZWFyOiBib3RoO1xyXG4gIGNvbG9yOiB3aGl0ZTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgZm9udC1zaXplOiByZW0tY2FsYygxMnB4KTtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIGxldHRlci1zcGFjaW5nOiByZW0tY2FsYyguOXB4KTtcclxuICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMTRweCk7XHJcbiAgbWFyZ2luOiAwIDAgMCAwO1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxuICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgbWluLWhlaWdodDogcmVtLWNhbGMoNDBweCk7XHJcbiAgcGFkZGluZzogMCAyNHB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDEwMG1zIGVhc2U7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgJjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmV5O1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIH1cclxuICAmOmZvY3VzIHtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgfVxyXG4gICY6YWN0aXZlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtncmV5O1xyXG4gIH1cclxuICAmOmRpc2FibGVkLFxyXG4gICYuaXMtLWRpc2FibGVkIHtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJjphY3RpdmUge1xyXG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLmhhcy0taWNvbiB7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDAgMjRweCAwIDQ0cHg7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgLmljb24ge1xyXG4gICAgICBsZWZ0OiAtMTNweDtcclxuICAgICAgbWFyZ2luLWxlZnQ6IC03cHg7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgdG9wOiAtMXB4O1xyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gZWxlbWVudC1idXR0b24tb3V0bGluZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyOiAycHggc29saWQgd2hpdGU7XHJcbiAgY29sb3I6IHdoaXRlO1xyXG4gIHBhZGRpbmc6IDEycHggMjhweCAxMnB4IDI4cHg7XHJcbn1cclxuXHJcbi5lbGVtZW50LWJ1dHRvbi13cmFwcGVyIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBmbG9hdDogbGVmdDtcclxuICBtYXJnaW46IC01cHggLTVweCAtNXB4IC01cHg7XHJcbiAgbWluLXdpZHRoOiAxMDAlO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgei1pbmRleDogMTA7XHJcbiAgLmVsZW1lbnQtYnV0dG9uIHtcclxuICAgIGNsZWFyOiBub25lO1xyXG4gICAgbWFyZ2luOiA1cHggNXB4IDVweCA1cHg7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gYnV0dG9uLXNvbGlkLWRpc2FibGVkIHtcclxuICAmOmRpc2FibGVkLFxyXG4gICYuaXMtLWRpc2FibGVkIHtcclxuICAgICYsXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyxcclxuICAgICY6YWN0aXZlIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzg2OEU5NjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5lbGVtZW50LWJ1dHRvbiB7XHJcbiAgQGluY2x1ZGUgZWxlbWVudC1idXR0b247XHJcbiAgLypcclxuXHRcdHNvbGlkXHJcblx0Ki9cclxuICAmLmlzLS1zb2xpZCB7XHJcbiAgICAmLFxyXG4gICAgJi0tZGVmYXVsdCxcclxuICAgICYtLWJsYWNrIHtcclxuICAgICAgQGluY2x1ZGUgYnV0dG9uLXNvbGlkLWRpc2FibGVkO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcclxuICAgICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xyXG4gICAgICB9XHJcbiAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi0tdHJhbnNwYXJlbnQge1xyXG4gICAgICBAaW5jbHVkZSBidXR0b24tc29saWQtZGlzYWJsZWQ7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcclxuICAgICAgY29sb3I6IGJsYWNrO1xyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCMwMDAwMDAsIDkwJSk7XHJcbiAgICAgIH1cclxuICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oIzAwMDAwMCwgODAlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufSIsIi5idXR0b24tY2xvc2Uge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgYWxpZ24tY29udGVudDogY2VudGVyO1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICB3aWR0aDogNDBweDtcclxuICBoZWlnaHQ6IDQwcHg7XHJcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICBmb250LXNpemU6IDA7XHJcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XHJcbiAgYXBwZWFyYW5jZTogbm9uZTtcclxuICBib3gtc2hhZG93OiBub25lO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBvdXRsaW5lOiBub25lO1xyXG5cclxuICAuaWNvbi1jb250YWluZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NlZDRkYTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICB9XHJcblxyXG4gIC5jbG9zZS1pY29uIHtcclxuXHJcbiAgfVxyXG59XHJcbiIsIi5idXR0b24tbW9yZS1saW5rIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBtYXJnaW46IDAgMCAwIDA7XHJcbiAgcGFkZGluZzogMCAwIDAgMDtcclxuICBmb250LXNpemU6IDFyZW07XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDEuNjMqMTZweCk7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIGNvbG9yOiAkY19fYnJhbmQ7XHJcbiAgdHJhbnNpdGlvbjogYWxsICRhbmltYXRpb24tc3BlZWQtZmFzdCBlYXNlO1xyXG4gICY6aG92ZXIge1xyXG4gICAgY29sb3I6IGRhcmtlbigkY19fYnJhbmQsIDEwJSk7XHJcbiAgICAuaWNvbi1hcnJvdy1yZWQge1xyXG4gICAgICBwYXRoIHtcclxuICAgICAgICBmaWxsOiBkYXJrZW4oJGNfX2JyYW5kLCAxMCUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLmlzLS13aGl0ZSB7XHJcbiAgICBjb2xvcjogJGNfX3doaXRlO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiBkYXJrZW4oJGNfX3doaXRlLCAxNSUpO1xyXG4gICAgICAuaWNvbi1hcnJvdy13aGl0ZSB7XHJcbiAgICAgICAgcGF0aCB7XHJcbiAgICAgICAgICBmaWxsOiBkYXJrZW4oJGNfX3doaXRlLCAxNSUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5pcy0tYmxhY2sge1xyXG4gICAgY29sb3I6ICRjX19oZWFkaW5nLWRhcmtlcjtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjogbGlnaHRlbigkY19faGVhZGluZy1kYXJrZXIsIDE1JSk7XHJcbiAgICAgIC5pY29uLWFycm93LXdoaXRlIHtcclxuICAgICAgICBwYXRoIHtcclxuICAgICAgICAgIGZpbGw6IGxpZ2h0ZW4oJGNfX2hlYWRpbmctZGFya2VyLCAxNSUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5pcy0tc21hbGwge1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxM3B4KTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gIH1cclxuXHJcbiAgJi50ZXh0LXVwcGVyY2FzZSB7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIH1cclxuXHJcbiAgLmljb24tY29udGFpbmVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgd2lkdGg6IDE0cHg7XHJcbiAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICBtYXJnaW46IDAgMCAwIHJlbS1jYWxjKDhweCk7XHJcbiAgfVxyXG59XHJcbiIsIi5idXR0b24tc2hhcmUge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTJweCk7XHJcbiAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDEuODMqMTJweCk7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgbWFyZ2luOiAwIDAgMCBhdXRvO1xyXG4gIHBhZGRpbmc6IDAgMCAwIDA7XHJcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyOiBzb2xpZCAxcHggdHJhbnNwYXJlbnQ7XHJcbiAgY29sb3I6ICRjX193aGl0ZTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNHB4KTtcclxuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygwLjg2KjE0cHgpO1xyXG4gIH1cclxuXHJcbiAgJjpmb2N1cyB7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gIH1cclxuXHJcbiAgJjpob3ZlciB7XHJcbiAgICBvcGFjaXR5OiAuNztcclxuICB9XHJcblxyXG4gIC5pY29uLWNvbnRhaW5lciB7XHJcbiAgICB3aWR0aDogMThweDtcclxuICAgIGhlaWdodDogMjRweDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBtYXJnaW46IDAgcmVtLWNhbGMoOHB4KSAwIDA7XHJcbiAgICAuaWNvbiB7XHJcbiAgICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkBtaXhpbiBjaGVja2JveCgkY2hlY2tib3gtc2VsZWN0b3I6IFwiaW5wdXRbdHlwZT1jaGVja2JveF1cIiwgJGxhYmVsLXNlbGVjdG9yOiBcImxhYmVsXCIpIHtcclxuICAjeyRjaGVja2JveC1zZWxlY3Rvcn0ge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgICYrI3skbGFiZWwtc2VsZWN0b3J9IHtcclxuICAgICAgY29sb3I6IGJsYWNrO1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTZweCk7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDIycHgpO1xyXG4gICAgICBtYXJnaW46IDAgMjVweCAwIDA7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDIycHgpO1xyXG4gICAgICBwYWRkaW5nOiAwIDAgMTJweCAyN3B4O1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHRyYW5zaXRpb246IGFsbCAxMDBtcyBlYXNlO1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgICAgb3ZlcmZsb3c6IGluaXRpYWw7XHJcbiAgICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrO1xyXG4gICAgICAgIGhlaWdodDogMTdweDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDJweDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMTAwbXMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAxMDBtcyBlYXNlO1xyXG4gICAgICAgIHdpZHRoOiAxN3B4O1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xyXG4gICAgICAgIEBpbmNsdWRlIGlzLS1jaGVja2JveC1saXN0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmOm5vdCg6ZGlzYWJsZWQpKyN7JGxhYmVsLXNlbGVjdG9yfSB7XHJcbiAgICAgICY6aG92ZXI6YmVmb3JlLFxyXG4gICAgICAmOmFjdGl2ZTpiZWZvcmUge31cclxuICAgIH1cclxuICAgIC8vY2hlY2tlZCBzdGF0ZVxyXG4gICAgJjpjaGVja2VkKyN7JGxhYmVsLXNlbGVjdG9yfSB7XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4vLi4vaW1hZ2VzL3N2Zy9jaGVjay13aGl0ZS5zdmcnKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDExcHg7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBncmVlbjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy9kaXNhYmxlZCBzdGF0ZVxyXG4gICAgJjpkaXNhYmxlZCsjeyRsYWJlbC1zZWxlY3Rvcn0ge1xyXG4gICAgICBjb2xvcjogbGlnaHRncmV5O1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3JleTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG4gICAgICAgIG9wYWNpdHk6IC4zO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vdXNlZCBmb3IgZmlyc3QgbGFiZWwgaW4gYSBsaXN0IG9mIGNoZWNrYm94ZXMuXHJcbiAgI3skbGFiZWwtc2VsZWN0b3J9Om5vdChbZm9yXSkge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTFweDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBpcy0tY2hlY2tib3gtbGlzdCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi8vIENoZWNrYm94IC0gd3JhcHBlclxyXG4uZWxlbWVudC1jaGVja2JveF9fd3JhcHBlciB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgQGluY2x1ZGUgY2hlY2tib3goKTtcclxuICAuZWxlbWVudC1jaGVja2JveF9fY29udGFpbmVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAmLmlzLS1jaGVja2JveC1saXN0IHtcclxuICAgICAgQGluY2x1ZGUgaXMtLWNoZWNrYm94LWxpc3Q7XHJcbiAgICB9XHJcbiAgfVxyXG59IiwiQG1peGluIGVsZW1lbnQtaW5wdXQtdGV4dCB7XHJcbiAgZm9udC1zaXplOiByZW0tY2FsYygxNnB4KTtcclxufVxyXG5cclxuaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XHJcbiAgJjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcclxuICAmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcclxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIG1hcmdpbjogMDtcclxuICB9XHJcbn1cclxuXHJcbi5lbGVtZW50LWlucHV0IHtcclxuICAmLmlzLS1pbnZhbGlkIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY4Zjg7XHJcbiAgICBib3JkZXItY29sb3I6ICNmZjZiNmI7XHJcbiAgfVxyXG4gICZfX2Rlc2NyaXB0aW9uIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB9XHJcbn1cclxuXHJcbi5lbGVtZW50LWlucHV0LFxyXG5pbnB1dFt0eXBlPVwidGV4dFwiXSxcclxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxyXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXSxcclxuaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLFxyXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXHJcbmlucHV0W3R5cGU9XCJtb250aFwiXSxcclxuaW5wdXRbdHlwZT1cIndlZWtcIl0sXHJcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcclxuaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcclxuaW5wdXRbdHlwZT1cInRlbFwiXSxcclxuaW5wdXRbdHlwZT1cInRpbWVcIl0sXHJcbmlucHV0W3R5cGU9XCJ1cmxcIl0sXHJcbmlucHV0W3R5cGU9XCJjb2xvclwiXSB7XHJcbiAgQGluY2x1ZGUgZWxlbWVudC1pbnB1dC10ZXh0O1xyXG4gIGFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrO1xyXG4gIGJveC1zaGFkb3c6IDA7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBjb2xvcjogYmxhY2s7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgZm9udC1zaXplOiByZW0tY2FsYygxNnB4KTtcclxuICBmb250LXdlaWdodDogNDAwO1xyXG4gIGhlaWdodDogNDBweDtcclxuICBsaW5lLWhlaWdodDogMTtcclxuICBtYXJnaW46IDAgMCAwIDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBwYWRkaW5nOiAxMnB4O1xyXG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gIHRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgJjpyZWFkLW9ubHk6bm90KFtyZWFkLW9ubHk9XCJmYWxzZVwiXSkge1xyXG4gICAgY29sb3I6ICNiMWIxYjE7XHJcbiAgfVxyXG4gICY6Oi1tcy1jbGVhciB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuICAmOm5vdCguaXMtLWludmFsaWQpOmZvY3VzIHtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICBib3JkZXItY29sb3I6ICM5OGEwYTk7XHJcbiAgfVxyXG4gICY6cGxhY2Vob2xkZXIge1xyXG4gICAgY29sb3I6IGJsYWNrO1xyXG4gIH1cclxufSIsIi8qXHJcbjxsYWJlbCBmb3I9XCJpbnB1dFhYXCIgY2xhc3M9XCJlbGVtZW50LWxhYmVsXCI+VGhpcyBpcyBhbiBleGFtcGxlIG9mIGEgbGFiZWwgd2l0aCBsYWJlbCBzdHlsaW5nPC9sYWJlbD5cclxuKi9cclxuXHJcbi5lbGVtZW50LWxhYmVsIHtcclxuICBtYXJnaW46IDAgMCAwIDA7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgcGFkZGluZzogMCAwIDAgMDtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTZweCk7XHJcbiAgY29sb3I6IGJsYWNrO1xyXG4gIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyMnB4KTtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgJitbY2xhc3NePVwiZWxlbWVudC1cIl0ge1xyXG4gICAgbWFyZ2luLXRvcDogOHB4O1xyXG4gIH1cclxufSIsIi8qXHJcbjxhIGhyZWY9XCIjXCIgY2xhc3M9XCJlbGVtZW50LWxpbmsgZWxlbWVudC1saW5rLS1hcnJvd1wiPkZhbmN5IGljb24gbGluazwvYT5cclxuKi9cclxuXHJcbkBtaXhpbiBlbGVtZW50LWxpbmstZGVjb3JhdGlvbiB7XHJcbiAgY29sb3I6IGJsYWNrO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIHRyYW5zaXRpb246IGNvbG9yIDEwMG1zIGVhc2U7XHJcbiAgJjpob3ZlcixcclxuICAmOmFjdGl2ZSB7XHJcbiAgICBjb2xvcjogc3RlZWxibHVlO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGVsZW1lbnQtbGluay0tbm8tZGVjb3JhdGlvbiB7XHJcbiAgQGluY2x1ZGUgZWxlbWVudC1saW5rLWRlY29yYXRpb247XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICY6aG92ZXIsXHJcbiAgJjphY3RpdmUge1xyXG4gICAgY29sb3I6IHN0ZWVsYmx1ZTtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBlbGVtZW50LWxpbmstLWFycm93IHtcclxuICBtYXJnaW4tcmlnaHQ6IDhweDtcclxuICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgcGFkZGluZy1yaWdodDogMjJweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vY2RuLm9ubGluZXdlYmZvbnRzLmNvbS9zdmcvaW1nXzQ0Nzc3My5wbmcnKTtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICAgIGhlaWdodDogMTVweDtcclxuICAgIG1hcmdpbjogMCAwIDAgMTBweDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRyYW5zaXRpb246IG1hcmdpbiAkYW5pbWF0aW9uLXNwZWVkLWZhc3QgZWFzZS1pbi1vdXQ7XHJcbiAgICB3aWR0aDogcmVtLWNhbGMoMjJweCk7XHJcbiAgfVxyXG4gICY6aG92ZXIge1xyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICBtYXJnaW46IDAgMCAwIDVweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5lbGVtZW50LWxpbmsge1xyXG4gIEBpbmNsdWRlIGVsZW1lbnQtbGluay1kZWNvcmF0aW9uO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICYtLWFycm93IHtcclxuICAgIEBpbmNsdWRlIGVsZW1lbnQtbGluay0tYXJyb3c7XHJcbiAgfVxyXG4gICYtLW5vLWRlY29yYXRpb24ge1xyXG4gICAgQGluY2x1ZGUgZWxlbWVudC1saW5rLS1uby1kZWNvcmF0aW9uO1xyXG4gIH1cclxufVxyXG4iLCJAbWl4aW4gZWxlbWVudC1saXN0IHtcclxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbiAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgbGkge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAmK2xpIHtcclxuICAgICAgbWFyZ2luLXRvcDogMTJweDtcclxuICAgIH1cclxuICAgICY+KjpsYXN0LWNoaWxkIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuICAgIGxpIHtcclxuICAgICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDhweDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBlbGVtZW50LWxpc3QtdW5vcmRlcmVkIHtcclxuICBAaW5jbHVkZSBlbGVtZW50LWxpc3QoKTtcclxuICBsaSB7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICB0b3A6IDZweDtcclxuICAgICAgbWFyZ2luOiAwIDAgMCAwO1xyXG4gICAgICB3aWR0aDogOHB4O1xyXG4gICAgICBoZWlnaHQ6IDhweDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGVsZW1lbnQtbGlzdC1vcmRlcmVkIHtcclxuICBAaW5jbHVkZSBlbGVtZW50LWxpc3QoKTtcclxuICBjb3VudGVyLXJlc2V0OiBsaTtcclxuICBsaSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6IGNvdW50ZXIobGkpXCIuIFwiO1xyXG4gICAgICBjb3VudGVyLWluY3JlbWVudDogbGk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vL2xpc3RzXHJcbi5lbGVtZW50LWxpc3Qge1xyXG4gIC8vdW5vcmRlcmVkIHVsXHJcbiAgJi0tdW5vcmRlcmVkIHtcclxuICAgIEBpbmNsdWRlIGVsZW1lbnQtbGlzdC11bm9yZGVyZWQ7XHJcbiAgfVxyXG4gIC8vb3JkZXJlZCBvbFxyXG4gICYtLW9yZGVyZWQge1xyXG4gICAgQGluY2x1ZGUgZWxlbWVudC1saXN0LW9yZGVyZWQ7XHJcbiAgfVxyXG59IiwiQG1peGluIHJhZGlvKCRyYWRpby1zZWxlY3RvcjogXCJlbGVtZW50LXJhZGlvXCIsICRsYWJlbC1zZWxlY3RvcjogXCIuZWxlbWVudC1sYWJlbFwiKSB7XHJcbiAgI3skcmFkaW8tc2VsZWN0b3J9IHtcclxuICAgIGxlZnQ6IDJweDtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDNweDtcclxuICAgICYrI3skbGFiZWwtc2VsZWN0b3J9IHtcclxuICAgICAgY29sb3I6IGRhcmtncmV5O1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNHB4KTtcclxuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjRweCk7XHJcbiAgICAgIG1hcmdpbjogMCAyNXB4IDAgMDtcclxuICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoMjJweCk7XHJcbiAgICAgIHBhZGRpbmc6IDAgMCAxMnB4IDI3cHg7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgdHJhbnNpdGlvbjogYWxsIDEwMG1zIGVhc2U7XHJcbiAgICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrO1xyXG4gICAgICAgIGhlaWdodDogMThweDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDFweDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMTAwbXMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAxMDBtcyBlYXNlO1xyXG4gICAgICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgICB9XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgaGVpZ2h0OiA4cHg7XHJcbiAgICAgICAgbGVmdDogNXB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDZweDtcclxuICAgICAgICB3aWR0aDogOHB4O1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xyXG4gICAgICAgIEBpbmNsdWRlIGlzLS1yYWRpby1saXN0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAvLyY6bm90KDpkaXNhYmxlZCkrI3skbGFiZWwtc2VsZWN0b3J9IHt9XHJcbiAgICAvL2NoZWNrZWQgc3RhdGVcclxuICAgICY6Y2hlY2tlZCsjeyRsYWJlbC1zZWxlY3Rvcn0ge1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBncmVlbjtcclxuICAgICAgfVxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy9kaXNhYmxlZCBzdGF0ZVxyXG4gICAgJjpkaXNhYmxlZCsjeyRsYWJlbC1zZWxlY3Rvcn0ge1xyXG4gICAgICBvcGFjaXR5OiAwLjM7XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gaXMtLXJhZGlvLWxpc3Qge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4vLyBSYWRpb1xyXG4uZWxlbWVudC1yYWRpb19fd3JhcHBlciB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgLmVsZW1lbnQtcmFkaW8ge1xyXG4gICAgbGVmdDogMnB4O1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogM3B4O1xyXG4gIH1cclxuICAvL3VzZWQgZm9yIGZpcnN0IGxhYmVsIGluIGEgbGlzdCBvZiByYWRpb2VzLlxyXG4gIC5lbGVtZW50LWxhYmVsOm5vdChbZm9yXSkge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTFweDtcclxuICB9XHJcbiAgQGluY2x1ZGUgcmFkaW8oXCIuZWxlbWVudC1yYWRpb1wiLCBcIi5lbGVtZW50LWxhYmVsXCIpO1xyXG4gICYuaXMtLXJhZGlvLWxpc3Qge1xyXG4gICAgQGluY2x1ZGUgaXMtLXJhZGlvLWxpc3Q7XHJcbiAgfVxyXG59IiwiQG1peGluIGVsZW1lbnQtc2VsZWN0IHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgJjpiZWZvcmUsXHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgd2lkdGg6IDA7XHJcbiAgICBoZWlnaHQ6IDA7XHJcbiAgICBib3JkZXI6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiA1cHg7XHJcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDVweDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAxMHB4O1xyXG4gICAgei1pbmRleDogMTtcclxuICB9XHJcbiAgJjpiZWZvcmUge1xyXG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCBibGFjayB0cmFuc3BhcmVudDtcclxuICAgIGJvdHRvbTogMjBweDtcclxuICB9XHJcbiAgJjphZnRlciB7XHJcbiAgICBib3JkZXItY29sb3I6IGJsYWNrIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xyXG4gICAgYm90dG9tOiA1cHg7XHJcbiAgfVxyXG4gICZfX3NlbGVjdCB7XHJcbiAgICBhcHBlYXJhbmNlOiBub25lO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcclxuICAgIGNvbG9yOiBibGFjaztcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTRweCk7XHJcbiAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjhweCk7XHJcbiAgICBwYWRkaW5nOiAwIDEycHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluO1xyXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgICY6Zm9jdXM6Oi1tcy12YWx1ZSB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xyXG4gICAgICBjb2xvcjogYmxhY2s7XHJcbiAgICB9XHJcbiAgICAmOjotbXMtZXhwYW5kIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmVsZW1lbnQtc2VsZWN0IHtcclxuICBAaW5jbHVkZSBlbGVtZW50LXNlbGVjdCgpO1xyXG4gICYuaXMtLXNob3J0IHtcclxuICAgIG1heC13aWR0aDogMTkxcHg7XHJcbiAgfVxyXG59IiwiLypcclxuICA8dGV4dGFyZWEgcGxhY2Vob2xkZXI9XCJQbGFjZWhvbGRlclwiIGNsYXNzPVwiZWxlbWVudC1pbnB1dC10ZXh0YXJlYVwiPjwvdGV4dGFyZWE+XHJcbiovXHJcblxyXG4vL3RleHRhcmVhXHJcbi5lbGVtZW50LWlucHV0LXRleHRhcmVhIHtcclxuICBhcHBlYXJhbmNlOiBub25lO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XHJcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICNBREI1QkQ7XHJcbiAgYm94LXNoYWRvdzogMDtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIGNvbG9yOiAjMDAwMDAwO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgaGVpZ2h0OiBhdXRvO1xyXG4gIG1hcmdpbjogMCAwIDAgMDtcclxuICBtaW4taGVpZ2h0OiA0MnB4O1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgcGFkZGluZzogMTBweCAxM3B4O1xyXG4gIHJlc2l6ZTogdmVydGljYWw7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDEwMG1zIGVhc2U7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgJi5pcy0taW52YWxpZCB7XHJcbiAgICBib3JkZXItY29sb3I6ICNFNzlFQTE7XHJcbiAgfVxyXG4gICY6cmVhZC1vbmx5Om5vdChbcmVhZC1vbmx5PVwiZmFsc2VcIl0pIHtcclxuICAgIGNvbG9yOiAjYjFiMWIxO1xyXG4gIH1cclxuICAmOjotbXMtY2xlYXIge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbiAgJjpub3QoLmlzLS1pbnZhbGlkKTpmb2N1cyB7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgYm9yZGVyLWNvbG9yOiAjNzY3RDg1O1xyXG4gIH1cclxuICAmOnBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiAjQTJBMkEyO1xyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge31cclxufVxyXG5cclxuLnRoZW1lLS1saWdodCAuZWxlbWVudC1pbnB1dC10ZXh0YXJlYSB7XHJcbiAgYm9yZGVyLWNvbG9yOiAjQjVCQkMxO1xyXG59IiwiQG1peGluIGRvdHRlZExpc3Qge1xyXG4gIGNvbG9yOiBpbmhlcml0O1xyXG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gICZfX2l0ZW0ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAmKyYge1xyXG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdGVybSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBvcmRlcjogMTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgYm90dG9tOiAzLjZweDtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IGRvdHRlZCBibGFjaztcclxuICAgICAgbWFyZ2luLWxlZnQ6IDNweDtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fZGVzY3JpcHRpb24ge1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgb3JkZXI6IDI7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSB1cCkge1xyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG4gICAgJl9fdGVybSB7XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fZGVzY3JpcHRpb24ge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDNweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5kb3R0ZWQtbGlzdCB7XHJcbiAgQGluY2x1ZGUgZG90dGVkTGlzdCgpO1xyXG59IiwiLmljb24ge1xyXG4gIC8vIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgJi5pY29uLWFycm93LXJlZCB7XHJcbiAgICB3aWR0aDogMTRweDtcclxuICAgIGhlaWdodDogMTBweDtcclxuICB9XHJcblxyXG4gICYuaWNvbi1hcnJvdy13aGl0ZSB7XHJcbiAgICB3aWR0aDogMTRweDtcclxuICAgIGhlaWdodDogMTBweDtcclxuICB9XHJcblxyXG4gICYuaWNvbi1hcnJvdy1ibGFjayB7XHJcbiAgICB3aWR0aDogMTRweDtcclxuICAgIGhlaWdodDogMTBweDtcclxuICB9XHJcblxyXG4gICYuaWNvbi1hcnJvdy1yaWdodC1ibGFjayB7XHJcbiAgICB3aWR0aDogMjBweDtcclxuICAgIGhlaWdodDogMTNweDtcclxuICB9XHJcblxyXG4gICYuaWNvbi1hcnJvdy1yaWdodC1ibGFjay1zbWFsbCB7XHJcbiAgICB3aWR0aDogMTRweDtcclxuICAgIGhlaWdodDogMTBweDtcclxuICB9XHJcblxyXG4gICYuaWNvbi1hcnJvdy1yaWdodC1ncmV5LXNtYWxsIHtcclxuICAgIHdpZHRoOiAxNHB4O1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gIH1cclxuXHJcbiAgJi5pY29uLWFycm93LWNoZXZyb24tZG93biB7XHJcbiAgICB3aWR0aDogMTRweDtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIHBhdGgge1xyXG4gICAgICBmaWxsOiAkY19fd2hpdGU7XHJcbiAgICB9XHJcbiAgICAmLmlzLS1ncmF5IHtcclxuICAgICAgcGF0aCB7XHJcbiAgICAgICAgZmlsbDogIzlkYTVhYTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5pY29uLWdyYWRlIHtcclxuICAgIHdpZHRoOiAyNHB4O1xyXG4gICAgaGVpZ2h0OiAyNHB4O1xyXG4gIH1cclxuXHJcbiAgJi5pY29uLWdyYWRlLWluYWN0aXZlIHtcclxuICAgIHdpZHRoOiAyNHB4O1xyXG4gICAgaGVpZ2h0OiAyNHB4O1xyXG4gIH1cclxuXHJcbiAgJi5pY29uLWNsb3NlLWJsYWNrIHtcclxuICAgIHdpZHRoOiAxNHB4O1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gIH1cclxuXHJcbiAgJi5pY29uLXNlYXJjaC1sYXJnZSB7XHJcbiAgICB3aWR0aDogMzdweDtcclxuICAgIGhlaWdodDogMzdweDtcclxuXHJcbiAgICAmLmlzLS13aGl0ZSB7XHJcbiAgICAgIHBhdGgge1xyXG4gICAgICAgIGZpbGw6ICRjX193aGl0ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuaXMtLWdyYXkge1xyXG4gICAgICBwYXRoIHtcclxuICAgICAgICBmaWxsOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4yKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5pY29uLXNlYXJjaCB7XHJcbiAgICB3aWR0aDogMTlweDtcclxuICAgIGhlaWdodDogMTlweDtcclxuICB9XHJcblxyXG4gICYuaWNvbi1jbG9jayB7XHJcbiAgICB3aWR0aDogMTFweDtcclxuICAgIGhlaWdodDogMTFweDtcclxuICB9XHJcbn1cclxuIiwiZmlndXJlIHtcclxuICAmLmltYWdlIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIG1hcmdpbjogMCAycHggMCAxcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAkY19fd2hpdGU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogYXV0bztcclxuICB9XHJcblxyXG4gICYuYWxpZ24tbGVmdCB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICB9XHJcblxyXG4gICYuYWxpZ24tcmlnaHQge1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gIH1cclxuXHJcbiAgJi5pbWFnZSBpbWcge1xyXG4gICAgbWFyZ2luOiAwIDAgMCAwO1xyXG4gIH1cclxuXHJcbiAgJi5pbWFnZSBmaWdjYXB0aW9uIHtcclxuICAgIEBleHRlbmQgLmltYWdlLWNhcHRpb247XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gIH1cclxufVxyXG4iLCIuYWQtY29udGFpbmVyIHtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICYrLmFkLWNvbnRhaW5lciB7XHJcbiAgICBtYXJnaW46IDIwcHggYXV0byAwIGF1dG87XHJcbiAgfVxyXG5cclxuICAmLW91dGVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG4gIH1cclxuXHJcbiAgJi1zZWN0aW9uIHtcclxuICAgIFxyXG4gICAgJi50b3Age1xyXG4gICAgICBwYWRkaW5nOiAyMHB4IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJi5ib3R0b20ge1xyXG4gICAgICBwYWRkaW5nOiAyMHB4IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJi5saXN0LXRvcCB7XHJcbiAgICAgIHBhZGRpbmc6IDIwcHggMDtcclxuICAgIH1cclxuXHJcbiAgICAmLmxpc3QtYm90dG9tIHtcclxuICAgICAgcGFkZGluZzogMjBweCAwO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAmLmJsdWUge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY19fYmctbGlnaHQtYmx1ZTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICAmIC5hZC1kZXNrdG9wIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAmIC5hZC1tb2JpbGUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgJiAuYWQtZGVza3RvcCB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG4gIFxyXG4gICAgJiAuYWQtbW9iaWxlIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qXHJcbiAgJl9fYm94IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZWUyZTY7XHJcbiAgICBib3JkZXI6IDVweCBzb2xpZCByZ2JhKDM0LCAzNywgNDIsIDAuNik7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB9XHJcblxyXG4gIGltZyB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gIH1cclxuXHJcbiAgJi52ZXJ0aWNhbC1iYW5uZXIge1xyXG4gICAgbWluLWhlaWdodDogNDUwcHg7XHJcbiAgfVxyXG5cclxuICAmLndpZGUtc2t5c2NyYXBlciB7XHJcbiAgICB3aWR0aDogMTYwcHg7XHJcbiAgICBoZWlnaHQ6IDYwMHB4O1xyXG4gIH1cclxuXHJcbiAgJi5oYWxmLXBhZ2Uge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXgtd2lkdGg6IDMwMHB4O1xyXG4gICAgLy8gJjo6YWZ0ZXJ7XHJcbiAgICAvLyAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgLy8gICBkaXNwbGF5OiBibG9jaztcclxuICAgIC8vICAgcGFkZGluZy1ib3R0b206IDIwMCU7XHJcbiAgICAvLyB9XHJcbiAgfVxyXG5cclxuICAmLmxhcmdlLWxlYWRlcmJvYXJkIHtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgbWF4LXdpZHRoOiA5ODBweDtcclxuICAgICY6OmFmdGVye1xyXG4gICAgICBjb250ZW50OiAnJztcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyNC40OSU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICovXHJcbiBcclxuICYuY29tcG9uZW50LWNvbnRlbnRfX3RleHQtYWR7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbi10b3A6IDI1cHg7XHJcbiB9XHJcblxyXG59XHJcbiIsIiRieWdnYS1hY2NvcmRpb24tbmF2aWdhdGlvbi1uYW1lc3BhY2U6ICdieWdnYS1hY2NvcmRpb24tbmF2aWdhdGlvbic7XHJcbkBtaXhpbiBieWdnYS1hY2NvcmRpb24tbmF2aWdhdGlvbiB7XHJcbiAgLiN7JGJ5Z2dhLWFjY29yZGlvbi1uYXZpZ2F0aW9uLW5hbWVzcGFjZX0ge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcclxuICAgIHVsIHtcclxuICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gICAgICBwYWRkaW5nOiAwIDAgMCAwO1xyXG4gICAgICBtYXJnaW46IDAgMCAwIDA7XHJcbiAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgfVxyXG4gICAgbGkge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIG1hcmdpbjogMCAwIDAgMDtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICAgICZfX2xpbmsge1xyXG4gICAgICBmbG9hdDogbGVmdDtcclxuICAgIH1cclxuICAgIC8vaWYgbGkgaXMgcGFyZW50LCBsaW5rIGFuZCBidXR0b24gaXMgd3JhcHBlZCBieSBsaW5rLXdyYXBwZXIuXHJcbiAgICAubGluay13cmFwcGVyIHtcclxuICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB9XHJcbiAgfVxyXG59IiwiQGltcG9ydCBcIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ieWdnYS1hY2NvcmRpb24tbmF2aWdhdGlvbi9zcmMvYnlnZ2EtYWNjb3JkaW9uLW5hdmlnYXRpb25cIjtcclxuJGJ5Z2dhLWFjY29yZGlvbi1uYXZpZ2F0aW9uLW5hbWVzcGFjZTogJ2FjY29yZGlvbi1uYXZpZ2F0aW9uJztcclxuQGluY2x1ZGUgYnlnZ2EtYWNjb3JkaW9uLW5hdmlnYXRpb247XHJcbiRhY2NvcmRpb24tbmF2aWdhdGlvbjogJGJ5Z2dhLWFjY29yZGlvbi1uYXZpZ2F0aW9uLW5hbWVzcGFjZTtcclxuJGFjY29yZGlvbi1uYXZpZ2F0aW9uX19iYWNrZ3JvdW5kOiAjZjFmMWYxO1xyXG4uYWNjb3JkaW9uLW5hdmlnYXRpb24ge1xyXG4gIGJhY2tncm91bmQ6IHRvbWF0bztcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgcGFkZGluZzogMCAwIDAgMDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdG9wOiAtMXB4O1xyXG4gICY+dWwrdWwge1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxuICB9XHJcbiAgbGkge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjY29yZGlvbi1uYXZpZ2F0aW9uX19iYWNrZ3JvdW5kO1xyXG4gICAgJitsaSB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDAgMDtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fbGluayB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIG1pbi1oZWlnaHQ6IDUwcHg7XHJcbiAgICBwYWRkaW5nOiAxNnB4IDIwcHg7XHJcbiAgfVxyXG4gIC8vaWYgbGkgaXMgcGFyZW50LCBsaW5rIGFuZCBidXR0b24gaXMgd3JhcHBlZCBieSBsaW5rLXdyYXBwZXIuXHJcbiAgLmxpbmstd3JhcHBlciB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xyXG4gIH1cclxuICAvL2xldmVsc1xyXG4gIC8vbGV2ZWwgb25lXHJcbiAgJj51bD5saSB7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4wNXMgZWFzZTtcclxuICB9XHJcbiAgLy9sZXZlbCB0d29cclxuICAmPnVsPmxpPnVsPmxpIHtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjA1cyBlYXNlO1xyXG4gICAgYSB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcclxuICAgIH1cclxuICB9XHJcbiAgLy9sZXZlbCB0aHJlZVxyXG4gICY+dWw+bGk+dWw+bGk+dWw+bGkge1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMDVzIGVhc2U7XHJcbiAgICBhIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAmPnVsPmxpLmlzLS1hY3RpdmUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRhY2NvcmRpb24tbmF2aWdhdGlvbl9fYmFja2dyb3VuZCwgNSUpO1xyXG4gICAgJj51bD5saSxcclxuICAgICY+dWw+bGk+dWw+bGkge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGFjY29yZGlvbi1uYXZpZ2F0aW9uX19iYWNrZ3JvdW5kLCA1JSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vYnV0dG9uXHJcbiAgJl9fYnV0dG9uIHtcclxuICAgIGFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzdGVlbGJsdWU7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogMThweCBhdXRvO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMCAwIDAgMDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDEwMG1zIGVhc2U7XHJcbiAgICB3aWR0aDogNTBweDtcclxuICB9XHJcbiAgLy9zdGF0ZXNcclxuICBsaTpub3QoLmlzLS1hY3RpdmUpPnVsIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG4gIC5pcy0tYWN0aXZlPi5saW5rLXdyYXBwZXIsXHJcbiAgLnByZS0tYWN0aXZlPi5saW5rLXdyYXBwZXIge1xyXG4gICAgLiN7JGFjY29yZGlvbi1uYXZpZ2F0aW9ufV9fYnV0dG9uIHtcclxuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKVxyXG4gICAgfVxyXG4gIH1cclxuICAuaXMtLWFjdGl2ZS5wcmUtLWFjdGl2ZT4ubGluay13cmFwcGVyIHtcclxuICAgIC4jeyRhY2NvcmRpb24tbmF2aWdhdGlvbn1fX2J1dHRvbiB7XHJcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5hcnRpY2xlLWxpc3Qge1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgcGFkZGluZzogMCAwIDAgMDtcclxuICBtYXJnaW46IHJlbS1jYWxjKDI4cHgpIDAgMCAwO1xyXG5cclxuICAmLXdyYXBwZXIge1xyXG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9faXRlbSB7XHJcbiAgICAmKy5hcnRpY2xlLWxpc3RfX2l0ZW0ge1xyXG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDI0cHgpIDAgMCAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fbGluayB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIC5hcnRpY2xlLWxpc3RfX3RpdGxlIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxOHB4KTtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDEuNDQqMThweCk7XHJcbiAgICBjb2xvcjogJGNfX2FydGljbGUtbGlzdC10aXRsZTtcclxuICAgIG1hcmdpbjogcmVtLWNhbGMoNHB4KSAwIDAgMDtcclxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xyXG4gICAgLXdlYmtpdC1saW5lLWNsYW1wOiAyO1xyXG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XHJcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoNHB4KSAwIDAgMDtcclxuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMHB4KTtcclxuICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDEuNCoyMHB4KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX2JvZHkge1xyXG4gICAgcGFkZGluZzogMCAwIDAgMXJlbTtcclxuICB9XHJcblxyXG4gIGltZyB7XHJcbiAgICBtYXgtd2lkdGg6IDExMHB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBmbGV4LXNocmluazogMDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgbWF4LXdpZHRoOiAxNDBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5nZW5yZS1sYWJlbCB7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEycHgpO1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBjb2xvcjogJGNfX2FydGljbGUtbGlzdC1jYXRlZ29yeTtcclxuICB9XHJcbn1cclxuXHJcbi5zZWN0aW9uLWFydGljbGUtbGlzdCB7XHJcbiAgLmJ1dHRvbi1tb3JlLWxpbmsge1xyXG4gICAgbWFyZ2luOiByZW0tY2FsYygzMnB4KSAwIDAgMDtcclxuICB9XHJcbiAgLmNlbGwrLmNlbGwgIHtcclxuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDU2cHgpO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcclxuICAgICAgJjpudGgtY2hpbGQoMikge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHhsYXJnZSkge1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcbi5zZWFyY2gtcmVzdWx0cyB7XHJcbiAgLmFydGljbGUtbGlzdCB7XHJcbiAgICBtYXJnaW46IDAgMCAwIDA7XHJcbiAgfVxyXG59XHJcbiIsIi5hdXRob3Ige1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAmLW5hbWUge1xyXG4gICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMS42MyoxNnB4KTtcclxuICAgIG1hcmdpbjogMCAwIDAgMDtcclxuICAgIGEge1xyXG4gICAgICBjb2xvcjogJGNfX2F1dGhvci1uYW1lO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiBkYXJrZW4oJGNfX2F1dGhvci1uYW1lLCAxMCUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmFydGljbGVUeXBlIHtcclxuICAgICAgY29sb3I6ICRjX19hdXRob3ItbmFtZS1pbnZlcnNlO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLWltYWdlIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIHdpZHRoOiA0OHB4O1xyXG4gICAgaGVpZ2h0OiA0OHB4O1xyXG4gIH1cclxuICAmLWNvbnRlbnQge1xyXG4gICAgJi5oYXMtLWltYWdlIHtcclxuICAgICAgbWFyZ2luOiAwIDAgMCAxcmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAucHVibGlzaC1kYXRlIHtcclxuICAgIGNvbG9yOiAkY19fcHVibGlzaC1kYXRlO1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNHB4KTtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMS43MSoxNHB4KTtcclxuICAgIG1hcmdpbjogMCAwIDAgMDtcclxuICB9XHJcblxyXG4gICYuaXMtLWludmVyc2Uge1xyXG4gICAgLmF1dGhvci1uYW1lIGF7XHJcbiAgICAgIGNvbG9yOiAkY19fYXV0aG9yLW5hbWUtaW52ZXJzZTtcclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6IGRhcmtlbigkY19fYXV0aG9yLW5hbWUtaW52ZXJzZSwgMTAlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIuYmlsbGJvYXJkIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAwO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDcwJTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY19fYmxhY2s7XHJcbiAgICAvL2JhY2tncm91bmQ6ICMyNDI3MmI7XHJcbiAgICBtaW4taGVpZ2h0OiAzNzVweDtcclxuICBcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0Mi4xODc1JTtcclxuICAgIH1cclxuICBcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodmlld01heCkge1xyXG4gICAgICBtaW4taGVpZ2h0OiA2NzVweDtcclxuICAgIH1cclxuICBcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodmlld01heCkge1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogNjc1cHg7XHJcbiAgICB9XHJcbiAgXHJcbiAgICAmLXdyYXBwZXIge1xyXG4gICAgICAmLmhhcy0tc2xpZGVyIHtcclxuICAgICAgICAuYmlsbGJvYXJkIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zbGljay1zbGlkZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkY19fYmxhY2s7IH1cclxuICBcclxuICAgICAgICAuc2xpY2stcHJldiwgLnNsaWNrLW5leHQge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNfX3doaXRlO1xyXG4gICAgICAgICAgei1pbmRleDogOTA7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICB3aWR0aDogNDZweDtcclxuICAgICAgICAgIGhlaWdodDogNDZweDtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEzcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMjJweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnNsaWNrLXByZXYge1xyXG4gICAgICAgICAgbGVmdDogOHB4O1xyXG4gICAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDNweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnNsaWNrLW5leHQge1xyXG4gICAgICAgICAgcmlnaHQ6IDhweDtcclxuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgXHJcbiAgICAmX19hc3BlY3QtcmF0aW8ge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjX19ibGFjaztcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogODB2dztcclxuICBcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgIGhlaWdodDogOTB2dztcclxuICAgICAgfVxyXG4gIFxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KDQ3NXB4KSB7XHJcbiAgICAgICAgaGVpZ2h0OiA2MHZ3O1xyXG4gICAgICB9XHJcbiAgXHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNjcwcHgpIHtcclxuICAgICAgICBoZWlnaHQ6IDY1dnc7XHJcbiAgICAgIH1cclxuICBcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgIGhlaWdodDogNDMuMTM0N3Z3O1xyXG4gICAgICB9XHJcbiAgXHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxNDhweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjMDAwIDAsIHJnYmEoMCwgMCwgMCwgMCUpIDEwMCUpO1xyXG4gICAgICAgIHotaW5kZXg6IDQ7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi50eXBlLS1hcnRpY2xlIHtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0Mi4xMzQ3JTtcclxuICAgICAgfVxyXG4gICAgICAuaGVyby1pbWFnZSB7XHJcbiAgICAgICAgJl9fb3V0ZXItYmFja2dyb3VuZCB7XHJcbiAgICAgICAgICBtYXgtd2lkdGg6IDEzMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh2aWV3TWF4KSB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDY2MHB4O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDY2MHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgXHJcbiAgICAmLm5vLS1pbWFnZSB7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjX19iZy1oZXJvLW5vLWltYWdlO1xyXG4gICAgICAuaGVyby1jb250ZW50IHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIH1cclxuICBcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh2aWV3TWF4KSB7XHJcbiAgICAgICAgbWluLWhlaWdodDogMzgwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgXHJcbiAgLmhlcm8taW1hZ2Uge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICB6LWluZGV4OiAzO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIFxyXG4gICAgJl9fZ3JhZGllbnQge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiBmaXQtY29udGVudDtcclxuICAgICAgbWluLWhlaWdodDogMTAwJTtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgfVxyXG4gIFxyXG4gICAgJl9faW1hZ2Uge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgei1pbmRleDogMTtcclxuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiAnb2JqZWN0LWZpdDogY292ZXI7JztcclxuICBcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIFxyXG4gICAgJl9fb3V0ZXItYmFja2dyb3VuZCB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgbWF4LXdpZHRoOiAxNjAwcHg7XHJcbiAgXHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICB3aWR0aDogMjUlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzAwMCAwLCByZ2JhKDAsIDAsIDAsIDAlKSAxMDAlKTtcclxuICAgICAgICB6LWluZGV4OiA0O1xyXG4gICAgICB9XHJcbiAgXHJcbiAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICB3aWR0aDogMjUlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCAjMDAwIDAsIHJnYmEoMCwgMCwgMCwgMCUpIDEwMCUpO1xyXG4gICAgICAgIHotaW5kZXg6IDQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICBcclxuICAgICZfX2lubmVyLWJhY2tncm91bmQge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIC8vYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZyxyZ2JhKDM2LCAzOSwgNDMsIDApIDUwJSxyZ2JhKDM2LCAzOSwgNDMsIDEpKTtcclxuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZyxyZ2JhKDAsIDAsIDAsIDApIDYwJSxyZ2JhKDAsIDAsIDAsIDEpKTtcclxuICAgICAgei1pbmRleDogNjtcclxuICAgICAgbWluLWhlaWdodDogMTMwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIC5idXR0b24tcGxheS10cmFpbGVyLXBsYWNlaG9sZGVyIHtcclxuICAgIHdpZHRoOiAxOTNweDtcclxuICAgIGhlaWdodDogNTJweDtcclxuICAgIG1hcmdpbi10b3A6IDM0cHg7XHJcbiAgfSIsIi5oZXJvLWNvbnRlbnQge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBsZWZ0OiAwO1xyXG4gIHRvcDogMDtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgei1pbmRleDogNjtcclxuICBjb2xvcjogJGNfX3doaXRlO1xyXG5cclxuICAmLWxpbmsge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgfVxyXG5cclxuICAubW92aWUtaW5mb3JtYXRpb24ge1xyXG4gICAgLy8gbWFyZ2luOiA0NXZ3IDAgMCAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDYzcHgpO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAvLyBtYXJnaW46IDIwdncgMCAwIDA7XHJcbiAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMjA4cHgpO1xyXG4gICAgfVxyXG5cclxuICAgICYtY29udGFpbmVyIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgXHJcbiAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYyg0MHB4KTtcclxuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDQwcHgpO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMjRweCk7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMjRweCk7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoNDBweCk7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoNDBweCk7ICAgXHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoeHhsYXJnZSkge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMTVweCk7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMTVweCk7ICAgXHJcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDUwcHgpO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxNTBweCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBoMSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNDBweCk7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxLjI1KjQwcHgpO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIC8vd2lkdGg6IG1heC1jb250ZW50OyAvLyBCdWdmaXggZm9yIFNhZmFyaS4gQnJlYWtzIHRoZSBoZWFkbGluZSB3aXRob3V0IHRoaXMuXHJcbiAgICAgIG1heC13aWR0aDogODgzcHg7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg1NHB4KTtcclxuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMS4yMio1NHB4KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX21ldGEtaW5mbyB7XHJcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoMjRweCkgMCAwIDA7XHJcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDA7XHJcbiAgICAgIGNvbG9yOiAkY19faGVyby1nZW5yZTtcclxuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNHB4KTtcclxuICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDEuNzEqMTRweCk7XHJcblxyXG4gICAgICBsaSB7XHJcbiAgICAgICAgaGVpZ2h0OiAyMXB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgIGhlaWdodDogMzRweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zcGFuIHtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiBpbml0aWFsO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQoKSkge1xyXG4gICAgICAgICAgbWFyZ2luOiAwIHJlbS1jYWxjKDhweCkgMCAwO1xyXG4gICAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoOXB4KTtcclxuICAgICAgICAgIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xyXG4gICAgICAgICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcclxuICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMTUpO1xyXG5cclxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNDApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIGNvbG9yOiAkY19fd2hpdGU7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0cHgpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxLjQyKjI0cHgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHZpZXdNYXgpIHtcclxuICAgICAgLy8gbWFyZ2luOiAzNThweCAwIDAgMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi50eXBlLS1hcnRpY2xlIHtcclxuXHJcbiAgLmJ1dHRvbi1wbGF5LXRyYWlsZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDAuOTczNXJlbTtcclxuICAgIGJvdHRvbTogMi41cmVtO1xyXG4gICAgei1pbmRleDogMTA7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50ICh4eHhsYXJnZSkge1xyXG4gICAgICBib3R0b206IDE1MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgZG93bikge1xyXG4gICAgbWluLWhlaWdodDogNDc1cHg7XHJcbiAgfVxyXG59XHJcblxyXG4udHlwZS0tc3RhcnQge1xyXG4gIC5idXR0b24tcGxheS10cmFpbGVyIHtcclxuICAgIG1hcmdpbjogcmVtLWNhbGMoMjRweCkgMCAwIDA7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoMzRweCkgMCAwIDA7XHJcbiAgICB9XHJcblxyXG4gIH1cclxufVxyXG5cclxuLm5vLS1pbWFnZSB7XHJcbiAgLmhlcm8tY29udGVudCB7XHJcbiAgICAubW92aWUtaW5mb3JtYXRpb24tY29udGFpbmVyIHtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoeHh4bGFyZ2UpIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoNTBweCk7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDE1MHB4KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLm1vdmllLWluZm9ybWF0aW9uIHtcclxuICAgICAgLy8gbWFyZ2luOiA0NXZ3IDAgMCAwO1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIC8vIG1hcmdpbjogNHZ3IDAgMCAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5idXR0b24tcGxheS10cmFpbGVyIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgbWFyZ2luOiAwIDAgMCAwO1xyXG4gIHBhZGRpbmc6IDExcHggMTFweCAxMXB4IDExcHg7XHJcbiAgZm9udC1zaXplOiByZW0tY2FsYygxOHB4KTtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICBsaW5lLWhlaWdodDogMTtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNfX2JyYW5kO1xyXG4gIGJvcmRlcjogc29saWQgMXB4IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICBjb2xvcjogJGNfX3doaXRlO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICB0cmFuc2l0aW9uOiBhbGwgLjE1cyBlYXNlO1xyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICBtaW4td2lkdGg6IDE4NnB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMjVweDtcclxuICAgIHBhZGRpbmc6IDEzcHggMjRweCAxM3B4IDI0cHg7XHJcbiAgfVxyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiOTFmMWI7XHJcbiAgfVxyXG5cclxuICAuaWNvbi1jb250YWluZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICB3aWR0aDogMjRweDtcclxuICAgIGhlaWdodDogMjRweDtcclxuICAgIG1hcmdpbjogMCAwIDAgMDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgbWFyZ2luOiAwIHJlbS1jYWxjKDE2cHgpIDAgMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC50aXRsZSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgIGZsZXgtZ3JvdzogMDtcclxuICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5hcnRpY2xlLWNhcmQge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNfX3doaXRlO1xyXG4gIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICBib3gtc2hhZG93OiAwIDFweCA2cHggMCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcblxyXG4gICYtbGluayB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgZmxleDogMSAwIGF1dG87XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgLmFydGljbGUtY2FyZC10aXRsZSB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICYtaW1nLXdyYXBwZXIge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDA7XHJcbiAgICBwYWRkaW5nOiAzMS41Nzg5JSAwIDMxLjU3ODklIDA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIH1cclxuICAmLWltZyB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAzcHg7XHJcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogM3B4O1xyXG4gICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICBmb250LWZhbWlseTogJ29iamVjdC1maXQ6IGNvdmVyOyc7XHJcbiAgfVxyXG4gICYtYmctaW1nIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcclxuICB9XHJcblxyXG4gICYtY29udGVudCB7XHJcbiAgICBmbGV4OiAxIDEgYXV0bztcclxuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDI0cHgpIDFyZW0gcmVtLWNhbGMoMzZweCkgMXJlbTtcclxuICAgIG1pbi1oZWlnaHQ6IDE0MXB4O1xyXG4gICAgcCB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoOHB4KSAwIDAgMDtcclxuICAgICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjZweCk7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICYtdGl0bGUge1xyXG4gICAgbWFyZ2luOiByZW0tY2FsYyg4cHgpIDAgMCAwO1xyXG4gICAgY29sb3I6ICRjX19jYXJkLXRpdGxlO1xyXG4gICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDEuNjMqMTZweCk7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIG1heC1oZWlnaHQ6IDE0MXB4O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xyXG4gICAgLXdlYmtpdC1saW5lLWNsYW1wOiAyO1xyXG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwcHgpO1xyXG4gICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMS41KjIwcHgpO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLWZvb3RlciB7XHJcbiAgICBtYXJnaW46IHJlbS1jYWxjKDIwcHgpIDAgMCAwO1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgIH1cclxuICB9XHJcbiAgJi1zZXJ2aWNlIHtcclxuICAgIG1hcmdpbjogMCAwIDAgMDtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTJweCk7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoNnB4KTtcclxuICAgIGNvbG9yOiAkY19fZGFyay1ncmF5O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMzQsIDIzNiwgMjM5LCAwLjYpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAmKy5hcnRpY2xlLWNhcmQtc2VydmljZSB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDAgcmVtLWNhbGMoNHB4KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jYXRlZ29yeS1sYWJlbCB7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDExcHgpO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBjb2xvcjogJGNfX2NhcmQtY2F0ZWdvcnk7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTJweCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBvdmVycmlkZXMgZm9yIGltYWdlIGNhcmRcclxuICAmLnR5cGUtLWltYWdlLWNhcmQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgLmFydGljbGUtY2FyZC1saW5rIHtcclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMCksIHJnYmEoMCwgMCwgMCwgMC4wMikgOSUsIHJnYmEoMCwgMCwgMCwgMC4wNikgMTklLCByZ2JhKDAsIDAsIDAsIDAuMTIpIDI4JSwgcmdiYSgwLCAwLCAwLCAwLjIpIDM4JSwgcmdiYSgwLCAwLCAwLCAwLjI5KSA0OCUsIHJnYmEoMCwgMCwgMCwgMC4zOSkgNTclLCByZ2JhKDAsIDAsIDAsIDAuNSkgNjYlLCByZ2JhKDAsIDAsIDAsIDAuNjEpIDc0JSwgcmdiYSgwLCAwLCAwLCAwLjcxKSA4MSUsIHJnYmEoMCwgMCwgMCwgMC44KSA4OCUsIHJnYmEoMCwgMCwgMCwgMC44OCkgOTMlLCByZ2JhKDAsIDAsIDAsIDAuOTUpIDk3JSwgcmdiYSgwLCAwLCAwLCAwLjk4KSA5OSUsICRjX19ibGFjayk7XHJcbiAgICAgIH1cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgLmFydGljbGUtY2FyZC10aXRsZSB7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5hcnRpY2xlLWNhcmQtaW1nLXdyYXBwZXIge1xyXG4gICAgICB6LWluZGV4OiAxO1xyXG4gICAgICBwYWRkaW5nLXRvcDogMzAlO1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMzAlO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgICB9XHJcbiAgICAuYXJ0aWNsZS1jYXJkLXRpdGxlIHtcclxuICAgICAgY29sb3I6ICRjX19pbWFnZS1jYXJkLXRleHQ7XHJcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoNHB4KSAwIDAgMDtcclxuICAgIH1cclxuICAgIC5jYXRlZ29yeS1sYWJlbCB7XHJcbiAgICAgIGNvbG9yOiAkY19faW1hZ2UtY2FyZC10ZXh0O1xyXG4gICAgfVxyXG4gICAgLmFydGljbGUtY2FyZC1jb250ZW50IHtcclxuICAgICAgei1pbmRleDogMjtcclxuICAgICAgY29sb3I6ICRjX19pbWFnZS1jYXJkLXRleHQ7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgIGJvdHRvbTogMDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIHBhZGRpbmc6IDAgcmVtLWNhbGMoMTZweCkgcmVtLWNhbGMoMjRweCkgcmVtLWNhbGMoMTZweCk7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICBwYWRkaW5nOiAwIHJlbS1jYWxjKDMycHgpIHJlbS1jYWxjKDMycHgpIHJlbS1jYWxjKDMycHgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuYXJ0aWNsZS1jYXJkLXNlcnZpY2Uge1xyXG4gICAgICBjb2xvcjogJGNfX3doaXRlO1xyXG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCNlYWVjZWYsIDAuMik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubG9nbyB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblxyXG4gICAgJi5uZXRmbGl4IHtcclxuICAgICAgaGVpZ2h0OiAzNXB4O1xyXG4gICAgICBsZWZ0OiAycHg7XHJcbiAgICAgIHRvcDogN3B4O1xyXG4gICAgfVxyXG4gICAgJi5oYm8ge1xyXG4gICAgICBoZWlnaHQ6IDM1cHg7XHJcbiAgICAgIGxlZnQ6IDlweDtcclxuICAgICAgdG9wOiA3cHg7XHJcbiAgICB9XHJcbiAgICAmLnZpYXBsYXkge1xyXG4gICAgICBoZWlnaHQ6IDM1cHg7XHJcbiAgICAgIGxlZnQ6IDhweDtcclxuICAgICAgdG9wOiA3cHg7XHJcbiAgICB9XHJcbiAgICAmLnN2dHBsYXkge1xyXG4gICAgICBoZWlnaHQ6IDM1cHg7XHJcbiAgICAgIGxlZnQ6IDhweDtcclxuICAgICAgdG9wOiA3cHg7XHJcbiAgICB9XHJcbiAgICAmLmNtb3JlIHtcclxuICAgICAgaGVpZ2h0OiAzNXB4O1xyXG4gICAgICBsZWZ0OiA4cHg7XHJcbiAgICAgIHRvcDogN3B4O1xyXG4gICAgfVxyXG4gICAgJi5kaXNuZXlwbHVzIHtcclxuICAgICAgd2lkdGg6IDEwMHB4O1xyXG4gICAgICBsZWZ0OiA4cHg7XHJcbiAgICAgIHRvcDogN3B4O1xyXG4gICAgfVxyXG4gICAgJi5kaXNjb3ZlcnlwbHVzIHtcclxuICAgICAgaGVpZ2h0OiAzNXB4O1xyXG4gICAgICBsZWZ0OiA4cHg7XHJcbiAgICAgIHRvcDogN3B4O1xyXG4gICAgfVxyXG4gICAgJi5hcHBsZXR2cGx1cyB7XHJcbiAgICAgIHdpZHRoOiA4MHB4O1xyXG4gICAgICBsZWZ0OiA4cHg7XHJcbiAgICAgIHRvcDogN3B4O1xyXG4gICAgfVxyXG4gICAgJi5hbWF6b25wcmltZSB7XHJcbiAgICAgIHdpZHRoOiAxMDBweDtcclxuICAgICAgbGVmdDogOHB4O1xyXG4gICAgICB0b3A6IDdweDtcclxuICAgIH1cclxuICAgICYucGFyYW1vdW50cGx1cyB7XHJcbiAgICAgIHdpZHRoOiA4MHB4O1xyXG4gICAgICBsZWZ0OiA4cHg7XHJcbiAgICAgIHRvcDogN3B4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi50eXBlLS1pbWFnZS1jYXJkIHtcclxuICAgIC5sb2dvIHtcclxuICAgICAgJi5uZXRmbGl4IHtcclxuICAgICAgICBoZWlnaHQ6IDcwcHg7XHJcbiAgICAgICAgbGVmdDogLTJweDtcclxuICAgICAgICB0b3A6IDdweDtcclxuICAgICAgfVxyXG4gICAgICAmLmhibyB7XHJcbiAgICAgICAgaGVpZ2h0OiA3MHB4O1xyXG4gICAgICAgIGxlZnQ6IDlweDtcclxuICAgICAgICB0b3A6IDdweDtcclxuICAgICAgfVxyXG4gICAgICAmLnZpYXBsYXkge1xyXG4gICAgICAgIGhlaWdodDogNzBweDtcclxuICAgICAgICBsZWZ0OiA3cHg7XHJcbiAgICAgICAgdG9wOiA3cHg7XHJcbiAgICAgIH1cclxuICAgICAgJi5zdnRwbGF5IHtcclxuICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgbGVmdDogN3B4O1xyXG4gICAgICAgIHRvcDogN3B4O1xyXG4gICAgICB9XHJcbiAgICAgICYuY21vcmUge1xyXG4gICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICBsZWZ0OiA4cHg7XHJcbiAgICAgICAgdG9wOiA3cHg7XHJcbiAgICAgIH1cclxuICAgICAgJi5kaXNuZXlwbHVzIHtcclxuICAgICAgd2lkdGg6IDEyMHB4O1xyXG4gICAgICBsZWZ0OiA4cHg7XHJcbiAgICAgIHRvcDogN3B4O1xyXG4gICAgICB9XHJcbiAgICAgICYuZGlzY292ZXJ5cGx1cyB7XHJcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgIGxlZnQ6IDhweDtcclxuICAgICAgICB0b3A6IDdweDtcclxuICAgICAgfVxyXG4gICAgICAmLmFwcGxldHZwbHVzIHtcclxuICAgICAgICB3aWR0aDogMTAwcHg7XHJcbiAgICAgICAgbGVmdDogOHB4O1xyXG4gICAgICAgIHRvcDogN3B4O1xyXG4gICAgICB9XHJcbiAgICAgICYuYW1hem9ucHJpbWUge1xyXG4gICAgICAgIHdpZHRoOiAxMDBweDtcclxuICAgICAgICBsZWZ0OiA4cHg7XHJcbiAgICAgICAgdG9wOiA3cHg7XHJcbiAgICAgIH1cclxuICAgICAgJi5wYXJhbW91bnRwbHVzIHtcclxuICAgICAgICB3aWR0aDogODBweDtcclxuICAgICAgICBsZWZ0OiA4cHg7XHJcbiAgICAgICAgdG9wOiA3cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiJGNhcmQtZ3JvdXAtZ3V0dGVyLWRlc2t0b3A6IDMwcHg7XHJcbiRjYXJkLWdyb3VwLWd1dHRlci1tb2JpbGU6IDEwcHg7XHJcblxyXG4uYXJ0aWNsZS1jYXJkLWdyb3VwIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgZmxleC13cmFwOiB3cmFwO1xyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICBtYXJnaW46IHJlbS1jYWxjKDMycHgpIHJlbS1jYWxjKC01cHgpIDAgcmVtLWNhbGMoLTVweCk7XHJcblxyXG4gIC5hcnRpY2xlLWNhcmQge1xyXG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gI3skY2FyZC1ncm91cC1ndXR0ZXItbW9iaWxlfSk7XHJcbiAgICBtYXJnaW46IDAgcmVtLWNhbGMoNXB4KSByZW0tY2FsYygxNnB4KSByZW0tY2FsYyg1cHgpO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAjeyRjYXJkLWdyb3VwLWd1dHRlci1kZXNrdG9wfSk7XHJcbiAgICAgIG1hcmdpbjogMCByZW0tY2FsYygxNXB4KSByZW0tY2FsYygzMHB4KSByZW0tY2FsYygxNXB4KTtcclxuICAgIH1cclxuICAgICYudHlwZS0taW1hZ2UtY2FyZCB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gI3skY2FyZC1ncm91cC1ndXR0ZXItZGVza3RvcH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICBtYXJnaW46IHJlbS1jYWxjKDMycHgpIHJlbS1jYWxjKC0xNXB4KSAwIHJlbS1jYWxjKC0xNXB4KTtcclxuICB9XHJcbn1cclxuIiwiLmNvbXBvbmVudC1jb250ZW50IHt9XHJcblxyXG4uY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyxcclxuLm1jZUNvbnRlbnRCb2R5IHtcclxuICBtYXgtd2lkdGg6IDgxMHB4O1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gICY+KjpmaXJzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gIH1cclxuICAmPio6bGFzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxuICAmLnRoZW1lLS1saWdodCB7XHJcbiAgICAmLFxyXG4gICAgKiB7XHJcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xyXG4gICAgfVxyXG4gIH1cclxuICAvKlxyXG5cdFx0bGlua3NcclxuXHQqL1xyXG4gIGEge1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBjb2xvcjogJGNfX2JyYW5kO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIH1cclxuICAmPiorYSB7XHJcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIH1cclxuICB9XHJcbiAgJj5hK2Ege1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICB9XHJcbiAgYVtyZWwqPVwiZXh0ZXJuYWxcIl0ge1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgfVxyXG4gIC8qXHJcblx0XHRwYXJhZ3JhcGhzXHJcblx0Ki9cclxuICBwIHtcclxuICAgIEBpbmNsdWRlIGZfX3RleHQ7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbjogMCAwIDAgMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgJisqIHtcclxuICAgICAgbWFyZ2luLXRvcDogMjVweDtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmK3Age1xyXG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAqK3Age1xyXG4gICAgbWFyZ2luLXRvcDogMjBweDtcclxuICB9XHJcbiAgLypcclxuXHRcdHByZWFtYmxlXHJcblx0Ki9cclxuICAucHJlYW1ibGUge1xyXG4gICAgQGluY2x1ZGUgZl9fdGV4dC1wcmVhbWJsZTtcclxuICAgICYrKixcclxuICAgICYrcCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDE5cHg7XHJcbiAgICB9XHJcbiAgICAmKy5wcmVhbWJsZSB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDE5cHg7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAmKyosXHJcbiAgICAgICYrcCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTlweDtcclxuICAgICAgfVxyXG4gICAgICAmKy5wcmVhbWJsZSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTlweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBoMSsucHJlYW1ibGUge1xyXG4gICAgbWFyZ2luLXRvcDogMjBweDtcclxuICB9XHJcbiAgLypcclxuXHRcdHRleHQtbGFyZ2VcclxuXHQqL1xyXG4gIC50ZXh0LS1sYXJnZSB7XHJcbiAgICBAaW5jbHVkZSBmX190ZXh0LWxhcmdlO1xyXG4gICAgbWF4LXdpZHRoOiA2ODBweDtcclxuICAgICYrKixcclxuICAgICYrcCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDE5cHg7XHJcbiAgICB9XHJcbiAgICAmKy50ZXh0LS1sYXJnZSB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDE5cHg7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAmKyosXHJcbiAgICAgICYrcCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTlweDtcclxuICAgICAgfVxyXG4gICAgICAmKy50ZXh0LS1sYXJnZSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTlweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAvKlxyXG5cdFx0aW1hZ2VzXHJcblx0Ki9cclxuICAmPmltZyxcclxuICAmPnBpY3R1cmUge1xyXG4gICAgbWF4LXdpZHRoOiA3MDBweDtcclxuICB9XHJcbiAgcCBpbWcsXHJcbiAgcCBwaWN0dXJlIHtcclxuICAgIG1hcmdpbjogMjVweCAwIDAgMDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIG1hcmdpbjogMzVweCAwIDAgMDtcclxuICAgIH1cclxuICB9XHJcbiAgcCAuYWxpZ24tcmlnaHQsXHJcbiAgcCAuYWxpZ24tbGVmdCxcclxuICAqKy5hbGlnbi1yaWdodCxcclxuICAqKy5hbGlnbi1sZWZ0IHtcclxuICAgICYsXHJcbiAgICBpbWcsXHJcbiAgICBwaWN0dXJlIHtcclxuICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgIH1cclxuICB9XHJcbiAgaW1nLFxyXG4gIHBpY3R1cmUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgLy8gT3ZlcnJpZGUgaW5saW5lIENTUyBsZWZ0IG92ZXIgaW4gYXJ0aWNsZSBjb250ZW50XHJcbiAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAwcHg7IC8vIE92ZXJyaWRlIGlubGluZSBDU1MgbGVmdCBvdmVyIGluIGFydGljbGUgY29udGVudFxyXG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDsgLy8gT3ZlcnJpZGUgaW5saW5lIENTUyBsZWZ0IG92ZXIgaW4gYXJ0aWNsZSBjb250ZW50XHJcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDsgLy8gT3ZlcnJpZGUgaW5saW5lIENTUyBsZWZ0IG92ZXIgaW4gYXJ0aWNsZSBjb250ZW50XHJcbiAgICAmKyo6bm90KC5pbWFnZS1jYXB0aW9uKSB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAmKyo6bm90KC5pbWFnZS1jYXB0aW9uKSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAqK2ltZyxcclxuICAqK3BpY3R1cmUge1xyXG4gICAgbWFyZ2luLXRvcDogMjRweDtcclxuICB9XHJcbiAgaHIraW1nLFxyXG4gIGhyK3BpY3R1cmUge1xyXG4gICAgbWFyZ2luLXRvcDogODBweDtcclxuICB9XHJcbiAgLypcclxuXHRcdG1lZGlhLCBpbWFnZXMgZXRjLi4uXHJcblx0Ki9cclxuICAubWVkaWEtY29udGFpbmVyIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBpbWcsXHJcbiAgICBwaWN0dXJlIHtcclxuICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgIH1cclxuICAgICYrKiB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAmKyoge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICAgIH1cclxuICAgICAgJi5hbGlnbi1yaWdodCxcclxuICAgICAgJi5hbGlnbi1sZWZ0IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgICAgIG1heC13aWR0aDogNTAlO1xyXG4gICAgICAgICYrKiB7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxOHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmLmFsaWduLXJpZ2h0IHtcclxuICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XHJcbiAgICAgIH1cclxuICAgICAgJi5hbGlnbi1sZWZ0IHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLmltYWdlLWNhcHRpb24ge1xyXG4gICAgY29sb3I6ICM0YTUwNTg7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0cHgpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDEuNzEqMTRweCk7XHJcbiAgICBtYXJnaW4tdG9wOiA4cHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHN0cm9uZyB7XHJcbiAgICAgIGNvbG9yOiAjMGEwYTBhO1xyXG4gICAgfVxyXG4gICAgJisqIHtcclxuICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgIH1cclxuICB9XHJcbiAgLypcclxuXHRcdGxpc3RzXHJcblx0Ki9cclxuICB1bCxcclxuICBvbCB7XHJcbiAgICBtYXgtd2lkdGg6IDY4MHB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICAmLFxyXG4gICAgJiAqIHtcclxuICAgICAgQGluY2x1ZGUgZl9fdGV4dDtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIG1heC13aWR0aDogNzAwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gICordWwsXHJcbiAgKitvbCxcclxuICB1bCsqLFxyXG4gIG9sKyoge1xyXG4gICAgbWFyZ2luLXRvcDogMjBweDtcclxuICB9XHJcbiAgdWwge1xyXG4gICAgQGluY2x1ZGUgZWxlbWVudC1saXN0LXVub3JkZXJlZDtcclxuICB9XHJcbiAgb2wge1xyXG4gICAgQGluY2x1ZGUgZWxlbWVudC1saXN0LW9yZGVyZWQ7XHJcbiAgfVxyXG4gIC8qXHJcblx0XHR2aWRlb1xyXG5cdCovXHJcbiAgLm1vdmllLXdyYXBwZXIge1xyXG4gICAgcGFkZGluZy10b3A6IDU2LjI1JTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgJj4qOmZpcnN0LWNoaWxkIHtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGlmcmFtZSB7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbiAgLypcclxuXHRcdGhlYWRpbmdzXHJcblx0Ki9cclxuICBoMSB7XHJcbiAgICBAaW5jbHVkZSBmX19oMTtcclxuICB9XHJcbiAgaDIge1xyXG4gICAgQGluY2x1ZGUgZl9faDI7XHJcbiAgfVxyXG4gIGgzIHtcclxuICAgIEBpbmNsdWRlIGZfX2gzO1xyXG4gIH1cclxuICBoNCxcclxuICBoNSB7XHJcbiAgICBAaW5jbHVkZSBmX19oNDtcclxuICB9XHJcbiAgLy9oMVxyXG4gIGgxIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgICYrKiB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDE0cHg7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTRweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAvL2gyIC0+IGg1XHJcbiAgaDIsXHJcbiAgaDMsXHJcbiAgaDQsXHJcbiAgaDUgLmZfX2gyLFxyXG4gIC5mX19oMyxcclxuICAuZl9faDQsXHJcbiAgLmZfX2g1IHtcclxuICAgIGNvbG9yOiAkY19faGVhZGluZy1kYXJrZXI7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICAmKyoge1xyXG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgfVxyXG4gICAgJixcclxuICAgICorJiB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDI0cHg7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAmLFxyXG4gICAgICAqKyYge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDI0cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgIGgyKyoge1xyXG4gICAgICBtYXJnaW4tdG9wOiAxMnB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAvKlxyXG5cdFx0bWlzY1xyXG4gICovXHJcbiAgaHIge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAjY2VkNGRhO1xyXG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XHJcbiAgICBib3JkZXItdG9wLXN0eWxlOiBub25lO1xyXG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IG5vbmU7XHJcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IG5vbmU7XHJcbiAgfVxyXG4gIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljLFxyXG4gICYrLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMge1xyXG4gICAgbWFyZ2luLXRvcDogMjBweDtcclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICYrLmNvbXBvbmVudC1jb250ZW50LWdlbmVyaWMge1xyXG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIkYnlnZ2EtY29va2llLWRpc2NsYWltZXItbmFtZXNwYWNlOiAnYnlnZ2EtY29va2llLWRpc2NsYWltZXInO1xyXG5AbWl4aW4gYnlnZ2EtY29va2llLWRpc2NsYWltZXIge1xyXG5cdC4jeyRieWdnYS1jb29raWUtZGlzY2xhaW1lci1uYW1lc3BhY2V9IHtcclxuXHRcdHBvc2l0aW9uOiBmaXhlZDtcclxuXHRcdGJvdHRvbTogMDtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0bWFyZ2luOiAwIGF1dG87XHJcblx0XHRwYWRkaW5nOiAyMHB4O1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG5cdFx0bGVmdDogNTAlO1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdCZfX2NvbnRlbnQge1xyXG5cdFx0XHRtYXJnaW46IDAgYXV0bztcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdFx0ZmxleC1mbG93OiBjb2x1bW4gd3JhcDtcclxuXHRcdH1cclxuXHRcdCZfX2luZm8ge1xyXG5cdFx0XHRmbGV4OiAxO1xyXG5cdFx0XHQmKy5jb29raWUtZGlzY2xhaW1lcl9fYnV0dG9uLXdyYXBwZXIge31cclxuXHRcdH1cclxuXHRcdCZfX2J1dHRvbiB7XHJcblx0XHRcdCYtd3JhcHBlciB7XHJcblx0XHRcdFx0ZmxleDogMTtcclxuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59IiwiJGJ5Z2dhLWNvb2tpZS1kaXNjbGFpbWVyLW5hbWVzcGFjZTogJ2Nvb2tpZS1kaXNjbGFpbWVyJztcclxuQGluY2x1ZGUgYnlnZ2EtY29va2llLWRpc2NsYWltZXI7XHJcbiRjb29raWUtZGlzY2xhaW1lcjogJGJ5Z2dhLWNvb2tpZS1kaXNjbGFpbWVyLW5hbWVzcGFjZTtcclxuJGNvb2tpZS1kaXNjbGFpbWVyX19iYWNrZ3JvdW5kOiAkY19fY29va2llLWRpc2NsYWltZXItYmc7XHJcbiRjb29raWUtZGlzY2xhaW1lcl9fbWF4V2lkdGg6IDEwMCU7XHJcbi5jb29raWUtZGlzY2xhaW1lciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvb2tpZS1kaXNjbGFpbWVyX19iYWNrZ3JvdW5kO1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxuICB6LWluZGV4OiAxMDA7XHJcblx0cGFkZGluZzogcmVtLWNhbGMoMzJweCk7XHJcblx0Ym90dG9tOiAwO1xyXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XHJcblx0XHRib3R0b206MDtcclxuXHR9XHJcblx0Jl9fY29udGVudCB7XHJcbiAgICBtYXgtd2lkdGg6ICRjb29raWUtZGlzY2xhaW1lcl9fbWF4V2lkdGg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgZmxleC1mbG93OiB3cmFwO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0fVxyXG5cdCZfX2luZm8ge1xyXG4gICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNnB4KTtcclxuICAgIGNvbG9yOiAkY19fd2hpdGU7XHJcbiAgICBmbGV4OiAwIDEgYXV0bztcclxuICAgIHAge1xyXG4gICAgICBtYXJnaW46IDAgMCAwIDA7XHJcbiAgICAgICYgKyBwIHtcclxuICAgICAgICBtYXJnaW46IC41cmVtIDAgMCAwO1xyXG4gICAgICB9XHJcbiAgICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiAkY19fd2hpdGU7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHRcdCYrLmNvb2tpZS1kaXNjbGFpbWVyX19idXR0b24td3JhcHBlciB7XHJcbiAgICAgIGZsZXg6IDAgMSBhdXRvO1xyXG4gICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMzhweCk7XHJcbiAgICB9XHJcblx0fVxyXG5cdCZfX2J1dHRvbiB7XHJcbiAgICBAaW5jbHVkZSBlbGVtZW50LWJ1dHRvbjtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdFx0Ym9yZGVyOiBzb2xpZCAycHggJGNfX3doaXRlO1xyXG5cdFx0aGVpZ2h0OiA1MHB4O1xyXG5cdFx0Y29sb3I6ICRjX193aGl0ZTtcclxuXHRcdG1hcmdpbjogMjRweCAwIDAgMDtcclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNfX2JyYW5kLCAxMCUpO1xyXG5cdFx0fVxyXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcclxuXHRcdFx0bWFyZ2luOiAwIDAgMCAwO1xyXG5cdFx0fVxyXG5cdFx0Ji13cmFwcGVyIHtcclxuXHJcbiAgICB9XHJcblx0fVxyXG59XHJcbiIsIi5wYW5lbCB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY19fd2hpdGU7XHJcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCAkY19fZ3JheS1hdGhlbnM7XHJcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCAxcHggJGNfX2dyYXktYXRoZW5zO1xyXG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAkY19fZ3JheS1hdGhlbnM7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiBhdXRvO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDYzcHg7XHJcbiAgbGVmdDogMDtcclxuICB0b3A6IC0xMDAwcHg7XHJcbiAgdHJhbnNpdGlvbjogdG9wIDJzIGVhc2UgMHM7XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICB0b3A6IDkwcHg7XHJcbiAgfVxyXG5cclxuICAmLmlzLS1vcGVuIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuXHJcbiAgLyogUGFuZWwgdG9wICovXHJcbiAgJl9fdG9wIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cclxuICAgIC5idXR0b24tY2xvc2Uge1xyXG4gICAgICByaWdodDogMTBweDtcclxuICAgICAgdG9wOiAwcHg7XHJcbiAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodmlld01heCkge1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19tYWluIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg3MHB4KSAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgJl9faGVhZGVyIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgfVxyXG4gICZfX3RpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjZweCk7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxLjM4ICogMjZweCk7XHJcbiAgICBjb2xvcjogJGNfX2hlYWRpbmctZGFya2VyO1xyXG4gICAgbWFyZ2luOiAwIDAgMCAwO1xyXG5cclxuICAgICZfX2xpbmsge1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJl9fcHJlYW1ibGUge1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxOHB4KTtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMS41NiAqIDE4cHgpO1xyXG4gICAgbWFyZ2luOiAwLjVyZW0gMCAwIDA7XHJcbiAgfVxyXG4gICZfX2ZlYXR1cmVkIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgd2lkdGg6IDYwNXB4O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNfX2JnLWxpZ2h0LWJsdWU7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAmX19pbm5lciB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgJl9fbGluayB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB9XHJcbiAgICAmX19oZWFkaW5nIHtcclxuICAgICAgbWFyZ2luOiAwIDAgMCAwO1xyXG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI2cHgpO1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDEuMzggKiAyNnB4KTtcclxuICAgICAgY29sb3I6ICRjX19oZWFkaW5nLWRhcmtlcjtcclxuICAgIH1cclxuICAgICZfX2ltYWdlIHtcclxuICAgICAgbWFyZ2luOiByZW0tY2FsYygyNHB4KSAwIDAgMDtcclxuICAgICAgYm94LXNoYWRvdzogMCAyMHB4IDMwcHggLTEwcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xyXG4gICAgfVxyXG4gICAgJl9fY29udGVudCB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgLmNhdGVnb3J5LWxpc3Qge1xyXG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgcGFkZGluZzogMCAwIDAgMDtcclxuICAgICAgICBtYXJnaW46IDJweCAwIDAgMDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgJl9faXRlbSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2cHgpO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDEuNjMgKiAxNnB4KTtcclxuICAgICAgICAgIGNvbG9yOiAkY19fZ3JheS1vc2xvO1xyXG5cclxuICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICBjb250ZW50OiBcIiwgXCI7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDRweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIycHgpO1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDEuNzMgKiAyMnB4KTtcclxuICAgICAgY29sb3I6ICRjX19oZWFkaW5nLWRhcmtlcjtcclxuICAgICAgbWFyZ2luOiAxcmVtIDAgMCAwO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh2aWV3TWF4KSB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYnV0dG9uLW1vcmUtbGluayB7XHJcbiAgICBtYXJnaW46IDJyZW0gMCAwIDA7XHJcbiAgfVxyXG4gIC5idXR0b24tbmV4dC1sZXZlbCB7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gIH1cclxuICAvKiBQYW5lbCB0b3AgbmF2aWdhdGlvbiAqL1xyXG4gIC50b3AtbmF2IHtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBwYWRkaW5nOiAwIDAgMCByZW0tY2FsYygzMHB4KTtcclxuICAgIG1hcmdpbjogMCAwIDAgMDtcclxuICAgIGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggJGNfX2dyYXktYXRoZW5zO1xyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHJcbiAgICAgICYgKyAudG9wLW5hdl9faXRlbSB7XHJcbiAgICAgICAgbWFyZ2luOiAxcmVtIDAgMCAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19saW5rLFxyXG4gICAgJl9fYnV0dG9uIHtcclxuICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgY29sb3I6ICRjX19oZWFkaW5nLWRhcmtlcjtcclxuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMHB4KTtcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxLjUgKiAyMHB4KTtcclxuXHJcbiAgICAgICYuaXMtLWFjdGl2ZSB7XHJcbiAgICAgICAgY29sb3I6ICRjX19oZWFkaW5nLWRhcmtlcjtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi5pcy0taW5hY3RpdmUge1xyXG4gICAgICAgIGNvbG9yOiBsaWdodGVuKCRjX19oZWFkaW5nLWRhcmtlciwgNzAlKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgY29sb3I6ICRjX19oZWFkaW5nLWRhcmtlcjtcclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIFBhbmVsIHN1YiBuYXZpZ2F0aW9uICovXHJcbiAgLnN1Yi1uYXYge1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIHBhZGRpbmc6IDAgMCAwIHJlbS1jYWxjKDMwcHgpO1xyXG4gICAgbWFyZ2luOiAwIDAgMCAwO1xyXG4gICAgYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCAkY19fZ3JheS1hdGhlbnM7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICZfX2l0ZW0ge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblxyXG4gICAgICAmICsgLnN1Yi1uYXZfX2l0ZW0ge1xyXG4gICAgICAgIG1hcmdpbjogMXJlbSAwIDAgMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fbGluayB7XHJcbiAgICAgIGNvbG9yOiAkY19faGVhZGluZy1kYXJrZXI7XHJcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxLjYzICogMTZweCk7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgIGNvbG9yOiAkY19faGVhZGluZy1kYXJrZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYuaXMtLW9wZW4ge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLmZvcm0ge1xyXG4gIC5mb3JtLWVsZW1lbnQtd3JhcHBlciB7XHJcbiAgICBwYWRkaW5nOiAwIDAgMjBweCAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIH1cclxuICAuZWxlbWVudC1mb3JtLWRlc2NyaXB0aW9uIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB9XHJcbiAgLmFsaWduLWJvdHRvbSB7XHJcbiAgICAuZm9ybS1lbGVtZW50LXdyYXBwZXIge1xyXG4gICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcclxuICAgIH1cclxuICB9XHJcbn0iLCIvLyB2YWxpZGF0aW9uIHRleHRcclxuLnZhbGlkYXRpb24tdGV4dCB7XHJcbiAgJi0tZXJyb3Ige1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgIC8vZGlzcGxheTogbm9uZTtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGNvbG9yOiAjZTAzMTMxO1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNHB4KTtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICBsaW5lLWhlaWdodDogMS41NztcclxuICAgIHBhZGRpbmctdG9wOiA4cHg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbn1cclxuXHJcbi8vIHNob3cgLyBoaWRlXHJcbi5pcy0taW52YWxpZH4udmFsaWRhdGlvbi10ZXh0LS1lcnJvcixcclxuLm5vdC0taGlkZGVuLnZhbGlkYXRpb24tdGV4dC0tZXJyb3Ige1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbn0iLCIuZm9ybS1uZXdzbGV0dGVyIHtcclxuICBtYXJnaW46IHJlbS1jYWxjKDI0cHgpIDAgMCAwO1xyXG4gICZfX3JvdyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2lucHV0IHtcclxuICAgICZbdHlwZT1cInRleHRcIl0ge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xyXG4gICAgICBjb2xvcjogJGNfX3doaXRlO1xyXG4gICAgICBib3JkZXI6IHNvbGlkIDFweCAkYmxhY2s7XHJcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEycHgpIHJlbS1jYWxjKDEycHgpIHJlbS1jYWxjKDEycHgpIHJlbS1jYWxjKDEycHgpO1xyXG4gICAgICAmOm5vdCguaXMtLWludmFsaWQpOmZvY3Vze1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJsYWNrO1xyXG4gICAgICAgIG91dGxpbmU6IDA7XHJcbiAgICAgIH1cclxuICAgICAgJjo6cGxhY2Vob2xkZXIge1xyXG4gICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4yNSk7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDM0M3B4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3N1Ym1pdCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNfX2JyYW5kO1xyXG4gICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIGNvbG9yOiAkY19fd2hpdGU7XHJcbiAgICBib3JkZXI6IHNvbGlkIDFweCB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICBtYXJnaW46IDFyZW0gMCAwIDA7XHJcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxMHB4KSByZW0tY2FsYygxMnB4KSByZW0tY2FsYygxMHB4KSByZW0tY2FsYygxMnB4KTtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICAgICAgbWluLXdpZHRoOiAxNDNweDtcclxuICAgICAgbWFyZ2luOiAwIDAgMCByZW0tY2FsYyg4cHgpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tY29sb3ItbGl0ZXJhbHMsIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCBnbG9iYWxcbi8vLy9cblxuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8vIEZvbnQgc2l6ZSBhdHRyaWJ1dGUgYXBwbGllZCB0byBgPGh0bWw+YCBhbmQgYDxib2R5PmAuIFdlIHVzZSAxMDAlIGJ5IGRlZmF1bHQgc28gdGhlIHZhbHVlIGlzIGluaGVyaXRlZCBmcm9tIHRoZSB1c2VyJ3MgYnJvd3NlciBzZXR0aW5ncy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHdpZHRoIG9mIHlvdXIgc2l0ZS4gVXNlZCBieSB0aGUgZ3JpZCB0byBkZXRlcm1pbmUgcm93IHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTIwMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBhbGwgdHlwZS4gYCRnbG9iYWwtbGluZWhlaWdodGAgaXMgMjRweCB3aGlsZSBgJGdsb2JhbC1mb250LXNpemVgIGlzIDE2cHhcbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbGluZWhlaWdodDogMS41ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JzIHVzZWQgZm9yIGJ1dHRvbnMsIGNhbGxvdXRzLCBsaW5rcywgZXRjLiBUaGVyZSBtdXN0IGFsd2F5cyBiZSBhIGNvbG9yIGNhbGxlZCBgcHJpbWFyeWAuXG4vLy8gQHR5cGUgTWFwXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIHByaW1hcnk6ICMxNzc5YmEsXG4gIHNlY29uZGFyeTogIzc2NzY3NixcbiAgc3VjY2VzczogIzNhZGI3NixcbiAgd2FybmluZzogI2ZmYWUwMCxcbiAgYWxlcnQ6ICNjYzRiMzcsXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbGlnaHQgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGxpZ2h0LWdyYXk6ICNlNmU2ZTYgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBtZWRpdW0gZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJG1lZGl1bS1ncmF5OiAjY2FjYWNhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgZGFyayBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZGFyay1ncmF5OiAjOGE4YThhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgYmxhY2sgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibGFjazogIzBhMGEwYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIHdoaXRlIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kd2hpdGU6ICNmZWZlZmUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1mb250LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIExpc3RcbiRib2R5LWZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vLyBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSBhbnRpYWxpYXNlZCB0eXBlLCB1c2luZyB0aGUgYC13ZWJraXQtZm9udC1zbW9vdGhpbmdgIGFuZCBgLW1vei1vc3gtZm9udC1zbW9vdGhpbmdgIENTUyBwcm9wZXJ0aWVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIG1hcmdpbiBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcGFkZGluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBvc2l0aW9uaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBvc2l0aW9uOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIG5vcm1hbCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LW5vcm1hbDogbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIGJvbGQgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBlbGVtZW50cyB0aGF0IGhhdmUgYSBib3JkZXIgcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1yYWRpdXM6IDAgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBDYW4gYmUgb3ZlcndyaXR0ZW4gYXQgaW5kaXZpZHVhbCBtZW51IGNvbXBvbmVudCBsZXZlbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiAwLjdyZW0gMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIE5lc3RlZCBtYXJnaW4gZm9yIHN1Ym1lbnUuXG4kZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFNldHMgdGhlIHRleHQgZGlyZWN0aW9uIG9mIHRoZSBDU1MuIENhbiBiZSBlaXRoZXIgYGx0cmAgb3IgYHJ0bGAuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGZvciBjb21wb25lbnRzIHRoYXQgc3VwcG9ydCBpdC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLWZsZXhib3g6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVkIHJlc3BvbnNpdmUgYnJlYWtwb2ludHMgZm9yIHByb3RvdHlwZXMgaWYgYXBwbGljYWJsZVxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIEJ1dHRvbiBjdXJzb3IncyB2YWx1ZSwgYGF1dG9gIGJ5IGRlZmF1bHRcbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLWJ1dHRvbi1jdXJzb3I6IGF1dG8gIWRlZmF1bHQ7XG5cbkBpZiBub3QgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICBAZXJyb3IgJ0luICRmb3VuZGF0aW9uLXBhbGV0dGUsIHlvdSBtdXN0IGhhdmUgYSBjb2xvciBuYW1lZCBcInByaW1hcnlcIi4nO1xufVxuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgdGV4dCBkaXJlY3Rpb25cbiRnbG9iYWwtbGVmdDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIHJpZ2h0LCBsZWZ0KTtcbiRnbG9iYWwtcmlnaHQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBsZWZ0LCByaWdodCk7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlIHRoYXQgY29udGFpbnMgdGhlIGZsZXgganVzdGlmeWluZyBvcHRpb25zXG4kLXpmLWZsZXgtanVzdGlmeTogLXpmLWZsZXgtanVzdGlmeSgkZ2xvYmFsLXRleHQtZGlyZWN0aW9uKTtcblxuLy8vIEdsb2JhbCB0b2xlcmFuY2UgZm9yIGNvbG9yIHBpY2sgY29udHJhc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlOiAwICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgY29sb3JzXG5AaW5jbHVkZSBhZGQtZm91bmRhdGlvbi1jb2xvcnM7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXMge1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW5vcm1hbGl6ZTtcblxuICAvLyBUaGVzZSBzdHlsZXMgYXJlIGFwcGxpZWQgdG8gYSA8bWV0YT4gdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHRcbiAgLmZvdW5kYXRpb24tbXEge1xuICAgIGZvbnQtZmFtaWx5OiAnI3stemYtYnAtc2VyaWFsaXplKCRicmVha3BvaW50cyl9JztcbiAgfVxuXG4gIGh0bWwge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIFNldCBib3gtc2l6aW5nIGdsb2JhbGx5IHRvIGhhbmRsZSBwYWRkaW5nIGFuZCBib3JkZXIgd2lkdGhzXG4gICosXG4gICo6OmJlZm9yZSxcbiAgKjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBEZWZhdWx0IGJvZHkgc3R5bGVzXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cbiAgICBAaWYgKCRib2R5LWFudGlhbGlhc2VkKSB7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICAvLyBHZXQgcmlkIG9mIGdhcCB1bmRlciBpbWFnZXMgYnkgbWFraW5nIHRoZW0gZGlzcGxheTogaW5saW5lLWJsb2NrOyBieSBkZWZhdWx0XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAvLyBHcmlkIGRlZmF1bHRzIHRvIGdldCBpbWFnZXMgYW5kIGVtYmVkcyB0byB3b3JrIHByb3Blcmx5XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHRleHRhcmVhIHRha2VzIG9uIGhlaWdodCBhdXRvbWF0aWNhbGx5XG4gIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIE1ha2Ugc2VsZWN0IGVsZW1lbnRzIGFyZSAxMDAlIHdpZHRoIGJ5IGRlZmF1bHRcbiAgc2VsZWN0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gU3R5bGVzIEdvb2dsZSBNYXBzIGFuZCBNYXBRdWVzdCBlbWJlZHMgcHJvcGVybHlcbiAgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1pZHNcbiAgLm1hcF9jYW52YXMsXG4gIC5tcWEtZGlzcGxheSB7XG4gICAgaW1nLFxuICAgIGVtYmVkLFxuICAgIG9iamVjdCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCA8YnV0dG9uPiBzdHlsZXMgY3JlYXRlZCBieSBtb3N0IGJyb3dzZXJzXG4gIGJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY3Vyc29yOiAkZ2xvYmFsLWJ1dHRvbi1jdXJzb3I7XG4gIH1cblxuICAvLyBQcmV2ZW50IHRleHQgb3ZlcmZsb3cgb24gcHJlXG4gIHByZSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyBNYWtlIHJlc2V0IGluaGVyaXQgZm9udC1mYW1pbHkgaW5zdGVhZCBvZiBzZXR0aW5ncyBzYW5zLXNlcmlmXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEludGVybmFsIGNsYXNzZXMgdG8gc2hvdy9oaWRlIGVsZW1lbnRzIGluIEphdmFTY3JpcHRcbiAgLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaXMtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi5ncmFkZS1saXN0IHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxuICBwYWRkaW5nOiAwIDAgMCAwO1xyXG4gIG1hcmdpbjogMCAwIDAgMDtcclxuICAmX19pdGVtIHtcclxuICAgICYrLmdyYWRlLWxpc3RfX2l0ZW0ge1xyXG4gICAgICBtYXJnaW46IDAgMCAwIHJlbS1jYWxjKDRweCk7XHJcbiAgICB9XHJcbiAgICAuaWNvbiB7XHJcbiAgICAgIHdpZHRoOiAyNHB4O1xyXG4gICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ubW92aWUtaW5mb3JtYXRpb24ge1xyXG4gIC5ncmFkZS1saXN0IHtcclxuICAgIG1hcmdpbjogMXJlbSAwIDAgMDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgbWFyZ2luOiAxLjVyZW0gMCAwIDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uYXJ0aWNsZS1jYXJkIHtcclxuICAuZ3JhZGUtbGlzdCB7XHJcbiAgICAmKy5hcnRpY2xlLWNhcmQtc2VydmljZSB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLm1lZ2FtZW51X19mZWF0dXJlZF9fY29udGVudCB7XHJcbiAgLmdyYWRlLWxpc3Qge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBtYXJnaW46IHJlbS1jYWxjKDI0cHgpIDAgMCAwO1xyXG4gIH1cclxufVxyXG4iLCIkYnlnZ2Etb2ZmY2FudmFzLW1lbnUtbmFtZXNwYWNlOiAnYnlnZ2Etb2ZmY2FudmFzLW1lbnUnO1xyXG4kYnlnZ2Etb2ZmY2FudmFzLW1lbnVfX2JhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiRieWdnYS1vZmZjYW52YXMtbWVudV9fbWF4LXdpZHRoOiA0MDBweDtcclxuJGJ5Z2dhLW9mZmNhbnZhcy1tZW51X19oZWFkZXItaGVpZ2h0OiA4MHB4O1xyXG4kYnlnZ2Etb2ZmY2FudmFzLW1lbnVfX2hlYWRlci1ib3JkZXItY29sb3I6ICMwMDAwMDA7XHJcbkBtaXhpbiBieWdnYS1vZmZjYW52YXMtbWVudSB7XHJcbiAgLiN7JGJ5Z2dhLW9mZmNhbnZhcy1tZW51LW5hbWVzcGFjZX0ge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgYmFja2dyb3VuZDogJGJ5Z2dhLW9mZmNhbnZhcy1tZW51X19iYWNrZ3JvdW5kO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiAkYnlnZ2Etb2ZmY2FudmFzLW1lbnVfX21heC13aWR0aDtcclxuICAgIHotaW5kZXg6IDEwMDtcclxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyNTBtcyBlYXNlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICAmX19oZWFkZXIge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogJGJ5Z2dhLW9mZmNhbnZhcy1tZW51X19oZWFkZXItaGVpZ2h0O1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkYnlnZ2Etb2ZmY2FudmFzLW1lbnVfX2JhY2tncm91bmQ7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYnlnZ2Etb2ZmY2FudmFzLW1lbnVfX2hlYWRlci1ib3JkZXItY29sb3I7XHJcbiAgICAgIHotaW5kZXg6IDEwO1xyXG4gICAgfVxyXG4gICAgJl9fY29udGVudC13cmFwcGVyIHtcclxuICAgICAgcGFkZGluZzogJGJ5Z2dhLW9mZmNhbnZhcy1tZW51X19oZWFkZXItaGVpZ2h0IDAgMCAwO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgICAgIHotaW5kZXg6IDk7XHJcbiAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcclxuICAgIH1cclxuICAgIC8vaHRtbCAmIGJvZHlcclxuICAgICYtLWFjdGl2ZSB7XHJcbiAgICAgICYsXHJcbiAgICAgIGJvZHkge1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICAgIC4jeyRieWdnYS1vZmZjYW52YXMtbWVudS1uYW1lc3BhY2V9IHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vL292ZXJsYXlcclxuJGJ5Z2dhLW9mZmNhbnZhcy1tZW51LW92ZXJsYXktYmFja2dyb3VuZDogIzAwMDAwMDtcclxuJGJ5Z2dhLW9mZmNhbnZhcy1tZW51LW92ZXJsYXktb3BhY2l0eTogMC4zO1xyXG4kYnlnZ2Etb2ZmY2FudmFzLW1lbnUtb3ZlcmxheS1kdXJhdGlvbjogMjAwbXM7XHJcbkBtaXhpbiBieWdnYS1vZmZjYW52YXMtbWVudS1vdmVybGF5IHtcclxuICAuI3skYnlnZ2Etb2ZmY2FudmFzLW1lbnUtbmFtZXNwYWNlfSB7XHJcbiAgICAmLW92ZXJsYXkge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJ5Z2dhLW9mZmNhbnZhcy1tZW51LW92ZXJsYXktYmFja2dyb3VuZDtcclxuICAgICAgICBsZWZ0OiAtOTk5OXB4O1xyXG4gICAgICAgIHRvcDogLTk5OTlweDtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgei1pbmRleDogOTk7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLS1hY3RpdmUge1xyXG4gICAgICAuI3skYnlnZ2Etb2ZmY2FudmFzLW1lbnUtbmFtZXNwYWNlfS1vdmVybGF5IHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgYW5pbWF0aW9uOiBieWdnYS1vZmZjYW52YXMtbWVudS1vdmVybGF5ICRieWdnYS1vZmZjYW52YXMtbWVudS1vdmVybGF5LWR1cmF0aW9uIGVhc2U7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICBvcGFjaXR5OiAkYnlnZ2Etb2ZmY2FudmFzLW1lbnUtb3ZlcmxheS1vcGFjaXR5O1xyXG4gICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQGtleWZyYW1lcyBieWdnYS1vZmZjYW52YXMtbWVudS1vdmVybGF5IHtcclxuICAgIDAlIHtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuICAgIDEwMCUge1xyXG4gICAgICBvcGFjaXR5OiAkYnlnZ2Etb2ZmY2FudmFzLW1lbnUtb3ZlcmxheS1vcGFjaXR5O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy9idXR0b25cclxuJGJ5Z2dhLW9mZmNhbnZhcy1tZW51LWJ1dHRvbi13aWR0aDogMzRweDtcclxuJGJ5Z2dhLW9mZmNhbnZhcy1tZW51LWJ1dHRvbi1oZWlnaHQ6IDM0cHg7XHJcbiRieWdnYS1vZmZjYW52YXMtbWVudS1idXR0b24tYmFyLXRoaWNrbmVzczogMnB4O1xyXG4kYnlnZ2Etb2ZmY2FudmFzLW1lbnUtYnV0dG9uLXBhZDogNXB4OyAvL2RldGVybWluZXMgbGVuZ3RoIG9mIGJhcnNcclxuJGJ5Z2dhLW9mZmNhbnZhcy1tZW51LWJ1dHRvbi1iYXItc3BhY2U6IDVweDtcclxuJGJ5Z2dhLW9mZmNhbnZhcy1tZW51LWJ1dHRvbi10cmFuc2lzdGlvbi1kdXJhdGlvbjogMTAwbXM7XHJcbiRieWdnYS1vZmZjYW52YXMtbWVudS1idXR0b24tYmFja2dyb3VuZDogc3RlZWxibHVlO1xyXG4kYnlnZ2Etb2ZmY2FudmFzLW1lbnUtYnV0dG9uLWJhci1jb2xvcjogd2hpdGU7XHJcbkBtaXhpbiBieWdnYS1vZmZjYW52YXMtbWVudV9fYnV0dG9uIHtcclxuICAuI3skYnlnZ2Etb2ZmY2FudmFzLW1lbnUtbmFtZXNwYWNlfSB7XHJcbiAgICAmX19idXR0b24ge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICB3aWR0aDogJGJ5Z2dhLW9mZmNhbnZhcy1tZW51LWJ1dHRvbi13aWR0aDtcclxuICAgICAgaGVpZ2h0OiAkYnlnZ2Etb2ZmY2FudmFzLW1lbnUtYnV0dG9uLWhlaWdodDtcclxuICAgICAgZm9udC1zaXplOiAwO1xyXG4gICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcclxuICAgICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogbm9uZTtcclxuICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XHJcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgJGJ5Z2dhLW9mZmNhbnZhcy1tZW51LWJ1dHRvbi10cmFuc2lzdGlvbi1kdXJhdGlvbjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJ5Z2dhLW9mZmNhbnZhcy1tZW51LWJ1dHRvbi1iYWNrZ3JvdW5kO1xyXG4gICAgICAmLWljb24ge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6ICRieWdnYS1vZmZjYW52YXMtbWVudS1idXR0b24taGVpZ2h0LzIgLSAkYnlnZ2Etb2ZmY2FudmFzLW1lbnUtYnV0dG9uLWJhci10aGlja25lc3MvMjtcclxuICAgICAgICBsZWZ0OiAkYnlnZ2Etb2ZmY2FudmFzLW1lbnUtYnV0dG9uLXBhZDtcclxuICAgICAgICByaWdodDogJGJ5Z2dhLW9mZmNhbnZhcy1tZW51LWJ1dHRvbi1wYWQ7XHJcbiAgICAgICAgaGVpZ2h0OiAkYnlnZ2Etb2ZmY2FudmFzLW1lbnUtYnV0dG9uLWJhci10aGlja25lc3M7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGJ5Z2dhLW9mZmNhbnZhcy1tZW51LWJ1dHRvbi1iYXItY29sb3I7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwcyAkYnlnZ2Etb2ZmY2FudmFzLW1lbnUtYnV0dG9uLXRyYW5zaXN0aW9uLWR1cmF0aW9uO1xyXG4gICAgICAgICY6YmVmb3JlLFxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBoZWlnaHQ6ICRieWdnYS1vZmZjYW52YXMtbWVudS1idXR0b24tYmFyLXRoaWNrbmVzcztcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRieWdnYS1vZmZjYW52YXMtbWVudS1idXR0b24tYmFyLWNvbG9yO1xyXG4gICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246ICRieWdnYS1vZmZjYW52YXMtbWVudS1idXR0b24tdHJhbnNpc3Rpb24tZHVyYXRpb24sICRieWdnYS1vZmZjYW52YXMtbWVudS1idXR0b24tdHJhbnNpc3Rpb24tZHVyYXRpb247XHJcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAkYnlnZ2Etb2ZmY2FudmFzLW1lbnUtYnV0dG9uLXRyYW5zaXN0aW9uLWR1cmF0aW9uLCAwcztcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgdG9wOiAtKCRieWdnYS1vZmZjYW52YXMtbWVudS1idXR0b24tYmFyLXNwYWNlICsgJGJ5Z2dhLW9mZmNhbnZhcy1tZW51LWJ1dHRvbi1iYXItdGhpY2tuZXNzKTtcclxuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRvcCwgdHJhbnNmb3JtO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGJvdHRvbTogLSgkYnlnZ2Etb2ZmY2FudmFzLW1lbnUtYnV0dG9uLWJhci1zcGFjZSArICRieWdnYS1vZmZjYW52YXMtbWVudS1idXR0b24tYmFyLXRoaWNrbmVzcyk7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBib3R0b20sIHRyYW5zZm9ybTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi0tYWN0aXZlIHtcclxuICAgICAgLiN7JGJ5Z2dhLW9mZmNhbnZhcy1tZW51LW5hbWVzcGFjZX1fX2J1dHRvbiB7XHJcbiAgICAgICAgJi1pY29uIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDBzIDBzO1xyXG4gICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgICY6OmJlZm9yZSxcclxuICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHMsICRieWdnYS1vZmZjYW52YXMtbWVudS1idXR0b24tdHJhbnNpc3Rpb24tZHVyYXRpb247XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkBpbXBvcnQgXCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYnlnZ2Etb2ZmY2FudmFzLW1lbnUvc3JjL2J5Z2dhLW9mZmNhbnZhcy1tZW51XCI7XHJcbiRieWdnYS1vZmZjYW52YXMtbWVudS1uYW1lc3BhY2U6ICdzaXRlLW5hdi1tb2JpbGUnO1xyXG4kYnlnZ2Etb2ZmY2FudmFzLW1lbnVfX2JhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiRieWdnYS1vZmZjYW52YXMtbWVudV9fYmFja2dyb3VuZC1ncmV5OiAjZTRlNGU0O1xyXG4kYnlnZ2Etb2ZmY2FudmFzLW1lbnVfX21heC13aWR0aDogNDAwcHg7XHJcbiRieWdnYS1vZmZjYW52YXMtbWVudV9faGVhZGVyLWhlaWdodDogODBweDtcclxuJGJ5Z2dhLW9mZmNhbnZhcy1tZW51X19oZWFkZXItYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuQGluY2x1ZGUgYnlnZ2Etb2ZmY2FudmFzLW1lbnU7XHJcbiRieWdnYS1vZmZjYW52YXMtbWVudS1vdmVybGF5LWJhY2tncm91bmQ6ICMwMDAwMDA7XHJcbiRieWdnYS1vZmZjYW52YXMtbWVudS1vdmVybGF5LW9wYWNpdHk6IDAuMztcclxuJGJ5Z2dhLW9mZmNhbnZhcy1tZW51LW92ZXJsYXktZHVyYXRpb246IDE1MG1zO1xyXG5AaW5jbHVkZSBieWdnYS1vZmZjYW52YXMtbWVudS1vdmVybGF5O1xyXG4kYnlnZ2Etb2ZmY2FudmFzLW1lbnUtYnV0dG9uLXdpZHRoOiAyNHB4O1xyXG4kYnlnZ2Etb2ZmY2FudmFzLW1lbnUtYnV0dG9uLWhlaWdodDogMTRweDtcclxuJGJ5Z2dhLW9mZmNhbnZhcy1tZW51LWJ1dHRvbi1iYXItdGhpY2tuZXNzOiAycHg7XHJcbiRieWdnYS1vZmZjYW52YXMtbWVudS1idXR0b24tcGFkOiAwcHg7IC8vZGV0ZXJtaW5lcyBsZW5ndGggb2YgYmFyc1xyXG4kYnlnZ2Etb2ZmY2FudmFzLW1lbnUtYnV0dG9uLWJhci1zcGFjZTogNHB4O1xyXG4kYnlnZ2Etb2ZmY2FudmFzLW1lbnUtYnV0dG9uLXRyYW5zaXN0aW9uLWR1cmF0aW9uOiAxMDBtcztcclxuJGJ5Z2dhLW9mZmNhbnZhcy1tZW51LWJ1dHRvbi1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuJGJ5Z2dhLW9mZmNhbnZhcy1tZW51LWJ1dHRvbi1iYXItY29sb3I6ICRjX19oZWFkZXItaGFtYnVyZ2VyLWJhcnM7XHJcbkBpbmNsdWRlIGJ5Z2dhLW9mZmNhbnZhcy1tZW51X19idXR0b247XHJcbi5zaXRlLW5hdi1tb2JpbGUge1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB0cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZTtcclxuICBtYXgtd2lkdGg6IDQ3NXB4O1xyXG4gIHdpZHRoOiA4NSU7XHJcbiAgdG9wOiAwO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHotaW5kZXg6IDEyMDtcclxuXHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDkwcHg7XHJcbiAgfVxyXG5cclxuICAmX19oZWFkZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHBhZGRpbmc6IDAgMCAwIDA7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBtaW4taGVpZ2h0OiA2M3B4O1xyXG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuXHJcbiAgICAmX19jb250ZW50IHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTZweCkgcmVtLWNhbGMoMjlweCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19jb250ZW50LXdyYXBwZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGhlaWdodDogY2FsYygxMDAlIC0gOTBweCk7XHJcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG4gICAgbWFyZ2luLXRvcDogOTBweDtcclxuICB9XHJcblxyXG5cclxuICAmX19idXR0b24ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICB3aWR0aDogMThweDtcclxuICAgIGhlaWdodDogMTVweDtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgLmNsb3NlLWljb24ge1xyXG5cclxuICAgIH1cclxuICB9XHJcbiAgJi0tYWN0aXZlIHtcclxuICAgIC4jeyRieWdnYS1vZmZjYW52YXMtbWVudS1uYW1lc3BhY2V9X19idXR0b24ge31cclxuICB9XHJcbiAgLmFjY29yZGlvbi1uYXZpZ2F0aW9uPnVsPi5pcy0tYWN0aXZlIHt9XHJcbn1cclxuXHJcbi5zaXRlLXNlYXJjaC1pcy0tYWN0aXZlIHtcclxuICAuc2l0ZS1uYXYtbW9iaWxlIHtcclxuICAgIHRvcDogMTUxcHg7XHJcbiAgfVxyXG59XHJcblxyXG4uc2l0ZS1uYXYtbW9iaWxlLS1hY3RpdmUge1xyXG4gIC5zaXRlLW5hdi1tb2JpbGUtb3ZlcmxheSB7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBvcGFjaXR5OiAuNztcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYW5pbWF0aW9uOiBieWdnYS1vZmZjYW52YXMtbWVudS1vdmVybGF5ICRieWdnYS1vZmZjYW52YXMtbWVudS1vdmVybGF5LWR1cmF0aW9uIGVhc2U7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB6LWluZGV4OiAxMTA7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLnNpdGUtc2VhcmNoLWlzLS1hY3RpdmUge1xyXG4gICAgLnNpdGUtbmF2LW1vYmlsZS1vdmVybGF5IHtcclxuICAgICAgdG9wOiAxNTFweDtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICB0b3A6IDI4NHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4iLCIubmF2LWRlc2t0b3AtaGFtYnVyZ2VyIHtcclxuICBtYXJnaW46IHJlbS1jYWxjKDQ4cHgpIDAgMCAwO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgJl9fbmF2IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICBtaW4td2lkdGg6IHJlbS1jYWxjKDI5NXB4KTtcclxuICAgIG1hcmdpbjogMCAwIDAgcmVtLWNhbGMoMTg1cHgpO1xyXG4gICAgcGFkZGluZzogMCAwIDAgMDtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAmX19pdGVtIHtcclxuICAgICAgJisubmF2LWRlc2t0b3AtaGFtYnVyZ2VyX19uYXZfX2l0ZW0ge1xyXG4gICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMjRweCkgMCAwIDA7XHJcbiAgICAgIH1cclxuICAgICAgJi5pcy0tYWN0aXZlIHtcclxuICAgICAgICAubmF2LWRlc2t0b3AtaGFtYnVyZ2VyX19uYXZfX2xpbmsge1xyXG4gICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2xpbmsge1xyXG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI2cHgpO1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDEuMzgqMjZweCk7XHJcbiAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XHJcbiAgICAgIGNvbG9yOiAkY19faGVhZGluZy1kYXJrZXI7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjE1cyBlYXNlO1xyXG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAuMTVzO1xyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmX19zdWItbmF2IHtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBwYWRkaW5nOiAwIDAgMCAwO1xyXG4gICAgbWFyZ2luOiByZW0tY2FsYygzMnB4KSAwIDAgMDtcclxuXHJcbiAgICAmLWNvbnRhaW5lciB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjE1cyBlYXNlO1xyXG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwO1xyXG4gICAgICBwYWRkaW5nOiAwIDAgcmVtLWNhbGMoMzBweCkgcmVtLWNhbGMoMzBweCk7XHJcbiAgICAgIGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggI2VhZWNlZjtcclxuXHJcbiAgICAgICYuaXMtLWFjdGl2ZSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zNXMgZWFzZTtcclxuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAuMTVzO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgICYrLm5hdi1kZXNrdG9wLWhhbWJ1cmdlcl9fc3ViLW5hdl9faXRlbSB7XHJcbiAgICAgICAgbWFyZ2luOiByZW0tY2FsYygxNnB4KSAwIDAgMDtcclxuICAgICAgfVxyXG4gICAgICAmLmlzLS1hY3RpdmUge1xyXG4gICAgICAgIC5uYXYtZGVza3RvcC1oYW1idXJnZXJfX3N1Yi1uYXZfX2xpbmsge1xyXG4gICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2xpbmsge1xyXG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2cHgpO1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDEuNjMqMTZweCk7XHJcbiAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XHJcbiAgICAgIGNvbG9yOiAkY19faGVhZGluZy1kYXJrZXI7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uc2Vjb25kYXJ5bWVudS0taXMtb3BlbiB7XHJcbiAgLm5hdi1kZXNrdG9wLWhhbWJ1cmdlcl9fbmF2X19saW5rOm5vdCguaXMtLWFjdGl2ZSkge1xyXG4gICAgb3BhY2l0eTogLjI1O1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5uYXYtY2F0ZWdvcnkge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjX19ncmF5LXNoYXJrLTI7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgcGFkZGluZzogcmVtLWNhbGMoMjRweCkgMCByZW0tY2FsYygyNHB4KSAwO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICAmX19uYXYge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgcGFkZGluZzogMCAwIDAgMDtcclxuICAgIG1hcmdpbjogMCAwIDAgMDtcclxuICAgICZfX2l0ZW0ge1xyXG4gICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuICAgICAgICBtYXJnaW46IDAgMCAwIHJlbS1jYWxjKDQ4cHgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19saW5rIHtcclxuICAgICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI2cHgpO1xyXG4gICAgICBjb2xvcjogIzlkYTVhYTtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAuaWNvbiB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMCByZW0tY2FsYyg4cHgpO1xyXG4gICAgICB9XHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiAkY19fd2hpdGU7XHJcbiAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgcGF0aCB7XHJcbiAgICAgICAgICAgIGZpbGw6ICRjX193aGl0ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsICRhbmltYXRpb24tc3BlZWQtZmFzdCBlYXNlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmLmlzLS1hY3RpdmUge1xyXG4gICAgICAgIGNvbG9yOiAkY19fd2hpdGU7XHJcbiAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XHJcbiAgICAgICAgICBwYXRoIHtcclxuICAgICAgICAgICAgZmlsbDogJGNfX3doaXRlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmX19zdWItbmF2IHtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBtYXJnaW46IDAgMCAwIDA7XHJcbiAgICBwYWRkaW5nOiAwIDAgMCAwO1xyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuICAgICAgICBtYXJnaW46IDFyZW0gMCAwIDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2xpbmsge1xyXG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0cHgpO1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgIGNvbG9yOiAkY19fYm9keS10ZXh0O1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiBkYXJrZW4oJGNfX2JvZHktdGV4dCwgMTUlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmX19jb250ZW50IHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0MixcdDI0MywgMjQ1LCAxKTtcclxuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDMycHgpIDAgcmVtLWNhbGMoMzJweCkgMDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICYuaXMtLWFjdGl2ZSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgei1pbmRleDogOTtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgdG9wOiAxMDAlO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDE2OHB4O1xyXG4gICAgfVxyXG4gICAgLmNsb3NlLWNvbnRhaW5lciB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuICAgIC5idXR0b24tY2xvc2Uge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIC5pY29uLWNvbnRhaW5lciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNfX3doaXRlO1xyXG4gICAgICAgIGJvcmRlcjogc29saWQgMXB4ICNjZWQ0ZGE7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLm1wLXB1c2hlciB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICAuaWNvbiB7XHJcbiAgICB6LWluZGV4OiAtMTtcclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4ubXAtbWVudSB7XHJcblx0cG9zaXRpb246IGFic29sdXRlOyAvKiB3ZSBjYW4ndCB1c2UgZml4ZWQgaGVyZSA6KCAqL1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdC8vIHotaW5kZXg6IDE7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiBjYWxjKDEwMCUgLSA0MHB4KTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG59XHJcblxyXG4ubXAtbGV2ZWwge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcbiAgYmFja2dyb3VuZDogI2ZmZjtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMTVzIGVhc2U7XHJcbn1cclxuXHJcbi8qIG92ZXJsYXlzIGZvciBwdXNoZXIgYW5kIGZvciBsZXZlbCB0aGF0IGdldHMgY292ZXJlZCAqL1xyXG4vKlxyXG4ubXAtcHVzaGVyOjphZnRlcixcclxuLm1wLWxldmVsOjphZnRlcixcclxuLm1wLWxldmVsOjpiZWZvcmUge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDA7XHJcblx0cmlnaHQ6IC0zMnB4O1xyXG5cdHdpZHRoOiAwO1xyXG5cdGhlaWdodDogMDtcclxuXHRjb250ZW50OiAnJztcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcbiovXHJcblxyXG4ubXAtcHVzaGVyLFxyXG4ubXAtbGV2ZWwge1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjI1cztcclxufVxyXG5cclxuLm1wLXB1c2hlcjo6YWZ0ZXIsXHJcbi5tcC1sZXZlbDo6YWZ0ZXIge1xyXG5cdC8vIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjA1KTtcclxuXHQvLyB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMsIHdpZHRoIDAuMXMgMC4zcywgaGVpZ2h0IDAuMXMgMC4zcztcclxufVxyXG5cclxuLm1wLWxldmVsOjphZnRlciB7XHJcblx0ei1pbmRleDogLTE7XHJcbn1cclxuXHJcbi5tcC1wdXNoZXIubXAtcHVzaGVkOjphZnRlcixcclxuLm1wLWxldmVsLm1wLWxldmVsLW92ZXJsYXk6OmFmdGVyIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0b3BhY2l0eTogMTtcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3M7XHJcbn1cclxuXHJcbi5tcC1sZXZlbC5tcC1sZXZlbC1vdmVybGF5IHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5tcC1sZXZlbC5tcC1sZXZlbC1vdmVybGF5Lm1wLWxldmVsOjpiZWZvcmUge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcblxyXG5cclxuLyogb3ZlcmxhcCAqL1xyXG4ubXAtb3ZlcmxhcCAubXAtbGV2ZWwubXAtbGV2ZWwtb3BlbiB7XHJcblx0Ym94LXNoYWRvdzogMXB4IDAgMnB4IHJnYmEoMCwwLDAsMC4yKTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC00MHB4LCAwLCAwKTtcclxufVxyXG5cclxuLyogRmlyc3QgbGV2ZWwgKi9cclxuLm1wLW1lbnUgPiAubXAtbGV2ZWwsXHJcbi5tcC1tZW51ID4gLm1wLWxldmVsLm1wLWxldmVsLW9wZW4sXHJcbi5tcC1tZW51Lm1wLW92ZXJsYXAgPiAubXAtbGV2ZWwsXHJcbi5tcC1tZW51Lm1wLW92ZXJsYXAgPiAubXAtbGV2ZWwubXAtbGV2ZWwtb3BlbiB7XHJcblx0Ym94LXNoYWRvdzogbm9uZTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG59XHJcblxyXG4vKiBjb3ZlciAqL1xyXG4ubXAtY292ZXIgLm1wLWxldmVsLm1wLWxldmVsLW9wZW4ge1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgLy8gb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLm1wLWNvdmVyIC5tcC1sZXZlbC5tcC1sZXZlbC1vcGVuID4gdWwgPiBsaSA+IC5tcC1sZXZlbDpub3QoLm1wLWxldmVsLW9wZW4pIHtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG59XHJcblxyXG4vKiBjb250ZW50IHN0eWxlICovXHJcbi5tcC1tZW51IHVsIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxuICBtYXJnaW46IDAgMCAwIDA7XHJcbiAgcGFkZGluZzogMCAwIDAgMDtcclxuXHJcbiAgbGkge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHJcbiAgICBhIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ1dHRvbi1uZXh0LWxldmVsIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBwYWRkaW5nOiAwIDMycHggMCAxMHB4O1xyXG4gICAgICBib3JkZXI6IDA7XHJcbiAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLm1wLW1lbnUgaDIge1xyXG5cdG1hcmdpbjogMDtcclxuXHRwYWRkaW5nOiAxZW07XHJcblx0Y29sb3I6IHJnYmEoMCwwLDAsMC40KTtcclxuXHR0ZXh0LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsMCwwLDAuMSk7XHJcblx0Zm9udC13ZWlnaHQ6IDMwMDtcclxuXHRmb250LXNpemU6IDJlbTtcclxufVxyXG5cclxuLm1wLW1lbnUubXAtb3ZlcmxhcCBoMjo6YmVmb3JlIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAwO1xyXG5cdHJpZ2h0OiAwO1xyXG5cdG1hcmdpbi1yaWdodDogOHB4O1xyXG5cdGZvbnQtc2l6ZTogNzUlO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjg7XHJcblx0b3BhY2l0eTogMDtcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MsIHRyYW5zZm9ybSAwLjFzIDAuM3M7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xyXG59XHJcblxyXG4ubXAtbWVudS5tcC1jb3ZlciBoMiB7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRmb250LXdlaWdodDogNzAwO1xyXG5cdGxldHRlci1zcGFjaW5nOiAxcHg7XHJcblx0Zm9udC1zaXplOiAxZW07XHJcbn1cclxuXHJcbi5tcC1vdmVybGFwIC5tcC1sZXZlbC5tcC1sZXZlbC1vdmVybGF5ID4gaDI6OmJlZm9yZSB7XHJcblx0b3BhY2l0eTogMTtcclxuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcywgb3BhY2l0eSAwLjNzO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxufVxyXG5cclxuLm1wLW1lbnUgdWwgbGkge1xyXG4gICY6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZDogI2YwZjBmMDtcclxuICB9XHJcblxyXG4gICYgPiBhIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGNvbG9yOiAkY19fZGFyay1ncmF5O1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBsaW5lLWhlaWdodDogMzJweDtcclxuICAgIHBhZGRpbmc6IDhweCAzMnB4IDhweCAzMnB4O1xyXG4gIFxyXG4gIH1cclxuXHJcblxyXG59XHJcblxyXG4ubXAtbWVudSBsaS5kaXZpZGVyIHtcclxuICBwYWRkaW5nOjAgMjNweCAwIDMycHg7XHJcbn1cclxuXHJcblxyXG5kaXZbZGF0YS1sZXZlbD1cIjJcIl0sXHJcbmRpdltkYXRhLWxldmVsPVwiM1wiXSxcclxuZGl2W2RhdGEtbGV2ZWw9XCI0XCJdIHtcclxuICB1bCBsaSB7XHJcblxyXG4gICAgJiA+IGEge1xyXG4gICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjZweCk7XHJcbiAgICAgIHBhZGRpbmc6IDhweCAwIDhweCAzMnB4O1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHRyYW5zaXRpb246IGFsbCAkYW5pbWF0aW9uLXNwZWVkLWZhc3QgZWFzZTtcclxuXHJcbiAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA2NHB4KTtcclxuICAgICAgICBoZWlnaHQ6IDFweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZWFlY2VmO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgbGVmdDogMzJweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYgPiAuYnV0dG9uLW5leHQtbGV2ZWwge1xyXG4gICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDFweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZWFlY2VmO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgcmlnaHQ6IDMycHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgfVxyXG59XHJcblxyXG5kaXZbZGF0YS1sZXZlbD1cIjJcIl0ge1xyXG4gIHotaW5kZXg6IDM7XHJcbn1cclxuXHJcbmRpdltkYXRhLWxldmVsPVwiM1wiXSB7XHJcbiAgei1pbmRleDogMjtcclxufVxyXG5cclxuZGl2W2RhdGEtbGV2ZWw9XCI0XCJdIHtcclxuICB6LWluZGV4OiAxO1xyXG59XHJcblxyXG4ubXAtbWVudSAuaXMtLXNtYWxsID4gYSB7XHJcbiAgZm9udC1zaXplOiAxcmVtO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNnB4KTtcclxufVxyXG5cclxuLm1wLWxldmVsID4gdWwgPiBsaTpmaXJzdC1jaGlsZCA+IGEge1xyXG5cdC8vIGJveC1zaGFkb3c6IGluc2V0IDAgLTFweCByZ2JhKDAsMCwwLDAuMiksIGluc2V0IDAgMXB4IHJnYmEoMCwwLDAsMC4yKTtcclxufVxyXG5cclxuLm1wLW1lbnUgdWwgbGkgYTpob3ZlcixcclxuLm1wLWxldmVsID4gdWwgPiBsaTpmaXJzdC1jaGlsZCA+IGE6aG92ZXIge1xyXG5cdC8vIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC4yKTtcclxuXHQvLyBib3gtc2hhZG93OiBpbnNldCAwIC0xcHggcmdiYSgwLDAsMCwwKTtcclxufVxyXG5cclxuLm1wLW1lbnUgLm1wLWxldmVsLm1wLWxldmVsLW92ZXJsYXkgPiB1bCA+IGxpID4gYSxcclxuLm1wLWxldmVsLm1wLWxldmVsLW92ZXJsYXkgPiB1bCA+IGxpOmZpcnN0LWNoaWxkID4gYSB7XHJcblx0Ly8gYm94LXNoYWRvdzogaW5zZXQgMCAtMXB4IHJnYmEoMCwwLDAsMCk7XHJcbn1cclxuXHJcbi5tcC1sZXZlbCA+IHVsID4gbGk6Zmlyc3QtY2hpbGQgPiBhOmhvdmVyLFxyXG4ubXAtbGV2ZWwubXAtbGV2ZWwtb3ZlcmxheSA+IHVsID4gbGk6Zmlyc3QtY2hpbGQgPiBhIHtcclxuXHQvLyBib3gtc2hhZG93OiBpbnNldCAwIC0xcHggcmdiYSgwLDAsMCwwKSwgaW5zZXQgMCAxcHggcmdiYSgwLDAsMCwwKTtcclxufSAvKiBzZWVtcyBsaWtlIENocm9tZSAzNC4wLjE4NDcuMTMxIG5lZWRzIHRoZSBzZWNvbmQgc2hhZG93IG90aGVyd2lzZSB0aGUgdHJhbnNpdGlvbiBicmVha3MgKi9cclxuXHJcbi5tcC1iYWNrIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgZm9udC1zaXplOiByZW0tY2FsYygxM3B4KTtcclxuICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMTNweCk7XHJcbiAgY29sb3I6ICM0YTUwNTg7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgcGFkZGluZzogcmVtLWNhbGMoOHB4KSByZW0tY2FsYygyM3B4KSByZW0tY2FsYyg4cHgpIHJlbS1jYWxjKDMycHgpO1xyXG4gIHRyYW5zaXRpb246IGFsbCAkYW5pbWF0aW9uLXNwZWVkLWZhc3QgZWFzZTtcclxuICAuaWNvbiB7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcclxuICAgIG1hcmdpbi1yaWdodDogOHB4O1xyXG4gICAgcGF0aCB7XHJcbiAgICAgIGZpbGw6ICAjNGE1MDU4O1xyXG4gICAgfVxyXG4gIH1cclxuICAmOmhvdmVyIHtcclxuICAgIGNvbG9yOiAjMDAwMDAwO1xyXG4gICAgLmljb24ge1xyXG4gICAgICBwYXRoIHtcclxuICAgICAgICBmaWxsOiAgIzAwMDAwMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLm1wLWJhY2sgKyB1bCB7XHJcbiAgbWFyZ2luOiByZW0tY2FsYygxNnB4KSAwIDAgMDtcclxufVxyXG5cclxuXHJcbi8qIEZhbGxiYWNrIGV4YW1wbGUgZm9yIGJyb3dzZXJzIHRoYXQgZG9uJ3Qgc3VwcG9ydCAzRCB0cmFuc2Zvcm1zIChhbmQgbm8gSlMgZmFsbGJhY2spICovXHJcbi8qIFdlJ2xsIHNob3cgdGhlIGZpcnN0IGxldmVsIG9ubHkgKi9cclxuLm5vLWNzc3RyYW5zZm9ybXMzZCAubXAtcHVzaGVyLFxyXG4ubm8tanMgLm1wLXB1c2hlciB7XHJcblx0cGFkZGluZy1sZWZ0OiAzMDBweDtcclxufVxyXG5cclxuLm5vLWNzc3RyYW5zZm9ybXMzZCAubXAtbWVudSAubXAtbGV2ZWwsXHJcbi5uby1qcyAubXAtbWVudSAubXAtbGV2ZWwge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5uby1jc3N0cmFuc2Zvcm1zM2QgLm1wLW1lbnUgPiAubXAtbGV2ZWwsXHJcbi5uby1qcyAubXAtbWVudSA+IC5tcC1sZXZlbCB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcbn1cclxuIiwiLm5hdi1wdXNoLW1lbnUtbW9iaWxlIHtcclxuICAmLXdyYXBwZXIge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwYWRkaW5nOiA0MHB4IDMycHggMzJweCAzMnB4O1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX2RpdmlkZXIge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDFweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNlYWVjZWY7XHJcbiAgICBtYXJnaW46IDE1cHggMDtcclxuICB9XHJcblxyXG4gIC5idXR0b24tbW9yZS1saW5rIHtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTNweCk7XHJcbiAgICBtYXJnaW46IDMycHggMCAwIDMycHg7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIH1cclxufVxyXG4iLCIub3ZlcmxheSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgYm90dG9tOiAwO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XHJcbiAgei1pbmRleDogMTAwO1xyXG4gIG9wYWNpdHk6IDE7XHJcblxyXG4gICYuaXMtLWFjdGl2ZSB7IGRpc3BsYXk6IGJsb2NrOyB9XHJcbn1cclxuXHJcbi5vdmVybGF5LS1hY3RpdmUge31cclxuXHJcbi8vIEJlaMO2dnMgaW50ZSBvbSBvdmVybGF5IGhhciBwb3NpdGlvbiBmaXhlZFxyXG4vKlxyXG5odG1sLm92ZXJsYXktLWFjdGl2ZSB7XHJcbiAgJiwgYm9keSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG59XHJcbiovXHJcbiIsIi5vdmVybGF5X19jb250ZW50IHtcclxuICBib3R0b206IDA7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIGxlZnQ6IDA7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHRvcDogMDtcclxuICB3aWR0aDogMTAwJTtcclxuICB6LWluZGV4OiAxO1xyXG4gICYudHlwZS0tdmlkZW8ge1xyXG4gICAgLnZpZGVvLWNvbnRhaW5lciB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XHJcbiAgICAgIGJvdHRvbTogMDtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB6LWluZGV4OiAxO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA4MCU7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuc2l6aW5nLXdyYXBwZXIge1xyXG4gICAgICBib3R0b206IDA7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICByaWdodDogMDtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgei1pbmRleDogMTtcclxuICAgIH1cclxuICAgIC5yZXNwb25zaXZlLWVtYmVkIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2J1dHRvbiB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgb3V0bGluZTogMDtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMThweCk7XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIGNvbG9yOiAkY19fd2hpdGU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgJGFuaW1hdGlvbi1zcGVlZC1mYXN0IGVhc2U7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0cHgpO1xyXG4gICAgfVxyXG5cclxuICAgICZfX3RleHQge1xyXG4gICAgICB0cmFuc2l0aW9uOiBhbGwgJGFuaW1hdGlvbi1zcGVlZC1mYXN0IGVhc2U7XHJcbiAgICB9XHJcblxyXG4gICAgLmljb24tY29udGFpbmVyIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIHdpZHRoOiByZW0tY2FsYygzMnB4KTtcclxuICAgICAgbWFyZ2luOiAwIHJlbS1jYWxjKDhweCkgMCAwO1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDMwcHgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuaWNvbi1hcnJvdy13aGl0ZSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIC5vdmVybGF5X19jb250ZW50X19idXR0b25fX3RleHQge1xyXG4gICAgICAgIGNvbG9yOiBkYXJrZW4oJGNfX3doaXRlLCAyMCUpO1xyXG4gICAgICB9XHJcbiAgICAgIC5pY29uLWFycm93LXdoaXRlIHtcclxuICAgICAgICBwYXRoIHtcclxuICAgICAgICAgIGZpbGw6IGRhcmtlbigkY19fd2hpdGUsIDIwJSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX25hdmlnYXRpb24ge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogMXJlbTtcclxuICAgIHotaW5kZXg6IDIwMDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgbGVmdDogcmVtLWNhbGMoMjRweCk7XHJcbiAgICAgIHRvcDogcmVtLWNhbGMoMjRweCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG4iLCIucGFnaW5hdGlvbi1saXN0IHtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG4gIG1hcmdpbjogMCAwIDAgMDtcclxuICBwYWRkaW5nOiAwIDAgMCAwO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAmX19pdGVtIHtcclxuICAgIHBhZGRpbmc6IDAgLjI1cmVtIDAgLjI1cmVtO1xyXG4gICAgLy8gbWluLWhlaWdodDogMzhweDtcclxuICAgICY6Zmlyc3QtY2hpbGQsXHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICBtYXJnaW46IDFyZW0gMCAxcmVtIDA7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICBtYXJnaW46IDAgMCAwIDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYuaXMtLWFjdGl2ZSB7XHJcbiAgICAgIC5wYWdpbmF0aW9uLWxpc3RfX3BhZ2Uge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgMSk7XHJcbiAgICAgICAgY29sb3I6ICRjX193aGl0ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuaXMtLWRpc2FibGVkIHtcclxuICAgICAgLnBhZ2luYXRpb24tbGlzdF9fYnV0dG9uIHtcclxuICAgICAgICBjb2xvcjogcmdiYSgxMCwgMTAsIDEwLCAuNCk7XHJcbiAgICAgICAgLmljb24tYXJyb3ctYmxhY2sgcGF0aCB7XHJcbiAgICAgICAgICBmaWxsOiByZ2JhKDEwLCAxMCwgMTAsIC40KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJl9fcGFnZSB7XHJcbiAgICB3aWR0aDogMzhweDtcclxuICAgIGhlaWdodDogMzhweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgMSk7XHJcbiAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxLjYzKjE2cHgpO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDBweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHRyYW5zaXRpb246IGFsbCAkYW5pbWF0aW9uLXNwZWVkLWZhc3QgZWFzZTtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwLCAxMCwgMTAsIDAuMSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2J1dHRvbiB7XHJcbiAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxLjYzKjE2cHgpO1xyXG4gICAgY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgMSk7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgJGFuaW1hdGlvbi1zcGVlZC1mYXN0IGVhc2U7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgLjcpO1xyXG4gICAgICAuaWNvbi1hcnJvdy1ibGFjayBwYXRoIHtcclxuICAgICAgICBmaWxsOiByZ2JhKDEwLCAxMCwgMTAsIC43KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5wcmV2aW91cyB7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDI4cHg7XHJcbiAgICAgIH1cclxuICAgICAgLmljb24tY29udGFpbmVyIHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IC41cmVtO1xyXG4gICAgICB9XHJcbiAgICAgIC5pY29uLWFycm93LWJsYWNrIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYubmV4dCB7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMjhweDtcclxuICAgICAgfVxyXG4gICAgICAuaWNvbi1jb250YWluZXIge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAuNXJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIucmVzcG9uc2l2ZS1lbWJlZCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGhlaWdodDogMDtcclxuICAmX19pdGVtIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gIH1cclxuICAmLmFzcGVjdC1yYXRpby0xNi1ieS05IHtcclxuICAgIHBhZGRpbmctdG9wOiA1Ni4yNSU7XHJcbiAgfVxyXG59XHJcblxyXG4uY29tcG9uZW50LWNvbnRlbnRfX2lmcmFtZSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nLXRvcDogNTYuMjUlOyAvKiAxNjo5IEFzcGVjdCBSYXRpbyAoZGl2aWRlIDkgYnkgMTYgPSAwLjU2MjUpICovXHJcbn1cclxuXHJcbi8qIFRoZW4gc3R5bGUgdGhlIGlmcmFtZSB0byBmaXQgaW4gdGhlIGNvbnRhaW5lciBkaXYgd2l0aCBmdWxsIGhlaWdodCBhbmQgd2lkdGggKi9cclxuLmNvbXBvbmVudC1jb250ZW50X19pZnJhbWUgaWZyYW1lIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG59IiwiLnNlYXJjaC1yZXN1bHRzX19pdGVtIHtcclxuICBwYWRkaW5nOiAwIDAgcmVtLWNhbGMoMjRweCkgMDtcclxuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2NlZDRkYTtcclxuICAmOmxhc3QtY2hpbGQge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuICB9XHJcblxyXG4gICZfX21ldGEge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgJl9fdGFnIHtcclxuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMnB4KTtcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICBjb2xvcjogIzg1OGU5NjtcclxuICAgIH1cclxuICAgICZfX2RhdGUge1xyXG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEycHgpO1xyXG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgY29sb3I6ICM4NThlOTY7XHJcbiAgICAgIG1hcmdpbjogMCAwIDAgcmVtLWNhbGMoNHB4KTtcclxuICAgIH1cclxuICAgIC5pY29uLWNvbnRhaW5lciB7XHJcbiAgICAgIHdpZHRoOiAxMXB4O1xyXG4gICAgICBoZWlnaHQ6IDExcHg7XHJcbiAgICAgIG1hcmdpbjogMCAwIDAgcmVtLWNhbGMoOHB4KTtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX3RpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjJweCk7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxLjQ1KjIycHgpO1xyXG4gICAgY29sb3I6ICRjX19ibGFjaztcclxuICAgIG1hcmdpbjogcmVtLWNhbGMoOHB4KSAwIDAgMDtcclxuICB9XHJcblxyXG4gICZfX2NvbnRlbnQge1xyXG4gICAgY29sb3I6ICM0YTUwNTg7XHJcbiAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgbWFyZ2luOiByZW0tY2FsYyg4cHgpIDAgMCAwO1xyXG4gIH1cclxuXHJcbiAgJisuc2VhcmNoLXJlc3VsdHNfX2l0ZW0ge1xyXG4gICAgbWFyZ2luOiByZW0tY2FsYygyNHB4KSAwIDAgMDtcclxuICB9XHJcblxyXG4gIGltZyB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICB9XHJcblxyXG4gICZfX2xpbmsge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBjb2xvcjogYmxhY2s7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgLnNlYXJjaC1yZXN1bHRzX19pdGVtX190aXRsZSB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLnNlY3Rpb24ge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBwYWRkaW5nOiByZW0tY2FsYyg0MHB4KSAwIHJlbS1jYWxjKDYwcHgpIDA7XHJcbiAgJl9faGVhZGVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDAgMCAxcmVtIDA7XHJcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggJGNfX3NlY3Rpb24taGVhZGVyLWJvcmRlcjtcclxuICAgIC5idXR0b24tbW9yZSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2hlYWRpbmcge1xyXG4gICAgbWFyZ2luOiAwIDAgMCAwO1xyXG4gICAgcGFkZGluZzogMCAwIDAgMDtcclxuICAgIGNvbG9yOiAkY19faGVhZGluZy1kYXJrZXI7XHJcbiAgfVxyXG5cclxuICAmX19mb290ZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5zZWN0aW9uLWFydGljbGUtbGlzdCB7XHJcbiAgICAvL3BhZGRpbmc6IHJlbS1jYWxjKDEyMHB4KSAwIHJlbS1jYWxjKDExNXB4KSAwO1xyXG4gICAgLy9wYWRkaW5nOiAwIDAgcmVtLWNhbGMoMTE1cHgpIDA7XHJcbiAgICAuc2VjdGlvbl9faGVhZGVyIHtcclxuICAgICAgYm9yZGVyLWNvbG9yOiAkY19fYXJ0aWNsZS1saXN0LWJvcmRlcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuc2VjdGlvbi1sYXRlc3QtdHJhaWxlcnMge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoNDhweCkgMCByZW0tY2FsYyg2NHB4KSAwO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNfX2JnLXRyYWlsZXJzO1xyXG4gICAgei1pbmRleDogNDtcclxuXHJcbiAgICAuc2VjdGlvbl9faGVhZGluZyB7XHJcbiAgICAgIGNvbG9yOiAkY19fd2hpdGU7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlY3Rpb25fX2hlYWRlciB7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMjUpO1xyXG4gICAgfVxyXG5cclxuICAgIC5yZXNwb25zaXZlLWVtYmVkIHtcclxuICAgICAgbWFyZ2luOiByZW0tY2FsYygzMnB4KSAwIDAgMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuc2VjdGlvbi1yZXZpZXcge1xyXG4gICAgcGFkZGluZzogMCAwIHJlbS1jYWxjKDYwcHgpIDA7XHJcbiAgfVxyXG59XHJcbiIsIi5zbGlkZXItd3JhcHBlciB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcblxyXG4iLCIuc2xpZGVyLWl0ZW0ge1xyXG4gIG91dGxpbmU6IG5vbmU7XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMHB4KTtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDEuNSoyMHB4KTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGNvbG9yOiAkY19fd2hpdGU7XHJcbiAgICBtYXJnaW46IDFyZW0gMCAwIDA7XHJcbiAgfVxyXG4gICZfX2xpbmsge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIG91dGxpbmU6bm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICBvdXRsaW5lLXdpZHRoOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2ltYWdlIHtcclxuICAgIG9wYWNpdHk6IC41O1xyXG4gIH1cclxuICAuc2xpZGUtY2F0ZWdvcnktbGlzdCB7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgcGFkZGluZzogMCAwIDAgMDtcclxuICAgIG1hcmdpbjogMnB4IDAgMCAwO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNHB4KTtcclxuICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDEuNzEqMTRweCk7XHJcbiAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNDUpO1xyXG4gICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIGNvbnRlbnQ6ICcsICc7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uc2xpY2stY3VycmVudCAuc2xpZGVyLWl0ZW1fX2ltYWdlIHsgb3BhY2l0eTogMTsgfVxyXG5cclxuXHJcbiIsIi5zbGlkZXItbW92aWVzIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY19fZ3JheS1zaGFyaztcclxuICBwYWRkaW5nOiByZW0tY2FsYyg0MnB4KSAwIDAgMDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg0OHB4KSAwIDAgMDtcclxuICB9XHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgLy9oZWlnaHQ6IDE1OHB4O1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAyKSA5JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA2KSAxNyUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMikgMjQlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMikgMzElLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjkpIDM3JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM5KSA0NCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42MSkgNTYlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzEpIDYzJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpIDY5JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg4KSA3NiUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NSkgODMlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTgpIDkxJSwgJGNfX3doaXRlKTtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgLy9oZWlnaHQ6IDIwMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAmLXdyYXBwZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNfX3doaXRlO1xyXG4gICAgLy9wYWRkaW5nOiAwIDAgcmVtLWNhbGMoNzJweCkgMDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgLy9AZXJyb3I6IDAgMCByZW0tY2FsYygxMDBweCkgMDtcclxuICAgIH1cclxuICB9XHJcbiAgJl9faGVhZGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgfVxyXG4gICZfX2hlYWRlci1iYXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgIHBhZGRpbmc6IDAgMCAxcmVtIDA7XHJcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAuMik7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxOHB4KTtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDEuNTYqMThweCk7XHJcbiAgICBjb2xvcjogJGNfX3doaXRlO1xyXG4gICAgbWFyZ2luOiAwIDAgMCAwO1xyXG4gICAgcGFkZGluZzogMCAwIDAgMDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjZweCk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxLjM4KjI2cHgpO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19jYXRlZ29yeS1saXN0IHtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBtYXJnaW46IHJlbS1jYWxjKDI0cHgpIDAgMCAwO1xyXG4gICAgcGFkZGluZzogMCAwIDAgMDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgICYrLnNsaWRlci1tb3ZpZXNfX2NhdGVnb3J5LWxpc3RfX2l0ZW0ge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDAgcmVtLWNhbGMoMjRweCk7XHJcbiAgICAgIH1cclxuICAgICAgJi5pcy0tYWN0aXZlIHtcclxuICAgICAgICAuc2xpZGVyLW1vdmllc19fY2F0ZWdvcnktbGlzdF9fYnV0dG9uIHtcclxuICAgICAgICAgIGNvbG9yOiAkY19fd2hpdGU7XHJcbiAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY19fd2hpdGU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fYnV0dG9uIHtcclxuICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjMpO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNHB4KTtcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxLjcxKjE0cHgpO1xyXG4gICAgICBwYWRkaW5nOiAwIDAgMCAwO1xyXG4gICAgICBib3JkZXItc3R5bGU6IG5vbmU7XHJcbiAgICAgIG91dGxpbmU6IDA7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6ICRjX193aGl0ZTtcclxuICAgICAgfVxyXG4gICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAycHg7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsICRhbmltYXRpb24tc3BlZWQtZmFzdCBlYXNlO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxLjYzKjE2cHgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5jdXJyZW50LXNsaWRlLWJsdXJyZWQge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgei1pbmRleDogMDtcclxuICAgIG9wYWNpdHk6IC42O1xyXG4gICAgdHJhbnNpdGlvbjogYWxsICRhbmltYXRpb24tc3BlZWQtc2xvdyBlYXNlO1xyXG4gICAgJi50eXBlLS1pbWFnZSB7XHJcbiAgICAgIGZpbHRlcjogYmx1cig1MHB4KTtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi50eXBlLS1zdmcge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuICAgICAgaW1hZ2Uge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAuc2xpZGVyLXdyYXBwZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMjtcclxuICB9XHJcbiAgLnNsaWNrLXNsaWRlciB7XHJcbiAgICBtYXJnaW46IHJlbS1jYWxjKDI0cHgpIDAgMCAwO1xyXG4gICAgLnNsaWNrLWxpc3Qge1xyXG4gICAgICBwYWRkaW5nLXRvcDogMTAwcHggIWltcG9ydGFudDtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDEwMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICAuc2xpY2stc2xpZGUge1xyXG4gICAgICBwYWRkaW5nOiAwIHJlbS1jYWxjKDE1cHgpO1xyXG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjM1cyBlYXNlO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1JSk7XHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zNXMgZWFzZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy8uc2xpY2stYWN0aXZlIHt9XHJcbiAgICAuc2xpY2stY3VycmVudCB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xyXG4gICAgICAvKmltZyB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xyXG4gICAgICB9Ki9cclxuICAgICAgLnNsaWRlci1pdGVtX190aXRsZSB7XHJcbiAgICAgICAgLy8gZm9udC1zaXplOiA4MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSguNzUpO1xyXG4gICAgICB9XHJcbiAgICAgIC5zbGlkZS1jYXRlZ29yeS1saXN0IHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC43NSk7XHJcbiAgICAgICAgLy8gZm9udC1zaXplOiA2MCU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICZ+IC5zbGljay1zbGlkZSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1JSk7XHJcbiAgICAgIH1cclxuICAgICAgLy8mLnNsaWNrLWNlbnRlciB7fVxyXG4gICAgfVxyXG4gICAgLnNsaWNrLXByZXYsIC5zbGljay1uZXh0IHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNfX3doaXRlO1xyXG4gICAgICB6LWluZGV4OiAxMDA7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgd2lkdGg6IDQ2cHg7XHJcbiAgICAgIGhlaWdodDogNDZweDtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgIHRvcDogNDAlO1xyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICB9XHJcbiAgICAgIC5pY29uIHtcclxuICAgICAgICB3aWR0aDogMTNweDtcclxuICAgICAgICBoZWlnaHQ6IDIycHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5zbGljay1wcmV2IHtcclxuICAgICAgbGVmdDogOHB4O1xyXG4gICAgICAuaWNvbiB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAzcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5zbGljay1uZXh0IHtcclxuICAgICAgcmlnaHQ6IDhweDtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDNweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLnNpdGUtc2VhcmNoIHtcclxuICBtaW4taGVpZ2h0OiByZW0tY2FsYyg4OHB4KTtcclxuICBwYWRkaW5nOiByZW0tY2FsYygyNHB4KSAwIHJlbS1jYWxjKDI0cHgpIDA7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNfX3NlYXJjaC1iYWNrZ3JvdW5kO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xMDAlKTtcclxuICBtYXJnaW4tdG9wOiByZW0tY2FsYygtODhweCk7XHJcbiAgdHJhbnNpdGlvbjogYWxsICRhbmltYXRpb24tc3BlZWQtZmFzdCBlYXNlO1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICBtaW4taGVpZ2h0OiByZW0tY2FsYygxOTRweCk7XHJcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg3OXB4KSAwIHJlbS1jYWxjKDQ4cHgpIDA7XHJcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygtMTk0cHgpO1xyXG4gIH1cclxuICAmLmlzLS1hY3RpdmUge1xyXG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoLTg4cHgpO1xyXG4gICAgbWluLWhlaWdodDogcmVtLWNhbGMoODhweCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygtMTk0cHgpO1xyXG4gICAgICBtaW4taGVpZ2h0OiByZW0tY2FsYygxOTRweCk7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9faW5wdXQge1xyXG4gICAgJlt0eXBlPVwidGV4dFwiXSB7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDM2cHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjRweCk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNHB4KTtcclxuICAgICAgcGFkZGluZzogMCByZW0tY2FsYygxNnB4KSAuNXJlbSAwO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY19fc2VhcmNoLWJhY2tncm91bmQ7XHJcbiAgICAgIGJvcmRlci10b3Atc3R5bGU6IG5vbmU7XHJcbiAgICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBub25lO1xyXG4gICAgICBib3JkZXItcmlnaHQtc3R5bGU6IG5vbmU7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAkY19fc2VhcmNoLWJvcmRlci1kZXNlbGVjdGVkO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICB0cmFuc2l0aW9uOiBhbGwgJGFuaW1hdGlvbi1zcGVlZC1tZWRpdW0gZWFzZTtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiA2NnB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzZweCk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDEuMzkqMzZweCk7XHJcbiAgICAgICAgcGFkZGluZzogMCByZW0tY2FsYyg1MHB4KSAxcmVtIDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOjpwbGFjZWhvbGRlciB7XHJcbiAgICAgIGNvbG9yOiAkY19fc2VhcmNoLXBsYWNlaG9sZGVyO1xyXG4gICAgfVxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogJGNfX3doaXRlO1xyXG4gICAgICBjb2xvcjogJGNfX3doaXRlO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gICZfX2lucHV0LXdyYXBwZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG5cclxuICAuaWNvbi1jb250YWluZXIge1xyXG4gICAgd2lkdGg6IDI0cHg7XHJcbiAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvdHRvbTogcmVtLWNhbGMoMThweCk7XHJcbiAgICAuaWNvbiB7XHJcbiAgICAgIHdpZHRoOiAyNHB4O1xyXG4gICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICB3aWR0aDogMzdweDtcclxuICAgICAgaGVpZ2h0OiAzN3B4O1xyXG4gICAgICBib3R0b206IHJlbS1jYWxjKDIzcHgpO1xyXG4gICAgICAuaWNvbiB7XHJcbiAgICAgICAgd2lkdGg6IDM3cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAzN3B4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5zdGlja3ktc2lkZWJhciB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW46IDMuNDM3NXJlbSAwIDAgMDtcclxuICAgIHBvc2l0aW9uOiBzdGlja3k7XHJcbiAgICB0b3A6IDExMHB4O1xyXG4gIH1cclxufVxyXG4iLCIudGFnLWxpc3Qge1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgcGFkZGluZzogMCAwIDAgMDtcclxuICBtYXJnaW46IHJlbS1jYWxjKDMycHgpIDAgMCAwO1xyXG4gIG1heC13aWR0aDogNTAwcHg7XHJcblxyXG4gICZfX2l0ZW0ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgbWFyZ2luOiAzcHggMCAzcHggMDtcclxuICB9XHJcbiAgJl9fbGluayB7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEycHgpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgY29sb3I6ICRjX19oZWFkaW5nLWRhcmtlcjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDZweCkgcmVtLWNhbGMoNnB4KSByZW0tY2FsYyg2cHgpIHJlbS1jYWxjKDZweCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIzNCwgMjM2LCAyMzksIDAuNik7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjE1cyBlYXNlO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihyZ2JhKDIzNCwgMjM2LCAyMzksIDAuNiksIDEwJSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuIiwiLnRleHQtYmxvY2sge1xyXG5cclxuICAgIC5jb21wb25lbnQtY29udGVudC1nZW5lcmljIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICBcclxuICAgIH1cclxuXHJcbiAgICAudHdvLWNvbCB7XHJcbiAgICAgICAgY29sdW1uczogMTtcclxuICAgICAgICBjb2x1bW4tZ2FwOiAzMHB4O1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgY29sdW1uczogMjtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICB9XHJcblxyXG59IiwiLmhlYWRlciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNfX2JsYWNrO1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB0b3A6IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgei1pbmRleDogMTAwO1xyXG5cclxuICAmX19uYXZiYXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICBmbGV4OiAxIDAgYXV0bztcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBoZWlnaHQ6IDYzcHg7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgIGhlaWdodDogOTBweDtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fbmF2YmFyLXdyYXBwZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgfVxyXG4gICZfX2xvZ28ge1xyXG4gICAgd2lkdGg6IDE3MHB4O1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgbWFyZ2luOiAwIDAgMCAwO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICBtYXJnaW46IDAgcmVtLWNhbGMoMjZweCkgMCAwO1xyXG4gICAgICB3aWR0aDogMjI0cHg7XHJcbiAgICAgIGhlaWdodDogMzlweDtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fbG9nby1pbWFnZSB7XHJcbiAgICB3aWR0aDogMTcwcHg7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBtYXJnaW46IDAgMCAwIDA7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgd2lkdGg6IDIyNHB4O1xyXG4gICAgICBoZWlnaHQ6IDM5cHg7XHJcbiAgICB9XHJcbiAgICAvLyYubmVnIHsgZGlzcGxheTogbm9uZTsgfVxyXG4gIH1cclxuICAmX19uYXZpZ2F0aW9uIHtcclxuICAgIG1hcmdpbjogMCAwIDAgMDtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbmF2IHtcclxuICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gICAgICBtYXJnaW46IDAgMCAwIDA7XHJcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDA7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuXHJcbiAgICAgICZfX2l0ZW0ge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgJisuaGVhZGVyX19uYXZpZ2F0aW9uX19uYXZfX2l0ZW0ge1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmlzLS1hY3RpdmUge1xyXG4gICAgICAgICAgLmhlYWRlcl9fbmF2aWdhdGlvbl9fbmF2X19saW5rLCBcclxuICAgICAgICAgIC5oZWFkZXJfX25hdmlnYXRpb25fX25hdl9fYnV0dG9uIHtcclxuICAgICAgICAgICAgY29sb3I6ICRjX19oZWFkZXItbmF2LWxpbmstYWN0aXZlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJl9fYnV0dG9uLCBcclxuICAgICAgJl9fbGluayB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoNnB4KSByZW0tY2FsYygxMnB4KSByZW0tY2FsYyg2cHgpIHJlbS1jYWxjKDEycHgpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNnB4KTtcclxuICAgICAgICBjb2xvcjogJGNfX2hlYWRlci1uYXYtbGluaztcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsICRhbmltYXRpb24tc3BlZWQtZmFzdCBlYXNlO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGNvbG9yOiAkY19faGVhZGVyLW5hdi1saW5rLWFjdGl2ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgfVxyXG4gICYtc2VhcmNoIHtcclxuICAgICZfX2J1dHRvbiB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDAgMDtcclxuICAgICAgcGFkZGluZzogMCAwIDAgMDtcclxuICAgICAgd2lkdGg6IDE5cHg7XHJcbiAgICAgIGhlaWdodDogMTlweDtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAmLWljb24tc2VhcmNoIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTlweDtcclxuICAgICAgICBoZWlnaHQ6IDE5cHg7XHJcbiAgICAgIH1cclxuICAgICAgJi1pY29uLWNsb3NlIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICBtYXJnaW46IDAgMCAwIGF1dG87XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB6LWluZGV4OiAxMDA7XHJcbiAgfVxyXG59XHJcblxyXG4uZHJvcGRvd24tLWlzLS1hY3RpdmUge1xyXG4gIC5oZWFkZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNfX2JsYWNrO1xyXG4gIH1cclxufVxyXG5cclxuLnNpdGUtc2VhcmNoLWlzLS1hY3RpdmUge1xyXG4gIC5oZWFkZXItc2VhcmNoX19idXR0b24taWNvbi1jbG9zZSB7XHJcbiAgICB3aWR0aDogMTZweDtcclxuICAgIGhlaWdodDogMTZweDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuICAuaGVhZGVyLXNlYXJjaF9fYnV0dG9uLWljb24tc2VhcmNoIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4uc2l0ZS1uYXYtbW9iaWxlLS1hY3RpdmUge1xyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcclxuICAgIC5zaXRlLW5hdi1tb2JpbGVfX2J1dHRvbi1pY29uOmJlZm9yZSxcclxuICAgIC5zaXRlLW5hdi1tb2JpbGVfX2J1dHRvbi1pY29uOmFmdGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGE1MDU4O1xyXG4gICAgfVxyXG4gIH1cclxuICAvKlxyXG4gIC5oZWFkZXJfX2xvZ28taW1hZ2Uge1xyXG4gICAgJi5uZWcge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLnBvcyB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9Ki9cclxufVxyXG4iLCIuZm9vdGVyIHtcclxuICBtYXJnaW46IDAgMCAwIDA7XHJcbiAgcGFkZGluZzogcmVtLWNhbGMoNjVweCkgMCAwIDA7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNfX2Zvb3Rlci1iZztcclxuICBjb2xvcjogJGNfX2Zvb3Rlci10ZXh0O1xyXG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTRweCk7XHJcbiAgLmRpc3BsYXktZmxleCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gIH1cclxuICAmX19sb2dvIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgLmxvZ28ge1xyXG4gICAgICB3aWR0aDogMjI0cHg7XHJcbiAgICAgIGhlaWdodDogMzlweDtcclxuICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICBib3JkZXItc3R5bGU6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3Jvdy10b3Age1xyXG4gICAgJl9fY29tcGFueSB7XHJcbiAgICAgIG9yZGVyOiAxO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19uZXdzbGV0dGVyIHtcclxuICAgICAgbWFyZ2luOiByZW0tY2FsYyg0MHB4KSAwIDAgMDtcclxuICAgICAgb3JkZXI6IDM7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgb3JkZXI6IDI7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19zb2NpYWwge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgb3JkZXI6IDI7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxuICAgICAgLnNvY2lhbC1saW5rcyB7XHJcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMzJweCkgMCAwIDA7XHJcbiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgMCBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAmK2xpIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCByZW0tY2FsYyg4cHgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19saW5rIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgLmltZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAvKlxyXG4gICAgICAgICAgJi50eXBlIHtcclxuICAgICAgICAgICAgJi0tZmFjZWJvb2sge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL1N0YXRpYy9pbWFnZXMvc3ZnL2ZhY2Vib29rLWNpcmNsZS1vLnN2ZycpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtLWluc3RhZ3JhbSB7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvU3RhdGljL2ltYWdlcy9zdmcvaW5zdGFncmFtLWNpcmNsZS1vLnN2ZycpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtLXR3aXR0ZXIge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL1N0YXRpYy9pbWFnZXMvc3ZnL3R3aXR0ZXItY2lyY2xlLW8uc3ZnJyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0qL1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgICAgICAgIG9yZGVyOiAzO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmNvcHlyaWdodCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTRweCk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxLjcxKjE0cHgpO1xyXG4gICAgICBjb2xvcjogJGNfX2Zvb3Rlci1jb3B5cmlnaHQ7XHJcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoMzJweCkgMCAwIDA7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3Jvdy1taWRkbGUge1xyXG4gICAgbWFyZ2luOiByZW0tY2FsYyg0MHB4KSAwIDAgMDtcclxuICAgIHBhZGRpbmc6IDAgMCByZW0tY2FsYyg1NnB4KSAwO1xyXG4gIH1cclxuICAmX19yb3ctYm90dG9tIHtcclxuICAgIHBhZGRpbmc6IDFyZW0gMCAxcmVtIDA7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICZfX2xpbmtzIHtcclxuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgbWFyZ2luOiAwIDAgMCAwO1xyXG4gICAgICBwYWRkaW5nOiAwIDAgMCAwO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBsaSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgJitsaSB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCAwIDA7XHJcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgMCAwIHJlbS1jYWxjKDI0cHgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGEge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxLjcxKjE0cHgpO1xyXG4gICAgICAgIGNvbG9yOiAkY19fZ3JheS1zaHV0dGxlO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIH1cclxuICB9XHJcbiAgJl9faXRlbSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbiAgJl9faGVhZGluZyB7XHJcbiAgICBAaW5jbHVkZSBmX19mb290ZXItaGVhZGluZztcclxuICAgIGNvbG9yOiAkY19fd2hpdGU7XHJcbiAgICBwYWRkaW5nOiAwIDAgcmVtLWNhbGMoOHB4KSAwO1xyXG4gICAgbWFyZ2luOiByZW0tY2FsYyg0MHB4KSAwIDAgMDtcclxuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAkY19fZm9vdGVyLWhlYWRpbmctYm9yZGVyO1xyXG4gICAgJi5uby0tYm9yZGVyIHtcclxuICAgICAgcGFkZGluZzogMCAwIDAgMDtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuICAgIH1cclxuICAgICYubmV3cy1sZXR0ZXIge1xyXG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDE4cHgpIDAgMCAwO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICBtYXJnaW46IDAgMCAwIDA7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2xpbmtzIHtcclxuICAgIHVsIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuICAgICAgbWFyZ2luOiAxcmVtIDAgMCAwO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBjb2x1bW5zOiAyO1xyXG4gICAgICBsaSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgJitsaSB7XHJcbiAgICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDhweCAwIDAgMCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGEge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTRweCk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDEuNzEqMTRweCk7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGNvbG9yOiAkY19fZm9vdGVyLXRleHQ7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBjb2xvcjogbGlnaHRlbigkY19fZm9vdGVyLXRleHQsIDE1JSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICBjb2x1bW5zOiAxO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3VzcCB7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0cHgpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDEuODYqMTRweCk7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgcCB7XHJcbiAgICAgIG1hcmdpbjogMXJlbSAwIDAgMDtcclxuICAgIH1cclxuICAgIGEge1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgY29sb3I6ICRjX193aGl0ZTtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogZGFya2VuKCRjX193aGl0ZSwgMTUlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgZGwge1xyXG4gICAgICBtYXJnaW46IDFyZW0gMCAwIDA7XHJcbiAgICAgIGR0IHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgIH1cclxuICAgICAgZGQge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgICAgICBtYXJnaW46IDAgMCAwIDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gIG1hcmdpbjogNDBweCAwIDAgMDtcclxuICBwYWRkaW5nOiA0MHB4IDAgNDBweCAwO1xyXG59XHJcbiIsIi5jb250ZW50LWdlbmVyYWwge1xyXG4gIHBhZGRpbmc6IDAgMCAwIDA7XHJcblxyXG4gICZfX2JhciB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjX19yZXZpZXctdG9wLWJhci1iZztcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4OiAwIDEgYXV0bztcclxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTZweCkgcmVtLWNhbGMoMjRweCkgcmVtLWNhbGMoMTZweCkgcmVtLWNhbGMoMjRweCk7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE0cHgpIHJlbS1jYWxjKDQwcHgpIHJlbS1jYWxjKDE4cHgpIHJlbS1jYWxjKDQwcHgpO1xyXG4gICAgICBoZWlnaHQ6IDgwcHg7XHJcbiAgICB9XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiAnJztcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgbGVmdDogMTVweDtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICByaWdodDogMTVweDtcclxuICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMTUpO1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJl9fd3JhcHBlciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiA2O1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbWFyZ2luOiAwIGF1dG8gMCBhdXRvO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNfX3doaXRlO1xyXG4gICAgbWluLWhlaWdodDogMTAwMHB4O1xyXG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYygxMzEwcHgpO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoeHh4bGFyZ2UpIHtcclxuICAgICAgdG9wOiByZW0tY2FsYygtMTEwcHgpO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19oZWFkZXIge1xyXG4gICAgLmZpbG0tbWV0YSB7XHJcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoNDBweCkgMCAwIDA7XHJcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDA7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAkY19fZ3JheS1naG9zdDtcclxuXHJcbiAgICAgIGxpIHtcclxuICAgICAgICAmOmZpcnN0LWNoaWxkKCkge1xyXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgZGwge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDAgMDtcclxuICAgICAgICBib3JkZXItdG9wOiBzb2xpZCAxcHggJGNfX2dyYXktZ2hvc3Q7XHJcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoOHB4KSAwIHJlbS1jYWxjKDhweCkgMDtcclxuICAgICAgICBkdCB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxLjYzKjE2cHgpO1xyXG4gICAgICAgICAgY29sb3I6ICM0YTUwNTg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGRkIHtcclxuICAgICAgICAgIG1hcmdpbjogMCAwIDAgMDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxLjYzKjE2cHgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmX190aXRsZSB7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDI2cHgpO1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMS4zMSoyNnB4KTtcclxuICAgIGNvbG9yOiAkY19fcmV2aWV3LXRpdGxlO1xyXG4gICAgbWFyZ2luOiAxcmVtIDAgMCAwO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMycHgpO1xyXG4gICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzIqMS4xM3B4KTtcclxuICAgICAgbWFyZ2luOiByZW0tY2FsYyg1NXB4KSAwIDAgMDtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fcHJlYW1ibGUge1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxOHB4KTtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMTgqMS41Nik7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xyXG4gICAgY29sb3I6ICMzNTNhNDE7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjRweCk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNCoxLjQyKTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fY29udGVudCB7XHJcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg0MHB4KSAwIHJlbS1jYWxjKDcycHgpIDA7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIHBhZGRpbmc6IDAgMCByZW0tY2FsYyg3MnB4KSAwO1xyXG4gICAgfVxyXG4gIH1cclxuICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyB7XHJcbiAgICBtYXJnaW46IHJlbS1jYWxjKDQycHgpIDAgMCAwO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDQ5cHgpIDAgMCAwO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19mb290ZXIge1xyXG4gICAgbWFyZ2luOiByZW0tY2FsYyg0MHB4KSAwIDAgMDtcclxuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDI0cHgpIDAgMCAwO1xyXG4gICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICNjZWQ0ZGE7XHJcbiAgICBwOmZpcnN0LWNoaWxkIHtcclxuICAgICAgbWFyZ2luOiByZW0tY2FsYyg2NHB4KSAwIHJlbS1jYWxjKDgwcHgpIDA7XHJcbiAgICB9XHJcbiAgICBwIGEge1xyXG4gICAgICBjb2xvcjogJGNfX2JyYW5kO1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogZGFya2VuKCRjX19icmFuZCwgMTAlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIuY29udGVudC1hcnRpY2xlIHtcclxuICBwYWRkaW5nOiAwIDAgMCAwO1xyXG5cclxuICAmX19iYXIge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY19fcmV2aWV3LXRvcC1iYXItYmc7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleDogMCAxIGF1dG87XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE2cHgpIHJlbS1jYWxjKDI0cHgpIHJlbS1jYWxjKDE2cHgpIHJlbS1jYWxjKDI0cHgpO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTRweCkgcmVtLWNhbGMoNDBweCkgcmVtLWNhbGMoMThweCkgcmVtLWNhbGMoNDBweCk7XHJcbiAgICAgIGhlaWdodDogODBweDtcclxuICAgIH1cclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBsZWZ0OiAxNXB4O1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIHJpZ2h0OiAxNXB4O1xyXG4gICAgICBoZWlnaHQ6IDFweDtcclxuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xNSk7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmX193cmFwcGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDY7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBtYXJnaW46IDAgYXV0byAwIGF1dG87XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY19fd2hpdGU7XHJcbiAgICBtaW4taGVpZ2h0OiAxMDAwcHg7XHJcbiAgICBtYXgtd2lkdGg6IDEzMTBweDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHh4eGxhcmdlKSB7XHJcbiAgICAgIG1hcmdpbi10b3A6IC0xMTBweDtcclxuICAgIH1cclxuICB9XHJcbiAgJl9faGVhZGVyIHtcclxuICAgIC5maWxtLW1ldGEge1xyXG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICBtYXJnaW46IDQwcHggMCAwIDA7XHJcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDA7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAkY19fZ3JheS1naG9zdDtcclxuXHJcbiAgICAgIGxpIHtcclxuICAgICAgICAmOmZpcnN0LWNoaWxkKCkge1xyXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgZGwge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDAgMDtcclxuICAgICAgICBib3JkZXItdG9wOiBzb2xpZCAxcHggJGNfX2dyYXktZ2hvc3Q7XHJcbiAgICAgICAgcGFkZGluZzogOHB4IDAgOHB4IDA7XHJcbiAgICAgICAgZHQge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMS42MyoxNnB4KTtcclxuICAgICAgICAgIGNvbG9yOiAjNGE1MDU4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBkZCB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCAwIDA7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMS42MyoxNnB4KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyNnB4KTtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMzEqMjZweDtcclxuICAgIGNvbG9yOiAkY19fcmV2aWV3LXRpdGxlO1xyXG4gICAgbWFyZ2luOiAxcmVtIDAgMCAwO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMycHgpO1xyXG4gICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzIqMS4xM3B4KTtcclxuICAgICAgbWFyZ2luOiByZW0tY2FsYyg1NXB4KSAwIDAgMDtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fcHJlYW1ibGUge1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxOHB4KTtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMTgqMS41Nik7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xyXG4gICAgY29sb3I6ICRjX19yZXZpZXctcHJlYW1ibGU7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjRweCk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNCoxLjQyKTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fY29udGVudCB7XHJcbiAgICBwYWRkaW5nOiA0MHB4IDAgNDBweCAwO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICBwYWRkaW5nOiAwIDAgNDBweCAwO1xyXG4gICAgfVxyXG4gIH1cclxuICAuY29tcG9uZW50LWNvbnRlbnQtZ2VuZXJpYyB7XHJcbiAgICBtYXJnaW46IHJlbS1jYWxjKDQycHgpIDAgMCAwO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDQ5cHgpIDAgMCAwO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19mb290ZXIge1xyXG4gICAgbWFyZ2luOiByZW0tY2FsYyg0MHB4KSAwIDAgMDtcclxuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDI0cHgpIDAgMCAwO1xyXG4gICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICNjZWQ0ZGE7XHJcbiAgfVxyXG59XHJcbiIsIi5zZWFyY2gtcmVzdWx0cyB7XHJcbiAgJl9faGVhZGVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjX19iZy1saWdodC1ibHVlO1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoOTNweCkgMCByZW0tY2FsYygzMnB4KSAwO1xyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICBjb2xvcjogJGNfX2hlYWRpbmctZGFya2VyO1xyXG4gICAgICBtYXJnaW46IDAgMCAwIDA7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNTRweCk7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxLjIyKjU0cHgpO1xyXG4gICAgfVxyXG4gICAgJl9fbnVtLWhpdHMge1xyXG4gICAgICBjb2xvcjogJGNfX2hlYWRpbmctZGFya2VyO1xyXG4gICAgICBtYXJnaW46IDFyZW0gMCAwIDA7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwcHgpO1xyXG4gICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMS41KjIwcHgpO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19mb3JtIHtcclxuICAgIG1hcmdpbjogcmVtLWNhbGMoMjRweCkgMCAwIDA7XHJcbiAgICAuaW5wdXQtd3JhcHBlciB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgbWF4LXdpZHRoOiAzNDNweDtcclxuICAgIH1cclxuICAgIC5zZWFyY2gtaW5wdXQge1xyXG4gICAgICBtaW4taGVpZ2h0OiA0MHB4O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgICBib3JkZXI6IHNvbGlkIDFweCAjYWNiNWJkO1xyXG4gICAgICBwYWRkaW5nOiAuNXJlbSAxcmVtO1xyXG4gICAgICBjb2xvcjogJGNfX2JvZHktdGV4dDtcclxuICAgIH1cclxuICAgIC5pY29uLWNvbnRhaW5lciB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgcmlnaHQ6IDFyZW07XHJcbiAgICAgIHRvcDogNTAlO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcclxuICAgICAgd2lkdGg6IDE5cHg7XHJcbiAgICAgIGhlaWdodDogMTlweDtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fcmVzdWx0cyB7XHJcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg2NHB4KSAwIHJlbS1jYWxjKDEyNnB4KSAwO1xyXG4gIH1cclxuICAmX19wYWdpbmF0aW9uIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICNjZWQ0ZGE7XHJcbiAgICBtYXJnaW46IHJlbS1jYWxjKDgwLTI0cHgpIDAgMCAwO1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoNDBweCkgMCAwIDA7XHJcbiAgfVxyXG59XHJcbiJdfQ== */