/*!
 * Bootstrap v4.0.0-alpha.5 (https://getbootstrap.com)
 * Copyright 2011-2016 The Bootstrap Authors
 * Copyright 2011-2016 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*! normalize.css v4.2.0 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  line-height: 1.15;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
progress,
video {
  display: inline-block;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

progress {
  vertical-align: baseline;
}

template,
[hidden] {
  display: none;
}

a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}

a:active,
a:hover {
  outline-width: 0;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

b,
strong {
  font-weight: inherit;
}

b,
strong {
  font-weight: bolder;
}

dfn {
  font-style: italic;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

mark {
  background-color: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
}

svg:not(:root) {
  overflow: hidden;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

figure {
  margin: 1em 40px;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

button,
input,
optgroup,
select,
textarea {
  font: inherit;
  margin: 0;
}

optgroup {
  font-weight: bold;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

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;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

textarea {
  overflow: auto;
}

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

@media print {
  *,
  *::before,
  *::after,
  *::first-letter,
  p::first-line,
  div::first-line,
  blockquote::first-line,
  li::first-line {
    text-shadow: none !important;
    box-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  abbr[title]::after {
    content: " (" attr(title) ")";
  }
  pre {
    white-space: pre-wrap !important;
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  .navbar {
    display: none;
  }
  .btn > .caret,
  .dropup > .btn > .caret {
    border-top-color: #000 !important;
  }
  .tag {
    border: 1px solid #000;
  }
  .table {
    border-collapse: collapse !important;
  }
  .table td,
  .table th {
    background-color: #fff !important;
  }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #ddd !important;
  }
}

html {
  box-sizing: border-box;
}

*,
*::before,
*::after {
  box-sizing: inherit;
}

@-ms-viewport {
  width: device-width;
}

html {
  font-size: 16px;
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: transparent;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 1rem;
  line-height: 1.5;
  color: #373a3c;
  background-color: #fff;
}

[tabindex="-1"]:focus {
  outline: none !important;
}

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: .5rem;
}

p {
  margin-top: 0;
  margin-bottom: 1rem;
}

abbr[title],
abbr[data-original-title] {
  cursor: help;
  border-bottom: 1px dotted #818a91;
}

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: bold;
}

dd {
  margin-bottom: .5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

a {
  color: #122953;
  text-decoration: none;
}

a:focus, a:hover {
  color: #040a14;
  text-decoration: underline;
}

a:focus {
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([tabindex]):focus, a:not([href]):not([tabindex]):hover {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([tabindex]):focus {
  outline: none;
}

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
}

figure {
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;
}

[role="button"] {
  cursor: pointer;
}

a,
area,
button,
[role="button"],
input,
label,
select,
summary,
textarea {
  -ms-touch-action: manipulation;
      touch-action: manipulation;
}

table {
  border-collapse: collapse;
  background-color: transparent;
}

caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #818a91;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: left;
}

label {
  display: inline-block;
  margin-bottom: .5rem;
}

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

input,
button,
select,
textarea {
  line-height: inherit;
}

input[type="radio"]:disabled,
input[type="checkbox"]:disabled {
  cursor: not-allowed;
}

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
  -webkit-appearance: listbox;
}

textarea {
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: .5rem;
  font-size: 1.5rem;
  line-height: inherit;
}

input[type="search"] {
  -webkit-appearance: none;
}

output {
  display: inline-block;
}

[hidden] {
  display: none !important;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin-bottom: 0.5rem;
  font-family: inherit;
  font-weight: 500;
  line-height: 1.1;
  color: inherit;
}

h1, .h1 {
  font-size: 2.5rem;
}

h2, .h2 {
  font-size: 2rem;
}

h3, .h3 {
  font-size: 1.75rem;
}

h4, .h4 {
  font-size: 1.5rem;
}

h5, .h5 {
  font-size: 1.25rem;
}

h6, .h6 {
  font-size: 1rem;
}

.lead {
  font-size: 1.25rem;
  font-weight: 300;
}

.display-1 {
  font-size: 6rem;
  font-weight: 300;
}

.display-2 {
  font-size: 5.5rem;
  font-weight: 300;
}

.display-3 {
  font-size: 4.5rem;
  font-weight: 300;
}

.display-4 {
  font-size: 3.5rem;
  font-weight: 300;
}

hr {
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

small,
.small {
  font-size: 80%;
  font-weight: normal;
}

mark,
.mark {
  padding: 0.2em;
  background-color: #fcf8e3;
}

.list-unstyled {
  padding-left: 0;
  list-style: none;
}

.list-inline {
  padding-left: 0;
  list-style: none;
}

.list-inline-item {
  display: inline-block;
}

.list-inline-item:not(:last-child) {
  margin-right: 5px;
}

.initialism {
  font-size: 90%;
  text-transform: uppercase;
}

.blockquote {
  padding: 0.5rem 1rem;
  margin-bottom: 1rem;
  font-size: 1.25rem;
  border-left: 0.25rem solid #eceeef;
}

.blockquote-footer {
  display: block;
  font-size: 80%;
  color: #818a91;
}

.blockquote-footer::before {
  content: "\2014 \00A0";
}

.blockquote-reverse {
  padding-right: 1rem;
  padding-left: 0;
  text-align: right;
  border-right: 0.25rem solid #eceeef;
  border-left: 0;
}

.blockquote-reverse .blockquote-footer::before {
  content: "";
}

.blockquote-reverse .blockquote-footer::after {
  content: "\00A0 \2014";
}

.img-fluid, #fade .carousel-inner > .carousel-item > img,
#fade .carousel-inner > .carousel-item > a > img, #slide .carousel-inner > .carousel-item > img,
#slide .carousel-inner > .carousel-item > a > img {
  max-width: 100%;
  height: auto;
}

.img-thumbnail {
  padding: 0.25rem;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 0.25rem;
  -webkit-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
  max-width: 100%;
  height: auto;
}

.figure {
  display: inline-block;
}

.figure-img {
  margin-bottom: 0.5rem;
  line-height: 1;
}

.figure-caption {
  font-size: 90%;
  color: #818a91;
}

code,
kbd,
pre,
samp {
  font-family: Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

code {
  padding: 0.2rem 0.4rem;
  font-size: 90%;
  color: #bd4147;
  background-color: #f7f7f9;
  border-radius: 0.25rem;
}

kbd {
  padding: 0.2rem 0.4rem;
  font-size: 90%;
  color: #fff;
  background-color: #333;
  border-radius: 0.2rem;
}

kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: bold;
}

pre {
  display: block;
  margin-top: 0;
  margin-bottom: 1rem;
  font-size: 90%;
  color: #373a3c;
}

pre code {
  padding: 0;
  font-size: inherit;
  color: inherit;
  background-color: transparent;
  border-radius: 0;
}

.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll;
}

.container {
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}

@media (min-width: 544px) {
  .container {
    width: 576px;
    max-width: 100%;
  }
}

@media (min-width: 768px) {
  .container {
    width: 720px;
    max-width: 100%;
  }
}

@media (min-width: 992px) {
  .container {
    width: 940px;
    max-width: 100%;
  }
}

@media (min-width: 1200px) {
  .container {
    width: 1140px;
    max-width: 100%;
  }
}

.container-fluid {
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

@media (min-width: 544px) {
  .row {
    margin-right: -15px;
    margin-left: -15px;
  }
}

@media (min-width: 768px) {
  .row {
    margin-right: -15px;
    margin-left: -15px;
  }
}

@media (min-width: 992px) {
  .row {
    margin-right: -15px;
    margin-left: -15px;
  }
}

@media (min-width: 1200px) {
  .row {
    margin-right: -15px;
    margin-left: -15px;
  }
}

.col-xs, .col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12, .col-sm, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-md, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-lg, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-xl, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12 {
  position: relative;
  min-height: 1px;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}

@media (min-width: 544px) {
  .col-xs, .col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12, .col-sm, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-md, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-lg, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-xl, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12 {
    padding-right: 15px;
    padding-left: 15px;
  }
}

@media (min-width: 768px) {
  .col-xs, .col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12, .col-sm, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-md, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-lg, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-xl, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12 {
    padding-right: 15px;
    padding-left: 15px;
  }
}

@media (min-width: 992px) {
  .col-xs, .col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12, .col-sm, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-md, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-lg, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-xl, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12 {
    padding-right: 15px;
    padding-left: 15px;
  }
}

@media (min-width: 1200px) {
  .col-xs, .col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12, .col-sm, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-md, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-lg, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-xl, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12 {
    padding-right: 15px;
    padding-left: 15px;
  }
}

.col-xs {
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  max-width: 100%;
}

.col-xs-1 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 8.33333%;
          flex: 0 0 8.33333%;
  max-width: 8.33333%;
}

.col-xs-2 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 16.66667%;
          flex: 0 0 16.66667%;
  max-width: 16.66667%;
}

.col-xs-3 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 25%;
          flex: 0 0 25%;
  max-width: 25%;
}

.col-xs-4 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 33.33333%;
          flex: 0 0 33.33333%;
  max-width: 33.33333%;
}

.col-xs-5 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 41.66667%;
          flex: 0 0 41.66667%;
  max-width: 41.66667%;
}

.col-xs-6 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
  max-width: 50%;
}

.col-xs-7 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 58.33333%;
          flex: 0 0 58.33333%;
  max-width: 58.33333%;
}

.col-xs-8 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 66.66667%;
          flex: 0 0 66.66667%;
  max-width: 66.66667%;
}

.col-xs-9 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 75%;
          flex: 0 0 75%;
  max-width: 75%;
}

.col-xs-10 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 83.33333%;
          flex: 0 0 83.33333%;
  max-width: 83.33333%;
}

.col-xs-11 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 91.66667%;
          flex: 0 0 91.66667%;
  max-width: 91.66667%;
}

.col-xs-12 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
  max-width: 100%;
}

.pull-xs-0 {
  right: auto;
}

.pull-xs-1 {
  right: 8.33333%;
}

.pull-xs-2 {
  right: 16.66667%;
}

.pull-xs-3 {
  right: 25%;
}

.pull-xs-4 {
  right: 33.33333%;
}

.pull-xs-5 {
  right: 41.66667%;
}

.pull-xs-6 {
  right: 50%;
}

.pull-xs-7 {
  right: 58.33333%;
}

.pull-xs-8 {
  right: 66.66667%;
}

.pull-xs-9 {
  right: 75%;
}

.pull-xs-10 {
  right: 83.33333%;
}

.pull-xs-11 {
  right: 91.66667%;
}

.pull-xs-12 {
  right: 100%;
}

.push-xs-0 {
  left: auto;
}

.push-xs-1 {
  left: 8.33333%;
}

.push-xs-2 {
  left: 16.66667%;
}

.push-xs-3 {
  left: 25%;
}

.push-xs-4 {
  left: 33.33333%;
}

.push-xs-5 {
  left: 41.66667%;
}

.push-xs-6 {
  left: 50%;
}

.push-xs-7 {
  left: 58.33333%;
}

.push-xs-8 {
  left: 66.66667%;
}

.push-xs-9 {
  left: 75%;
}

.push-xs-10 {
  left: 83.33333%;
}

.push-xs-11 {
  left: 91.66667%;
}

.push-xs-12 {
  left: 100%;
}

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 544px) {
  .col-sm {
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    max-width: 100%;
  }
  .col-sm-1 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 8.33333%;
            flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-sm-2 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-sm-3 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%;
  }
  .col-sm-4 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-sm-5 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 41.66667%;
            flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-sm-6 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%;
  }
  .col-sm-7 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 58.33333%;
            flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-sm-8 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 66.66667%;
            flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-sm-9 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%;
  }
  .col-sm-10 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 83.33333%;
            flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-sm-11 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 91.66667%;
            flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-sm-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }
  .pull-sm-0 {
    right: auto;
  }
  .pull-sm-1 {
    right: 8.33333%;
  }
  .pull-sm-2 {
    right: 16.66667%;
  }
  .pull-sm-3 {
    right: 25%;
  }
  .pull-sm-4 {
    right: 33.33333%;
  }
  .pull-sm-5 {
    right: 41.66667%;
  }
  .pull-sm-6 {
    right: 50%;
  }
  .pull-sm-7 {
    right: 58.33333%;
  }
  .pull-sm-8 {
    right: 66.66667%;
  }
  .pull-sm-9 {
    right: 75%;
  }
  .pull-sm-10 {
    right: 83.33333%;
  }
  .pull-sm-11 {
    right: 91.66667%;
  }
  .pull-sm-12 {
    right: 100%;
  }
  .push-sm-0 {
    left: auto;
  }
  .push-sm-1 {
    left: 8.33333%;
  }
  .push-sm-2 {
    left: 16.66667%;
  }
  .push-sm-3 {
    left: 25%;
  }
  .push-sm-4 {
    left: 33.33333%;
  }
  .push-sm-5 {
    left: 41.66667%;
  }
  .push-sm-6 {
    left: 50%;
  }
  .push-sm-7 {
    left: 58.33333%;
  }
  .push-sm-8 {
    left: 66.66667%;
  }
  .push-sm-9 {
    left: 75%;
  }
  .push-sm-10 {
    left: 83.33333%;
  }
  .push-sm-11 {
    left: 91.66667%;
  }
  .push-sm-12 {
    left: 100%;
  }
  .offset-sm-0 {
    margin-left: 0%;
  }
  .offset-sm-1 {
    margin-left: 8.33333%;
  }
  .offset-sm-2 {
    margin-left: 16.66667%;
  }
  .offset-sm-3 {
    margin-left: 25%;
  }
  .offset-sm-4 {
    margin-left: 33.33333%;
  }
  .offset-sm-5 {
    margin-left: 41.66667%;
  }
  .offset-sm-6 {
    margin-left: 50%;
  }
  .offset-sm-7 {
    margin-left: 58.33333%;
  }
  .offset-sm-8 {
    margin-left: 66.66667%;
  }
  .offset-sm-9 {
    margin-left: 75%;
  }
  .offset-sm-10 {
    margin-left: 83.33333%;
  }
  .offset-sm-11 {
    margin-left: 91.66667%;
  }
}

@media (min-width: 768px) {
  .col-md {
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    max-width: 100%;
  }
  .col-md-1 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 8.33333%;
            flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-md-2 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-md-3 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%;
  }
  .col-md-4 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-md-5 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 41.66667%;
            flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-md-6 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%;
  }
  .col-md-7 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 58.33333%;
            flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-md-8 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 66.66667%;
            flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-md-9 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%;
  }
  .col-md-10 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 83.33333%;
            flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-md-11 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 91.66667%;
            flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-md-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }
  .pull-md-0 {
    right: auto;
  }
  .pull-md-1 {
    right: 8.33333%;
  }
  .pull-md-2 {
    right: 16.66667%;
  }
  .pull-md-3 {
    right: 25%;
  }
  .pull-md-4 {
    right: 33.33333%;
  }
  .pull-md-5 {
    right: 41.66667%;
  }
  .pull-md-6 {
    right: 50%;
  }
  .pull-md-7 {
    right: 58.33333%;
  }
  .pull-md-8 {
    right: 66.66667%;
  }
  .pull-md-9 {
    right: 75%;
  }
  .pull-md-10 {
    right: 83.33333%;
  }
  .pull-md-11 {
    right: 91.66667%;
  }
  .pull-md-12 {
    right: 100%;
  }
  .push-md-0 {
    left: auto;
  }
  .push-md-1 {
    left: 8.33333%;
  }
  .push-md-2 {
    left: 16.66667%;
  }
  .push-md-3 {
    left: 25%;
  }
  .push-md-4 {
    left: 33.33333%;
  }
  .push-md-5 {
    left: 41.66667%;
  }
  .push-md-6 {
    left: 50%;
  }
  .push-md-7 {
    left: 58.33333%;
  }
  .push-md-8 {
    left: 66.66667%;
  }
  .push-md-9 {
    left: 75%;
  }
  .push-md-10 {
    left: 83.33333%;
  }
  .push-md-11 {
    left: 91.66667%;
  }
  .push-md-12 {
    left: 100%;
  }
  .offset-md-0 {
    margin-left: 0%;
  }
  .offset-md-1 {
    margin-left: 8.33333%;
  }
  .offset-md-2 {
    margin-left: 16.66667%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .offset-md-4 {
    margin-left: 33.33333%;
  }
  .offset-md-5 {
    margin-left: 41.66667%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .offset-md-7 {
    margin-left: 58.33333%;
  }
  .offset-md-8 {
    margin-left: 66.66667%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .offset-md-10 {
    margin-left: 83.33333%;
  }
  .offset-md-11 {
    margin-left: 91.66667%;
  }
}

@media (min-width: 992px) {
  .col-lg {
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    max-width: 100%;
  }
  .col-lg-1 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 8.33333%;
            flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-lg-2 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-lg-3 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%;
  }
  .col-lg-4 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-lg-5 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 41.66667%;
            flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-lg-6 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%;
  }
  .col-lg-7 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 58.33333%;
            flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-lg-8 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 66.66667%;
            flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-lg-9 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%;
  }
  .col-lg-10 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 83.33333%;
            flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-lg-11 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 91.66667%;
            flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-lg-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }
  .pull-lg-0 {
    right: auto;
  }
  .pull-lg-1 {
    right: 8.33333%;
  }
  .pull-lg-2 {
    right: 16.66667%;
  }
  .pull-lg-3 {
    right: 25%;
  }
  .pull-lg-4 {
    right: 33.33333%;
  }
  .pull-lg-5 {
    right: 41.66667%;
  }
  .pull-lg-6 {
    right: 50%;
  }
  .pull-lg-7 {
    right: 58.33333%;
  }
  .pull-lg-8 {
    right: 66.66667%;
  }
  .pull-lg-9 {
    right: 75%;
  }
  .pull-lg-10 {
    right: 83.33333%;
  }
  .pull-lg-11 {
    right: 91.66667%;
  }
  .pull-lg-12 {
    right: 100%;
  }
  .push-lg-0 {
    left: auto;
  }
  .push-lg-1 {
    left: 8.33333%;
  }
  .push-lg-2 {
    left: 16.66667%;
  }
  .push-lg-3 {
    left: 25%;
  }
  .push-lg-4 {
    left: 33.33333%;
  }
  .push-lg-5 {
    left: 41.66667%;
  }
  .push-lg-6 {
    left: 50%;
  }
  .push-lg-7 {
    left: 58.33333%;
  }
  .push-lg-8 {
    left: 66.66667%;
  }
  .push-lg-9 {
    left: 75%;
  }
  .push-lg-10 {
    left: 83.33333%;
  }
  .push-lg-11 {
    left: 91.66667%;
  }
  .push-lg-12 {
    left: 100%;
  }
  .offset-lg-0 {
    margin-left: 0%;
  }
  .offset-lg-1 {
    margin-left: 8.33333%;
  }
  .offset-lg-2 {
    margin-left: 16.66667%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .offset-lg-4 {
    margin-left: 33.33333%;
  }
  .offset-lg-5 {
    margin-left: 41.66667%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .offset-lg-7 {
    margin-left: 58.33333%;
  }
  .offset-lg-8 {
    margin-left: 66.66667%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .offset-lg-10 {
    margin-left: 83.33333%;
  }
  .offset-lg-11 {
    margin-left: 91.66667%;
  }
}

@media (min-width: 1200px) {
  .col-xl {
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    max-width: 100%;
  }
  .col-xl-1 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 8.33333%;
            flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-xl-2 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-xl-3 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%;
  }
  .col-xl-4 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-xl-5 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 41.66667%;
            flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-xl-6 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%;
  }
  .col-xl-7 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 58.33333%;
            flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-xl-8 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 66.66667%;
            flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-xl-9 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%;
  }
  .col-xl-10 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 83.33333%;
            flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-xl-11 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 91.66667%;
            flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-xl-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }
  .pull-xl-0 {
    right: auto;
  }
  .pull-xl-1 {
    right: 8.33333%;
  }
  .pull-xl-2 {
    right: 16.66667%;
  }
  .pull-xl-3 {
    right: 25%;
  }
  .pull-xl-4 {
    right: 33.33333%;
  }
  .pull-xl-5 {
    right: 41.66667%;
  }
  .pull-xl-6 {
    right: 50%;
  }
  .pull-xl-7 {
    right: 58.33333%;
  }
  .pull-xl-8 {
    right: 66.66667%;
  }
  .pull-xl-9 {
    right: 75%;
  }
  .pull-xl-10 {
    right: 83.33333%;
  }
  .pull-xl-11 {
    right: 91.66667%;
  }
  .pull-xl-12 {
    right: 100%;
  }
  .push-xl-0 {
    left: auto;
  }
  .push-xl-1 {
    left: 8.33333%;
  }
  .push-xl-2 {
    left: 16.66667%;
  }
  .push-xl-3 {
    left: 25%;
  }
  .push-xl-4 {
    left: 33.33333%;
  }
  .push-xl-5 {
    left: 41.66667%;
  }
  .push-xl-6 {
    left: 50%;
  }
  .push-xl-7 {
    left: 58.33333%;
  }
  .push-xl-8 {
    left: 66.66667%;
  }
  .push-xl-9 {
    left: 75%;
  }
  .push-xl-10 {
    left: 83.33333%;
  }
  .push-xl-11 {
    left: 91.66667%;
  }
  .push-xl-12 {
    left: 100%;
  }
  .offset-xl-0 {
    margin-left: 0%;
  }
  .offset-xl-1 {
    margin-left: 8.33333%;
  }
  .offset-xl-2 {
    margin-left: 16.66667%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .offset-xl-4 {
    margin-left: 33.33333%;
  }
  .offset-xl-5 {
    margin-left: 41.66667%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .offset-xl-7 {
    margin-left: 58.33333%;
  }
  .offset-xl-8 {
    margin-left: 66.66667%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .offset-xl-10 {
    margin-left: 83.33333%;
  }
  .offset-xl-11 {
    margin-left: 91.66667%;
  }
}

.table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 1rem;
}

.table th,
.table td {
  padding: 0.75rem;
  vertical-align: top;
  border-top: 1px solid #eceeef;
}

.table thead th {
  vertical-align: bottom;
  border-bottom: 2px solid #eceeef;
}

.table tbody + tbody {
  border-top: 2px solid #eceeef;
}

.table .table {
  background-color: #fff;
}

.table-sm th,
.table-sm td {
  padding: 0.3rem;
}

.table-bordered {
  border: 1px solid #eceeef;
}

.table-bordered th,
.table-bordered td {
  border: 1px solid #eceeef;
}

.table-bordered thead th,
.table-bordered thead td {
  border-bottom-width: 2px;
}

.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(0, 0, 0, 0.05);
}

.table-hover tbody tr:hover {
  background-color: rgba(0, 0, 0, 0.075);
}

.table-active,
.table-active > th,
.table-active > td {
  background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover {
  background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
  background-color: rgba(0, 0, 0, 0.075);
}

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

.table-hover .table-success:hover {
  background-color: #d0e9c6;
}

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

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

.table-hover .table-info:hover {
  background-color: #c4e3f3;
}

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

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

.table-hover .table-warning:hover {
  background-color: #faf2cc;
}

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

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

.table-hover .table-danger:hover {
  background-color: #ebcccc;
}

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

.thead-inverse th {
  color: #fff;
  background-color: #373a3c;
}

.thead-default th {
  color: #55595c;
  background-color: #eceeef;
}

.table-inverse {
  color: #eceeef;
  background-color: #373a3c;
}

.table-inverse th,
.table-inverse td,
.table-inverse thead th {
  border-color: #55595c;
}

.table-inverse.table-bordered {
  border: 0;
}

.table-responsive {
  display: block;
  width: 100%;
  min-height: 0%;
  overflow-x: auto;
}

.table-reflow thead {
  float: left;
}

.table-reflow tbody {
  display: block;
  white-space: nowrap;
}

.table-reflow th,
.table-reflow td {
  border-top: 1px solid #eceeef;
  border-left: 1px solid #eceeef;
}

.table-reflow th:last-child,
.table-reflow td:last-child {
  border-right: 1px solid #eceeef;
}

.table-reflow thead:last-child tr:last-child th,
.table-reflow thead:last-child tr:last-child td,
.table-reflow tbody:last-child tr:last-child th,
.table-reflow tbody:last-child tr:last-child td,
.table-reflow tfoot:last-child tr:last-child th,
.table-reflow tfoot:last-child tr:last-child td {
  border-bottom: 1px solid #eceeef;
}

.table-reflow tr {
  float: left;
}

.table-reflow tr th,
.table-reflow tr td {
  display: block !important;
  border: 1px solid #eceeef;
}

.form-control {
  display: block;
  width: 100%;
  padding: 0.5rem 0.75rem;
  font-size: 1rem;
  line-height: 1.25;
  color: #55595c;
  background-color: #fff;
  background-image: none;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
}

.form-control::-ms-expand {
  background-color: transparent;
  border: 0;
}

.form-control:focus {
  color: #55595c;
  background-color: #fff;
  border-color: #66afe9;
  outline: none;
}

.form-control::-webkit-input-placeholder {
  color: #999;
  opacity: 1;
}

.form-control::-moz-placeholder {
  color: #999;
  opacity: 1;
}

.form-control:-ms-input-placeholder {
  color: #999;
  opacity: 1;
}

.form-control::placeholder {
  color: #999;
  opacity: 1;
}

.form-control:disabled, .form-control[readonly] {
  background-color: #eceeef;
  opacity: 1;
}

.form-control:disabled {
  cursor: not-allowed;
}

select.form-control:not([size]):not([multiple]) {
  height: calc(2.5rem - 2px);
}

select.form-control:focus::-ms-value {
  color: #55595c;
  background-color: #fff;
}

.form-control-file,
.form-control-range {
  display: block;
}

.col-form-label {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  margin-bottom: 0;
}

.col-form-label-lg {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  font-size: 1.25rem;
}

.col-form-label-sm {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  font-size: 0.875rem;
}

.col-form-legend {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  margin-bottom: 0;
  font-size: 1rem;
}

.form-control-static {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  line-height: 1.25;
  border: solid transparent;
  border-width: 1px 0;
}

.form-control-static.form-control-sm, .input-group-sm > .form-control-static.form-control,
.input-group-sm > .form-control-static.input-group-addon,
.input-group-sm > .input-group-btn > .form-control-static.btn, .form-control-static.form-control-lg, .input-group-lg > .form-control-static.form-control,
.input-group-lg > .form-control-static.input-group-addon,
.input-group-lg > .input-group-btn > .form-control-static.btn {
  padding-right: 0;
  padding-left: 0;
}

.form-control-sm, .input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  border-radius: 0.2rem;
}

select.form-control-sm:not([size]):not([multiple]), .input-group-sm > select.form-control:not([size]):not([multiple]),
.input-group-sm > select.input-group-addon:not([size]):not([multiple]),
.input-group-sm > .input-group-btn > select.btn:not([size]):not([multiple]) {
  height: 1.8125rem;
}

.form-control-lg, .input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
  border-radius: 0.3rem;
}

select.form-control-lg:not([size]):not([multiple]), .input-group-lg > select.form-control:not([size]):not([multiple]),
.input-group-lg > select.input-group-addon:not([size]):not([multiple]),
.input-group-lg > .input-group-btn > select.btn:not([size]):not([multiple]) {
  height: 3.16667rem;
}

.form-group {
  margin-bottom: 1rem;
}

.form-text {
  display: block;
  margin-top: 0.25rem;
}

.form-check {
  position: relative;
  display: block;
  margin-bottom: 0.75rem;
}

.form-check + .form-check {
  margin-top: -.25rem;
}

.form-check.disabled .form-check-label {
  color: #818a91;
  cursor: not-allowed;
}

.form-check-label {
  padding-left: 1.25rem;
  margin-bottom: 0;
  cursor: pointer;
}

.form-check-input {
  position: absolute;
  margin-top: .25rem;
  margin-left: -1.25rem;
}

.form-check-input:only-child {
  position: static;
}

.form-check-inline {
  position: relative;
  display: inline-block;
  padding-left: 1.25rem;
  margin-bottom: 0;
  vertical-align: middle;
  cursor: pointer;
}

.form-check-inline + .form-check-inline {
  margin-left: .75rem;
}

.form-check-inline.disabled {
  color: #818a91;
  cursor: not-allowed;
}

.form-control-feedback {
  margin-top: 0.25rem;
}

.form-control-success,
.form-control-warning,
.form-control-danger {
  padding-right: 2.25rem;
  background-repeat: no-repeat;
  background-position: center right 0.625rem;
  background-size: 1.25rem 1.25rem;
}

.has-success .form-control-feedback,
.has-success .form-control-label,
.has-success .form-check-label,
.has-success .form-check-inline,
.has-success .custom-control {
  color: #5cb85c;
}

.has-success .form-control {
  border-color: #5cb85c;
}

.has-success .form-control:focus {
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #a3d7a3;
}

.has-success .input-group-addon {
  color: #5cb85c;
  border-color: #5cb85c;
  background-color: #eaf6ea;
}

.has-success .form-control-success {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='#5cb85c' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E");
}

.has-warning .form-control-feedback,
.has-warning .form-control-label,
.has-warning .form-check-label,
.has-warning .form-check-inline,
.has-warning .custom-control {
  color: #f0ad4e;
}

.has-warning .form-control {
  border-color: #f0ad4e;
}

.has-warning .form-control:focus {
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #f8d9ac;
}

.has-warning .input-group-addon {
  color: #f0ad4e;
  border-color: #f0ad4e;
  background-color: white;
}

.has-warning .form-control-warning {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='#f0ad4e' d='M4.4 5.324h-.8v-2.46h.8zm0 1.42h-.8V5.89h.8zM3.76.63L.04 7.075c-.115.2.016.425.26.426h7.397c.242 0 .372-.226.258-.426C6.726 4.924 5.47 2.79 4.253.63c-.113-.174-.39-.174-.494 0z'/%3E%3C/svg%3E");
}

.has-danger .form-control-feedback,
.has-danger .form-control-label,
.has-danger .form-check-label,
.has-danger .form-check-inline,
.has-danger .custom-control {
  color: #ca161f;
}

.has-danger .form-control {
  border-color: #ca161f;
}

.has-danger .form-control:focus {
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ed5960;
}

.has-danger .input-group-addon {
  color: #ca161f;
  border-color: #ca161f;
  background-color: #f7b5b8;
}

.has-danger .form-control-danger {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='#ca161f' viewBox='-2 -2 7 7'%3E%3Cpath stroke='%23d9534f' d='M0 0l3 3m0-3L0 3'/%3E%3Ccircle r='.5'/%3E%3Ccircle cx='3' r='.5'/%3E%3Ccircle cy='3' r='.5'/%3E%3Ccircle cx='3' cy='3' r='.5'/%3E%3C/svg%3E");
}

@media (min-width: 544px) {
  .form-inline .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .form-inline .form-control-static {
    display: inline-block;
  }
  .form-inline .input-group {
    display: inline-table;
    width: auto;
    vertical-align: middle;
  }
  .form-inline .input-group .input-group-addon,
  .form-inline .input-group .input-group-btn,
  .form-inline .input-group .form-control {
    width: auto;
  }
  .form-inline .input-group > .form-control {
    width: 100%;
  }
  .form-inline .form-control-label {
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .form-check {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .form-check-label {
    padding-left: 0;
  }
  .form-inline .form-check-input {
    position: relative;
    margin-left: 0;
  }
  .form-inline .has-feedback .form-control-feedback {
    top: 0;
  }
}

.btn {
  display: inline-block;
  font-weight: normal;
  line-height: 1.25;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  border: 1px solid transparent;
  padding: 0.5rem 1rem;
  font-size: 1rem;
  border-radius: 0.25rem;
}

.btn:focus, .btn.focus, .btn:active:focus, .btn:active.focus, .btn.active:focus, .btn.active.focus {
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

.btn:focus, .btn:hover {
  text-decoration: none;
}

.btn.focus {
  text-decoration: none;
}

.btn:active, .btn.active {
  background-image: none;
  outline: 0;
}

.btn.disabled, .btn:disabled {
  cursor: not-allowed;
  opacity: .65;
}

a.btn.disabled,
fieldset[disabled] a.btn {
  pointer-events: none;
}

.btn-primary {
  color: #fff;
  background-color: #122953;
  border-color: #122953;
}

.btn-primary:hover {
  color: #fff;
  background-color: #091429;
  border-color: #071021;
}

.btn-primary:focus, .btn-primary.focus {
  color: #fff;
  background-color: #091429;
  border-color: #071021;
}

.btn-primary:active, .btn-primary.active,
.open > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #091429;
  border-color: #071021;
  background-image: none;
}

.btn-primary:active:hover, .btn-primary:active:focus, .btn-primary:active.focus, .btn-primary.active:hover, .btn-primary.active:focus, .btn-primary.active.focus,
.open > .btn-primary.dropdown-toggle:hover,
.open > .btn-primary.dropdown-toggle:focus,
.open > .btn-primary.dropdown-toggle.focus {
  color: #fff;
  background-color: #03060c;
  border-color: black;
}

.btn-primary.disabled:focus, .btn-primary.disabled.focus, .btn-primary:disabled:focus, .btn-primary:disabled.focus {
  background-color: #122953;
  border-color: #122953;
}

.btn-primary.disabled:hover, .btn-primary:disabled:hover {
  background-color: #122953;
  border-color: #122953;
}

.btn-secondary {
  color: #373a3c;
  background-color: #fff;
  border-color: #ccc;
}

.btn-secondary:hover {
  color: #373a3c;
  background-color: #e6e6e6;
  border-color: #adadad;
}

.btn-secondary:focus, .btn-secondary.focus {
  color: #373a3c;
  background-color: #e6e6e6;
  border-color: #adadad;
}

.btn-secondary:active, .btn-secondary.active,
.open > .btn-secondary.dropdown-toggle {
  color: #373a3c;
  background-color: #e6e6e6;
  border-color: #adadad;
  background-image: none;
}

.btn-secondary:active:hover, .btn-secondary:active:focus, .btn-secondary:active.focus, .btn-secondary.active:hover, .btn-secondary.active:focus, .btn-secondary.active.focus,
.open > .btn-secondary.dropdown-toggle:hover,
.open > .btn-secondary.dropdown-toggle:focus,
.open > .btn-secondary.dropdown-toggle.focus {
  color: #373a3c;
  background-color: #d4d4d4;
  border-color: #8c8c8c;
}

.btn-secondary.disabled:focus, .btn-secondary.disabled.focus, .btn-secondary:disabled:focus, .btn-secondary:disabled.focus {
  background-color: #fff;
  border-color: #ccc;
}

.btn-secondary.disabled:hover, .btn-secondary:disabled:hover {
  background-color: #fff;
  border-color: #ccc;
}

.btn-info {
  color: #fff;
  background-color: #5bc0de;
  border-color: #5bc0de;
}

.btn-info:hover {
  color: #fff;
  background-color: #31b0d5;
  border-color: #2aabd2;
}

.btn-info:focus, .btn-info.focus {
  color: #fff;
  background-color: #31b0d5;
  border-color: #2aabd2;
}

.btn-info:active, .btn-info.active,
.open > .btn-info.dropdown-toggle {
  color: #fff;
  background-color: #31b0d5;
  border-color: #2aabd2;
  background-image: none;
}

.btn-info:active:hover, .btn-info:active:focus, .btn-info:active.focus, .btn-info.active:hover, .btn-info.active:focus, .btn-info.active.focus,
.open > .btn-info.dropdown-toggle:hover,
.open > .btn-info.dropdown-toggle:focus,
.open > .btn-info.dropdown-toggle.focus {
  color: #fff;
  background-color: #269abc;
  border-color: #1f7e9a;
}

.btn-info.disabled:focus, .btn-info.disabled.focus, .btn-info:disabled:focus, .btn-info:disabled.focus {
  background-color: #5bc0de;
  border-color: #5bc0de;
}

.btn-info.disabled:hover, .btn-info:disabled:hover {
  background-color: #5bc0de;
  border-color: #5bc0de;
}

.btn-success {
  color: #fff;
  background-color: #5cb85c;
  border-color: #5cb85c;
}

.btn-success:hover {
  color: #fff;
  background-color: #449d44;
  border-color: #419641;
}

.btn-success:focus, .btn-success.focus {
  color: #fff;
  background-color: #449d44;
  border-color: #419641;
}

.btn-success:active, .btn-success.active,
.open > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #449d44;
  border-color: #419641;
  background-image: none;
}

.btn-success:active:hover, .btn-success:active:focus, .btn-success:active.focus, .btn-success.active:hover, .btn-success.active:focus, .btn-success.active.focus,
.open > .btn-success.dropdown-toggle:hover,
.open > .btn-success.dropdown-toggle:focus,
.open > .btn-success.dropdown-toggle.focus {
  color: #fff;
  background-color: #398439;
  border-color: #2d672d;
}

.btn-success.disabled:focus, .btn-success.disabled.focus, .btn-success:disabled:focus, .btn-success:disabled.focus {
  background-color: #5cb85c;
  border-color: #5cb85c;
}

.btn-success.disabled:hover, .btn-success:disabled:hover {
  background-color: #5cb85c;
  border-color: #5cb85c;
}

.btn-warning {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #f0ad4e;
}

.btn-warning:hover {
  color: #fff;
  background-color: #ec971f;
  border-color: #eb9316;
}

.btn-warning:focus, .btn-warning.focus {
  color: #fff;
  background-color: #ec971f;
  border-color: #eb9316;
}

.btn-warning:active, .btn-warning.active,
.open > .btn-warning.dropdown-toggle {
  color: #fff;
  background-color: #ec971f;
  border-color: #eb9316;
  background-image: none;
}

.btn-warning:active:hover, .btn-warning:active:focus, .btn-warning:active.focus, .btn-warning.active:hover, .btn-warning.active:focus, .btn-warning.active.focus,
.open > .btn-warning.dropdown-toggle:hover,
.open > .btn-warning.dropdown-toggle:focus,
.open > .btn-warning.dropdown-toggle.focus {
  color: #fff;
  background-color: #d58512;
  border-color: #b06d0f;
}

.btn-warning.disabled:focus, .btn-warning.disabled.focus, .btn-warning:disabled:focus, .btn-warning:disabled.focus {
  background-color: #f0ad4e;
  border-color: #f0ad4e;
}

.btn-warning.disabled:hover, .btn-warning:disabled:hover {
  background-color: #f0ad4e;
  border-color: #f0ad4e;
}

.btn-danger {
  color: #fff;
  background-color: #ca161f;
  border-color: #ca161f;
}

.btn-danger:hover {
  color: #fff;
  background-color: #9c1118;
  border-color: #931017;
}

.btn-danger:focus, .btn-danger.focus {
  color: #fff;
  background-color: #9c1118;
  border-color: #931017;
}

.btn-danger:active, .btn-danger.active,
.open > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #9c1118;
  border-color: #931017;
  background-image: none;
}

.btn-danger:active:hover, .btn-danger:active:focus, .btn-danger:active.focus, .btn-danger.active:hover, .btn-danger.active:focus, .btn-danger.active.focus,
.open > .btn-danger.dropdown-toggle:hover,
.open > .btn-danger.dropdown-toggle:focus,
.open > .btn-danger.dropdown-toggle.focus {
  color: #fff;
  background-color: #7c0d13;
  border-color: #57090d;
}

.btn-danger.disabled:focus, .btn-danger.disabled.focus, .btn-danger:disabled:focus, .btn-danger:disabled.focus {
  background-color: #ca161f;
  border-color: #ca161f;
}

.btn-danger.disabled:hover, .btn-danger:disabled:hover {
  background-color: #ca161f;
  border-color: #ca161f;
}

.btn-outline-primary {
  color: #122953;
  background-image: none;
  background-color: transparent;
  border-color: #122953;
}

.btn-outline-primary:hover {
  color: #fff;
  background-color: #122953;
  border-color: #122953;
}

.btn-outline-primary:focus, .btn-outline-primary.focus {
  color: #fff;
  background-color: #122953;
  border-color: #122953;
}

.btn-outline-primary:active, .btn-outline-primary.active,
.open > .btn-outline-primary.dropdown-toggle {
  color: #fff;
  background-color: #122953;
  border-color: #122953;
}

.btn-outline-primary:active:hover, .btn-outline-primary:active:focus, .btn-outline-primary:active.focus, .btn-outline-primary.active:hover, .btn-outline-primary.active:focus, .btn-outline-primary.active.focus,
.open > .btn-outline-primary.dropdown-toggle:hover,
.open > .btn-outline-primary.dropdown-toggle:focus,
.open > .btn-outline-primary.dropdown-toggle.focus {
  color: #fff;
  background-color: #03060c;
  border-color: black;
}

.btn-outline-primary.disabled:focus, .btn-outline-primary.disabled.focus, .btn-outline-primary:disabled:focus, .btn-outline-primary:disabled.focus {
  border-color: #2452a7;
}

.btn-outline-primary.disabled:hover, .btn-outline-primary:disabled:hover {
  border-color: #2452a7;
}

.btn-outline-secondary {
  color: #ccc;
  background-image: none;
  background-color: transparent;
  border-color: #ccc;
}

.btn-outline-secondary:hover {
  color: #fff;
  background-color: #ccc;
  border-color: #ccc;
}

.btn-outline-secondary:focus, .btn-outline-secondary.focus {
  color: #fff;
  background-color: #ccc;
  border-color: #ccc;
}

.btn-outline-secondary:active, .btn-outline-secondary.active,
.open > .btn-outline-secondary.dropdown-toggle {
  color: #fff;
  background-color: #ccc;
  border-color: #ccc;
}

.btn-outline-secondary:active:hover, .btn-outline-secondary:active:focus, .btn-outline-secondary:active.focus, .btn-outline-secondary.active:hover, .btn-outline-secondary.active:focus, .btn-outline-secondary.active.focus,
.open > .btn-outline-secondary.dropdown-toggle:hover,
.open > .btn-outline-secondary.dropdown-toggle:focus,
.open > .btn-outline-secondary.dropdown-toggle.focus {
  color: #fff;
  background-color: #a1a1a1;
  border-color: #8c8c8c;
}

.btn-outline-secondary.disabled:focus, .btn-outline-secondary.disabled.focus, .btn-outline-secondary:disabled:focus, .btn-outline-secondary:disabled.focus {
  border-color: white;
}

.btn-outline-secondary.disabled:hover, .btn-outline-secondary:disabled:hover {
  border-color: white;
}

.btn-outline-info {
  color: #5bc0de;
  background-image: none;
  background-color: transparent;
  border-color: #5bc0de;
}

.btn-outline-info:hover {
  color: #fff;
  background-color: #5bc0de;
  border-color: #5bc0de;
}

.btn-outline-info:focus, .btn-outline-info.focus {
  color: #fff;
  background-color: #5bc0de;
  border-color: #5bc0de;
}

.btn-outline-info:active, .btn-outline-info.active,
.open > .btn-outline-info.dropdown-toggle {
  color: #fff;
  background-color: #5bc0de;
  border-color: #5bc0de;
}

.btn-outline-info:active:hover, .btn-outline-info:active:focus, .btn-outline-info:active.focus, .btn-outline-info.active:hover, .btn-outline-info.active:focus, .btn-outline-info.active.focus,
.open > .btn-outline-info.dropdown-toggle:hover,
.open > .btn-outline-info.dropdown-toggle:focus,
.open > .btn-outline-info.dropdown-toggle.focus {
  color: #fff;
  background-color: #269abc;
  border-color: #1f7e9a;
}

.btn-outline-info.disabled:focus, .btn-outline-info.disabled.focus, .btn-outline-info:disabled:focus, .btn-outline-info:disabled.focus {
  border-color: #b0e1ef;
}

.btn-outline-info.disabled:hover, .btn-outline-info:disabled:hover {
  border-color: #b0e1ef;
}

.btn-outline-success {
  color: #5cb85c;
  background-image: none;
  background-color: transparent;
  border-color: #5cb85c;
}

.btn-outline-success:hover {
  color: #fff;
  background-color: #5cb85c;
  border-color: #5cb85c;
}

.btn-outline-success:focus, .btn-outline-success.focus {
  color: #fff;
  background-color: #5cb85c;
  border-color: #5cb85c;
}

.btn-outline-success:active, .btn-outline-success.active,
.open > .btn-outline-success.dropdown-toggle {
  color: #fff;
  background-color: #5cb85c;
  border-color: #5cb85c;
}

.btn-outline-success:active:hover, .btn-outline-success:active:focus, .btn-outline-success:active.focus, .btn-outline-success.active:hover, .btn-outline-success.active:focus, .btn-outline-success.active.focus,
.open > .btn-outline-success.dropdown-toggle:hover,
.open > .btn-outline-success.dropdown-toggle:focus,
.open > .btn-outline-success.dropdown-toggle.focus {
  color: #fff;
  background-color: #398439;
  border-color: #2d672d;
}

.btn-outline-success.disabled:focus, .btn-outline-success.disabled.focus, .btn-outline-success:disabled:focus, .btn-outline-success:disabled.focus {
  border-color: #a3d7a3;
}

.btn-outline-success.disabled:hover, .btn-outline-success:disabled:hover {
  border-color: #a3d7a3;
}

.btn-outline-warning {
  color: #f0ad4e;
  background-image: none;
  background-color: transparent;
  border-color: #f0ad4e;
}

.btn-outline-warning:hover {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #f0ad4e;
}

.btn-outline-warning:focus, .btn-outline-warning.focus {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #f0ad4e;
}

.btn-outline-warning:active, .btn-outline-warning.active,
.open > .btn-outline-warning.dropdown-toggle {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #f0ad4e;
}

.btn-outline-warning:active:hover, .btn-outline-warning:active:focus, .btn-outline-warning:active.focus, .btn-outline-warning.active:hover, .btn-outline-warning.active:focus, .btn-outline-warning.active.focus,
.open > .btn-outline-warning.dropdown-toggle:hover,
.open > .btn-outline-warning.dropdown-toggle:focus,
.open > .btn-outline-warning.dropdown-toggle.focus {
  color: #fff;
  background-color: #d58512;
  border-color: #b06d0f;
}

.btn-outline-warning.disabled:focus, .btn-outline-warning.disabled.focus, .btn-outline-warning:disabled:focus, .btn-outline-warning:disabled.focus {
  border-color: #f8d9ac;
}

.btn-outline-warning.disabled:hover, .btn-outline-warning:disabled:hover {
  border-color: #f8d9ac;
}

.btn-outline-danger {
  color: #ca161f;
  background-image: none;
  background-color: transparent;
  border-color: #ca161f;
}

.btn-outline-danger:hover {
  color: #fff;
  background-color: #ca161f;
  border-color: #ca161f;
}

.btn-outline-danger:focus, .btn-outline-danger.focus {
  color: #fff;
  background-color: #ca161f;
  border-color: #ca161f;
}

.btn-outline-danger:active, .btn-outline-danger.active,
.open > .btn-outline-danger.dropdown-toggle {
  color: #fff;
  background-color: #ca161f;
  border-color: #ca161f;
}

.btn-outline-danger:active:hover, .btn-outline-danger:active:focus, .btn-outline-danger:active.focus, .btn-outline-danger.active:hover, .btn-outline-danger.active:focus, .btn-outline-danger.active.focus,
.open > .btn-outline-danger.dropdown-toggle:hover,
.open > .btn-outline-danger.dropdown-toggle:focus,
.open > .btn-outline-danger.dropdown-toggle.focus {
  color: #fff;
  background-color: #7c0d13;
  border-color: #57090d;
}

.btn-outline-danger.disabled:focus, .btn-outline-danger.disabled.focus, .btn-outline-danger:disabled:focus, .btn-outline-danger:disabled.focus {
  border-color: #ed5960;
}

.btn-outline-danger.disabled:hover, .btn-outline-danger:disabled:hover {
  border-color: #ed5960;
}

.btn-link {
  font-weight: normal;
  color: #122953;
  border-radius: 0;
}

.btn-link, .btn-link:active, .btn-link.active, .btn-link:disabled {
  background-color: transparent;
}

.btn-link, .btn-link:focus, .btn-link:active {
  border-color: transparent;
}

.btn-link:hover {
  border-color: transparent;
}

.btn-link:focus, .btn-link:hover {
  color: #040a14;
  text-decoration: underline;
  background-color: transparent;
}

.btn-link:disabled:focus, .btn-link:disabled:hover {
  color: #818a91;
  text-decoration: none;
}

.btn-lg, .btn-group-lg > .btn {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
  border-radius: 0.3rem;
}

.btn-sm, .btn-group-sm > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  border-radius: 0.2rem;
}

.btn-block {
  display: block;
  width: 100%;
}

.btn-block + .btn-block {
  margin-top: 0.5rem;
}

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%;
}

.fade {
  opacity: 0;
  -webkit-transition: opacity .15s linear;
  transition: opacity .15s linear;
}

.fade.in {
  opacity: 1;
}

.collapse {
  display: none;
}

.collapse.in {
  display: block;
}

tr.collapse.in {
  display: table-row;
}

tbody.collapse.in {
  display: table-row-group;
}

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: .35s;
          transition-duration: .35s;
  -webkit-transition-property: height;
  transition-property: height;
}

.dropup,
.dropdown {
  position: relative;
}

.dropdown-toggle::after {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 0.3em;
  vertical-align: middle;
  content: "";
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-left: 0.3em solid transparent;
}

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

.dropup .dropdown-toggle::after {
  border-top: 0;
  border-bottom: 0.3em solid;
}

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 10rem;
  padding: 0.5rem 0;
  margin: 0.125rem 0 0;
  font-size: 1rem;
  color: #373a3c;
  text-align: left;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
}

.dropdown-divider {
  height: 1px;
  margin: 0.5rem 0;
  overflow: hidden;
  background-color: #e5e5e5;
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: 3px 1.5rem;
  clear: both;
  font-weight: normal;
  color: #373a3c;
  text-align: inherit;
  white-space: nowrap;
  background: none;
  border: 0;
}

.dropdown-item:focus, .dropdown-item:hover {
  color: #2b2d2f;
  text-decoration: none;
  background-color: #f5f5f5;
}

.dropdown-item.active, .dropdown-item.active:focus, .dropdown-item.active:hover {
  color: #fff;
  text-decoration: none;
  background-color: #122953;
  outline: 0;
}

.dropdown-item.disabled, .dropdown-item.disabled:focus, .dropdown-item.disabled:hover {
  color: #818a91;
}

.dropdown-item.disabled:focus, .dropdown-item.disabled:hover {
  text-decoration: none;
  cursor: not-allowed;
  background-color: transparent;
  background-image: none;
  filter: "progid:DXImageTransform.Microsoft.gradient(enabled = false)";
}

.open > .dropdown-menu {
  display: block;
}

.open > a {
  outline: 0;
}

.dropdown-menu-right {
  right: 0;
  left: auto;
}

.dropdown-menu-left {
  right: auto;
  left: 0;
}

.dropdown-header {
  display: block;
  padding: 0.5rem 1.5rem;
  margin-bottom: 0;
  font-size: 0.875rem;
  color: #818a91;
  white-space: nowrap;
}

.dropdown-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 990;
}

.dropup .caret,
.navbar-fixed-bottom .dropdown .caret {
  content: "";
  border-top: 0;
  border-bottom: 0.3em solid;
}

.dropup .dropdown-menu,
.navbar-fixed-bottom .dropdown .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-bottom: 0.125rem;
}

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-block;
  vertical-align: middle;
}

.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  float: left;
  margin-bottom: 0;
}

.btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 2;
}

.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover {
  z-index: 2;
}

.btn-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group {
  margin-left: -1px;
}

.btn-toolbar {
  margin-left: -0.5rem;
}

.btn-toolbar::after {
  content: "";
  display: table;
  clear: both;
}

.btn-toolbar .btn-group,
.btn-toolbar .input-group {
  float: left;
}

.btn-toolbar > .btn,
.btn-toolbar > .btn-group,
.btn-toolbar > .input-group {
  margin-left: 0.5rem;
}

.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
  border-radius: 0;
}

.btn-group > .btn:first-child {
  margin-left: 0;
}

.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}

.btn-group > .btn:last-child:not(:first-child),
.btn-group > .dropdown-toggle:not(:first-child) {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}

.btn-group > .btn-group {
  float: left;
}

.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}

.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}

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

.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
  outline: 0;
}

.btn + .dropdown-toggle-split {
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}

.btn + .dropdown-toggle-split::after {
  margin-left: 0;
}

.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {
  padding-right: 0.375rem;
  padding-left: 0.375rem;
}

.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {
  padding-right: 1.125rem;
  padding-left: 1.125rem;
}

.btn .caret {
  margin-left: 0;
}

.btn-lg .caret, .btn-group-lg > .btn .caret {
  border-width: 0.3em 0.3em 0;
  border-bottom-width: 0;
}

.dropup .btn-lg .caret, .dropup .btn-group-lg > .btn .caret {
  border-width: 0 0.3em 0.3em;
}

.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group,
.btn-group-vertical > .btn-group > .btn {
  display: block;
  float: none;
  width: 100%;
  max-width: 100%;
}

.btn-group-vertical > .btn-group::after {
  content: "";
  display: table;
  clear: both;
}

.btn-group-vertical > .btn-group > .btn {
  float: none;
}

.btn-group-vertical > .btn + .btn,
.btn-group-vertical > .btn + .btn-group,
.btn-group-vertical > .btn-group + .btn,
.btn-group-vertical > .btn-group + .btn-group {
  margin-top: -1px;
  margin-left: 0;
}

.btn-group-vertical > .btn:not(:first-child):not(:last-child) {
  border-radius: 0;
}

.btn-group-vertical > .btn:first-child:not(:last-child) {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.btn-group-vertical > .btn:last-child:not(:first-child) {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}

.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}

.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}

[data-toggle="buttons"] > .btn input[type="radio"],
[data-toggle="buttons"] > .btn input[type="checkbox"],
[data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}

.input-group {
  position: relative;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.input-group .form-control {
  position: relative;
  z-index: 2;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-bottom: 0;
}

.input-group .form-control:focus, .input-group .form-control:active, .input-group .form-control:hover {
  z-index: 3;
}

.input-group-addon:not(:first-child):not(:last-child),
.input-group-btn:not(:first-child):not(:last-child),
.input-group .form-control:not(:first-child):not(:last-child) {
  border-radius: 0;
}

.input-group-addon,
.input-group-btn {
  white-space: nowrap;
  vertical-align: middle;
}

.input-group-addon {
  padding: 0.5rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.25;
  color: #55595c;
  text-align: center;
  background-color: #eceeef;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
}

.input-group-addon.form-control-sm,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .input-group-addon.btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  border-radius: 0.2rem;
}

.input-group-addon.form-control-lg,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .input-group-addon.btn {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
  border-radius: 0.3rem;
}

.input-group-addon input[type="radio"],
.input-group-addon input[type="checkbox"] {
  margin-top: 0;
}

.input-group .form-control:not(:last-child),
.input-group-addon:not(:last-child),
.input-group-btn:not(:last-child) > .btn,
.input-group-btn:not(:last-child) > .btn-group > .btn,
.input-group-btn:not(:last-child) > .dropdown-toggle,
.input-group-btn:not(:first-child) > .btn:not(:last-child):not(.dropdown-toggle),
.input-group-btn:not(:first-child) > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}

.input-group-addon:not(:last-child) {
  border-right: 0;
}

.input-group .form-control:not(:first-child),
.input-group-addon:not(:first-child),
.input-group-btn:not(:first-child) > .btn,
.input-group-btn:not(:first-child) > .btn-group > .btn,
.input-group-btn:not(:first-child) > .dropdown-toggle,
.input-group-btn:not(:last-child) > .btn:not(:first-child),
.input-group-btn:not(:last-child) > .btn-group:not(:first-child) > .btn {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}

.form-control + .input-group-addon:not(:first-child) {
  border-left: 0;
}

.input-group-btn {
  position: relative;
  font-size: 0;
  white-space: nowrap;
}

.input-group-btn > .btn {
  position: relative;
}

.input-group-btn > .btn + .btn {
  margin-left: -1px;
}

.input-group-btn > .btn:focus, .input-group-btn > .btn:active, .input-group-btn > .btn:hover {
  z-index: 3;
}

.input-group-btn:not(:last-child) > .btn,
.input-group-btn:not(:last-child) > .btn-group {
  margin-right: -1px;
}

.input-group-btn:not(:first-child) > .btn,
.input-group-btn:not(:first-child) > .btn-group {
  z-index: 2;
  margin-left: -1px;
}

.input-group-btn:not(:first-child) > .btn:focus, .input-group-btn:not(:first-child) > .btn:active, .input-group-btn:not(:first-child) > .btn:hover,
.input-group-btn:not(:first-child) > .btn-group:focus,
.input-group-btn:not(:first-child) > .btn-group:active,
.input-group-btn:not(:first-child) > .btn-group:hover {
  z-index: 3;
}

.custom-control {
  position: relative;
  display: inline-block;
  padding-left: 1.5rem;
  cursor: pointer;
}

.custom-control + .custom-control {
  margin-left: 1rem;
}

.custom-control-input {
  position: absolute;
  z-index: -1;
  opacity: 0;
}

.custom-control-input:checked ~ .custom-control-indicator {
  color: #fff;
  background-color: #0074d9;
}

.custom-control-input:focus ~ .custom-control-indicator {
  box-shadow: 0 0 0 0.075rem #fff, 0 0 0 0.2rem #0074d9;
}

.custom-control-input:active ~ .custom-control-indicator {
  color: #fff;
  background-color: #84c6ff;
}

.custom-control-input:disabled ~ .custom-control-indicator {
  cursor: not-allowed;
  background-color: #eee;
}

.custom-control-input:disabled ~ .custom-control-description {
  color: #767676;
  cursor: not-allowed;
}

.custom-control-indicator {
  position: absolute;
  top: .25rem;
  left: 0;
  display: block;
  width: 1rem;
  height: 1rem;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  background-color: #ddd;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 50% 50%;
}

.custom-checkbox .custom-control-indicator {
  border-radius: 0.25rem;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-indicator {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='#fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E");
}

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

.custom-radio .custom-control-indicator {
  border-radius: 50%;
}

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

.custom-controls-stacked .custom-control {
  float: left;
  clear: left;
}

.custom-controls-stacked .custom-control + .custom-control {
  margin-left: 0;
}

.custom-select {
  display: inline-block;
  max-width: 100%;
  height: calc(2.5rem - 2px);
  padding: 0.375rem 1.75rem 0.375rem 0.75rem;
  padding-right: 0.75rem \9;
  color: #55595c;
  vertical-align: middle;
  background: #fff url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='#333' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right 0.75rem center;
  background-image: none \9;
  background-size: 8px 10px;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
  -moz-appearance: none;
  -webkit-appearance: none;
}

.custom-select:focus {
  border-color: #51a7e8;
  outline: none;
}

.custom-select:focus::-ms-value {
  color: #55595c;
  background-color: #fff;
}

.custom-select:disabled {
  color: #818a91;
  cursor: not-allowed;
  background-color: #eceeef;
}

.custom-select::-ms-expand {
  opacity: 0;
}

.custom-select-sm {
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
  font-size: 75%;
}

.custom-file {
  position: relative;
  display: inline-block;
  max-width: 100%;
  height: 2.5rem;
  cursor: pointer;
}

.custom-file-input {
  min-width: 14rem;
  max-width: 100%;
  margin: 0;
  filter: alpha(opacity=0);
  opacity: 0;
}

.custom-file-control {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 5;
  height: 2.5rem;
  padding: 0.5rem 1rem;
  line-height: 1.5;
  color: #555;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 0.25rem;
}

.custom-file-control:lang(en)::after {
  content: "Choose file...";
}

.custom-file-control::before {
  position: absolute;
  top: -1px;
  right: -1px;
  bottom: -1px;
  z-index: 6;
  display: block;
  height: 2.5rem;
  padding: 0.5rem 1rem;
  line-height: 1.5;
  color: #555;
  background-color: #eee;
  border: 1px solid #ddd;
  border-radius: 0 0.25rem 0.25rem 0;
}

.custom-file-control:lang(en)::before {
  content: "Browse";
}

.nav {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

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

.nav-link:focus, .nav-link:hover {
  text-decoration: none;
}

.nav-link.disabled {
  color: #818a91;
}

.nav-link.disabled, .nav-link.disabled:focus, .nav-link.disabled:hover {
  color: #818a91;
  cursor: not-allowed;
  background-color: transparent;
}

.nav-inline .nav-item {
  display: inline-block;
}

.nav-inline .nav-item + .nav-item,
.nav-inline .nav-link + .nav-link {
  margin-left: 1rem;
}

.nav-tabs {
  border-bottom: 1px solid #ddd;
}

.nav-tabs::after {
  content: "";
  display: table;
  clear: both;
}

.nav-tabs .nav-item {
  float: left;
  margin-bottom: -1px;
}

.nav-tabs .nav-item + .nav-item {
  margin-left: 0.2rem;
}

.nav-tabs .nav-link {
  display: block;
  padding: 0.5em 1em;
  border: 1px solid transparent;
  border-top-right-radius: 0.25rem;
  border-top-left-radius: 0.25rem;
}

.nav-tabs .nav-link:focus, .nav-tabs .nav-link:hover {
  border-color: #eceeef #eceeef #ddd;
}

.nav-tabs .nav-link.disabled, .nav-tabs .nav-link.disabled:focus, .nav-tabs .nav-link.disabled:hover {
  color: #818a91;
  background-color: transparent;
  border-color: transparent;
}

.nav-tabs .nav-link.active, .nav-tabs .nav-link.active:focus, .nav-tabs .nav-link.active:hover,
.nav-tabs .nav-item.open .nav-link,
.nav-tabs .nav-item.open .nav-link:focus,
.nav-tabs .nav-item.open .nav-link:hover {
  color: #55595c;
  background-color: #fff;
  border-color: #ddd #ddd transparent;
}

.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}

.nav-pills::after {
  content: "";
  display: table;
  clear: both;
}

.nav-pills .nav-item {
  float: left;
}

.nav-pills .nav-item + .nav-item {
  margin-left: 0.2rem;
}

.nav-pills .nav-link {
  display: block;
  padding: 0.5em 1em;
  border-radius: 0.25rem;
}

.nav-pills .nav-link.active, .nav-pills .nav-link.active:focus, .nav-pills .nav-link.active:hover,
.nav-pills .nav-item.open .nav-link,
.nav-pills .nav-item.open .nav-link:focus,
.nav-pills .nav-item.open .nav-link:hover {
  color: #fff;
  cursor: default;
  background-color: #122953;
}

.nav-stacked .nav-item {
  display: block;
  float: none;
}

.nav-stacked .nav-item + .nav-item {
  margin-top: 0.2rem;
  margin-left: 0;
}

.tab-content > .tab-pane {
  display: none;
}

.tab-content > .active {
  display: block;
}

.navbar {
  position: relative;
  padding: 0.5rem 1rem;
}

.navbar::after {
  content: "";
  display: table;
  clear: both;
}

@media (min-width: 544px) {
  .navbar {
    border-radius: 0.25rem;
  }
}

.navbar-full {
  z-index: 1000;
}

@media (min-width: 544px) {
  .navbar-full {
    border-radius: 0;
  }
}

.navbar-fixed-top,
.navbar-fixed-bottom {
  position: fixed;
  right: 0;
  left: 0;
  z-index: 1030;
}

@media (min-width: 544px) {
  .navbar-fixed-top,
  .navbar-fixed-bottom {
    border-radius: 0;
  }
}

.navbar-fixed-top {
  top: 0;
}

.navbar-fixed-bottom {
  bottom: 0;
}

.navbar-sticky-top {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 1030;
  width: 100%;
}

@media (min-width: 544px) {
  .navbar-sticky-top {
    border-radius: 0;
  }
}

.navbar-brand {
  float: left;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  margin-right: 1rem;
  font-size: 1.25rem;
  line-height: inherit;
}

.navbar-brand:focus, .navbar-brand:hover {
  text-decoration: none;
}

.navbar-divider {
  float: left;
  width: 1px;
  padding-top: 0.425rem;
  padding-bottom: 0.425rem;
  margin-right: 1rem;
  margin-left: 1rem;
  overflow: hidden;
}

.navbar-divider::before {
  content: "\00a0";
}

.navbar-text {
  display: inline-block;
  padding-top: .425rem;
  padding-bottom: .425rem;
}

.navbar-toggler {
  width: 2.5em;
  height: 2em;
  padding: 0.5rem 0.75rem;
  font-size: 1.25rem;
  line-height: 1;
  background: transparent no-repeat center center;
  background-size: 24px 24px;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.navbar-toggler:focus, .navbar-toggler:hover {
  text-decoration: none;
}

.navbar-toggleable-xs::after {
  content: "";
  display: table;
  clear: both;
}

@media (max-width: 543px) {
  .navbar-toggleable-xs .navbar-brand {
    display: block;
    float: none;
    margin-top: .5rem;
    margin-right: 0;
  }
  .navbar-toggleable-xs .navbar-nav {
    margin-top: .5rem;
    margin-bottom: .5rem;
  }
  .navbar-toggleable-xs .navbar-nav .dropdown-menu {
    position: static;
    float: none;
  }
}

@media (min-width: 544px) {
  .navbar-toggleable-xs {
    display: block;
  }
}

.navbar-toggleable-sm::after {
  content: "";
  display: table;
  clear: both;
}

@media (max-width: 767px) {
  .navbar-toggleable-sm .navbar-brand {
    display: block;
    float: none;
    margin-top: .5rem;
    margin-right: 0;
  }
  .navbar-toggleable-sm .navbar-nav {
    margin-top: .5rem;
    margin-bottom: .5rem;
  }
  .navbar-toggleable-sm .navbar-nav .dropdown-menu {
    position: static;
    float: none;
  }
}

@media (min-width: 768px) {
  .navbar-toggleable-sm {
    display: block;
  }
}

.navbar-toggleable-md::after {
  content: "";
  display: table;
  clear: both;
}

@media (max-width: 991px) {
  .navbar-toggleable-md .navbar-brand {
    display: block;
    float: none;
    margin-top: .5rem;
    margin-right: 0;
  }
  .navbar-toggleable-md .navbar-nav {
    margin-top: .5rem;
    margin-bottom: .5rem;
  }
  .navbar-toggleable-md .navbar-nav .dropdown-menu {
    position: static;
    float: none;
  }
}

@media (min-width: 992px) {
  .navbar-toggleable-md {
    display: block;
  }
}

.navbar-toggleable-lg::after {
  content: "";
  display: table;
  clear: both;
}

@media (max-width: 1199px) {
  .navbar-toggleable-lg .navbar-brand {
    display: block;
    float: none;
    margin-top: .5rem;
    margin-right: 0;
  }
  .navbar-toggleable-lg .navbar-nav {
    margin-top: .5rem;
    margin-bottom: .5rem;
  }
  .navbar-toggleable-lg .navbar-nav .dropdown-menu {
    position: static;
    float: none;
  }
}

@media (min-width: 1200px) {
  .navbar-toggleable-lg {
    display: block;
  }
}

.navbar-toggleable-xl {
  display: block;
}

.navbar-toggleable-xl::after {
  content: "";
  display: table;
  clear: both;
}

.navbar-toggleable-xl .navbar-brand {
  display: block;
  float: none;
  margin-top: .5rem;
  margin-right: 0;
}

.navbar-toggleable-xl .navbar-nav {
  margin-top: .5rem;
  margin-bottom: .5rem;
}

.navbar-toggleable-xl .navbar-nav .dropdown-menu {
  position: static;
  float: none;
}

.navbar-nav .nav-item {
  float: left;
}

.navbar-nav .nav-link {
  display: block;
  padding-top: .425rem;
  padding-bottom: .425rem;
}

.navbar-nav .nav-link + .nav-link {
  margin-left: 1rem;
}

.navbar-nav .nav-item + .nav-item {
  margin-left: 1rem;
}

.navbar-light .navbar-brand,
.navbar-light .navbar-toggler {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-brand:focus, .navbar-light .navbar-brand:hover,
.navbar-light .navbar-toggler:focus,
.navbar-light .navbar-toggler:hover {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-nav .nav-link {
  color: rgba(0, 0, 0, 0.5);
}

.navbar-light .navbar-nav .nav-link:focus, .navbar-light .navbar-nav .nav-link:hover {
  color: rgba(0, 0, 0, 0.7);
}

.navbar-light .navbar-nav .open > .nav-link, .navbar-light .navbar-nav .open > .nav-link:focus, .navbar-light .navbar-nav .open > .nav-link:hover,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .active > .nav-link:focus,
.navbar-light .navbar-nav .active > .nav-link:hover,
.navbar-light .navbar-nav .nav-link.open,
.navbar-light .navbar-nav .nav-link.open:focus,
.navbar-light .navbar-nav .nav-link.open:hover,
.navbar-light .navbar-nav .nav-link.active,
.navbar-light .navbar-nav .nav-link.active:focus,
.navbar-light .navbar-nav .nav-link.active:hover {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-toggler {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
  border-color: rgba(0, 0, 0, 0.1);
}

.navbar-light .navbar-divider {
  background-color: rgba(0, 0, 0, 0.075);
}

.navbar-dark .navbar-brand,
.navbar-dark .navbar-toggler {
  color: white;
}

.navbar-dark .navbar-brand:focus, .navbar-dark .navbar-brand:hover,
.navbar-dark .navbar-toggler:focus,
.navbar-dark .navbar-toggler:hover {
  color: white;
}

.navbar-dark .navbar-nav .nav-link {
  color: rgba(255, 255, 255, 0.5);
}

.navbar-dark .navbar-nav .nav-link:focus, .navbar-dark .navbar-nav .nav-link:hover {
  color: rgba(255, 255, 255, 0.75);
}

.navbar-dark .navbar-nav .open > .nav-link, .navbar-dark .navbar-nav .open > .nav-link:focus, .navbar-dark .navbar-nav .open > .nav-link:hover,
.navbar-dark .navbar-nav .active > .nav-link,
.navbar-dark .navbar-nav .active > .nav-link:focus,
.navbar-dark .navbar-nav .active > .nav-link:hover,
.navbar-dark .navbar-nav .nav-link.open,
.navbar-dark .navbar-nav .nav-link.open:focus,
.navbar-dark .navbar-nav .nav-link.open:hover,
.navbar-dark .navbar-nav .nav-link.active,
.navbar-dark .navbar-nav .nav-link.active:focus,
.navbar-dark .navbar-nav .nav-link.active:hover {
  color: white;
}

.navbar-dark .navbar-toggler {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
  border-color: rgba(255, 255, 255, 0.1);
}

.navbar-dark .navbar-divider {
  background-color: rgba(255, 255, 255, 0.075);
}

.navbar-toggleable-xs::after {
  content: "";
  display: table;
  clear: both;
}

@media (max-width: 543px) {
  .navbar-toggleable-xs .navbar-nav .nav-item {
    float: none;
    margin-left: 0;
  }
}

@media (min-width: 544px) {
  .navbar-toggleable-xs {
    display: block !important;
  }
}

.navbar-toggleable-sm::after {
  content: "";
  display: table;
  clear: both;
}

@media (max-width: 767px) {
  .navbar-toggleable-sm .navbar-nav .nav-item {
    float: none;
    margin-left: 0;
  }
}

@media (min-width: 768px) {
  .navbar-toggleable-sm {
    display: block !important;
  }
}

.navbar-toggleable-md::after {
  content: "";
  display: table;
  clear: both;
}

@media (max-width: 991px) {
  .navbar-toggleable-md .navbar-nav .nav-item {
    float: none;
    margin-left: 0;
  }
}

@media (min-width: 992px) {
  .navbar-toggleable-md {
    display: block !important;
  }
}

.card {
  position: relative;
  display: block;
  margin-bottom: 0.75rem;
  background-color: #fff;
  border-radius: 0.25rem;
  border: 1px solid rgba(0, 0, 0, 0.125);
}

.card-block {
  padding: 1.25rem;
}

.card-block::after {
  content: "";
  display: table;
  clear: both;
}

.card-title {
  margin-bottom: 0.75rem;
}

.card-subtitle {
  margin-top: -0.375rem;
  margin-bottom: 0;
}

.card-text:last-child {
  margin-bottom: 0;
}

.card-link:hover {
  text-decoration: none;
}

.card-link + .card-link {
  margin-left: 1.25rem;
}

.card > .list-group:first-child .list-group-item:first-child {
  border-top-right-radius: 0.25rem;
  border-top-left-radius: 0.25rem;
}

.card > .list-group:last-child .list-group-item:last-child {
  border-bottom-right-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.card-header {
  padding: 0.75rem 1.25rem;
  margin-bottom: 0;
  background-color: #f5f5f5;
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}

.card-header::after {
  content: "";
  display: table;
  clear: both;
}

.card-header:first-child {
  border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;
}

.card-footer {
  padding: 0.75rem 1.25rem;
  background-color: #f5f5f5;
  border-top: 1px solid rgba(0, 0, 0, 0.125);
}

.card-footer::after {
  content: "";
  display: table;
  clear: both;
}

.card-footer:last-child {
  border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}

.card-header-tabs {
  margin-right: -0.625rem;
  margin-bottom: -0.75rem;
  margin-left: -0.625rem;
  border-bottom: 0;
}

.card-header-pills {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
}

.card-primary {
  background-color: #122953;
  border-color: #122953;
}

.card-primary .card-header,
.card-primary .card-footer {
  background-color: transparent;
}

.card-success {
  background-color: #5cb85c;
  border-color: #5cb85c;
}

.card-success .card-header,
.card-success .card-footer {
  background-color: transparent;
}

.card-info {
  background-color: #5bc0de;
  border-color: #5bc0de;
}

.card-info .card-header,
.card-info .card-footer {
  background-color: transparent;
}

.card-warning {
  background-color: #f0ad4e;
  border-color: #f0ad4e;
}

.card-warning .card-header,
.card-warning .card-footer {
  background-color: transparent;
}

.card-danger {
  background-color: #ca161f;
  border-color: #ca161f;
}

.card-danger .card-header,
.card-danger .card-footer {
  background-color: transparent;
}

.card-outline-primary {
  background-color: transparent;
  border-color: #122953;
}

.card-outline-secondary {
  background-color: transparent;
  border-color: #ccc;
}

.card-outline-info {
  background-color: transparent;
  border-color: #5bc0de;
}

.card-outline-success {
  background-color: transparent;
  border-color: #5cb85c;
}

.card-outline-warning {
  background-color: transparent;
  border-color: #f0ad4e;
}

.card-outline-danger {
  background-color: transparent;
  border-color: #ca161f;
}

.card-inverse .card-header,
.card-inverse .card-footer {
  border-color: rgba(255, 255, 255, 0.2);
}

.card-inverse .card-header,
.card-inverse .card-footer,
.card-inverse .card-title,
.card-inverse .card-blockquote {
  color: #fff;
}

.card-inverse .card-link,
.card-inverse .card-text,
.card-inverse .card-subtitle,
.card-inverse .card-blockquote .blockquote-footer {
  color: rgba(255, 255, 255, 0.65);
}

.card-inverse .card-link:focus, .card-inverse .card-link:hover {
  color: #fff;
}

.card-blockquote {
  padding: 0;
  margin-bottom: 0;
  border-left: 0;
}

.card-img {
  border-radius: calc(0.25rem - 1px);
}

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 1.25rem;
}

.card-img-top {
  border-top-right-radius: calc(0.25rem - 1px);
  border-top-left-radius: calc(0.25rem - 1px);
}

.card-img-bottom {
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}

@media (min-width: 544px) {
  .card-deck {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    margin-right: -0.625rem;
    margin-bottom: 0.75rem;
    margin-left: -0.625rem;
  }
  .card-deck .card {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 0px;
            flex: 1 0 0;
    margin-right: 0.625rem;
    margin-bottom: 0;
    margin-left: 0.625rem;
  }
}

@media (min-width: 544px) {
  .card-group {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
  }
  .card-group .card {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 0px;
            flex: 1 0 0;
  }
  .card-group .card + .card {
    margin-left: 0;
    border-left: 0;
  }
  .card-group .card:first-child {
    border-bottom-right-radius: 0;
    border-top-right-radius: 0;
  }
  .card-group .card:first-child .card-img-top {
    border-top-right-radius: 0;
  }
  .card-group .card:first-child .card-img-bottom {
    border-bottom-right-radius: 0;
  }
  .card-group .card:last-child {
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
  }
  .card-group .card:last-child .card-img-top {
    border-top-left-radius: 0;
  }
  .card-group .card:last-child .card-img-bottom {
    border-bottom-left-radius: 0;
  }
  .card-group .card:not(:first-child):not(:last-child) {
    border-radius: 0;
  }
  .card-group .card:not(:first-child):not(:last-child) .card-img-top,
  .card-group .card:not(:first-child):not(:last-child) .card-img-bottom {
    border-radius: 0;
  }
}

@media (min-width: 544px) {
  .card-columns {
    -webkit-column-count: 3;
       -moz-column-count: 3;
            column-count: 3;
    -webkit-column-gap: 1.25rem;
       -moz-column-gap: 1.25rem;
            column-gap: 1.25rem;
  }
  .card-columns .card {
    display: inline-block;
    width: 100%;
  }
}

.alert {
  padding: 0.75rem 1.25rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.alert-heading {
  color: inherit;
}

.alert-link {
  font-weight: bold;
}

.alert-dismissible {
  padding-right: 2.5rem;
}

.alert-dismissible .close {
  position: relative;
  top: -.125rem;
  right: -1.25rem;
  color: inherit;
}

.alert-success {
  background-color: #dff0d8;
  border-color: #d0e9c6;
  color: #3c763d;
}

.alert-success hr {
  border-top-color: #c1e2b3;
}

.alert-success .alert-link {
  color: #2b542c;
}

.alert-info {
  background-color: #d9edf7;
  border-color: #bcdff1;
  color: #31708f;
}

.alert-info hr {
  border-top-color: #a6d5ec;
}

.alert-info .alert-link {
  color: #245269;
}

.alert-warning {
  background-color: #fcf8e3;
  border-color: #faf2cc;
  color: #8a6d3b;
}

.alert-warning hr {
  border-top-color: #f7ecb5;
}

.alert-warning .alert-link {
  color: #66512c;
}

.alert-danger {
  background-color: #f2dede;
  border-color: #ebcccc;
  color: #a94442;
}

.alert-danger hr {
  border-top-color: #e4b9b9;
}

.alert-danger .alert-link {
  color: #843534;
}

@-webkit-keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }
  to {
    background-position: 0 0;
  }
}

@keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }
  to {
    background-position: 0 0;
  }
}

.progress {
  display: block;
  width: 100%;
  height: 1rem;
  margin-bottom: 1rem;
}

.progress[value] {
  background-color: #eee;
  border: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0.25rem;
}

.progress[value]::-ms-fill {
  background-color: #0074d9;
  border: 0;
}

.progress[value]::-moz-progress-bar {
  background-color: #0074d9;
  border-bottom-left-radius: 0.25rem;
  border-top-left-radius: 0.25rem;
}

.progress[value]::-webkit-progress-value {
  background-color: #0074d9;
  border-bottom-left-radius: 0.25rem;
  border-top-left-radius: 0.25rem;
}

.progress[value="100"]::-moz-progress-bar {
  border-bottom-right-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}

.progress[value="100"]::-webkit-progress-value {
  border-bottom-right-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}

.progress[value]::-webkit-progress-bar {
  background-color: #eee;
  border-radius: 0.25rem;
}

base::-moz-progress-bar,
.progress[value] {
  background-color: #eee;
  border-radius: 0.25rem;
}

@media screen and (min-width: 0\0) {
  .progress {
    background-color: #eee;
    border-radius: 0.25rem;
  }
  .progress-bar {
    display: inline-block;
    height: 1rem;
    text-indent: -999rem;
    background-color: #0074d9;
    border-bottom-left-radius: 0.25rem;
    border-top-left-radius: 0.25rem;
  }
  .progress[width="100%"] {
    border-bottom-right-radius: 0.25rem;
    border-top-right-radius: 0.25rem;
  }
}

.progress-striped[value]::-webkit-progress-value {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 1rem 1rem;
}

.progress-striped[value]::-moz-progress-bar {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 1rem 1rem;
}

.progress-striped[value]::-ms-fill {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 1rem 1rem;
}

@media screen and (min-width: 0\0) {
  .progress-bar-striped {
    background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-size: 1rem 1rem;
  }
}

.progress-animated[value]::-webkit-progress-value {
  -webkit-animation: progress-bar-stripes 2s linear infinite;
          animation: progress-bar-stripes 2s linear infinite;
}

.progress-animated[value]::-moz-progress-bar {
  animation: progress-bar-stripes 2s linear infinite;
}

@media screen and (min-width: 0\0) {
  .progress-animated .progress-bar-striped {
    -webkit-animation: progress-bar-stripes 2s linear infinite;
            animation: progress-bar-stripes 2s linear infinite;
  }
}

.progress-success[value]::-webkit-progress-value {
  background-color: #5cb85c;
}

.progress-success[value]::-moz-progress-bar {
  background-color: #5cb85c;
}

.progress-success[value]::-ms-fill {
  background-color: #5cb85c;
}

@media screen and (min-width: 0\0) {
  .progress-success .progress-bar {
    background-color: #5cb85c;
  }
}

.progress-info[value]::-webkit-progress-value {
  background-color: #5bc0de;
}

.progress-info[value]::-moz-progress-bar {
  background-color: #5bc0de;
}

.progress-info[value]::-ms-fill {
  background-color: #5bc0de;
}

@media screen and (min-width: 0\0) {
  .progress-info .progress-bar {
    background-color: #5bc0de;
  }
}

.progress-warning[value]::-webkit-progress-value {
  background-color: #f0ad4e;
}

.progress-warning[value]::-moz-progress-bar {
  background-color: #f0ad4e;
}

.progress-warning[value]::-ms-fill {
  background-color: #f0ad4e;
}

@media screen and (min-width: 0\0) {
  .progress-warning .progress-bar {
    background-color: #f0ad4e;
  }
}

.progress-danger[value]::-webkit-progress-value {
  background-color: #ca161f;
}

.progress-danger[value]::-moz-progress-bar {
  background-color: #ca161f;
}

.progress-danger[value]::-ms-fill {
  background-color: #ca161f;
}

@media screen and (min-width: 0\0) {
  .progress-danger .progress-bar {
    background-color: #ca161f;
  }
}

.media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.media-body {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.media-middle {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
}

.media-bottom {
  -ms-flex-item-align: end;
      align-self: flex-end;
}

.media-object {
  display: block;
}

.media-object.img-thumbnail {
  max-width: none;
}

.media-right {
  padding-left: 10px;
}

.media-left {
  padding-right: 10px;
}

.media-heading {
  margin-top: 0;
  margin-bottom: 5px;
}

.media-list {
  padding-left: 0;
  list-style: none;
}

.close {
  float: right;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: .2;
}

.close:focus, .close:hover {
  color: #000;
  text-decoration: none;
  cursor: pointer;
  opacity: .5;
}

button.close {
  padding: 0;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
}

.align-baseline {
  vertical-align: baseline !important;
}

.align-top {
  vertical-align: top !important;
}

.align-middle {
  vertical-align: middle !important;
}

.align-bottom {
  vertical-align: bottom !important;
}

.align-text-bottom {
  vertical-align: text-bottom !important;
}

.align-text-top {
  vertical-align: text-top !important;
}

.bg-faded {
  background-color: #f7f7f9;
}

.bg-primary {
  background-color: #122953 !important;
}

a.bg-primary:focus, a.bg-primary:hover {
  background-color: #091429 !important;
}

.bg-success {
  background-color: #5cb85c !important;
}

a.bg-success:focus, a.bg-success:hover {
  background-color: #449d44 !important;
}

.bg-info {
  background-color: #5bc0de !important;
}

a.bg-info:focus, a.bg-info:hover {
  background-color: #31b0d5 !important;
}

.bg-warning {
  background-color: #f0ad4e !important;
}

a.bg-warning:focus, a.bg-warning:hover {
  background-color: #ec971f !important;
}

.bg-danger {
  background-color: #ca161f !important;
}

a.bg-danger:focus, a.bg-danger:hover {
  background-color: #9c1118 !important;
}

.bg-inverse {
  background-color: #373a3c !important;
}

a.bg-inverse:focus, a.bg-inverse:hover {
  background-color: #1f2021 !important;
}

.rounded {
  border-radius: 0.25rem;
}

.rounded-top {
  border-top-right-radius: 0.25rem;
  border-top-left-radius: 0.25rem;
}

.rounded-right {
  border-bottom-right-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}

.rounded-bottom {
  border-bottom-right-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.rounded-left {
  border-bottom-left-radius: 0.25rem;
  border-top-left-radius: 0.25rem;
}

.rounded-circle {
  border-radius: 50%;
}

.clearfix::after {
  content: "";
  display: table;
  clear: both;
}

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

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

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

.flex-xs-first {
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1;
}

.flex-xs-last {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

.flex-xs-unordered {
  -webkit-box-ordinal-group: 1;
      -ms-flex-order: 0;
          order: 0;
}

.flex-items-xs-top {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.flex-items-xs-middle {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.flex-items-xs-bottom {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.flex-xs-top {
  -ms-flex-item-align: start;
      align-self: flex-start;
}

.flex-xs-middle {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
}

.flex-xs-bottom {
  -ms-flex-item-align: end;
      align-self: flex-end;
}

.flex-items-xs-left {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.flex-items-xs-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.flex-items-xs-right {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.flex-items-xs-around {
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

.flex-items-xs-between {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media (min-width: 544px) {
  .flex-sm-first {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }
  .flex-sm-last {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .flex-sm-unordered {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
  }
}

@media (min-width: 544px) {
  .flex-items-sm-top {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .flex-items-sm-middle {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .flex-items-sm-bottom {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}

@media (min-width: 544px) {
  .flex-sm-top {
    -ms-flex-item-align: start;
        align-self: flex-start;
  }
  .flex-sm-middle {
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center;
  }
  .flex-sm-bottom {
    -ms-flex-item-align: end;
        align-self: flex-end;
  }
}

@media (min-width: 544px) {
  .flex-items-sm-left {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .flex-items-sm-center {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .flex-items-sm-right {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .flex-items-sm-around {
    -ms-flex-pack: distribute;
        justify-content: space-around;
  }
  .flex-items-sm-between {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media (min-width: 768px) {
  .flex-md-first {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }
  .flex-md-last {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .flex-md-unordered {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
  }
}

@media (min-width: 768px) {
  .flex-items-md-top {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .flex-items-md-middle {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .flex-items-md-bottom {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}

@media (min-width: 768px) {
  .flex-md-top {
    -ms-flex-item-align: start;
        align-self: flex-start;
  }
  .flex-md-middle {
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center;
  }
  .flex-md-bottom {
    -ms-flex-item-align: end;
        align-self: flex-end;
  }
}

@media (min-width: 768px) {
  .flex-items-md-left {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .flex-items-md-center {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .flex-items-md-right {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .flex-items-md-around {
    -ms-flex-pack: distribute;
        justify-content: space-around;
  }
  .flex-items-md-between {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media (min-width: 992px) {
  .flex-lg-first {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }
  .flex-lg-last {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .flex-lg-unordered {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
  }
}

@media (min-width: 992px) {
  .flex-items-lg-top {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .flex-items-lg-middle {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .flex-items-lg-bottom {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}

@media (min-width: 992px) {
  .flex-lg-top {
    -ms-flex-item-align: start;
        align-self: flex-start;
  }
  .flex-lg-middle {
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center;
  }
  .flex-lg-bottom {
    -ms-flex-item-align: end;
        align-self: flex-end;
  }
}

@media (min-width: 992px) {
  .flex-items-lg-left {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .flex-items-lg-center {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .flex-items-lg-right {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .flex-items-lg-around {
    -ms-flex-pack: distribute;
        justify-content: space-around;
  }
  .flex-items-lg-between {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media (min-width: 1200px) {
  .flex-xl-first {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }
  .flex-xl-last {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .flex-xl-unordered {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
  }
}

@media (min-width: 1200px) {
  .flex-items-xl-top {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .flex-items-xl-middle {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .flex-items-xl-bottom {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}

@media (min-width: 1200px) {
  .flex-xl-top {
    -ms-flex-item-align: start;
        align-self: flex-start;
  }
  .flex-xl-middle {
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center;
  }
  .flex-xl-bottom {
    -ms-flex-item-align: end;
        align-self: flex-end;
  }
}

@media (min-width: 1200px) {
  .flex-items-xl-left {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .flex-items-xl-center {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .flex-items-xl-right {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .flex-items-xl-around {
    -ms-flex-pack: distribute;
        justify-content: space-around;
  }
  .flex-items-xl-between {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.float-xs-left {
  float: left !important;
}

.float-xs-right {
  float: right !important;
}

.float-xs-none {
  float: none !important;
}

@media (min-width: 544px) {
  .float-sm-left {
    float: left !important;
  }
  .float-sm-right {
    float: right !important;
  }
  .float-sm-none {
    float: none !important;
  }
}

@media (min-width: 768px) {
  .float-md-left {
    float: left !important;
  }
  .float-md-right {
    float: right !important;
  }
  .float-md-none {
    float: none !important;
  }
}

@media (min-width: 992px) {
  .float-lg-left {
    float: left !important;
  }
  .float-lg-right {
    float: right !important;
  }
  .float-lg-none {
    float: none !important;
  }
}

@media (min-width: 1200px) {
  .float-xl-left {
    float: left !important;
  }
  .float-xl-right {
    float: right !important;
  }
  .float-xl-none {
    float: none !important;
  }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
}

.w-100 {
  width: 100% !important;
}

.h-100 {
  height: 100% !important;
}

.mx-auto {
  margin-right: auto !important;
  margin-left: auto !important;
}

.m-0 {
  margin: 0 0 !important;
}

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

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

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

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

.mx-0 {
  margin-right: 0 !important;
  margin-left: 0 !important;
}

.my-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

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

.mt-1 {
  margin-top: 1rem !important;
}

.mr-1 {
  margin-right: 1rem !important;
}

.mb-1 {
  margin-bottom: 1rem !important;
}

.ml-1 {
  margin-left: 1rem !important;
}

.mx-1 {
  margin-right: 1rem !important;
  margin-left: 1rem !important;
}

.my-1 {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important;
}

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

.mt-2 {
  margin-top: 1.5rem !important;
}

.mr-2 {
  margin-right: 1.5rem !important;
}

.mb-2 {
  margin-bottom: 1.5rem !important;
}

.ml-2 {
  margin-left: 1.5rem !important;
}

.mx-2 {
  margin-right: 1.5rem !important;
  margin-left: 1.5rem !important;
}

.my-2 {
  margin-top: 1.5rem !important;
  margin-bottom: 1.5rem !important;
}

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

.mt-3 {
  margin-top: 3rem !important;
}

.mr-3 {
  margin-right: 3rem !important;
}

.mb-3 {
  margin-bottom: 3rem !important;
}

.ml-3 {
  margin-left: 3rem !important;
}

.mx-3 {
  margin-right: 3rem !important;
  margin-left: 3rem !important;
}

.my-3 {
  margin-top: 3rem !important;
  margin-bottom: 3rem !important;
}

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

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

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

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

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

.px-0 {
  padding-right: 0 !important;
  padding-left: 0 !important;
}

.py-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

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

.pt-1 {
  padding-top: 1rem !important;
}

.pr-1 {
  padding-right: 1rem !important;
}

.pb-1 {
  padding-bottom: 1rem !important;
}

.pl-1 {
  padding-left: 1rem !important;
}

.px-1 {
  padding-right: 1rem !important;
  padding-left: 1rem !important;
}

.py-1 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

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

.pt-2 {
  padding-top: 1.5rem !important;
}

.pr-2 {
  padding-right: 1.5rem !important;
}

.pb-2 {
  padding-bottom: 1.5rem !important;
}

.pl-2 {
  padding-left: 1.5rem !important;
}

.px-2 {
  padding-right: 1.5rem !important;
  padding-left: 1.5rem !important;
}

.py-2 {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}

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

.pt-3 {
  padding-top: 3rem !important;
}

.pr-3 {
  padding-right: 3rem !important;
}

.pb-3 {
  padding-bottom: 3rem !important;
}

.pl-3 {
  padding-left: 3rem !important;
}

.px-3 {
  padding-right: 3rem !important;
  padding-left: 3rem !important;
}

.py-3 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

.pos-f-t {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
}

.text-justify {
  text-align: justify !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.text-xs-left {
  text-align: left !important;
}

.text-xs-right {
  text-align: right !important;
}

.text-xs-center {
  text-align: center !important;
}

@media (min-width: 544px) {
  .text-sm-left {
    text-align: left !important;
  }
  .text-sm-right {
    text-align: right !important;
  }
  .text-sm-center {
    text-align: center !important;
  }
}

@media (min-width: 768px) {
  .text-md-left {
    text-align: left !important;
  }
  .text-md-right {
    text-align: right !important;
  }
  .text-md-center {
    text-align: center !important;
  }
}

@media (min-width: 992px) {
  .text-lg-left {
    text-align: left !important;
  }
  .text-lg-right {
    text-align: right !important;
  }
  .text-lg-center {
    text-align: center !important;
  }
}

@media (min-width: 1200px) {
  .text-xl-left {
    text-align: left !important;
  }
  .text-xl-right {
    text-align: right !important;
  }
  .text-xl-center {
    text-align: center !important;
  }
}

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

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

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

.font-weight-normal {
  font-weight: normal;
}

.font-weight-bold {
  font-weight: bold;
}

.font-italic {
  font-style: italic;
}

.text-white {
  color: #fff !important;
}

.text-muted {
  color: #818a91 !important;
}

a.text-muted:focus, a.text-muted:hover {
  color: #687077 !important;
}

.text-primary {
  color: #122953 !important;
}

a.text-primary:focus, a.text-primary:hover {
  color: #091429 !important;
}

.text-success {
  color: #5cb85c !important;
}

a.text-success:focus, a.text-success:hover {
  color: #449d44 !important;
}

.text-info {
  color: #5bc0de !important;
}

a.text-info:focus, a.text-info:hover {
  color: #31b0d5 !important;
}

.text-warning {
  color: #f0ad4e !important;
}

a.text-warning:focus, a.text-warning:hover {
  color: #ec971f !important;
}

.text-danger {
  color: #ca161f !important;
}

a.text-danger:focus, a.text-danger:hover {
  color: #9c1118 !important;
}

.text-gray-dark {
  color: #373a3c !important;
}

a.text-gray-dark:focus, a.text-gray-dark:hover {
  color: #1f2021 !important;
}

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.invisible {
  visibility: hidden !important;
}

.hidden-xs-up {
  display: none !important;
}

@media (max-width: 543px) {
  .hidden-xs-down {
    display: none !important;
  }
}

@media (min-width: 544px) {
  .hidden-sm-up {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .hidden-sm-down {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .hidden-md-up {
    display: none !important;
  }
}

@media (max-width: 991px) {
  .hidden-md-down {
    display: none !important;
  }
}

@media (min-width: 992px) {
  .hidden-lg-up {
    display: none !important;
  }
}

@media (max-width: 1199px) {
  .hidden-lg-down {
    display: none !important;
  }
}

@media (min-width: 1200px) {
  .hidden-xl-up {
    display: none !important;
  }
}

.hidden-xl-down {
  display: none !important;
}

.visible-print-block {
  display: none !important;
}

@media print {
  .visible-print-block {
    display: block !important;
  }
}

.visible-print-inline {
  display: none !important;
}

@media print {
  .visible-print-inline {
    display: inline !important;
  }
}

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

@media print {
  .visible-print-inline-block {
    display: inline-block !important;
  }
}

@media print {
  .hidden-print {
    display: none !important;
  }
}

/*
SCSS variables are information about icon's compiled state, stored under its original file name

.icon-home {
  width: $icon-home-width;
}

The large array-like variables contain all information about a single icon
$icon-home: x y offset_x offset_y width height total_width total_height image_path;

At the bottom of this section, we provide information about the spritesheet itself
$spritesheet: width height image $spritesheet-sprites;
*/
/*
These "retina group" variables are mappings for the naming and pairing of normal and retina sprites.

The list formatted variables are intended for mixins like `retina-sprite` and `retina-sprites`.
*/
/*
The provided mixins are intended to be used with the array-like variables

.icon-home {
  @include sprite-width($icon-home);
}

.icon-email {
  @include sprite($icon-email);
}

Example usage in HTML:

`display: block` sprite:
<div class="icon-home"></div>

To change `display` (e.g. `display: inline-block;`), we suggest using a common CSS class:

// CSS
.icon {
  display: inline-block;
}

// HTML
<i class="icon icon-home"></i>
*/
/*
The `retina-sprite` mixin sets up rules and a media query for a sprite/retina sprite.
  It should be used with a "retina group" variable.

The media query is from CSS Tricks: https://css-tricks.com/snippets/css/retina-display-media-query/

$icon-home-group: ('icon-home', $icon-home, $icon-home-2x, );

.icon-home {
  @include retina-sprite($icon-home-group);
}
*/
/*
The `sprites` mixin generates identical output to the CSS template
  but can be overridden inside of SCSS

@include sprites($spritesheet-sprites);
*/
/*
The `retina-sprites` mixin generates a CSS rule and media query for retina groups
  This yields the same output as CSS retina template but can be overridden in SCSS

@include retina-sprites($retina-groups);
*/
nav.navbar, .clearfix {
  *zoom: 1;
}

nav.navbar:before, .clearfix:before, nav.navbar:after, .clearfix:after {
  content: ' ';
  display: table;
}

nav.navbar:after, .clearfix:after {
  clear: both;
}

.modal-wrap {
  position: fixed;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  z-index: 99999;
  opacity: 0;
  pointer-events: none;
  background-color: rgba(0, 0, 0, 0.5);
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
  overflow: hidden;
}

.modal-wrap .modal-rel {
  width: 100%;
  height: 100%;
  position: relative;
}

.modal-wrap .modal-rel .modal {
  opacity: 0;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
  -webkit-transition-delay: 0.25s;
          transition-delay: 0.25s;
  min-width: 300px;
  max-width: 75%;
  padding: 24px;
  background: #fff;
  font-size: 18px;
  line-height: 22px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.modal-wrap .modal-rel .modal .modal-content {
  position: relative;
  padding: 1em;
}

.modal-wrap .modal-rel .modal .modal-content .modal-close {
  position: absolute;
  right: 0px;
  top: 0px;
  cursor: pointer;
}

.modal-wrap.open {
  width: 100%;
  height: 100%;
  opacity: 1;
  pointer-events: all;
}

.modal-wrap.open .modal-rel .modal {
  opacity: 1;
}

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 15px 15px;
  display: inline-block;
  cursor: pointer;
  -webkit-transition-property: opacity, -webkit-filter;
  transition-property: opacity, -webkit-filter;
  transition-property: opacity, filter;
  transition-property: opacity, filter, -webkit-filter;
  -webkit-transition-duration: 0.15s;
          transition-duration: 0.15s;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible;
}

.hamburger:hover {
  opacity: 1;
}

.hamburger-box {
  width: 40px;
  height: 24px;
  display: inline-block;
  position: relative;
}

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2px;
}

.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
  width: 40px;
  height: 4px;
  background-color: #fff;
  border-radius: 4px;
  position: absolute;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-duration: 0.15s;
          transition-duration: 0.15s;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
}

.hamburger-inner::before, .hamburger-inner::after {
  content: "";
  display: block;
}

.hamburger-inner::before {
  top: -10px;
}

.hamburger-inner::after {
  bottom: -10px;
}

/*
   * 3DX
   */
.hamburger--3dx .hamburger-box {
  -webkit-perspective: 80px;
          perspective: 80px;
}

.hamburger--3dx .hamburger-inner {
  -webkit-transition: background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: transform 0.2s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: transform 0.2s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dx .hamburger-inner::before, .hamburger--3dx .hamburger-inner::after {
  -webkit-transition: -webkit-transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: -webkit-transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dx.is-active .hamburger-inner {
  background-color: transparent;
  -webkit-transform: rotateY(180deg);
          transform: rotateY(180deg);
}

.hamburger--3dx.is-active .hamburger-inner::before {
  -webkit-transform: translate3d(0, 10px, 0) rotate(45deg);
          transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--3dx.is-active .hamburger-inner::after {
  -webkit-transform: translate3d(0, -10px, 0) rotate(-45deg);
          transform: translate3d(0, -10px, 0) rotate(-45deg);
}

#fade .carousel {
  position: relative;
}

#fade .carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}

#fade .carousel-inner > .carousel-item {
  position: relative;
  display: none;
  -webkit-transition: .6s ease-in-out left;
  transition: .6s ease-in-out left;
}

#fade .carousel-inner > .carousel-item > img,
#fade .carousel-inner > .carousel-item > a > img {
  line-height: 1;
}

@media all and (transform-3d), (-webkit-transform-3d) {
  #fade .carousel-inner > .carousel-item {
    -webkit-transition: opacity 1s ease-in-out;
    transition: opacity 1s ease-in-out;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    -webkit-perspective: 1000px;
            perspective: 1000px;
  }
  #fade .carousel-inner > .carousel-item.next, #fade .carousel-inner > .carousel-item.active.right {
    left: 0;
    opacity: 0;
  }
  #fade .carousel-inner > .carousel-item.prev, #fade .carousel-inner > .carousel-item.active.left {
    left: 0;
    opacity: 0;
  }
  #fade .carousel-inner > .carousel-item.next.left, #fade .carousel-inner > .carousel-item.prev.right, #fade .carousel-inner > .carousel-item.active {
    left: 0;
    opacity: 1;
  }
}

#fade .carousel-inner > .active,
#fade .carousel-inner > .next,
#fade .carousel-inner > .prev {
  display: block;
}

#fade .carousel-inner > .active {
  left: 0;
}

#fade .carousel-inner > .next,
#fade .carousel-inner > .prev {
  position: absolute;
  top: 0;
  width: 100%;
}

#fade .carousel-inner > .next {
  left: 100%;
}

#fade .carousel-inner > .prev {
  left: -100%;
}

#fade .carousel-inner > .next.left,
#fade .carousel-inner > .prev.right {
  left: 0;
}

#fade .carousel-inner > .active.left {
  left: -100%;
}

#fade .carousel-inner > .active.right {
  left: 100%;
}

#fade .carousel-control {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 15%;
  font-size: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  opacity: 0.5;
}

#fade .carousel-control.left {
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);
}

#fade .carousel-control.right {
  right: 0;
  left: auto;
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);
}

#fade .carousel-control:focus, #fade .carousel-control:hover {
  color: #fff;
  text-decoration: none;
  outline: 0;
  opacity: .9;
}

#fade .carousel-control .icon-prev,
#fade .carousel-control .icon-next {
  position: absolute;
  top: 50%;
  z-index: 5;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-top: -10px;
  font-family: serif;
  line-height: 1;
}

#fade .carousel-control .icon-prev {
  left: 50%;
  margin-left: -10px;
}

#fade .carousel-control .icon-next {
  right: 50%;
  margin-right: -10px;
}

#fade .carousel-control .icon-prev::before {
  content: "\2039";
}

#fade .carousel-control .icon-next::before {
  content: "\203a";
}

#fade .carousel-indicators {
  position: absolute;
  bottom: 10px;
  left: 50%;
  z-index: 15;
  width: 60%;
  padding-left: 0;
  margin-left: -30%;
  text-align: center;
  list-style: none;
}

#fade .carousel-indicators li {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 1px;
  text-indent: -999px;
  cursor: pointer;
  background-color: transparent;
  border: 1px solid #fff;
  border-radius: 10px;
}

#fade .carousel-indicators .active {
  width: 12px;
  height: 12px;
  margin: 0;
  background-color: #fff;
}

#fade .carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
}

#fade .carousel-caption .btn {
  text-shadow: none;
}

@media (min-width: 544px) {
  #fade .carousel-control .icon-prev,
  #fade .carousel-control .icon-next {
    width: 30px;
    height: 30px;
    margin-top: -15px;
    font-size: 30px;
  }
  #fade .carousel-control .icon-prev {
    margin-left: -15px;
  }
  #fade .carousel-control .icon-next {
    margin-right: -15px;
  }
  #fade .carousel-caption {
    right: 20%;
    left: 20%;
    padding-bottom: 30px;
  }
  #fade .carousel-indicators {
    bottom: 20px;
  }
}

#slide .carousel {
  position: relative;
}

#slide .carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}

#slide .carousel-inner > .carousel-item {
  position: relative;
  display: none;
  -webkit-transition: .6s ease-in-out left;
  transition: .6s ease-in-out left;
}

#slide .carousel-inner > .carousel-item > img,
#slide .carousel-inner > .carousel-item > a > img {
  line-height: 1;
}

@media all and (transform-3d), (-webkit-transform-3d) {
  #slide .carousel-inner > .carousel-item {
    -webkit-transition: -webkit-transform .6s ease-in-out;
    transition: -webkit-transform .6s ease-in-out;
    transition: transform .6s ease-in-out;
    transition: transform .6s ease-in-out, -webkit-transform .6s ease-in-out;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    -webkit-perspective: 1000px;
            perspective: 1000px;
  }
  #slide .carousel-inner > .carousel-item.next, #slide .carousel-inner > .carousel-item.active.right {
    left: 0;
    -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
  }
  #slide .carousel-inner > .carousel-item.prev, #slide .carousel-inner > .carousel-item.active.left {
    left: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
  }
  #slide .carousel-inner > .carousel-item.next.left, #slide .carousel-inner > .carousel-item.prev.right, #slide .carousel-inner > .carousel-item.active {
    left: 0;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}

#slide .carousel-inner > .active,
#slide .carousel-inner > .next,
#slide .carousel-inner > .prev {
  display: block;
}

#slide .carousel-inner > .active {
  left: 0;
}

#slide .carousel-inner > .next,
#slide .carousel-inner > .prev {
  position: absolute;
  top: 0;
  width: 100%;
}

#slide .carousel-inner > .next {
  left: 100%;
}

#slide .carousel-inner > .prev {
  left: -100%;
}

#slide .carousel-inner > .next.left,
#slide .carousel-inner > .prev.right {
  left: 0;
}

#slide .carousel-inner > .active.left {
  left: -100%;
}

#slide .carousel-inner > .active.right {
  left: 100%;
}

#slide .carousel-control {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 15%;
  font-size: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  opacity: 0.5;
}

#slide .carousel-control.left {
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);
}

#slide .carousel-control.right {
  right: 0;
  left: auto;
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);
}

#slide .carousel-control:focus, #slide .carousel-control:hover {
  color: #fff;
  text-decoration: none;
  outline: 0;
  opacity: .9;
}

#slide .carousel-control .icon-prev,
#slide .carousel-control .icon-next {
  position: absolute;
  top: 50%;
  z-index: 5;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-top: -10px;
  font-family: serif;
  line-height: 1;
}

#slide .carousel-control .icon-prev {
  left: 50%;
  margin-left: -10px;
}

#slide .carousel-control .icon-next {
  right: 50%;
  margin-right: -10px;
}

#slide .carousel-control .icon-prev::before {
  content: "\2039";
}

#slide .carousel-control .icon-next::before {
  content: "\203a";
}

#slide .carousel-indicators {
  position: absolute;
  bottom: 10px;
  left: 50%;
  z-index: 15;
  width: 60%;
  padding-left: 0;
  margin-left: -30%;
  text-align: center;
  list-style: none;
}

#slide .carousel-indicators li {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 1px;
  text-indent: -999px;
  cursor: pointer;
  background-color: transparent;
  border: 1px solid #fff;
  border-radius: 10px;
}

#slide .carousel-indicators .active {
  width: 12px;
  height: 12px;
  margin: 0;
  background-color: #fff;
}

#slide .carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
}

#slide .carousel-caption .btn {
  text-shadow: none;
}

@media (min-width: 544px) {
  #slide .carousel-control .icon-prev,
  #slide .carousel-control .icon-next {
    width: 30px;
    height: 30px;
    margin-top: -15px;
    font-size: 30px;
  }
  #slide .carousel-control .icon-prev {
    margin-left: -15px;
  }
  #slide .carousel-control .icon-next {
    margin-right: -15px;
  }
  #slide .carousel-caption {
    right: 20%;
    left: 20%;
    padding-bottom: 30px;
  }
  #slide .carousel-indicators {
    bottom: 20px;
  }
}

.icon-sm-facebook {
  background-image: url(../img/sprite.png);
  background-position: 0px 0px;
  width: 32px;
  height: 32px;
}

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  .icon-sm-facebook {
    background-image: url(../img/sprite@2x.png);
    background-size: 64px 64px;
  }
}

.icon-sm-googleplus {
  background-image: url(../img/sprite.png);
  background-position: -32px 0px;
  width: 32px;
  height: 32px;
}

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  .icon-sm-googleplus {
    background-image: url(../img/sprite@2x.png);
    background-size: 64px 64px;
  }
}

.icon-sm-twitter {
  background-image: url(../img/sprite.png);
  background-position: 0px -32px;
  width: 32px;
  height: 32px;
}

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  .icon-sm-twitter {
    background-image: url(../img/sprite@2x.png);
    background-size: 64px 64px;
  }
}

#header {
  position: absolute;
  left: 0;
  right: 0;
  top: 65px;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ff0000+0,ff0000+50,0088e2+50,007bf7+100 */
  background: #ca161f;
  /* Old browsers */
  /* FF3.6-15 */
  background: -webkit-linear-gradient(left, #ca161f 0%, #ca161f 50%, #122953 50%, #122953 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, #ca161f 0%, #ca161f 50%, #122953 50%, #122953 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$brand-secondary', endColorstr='$brand-primary',GradientType=1 );
  /* IE6-9 */
  z-index: 9999999;
}

#header .container {
  position: relative;
  padding: 0;
}

#header .mvmlogo {
  position: absolute;
  top: -60px;
}

@media (max-width: 767px) {
  #header .mvmlogo img {
    width: 80px;
    margin-top: 5px;
    margin-left: 10px;
    position: fixed;
  }
}

#header .mvmlogo:after {
  content: 'HOME';
  bottom: -22px;
  font-weight: bold;
  color: #fff;
  font-size: 12px;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

#header nav {
  background-color: #122953;
  text-transform: uppercase;
  margin-left: 50px;
}

#header nav a {
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  padding: 0 25px;
  font-size: 13px;
  letter-spacing: 2px;
}

@media (min-width: 768px) and (max-width: 1199px) {
  #header nav a {
    font-size: 12px;
  }
}

@media (min-width: 990px) and (max-width: 1199px) {
  #header nav a {
    padding: 0 11px;
    font-size: 11px;
  }
}

#header nav a:hover {
  color: #ca161f;
}

#header ul {
  margin: 0;
  padding: 5px 15px 5px 125px;
  list-style: none;
}

#header ul li {
  display: inline-block;
}

#header ul li.current_page_item a {
  color: #ca161f;
}

.home #header .mvmlogo:after {
  content: '';
}

html {
  overflow-y: scroll;
}

body {
  background: #fff;
}

.sprite {
  display: inline-block;
}

.content .responsive-iframe {
  position: relative;
}

.content .responsive-iframe iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.content ul, .content ol {
  margin-left: 1em;
}

.content ul li, .content ol li {
  position: relative;
  left: 1em;
  padding-right: 1em;
}

.aligncenter {
  margin: 0 auto;
}

.alignleft {
  float: left;
  margin: 0 1rem 1rem 0;
}

.alignright {
  float: right;
  margin: 0 0 1rem 1rem;
}

[v-cloak] {
  display: none;
}

.content img {
  max-width: 100%;
  height: auto;
}

@media (max-width: 992px) {
  .mobilebar {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    background-color: #122953;
    height: 52px;
    z-index: 9999;
  }
  #mobile-menu-btn {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 9999;
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  #mobile-menu-btn button {
    outline: none;
  }
  #mobile-menu {
    position: fixed;
    right: 0;
    top: 0;
    bottom: 0;
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
    padding: 0;
    width: 0;
    min-height: 100vh;
    -webkit-transition: width 0.25s ease;
    transition: width 0.25s ease;
    background-color: #ca161f;
    box-shadow: inset 5px -5px 15px rgba(0, 0, 0, 0.15);
    z-index: 999999999999999999999999999;
    text-align: center;
  }
  #mobile-menu > .mobile-menu-wrap {
    min-height: 100vh;
    width: 300px;
    position: fixed;
    overflow: auto;
    padding: 1rem;
  }
  #mobile-menu ul {
    list-style: none;
    padding: 0;
    margin: 0;
  }
  #mobile-menu ul li {
    border-bottom: 1px solid #fff;
    padding: 12px 0;
  }
  #mobile-menu ul li:last-of-type {
    border-bottom: 0;
  }
  #mobile-menu ul li.current_page_item a {
    color: #777;
  }
  #mobile-menu ul li.current_page_item a:hover {
    color: #999;
  }
  #mobile-menu a {
    color: #fff;
    font-size: 20px;
    line-height: 32px;
    font-family: "industry";
    text-decoration: none;
  }
  #mobile-menu a:hover {
    color: #999;
  }
  body {
    -webkit-transform: none;
            transform: none;
    -webkit-transition: -webkit-transform 0.25s ease;
    transition: -webkit-transform 0.25s ease;
    transition: transform 0.25s ease;
    transition: transform 0.25s ease, -webkit-transform 0.25s ease;
  }
  body.mobile-menu-open {
    -webkit-transform: translateX(-300px);
            transform: translateX(-300px);
  }
  body.mobile-menu-open #mobile-menu {
    width: 300px;
  }
}

#preloader-shell {
  position: relative;
  width: 100%;
  height: 100px;
}

#preloader-shell .cs-loader {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

#preloader-shell .cs-loader-inner {
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  top: 50%;
  position: absolute;
  width: 100%;
  color: #122953;
  text-align: center;
}

#preloader-shell .cs-loader-inner label {
  font-size: 20px;
  opacity: 0;
  display: inline-block;
}

@-webkit-keyframes lol {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-300px);
            transform: translateX(-300px);
  }
  33% {
    opacity: 1;
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
  }
  66% {
    opacity: 1;
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(300px);
            transform: translateX(300px);
  }
}

@keyframes lol {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-300px);
            transform: translateX(-300px);
  }
  33% {
    opacity: 1;
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
  }
  66% {
    opacity: 1;
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(300px);
            transform: translateX(300px);
  }
}

.cs-loader-inner label:nth-child(6) {
  -webkit-animation: lol 3s infinite ease-in-out;
  animation: lol 3s infinite ease-in-out;
}

.cs-loader-inner label:nth-child(5) {
  -webkit-animation: lol 3s 100ms infinite ease-in-out;
  animation: lol 3s 100ms infinite ease-in-out;
}

.cs-loader-inner label:nth-child(4) {
  -webkit-animation: lol 3s 200ms infinite ease-in-out;
  animation: lol 3s 200ms infinite ease-in-out;
}

.cs-loader-inner label:nth-child(3) {
  -webkit-animation: lol 3s 300ms infinite ease-in-out;
  animation: lol 3s 300ms infinite ease-in-out;
}

.cs-loader-inner label:nth-child(2) {
  -webkit-animation: lol 3s 400ms infinite ease-in-out;
  animation: lol 3s 400ms infinite ease-in-out;
}

.cs-loader-inner label:nth-child(1) {
  -webkit-animation: lol 3s 500ms infinite ease-in-out;
  animation: lol 3s 500ms infinite ease-in-out;
}

[data-container-name="hero-image-angle"] {
  padding-top: 125px;
  background-image: url("http://placehold.it/2200x600");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
  overflow: hidden;
  z-index: 1;
  position: relative;
  color: #fff;
}

[data-container-name="hero-image-angle"] h1 {
  background-color: #ca161f;
  display: inline-block;
  padding-top: 12px;
  padding-bottom: 10px;
  font-size: 20px;
  color: #fff;
  position: absolute;
  text-align: center;
  z-index: 1;
  text-transform: uppercase;
  font-family: "industry";
  margin-bottom: 0;
  /*@include media-breakpoint-only(md) {
            right:0;
        }*/
}

@media (max-width: 767px) {
  [data-container-name="hero-image-angle"] h1 {
    top: 78px;
    left: 0;
    right: 0;
  }
}

@media (min-width: 768px) {
  [data-container-name="hero-image-angle"] h1 {
    bottom: 0;
    border-top-right-radius: 15px;
    border-top-left-radius: 15px;
    padding: 12px 40px 6px;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

@media (min-width: 992px) {
  [data-container-name="hero-image-angle"] h1 {
    font-size: 28px;
  }
}

[data-container-name="hero-image-angle"] .copy {
  padding-top: 20px;
}

@media (min-width: 768px) {
  [data-container-name="hero-image-angle"] .copy {
    padding-bottom: 90px;
  }
}

[data-container-name="hero-image-angle"] .copy a {
  color: #fff;
}

[data-container-name="hero-image-angle"] .copy a:hover {
  color: #ca161f;
}

[data-container-name="hero-image-angle"] .image {
  background-repeat: no-repeat;
  background-position: bottom center;
  min-height: 350px;
  background-size: contain;
}

[data-container-name="promotional-boxes"] {
  background-color: #fff;
  background-color: #122953;
  color: #fff;
  text-align: center;
  text-transform: uppercase;
  /* one item */
  /* two items */
  /* three items */
  /* four items */
  /* five items */
  /* five items */
}

[data-container-name="promotional-boxes"] i {
  font-size: 50px;
}

[data-container-name="promotional-boxes"] ul {
  margin: 0;
  padding: 0;
}

[data-container-name="promotional-boxes"] li {
  float: left;
  text-align: center;
  color: #fff;
  font-weight: bold;
  background-color: #122953;
  list-style: none;
}

[data-container-name="promotional-boxes"] a {
  display: block;
  padding: 2em 8px;
  color: #fff;
  text-decoration: none;
}

[data-container-name="promotional-boxes"] a:hover {
  color: #cccccc;
}

[data-container-name="promotional-boxes"] p {
  margin-top: 10px;
  margin-bottom: 0;
}

[data-container-name="promotional-boxes"] li:first-child:nth-last-child(1) {
  width: 100%;
}

[data-container-name="promotional-boxes"] li:first-child:nth-last-child(2),
[data-container-name="promotional-boxes"] li:first-child:nth-last-child(2) ~ li {
  width: 50%;
}

[data-container-name="promotional-boxes"] li:first-child:nth-last-child(3),
[data-container-name="promotional-boxes"] li:first-child:nth-last-child(3) ~ li {
  width: 100%;
}

@media (min-width: 544px) {
  [data-container-name="promotional-boxes"] li:first-child:nth-last-child(3),
  [data-container-name="promotional-boxes"] li:first-child:nth-last-child(3) ~ li {
    width: 33.3333%;
  }
}

[data-container-name="promotional-boxes"] li:first-child:nth-last-child(4),
[data-container-name="promotional-boxes"] li:first-child:nth-last-child(4) ~ li {
  width: 50%;
}

@media (min-width: 544px) {
  [data-container-name="promotional-boxes"] li:first-child:nth-last-child(4),
  [data-container-name="promotional-boxes"] li:first-child:nth-last-child(4) ~ li {
    width: 25%;
  }
}

[data-container-name="promotional-boxes"] li:first-child:nth-last-child(5),
[data-container-name="promotional-boxes"] li:first-child:nth-last-child(5) ~ li {
  width: 20%;
}

[data-container-name="promotional-boxes"] li:first-child:nth-last-child(6),
[data-container-name="promotional-boxes"] li:first-child:nth-last-child(6) ~ li {
  width: 16.666666667%;
}

[data-container-name="promotional-boxes"] li:nth-child(1) {
  background-color: #204892;
}

[data-container-name="promotional-boxes"] li:nth-child(2) {
  background-color: #1b3e7d;
}

[data-container-name="promotional-boxes"] li:nth-child(3) {
  background-color: #173368;
}

[data-container-name="promotional-boxes"] li:nth-child(4) {
  background-color: #122953;
}

[data-container-name="promotional-boxes"] li:nth-child(5) {
  background-color: #0d1f3e;
}

[data-container-name="promotional-boxes"] li:nth-child(6) {
  background-color: #091429;
}

[data-container-name="promotional-blurb"] {
  background-color: #ca161f;
  background-image: url("/wp-content/themes/candeocreative/img/MVM_Red_texture-min.jpg");
  background-position: top right;
  color: #fff;
  position: relative;
  z-index: 4;
}

[data-container-name="promotional-blurb"] h2 {
  text-transform: uppercase;
  font-size: 18px;
  font-weight: bold;
}

[data-container-name="promotional-blurb"] .image {
  position: relative;
}

[data-container-name="promotional-blurb"] .image img {
  position: absolute;
  bottom: 0;
  right: 0;
}

[data-container-name="promotional-blurb"] .element {
  padding-top: 30px;
  padding-bottom: 30px;
}

[data-container-name="promotional-blurb"] a {
  color: #fff;
  text-decoration: underline;
}

[data-container-name="promotional-blurb"] a:hover {
  color: #f0ad4e;
}

.item585b13796d0c9 {
  margin-top: 80px;
}

.item585c09a6a3bfa {
  background-image: url("/wp-content/uploads/2017/01/Honor_the_memory-min.jpg") !important;
  background-repeat: no-repeat;
  background-position: top center;
  text-align: center;
  position: relative;
}

@media (min-width: 544px) {
  .item585c09a6a3bfa {
    background-size: cover;
  }
}

.item585c09a6a3bfa .element {
  padding-top: 106px;
  padding-bottom: 70px;
}

.item585c09a6a3bfa h2 {
  background-color: #ca161f;
  display: inline-block;
  width: 315px;
  padding-top: 15px;
  padding-bottom: 15px;
  font-size: 22px;
  color: #fff;
  position: absolute;
  text-align: center;
  top: 0;
  -webkit-border-bottom-right-radius: 15px;
  -webkit-border-bottom-left-radius: 15px;
  -moz-border-radius-bottomright: 15px;
  -moz-border-radius-bottomleft: 15px;
  border-bottom-right-radius: 15px;
  border-bottom-left-radius: 15px;
  text-transform: uppercase;
  font-family: "industry";
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.item585c09a6a3bfa h2.compact {
  font-size: 15px;
  padding-top: 10px;
  padding-bottom: 10px;
}

.item586ebb232c2b5 {
  background-image: url("/wp-content/themes/candeocreative/img/MVM_Background_blue-min.jpg");
}

[data-container-name="feed-full"] {
  padding-top: 50px;
  padding-bottom: 50px;
  background-color: #fff;
}

[data-container-name="feed-full"] h2 {
  text-align: center;
  color: #555;
  margin-bottom: 80px;
  font-weight: bold;
}

@media (max-width: 543px) {
  [data-container-name="feed-full"] h2 {
    margin-bottom: 0;
  }
}

[data-container-name="feed-full"] .bdr {
  border-bottom: 1px solid #bbb;
  margin-bottom: 50px;
}

[data-container-name="feed-full"] .bdr:last-of-type {
  border-bottom: 0;
}

[data-container-name="feed-full"] article {
  margin-bottom: 80px;
}

[data-container-name="feed-full"] header {
  border-bottom: 2px solid #aaa;
  margin-bottom: 40px;
}

[data-container-name="feed-full"] h1 {
  text-transform: uppercase;
  font-size: 1.2em;
  margin: 20px 0;
  letter-spacing: 2px;
}

@media (max-width: 543px) {
  [data-container-name="feed-full"] h1 {
    text-align: center;
    margin: 5px 0;
  }
}

[data-container-name="feed-full"] .date {
  text-align: center;
  line-height: 14px;
  font-weight: bold;
  font-size: 12px;
}

@media (min-width: 544px) {
  [data-container-name="feed-full"] .title {
    border-left: 1px solid #aaa;
  }
}

[data-container-name="feed-full"] .btn {
  margin-top: 40px;
  border-radius: 0;
}

[data-container-name="columned-content"] {
  background-color: #fff;
  padding-top: 80px;
}

[data-container-name="columned-content"] h2 {
  position: relative;
  font-family: "industry";
  background-color: #122953;
  color: #fff;
  text-transform: uppercase;
  font-size: 16px;
  text-align: center;
  padding: 18px 0 14px;
  letter-spacing: 2px;
  font-weight: bold;
  margin-bottom: 15px;
}

[data-container-name="columned-content"] h2 a {
  color: #fff;
  text-decoration: underline;
}

[data-container-name="columned-content"] a {
  text-decoration: underline;
}

.item585ae2c37fe26 {
  background-color: #122953;
  color: #fff;
}

.item585ae2c37fe26 h2 {
  background-color: #ca161f;
  position: relative;
  z-index: 1;
}

.item585ae2c37fe26 h2:before {
  top: -25px;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 45px;
  height: 45px;
  z-index: 0;
}

.item585ae2c37fe26 h2:after {
  top: -40px;
  content: '';
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 85px;
  height: 85px;
  background: #ca161f;
  border-radius: 50px;
  z-index: -1;
}

.item585ae2c37fe26 .item1,
.item585ae2c37fe26 .item2,
.item585ae2c37fe26 .item3 {
  padding-bottom: 60px;
}

.item585ae2c37fe26 .item1 h2:before {
  content: url("/wp-content/uploads/2017/03/MVM_gift_30x30.png");
}

.item585ae2c37fe26 .item2 h2:before {
  content: url("/wp-content/themes/candeocreative/img/MVM_Group_Tours_30x30.png");
}

.item585ae2c37fe26 .item3 h2:before {
  content: url("/wp-content/themes/candeocreative/img/MVM_Volunteer_30x30.png");
}

.item585b0bda53e9d h2 {
  z-index: 1;
}

.item585b0bda53e9d h2:before {
  top: -28px;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 45px;
  height: 45px;
  z-index: 0;
}

.item585b0bda53e9d h2:after {
  content: '';
  width: 70px;
  height: 70px;
  top: -36px;
  background: #122953;
  border-radius: 50px;
  z-index: -1;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.item585b0bda53e9d .item1 h2:before {
  content: url("/wp-content/themes/candeocreative/img/MVM_Group_Tours_30x30.png");
}

.item585b0bda53e9d .item2 h2:before {
  content: url("/wp-content/themes/candeocreative/img/MVM_Walk_through_30x30.png");
}

.item585b0bda53e9d .item3 h2:before {
  content: url("/wp-content/themes/candeocreative/img/MVM_On-site_30x30.png");
}

.item585b0bda53e9d .item4 h2:before {
  content: url("/wp-content/themes/candeocreative/img/MVM_off0site_30x30.png");
}

.item585b0bda53e9d .item {
  margin-bottom: 40px;
}

.item586eba8c86a37 {
  padding-top: 0;
  padding-bottom: 0;
}

.item586eba8c86a37 .container-fluid {
  padding-left: 8%;
  padding-right: 8%;
}

.item586eba8c86a37 .item {
  overflow: hidden;
  margin-bottom: 70px;
}

.item586eba8c86a37 .item h2 {
  background-color: #ca161f;
  margin-top: 40px;
  border-radius: 10px;
  font-size: 11px;
  margin-bottom: 30px;
  padding-left: 10px;
  padding-right: 10px;
}

.item586eba8c86a37 .item h2 strong {
  display: block;
  font-size: 20px;
  font-weight: normal;
}

.item586eba8c86a37 .item div {
  background-color: #122953;
  color: #fff;
  font-size: 11px;
  text-align: center;
  padding: 15px;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  text-transform: uppercase;
}

.item586eba8c86a37 .item div strong {
  display: block;
  font-size: 45px;
  line-height: 40px;
}

.item586eba8c86a37 ul {
  background-color: #eceeef;
  padding: 18px 40px 0;
  border-bottom-right-radius: 10px;
  border-bottom-left-radius: 10px;
  height: 100%;
}

.item586eba8c86a37 ul li {
  color: #122953;
  margin-bottom: 5px;
  font-size: 14px;
}

[data-container-name="map-builder"] {
  background-color: #122953;
  color: #fff;
}

[data-container-name="map-builder"] .copy {
  padding-top: 60px;
  padding-bottom: 60px;
  text-align: center;
}

[data-container-name="map-builder"] .map-builder {
  background-image: url("");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  min-height: 250px;
}

[data-container-name="map-builder"] .map-builder:hover {
  opacity: .8;
}

[data-container-name="map-builder"] a {
  color: #fff;
}

[data-container-name="map-builder"] strong {
  text-transform: uppercase;
}

[data-container-name="map-builder"] p {
  margin-bottom: 30px;
}

.page-template-template-exhibition-items {
  background-image: url("http://placehold.it/2200x600");
  background-repeat: no-repeat;
  background-position: top center;
}

.page-template-template-exhibition-items section.container {
  padding-top: 165px;
}

.page-template-template-exhibition-items .exhibition-items-menu {
  z-index: 99;
}

.page-template-template-exhibition-items .exhibition-items-menu ul {
  list-style: none;
  padding: 0;
  margin: 0;
  margin-top: 10px;
}

.page-template-template-exhibition-items .exhibition-items-menu ul li {
  list-style: none;
  margin: 0;
  margin-bottom: 8px;
  padding: 0;
  padding-right: 20%;
}

.page-template-template-exhibition-items .exhibition-items-menu ul li a {
  background-color: #ca161f;
  color: #fff;
  display: block;
  padding: 10px 10px 6px;
  text-align: center;
  text-transform: uppercase;
  font-family: 'industry';
  font-size: 12px;
  line-height: 14px;
  text-decoration: none;
}

.page-template-template-exhibition-items .exhibition-items-menu ul li a:hover {
  background-color: #9c1118;
}

.page-template-template-exhibition-items .content {
  color: #fff;
}

.page-template-template-exhibition-items .content h1 {
  font-family: 'industry';
  text-transform: uppercase;
}

.page-template-template-exhibition-items [data-container-name="exhibitions-items"] {
  position: relative;
  margin-top: 150px;
}

.page-template-template-exhibition-items [data-container-name="exhibitions-items"] :target:before {
  content: "";
  display: block;
  height: 170px;
  /* fixed header height*/
  margin: -170px 0 0;
  /* negative fixed header height */
}

.page-template-template-exhibition-items [data-container-name="exhibitions-items"] .backgroundimage {
  position: absolute;
  top: -142px;
  left: 0;
  right: 0;
  width: 100%;
  z-index: -1;
}

.page-template-template-exhibition-items [data-container-name="exhibitions-items"] .exhibition-item {
  background-position: right top;
  background-repeat: no-repeat;
  padding-bottom: 150px;
}

.page-template-template-exhibition-items [data-container-name="exhibitions-items"] .exhibition-item .item-hero-image {
  text-align: center;
  position: relative;
}

.page-template-template-exhibition-items [data-container-name="exhibitions-items"] .exhibition-item .item-hero-image.item1 img {
  margin-top: -100px;
}

@media (min-width: 992px) {
  .page-template-template-exhibition-items [data-container-name="exhibitions-items"] .exhibition-item .item-hero-image.item1 img {
    margin-top: -150px;
  }
}

.page-template-template-exhibition-items [data-container-name="exhibitions-items"] .slider .slick-slide img {
  opacity: 0.8;
  -webkit-transition: all 300ms ease;
  transition: all 300ms ease;
  -webkit-transform: scale(0.95);
          transform: scale(0.95);
  margin: 0 auto;
}

.page-template-template-exhibition-items [data-container-name="exhibitions-items"] .slider .slick-slide.slick-center img {
  -moz-transform: scale(1.08);
  -ms-transform: scale(1.08);
  -o-transform: scale(1.08);
  -webkit-transform: scale(1.08);
  color: #e67e22;
  opacity: 1;
  -webkit-transform: scale(1.04);
          transform: scale(1.04);
}

.page-template-template-exhibition-items [data-container-name="exhibitions-items"] [type="button"].slick-arrow {
  background-color: #ca161f;
}

.page-template-template-exhibition-items [data-container-name="exhibitions-items"] [type="button"].slick-arrow:hover {
  background-color: #9c1118;
}

.page-template-template-exhibition-items [data-container-name="exhibitions-items"] .slick-next {
  right: -55px;
}

.page-template-template-exhibition-items [data-container-name="exhibitions-items"] .slick-next:before {
  content: "\f105";
}

.page-template-template-exhibition-items [data-container-name="exhibitions-items"] .slick-prev {
  left: -55px;
}

.page-template-template-exhibition-items [data-container-name="exhibitions-items"] .slick-prev:before {
  content: "\f104";
}

.page-template-template-exhibition-items [data-container-name="exhibitions-items"] .slick-next,
.page-template-template-exhibition-items [data-container-name="exhibitions-items"] .slick-prev {
  width: 35px;
  height: 60px;
  top: 35px;
}

.page-template-template-exhibition-items [data-container-name="exhibitions-items"] .slick-next:before,
.page-template-template-exhibition-items [data-container-name="exhibitions-items"] .slick-prev:before {
  font-family: FontAwesome;
  font-size: 40px;
  line-height: 1;
  opacity: 1;
  color: white;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.page-template-template-exhibition-items [data-container-name="exhibitions-items"] .slick-dots {
  bottom: -55px;
}

.page-template-template-exhibition-items [data-container-name="exhibitions-items"] .slick-dots li button:before {
  font-size: 12px;
  width: 30px;
  height: 30px;
}

.page-template-template-exhibition-items [data-container-name="exhibitions-items"] .slick-dots li.slick-active button:before {
  color: #ca161f;
  opacity: 1;
}

.page-template-template-exhibition-items [data-container-name="exhibitions-items"] .slick-dotted.slick-slider {
  margin-bottom: 100px;
}

.page-template-template-exhibition-items article h1 {
  background-color: #122953;
  color: #fff;
  text-transform: uppercase;
  font-family: "industry";
  text-align: center;
  font-size: 18px;
  padding: 12px 10px 8px;
  margin: 0 0 40px;
}

.page-template-template-exhibition-items article p {
  margin-bottom: 20px;
}

.page-template-template-exhibition-items article li {
  margin-bottom: 30px;
}

.page-template-template-exhibition-items .playvideo {
  display: block;
  font-style: italic;
  color: #122953;
  font-size: 14px;
  text-align: center;
  text-decoration: none;
}

.page-template-template-exhibition-items .playvideo img {
  margin-bottom: 20px;
}

.page-template-template-exhibition-items .playvideo .play {
  position: absolute;
  top: 20%;
  left: 0;
  right: 0;
  text-align: center;
  font-size: 60px;
}

.page-template-template-exhibition-items .playvideo .fa-play {
  color: #fff;
}

.page-template-template-exhibition-items .playvideo:hover .fa-play {
  color: #ca161f;
}

.item5859d090a46b9 {
  margin-top: -110px;
  background-image: url("/wp-content/themes/candeocreative/img/MVM_Red_texture_angle-min.png");
  background-position: right top;
  background-repeat: no-repeat;
  color: #fff;
  padding-bottom: 100px;
  padding-top: 120px;
  z-index: 999999999;
  position: relative;
}

@media (max-width: 767px) {
  .item5859d090a46b9 {
    background-color: #ca161f;
  }
}

.item5859d090a46b9 h3 {
  text-align: center;
  margin-bottom: 45px;
  color: #fff;
  text-align: center;
  text-transform: uppercase;
  font-size: 22px;
}

.item5859d090a46b9 .copy {
  border-left: 1px solid #fff;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  text-align: center;
  position: relative;
  padding-left: 8%;
  padding-right: 8%;
  padding-bottom: 35px;
}

.item5859d090a46b9 .copy h2 {
  position: absolute;
  left: 0;
  right: 0;
  top: -8px;
  font-size: 14px;
  text-transform: uppercase;
  font-weight: bold;
  overflow: hidden;
}

.item5859d090a46b9 .copy h2 .wrapper {
  display: inline-block;
  position: relative;
}

.item5859d090a46b9 .copy h2 .bdrl,
.item5859d090a46b9 .copy h2 .bdrr {
  position: absolute;
  width: 1px;
  height: 1px;
  top: 0;
}

.item5859d090a46b9 .copy h2 .bdrl {
  left: 0;
}

.item5859d090a46b9 .copy h2 .bdrl:before {
  top: 8px;
  content: '';
  width: 1000px;
  height: 1px;
  background-color: #fff;
  position: absolute;
  left: -1015px;
}

.item5859d090a46b9 .copy h2 .bdrr {
  right: 0;
}

.item5859d090a46b9 .copy h2 .bdrr:after {
  top: 8px;
  content: '';
  width: 1000px;
  height: 1px;
  background-color: #fff;
  position: absolute;
  right: -1015px;
}

.item5859d090a46b9 .copy p {
  line-height: 18px;
  font-size: 14px;
}

.item5859d090a46b9 .copy p:first-of-type {
  padding-top: 20px;
}

.item5859d090a46b9 .copy a {
  color: #fff;
}

.item5859d090a46b9 .copy a:hover {
  color: #f0ad4e;
}

.item5859d090a46b9 .number {
  width: 40px;
  height: 40px;
  background-color: #122953;
  border-radius: 25px;
  position: absolute;
  bottom: -15px;
  z-index: 99;
  text-align: center;
  position: relative;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.item5859d090a46b9 .number div {
  position: absolute;
  top: 10px;
  left: 14px;
  font-size: 20px;
}

@media (max-width: 991px) {
  .item5859d090a46b9 .spacing {
    margin-bottom: 40px;
  }
}

[data-container-name="staff-volunteers"] {
  background-image: url("/wp-content/themes/candeocreative/img/MVM_Background_blue-min.jpg");
  background-color: #122953;
  background-position: top right;
  background-repeat: no-repeat;
  background-size: cover;
  color: #fff;
  padding-bottom: 90px;
  position: relative;
}

@media (max-width: 767px) {
  [data-container-name="staff-volunteers"] {
    background-color: #122953;
  }
}

[data-container-name="staff-volunteers"] h2 {
  background-color: #ca161f;
  display: inline-block;
  width: 315px;
  padding-top: 15px;
  padding-bottom: 15px;
  font-size: 22px;
  color: #fff;
  position: absolute;
  text-align: center;
  top: 0;
  -webkit-border-bottom-right-radius: 15px;
  -webkit-border-bottom-left-radius: 15px;
  -moz-border-radius-bottomright: 15px;
  -moz-border-radius-bottomleft: 15px;
  border-bottom-right-radius: 15px;
  border-bottom-left-radius: 15px;
  text-transform: uppercase;
  font-family: "industry";
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

[data-container-name="staff-volunteers"] h2.compact {
  font-size: 15px;
  padding-top: 10px;
  padding-bottom: 10px;
}

[data-container-name="staff-volunteers"] #slide {
  padding-top: 140px;
  margin-bottom: 90px;
}

[data-container-name="staff-volunteers"] #carousel-example-generic2 .bdr {
  border: 1px solid #fff;
}

[data-container-name="staff-volunteers"] #carousel-example-generic2 h3 {
  background-color: #fff;
  color: #122953;
  padding: 10px 30px;
  font-size: 16px;
}

[data-container-name="staff-volunteers"] #carousel-example-generic2 .subtitle {
  border-bottom: 1px solid #fff;
  padding: 10px 30px;
  margin-bottom: 0;
}

[data-container-name="staff-volunteers"] #carousel-example-generic2 .flex-items-xs-center {
  padding-top: 20px;
  padding-bottom: 20px;
}

[data-container-name="staff-volunteers"] #carousel-example-generic2 .col-sm-8 {
  padding: 0;
}

[data-container-name="staff-volunteers"] #carousel-example-generic2 .col-sm-8 p:last-of-type {
  margin-bottom: 0;
}

[data-container-name="staff-volunteers"] #carousel-example-generic2 .copy {
  padding: 30px;
}

[data-container-name="staff-volunteers"] #carousel-example-generic2 .carousel-inner {
  overflow: visible;
}

[data-container-name="staff-volunteers"] #carousel-example-generic2 .carousel-indicators {
  bottom: -60px;
}

[data-container-name="staff-volunteers"] #carousel-example-generic2 .customnav {
  position: absolute;
  top: 45%;
  display: block;
  background-color: #fff;
  color: #ca161f;
  width: 35px;
  height: 50px;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.75);
}

[data-container-name="staff-volunteers"] #carousel-example-generic2 .customnav:before {
  position: absolute;
  content: "\f053";
  font-size: 17px;
  font-family: FontAwesome;
  left: 10px;
  top: 15px;
}

[data-container-name="staff-volunteers"] #carousel-example-generic2 .customnav.left {
  left: 2%;
}

@media (min-width: 544px) {
  [data-container-name="staff-volunteers"] #carousel-example-generic2 .customnav.left {
    left: 20%;
  }
}

[data-container-name="staff-volunteers"] #carousel-example-generic2 .customnav.left:before {
  content: "\f053";
}

[data-container-name="staff-volunteers"] #carousel-example-generic2 .customnav.right {
  right: 2%;
}

@media (min-width: 544px) {
  [data-container-name="staff-volunteers"] #carousel-example-generic2 .customnav.right {
    right: 20%;
  }
}

[data-container-name="staff-volunteers"] #carousel-example-generic2 .customnav.right:before {
  content: "\f054";
}

.item586fc8f87d481 {
  position: relative;
  background: #fff;
  overflow: hidden;
  color: #122953;
  padding-bottom: 140px;
}

.item586fc8f87d481:before {
  content: ' ';
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background-image: url("/wp-content/themes/candeocreative/img/MVM_Flag_image-min.jpg");
  background-repeat: no-repeat;
  background-position: bottom center;
  -ms-background-size: cover;
  background-size: cover;
  opacity: 0.3;
}

@media (min-width: 768px) {
  .item586fc8f87d481:before {
    opacity: 1;
  }
}

.item586fc8f87d481 h2 {
  background-color: #122953;
  color: #fff;
  text-align: center;
  display: block;
  margin-bottom: 0;
  text-transform: uppercase;
  margin-top: 80px;
  font-size: 22px;
  padding: 6px;
}

.item586fc8f87d481 .flex-items-xs-right {
  position: relative;
  z-index: 99999999999;
}

.item586fc8f87d481 ul {
  margin: 0;
  margin-left: 18px;
  padding: 0;
}

.item586fc8f87d481 li {
  margin-bottom: 15px;
}

.item58596c539a576 {
  text-align: center;
  padding-bottom: 60px;
}

.item58596c539a576 h2 {
  background-color: #ca161f;
  display: inline-block;
  width: 315px;
  padding-top: 15px;
  padding-bottom: 15px;
  font-size: 22px;
  color: #fff;
  position: absolute;
  text-align: center;
  top: 0;
  -webkit-border-bottom-right-radius: 15px;
  -webkit-border-bottom-left-radius: 15px;
  -moz-border-radius-bottomright: 15px;
  -moz-border-radius-bottomleft: 15px;
  border-bottom-right-radius: 15px;
  border-bottom-left-radius: 15px;
  text-transform: uppercase;
  font-family: "industry";
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.item58596c539a576 h2.compact {
  font-size: 15px;
  padding-top: 10px;
  padding-bottom: 10px;
}

.item5858ba6800075 {
  padding-top: 40px;
  padding-bottom: 28px;
  text-transform: uppercase;
  color: #122953;
  font-family: "industry";
}

.item5858ba6800075 .btn-danger {
  margin-left: 20px;
  padding: 0.7rem 1rem 0.5rem;
}

.item585ae4f8c613a {
  padding-top: 60px;
  padding-bottom: 60px;
  text-align: center;
}

.item585ae4f8c613a h2 {
  background-color: #122953;
  color: #fff;
  display: inline-block;
  padding: 8px 2%;
  text-transform: uppercase;
  font-size: 18px;
}

.item586bfbd58a729 {
  padding-top: 60px;
  padding-bottom: 60px;
  text-align: center;
}

.item586fc763bd2a0 {
  margin-bottom: 70px;
}

.item585c07f00cd6a {
  position: relative;
}

.item585c07f00cd6a .triangle {
  z-index: 999;
  position: absolute;
  width: 0;
  height: 0;
  border-left: 30px solid transparent;
  border-right: 30px solid transparent;
  border-top: 30px solid #000;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.item585c07f00cd6a .blue {
  color: #fff;
  padding-bottom: 31px;
}

@media (max-width: 991px) {
  .item585c07f00cd6a .blue {
    text-align: center;
  }
}

.item585c07f00cd6a .padding {
  padding-top: 80px;
}

.item585c07f00cd6a .left h2,
.item585c07f00cd6a .right h2 {
  background-color: #ca161f;
  display: inline-block;
  width: 315px;
  padding-top: 15px;
  padding-bottom: 15px;
  font-size: 22px;
  color: #fff;
  position: absolute;
  text-align: center;
  top: 0;
  -webkit-border-bottom-right-radius: 15px;
  -webkit-border-bottom-left-radius: 15px;
  -moz-border-radius-bottomright: 15px;
  -moz-border-radius-bottomleft: 15px;
  border-bottom-right-radius: 15px;
  border-bottom-left-radius: 15px;
  text-transform: uppercase;
  font-family: "industry";
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.item585c07f00cd6a .left h2.compact,
.item585c07f00cd6a .right h2.compact {
  font-size: 15px;
  padding-top: 10px;
  padding-bottom: 10px;
}

.item585c07f00cd6a .left {
  background-color: #122953;
}

.item585c07f00cd6a .left .selecttitle {
  background-color: #ca161f;
  color: #fff;
  width: 275px;
  margin-bottom: 0;
  padding: 5px 40px 8px;
  border-top-left-radius: 15px;
  border-top-right-radius: 15px;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.item585c07f00cd6a .right {
  background-color: #fff;
}

.item585c07f00cd6a .options {
  overflow: hidden;
  position: relative;
  background-color: #fff;
  padding-bottom: 45px;
  -webkit-border-top-left-radius: 10px;
  -webkit-border-top-right-radius: 10px;
  -moz-border-radius-topleft: 10px;
  -moz-border-radius-topright: 10px;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  margin-left: 0;
  margin-right: 0;
}

@media (max-width: 991px) {
  .item585c07f00cd6a .options {
    text-align: center;
  }
}

.item585c07f00cd6a .options .row {
  margin-top: 45px;
}

.item585c07f00cd6a .options .number {
  position: absolute;
  top: -5px;
  left: -40px;
  display: inline-block;
  text-align: center;
  width: 30px;
  height: 30px;
  color: #fff;
  z-index: 1;
  font-size: 18px;
  line-height: 30px;
}

.item585c07f00cd6a .options .number:before {
  position: absolute;
  left: 0;
  content: "";
  background-color: #ca161f;
  width: 30px;
  height: 30px;
  border-radius: 50px;
  z-index: -1;
}

.item585c07f00cd6a .options .price {
  font-size: 22px;
  color: #122953;
  text-align: center;
  position: relative;
  display: inline-block;
}

.item585c07f00cd6a .options .price p {
  margin-bottom: 0;
}

@media (min-width: 992px) {
  .item585c07f00cd6a .options .bdr {
    position: absolute;
    left: 28%;
    top: 50px;
    height: 140px;
    width: 1px;
    background-color: #888;
  }
}

.home {
  background-image: url("/wp-content/themes/candeocreative/img/MVM_HOME_Clouds-min.jpg");
  background-repeat: no-repeat;
  background-position: center top;
}

.home .mainmoney {
  padding-top: 66px;
}

.home .carousel-caption p {
  position: relative;
  display: inline-block;
  border: 1px solid #ca161f;
  background-color: #fff;
  padding: 5px 3%;
  text-transform: uppercase;
  color: #ca161f;
  text-shadow: none;
  font-weight: bold;
  font-size: 14px;
  letter-spacing: 4px;
  padding-right: 45px;
  overflow: hidden;
}

.home .carousel-caption p:after {
  top: 0;
  display: block;
  height: 29px;
  width: 33px;
  position: absolute;
  right: 0;
  border-left: 1px solid #ca161f;
  content: '';
}

.home .carousel-caption p:before {
  position: absolute;
  right: 8px;
  top: 6px;
  content: "\f054";
  font-family: FontAwesome;
  font-weight: normal;
}

.home .carousel-caption p:hover {
  color: #122953;
}

.home #fade .carousel-indicators {
  bottom: 0;
}

.home #fade .carousel-indicators li {
  border: 1px solid #122953;
}

.home #fade .carousel-indicators .active {
  width: 10px;
  height: 10px;
  margin: 1px;
  background-color: #122953;
}

.home .customnav {
  position: absolute;
  top: 55%;
  display: block;
  background-color: #fff;
  color: #ca161f;
  width: 35px;
  height: 46px;
  box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.46);
}

.home .customnav:before {
  position: absolute;
  content: "\f053";
  font-family: FontAwesome;
  left: 10px;
  top: 15px;
}

.home .customnav.left {
  left: 2%;
}

@media (min-width: 544px) {
  .home .customnav.left {
    left: 20%;
  }
}

.home .customnav.left:before {
  content: "\f053";
}

.home .customnav.right {
  right: 2%;
}

@media (min-width: 544px) {
  .home .customnav.right {
    right: 20%;
  }
}

.home .customnav.right:before {
  content: "\f054";
}

.btn {
  border: 0;
  border-radius: 0;
  text-transform: uppercase;
  font-family: "industry" !important;
  padding: 0.7rem 1rem .5rem;
  white-space: normal !important;
  word-wrap: break-word;
}

.btn-danger {
  background-color: #ca161f;
  position: relative;
  padding-right: 32px;
  display: inline-block;
}

.btn-danger:after {
  font-family: FontAwesome;
  position: absolute;
  top: 5px;
  right: 12px;
  content: "\f105";
  font-size: 22px;
}

.btn-danger.remove {
  padding: 0.7rem 1rem .5rem;
}

.btn-danger.remove:after {
  content: '';
}

body {
  font-family: "myriad-pro" ,sans-serif;
  font-size: 15px;
  line-height: 18px;
}

/*
@include media-breakpoint-up(sm) {
    .element {
        position: relative;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        padding-top:15px;
        padding-bottom:15px;
    }
}
*/
.map-responsive {
  overflow: hidden;
  padding-bottom: 56.25%;
  position: relative;
  height: 0;
}

.map-responsive iframe {
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  position: absolute;
}

footer#footer {
  padding-top: 25px;
  padding-bottom: 25px;
  text-align: center;
  color: #fff;
  font-size: 11px;
  background-color: #ca161f;
}

footer a {
  color: #fff;
  text-decoration: none;
}

footer a:hover {
  color: #f0ad4e;
  text-decoration: none;
}

footer .fa-facebook-official {
  font-size: 44px;
}

.eventslink {
  border: 1px solid white;
  padding: 5px 19px;
  margin-top: 10px;
  display: inline-block;
}

.eventslink:hover {
  text-decoration: none;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsImJvb3RzdHJhcC9ib290c3RyYXAuc2NzcyIsImJvb3RzdHJhcC9fY3VzdG9tLnNjc3MiLCJib290c3RyYXAvX3ZhcmlhYmxlcy5zY3NzIiwiYm9vdHN0cmFwL19taXhpbnMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19ob3Zlci5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9faW1hZ2Uuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3RhZy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fcmVzZXQtZmlsdGVyLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19yZXNpemUuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3NjcmVlbi1yZWFkZXIuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3NpemUuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3RhYi1mb2N1cy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fdGV4dC1oaWRlLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL190ZXh0LXRydW5jYXRlLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19hbGVydC5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fYnV0dG9ucy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fY2FyZHMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2xpc3RzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19saXN0LWdyb3VwLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19uYXYtZGl2aWRlci5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fZm9ybXMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3Byb2dyZXNzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL190YWJsZS1yb3cuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2JhY2tncm91bmQtdmFyaWFudC5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2dyaWQuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2Zsb2F0LnNjc3MiLCJib290c3RyYXAvX25vcm1hbGl6ZS5zY3NzIiwiYm9vdHN0cmFwL19wcmludC5zY3NzIiwiYm9vdHN0cmFwL19yZWJvb3Quc2NzcyIsImJvb3RzdHJhcC9fdHlwZS5zY3NzIiwiYm9vdHN0cmFwL19pbWFnZXMuc2NzcyIsImJvb3RzdHJhcC9fY29kZS5zY3NzIiwiYm9vdHN0cmFwL19ncmlkLnNjc3MiLCJib290c3RyYXAvX3RhYmxlcy5zY3NzIiwiYm9vdHN0cmFwL19mb3Jtcy5zY3NzIiwiYm9vdHN0cmFwL19idXR0b25zLnNjc3MiLCJib290c3RyYXAvX2FuaW1hdGlvbi5zY3NzIiwiYm9vdHN0cmFwL19kcm9wZG93bi5zY3NzIiwiYm9vdHN0cmFwL19idXR0b24tZ3JvdXAuc2NzcyIsImJvb3RzdHJhcC9faW5wdXQtZ3JvdXAuc2NzcyIsImJvb3RzdHJhcC9fY3VzdG9tLWZvcm1zLnNjc3MiLCJib290c3RyYXAvX25hdi5zY3NzIiwiYm9vdHN0cmFwL19uYXZiYXIuc2NzcyIsImJvb3RzdHJhcC9fY2FyZC5zY3NzIiwiYm9vdHN0cmFwL19hbGVydC5zY3NzIiwiYm9vdHN0cmFwL19wcm9ncmVzcy5zY3NzIiwiYm9vdHN0cmFwL19tZWRpYS5zY3NzIiwiYm9vdHN0cmFwL19jbG9zZS5zY3NzIiwiYm9vdHN0cmFwL191dGlsaXRpZXMuc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX2FsaWduLnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL19iYWNrZ3JvdW5kLnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL19ib3JkZXJzLnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL19jbGVhcmZpeC5zY3NzIiwiYm9vdHN0cmFwL3V0aWxpdGllcy9fZGlzcGxheS5zY3NzIiwiYm9vdHN0cmFwL3V0aWxpdGllcy9fZmxleC5zY3NzIiwiYm9vdHN0cmFwL3V0aWxpdGllcy9fZmxvYXQuc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX3NjcmVlbnJlYWRlcnMuc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX3NwYWNpbmcuc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX3RleHQuc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX3Zpc2liaWxpdHkuc2NzcyIsIl9zcHJpdGUuc2NzcyIsIl9jYW5kZW9fbWl4aW5zLnNjc3MiLCJfY2FuZGVvX21vZGFscy5zY3NzIiwiX2hhbWJ1cmdlci5zY3NzIiwiaGFtYnVyZ2Vycy9fYmFzZS5zY3NzIiwiaGFtYnVyZ2Vycy90eXBlcy9fM2R4LnNjc3MiLCJoYW1idXJnZXJzL3R5cGVzL18zZHgtci5zY3NzIiwiaGFtYnVyZ2Vycy90eXBlcy9fM2R5LnNjc3MiLCJoYW1idXJnZXJzL3R5cGVzL18zZHktci5zY3NzIiwiaGFtYnVyZ2Vycy90eXBlcy9fYXJyb3cuc2NzcyIsImhhbWJ1cmdlcnMvdHlwZXMvX2Fycm93LXIuc2NzcyIsImhhbWJ1cmdlcnMvdHlwZXMvX2Fycm93YWx0LnNjc3MiLCJoYW1idXJnZXJzL3R5cGVzL19hcnJvd2FsdC1yLnNjc3MiLCJoYW1idXJnZXJzL3R5cGVzL19ib3Jpbmcuc2NzcyIsImhhbWJ1cmdlcnMvdHlwZXMvX2NvbGxhcHNlLnNjc3MiLCJoYW1idXJnZXJzL3R5cGVzL19jb2xsYXBzZS1yLnNjc3MiLCJoYW1idXJnZXJzL3R5cGVzL19lbGFzdGljLnNjc3MiLCJoYW1idXJnZXJzL3R5cGVzL19lbGFzdGljLXIuc2NzcyIsImhhbWJ1cmdlcnMvdHlwZXMvX2VtcGhhdGljLnNjc3MiLCJoYW1idXJnZXJzL3R5cGVzL19lbXBoYXRpYy1yLnNjc3MiLCJoYW1idXJnZXJzL3R5cGVzL19zbGlkZXIuc2NzcyIsImhhbWJ1cmdlcnMvdHlwZXMvX3NsaWRlci1yLnNjc3MiLCJoYW1idXJnZXJzL3R5cGVzL19zcHJpbmcuc2NzcyIsImhhbWJ1cmdlcnMvdHlwZXMvX3NwcmluZy1yLnNjc3MiLCJoYW1idXJnZXJzL3R5cGVzL19zdGFuZC5zY3NzIiwiaGFtYnVyZ2Vycy90eXBlcy9fc3RhbmQtci5zY3NzIiwiaGFtYnVyZ2Vycy90eXBlcy9fc3Bpbi5zY3NzIiwiaGFtYnVyZ2Vycy90eXBlcy9fc3Bpbi1yLnNjc3MiLCJoYW1idXJnZXJzL3R5cGVzL19zcXVlZXplLnNjc3MiLCJoYW1idXJnZXJzL3R5cGVzL192b3J0ZXguc2NzcyIsImhhbWJ1cmdlcnMvdHlwZXMvX3ZvcnRleC1yLnNjc3MiLCJzbGlkZXJfZmFkZS5zY3NzIiwic2xpZGVyX3NsaWRlLnNjc3MiLCJoZWFkZXJfYmFyLnNjc3MiLCJfZGVmYXVsdHMuc2NzcyIsIl9jb250ZW50LnNjc3MiLCJfbW9iaWxlX21lbnUuc2NzcyIsIl9jc19sb2FkZXIuc2NzcyIsImhlcm9faW1hZ2VfYW5nbGUuc2NzcyIsInByb21vdGlvbmFsX2JveGVzLnNjc3MiLCJwcm9tb3Rpb25hbF9ibHVyYi5zY3NzIiwiZmVlZF9mdWxsLnNjc3MiLCJjb2x1bW5lZF9jb250ZW50LnNjc3MiLCJtYXBfYnVpbGRlci5zY3NzIiwiZXhoaWJpdGlvbl9pdGVtcy5zY3NzIiwiZG9uYXRpb25fdHlwZXMuc2NzcyIsInN0YWZmX3ZvbHVudGVlcnMuc2NzcyIsInN0YW5kYXJkX2NvbnRlbnQuc2NzcyIsInRlbXBsYXRlX3BhcnQuc2NzcyIsImZyb250X3BhZ2Uuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIC8vXHJcbi8vICAgICAgICAgICAgICBUaGVtZSBzcGVjaWZpYyBnbG9iYWwgdmFyaWFibGVzICAgICAgICAgICAgICAgLy9cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAvL1xyXG5cclxuJHRoZW1lLWRpcjogICAgICAgICAnL3dwLWNvbnRlbnQvdGhlbWVzL2NhbmRlb2NyZWF0aXZlLyc7XHJcbiR0aGVtZS1pbWFnZS1kaXI6ICAgJy93cC1jb250ZW50L3RoZW1lcy9jYW5kZW9jcmVhdGl2ZS9pbWcvJztcclxuXHJcbiRlbmFibGUtZmxleDogdHJ1ZSAhZGVmYXVsdDtcclxuXHJcbi8vIEdyZXkgcmFpbmJvd1xyXG4kd2hpdGU6ICNmZmY7XHJcbiRncmV5LXh4eGw6ICNlZWU7XHJcbiRncmV5LXh4bDogI2RkZDtcclxuJGdyZXkteGw6ICNjY2M7XHJcbiRncmV5LWw6ICNiYmI7XHJcbiRncmV5LW1sOiAjYWFhO1xyXG4kZ3JleS1tOiAjOTk5O1xyXG4kZ3JleS1tZDogIzg4ODtcclxuJGdyZXktZDogIzc3NztcclxuJGdyZXkteGQ6ICM2NjY7XHJcbiRncmV5LXh4ZDogIzU1NTtcclxuJGdyZXkteHh4ZDogIzQ0NDtcclxuJGdyZXktdWQ6ICMzMzM7XHJcbiRncmV5LXV4ZDogIzIyMjtcclxuJGdyZXktdXh4ZDogIzExMTtcclxuJGJsYWNrOiAjMDAwO1xyXG5cclxuJHRleHQtY29sb3I6ICRncmV5LXVkO1xyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAvL1xyXG4vLyAgICAgICAgICAgICAgICAgQm9vdHN0cmFwIE92ZXJyaWRlcyBIZXJlISAgICAgICAgICAgICAgICAgIC8vXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLy9cclxuXHJcbi8vIERlZmluZSB0aGUgbWluaW11bSBhbmQgbWF4aW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxyXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXHJcblxyXG4kZ3JpZC1icmVha3BvaW50czogKFxyXG4gIC8vIEV4dHJhIHNtYWxsIHNjcmVlbiAvIHBob25lXHJcbiAgeHM6IDAsXHJcbiAgLy8gU21hbGwgc2NyZWVuIC8gcGhvbmVcclxuICBzbTogNTQ0cHgsXHJcbiAgLy8gTWVkaXVtIHNjcmVlbiAvIHRhYmxldFxyXG4gIG1kOiA3NjhweCxcclxuICAvLyBMYXJnZSBzY3JlZW4gLyBkZXNrdG9wXHJcbiAgbGc6IDk5MnB4LFxyXG4gIC8vIEV4dHJhIGxhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxyXG4gIHhsOiAxMjAwcHhcclxuKTtcclxuXHJcbi8vIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXHJcbiRjb250YWluZXItbWF4LXdpZHRoczogKFxyXG4gIHNtOiA1NzZweCxcclxuICBtZDogNzIwcHgsXHJcbiAgbGc6IDk0MHB4LFxyXG4gIHhsOiAxMTQwcHhcclxuKTtcclxuXHJcbiRicmFuZC1wcmltYXJ5OiAjMTIyOTUzO1xyXG4kYnJhbmQtc2Vjb25kYXJ5OiAjY2ExNjFmO1xyXG4kYnJhbmQtc3VjY2VzczogIzVjYjg1YztcclxuJGJyYW5kLWluZm86ICAgICM1YmMwZGU7XHJcbiRicmFuZC13YXJuaW5nOiAjZjBhZDRlO1xyXG4kYnJhbmQtZGFuZ2VyOiAgJGJyYW5kLXNlY29uZGFyeTtcclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLy9cclxuLy8gICAgICAgICAgICAgIF9oYW1idXJnZXIuc2NzcyBPdmVycmlkZXMgSGVyZSEgICAgICAgICAgICAgICAvL1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIC8vXHJcbiRoYW1idXJnZXItbGF5ZXItY29sb3I6ICR3aGl0ZTtcclxuJGhhbWJ1cmdlci1ob3Zlci1vcGFjaXR5OiAxO1xyXG4kaGFtYnVyZ2VyLXR5cGVzOiAoM2R4KTtcclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLy9cclxuLy8gICAgICAgICAgICAgICAgICAgIGltcG9ydHMgYW5kIGluY2x1ZGVzICAgICAgICAgICAgICAgICAgICAvL1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIC8vXHJcbkBpbXBvcnQgJ2Jvb3RzdHJhcC9ib290c3RyYXAnOyAgICAgICAgICAgICAgLy8gYm9vdHN0cmFwXHJcbkBpbXBvcnQgJ3Nwcml0ZSc7ICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gc3ByaXRlc2hlZXRzIC0gZ2VuZXJhdGVkIGJ5IGd1bHAuc3ByaXRlc21pdGhcclxuQGltcG9ydCAnY2FuZGVvX21peGlucyc7ICAgICAgICAgICAgICAgICAgICAvLyBnZW5lcmFsIHV0aWxpdHkgbWl4aW5zXHJcbkBpbXBvcnQgJ2NhbmRlb19tb2RhbHMnOyAgICAgICAgICAgICAgICAgICAgLy8gbW9kYWwgd2luZG93IHN0eWxlcyBmb3IganF1ZXJ5LmNhbmRlb19tb2RhbC5qc1xyXG5AaW1wb3J0ICdoYW1idXJnZXInOyAgICAgICAgICAgICAgICAgICAgICAgIC8vIEhhbWJ1cmdlciBtZW51IGxpYnJhcnlcclxuQGltcG9ydCAnc2xpZGVyX2ZhZGUnO1xyXG5AaW1wb3J0ICdzbGlkZXJfc2xpZGUnO1xyXG5cclxuQGluY2x1ZGUgcmV0aW5hLXNwcml0ZXMoJHJldGluYS1ncm91cHMpOyAgICAvLyBJbmNsdWRlIHJldGluYSBncm91cHMgbWl4aW5cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLy9cclxuLy8gICAgICAgICAgICAgICAgICAgICAgc2l0ZSBjb21wb25lbnRzICAgICAgICAgICAgICAgICAgICAgICAvL1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIC8vXHJcbkBpbXBvcnQgJ2hlYWRlcl9iYXInOyAgICAgICAgICAgICAgICAgICAgICAgLy8gSGVhZGVyYmFyXHJcbkBpbXBvcnQgJ2RlZmF1bHRzJzsgICAgICAgICAgICAgICAgICAgICAgICAgLy8gRGVmYXVsdCBzdHlsZXNcclxuQGltcG9ydCAnY29udGVudCc7ICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBEZWZhdWx0IGNvbnRlbnQgYXJlYSBjb21wb25lbnQgc3R5bGVzXHJcbkBpbXBvcnQgJ21vYmlsZV9tZW51JzsgICAgICAgICAgICAgICAgICAgICAgLy8gTW9iaWxlIE1lbnVcclxuQGltcG9ydCAnY3NfbG9hZGVyJzsgICAgICAgICAgICAgICAgICAgICAgICAvLyBMYXp5IGxvYWRlciBwcmVsb2FkaW5nIGFuaW1hdGlvblxyXG5AaW1wb3J0ICdoZXJvX2ltYWdlX2FuZ2xlJzsgICAgICAgICAgICAgICAgIC8vIExhenkgbG9hZGVyIHByZWxvYWRpbmcgYW5pbWF0aW9uXHJcbkBpbXBvcnQgJ3Byb21vdGlvbmFsX2JveGVzJzsgICAgICAgICAgICAgICAgLy8gTGF6eSBsb2FkZXIgcHJlbG9hZGluZyBhbmltYXRpb25cclxuQGltcG9ydCAncHJvbW90aW9uYWxfYmx1cmInOyAgICAgICAgICAgICAgICAvLyBMYXp5IGxvYWRlciBwcmVsb2FkaW5nIGFuaW1hdGlvblxyXG5AaW1wb3J0ICdmZWVkX2Z1bGwnOyAgICAgICAgICAgICAgICAgICAgICAgIC8vIExhenkgbG9hZGVyIHByZWxvYWRpbmcgYW5pbWF0aW9uXHJcbkBpbXBvcnQgJ2NvbHVtbmVkX2NvbnRlbnQnOyAgICAgICAgICAgICAgICAgLy8gTGF6eSBsb2FkZXIgcHJlbG9hZGluZyBhbmltYXRpb25cclxuQGltcG9ydCAnbWFwX2J1aWxkZXInOyAgICAgICAgICAgICAgICAgLy8gTGF6eSBsb2FkZXIgcHJlbG9hZGluZyBhbmltYXRpb25cclxuQGltcG9ydCAnZXhoaWJpdGlvbl9pdGVtcyc7ICAgICAgICAgICAgICAgICAvLyBMYXp5IGxvYWRlciBwcmVsb2FkaW5nIGFuaW1hdGlvblxyXG5AaW1wb3J0ICdkb25hdGlvbl90eXBlcyc7ICAgICAgICAgICAgICAgICAvLyBMYXp5IGxvYWRlciBwcmVsb2FkaW5nIGFuaW1hdGlvblxyXG5AaW1wb3J0ICdzdGFmZl92b2x1bnRlZXJzJzsgICAgICAgICAgICAgICAgIC8vIExhenkgbG9hZGVyIHByZWxvYWRpbmcgYW5pbWF0aW9uXHJcbkBpbXBvcnQgJ3N0YW5kYXJkX2NvbnRlbnQnOyAgICAgICAgICAgICAgICAgLy8gTGF6eSBsb2FkZXIgcHJlbG9hZGluZyBhbmltYXRpb25cclxuQGltcG9ydCAndGVtcGxhdGVfcGFydCc7ICAgICAgICAgICAgICAgICAvLyBMYXp5IGxvYWRlciBwcmVsb2FkaW5nIGFuaW1hdGlvblxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAvL1xyXG4vLyAgICAgICAgICAgICAgICAgICAgICBQYWdlcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLy9cclxuXHJcbkBpbXBvcnQgJ2Zyb250X3BhZ2UnOyAgICAgICAgICAgICAgICAgICAgICAgIC8vIExhenkgbG9hZGVyIHByZWxvYWRpbmcgYW5pbWF0aW9uXHJcblxyXG4uYnRuIHtcclxuICAgIGJvcmRlcjowO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBmb250LWZhbWlseTogXCJpbmR1c3RyeVwiIWltcG9ydGFudDtcclxuICAgIHBhZGRpbmc6IDAuN3JlbSAxcmVtIC41cmVtO1xyXG4gICAgd2hpdGUtc3BhY2U6bm9ybWFsICFpbXBvcnRhbnQ7XHJcbiAgICB3b3JkLXdyYXA6YnJlYWstd29yZDtcclxufVxyXG5cclxuLmJ0bi1kYW5nZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjokYnJhbmQtc2Vjb25kYXJ5O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcGFkZGluZy1yaWdodDozMnB4O1xyXG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogNXB4O1xyXG4gICAgICAgIHJpZ2h0OiAxMnB4O1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMTA1XCI7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgfVxyXG4gICAgJi5yZW1vdmUge1xyXG4gICAgICAgIHBhZGRpbmc6IDAuN3JlbSAxcmVtIC41cmVtO1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuYm9keSB7XHJcbiAgICAgZm9udC1mYW1pbHk6IFwibXlyaWFkLXByb1wiICxzYW5zLXNlcmlmO1xyXG4gICAgIGZvbnQtc2l6ZToxNXB4O1xyXG4gICAgIGxpbmUtaGVpZ2h0OjE4cHg7XHJcbn1cclxuXHJcbi8qXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcclxuICAgIC5lbGVtZW50IHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOjE1cHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206MTVweDtcclxuICAgIH1cclxufVxyXG4qL1xyXG5cclxuXHJcbi5tYXAtcmVzcG9uc2l2ZXtcclxuICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgIHBhZGRpbmctYm90dG9tOjU2LjI1JTtcclxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgaGVpZ2h0OjA7XHJcbn1cclxuLm1hcC1yZXNwb25zaXZlIGlmcmFtZXtcclxuICAgIGxlZnQ6MDtcclxuICAgIHRvcDowO1xyXG4gICAgaGVpZ2h0OjEwMCU7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG4gICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbn1cclxuXHJcblxyXG5mb290ZXIge1xyXG4gICAgJiNmb290ZXIge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOjI1cHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206MjVweDtcclxuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgICAgICBjb2xvcjokd2hpdGU7XHJcbiAgICAgICAgZm9udC1zaXplOjExcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYnJhbmQtc2Vjb25kYXJ5O1xyXG4gICAgfVxyXG4gICAgYSB7XHJcbiAgICAgICAgY29sb3I6JHdoaXRlO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6JGJyYW5kLXdhcm5pbmc7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuZmEtZmFjZWJvb2stb2ZmaWNpYWwge1xyXG4gICAgICAgIGZvbnQtc2l6ZTo0NHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uZXZlbnRzbGluayB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB3aGl0ZTtcclxuICAgIHBhZGRpbmc6IDVweCAxOXB4O1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgICBcclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIH0gXHJcbn0iLCIvKiFcclxuICogQm9vdHN0cmFwIHY0LjAuMC1hbHBoYS41IChodHRwczovL2dldGJvb3RzdHJhcC5jb20pXHJcbiAqIENvcHlyaWdodCAyMDExLTIwMTYgVGhlIEJvb3RzdHJhcCBBdXRob3JzXHJcbiAqIENvcHlyaWdodCAyMDExLTIwMTYgVHdpdHRlciwgSW5jLlxyXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21hc3Rlci9MSUNFTlNFKVxyXG4gKi9cclxuXHJcbi8vIENvcmUgdmFyaWFibGVzIGFuZCBtaXhpbnNcclxuQGltcG9ydCBcImN1c3RvbVwiO1xyXG5AaW1wb3J0IFwidmFyaWFibGVzXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnNcIjtcclxuXHJcbi8vIFJlc2V0IGFuZCBkZXBlbmRlbmNpZXNcclxuQGltcG9ydCBcIm5vcm1hbGl6ZVwiO1xyXG5AaW1wb3J0IFwicHJpbnRcIjtcclxuXHJcbi8vIENvcmUgQ1NTXHJcbkBpbXBvcnQgXCJyZWJvb3RcIjtcclxuQGltcG9ydCBcInR5cGVcIjtcclxuQGltcG9ydCBcImltYWdlc1wiO1xyXG5AaW1wb3J0IFwiY29kZVwiO1xyXG5AaW1wb3J0IFwiZ3JpZFwiO1xyXG5AaW1wb3J0IFwidGFibGVzXCI7XHJcbkBpbXBvcnQgXCJmb3Jtc1wiO1xyXG5AaW1wb3J0IFwiYnV0dG9uc1wiO1xyXG5cclxuLy8gQ29tcG9uZW50c1xyXG5AaW1wb3J0IFwiYW5pbWF0aW9uXCI7XHJcbkBpbXBvcnQgXCJkcm9wZG93blwiO1xyXG5AaW1wb3J0IFwiYnV0dG9uLWdyb3VwXCI7XHJcbkBpbXBvcnQgXCJpbnB1dC1ncm91cFwiO1xyXG5AaW1wb3J0IFwiY3VzdG9tLWZvcm1zXCI7XHJcbkBpbXBvcnQgXCJuYXZcIjtcclxuQGltcG9ydCBcIm5hdmJhclwiO1xyXG5AaW1wb3J0IFwiY2FyZFwiO1xyXG4vLyBAaW1wb3J0IFwiYnJlYWRjcnVtYlwiO1xyXG4vLyBAaW1wb3J0IFwicGFnaW5hdGlvblwiO1xyXG4vLyBAaW1wb3J0IFwidGFnc1wiO1xyXG4vLyBAaW1wb3J0IFwianVtYm90cm9uXCI7XHJcbkBpbXBvcnQgXCJhbGVydFwiO1xyXG5AaW1wb3J0IFwicHJvZ3Jlc3NcIjtcclxuQGltcG9ydCBcIm1lZGlhXCI7XHJcbi8vIEBpbXBvcnQgXCJsaXN0LWdyb3VwXCI7XHJcbi8vIEBpbXBvcnQgXCJyZXNwb25zaXZlLWVtYmVkXCI7XHJcbkBpbXBvcnQgXCJjbG9zZVwiO1xyXG5cclxuLy8gQ29tcG9uZW50cyB3LyBKYXZhU2NyaXB0XHJcbi8vIEBpbXBvcnQgXCJtb2RhbFwiOyBETyBOT1QgVVNFLiBDT05GTElDVFMgV0lUSCBDQU5ERU9fTU9EQUxcclxuXHJcbi8vIEVuYWJsZSB0aGVzZSBhcyBkZXNpcmVkXHJcbi8vIEBpbXBvcnQgXCJ0b29sdGlwXCI7XHJcbi8vIEBpbXBvcnQgXCJwb3BvdmVyXCI7XHJcbi8vQGltcG9ydCBcImNhcm91c2VsXCI7XHJcblxyXG4vLyBVdGlsaXR5IGNsYXNzZXNcclxuQGltcG9ydCBcInV0aWxpdGllc1wiO1xyXG4iLCIvLyBCb290c3RyYXAgb3ZlcnJpZGVzXHJcbi8vXHJcbi8vIENvcHkgdmFyaWFibGVzIGZyb20gYF92YXJpYWJsZXMuc2Nzc2AgdG8gdGhpcyBmaWxlIHRvIG92ZXJyaWRlIGRlZmF1bHQgdmFsdWVzXHJcbi8vIHdpdGhvdXQgbW9kaWZ5aW5nIHNvdXJjZSBmaWxlcy5cclxuIiwiLy8gVmFyaWFibGVzXHJcbi8vXHJcbi8vIENvcHkgc2V0dGluZ3MgZnJvbSB0aGlzIGZpbGUgaW50byB0aGUgcHJvdmlkZWQgYF9jdXN0b20uc2Nzc2AgdG8gb3ZlcnJpZGVcclxuLy8gdGhlIEJvb3RzdHJhcCBkZWZhdWx0cyB3aXRob3V0IG1vZGlmeWluZyBrZXksIHZlcnNpb25lZCBmaWxlcy5cclxuXHJcblxyXG4vLyBUYWJsZSBvZiBDb250ZW50c1xyXG4vL1xyXG4vLyBDb2xvcnNcclxuLy8gT3B0aW9uc1xyXG4vLyBTcGFjaW5nXHJcbi8vIEJvZHlcclxuLy8gTGlua3NcclxuLy8gR3JpZCBicmVha3BvaW50c1xyXG4vLyBHcmlkIGNvbnRhaW5lcnNcclxuLy8gR3JpZCBjb2x1bW5zXHJcbi8vIEZvbnRzXHJcbi8vIENvbXBvbmVudHNcclxuXHJcbkBtaXhpbiBfYXNzZXJ0LWFzY2VuZGluZygkbWFwLCAkbWFwLW5hbWUpIHtcclxuICAkcHJldi1rZXk6IG51bGw7XHJcbiAgJHByZXYtbnVtOiBudWxsO1xyXG4gIEBlYWNoICRrZXksICRudW0gaW4gJG1hcCB7XHJcbiAgICBAaWYgJHByZXYtbnVtID09IG51bGwge1xyXG4gICAgICAvLyBEbyBub3RoaW5nXHJcbiAgICB9IEBlbHNlIGlmIG5vdCBjb21wYXJhYmxlKCRwcmV2LW51bSwgJG51bSkge1xyXG4gICAgICBAd2FybiBcIlBvdGVudGlhbGx5IGludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdob3NlIHVuaXQgbWFrZXMgaXQgaW5jb21wYXJhYmxlIHRvICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xyXG4gICAgfSBAZWxzZSBpZiAkcHJldi1udW0gPj0gJG51bSB7XHJcbiAgICAgIEB3YXJuIFwiSW52YWxpZCB2YWx1ZSBmb3IgI3skbWFwLW5hbWV9OiBUaGlzIG1hcCBtdXN0IGJlIGluIGFzY2VuZGluZyBvcmRlciwgYnV0IGtleSAnI3ska2V5fScgaGFzIHZhbHVlICN7JG51bX0gd2hpY2ggaXNuJ3QgZ3JlYXRlciB0aGFuICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xyXG4gICAgfVxyXG4gICAgJHByZXYta2V5OiAka2V5O1xyXG4gICAgJHByZXYtbnVtOiAkbnVtO1xyXG4gIH1cclxufVxyXG5cclxuLy8gR2VuZXJhbCB2YXJpYWJsZSBzdHJ1Y3R1cmVcclxuLy9cclxuLy8gVmFyaWFibGUgZm9ybWF0IHNob3VsZCBmb2xsb3cgdGhlIGAkY29tcG9uZW50LW1vZGlmaWVyLXN0YXRlLXByb3BlcnR5YCBvcmRlci5cclxuXHJcblxyXG4vLyBDb2xvcnNcclxuLy9cclxuLy8gR3JheXNjYWxlIGFuZCBicmFuZCBjb2xvcnMgZm9yIHVzZSBhY3Jvc3MgQm9vdHN0cmFwLlxyXG5cclxuJGdyYXktZGFyazogICAgICAgICAgICAgICAgICMzNzNhM2MgIWRlZmF1bHQ7XHJcbiRncmF5OiAgICAgICAgICAgICAgICAgICAgICAjNTU1OTVjICFkZWZhdWx0O1xyXG4kZ3JheS1saWdodDogICAgICAgICAgICAgICAgIzgxOGE5MSAhZGVmYXVsdDtcclxuJGdyYXktbGlnaHRlcjogICAgICAgICAgICAgICNlY2VlZWYgIWRlZmF1bHQ7XHJcbiRncmF5LWxpZ2h0ZXN0OiAgICAgICAgICAgICAjZjdmN2Y5ICFkZWZhdWx0O1xyXG5cclxuJGJyYW5kLXByaW1hcnk6ICAgICAgICAgICAgICMwMjc1ZDggIWRlZmF1bHQ7XHJcbiRicmFuZC1zdWNjZXNzOiAgICAgICAgICAgICAjNWNiODVjICFkZWZhdWx0O1xyXG4kYnJhbmQtaW5mbzogICAgICAgICAgICAgICAgIzViYzBkZSAhZGVmYXVsdDtcclxuJGJyYW5kLXdhcm5pbmc6ICAgICAgICAgICAgICNmMGFkNGUgIWRlZmF1bHQ7XHJcbiRicmFuZC1kYW5nZXI6ICAgICAgICAgICAgICAjZDk1MzRmICFkZWZhdWx0O1xyXG4kYnJhbmQtaW52ZXJzZTogICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBPcHRpb25zXHJcbi8vXHJcbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cclxuXHJcbiRlbmFibGUtZmxleDogICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcclxuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XHJcbiRlbmFibGUtc2hhZG93czogICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcclxuJGVuYWJsZS1ncmFkaWVudHM6ICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xyXG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XHJcbiRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnk6ICBmYWxzZSAhZGVmYXVsdDtcclxuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgIHRydWUgIWRlZmF1bHQ7XHJcbiRlbmFibGUtcHJpbnQtc3R5bGVzOiAgICAgICB0cnVlICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vIFNwYWNpbmdcclxuLy9cclxuLy8gQ29udHJvbCB0aGUgZGVmYXVsdCBzdHlsaW5nIG9mIG1vc3QgQm9vdHN0cmFwIGVsZW1lbnRzIGJ5IG1vZGlmeWluZyB0aGVzZVxyXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXHJcbi8vIFlvdSBjYW4gYWRkIG1vcmUgZW50cmllcyB0byB0aGUgJHNwYWNlcnMgbWFwLCBzaG91bGQgeW91IG5lZWQgbW9yZSB2YXJpYXRpb24uXHJcblxyXG4kc3BhY2VyOiAgIDFyZW0gIWRlZmF1bHQ7XHJcbiRzcGFjZXIteDogJHNwYWNlciAhZGVmYXVsdDtcclxuJHNwYWNlci15OiAkc3BhY2VyICFkZWZhdWx0O1xyXG4kc3BhY2VyczogKFxyXG4gIDA6IChcclxuICAgIHg6IDAsXHJcbiAgICB5OiAwXHJcbiAgKSxcclxuICAxOiAoXHJcbiAgICB4OiAkc3BhY2VyLXgsXHJcbiAgICB5OiAkc3BhY2VyLXlcclxuICApLFxyXG4gIDI6IChcclxuICAgIHg6ICgkc3BhY2VyLXggKiAxLjUpLFxyXG4gICAgeTogKCRzcGFjZXIteSAqIDEuNSlcclxuICApLFxyXG4gIDM6IChcclxuICAgIHg6ICgkc3BhY2VyLXggKiAzKSxcclxuICAgIHk6ICgkc3BhY2VyLXkgKiAzKVxyXG4gIClcclxuKSAhZGVmYXVsdDtcclxuJGJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vIEJvZHlcclxuLy9cclxuLy8gU2V0dGluZ3MgZm9yIHRoZSBgPGJvZHk+YCBlbGVtZW50LlxyXG5cclxuJGJvZHktYmc6ICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRib2R5LWNvbG9yOiAkZ3JheS1kYXJrICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vIExpbmtzXHJcbi8vXHJcbi8vIFN0eWxlIGFuY2hvciBlbGVtZW50cy5cclxuXHJcbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xyXG4kbGluay1kZWNvcmF0aW9uOiAgICAgICBub25lICFkZWZhdWx0O1xyXG4kbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XHJcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246IHVuZGVybGluZSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBHcmlkIGJyZWFrcG9pbnRzXHJcbi8vXHJcbi8vIERlZmluZSB0aGUgbWluaW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxyXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXHJcblxyXG4kZ3JpZC1icmVha3BvaW50czogKFxyXG4gIHhzOiAwLFxyXG4gIHNtOiA1NzZweCxcclxuICBtZDogNzY4cHgsXHJcbiAgbGc6IDk5MnB4LFxyXG4gIHhsOiAxMjAwcHhcclxuKSAhZGVmYXVsdDtcclxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XHJcblxyXG5cclxuLy8gR3JpZCBjb250YWluZXJzXHJcbi8vXHJcbi8vIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXHJcblxyXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcclxuICBzbTogNTQwcHgsXHJcbiAgbWQ6IDcyMHB4LFxyXG4gIGxnOiA5NjBweCxcclxuICB4bDogMTE0MHB4XHJcbikgIWRlZmF1bHQ7XHJcbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XHJcblxyXG5cclxuLy8gR3JpZCBjb2x1bW5zXHJcbi8vXHJcbi8vIFNldCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgYW5kIHNwZWNpZnkgdGhlIHdpZHRoIG9mIHRoZSBndXR0ZXJzLlxyXG5cclxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcclxuJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2U6ICAgICAzMHB4ICFkZWZhdWx0O1xyXG4kZ3JpZC1ndXR0ZXItd2lkdGhzOiAoXHJcbiAgeHM6ICRncmlkLWd1dHRlci13aWR0aC1iYXNlLFxyXG4gIHNtOiAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZSxcclxuICBtZDogJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2UsXHJcbiAgbGc6ICRncmlkLWd1dHRlci13aWR0aC1iYXNlLFxyXG4gIHhsOiAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZVxyXG4pICFkZWZhdWx0O1xyXG5cclxuLy8gVHlwb2dyYXBoeVxyXG4vL1xyXG4vLyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cclxuXHJcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xyXG4kZm9udC1mYW1pbHktc2VyaWY6ICAgICAgR2VvcmdpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgVGltZXMsIHNlcmlmICFkZWZhdWx0O1xyXG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xyXG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XHJcblxyXG4vLyBQaXhlbCB2YWx1ZSB1c2VkIHRvIHJlc3BvbnNpdmVseSBzY2FsZSBhbGwgdHlwb2dyYXBoeS4gQXBwbGllZCB0byB0aGUgYDxodG1sPmAgZWxlbWVudC5cclxuJGZvbnQtc2l6ZS1yb290OiAxNnB4ICFkZWZhdWx0O1xyXG5cclxuJGZvbnQtc2l6ZS1iYXNlOiAxcmVtICFkZWZhdWx0O1xyXG4kZm9udC1zaXplLWxnOiAgIDEuMjVyZW0gIWRlZmF1bHQ7XHJcbiRmb250LXNpemUtc206ICAgLjg3NXJlbSAhZGVmYXVsdDtcclxuJGZvbnQtc2l6ZS14czogICAuNzVyZW0gIWRlZmF1bHQ7XHJcblxyXG4kbGluZS1oZWlnaHQtYmFzZTogMS41ICFkZWZhdWx0O1xyXG5cclxuJGZvbnQtc2l6ZS1oMTogMi41cmVtICFkZWZhdWx0O1xyXG4kZm9udC1zaXplLWgyOiAycmVtICFkZWZhdWx0O1xyXG4kZm9udC1zaXplLWgzOiAxLjc1cmVtICFkZWZhdWx0O1xyXG4kZm9udC1zaXplLWg0OiAxLjVyZW0gIWRlZmF1bHQ7XHJcbiRmb250LXNpemUtaDU6IDEuMjVyZW0gIWRlZmF1bHQ7XHJcbiRmb250LXNpemUtaDY6IDFyZW0gIWRlZmF1bHQ7XHJcblxyXG4kZGlzcGxheTEtc2l6ZTogNnJlbSAhZGVmYXVsdDtcclxuJGRpc3BsYXkyLXNpemU6IDUuNXJlbSAhZGVmYXVsdDtcclxuJGRpc3BsYXkzLXNpemU6IDQuNXJlbSAhZGVmYXVsdDtcclxuJGRpc3BsYXk0LXNpemU6IDMuNXJlbSAhZGVmYXVsdDtcclxuXHJcbiRkaXNwbGF5MS13ZWlnaHQ6IDMwMCAhZGVmYXVsdDtcclxuJGRpc3BsYXkyLXdlaWdodDogMzAwICFkZWZhdWx0O1xyXG4kZGlzcGxheTMtd2VpZ2h0OiAzMDAgIWRlZmF1bHQ7XHJcbiRkaXNwbGF5NC13ZWlnaHQ6IDMwMCAhZGVmYXVsdDtcclxuXHJcbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAoJHNwYWNlciAvIDIpICFkZWZhdWx0O1xyXG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgaW5oZXJpdCAhZGVmYXVsdDtcclxuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgIDUwMCAhZGVmYXVsdDtcclxuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgIDEuMSAhZGVmYXVsdDtcclxuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XHJcblxyXG4kbGVhZC1mb250LXNpemU6ICAgMS4yNXJlbSAhZGVmYXVsdDtcclxuJGxlYWQtZm9udC13ZWlnaHQ6IDMwMCAhZGVmYXVsdDtcclxuXHJcbiRzbWFsbC1mb250LXNpemU6IDgwJSAhZGVmYXVsdDtcclxuXHJcbiR0ZXh0LW11dGVkOiAkZ3JheS1saWdodCAhZGVmYXVsdDtcclxuXHJcbiRhYmJyLWJvcmRlci1jb2xvcjogJGdyYXktbGlnaHQgIWRlZmF1bHQ7XHJcblxyXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSAhZGVmYXVsdDtcclxuJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yOiAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xyXG4kYmxvY2txdW90ZS1ib3JkZXItd2lkdGg6IC4yNXJlbSAhZGVmYXVsdDtcclxuXHJcbiRoci1ib3JkZXItY29sb3I6IHJnYmEoMCwwLDAsLjEpICFkZWZhdWx0O1xyXG4kaHItYm9yZGVyLXdpZHRoOiAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xyXG5cclxuJG1hcmstcGFkZGluZzogLjJlbSAhZGVmYXVsdDtcclxuXHJcbiRkdC1mb250LXdlaWdodDogYm9sZCAhZGVmYXVsdDtcclxuXHJcbiRrYmQtYm94LXNoYWRvdzogICAgICAgICBpbnNldCAwIC0uMXJlbSAwIHJnYmEoMCwwLDAsLjI1KSAhZGVmYXVsdDtcclxuJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ6IGJvbGQgIWRlZmF1bHQ7XHJcblxyXG4kbGlzdC1pbmxpbmUtcGFkZGluZzogNXB4ICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vIENvbXBvbmVudHNcclxuLy9cclxuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxyXG5cclxuJGxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICg0IC8gMykgIWRlZmF1bHQ7XHJcbiRsaW5lLWhlaWdodC1zbTogICAgICAgICAxLjUgIWRlZmF1bHQ7XHJcblxyXG4kYm9yZGVyLXJhZGl1czogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xyXG4kYm9yZGVyLXJhZGl1cy1sZzogICAgICAgLjNyZW0gIWRlZmF1bHQ7XHJcbiRib3JkZXItcmFkaXVzLXNtOiAgICAgICAuMnJlbSAhZGVmYXVsdDtcclxuXHJcbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xyXG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XHJcblxyXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgLjNlbSAhZGVmYXVsdDtcclxuJGNhcmV0LXdpZHRoLWxnOiAgICAgICAgICRjYXJldC13aWR0aCAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBUYWJsZXNcclxuLy9cclxuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxyXG5cclxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XHJcbiR0YWJsZS1zbS1jZWxsLXBhZGRpbmc6ICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XHJcblxyXG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xyXG4kdGFibGUtYmctYWNjZW50OiAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjA1KSAhZGVmYXVsdDtcclxuJHRhYmxlLWJnLWhvdmVyOiAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4wNzUpICFkZWZhdWx0O1xyXG4kdGFibGUtYmctYWN0aXZlOiAgICAgICAgICAgICAgICR0YWJsZS1iZy1ob3ZlciAhZGVmYXVsdDtcclxuXHJcbiR0YWJsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcclxuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vIEJ1dHRvbnNcclxuLy9cclxuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQgYW5kIGJvcmRlciBjb2xvci5cclxuXHJcbiRidG4tcGFkZGluZy14OiAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XHJcbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xyXG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xyXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBub3JtYWwgIWRlZmF1bHQ7XHJcbiRidG4tYm94LXNoYWRvdzogICAgICAgICAgICAgICAgIGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMTUpLCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSAhZGVmYXVsdDtcclxuJGJ0bi1hY3RpdmUtYm94LXNoYWRvdzogICAgICAgICAgaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwwLDAsLjEyNSkgIWRlZmF1bHQ7XHJcblxyXG4kYnRuLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kYnRuLXByaW1hcnktYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcclxuJGJ0bi1wcmltYXJ5LWJvcmRlcjogICAgICAgICAgICAgJGJ0bi1wcmltYXJ5LWJnICFkZWZhdWx0O1xyXG5cclxuJGJ0bi1zZWNvbmRhcnktY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcclxuJGJ0bi1zZWNvbmRhcnktYmc6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJGJ0bi1zZWNvbmRhcnktYm9yZGVyOiAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcclxuXHJcbiRidG4taW5mby1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRidG4taW5mby1iZzogICAgICAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xyXG4kYnRuLWluZm8tYm9yZGVyOiAgICAgICAgICAgICAgICAkYnRuLWluZm8tYmcgIWRlZmF1bHQ7XHJcblxyXG4kYnRuLXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kYnRuLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcclxuJGJ0bi1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgICAgJGJ0bi1zdWNjZXNzLWJnICFkZWZhdWx0O1xyXG5cclxuJGJ0bi13YXJuaW5nLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJGJ0bi13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XHJcbiRidG4td2FybmluZy1ib3JkZXI6ICAgICAgICAgICAgICRidG4td2FybmluZy1iZyAhZGVmYXVsdDtcclxuXHJcbiRidG4tZGFuZ2VyLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRidG4tZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XHJcbiRidG4tZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICAgICRidG4tZGFuZ2VyLWJnICFkZWZhdWx0O1xyXG5cclxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XHJcblxyXG4kYnRuLXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcclxuJGJ0bi1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xyXG5cclxuJGJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xyXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XHJcblxyXG4kYnRuLWJsb2NrLXNwYWNpbmcteTogICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcclxuJGJ0bi10b29sYmFyLW1hcmdpbjogICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XHJcblxyXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXHJcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xyXG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcclxuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gRm9ybXNcclxuXHJcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcclxuJGlucHV0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XHJcbiRpbnB1dC1saW5lLWhlaWdodDogICAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XHJcblxyXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kaW5wdXQtYmctZGlzYWJsZWQ6ICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xyXG5cclxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XHJcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjE1KSAhZGVmYXVsdDtcclxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDsgLy8gRm9yIGZvcm0gY29udHJvbHMgYW5kIGJ1dHRvbnNcclxuJGlucHV0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSkgIWRlZmF1bHQ7XHJcblxyXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcclxuJGlucHV0LWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XHJcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xyXG5cclxuJGlucHV0LWJnLWZvY3VzOiAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xyXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAgICAgICAgICAgICAjNjZhZmU5ICFkZWZhdWx0O1xyXG4kaW5wdXQtYm94LXNoYWRvdy1mb2N1czogICAgICAgICAkaW5wdXQtYm94LXNoYWRvdywgMCAwIDhweCByZ2JhKDEwMiwxNzUsMjMzLC42KSAhZGVmYXVsdDtcclxuJGlucHV0LWNvbG9yLWZvY3VzOiAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xyXG5cclxuJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOiAgICAgICAgIzk5OSAhZGVmYXVsdDtcclxuXHJcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xyXG4kaW5wdXQtcGFkZGluZy15LXNtOiAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XHJcblxyXG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XHJcbiRpbnB1dC1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcclxuXHJcbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICgoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UpICsgKCRpbnB1dC1wYWRkaW5nLXkgKiAyKSkgIWRlZmF1bHQ7XHJcbiRpbnB1dC1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICgoJGZvbnQtc2l6ZS1sZyAqICRsaW5lLWhlaWdodC1sZykgKyAoJGlucHV0LXBhZGRpbmcteS1sZyAqIDIpKSAhZGVmYXVsdDtcclxuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgKCgkZm9udC1zaXplLXNtICogJGxpbmUtaGVpZ2h0LXNtKSArICgkaW5wdXQtcGFkZGluZy15LXNtICogMikpICFkZWZhdWx0O1xyXG5cclxuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogICAgICAgJHNwYWNlci15ICFkZWZhdWx0O1xyXG5cclxuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcclxuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcclxuXHJcbiRjdXJzb3ItZGlzYWJsZWQ6ICAgICAgICAgICAgICAgIG5vdC1hbGxvd2VkICFkZWZhdWx0O1xyXG5cclxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAxLjVyZW0gIWRlZmF1bHQ7XHJcbiRjdXN0b20tY29udHJvbC1zcGFjZXIteDogMXJlbSAhZGVmYXVsdDtcclxuJGN1c3RvbS1jb250cm9sLXNwYWNlci15OiAuMjVyZW0gIWRlZmF1bHQ7XHJcblxyXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU6ICAgICAgIDFyZW0gIWRlZmF1bHQ7XHJcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc6ICAgICAgICAgI2RkZCAhZGVmYXVsdDtcclxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplOiAgICA1MCUgNTAlICFkZWZhdWx0O1xyXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3c6IGluc2V0IDAgLjI1cmVtIC4yNXJlbSByZ2JhKDAsMCwwLC4xKSAhZGVmYXVsdDtcclxuXHJcbiRjdXN0b20tY29udHJvbC1kaXNhYmxlZC1jdXJzb3I6ICAgICAgICAgICAgICRjdXJzb3ItZGlzYWJsZWQgIWRlZmF1bHQ7XHJcbiRjdXN0b20tY29udHJvbC1kaXNhYmxlZC1pbmRpY2F0b3ItYmc6ICAgICAgICNlZWUgIWRlZmF1bHQ7XHJcbiRjdXN0b20tY29udHJvbC1kaXNhYmxlZC1kZXNjcmlwdGlvbi1jb2xvcjogICM3Njc2NzYgIWRlZmF1bHQ7XHJcblxyXG4kY3VzdG9tLWNvbnRyb2wtY2hlY2tlZC1pbmRpY2F0b3ItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJGN1c3RvbS1jb250cm9sLWNoZWNrZWQtaW5kaWNhdG9yLWJnOiAgICAgICAgICMwMDc0ZDkgIWRlZmF1bHQ7XHJcbiRjdXN0b20tY29udHJvbC1jaGVja2VkLWluZGljYXRvci1ib3gtc2hhZG93OiBub25lICFkZWZhdWx0O1xyXG5cclxuJGN1c3RvbS1jb250cm9sLWZvY3VzLWluZGljYXRvci1ib3gtc2hhZG93OiAwIDAgMCAuMDc1cmVtICNmZmYsIDAgMCAwIC4ycmVtICMwMDc0ZDkgIWRlZmF1bHQ7XHJcblxyXG4kY3VzdG9tLWNvbnRyb2wtYWN0aXZlLWluZGljYXRvci1jb2xvcjogICAgICAjZmZmICFkZWZhdWx0O1xyXG4kY3VzdG9tLWNvbnRyb2wtYWN0aXZlLWluZGljYXRvci1iZzogICAgICAgICAjODRjNmZmICFkZWZhdWx0O1xyXG4kY3VzdG9tLWNvbnRyb2wtYWN0aXZlLWluZGljYXRvci1ib3gtc2hhZG93OiBub25lICFkZWZhdWx0O1xyXG5cclxuJGN1c3RvbS1jaGVja2JveC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xyXG4kY3VzdG9tLWNoZWNrYm94LWNoZWNrZWQtaWNvbjogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4JyUzRSUzQ3BhdGggZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtY2hlY2tlZC1pbmRpY2F0b3ItY29sb3J9JyBkPSdNNi41NjQuNzVsLTMuNTkgMy42MTItMS41MzgtMS41NUwwIDQuMjYgMi45NzQgNy4yNSA4IDIuMTkzeicvJTNFJTNDL3N2ZyUzRVwiKSAhZGVmYXVsdDtcclxuXHJcbiRjdXN0b20tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1iZzogIzAwNzRkOSAhZGVmYXVsdDtcclxuJGN1c3RvbS1jaGVja2JveC1pbmRldGVybWluYXRlLWluZGljYXRvci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWNoZWNrZWQtaW5kaWNhdG9yLWNvbG9yICFkZWZhdWx0O1xyXG4kY3VzdG9tLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtaWNvbjogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNCA0JyUzRSUzQ3BhdGggc3Ryb2tlPScjeyRjdXN0b20tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1pbmRpY2F0b3ItY29sb3J9JyBkPSdNMCAyaDQnLyUzRSUzQy9zdmclM0VcIikgIWRlZmF1bHQ7XHJcbiRjdXN0b20tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93OiBub25lICFkZWZhdWx0O1xyXG5cclxuJGN1c3RvbS1yYWRpby1yYWRpdXM6IDUwJSAhZGVmYXVsdDtcclxuJGN1c3RvbS1yYWRpby1jaGVja2VkLWljb246IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4JyUzRSUzQ2NpcmNsZSByPSczJyBmaWxsPScjeyRjdXN0b20tY29udHJvbC1jaGVja2VkLWluZGljYXRvci1jb2xvcn0nLyUzRSUzQy9zdmclM0VcIikgIWRlZmF1bHQ7XHJcblxyXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAgIWRlZmF1bHQ7XHJcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTogICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcclxuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAxcmVtICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIHRvIGFjY291bnQgZm9yIHRoZSBwcmVzZW5jZSBvZiB0aGUgYmFja2dyb3VuZC1pbWFnZSBiYXNlZCBpbmRpY2F0b3JcclxuJGN1c3RvbS1zZWxlY3QtY29sb3I6ICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcclxuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG4kY3VzdG9tLXNlbGVjdC1iZzogICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZzogICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xyXG4kY3VzdG9tLXNlbGVjdC1iZy1zaXplOiAgICAgICA4cHggMTBweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xyXG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3I6ICMzMzMgIWRlZmF1bHQ7XHJcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvcjogICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDQgNSclM0UlM0NwYXRoIGZpbGw9JyN7JGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yfScgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvJTNFJTNDL3N2ZyUzRVwiKSAhZGVmYXVsdDtcclxuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXdpZHRoOiAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XHJcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjogICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XHJcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xyXG5cclxuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yOiAjNTFhN2U4ICFkZWZhdWx0O1xyXG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgIGluc2V0IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIC4wNzUpLCAwIDAgNXB4IHJnYmEoODEsIDE2NywgMjMyLCAuNSkgIWRlZmF1bHQ7XHJcblxyXG4kY3VzdG9tLXNlbGVjdC1zbS1wYWRkaW5nLXk6IC4ycmVtICFkZWZhdWx0O1xyXG4kY3VzdG9tLXNlbGVjdC1zbS1mb250LXNpemU6IDc1JSAhZGVmYXVsdDtcclxuXHJcbiRjdXN0b20tZmlsZS1oZWlnaHQ6ICAgICAgICAgICAyLjVyZW0gIWRlZmF1bHQ7XHJcbiRjdXN0b20tZmlsZS13aWR0aDogICAgICAgICAgICAxNHJlbSAhZGVmYXVsdDtcclxuJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c6IDAgMCAwIC4wNzVyZW0gI2ZmZiwgMCAwIDAgLjJyZW0gIzAwNzRkOSAhZGVmYXVsdDtcclxuXHJcbiRjdXN0b20tZmlsZS1wYWRkaW5nLXg6ICAgICAuNXJlbSAhZGVmYXVsdDtcclxuJGN1c3RvbS1maWxlLXBhZGRpbmcteTogICAgIDFyZW0gIWRlZmF1bHQ7XHJcbiRjdXN0b20tZmlsZS1saW5lLWhlaWdodDogICAxLjUgIWRlZmF1bHQ7XHJcbiRjdXN0b20tZmlsZS1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xyXG4kY3VzdG9tLWZpbGUtYmc6ICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aDogICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XHJcbiRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I6ICAjZGRkICFkZWZhdWx0O1xyXG4kY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XHJcbiRjdXN0b20tZmlsZS1ib3gtc2hhZG93OiAgICBpbnNldCAwIC4ycmVtIC40cmVtIHJnYmEoMCwwLDAsLjA1KSAhZGVmYXVsdDtcclxuJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjogICRjdXN0b20tZmlsZS1jb2xvciAhZGVmYXVsdDtcclxuJGN1c3RvbS1maWxlLWJ1dHRvbi1iZzogICAgICNlZWUgIWRlZmF1bHQ7XHJcbiRjdXN0b20tZmlsZS10ZXh0OiAoXHJcbiAgcGxhY2Vob2xkZXI6IChcclxuICAgIGVuOiBcIkNob29zZSBmaWxlLi4uXCJcclxuICApLFxyXG4gIGJ1dHRvbi1sYWJlbDogKFxyXG4gICAgZW46IFwiQnJvd3NlXCJcclxuICApXHJcbikgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gRm9ybSB2YWxpZGF0aW9uIGljb25zXHJcbiRmb3JtLWljb24tc3VjY2Vzcy1jb2xvcjogJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XHJcbiRmb3JtLWljb24tc3VjY2VzczogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4JyUzRSUzQ3BhdGggZmlsbD0nI3skZm9ybS1pY29uLXN1Y2Nlc3MtY29sb3J9JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8lM0UlM0Mvc3ZnJTNFXCIpICFkZWZhdWx0O1xyXG5cclxuJGZvcm0taWNvbi13YXJuaW5nLWNvbG9yOiAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcclxuJGZvcm0taWNvbi13YXJuaW5nOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNFJTNDcGF0aCBmaWxsPScjeyRmb3JtLWljb24td2FybmluZy1jb2xvcn0nIGQ9J000LjQgNS4zMjRoLS44di0yLjQ2aC44em0wIDEuNDJoLS44VjUuODloLjh6TTMuNzYuNjNMLjA0IDcuMDc1Yy0uMTE1LjIuMDE2LjQyNS4yNi40MjZoNy4zOTdjLjI0MiAwIC4zNzItLjIyNi4yNTgtLjQyNkM2LjcyNiA0LjkyNCA1LjQ3IDIuNzkgNC4yNTMuNjNjLS4xMTMtLjE3NC0uMzktLjE3NC0uNDk0IDB6Jy8lM0UlM0Mvc3ZnJTNFXCIpICFkZWZhdWx0O1xyXG5cclxuJGZvcm0taWNvbi1kYW5nZXItY29sb3I6ICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XHJcbiRmb3JtLWljb24tZGFuZ2VyOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGZvcm0taWNvbi1kYW5nZXItY29sb3J9JyB2aWV3Qm94PSctMiAtMiA3IDcnJTNFJTNDcGF0aCBzdHJva2U9JyUyM2Q5NTM0ZicgZD0nTTAgMGwzIDNtMC0zTDAgMycvJTNFJTNDY2lyY2xlIHI9Jy41Jy8lM0UlM0NjaXJjbGUgY3g9JzMnIHI9Jy41Jy8lM0UlM0NjaXJjbGUgY3k9JzMnIHI9Jy41Jy8lM0UlM0NjaXJjbGUgY3g9JzMnIGN5PSczJyByPScuNScvJTNFJTNDL3N2ZyUzRVwiKSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBEcm9wZG93bnNcclxuLy9cclxuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxyXG5cclxuJGRyb3Bkb3duLW1pbi13aWR0aDogICAgICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XHJcbiRkcm9wZG93bi1wYWRkaW5nLXk6ICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xyXG4kZHJvcGRvd24tbWFyZ2luLXRvcDogICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xyXG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICByZ2JhKDAsMCwwLC4xNSkgIWRlZmF1bHQ7XHJcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XHJcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XHJcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKDAsMCwwLC4xNzUpICFkZWZhdWx0O1xyXG5cclxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcclxuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRncmF5LWRhcmssIDUlKSAhZGVmYXVsdDtcclxuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcclxuXHJcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xyXG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcclxuXHJcbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG5cclxuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAgICAgICAgMS41cmVtICFkZWZhdWx0O1xyXG5cclxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxyXG4vL1xyXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcclxuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxyXG5cclxuJHppbmRleC1kcm9wZG93bi1iYWNrZHJvcDogIDk5MCAhZGVmYXVsdDtcclxuJHppbmRleC1uYXZiYXI6ICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcclxuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgMTAwMCAhZGVmYXVsdDtcclxuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcclxuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcclxuJHppbmRleC1uYXZiYXItZml4ZWQ6ICAgICAgMTAzMCAhZGVmYXVsdDtcclxuJHppbmRleC1uYXZiYXItc3RpY2t5OiAgICAgMTAzMCAhZGVmYXVsdDtcclxuJHppbmRleC1tb2RhbC1iZzogICAgICAgICAgMTA0MCAhZGVmYXVsdDtcclxuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBOYXZiYXJcclxuXHJcbiRuYXZiYXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xyXG4kbmF2YmFyLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xyXG4kbmF2YmFyLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAoJHNwYWNlciAvIDIpICFkZWZhdWx0O1xyXG5cclxuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xyXG5cclxuJG5hdmJhci1kaXZpZGVyLXBhZGRpbmcteTogICAgICAgICAgLjQyNXJlbSAhZGVmYXVsdDtcclxuXHJcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XHJcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcclxuJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XHJcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICAkYnRuLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XHJcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XHJcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcclxuXHJcbiRuYXZiYXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoMjU1LDI1NSwyNTUsLjUpICFkZWZhdWx0O1xyXG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICByZ2JhKDI1NSwyNTUsMjU1LC43NSkgIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgIHJnYmEoMjU1LDI1NSwyNTUsMSkgIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoMjU1LDI1NSwyNTUsLjI1KSAhZGVmYXVsdDtcclxuJG5hdmJhci1kYXJrLXRvZ2dsZXItYmc6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHZpZXdCb3g9JzAgMCAzMiAzMicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggc3Ryb2tlPScjeyRuYXZiYXItZGFyay1jb2xvcn0nIHN0cm9rZS13aWR0aD0nMicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIGQ9J000IDhoMjRNNCAxNmgyNE00IDI0aDI0Jy8lM0UlM0Mvc3ZnJTNFXCIpICFkZWZhdWx0O1xyXG4kbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXI6ICAgICAgICByZ2JhKDI1NSwyNTUsMjU1LC4xKSAhZGVmYXVsdDtcclxuXHJcbiRuYXZiYXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjUpICFkZWZhdWx0O1xyXG4kbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICByZ2JhKDAsMCwwLC43KSAhZGVmYXVsdDtcclxuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSgwLDAsMCwuOSkgIWRlZmF1bHQ7XHJcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgIHJnYmEoMCwwLDAsLjMpICFkZWZhdWx0O1xyXG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYmc6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHZpZXdCb3g9JzAgMCAzMiAzMicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtY29sb3J9JyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA4aDI0TTQgMTZoMjRNNCAyNGgyNCcvJTNFJTNDL3N2ZyUzRVwiKSAhZGVmYXVsdDtcclxuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlcjogICAgICAgcmdiYSgwLDAsMCwuMSkgIWRlZmF1bHQ7XHJcblxyXG4vLyBOYXZzXHJcblxyXG4kbmF2LWl0ZW0tbWFyZ2luOiAgICAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xyXG4kbmF2LWl0ZW0taW5saW5lLXNwYWNlcjogICAgICAgIDFyZW0gIWRlZmF1bHQ7XHJcbiRuYXYtbGluay1wYWRkaW5nOiAgICAgICAgICAgICAgLjVlbSAxZW0gIWRlZmF1bHQ7XHJcbiRuYXYtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcclxuJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yOiAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcclxuJG5hdi1kaXNhYmxlZC1saW5rLWhvdmVyLWNvbG9yOiAkZ3JheS1saWdodCAhZGVmYXVsdDtcclxuJG5hdi1kaXNhYmxlZC1saW5rLWhvdmVyLWJnOiAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcclxuXHJcbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xyXG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcclxuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xyXG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcclxuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xyXG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XHJcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAjZGRkICFkZWZhdWx0O1xyXG4kbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgICAgI2RkZCAhZGVmYXVsdDtcclxuJG5hdi10YWJzLWp1c3RpZmllZC1hY3RpdmUtbGluay1ib3JkZXItY29sb3I6ICRib2R5LWJnICFkZWZhdWx0O1xyXG5cclxuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XHJcbiRuYXYtcGlsbHMtYWN0aXZlLWxpbmstY29sb3I6ICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xyXG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWJnOiAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBQYWdpbmF0aW9uXHJcblxyXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgICAgLjI3NXJlbSAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZzogICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xyXG5cclxuXHJcbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xyXG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xyXG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xyXG5cclxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjogICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XHJcblxyXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XHJcblxyXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyOiAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBKdW1ib3Ryb25cclxuXHJcbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XHJcbiRqdW1ib3Ryb24tYmc6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gRm9ybSBzdGF0ZXMgYW5kIGFsZXJ0c1xyXG4vL1xyXG4vLyBEZWZpbmUgY29sb3JzIGZvciBmb3JtIGZlZWRiYWNrIHN0YXRlcyBhbmQsIGJ5IGRlZmF1bHQsIGFsZXJ0cy5cclxuXHJcbiRzdGF0ZS1zdWNjZXNzLXRleHQ6ICAgICAgICAgICAgICMzYzc2M2QgIWRlZmF1bHQ7XHJcbiRzdGF0ZS1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICNkZmYwZDggIWRlZmF1bHQ7XHJcbiRzdGF0ZS1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgIGRhcmtlbigkc3RhdGUtc3VjY2Vzcy1iZywgNSUpICFkZWZhdWx0O1xyXG5cclxuJHN0YXRlLWluZm8tdGV4dDogICAgICAgICAgICAgICAgIzMxNzA4ZiAhZGVmYXVsdDtcclxuJHN0YXRlLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgI2Q5ZWRmNyAhZGVmYXVsdDtcclxuJHN0YXRlLWluZm8tYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKCRzdGF0ZS1pbmZvLWJnLCA3JSkgIWRlZmF1bHQ7XHJcblxyXG4kc3RhdGUtd2FybmluZy10ZXh0OiAgICAgICAgICAgICAjOGE2ZDNiICFkZWZhdWx0O1xyXG4kc3RhdGUtd2FybmluZy1iZzogICAgICAgICAgICAgICAjZmNmOGUzICFkZWZhdWx0O1xyXG4kbWFyay1iZzogICAgICAgICAgICAgICAgICAgICAgICAkc3RhdGUtd2FybmluZy1iZyAhZGVmYXVsdDtcclxuJHN0YXRlLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgZGFya2VuKCRzdGF0ZS13YXJuaW5nLWJnLCA1JSkgIWRlZmF1bHQ7XHJcblxyXG4kc3RhdGUtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAgICAjYTk0NDQyICFkZWZhdWx0O1xyXG4kc3RhdGUtZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAjZjJkZWRlICFkZWZhdWx0O1xyXG4kc3RhdGUtZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICBkYXJrZW4oJHN0YXRlLWRhbmdlci1iZywgNSUpICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vIENhcmRzXHJcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XHJcbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcclxuJGNhcmQtYm9yZGVyLXdpZHRoOiAgICAgICAgMXB4ICFkZWZhdWx0O1xyXG4kY2FyZC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcclxuJGNhcmQtYm9yZGVyLWNvbG9yOiAgICAgICAgcmdiYSgwLDAsMCwuMTI1KSAhZGVmYXVsdDtcclxuJGNhcmQtYm9yZGVyLXJhZGl1cy1pbm5lcjogY2FsYygjeyRjYXJkLWJvcmRlci1yYWRpdXN9IC0gI3skY2FyZC1ib3JkZXItd2lkdGh9KSAhZGVmYXVsdDtcclxuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcclxuJGNhcmQtYmc6ICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuXHJcbiRjYXJkLWxpbmstaG92ZXItY29sb3I6ICAgICNmZmYgIWRlZmF1bHQ7XHJcblxyXG4kY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAxLjI1cmVtICFkZWZhdWx0O1xyXG5cclxuJGNhcmQtZGVjay1tYXJnaW46ICAgICAgICAgLjYyNXJlbSAhZGVmYXVsdDtcclxuXHJcbiRjYXJkLWNvbHVtbnMtc20tdXAtY29sdW1uLWdhcDogMS4yNXJlbSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBUb29sdGlwc1xyXG5cclxuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XHJcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XHJcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xyXG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAzcHggIWRlZmF1bHQ7XHJcbiR0b29sdGlwLXBhZGRpbmcteDogICAgICAgICAgIDhweCAhZGVmYXVsdDtcclxuJHRvb2x0aXAtbWFyZ2luOiAgICAgICAgICAgICAgM3B4ICFkZWZhdWx0O1xyXG5cclxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xyXG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBQb3BvdmVyc1xyXG5cclxuJHBvcG92ZXItaW5uZXItcGFkZGluZzogICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XHJcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcclxuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xyXG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjIpICFkZWZhdWx0O1xyXG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgNXB4IDEwcHggcmdiYSgwLDAsMCwuMikgIWRlZmF1bHQ7XHJcblxyXG4kcG9wb3Zlci10aXRsZS1iZzogICAgICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xyXG4kcG9wb3Zlci10aXRsZS1wYWRkaW5nLXg6ICAgICAgICAgICAgIDE0cHggIWRlZmF1bHQ7XHJcbiRwb3BvdmVyLXRpdGxlLXBhZGRpbmcteTogICAgICAgICAgICAgOHB4ICFkZWZhdWx0O1xyXG5cclxuJHBvcG92ZXItY29udGVudC1wYWRkaW5nLXg6ICAgICAgICAgICAxNHB4ICFkZWZhdWx0O1xyXG4kcG9wb3Zlci1jb250ZW50LXBhZGRpbmcteTogICAgICAgICAgIDlweCAhZGVmYXVsdDtcclxuXHJcbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcclxuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcclxuXHJcbiRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoOiAgICAgICAgICAgKCRwb3BvdmVyLWFycm93LXdpZHRoICsgMXB4KSAhZGVmYXVsdDtcclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgICBmYWRlLWluKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgLjA1KSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBUYWdzXHJcblxyXG4kdGFnLWRlZmF1bHQtYmc6ICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XHJcbiR0YWctcHJpbWFyeS1iZzogICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcclxuJHRhZy1zdWNjZXNzLWJnOiAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xyXG4kdGFnLWluZm8tYmc6ICAgICAgICAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XHJcbiR0YWctd2FybmluZy1iZzogICAgICAgICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcclxuJHRhZy1kYW5nZXItYmc6ICAgICAgICAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XHJcblxyXG4kdGFnLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJHRhZy1saW5rLWhvdmVyLWNvbG9yOiAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiR0YWctZm9udC1zaXplOiAgICAgICAgICAgICA3NSUgIWRlZmF1bHQ7XHJcbiR0YWctZm9udC13ZWlnaHQ6ICAgICAgICAgICBib2xkICFkZWZhdWx0O1xyXG4kdGFnLXBhZGRpbmcteDogICAgICAgICAgICAgLjRlbSAhZGVmYXVsdDtcclxuJHRhZy1wYWRkaW5nLXk6ICAgICAgICAgICAgIC4yNWVtICFkZWZhdWx0O1xyXG5cclxuJHRhZy1waWxsLXBhZGRpbmcteDogICAgICAgIC42ZW0gIWRlZmF1bHQ7XHJcbi8vIFVzZSBhIGhpZ2hlciB0aGFuIG5vcm1hbCB2YWx1ZSB0byBlbnN1cmUgY29tcGxldGVseSByb3VuZGVkIGVkZ2VzIHdoZW5cclxuLy8gY3VzdG9taXppbmcgcGFkZGluZyBvciBmb250LXNpemUgb24gbGFiZWxzLlxyXG4kdGFnLXBpbGwtYm9yZGVyLXJhZGl1czogICAgMTByZW0gIWRlZmF1bHQ7XHJcblxyXG4vLyBNb2RhbHNcclxuXHJcbi8vIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxyXG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAxNXB4ICFkZWZhdWx0O1xyXG5cclxuJG1vZGFsLWRpYWxvZy1tYXJnaW46ICAgICAgICAgMTBweCAhZGVmYXVsdDtcclxuJG1vZGFsLWRpYWxvZy1zbS11cC1tYXJnaW4teTogMzBweCAhZGVmYXVsdDtcclxuXHJcbiRtb2RhbC10aXRsZS1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XHJcbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xyXG5cclxuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgcmdiYSgwLDAsMCwuMikgIWRlZmF1bHQ7XHJcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XHJcbiRtb2RhbC1jb250ZW50LXhzLWJveC1zaGFkb3c6ICAgIDAgM3B4IDlweCByZ2JhKDAsMCwwLC41KSAhZGVmYXVsdDtcclxuJG1vZGFsLWNvbnRlbnQtc20tdXAtYm94LXNoYWRvdzogMCA1cHggMTVweCByZ2JhKDAsMCwwLC41KSAhZGVmYXVsdDtcclxuXHJcbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XHJcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgIC41ICFkZWZhdWx0O1xyXG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAjZTVlNWU1ICFkZWZhdWx0O1xyXG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcclxuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xyXG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcclxuXHJcbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgIDkwMHB4ICFkZWZhdWx0O1xyXG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICA2MDBweCAhZGVmYXVsdDtcclxuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gQWxlcnRzXHJcbi8vXHJcbi8vIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxyXG5cclxuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcclxuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xyXG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcclxuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgYm9sZCAhZGVmYXVsdDtcclxuJGFsZXJ0LWJvcmRlci13aWR0aDogICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcclxuXHJcbiRhbGVydC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLWJnICFkZWZhdWx0O1xyXG4kYWxlcnQtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0ICFkZWZhdWx0O1xyXG4kYWxlcnQtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XHJcblxyXG4kYWxlcnQtaW5mby1iZzogICAgICAgICAgICAgICAkc3RhdGUtaW5mby1iZyAhZGVmYXVsdDtcclxuJGFsZXJ0LWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcclxuJGFsZXJ0LWluZm8tYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWluZm8tYm9yZGVyICFkZWZhdWx0O1xyXG5cclxuJGFsZXJ0LXdhcm5pbmctYmc6ICAgICAgICAgICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XHJcbiRhbGVydC13YXJuaW5nLXRleHQ6ICAgICAgICAgICRzdGF0ZS13YXJuaW5nLXRleHQgIWRlZmF1bHQ7XHJcbiRhbGVydC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlciAhZGVmYXVsdDtcclxuXHJcbiRhbGVydC1kYW5nZXItYmc6ICAgICAgICAgICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XHJcbiRhbGVydC1kYW5nZXItdGV4dDogICAgICAgICAgICRzdGF0ZS1kYW5nZXItdGV4dCAhZGVmYXVsdDtcclxuJGFsZXJ0LWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gUHJvZ3Jlc3MgYmFyc1xyXG5cclxuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgI2VlZSAhZGVmYXVsdDtcclxuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgIzAwNzRkOSAhZGVmYXVsdDtcclxuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XHJcbiRwcm9ncmVzcy1ib3gtc2hhZG93OiAgICAgICAgIGluc2V0IDAgLjFyZW0gLjFyZW0gcmdiYSgwLDAsMCwuMSkgIWRlZmF1bHQ7XHJcblxyXG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcclxuJHByb2dyZXNzLWJhci1zdWNjZXNzLWJnOiAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XHJcbiRwcm9ncmVzcy1iYXItd2FybmluZy1iZzogICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xyXG4kcHJvZ3Jlc3MtYmFyLWRhbmdlci1iZzogICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xyXG4kcHJvZ3Jlc3MtYmFyLWluZm8tYmc6ICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBMaXN0IGdyb3VwXHJcblxyXG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjogICAgICAgI2RkZCAhZGVmYXVsdDtcclxuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xyXG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xyXG5cclxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xyXG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xyXG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xyXG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyOiAgICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcclxuJGxpc3QtZ3JvdXAtYWN0aXZlLXRleHQtY29sb3I6ICBsaWdodGVuKCRsaXN0LWdyb3VwLWFjdGl2ZS1iZywgNDAlKSAhZGVmYXVsdDtcclxuXHJcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xyXG4kbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcclxuXHJcbiRsaXN0LWdyb3VwLWxpbmstY29sb3I6ICAgICAgICAgIzU1NSAhZGVmYXVsdDtcclxuJGxpc3QtZ3JvdXAtbGluay1ob3Zlci1jb2xvcjogICAkbGlzdC1ncm91cC1saW5rLWNvbG9yICFkZWZhdWx0O1xyXG4kbGlzdC1ncm91cC1saW5rLWhlYWRpbmctY29sb3I6ICMzMzMgIWRlZmF1bHQ7XHJcblxyXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcclxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcclxuJGxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nLW1hcmdpbi1ib3R0b206IDVweCAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBJbWFnZSB0aHVtYm5haWxzXHJcblxyXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XHJcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xyXG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xyXG4kdGh1bWJuYWlsLWJvcmRlci1jb2xvcjogICAgICAjZGRkICFkZWZhdWx0O1xyXG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcclxuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjA3NSkgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gRmlndXJlc1xyXG5cclxuJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZTogOTAlICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vIEJyZWFkY3J1bWJzXHJcblxyXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcclxuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgICAgICAxcmVtICFkZWZhdWx0O1xyXG4kYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc6ICAgICAgIC41cmVtICFkZWZhdWx0O1xyXG5cclxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xyXG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgICAgICAgICAgIFwiL1wiICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vIE1lZGlhIG9iamVjdHNcclxuXHJcbiRtZWRpYS1tYXJnaW4tdG9wOiAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XHJcbiRtZWRpYS1oZWFkaW5nLW1hcmdpbi1ib3R0b206ICA1cHggIWRlZmF1bHQ7XHJcbiRtZWRpYS1hbGlnbm1lbnQtcGFkZGluZy14OiAgIDEwcHggIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gQ2Fyb3VzZWxcclxuXHJcbiRjYXJvdXNlbC10ZXh0LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICAwIDFweCAycHggcmdiYSgwLDAsMCwuNikgIWRlZmF1bHQ7XHJcblxyXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcclxuJGNhcm91c2VsLWNvbnRyb2wtc20tdXAtc2l6ZTogICAgICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XHJcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgICAuNSAhZGVmYXVsdDtcclxuJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgIDIwcHggIWRlZmF1bHQ7XHJcblxyXG4kY2Fyb3VzZWwtaW5kaWNhdG9ycy13aWR0aDogICAgICAgICAgICAgICAgICAgNjAlICFkZWZhdWx0O1xyXG5cclxuJGNhcm91c2VsLWluZGljYXRvci1zaXplOiAgICAgICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XHJcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLXNpemU6ICAgICAgICAgICAgICAxMnB4ICFkZWZhdWx0O1xyXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJGNhcm91c2VsLWluZGljYXRvci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcblxyXG4kY2Fyb3VzZWwtY2FwdGlvbi13aWR0aDogICAgICAgICAgICAgICAgICAgICAgNzAlICFkZWZhdWx0O1xyXG4kY2Fyb3VzZWwtY2FwdGlvbi1zbS11cC13aWR0aDogICAgICAgICAgICAgICAgNjAlICFkZWZhdWx0O1xyXG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuXHJcbiRjYXJvdXNlbC1pY29uLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vIENsb3NlXHJcblxyXG4kY2xvc2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICBib2xkICFkZWZhdWx0O1xyXG4kY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xyXG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAwIDFweCAwICNmZmYgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gQ29kZVxyXG5cclxuJGNvZGUtZm9udC1zaXplOiAgICAgICAgICAgICAgOTAlICFkZWZhdWx0O1xyXG4kY29kZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcclxuJGNvZGUtcGFkZGluZy15OiAgICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XHJcbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICNiZDQxNDcgIWRlZmF1bHQ7XHJcbiRjb2RlLWJnOiAgICAgICAgICAgICAgICAgICAgICNmN2Y3ZjkgIWRlZmF1bHQ7XHJcblxyXG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAjMzMzICFkZWZhdWx0O1xyXG5cclxuJHByZS1iZzogICAgICAgICAgICAgICAgICAgICAgI2Y3ZjdmOSAhZGVmYXVsdDtcclxuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcclxuJHByZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcclxuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgMzQwcHggIWRlZmF1bHQ7XHJcbiIsIi8vIFRvZ2dsZXNcclxuLy9cclxuLy8gVXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGdsb2JhbCB2YXJpYWJsZXMgdG8gZW5hYmxlIGNlcnRhaW4gdGhlbWUgZmVhdHVyZXMuXHJcblxyXG5AbWl4aW4gYm94LXNoYWRvdygkc2hhZG93Li4uKSB7XHJcbiAgQGlmICRlbmFibGUtc2hhZG93cyB7XHJcbiAgICBib3gtc2hhZG93OiAkc2hhZG93O1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcclxuICBAaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XHJcbiAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcclxuICB9XHJcbn1cclxuXHJcbi8vIFV0aWxpdGllc1xyXG5AaW1wb3J0IFwibWl4aW5zL2JyZWFrcG9pbnRzXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvaG92ZXJcIjtcclxuQGltcG9ydCBcIm1peGlucy9pbWFnZVwiO1xyXG5AaW1wb3J0IFwibWl4aW5zL3RhZ1wiO1xyXG5AaW1wb3J0IFwibWl4aW5zL3Jlc2V0LWZpbHRlclwiO1xyXG5AaW1wb3J0IFwibWl4aW5zL3Jlc2l6ZVwiO1xyXG5AaW1wb3J0IFwibWl4aW5zL3NjcmVlbi1yZWFkZXJcIjtcclxuQGltcG9ydCBcIm1peGlucy9zaXplXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvdGFiLWZvY3VzXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtdGV4dFwiO1xyXG5AaW1wb3J0IFwibWl4aW5zL3RleHQtZW1waGFzaXNcIjtcclxuQGltcG9ydCBcIm1peGlucy90ZXh0LWhpZGVcIjtcclxuQGltcG9ydCBcIm1peGlucy90ZXh0LXRydW5jYXRlXCI7XHJcblxyXG4vLyAvLyBDb21wb25lbnRzXHJcbkBpbXBvcnQgXCJtaXhpbnMvYWxlcnRcIjtcclxuQGltcG9ydCBcIm1peGlucy9idXR0b25zXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvY2FyZHNcIjtcclxuQGltcG9ydCBcIm1peGlucy9wYWdpbmF0aW9uXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvbGlzdHNcIjtcclxuQGltcG9ydCBcIm1peGlucy9saXN0LWdyb3VwXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvbmF2LWRpdmlkZXJcIjtcclxuQGltcG9ydCBcIm1peGlucy9mb3Jtc1wiO1xyXG5AaW1wb3J0IFwibWl4aW5zL3Byb2dyZXNzXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvdGFibGUtcm93XCI7XHJcblxyXG4vLyAvLyBTa2luc1xyXG5AaW1wb3J0IFwibWl4aW5zL2JhY2tncm91bmQtdmFyaWFudFwiO1xyXG5AaW1wb3J0IFwibWl4aW5zL2JvcmRlci1yYWRpdXNcIjtcclxuQGltcG9ydCBcIm1peGlucy9ncmFkaWVudHNcIjtcclxuXHJcbi8vIC8vIExheW91dFxyXG5AaW1wb3J0IFwibWl4aW5zL2NsZWFyZml4XCI7XHJcbi8vIEBpbXBvcnQgXCJtaXhpbnMvbmF2YmFyLWFsaWduXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZC1mcmFtZXdvcmtcIjtcclxuQGltcG9ydCBcIm1peGlucy9ncmlkXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvZmxvYXRcIjtcclxuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cclxuLy9cclxuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxyXG4vL1xyXG4vLyAgICAoeHM6IDAsIHNtOiA1NDRweCwgbWQ6IDc2OHB4KVxyXG4vL1xyXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXHJcblxyXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXHJcbi8vXHJcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcclxuLy8gICAgbWRcclxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NDRweCwgbWQ6IDc2OHB4KSlcclxuLy8gICAgbWRcclxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kKSlcclxuLy8gICAgbWRcclxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcclxuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcclxuICBAcmV0dXJuIGlmKCRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcclxufVxyXG5cclxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxyXG4vL1xyXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTQ0cHgsIG1kOiA3NjhweCkpXHJcbi8vICAgIDU0NHB4XHJcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xyXG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XHJcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xyXG59XHJcblxyXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBsYXJnZXN0IChsYXN0KSBicmVha3BvaW50LlxyXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMS5cclxuLy9cclxuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgoc20sICh4czogMCwgc206IDU0NHB4LCBtZDogNzY4cHgpKVxyXG4vLyAgICA3NjdweFxyXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcclxuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xyXG4gIEByZXR1cm4gaWYoJG5leHQsIGJyZWFrcG9pbnQtbWluKCRuZXh0LCAkYnJlYWtwb2ludHMpIC0gMXB4LCBudWxsKTtcclxufVxyXG5cclxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxyXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxyXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xyXG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xyXG4gIEBpZiAkbWluIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxyXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxyXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XHJcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XHJcbiAgQGlmICRtYXgge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cclxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXHJcbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cclxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxyXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcclxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQG1peGluIGhvdmVyIHtcclxuICAvLyBUT0RPOiByZS1lbmFibGUgYWxvbmcgd2l0aCBtcTQtaG92ZXItc2hpbVxyXG4vLyAgQGlmICRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnkge1xyXG4vLyAgICAvLyBTZWUgTWVkaWEgUXVlcmllcyBMZXZlbCA0OiBodHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvbWVkaWFxdWVyaWVzLyNob3ZlclxyXG4vLyAgICAvLyBDdXJyZW50bHkgc2hpbW1lZCBieSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9tcTQtaG92ZXItc2hpbVxyXG4vLyAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xyXG4vLyAgICAgICY6aG92ZXIgeyBAY29udGVudCB9XHJcbi8vICAgIH1cclxuLy8gIH1cclxuLy8gIEBlbHNlIHtcclxuICAgICY6aG92ZXIgeyBAY29udGVudCB9XHJcbi8vICB9XHJcbn1cclxuXHJcbkBtaXhpbiBob3Zlci1mb2N1cyB7XHJcbiAgQGlmICRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnkge1xyXG4gICAgJjpmb2N1cyB7IEBjb250ZW50IH1cclxuICAgIEBpbmNsdWRlIGhvdmVyIHsgQGNvbnRlbnQgfVxyXG4gIH1cclxuICBAZWxzZSB7XHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIEBjb250ZW50XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gcGxhaW4taG92ZXItZm9jdXMge1xyXG4gIEBpZiAkZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5IHtcclxuICAgICYsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgQGNvbnRlbnRcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGhvdmVyIHsgQGNvbnRlbnQgfVxyXG4gIH1cclxuICBAZWxzZSB7XHJcbiAgICAmLFxyXG4gICAgJjpmb2N1cyxcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBAY29udGVudFxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGhvdmVyLWZvY3VzLWFjdGl2ZSB7XHJcbiAgQGlmICRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnkge1xyXG4gICAgJjpmb2N1cyxcclxuICAgICY6YWN0aXZlIHtcclxuICAgICAgQGNvbnRlbnRcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGhvdmVyIHsgQGNvbnRlbnQgfVxyXG4gIH1cclxuICBAZWxzZSB7XHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJjphY3RpdmUsXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgQGNvbnRlbnRcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gSW1hZ2UgTWl4aW5zXHJcbi8vIC0gUmVzcG9uc2l2ZSBpbWFnZVxyXG4vLyAtIFJldGluYSBpbWFnZVxyXG5cclxuXHJcbi8vIFJlc3BvbnNpdmUgaW1hZ2VcclxuLy9cclxuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cclxuXHJcbkBtaXhpbiBpbWctZmx1aWQge1xyXG4gIC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XHJcbiAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gIC8vIFBhcnQgMjogT3ZlcnJpZGUgdGhlIGhlaWdodCB0byBhdXRvLCBvdGhlcndpc2UgaW1hZ2VzIHdpbGwgYmUgc3RyZXRjaGVkXHJcbiAgLy8gd2hlbiBzZXR0aW5nIGEgd2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGUgb24gdGhlIGltZyBlbGVtZW50LlxyXG4gIGhlaWdodDogYXV0bztcclxufVxyXG5cclxuXHJcbi8vIFJldGluYSBpbWFnZVxyXG4vL1xyXG4vLyBTaG9ydCByZXRpbmEgbWl4aW4gZm9yIHNldHRpbmcgYmFja2dyb3VuZC1pbWFnZSBhbmQgLXNpemUuXHJcblxyXG5AbWl4aW4gaW1nLXJldGluYSgkZmlsZS0xeCwgJGZpbGUtMngsICR3aWR0aC0xeCwgJGhlaWdodC0xeCkge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0xeCk7XHJcblxyXG4gIC8vIEF1dG9wcmVmaXhlciB0YWtlcyBjYXJlIG9mIGFkZGluZyAtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gYW5kIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8sXHJcbiAgLy8gYnV0IGRvZXNuJ3QgY29udmVydCBkcHB4PT5kcGkuXHJcbiAgLy8gVGhlcmUncyBubyBzdWNoIHRoaW5nIGFzIHVucHJlZml4ZWQgbWluLWRldmljZS1waXhlbC1yYXRpbyBzaW5jZSBpdCdzIG5vbnN0YW5kYXJkLlxyXG4gIC8vIENvbXBhdGliaWxpdHkgaW5mbzogaHR0cDovL2Nhbml1c2UuY29tLyNmZWF0PWNzcy1tZWRpYS1yZXNvbHV0aW9uXHJcbiAgQG1lZGlhXHJcbiAgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgLy8gSUU5LTExIGRvbid0IHN1cHBvcnQgZHBweFxyXG4gIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KSB7IC8vIFN0YW5kYXJkaXplZFxyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRmaWxlLTJ4KTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogJHdpZHRoLTF4ICRoZWlnaHQtMXg7XHJcbiAgfVxyXG59XHJcbiIsIi8vIFRhZ3NcclxuXHJcbkBtaXhpbiB0YWctdmFyaWFudCgkY29sb3IpIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XHJcblxyXG4gICZbaHJlZl0ge1xyXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBSZXNldCBmaWx0ZXJzIGZvciBJRVxyXG4vL1xyXG4vLyBXaGVuIHlvdSBuZWVkIHRvIHJlbW92ZSBhIGdyYWRpZW50IGJhY2tncm91bmQsIGRvIG5vdCBmb3JnZXQgdG8gdXNlIHRoaXMgdG8gcmVzZXRcclxuLy8gdGhlIElFIGZpbHRlciBmb3IgSUU5LlxyXG5cclxuQG1peGluIHJlc2V0LWZpbHRlcigpIHtcclxuICBmaWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KGVuYWJsZWQgPSBmYWxzZSlcIjtcclxufVxyXG4iLCIvLyBSZXNpemUgYW55dGhpbmdcclxuXHJcbkBtaXhpbiByZXNpemFibGUoJGRpcmVjdGlvbikge1xyXG4gIHJlc2l6ZTogJGRpcmVjdGlvbjsgLy8gT3B0aW9uczogaG9yaXpvbnRhbCwgdmVydGljYWwsIGJvdGhcclxuICBvdmVyZmxvdzogYXV0bzsgLy8gUGVyIENTUzMgVUksIGByZXNpemVgIG9ubHkgYXBwbGllcyB3aGVuIGBvdmVyZmxvd2AgaXNuJ3QgYHZpc2libGVgXHJcbn1cclxuIiwiLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcclxuLy9cclxuLy8gU2VlOiBodHRwOi8vYTExeXByb2plY3QuY29tL3Bvc3RzL2hvdy10by1oaWRlLWNvbnRlbnRcclxuXHJcbkBtaXhpbiBzci1vbmx5IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgd2lkdGg6IDFweDtcclxuICBoZWlnaHQ6IDFweDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbjogLTFweDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIGNsaXA6IHJlY3QoMCwwLDAsMCk7XHJcbiAgYm9yZGVyOiAwO1xyXG59XHJcblxyXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cclxuLy9cclxuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxyXG4vL1xyXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXHJcblxyXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUge1xyXG4gICY6YWN0aXZlLFxyXG4gICY6Zm9jdXMge1xyXG4gICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbiAgICBjbGlwOiBhdXRvO1xyXG4gIH1cclxufVxyXG4iLCIvLyBTaXppbmcgc2hvcnRjdXRzXHJcblxyXG5AbWl4aW4gc2l6ZSgkd2lkdGgsICRoZWlnaHQ6ICR3aWR0aCkge1xyXG4gIHdpZHRoOiAkd2lkdGg7XHJcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xyXG59XHJcbiIsIi8vIFdlYktpdC1zdHlsZSBmb2N1c1xyXG5cclxuQG1peGluIHRhYi1mb2N1cygpIHtcclxuICAvLyBXZWJLaXQtc3BlY2lmaWMuIE90aGVyIGJyb3dzZXJzIHdpbGwga2VlcCB0aGVpciBkZWZhdWx0IG91dGxpbmUgc3R5bGUuXHJcbiAgLy8gKEluaXRpYWxseSB0cmllZCB0byBhbHNvIGZvcmNlIGRlZmF1bHQgdmlhIGBvdXRsaW5lOiBpbml0aWFsYCxcclxuICAvLyBidXQgdGhhdCBzZWVtcyB0byBlcnJvbmVvdXNseSByZW1vdmUgdGhlIG91dGxpbmUgaW4gRmlyZWZveCBhbHRvZ2V0aGVyLilcclxuICBvdXRsaW5lOiA1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XHJcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XHJcbn1cclxuIiwiQG1peGluIHJlc2V0LXRleHQge1xyXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcclxuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZSBvciB3b3JkLXdyYXAuXHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcclxuICBsaW5lLWJyZWFrOiBhdXRvO1xyXG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcclxuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXHJcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIHRleHQtc2hhZG93OiBub25lO1xyXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XHJcbiAgd29yZC1icmVhazogbm9ybWFsO1xyXG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xyXG59XHJcbiIsIi8vIFR5cG9ncmFwaHlcclxuXHJcbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XHJcbiAgI3skcGFyZW50fSB7XHJcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIGEjeyRwYXJlbnR9IHtcclxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcclxuICAgICAgY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSkgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gQ1NTIGltYWdlIHJlcGxhY2VtZW50XHJcbkBtaXhpbiB0ZXh0LWhpZGUoKSB7XHJcbiAgZm9udDogMC8wIGE7XHJcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIHRleHQtc2hhZG93OiBub25lO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlcjogMDtcclxufVxyXG4iLCIvLyBUZXh0IHRydW5jYXRlXHJcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcclxuXHJcbkBtaXhpbiB0ZXh0LXRydW5jYXRlKCkge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufSIsIi8vIEFsZXJ0c1xyXG5cclxuQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRib2R5LWNvbG9yKSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XHJcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xyXG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcclxuXHJcbiAgaHIge1xyXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRib3JkZXIsIDUlKTtcclxuICB9XHJcbiAgLmFsZXJ0LWxpbmsge1xyXG4gICAgY29sb3I6IGRhcmtlbigkYm9keS1jb2xvciwgMTAlKTtcclxuICB9XHJcbn1cclxuIiwiLy8gQnV0dG9uIHZhcmlhbnRzXHJcbi8vXHJcbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcclxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXHJcblxyXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGNvbG9yLCAkYmFja2dyb3VuZCwgJGJvcmRlcikge1xyXG4gICRhY3RpdmUtYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpO1xyXG4gICRhY3RpdmUtYm9yZGVyOiBkYXJrZW4oJGJvcmRlciwgMTIlKTtcclxuXHJcbiAgY29sb3I6ICRjb2xvcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcclxuICBib3JkZXItY29sb3I6ICRib3JkZXI7XHJcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWJveC1zaGFkb3cpO1xyXG5cclxuICBAaW5jbHVkZSBob3ZlciB7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XHJcbiAgfVxyXG5cclxuICAmOmZvY3VzLFxyXG4gICYuZm9jdXMge1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xyXG4gIH1cclxuXHJcbiAgJjphY3RpdmUsXHJcbiAgJi5hY3RpdmUsXHJcbiAgLm9wZW4gPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XHJcbiAgICAvLyBSZW1vdmUgdGhlIGdyYWRpZW50IGZvciB0aGUgcHJlc3NlZC9hY3RpdmUgc3RhdGVcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xyXG5cclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJi5mb2N1cyB7XHJcbiAgICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTclKTtcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDI1JSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLmRpc2FibGVkLFxyXG4gICY6ZGlzYWJsZWQge1xyXG4gICAgJjpmb2N1cyxcclxuICAgICYuZm9jdXMge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGhvdmVyIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkY29sb3IpIHtcclxuICBjb2xvcjogJGNvbG9yO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XHJcblxyXG4gIEBpbmNsdWRlIGhvdmVyIHtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xyXG4gIH1cclxuXHJcbiAgJjpmb2N1cyxcclxuICAmLmZvY3VzIHtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xyXG4gIH1cclxuXHJcbiAgJjphY3RpdmUsXHJcbiAgJi5hY3RpdmUsXHJcbiAgLm9wZW4gPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcclxuXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyxcclxuICAgICYuZm9jdXMge1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTclKTtcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRjb2xvciwgMjUlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuZGlzYWJsZWQsXHJcbiAgJjpkaXNhYmxlZCB7XHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJi5mb2N1cyB7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogbGlnaHRlbigkY29sb3IsIDIwJSk7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBob3ZlciB7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogbGlnaHRlbigkY29sb3IsIDIwJSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBCdXR0b24gc2l6ZXNcclxuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRib3JkZXItcmFkaXVzKSB7XHJcbiAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcclxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcclxufVxyXG4iLCIvLyBDYXJkIHZhcmlhbnRzXHJcblxyXG5AbWl4aW4gY2FyZC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyKSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XHJcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xyXG5cclxuICAuY2FyZC1oZWFkZXIsXHJcbiAgLmNhcmQtZm9vdGVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGNhcmQtb3V0bGluZS12YXJpYW50KCRjb2xvcikge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xyXG59XHJcblxyXG4vL1xyXG4vLyBJbnZlcnNlIHRleHQgd2l0aGluIGEgY2FyZCBmb3IgdXNlIHdpdGggZGFyayBiYWNrZ3JvdW5kc1xyXG4vL1xyXG5cclxuQG1peGluIGNhcmQtaW52ZXJzZSB7XHJcbiAgLmNhcmQtaGVhZGVyLFxyXG4gIC5jYXJkLWZvb3RlciB7XHJcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjIpO1xyXG4gIH1cclxuICAuY2FyZC1oZWFkZXIsXHJcbiAgLmNhcmQtZm9vdGVyLFxyXG4gIC5jYXJkLXRpdGxlLFxyXG4gIC5jYXJkLWJsb2NrcXVvdGUge1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgfVxyXG4gIC5jYXJkLWxpbmssXHJcbiAgLmNhcmQtdGV4dCxcclxuICAuY2FyZC1zdWJ0aXRsZSxcclxuICAuY2FyZC1ibG9ja3F1b3RlIC5ibG9ja3F1b3RlLWZvb3RlciB7XHJcbiAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuNjUpO1xyXG4gIH1cclxuICAuY2FyZC1saW5rIHtcclxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcclxuICAgICAgY29sb3I6ICRjYXJkLWxpbmstaG92ZXItY29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIFBhZ2luYXRpb25cclxuXHJcbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xyXG4gIC5wYWdlLWxpbmsge1xyXG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xyXG4gIH1cclxuXHJcbiAgLnBhZ2UtaXRlbSB7XHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgLnBhZ2UtbGluayB7XHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgLnBhZ2UtbGluayB7XHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gTGlzdHNcclxuXHJcbi8vIFVuc3R5bGVkIGtlZXBzIGxpc3QgaXRlbXMgYmxvY2sgbGV2ZWwsIGp1c3QgcmVtb3ZlcyBkZWZhdWx0IGJyb3dzZXIgcGFkZGluZyBhbmQgbGlzdC1zdHlsZVxyXG5AbWl4aW4gbGlzdC11bnN0eWxlZCB7XHJcbiAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbn1cclxuIiwiLy8gTGlzdCBHcm91cHNcclxuXHJcbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcclxuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XHJcbiAgfVxyXG5cclxuICBhLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0sXHJcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuXHJcbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xyXG4gICAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XHJcbiAgICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xyXG4gICAgfVxyXG5cclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgQGluY2x1ZGUgcGxhaW4taG92ZXItZm9jdXMge1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBIb3Jpem9udGFsIGRpdmlkZXJzXHJcbi8vXHJcbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiBkcm9wZG93bnMgYW5kIG5hdiBsaXN0c1xyXG5cclxuQG1peGluIG5hdi1kaXZpZGVyKCRjb2xvcjogI2U1ZTVlNSkge1xyXG4gIGhlaWdodDogMXB4O1xyXG4gIG1hcmdpbjogKCRzcGFjZXIteSAvIDIpIDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XHJcbn1cclxuIiwiLy8gRm9ybSB2YWxpZGF0aW9uIHN0YXRlc1xyXG4vL1xyXG4vLyBVc2VkIGluIF9mb3Jtcy5zY3NzIHRvIGdlbmVyYXRlIHRoZSBmb3JtIHZhbGlkYXRpb24gQ1NTIGZvciB3YXJuaW5ncywgZXJyb3JzLFxyXG4vLyBhbmQgc3VjY2Vzc2VzLlxyXG5cclxuQG1peGluIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCRjb2xvcikge1xyXG4gIC8vIENvbG9yIHRoZSBsYWJlbCBhbmQgaGVscCB0ZXh0XHJcbiAgLmZvcm0tY29udHJvbC1mZWVkYmFjayxcclxuICAuZm9ybS1jb250cm9sLWxhYmVsLFxyXG4gIC5mb3JtLWNoZWNrLWxhYmVsLFxyXG4gIC5mb3JtLWNoZWNrLWlubGluZSxcclxuICAuY3VzdG9tLWNvbnRyb2wge1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuICB9XHJcblxyXG4gIC8vIFNldCB0aGUgYm9yZGVyIGFuZCBib3ggc2hhZG93IG9uIHNwZWNpZmljIGlucHV0cyB0byBtYXRjaFxyXG4gIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XHJcblxyXG4gICAgQGlmICRlbmFibGUtcm91bmRlZCB7XHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1ib3gtc2hhZG93LCAwIDAgNnB4IGxpZ2h0ZW4oJGNvbG9yLCAyMCUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBTZXQgdmFsaWRhdGlvbiBzdGF0ZXMgYWxzbyBmb3IgYWRkb25zXHJcbiAgLmlucHV0LWdyb3VwLWFkZG9uIHtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCA0MCUpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXHJcbi8vXHJcbi8vIEdlbmVyYXRlIGEgY3VzdG9taXplZCBmb2N1cyBzdGF0ZSBhbmQgZm9yIGFueSBpbnB1dCB3aXRoIHRoZSBzcGVjaWZpZWQgY29sb3IsXHJcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgQGlucHV0LWJvcmRlci1mb2N1c2AgdmFyaWFibGUuXHJcbi8vXHJcbi8vIFdlIGhpZ2hseSBlbmNvdXJhZ2UgeW91IHRvIG5vdCBjdXN0b21pemUgdGhlIGRlZmF1bHQgdmFsdWUsIGJ1dCBpbnN0ZWFkIHVzZVxyXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxyXG4vLyBXZWJLaXQncyBkZWZhdWx0IHN0eWxlcywgYnV0IGFwcGxpY2FibGUgdG8gYSB3aWRlciByYW5nZSBvZiBicm93c2Vycy4gSXRzXHJcbi8vIHVzYWJpbGl0eSBhbmQgYWNjZXNzaWJpbGl0eSBzaG91bGQgYmUgdGFrZW4gaW50byBhY2NvdW50IHdpdGggYW55IGNoYW5nZS5cclxuLy9cclxuLy8gRXhhbXBsZSB1c2FnZTogY2hhbmdlIHRoZSBkZWZhdWx0IGJsdWUgYm9yZGVyIGFuZCBzaGFkb3cgdG8gd2hpdGUgZm9yIGJldHRlclxyXG4vLyBjb250cmFzdCBhZ2FpbnN0IGEgZGFyayBncmF5IGJhY2tncm91bmQuXHJcbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoKSB7XHJcbiAgJjpmb2N1cyB7XHJcbiAgICBjb2xvcjogJGlucHV0LWNvbG9yLWZvY3VzO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnLWZvY3VzO1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3ctZm9jdXMpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xyXG4vL1xyXG4vLyBSZWxhdGl2ZSB0ZXh0IHNpemUsIHBhZGRpbmcsIGFuZCBib3JkZXItcmFkaWkgY2hhbmdlcyBmb3IgZm9ybSBjb250cm9scy4gRm9yXHJcbi8vIGhvcml6b250YWwgc2l6aW5nLCB3cmFwIGNvbnRyb2xzIGluIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy4gYDxzZWxlY3Q+YFxyXG4vLyBlbGVtZW50IGdldHMgc3BlY2lhbCBsb3ZlIGJlY2F1c2UgaXQncyBzcGVjaWFsLCBhbmQgdGhhdCdzIGEgZmFjdCFcclxuXHJcbkBtaXhpbiBpbnB1dC1zaXplKCRwYXJlbnQsICRpbnB1dC1oZWlnaHQsICRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcclxuICAjeyRwYXJlbnR9IHtcclxuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcclxuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcclxuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XHJcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcclxuICB9XHJcblxyXG4gIHNlbGVjdCN7JHBhcmVudH0ge1xyXG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xyXG4gICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XHJcbiAgfVxyXG5cclxuICB0ZXh0YXJlYSN7JHBhcmVudH0sXHJcbiAgc2VsZWN0W211bHRpcGxlXSN7JHBhcmVudH0ge1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gIH1cclxufVxyXG4iLCIvLyBQcm9ncmVzcyBiYXJzXHJcblxyXG5AbWl4aW4gcHJvZ3Jlc3MtdmFyaWFudCgkY29sb3IpIHtcclxuICAmW3ZhbHVlXTo6LXdlYmtpdC1wcm9ncmVzcy12YWx1ZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XHJcbiAgfVxyXG5cclxuICAmW3ZhbHVlXTo6LW1vei1wcm9ncmVzcy1iYXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xyXG4gIH1cclxuXHJcbiAgLy8gSUUxMCssIE1pY3Jvc29mdCBFZGdlXHJcbiAgJlt2YWx1ZV06Oi1tcy1maWxsIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxuICB9XHJcblxyXG4gIC8vIElFOVxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MFxcMCkge1xyXG4gICAgLnByb2dyZXNzLWJhciB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gVGFibGVzXHJcblxyXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCkge1xyXG4gIC8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XHJcbiAgLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cclxuICAudGFibGUtI3skc3RhdGV9IHtcclxuICAgICYsXHJcbiAgICA+IHRoLFxyXG4gICAgPiB0ZCB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxyXG4gIC8vIE5vdGU6IHRoaXMgaXMgbm90IGF2YWlsYWJsZSBmb3IgY2VsbHMgb3Igcm93cyB3aXRoaW4gYHRoZWFkYCBvciBgdGZvb3RgLlxyXG4gIC50YWJsZS1ob3ZlciB7XHJcbiAgICAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XHJcblxyXG4gICAgLnRhYmxlLSN7JHN0YXRlfSB7XHJcbiAgICAgIEBpbmNsdWRlIGhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmFja2dyb3VuZDtcclxuXHJcbiAgICAgICAgPiB0ZCxcclxuICAgICAgICA+IHRoIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXHJcblxyXG5AbWl4aW4gYmctdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcclxuICAjeyRwYXJlbnR9IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xyXG4gIH1cclxuICBhI3skcGFyZW50fSB7XHJcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSkgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xyXG5cclxuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcclxuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcclxuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1cykge1xyXG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xyXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XHJcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xyXG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xyXG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XHJcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzKSB7XHJcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XHJcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcclxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcclxuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcclxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XHJcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xyXG4gIH1cclxufVxyXG4iLCIvLyBHcmFkaWVudHNcclxuXHJcbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxyXG4vL1xyXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxyXG4vLyBDb2xvciBzdG9wcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBJRTkuXHJcbkBtaXhpbiBncmFkaWVudC14KCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcclxuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0xKTsgLy8gSUU5XHJcbn1cclxuXHJcbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cclxuLy9cclxuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cclxuLy8gQ29sb3Igc3RvcHMgYXJlIG5vdCBhdmFpbGFibGUgaW4gSUU5LlxyXG5AbWl4aW4gZ3JhZGllbnQteSgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTApOyAvLyBJRTlcclxufVxyXG5cclxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJGRlZzogNDVkZWcpIHtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7XHJcbn1cclxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zikge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTEpOyAvLyBJRTkgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXHJcbn1cclxuQG1peGluIGdyYWRpZW50LXktdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zikge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MCk7IC8vIElFOSBnZXRzIG5vIGNvbG9yLXN0b3AgYXQgYWxsIGZvciBwcm9wZXIgZmFsbGJhY2tcclxufVxyXG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogIzU1NSwgJG91dGVyLWNvbG9yOiAjMzMzKSB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbn1cclxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC4xNSksICRhbmdsZTogNDVkZWcpIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XHJcbn0iLCJAbWl4aW4gY2xlYXJmaXgoKSB7XHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgfVxyXG59XHJcbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cclxuLy9cclxuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXHJcbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXHJcblxyXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXJzOiAkZ3JpZC1ndXR0ZXItd2lkdGhzLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XHJcbiAgLy8gQ29tbW9uIHByb3BlcnRpZXMgZm9yIGFsbCBicmVha3BvaW50c1xyXG4gICVncmlkLWNvbHVtbiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBjb2xsYXBzaW5nIHdoZW4gZW1wdHlcclxuICAgIG1pbi1oZWlnaHQ6IDFweDtcclxuXHJcbiAgICBAaWYgJGVuYWJsZS1mbGV4IHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWFrZS1ndXR0ZXJzKCRndXR0ZXJzKTtcclxuICB9XHJcblxyXG4gICRicmVha3BvaW50LWNvdW50ZXI6IDA7XHJcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XHJcbiAgICAkYnJlYWtwb2ludC1jb3VudGVyOiAoJGJyZWFrcG9pbnQtY291bnRlciArIDEpO1xyXG5cclxuICAgIC8vIEFsbG93IGNvbHVtbnMgdG8gc3RyZXRjaCBmdWxsIHdpZHRoIGJlbG93IHRoZWlyIGJyZWFrcG9pbnRzXHJcbiAgICAuY29sLSN7JGJyZWFrcG9pbnR9IHtcclxuICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XHJcbiAgICB9XHJcblxyXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XHJcbiAgICAgIC5jb2wtI3skYnJlYWtwb2ludH0tI3skaX0ge1xyXG4gICAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XHJcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXHJcbiAgICAgIEBpZiAkZW5hYmxlLWZsZXgge1xyXG4gICAgICAgIC5jb2wtI3skYnJlYWtwb2ludH0ge1xyXG4gICAgICAgICAgZmxleC1iYXNpczogMDtcclxuICAgICAgICAgIGZsZXgtZ3JvdzogMTtcclxuICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xyXG4gICAgICAgIC5jb2wtI3skYnJlYWtwb2ludH0tI3skaX0ge1xyXG4gICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2woJGksICRjb2x1bW5zKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBlYWNoICRtb2RpZmllciBpbiAocHVsbCwgcHVzaCkge1xyXG4gICAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xyXG4gICAgICAgICAgLiN7JG1vZGlmaWVyfS0jeyRicmVha3BvaW50fS0jeyRpfSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW1vZGlmaWVyKCRtb2RpZmllciwgJGksICRjb2x1bW5zKVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLy8gYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlXHJcbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xyXG4gICAgICAgIEBpZiAkYnJlYWtwb2ludC1jb3VudGVyICE9IDEgb3IgJGkgIT0gMCB7IC8vIEF2b2lkIGVtaXR0aW5nIHVzZWxlc3MgLm9mZnNldC14cy0wXHJcbiAgICAgICAgICAub2Zmc2V0LSN7JGJyZWFrcG9pbnR9LSN7JGl9IHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtbW9kaWZpZXIob2Zmc2V0LCAkaSwgJGNvbHVtbnMpXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vLyBHcmlkIHN5c3RlbVxyXG4vL1xyXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXHJcblxyXG5AbWl4aW4gbWFrZS1jb250YWluZXIoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2UpIHtcclxuICBtYXJnaW4tbGVmdDogYXV0bztcclxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcclxuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xyXG4gIEBpZiBub3QgJGVuYWJsZS1mbGV4IHtcclxuICAgIEBpbmNsdWRlIGNsZWFyZml4KCk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gRm9yIGVhY2ggYnJlYWtwb2ludCwgZGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIHRoZSBjb250YWluZXIgaW4gYSBtZWRpYSBxdWVyeVxyXG5AbWl4aW4gbWFrZS1jb250YWluZXItbWF4LXdpZHRocygkbWF4LXdpZHRoczogJGNvbnRhaW5lci1tYXgtd2lkdGhzLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XHJcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRtYXgtd2lkdGhzIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xyXG4gICAgICB3aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XHJcbiAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBtYWtlLWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLWd1dHRlci13aWR0aHMpIHtcclxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3V0dGVycykge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xyXG4gICAgICAkZ3V0dGVyOiBtYXAtZ2V0KCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcnM6ICRncmlkLWd1dHRlci13aWR0aHMpIHtcclxuICBAaWYgJGVuYWJsZS1mbGV4IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xyXG4gIH1cclxuXHJcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGd1dHRlcnMpIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcclxuICAgICAgJGd1dHRlcjogbWFwLWdldCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6ICgkZ3V0dGVyIC8gLTIpO1xyXG4gICAgICBtYXJnaW4tbGVmdDogICgkZ3V0dGVyIC8gLTIpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1peGluIG1ha2UtY29sLXJlYWR5KCRndXR0ZXJzOiAkZ3JpZC1ndXR0ZXItd2lkdGhzKSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG1pbi1oZWlnaHQ6IDFweDsgLy8gUHJldmVudCBjb2xsYXBzaW5nXHJcblxyXG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcclxuICAvLyBhbHdheXMgc2V0dGluZyBgd2lkdGg6IDEwMCU7YC4gVGhpcyB3b3JrcyBiZWNhdXNlIHdlIHVzZSBgZmxleGAgdmFsdWVzXHJcbiAgLy8gbGF0ZXIgb24gdG8gb3ZlcnJpZGUgdGhpcyBpbml0aWFsIHdpZHRoLlxyXG4gIEBpZiAkZW5hYmxlLWZsZXgge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG5cclxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3V0dGVycykge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xyXG4gICAgICAkZ3V0dGVyOiBtYXAtZ2V0KCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gbWFrZS1jb2woJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XHJcbiAgQGlmICRlbmFibGUtZmxleCB7XHJcbiAgICBmbGV4OiAwIDAgcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcclxuICAgIC8vIEFkZCBhIGBtYXgtd2lkdGhgIHRvIGVuc3VyZSBjb250ZW50IHdpdGhpbiBlYWNoIGNvbHVtbiBkb2VzIG5vdCBibG93IG91dFxyXG4gICAgLy8gdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4uIEFwcGxpZXMgdG8gSUUxMCsgYW5kIEZpcmVmb3guIENocm9tZSBhbmQgU2FmYXJpXHJcbiAgICAvLyBkbyBub3QgYXBwZWFyIHRvIHJlcXVpcmUgdGhpcy5cclxuICAgIG1heC13aWR0aDogcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcclxuICB9IEBlbHNlIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyk7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xyXG4gIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xyXG59XHJcblxyXG5AbWl4aW4gbWFrZS1jb2wtcHVzaCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcclxuICBsZWZ0OiBpZigkc2l6ZSA+IDAsIHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyksIGF1dG8pO1xyXG59XHJcblxyXG5AbWl4aW4gbWFrZS1jb2wtcHVsbCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcclxuICByaWdodDogaWYoJHNpemUgPiAwLCBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpLCBhdXRvKTtcclxufVxyXG5cclxuQG1peGluIG1ha2UtY29sLW1vZGlmaWVyKCR0eXBlLCAkc2l6ZSwgJGNvbHVtbnMpIHtcclxuICAvLyBXb3JrIGFyb3VuZCB0aGUgbGFjayBvZiBkeW5hbWljIG1peGluIEBpbmNsdWRlIHN1cHBvcnQgKGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzYyNilcclxuICBAaWYgJHR5cGUgPT0gcHVzaCB7XHJcbiAgICBAaW5jbHVkZSBtYWtlLWNvbC1wdXNoKCRzaXplLCAkY29sdW1ucyk7XHJcbiAgfSBAZWxzZSBpZiAkdHlwZSA9PSBwdWxsIHtcclxuICAgIEBpbmNsdWRlIG1ha2UtY29sLXB1bGwoJHNpemUsICRjb2x1bW5zKTtcclxuICB9IEBlbHNlIGlmICR0eXBlID09IG9mZnNldCB7XHJcbiAgICBAaW5jbHVkZSBtYWtlLWNvbC1vZmZzZXQoJHNpemUsICRjb2x1bW5zKTtcclxuICB9XHJcbn1cclxuIiwiQG1peGluIGZsb2F0LWxlZnQge1xyXG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XHJcbn1cclxuQG1peGluIGZsb2F0LXJpZ2h0IHtcclxuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcclxufVxyXG4iLCIvKiEgbm9ybWFsaXplLmNzcyB2NC4yLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXHJcblxyXG4vL1xyXG4vLyAxLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXHJcbi8vIDIuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cclxuLy8gMy4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBJRSBhbmQgaU9TLlxyXG4vL1xyXG5cclxuaHRtbCB7XHJcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8vIDFcclxuICBsaW5lLWhlaWdodDogMS4xNTsgLy8gMlxyXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAzXHJcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAzXHJcbn1cclxuXHJcbi8vXHJcbi8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxyXG4vL1xyXG5cclxuYm9keSB7XHJcbiAgbWFyZ2luOiAwO1xyXG59XHJcblxyXG4vLyBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vL1xyXG4vLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cclxuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxyXG4vLyAyLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cclxuLy9cclxuXHJcbmFydGljbGUsXHJcbmFzaWRlLFxyXG5kZXRhaWxzLCAvLyAxXHJcbmZpZ2NhcHRpb24sXHJcbmZpZ3VyZSxcclxuZm9vdGVyLFxyXG5oZWFkZXIsXHJcbm1haW4sIC8vIDJcclxubWVudSxcclxubmF2LFxyXG5zZWN0aW9uLFxyXG5zdW1tYXJ5IHsgLy8gMVxyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4vL1xyXG4vLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cclxuLy9cclxuXHJcbmF1ZGlvLFxyXG5jYW52YXMsXHJcbnByb2dyZXNzLFxyXG52aWRlbyB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG59XHJcblxyXG4vL1xyXG4vLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxyXG4vL1xyXG5cclxuYXVkaW86bm90KFtjb250cm9sc10pIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIGhlaWdodDogMDtcclxufVxyXG5cclxuLy9cclxuLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cclxuLy9cclxuXHJcbnByb2dyZXNzIHtcclxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cclxuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXHJcbi8vXHJcblxyXG50ZW1wbGF0ZSwgLy8gMVxyXG5baGlkZGVuXSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLy8gTGlua3NcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vXHJcbi8vIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cclxuLy8gMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxyXG4vL1xyXG5cclxuYSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIDFcclxuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzOyAvLyAyXHJcbn1cclxuXHJcbi8vXHJcbi8vIFJlbW92ZSB0aGUgb3V0bGluZSBvbiBmb2N1c2VkIGxpbmtzIHdoZW4gdGhleSBhcmUgYWxzbyBhY3RpdmUgb3IgaG92ZXJlZFxyXG4vLyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cclxuLy9cclxuXHJcbmE6YWN0aXZlLFxyXG5hOmhvdmVyIHtcclxuICBvdXRsaW5lLXdpZHRoOiAwO1xyXG59XHJcblxyXG4vLyBUZXh0LWxldmVsIHNlbWFudGljc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy9cclxuLy8gMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxyXG4vLyAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxyXG4vL1xyXG5cclxuYWJiclt0aXRsZV0ge1xyXG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8vIDFcclxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLy8gMlxyXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxyXG59XHJcblxyXG4vL1xyXG4vLyBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cclxuLy9cclxuXHJcbmIsXHJcbnN0cm9uZyB7XHJcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXHJcbi8vXHJcblxyXG5iLFxyXG5zdHJvbmcge1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cclxuLy9cclxuXHJcbmRmbiB7XHJcbiAgZm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG4vL1xyXG4vLyBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXHJcbi8vIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXHJcbi8vXHJcblxyXG5oMSB7XHJcbiAgZm9udC1zaXplOiAyZW07XHJcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcclxufVxyXG5cclxuLy9cclxuLy8gQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxyXG4vL1xyXG5cclxubWFyayB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDtcclxuICBjb2xvcjogIzAwMDtcclxufVxyXG5cclxuLy9cclxuLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXHJcbi8vXHJcblxyXG5zbWFsbCB7XHJcbiAgZm9udC1zaXplOiA4MCU7XHJcbn1cclxuXHJcbi8vXHJcbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxyXG4vLyBhbGwgYnJvd3NlcnMuXHJcbi8vXHJcblxyXG5zdWIsXHJcbnN1cCB7XHJcbiAgZm9udC1zaXplOiA3NSU7XHJcbiAgbGluZS1oZWlnaHQ6IDA7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcclxufVxyXG5cclxuc3ViIHtcclxuICBib3R0b206IC0wLjI1ZW07XHJcbn1cclxuXHJcbnN1cCB7XHJcbiAgdG9wOiAtMC41ZW07XHJcbn1cclxuXHJcbi8vIEVtYmVkZGVkIGNvbnRlbnRcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vXHJcbi8vIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxyXG4vL1xyXG5cclxuaW1nIHtcclxuICBib3JkZXItc3R5bGU6IG5vbmU7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxyXG4vL1xyXG5cclxuc3ZnOm5vdCg6cm9vdCkge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi8vIEdyb3VwaW5nIGNvbnRlbnRcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vXHJcbi8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXHJcbi8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cclxuLy9cclxuXHJcbmNvZGUsXHJcbmtiZCxcclxucHJlLFxyXG5zYW1wIHtcclxuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8vIDFcclxuICBmb250LXNpemU6IDFlbTsgLy8gMlxyXG59XHJcblxyXG4vL1xyXG4vLyBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXHJcbi8vXHJcblxyXG5maWd1cmUge1xyXG4gIG1hcmdpbjogMWVtIDQwcHg7XHJcbn1cclxuXHJcbi8vXHJcbi8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXHJcbi8vIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxyXG4vL1xyXG5cclxuaHIge1xyXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXHJcbiAgaGVpZ2h0OiAwOyAvLyAxXHJcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcclxufVxyXG5cclxuLy8gRm9ybXNcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vXHJcbi8vIDEuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxyXG4vLyAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXHJcbi8vXHJcblxyXG5idXR0b24sXHJcbmlucHV0LFxyXG5vcHRncm91cCxcclxuc2VsZWN0LFxyXG50ZXh0YXJlYSB7XHJcbiAgZm9udDogaW5oZXJpdDsgLy8gMVxyXG4gIG1hcmdpbjogMDsgLy8gMlxyXG59XHJcblxyXG4vL1xyXG4vLyBSZXN0b3JlIHRoZSBmb250IHdlaWdodCB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cclxuLy9cclxuXHJcbm9wdGdyb3VwIHtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuLy9cclxuLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXHJcbi8vIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXHJcbi8vXHJcblxyXG5idXR0b24sXHJcbmlucHV0IHsgLy8gMVxyXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xyXG59XHJcblxyXG4vL1xyXG4vLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cclxuLy8gMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxyXG4vL1xyXG5cclxuYnV0dG9uLFxyXG5zZWxlY3QgeyAvLyAxXHJcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbn1cclxuXHJcbi8vXHJcbi8vIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxyXG4vLyAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXHJcbi8vIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXHJcbi8vXHJcblxyXG5idXR0b24sXHJcbmh0bWwgW3R5cGU9XCJidXR0b25cIl0sIC8vIDFcclxuW3R5cGU9XCJyZXNldFwiXSxcclxuW3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXHJcbn1cclxuXHJcbi8vXHJcbi8vIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXHJcbi8vXHJcblxyXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXHJcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxyXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxyXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XHJcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xyXG4gIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi8vXHJcbi8vIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cclxuLy9cclxuXHJcbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcclxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXHJcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXHJcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcclxuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XHJcbn1cclxuXHJcbi8vXHJcbi8vIENoYW5nZSB0aGUgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxyXG4vL1xyXG5cclxuZmllbGRzZXQge1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XHJcbiAgbWFyZ2luOiAwIDJweDtcclxuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XHJcbn1cclxuXHJcbi8vXHJcbi8vIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXHJcbi8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cclxuLy8gMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxyXG4vLyAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cclxuLy9cclxuXHJcbmxlZ2VuZCB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxyXG4gIGNvbG9yOiBpbmhlcml0OyAvLyAyXHJcbiAgZGlzcGxheTogdGFibGU7IC8vIDFcclxuICBtYXgtd2lkdGg6IDEwMCU7IC8vIDFcclxuICBwYWRkaW5nOiAwOyAvLyAzXHJcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gMVxyXG59XHJcblxyXG4vL1xyXG4vLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxyXG4vL1xyXG5cclxudGV4dGFyZWEge1xyXG4gIG92ZXJmbG93OiBhdXRvO1xyXG59XHJcblxyXG4vL1xyXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uXHJcbi8vIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXHJcbi8vXHJcblxyXG5bdHlwZT1cImNoZWNrYm94XCJdLFxyXG5bdHlwZT1cInJhZGlvXCJdIHtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXHJcbiAgcGFkZGluZzogMDsgLy8gMlxyXG59XHJcblxyXG4vL1xyXG4vLyBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXHJcbi8vXHJcblxyXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcclxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xyXG4gIGhlaWdodDogYXV0bztcclxufVxyXG5cclxuLy9cclxuLy8gMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXHJcbi8vIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxyXG4vL1xyXG5cclxuW3R5cGU9XCJzZWFyY2hcIl0ge1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAxXHJcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDJcclxufVxyXG5cclxuLy9cclxuLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGFuZCBjYW5jZWwgYnV0dG9ucyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxyXG4vL1xyXG5cclxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXHJcblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbn1cclxuXHJcbi8vXHJcbi8vIENvcnJlY3QgdGhlIHRleHQgc3R5bGUgb2YgcGxhY2Vob2xkZXJzIGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cclxuLy9cclxuXHJcbjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XHJcbiAgY29sb3I6IGluaGVyaXQ7XHJcbiAgb3BhY2l0eTogMC41NDtcclxufVxyXG5cclxuLy9cclxuLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cclxuLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxyXG4vL1xyXG5cclxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcclxuICBmb250OiBpbmhlcml0OyAvLyAyXHJcbn1cclxuIiwiLy8gc2Nzcy1saW50OmRpc2FibGUgUXVhbGlmeWluZ0VsZW1lbnRcclxuXHJcbi8vIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi9tYXN0ZXIvc3JjL2Nzcy9tYWluLmNzc1xyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gUHJpbnQgc3R5bGVzLlxyXG4vLyBJbmxpbmVkIHRvIGF2b2lkIHRoZSBhZGRpdGlvbmFsIEhUVFAgcmVxdWVzdDpcclxuLy8gaHR0cDovL3d3dy5waHBpZWQuY29tL2RlbGF5LWxvYWRpbmcteW91ci1wcmludC1jc3MvXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG5AaWYgJGVuYWJsZS1wcmludC1zdHlsZXMge1xyXG4gIEBtZWRpYSBwcmludCB7XHJcbiAgICAqLFxyXG4gICAgKjo6YmVmb3JlLFxyXG4gICAgKjo6YWZ0ZXIsXHJcbiAgICAqOjpmaXJzdC1sZXR0ZXIsXHJcbiAgICBwOjpmaXJzdC1saW5lLFxyXG4gICAgZGl2OjpmaXJzdC1saW5lLFxyXG4gICAgYmxvY2txdW90ZTo6Zmlyc3QtbGluZSxcclxuICAgIGxpOjpmaXJzdC1saW5lIHtcclxuICAgICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IG91dCBgY29sb3JgIGFuZCBgYmFja2dyb3VuZGBcclxuICAgICAgLy9jb2xvcjogIzAwMCAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vICAgaHR0cDovL3d3dy5zYW5iZWlqaS5jb20vYXJjaGl2ZXMvOTUzXHJcbiAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgIC8vYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIGEsXHJcbiAgICBhOnZpc2l0ZWQge1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcclxuICAgIC8vYVtocmVmXTo6YWZ0ZXIge1xyXG4gICAgLy8gIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xyXG4gICAgLy99XHJcblxyXG4gICAgYWJiclt0aXRsZV06OmFmdGVyIHtcclxuICAgICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCB0aGUgZm9sbG93aW5nIHNlbGVjdG9yIG91dFxyXG4gICAgLy9cclxuICAgIC8vIERvbid0IHNob3cgbGlua3MgdGhhdCBhcmUgZnJhZ21lbnQgaWRlbnRpZmllcnMsXHJcbiAgICAvLyBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXHJcbiAgICAvL1xyXG5cclxuICAgIC8vYVtocmVmXj1cIiNcIl06OmFmdGVyLFxyXG4gICAgLy9hW2hyZWZePVwiamF2YXNjcmlwdDpcIl06OmFmdGVyIHtcclxuICAgIC8vIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAvL31cclxuXHJcbiAgICBwcmUge1xyXG4gICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXAgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIHByZSxcclxuICAgIGJsb2NrcXVvdGUge1xyXG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgIzk5OTsgICAvLyBCb290c3RyYXAgY3VzdG9tIGNvZGU7IHVzaW5nIGAkYm9yZGVyLXdpZHRoYCBpbnN0ZWFkIG9mIDFweFxyXG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XHJcbiAgICB9XHJcblxyXG4gICAgLy9cclxuICAgIC8vIFByaW50aW5nIFRhYmxlczpcclxuICAgIC8vIGh0dHA6Ly9jc3MtZGlzY3Vzcy5pbmN1dGlvLmNvbS93aWtpL1ByaW50aW5nX1RhYmxlc1xyXG4gICAgLy9cclxuXHJcbiAgICB0aGVhZCB7XHJcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcclxuICAgIH1cclxuXHJcbiAgICB0cixcclxuICAgIGltZyB7XHJcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcclxuICAgIH1cclxuXHJcbiAgICBwLFxyXG4gICAgaDIsXHJcbiAgICBoMyB7XHJcbiAgICAgIG9ycGhhbnM6IDM7XHJcbiAgICAgIHdpZG93czogMztcclxuICAgIH1cclxuXHJcbiAgICBoMixcclxuICAgIGgzIHtcclxuICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgc3RhcnRcclxuXHJcbiAgICAvLyBCb290c3RyYXAgY29tcG9uZW50c1xyXG4gICAgLm5hdmJhciB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgICAuYnRuLFxyXG4gICAgLmRyb3B1cCA+IC5idG4ge1xyXG4gICAgICA+IC5jYXJldCB7XHJcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogIzAwMCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAudGFnIHtcclxuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICMwMDA7XHJcbiAgICB9XHJcblxyXG4gICAgLnRhYmxlIHtcclxuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgdGQsXHJcbiAgICAgIHRoIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC50YWJsZS1ib3JkZXJlZCB7XHJcbiAgICAgIHRoLFxyXG4gICAgICB0ZCB7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgZW5kXHJcbiAgfVxyXG59XHJcbiIsIi8vIHNjc3MtbGludDpkaXNhYmxlIFF1YWxpZnlpbmdFbGVtZW50LCBEdXBsaWNhdGVQcm9wZXJ0eVxyXG5cclxuLy8gUmVib290XHJcbi8vXHJcbi8vIEdsb2JhbCByZXNldHMgdG8gY29tbW9uIEhUTUwgZWxlbWVudHMgYW5kIG1vcmUgZm9yIGVhc2llciB1c2FnZSBieSBCb290c3RyYXAuXHJcbi8vIEFkZHMgYWRkaXRpb25hbCBydWxlcyBvbiB0b3Agb2YgTm9ybWFsaXplLmNzcywgaW5jbHVkaW5nIHNldmVyYWwgb3ZlcnJpZGVzLlxyXG5cclxuXHJcbi8vIFJlc2V0IHRoZSBib3gtc2l6aW5nXHJcbi8vXHJcbi8vIENoYW5nZSBmcm9tIGBib3gtc2l6aW5nOiBjb250ZW50LWJveGAgdG8gYGJvcmRlci1ib3hgIHNvIHRoYXQgd2hlbiB5b3UgYWRkXHJcbi8vIGBwYWRkaW5nYCBvciBgYm9yZGVyYHMgdG8gYW4gZWxlbWVudCwgdGhlIG92ZXJhbGwgZGVjbGFyZWQgYHdpZHRoYCBkb2VzIG5vdFxyXG4vLyBjaGFuZ2UuIEZvciBleGFtcGxlLCBgd2lkdGg6IDEwMHB4O2Agd2lsbCBhbHdheXMgYmUgYDEwMHB4YCBkZXNwaXRlIHRoZVxyXG4vLyBgYm9yZGVyOiAxMHB4IHNvbGlkIHJlZDtgIGFuZCBgcGFkZGluZzogMjBweDtgLlxyXG4vL1xyXG4vLyBIZWFkcyB1cCEgVGhpcyByZXNldCBtYXkgY2F1c2UgY29uZmxpY3RzIHdpdGggc29tZSB0aGlyZC1wYXJ0eSB3aWRnZXRzLiBGb3JcclxuLy8gcmVjb21tZW5kYXRpb25zIG9uIHJlc29sdmluZyBzdWNoIGNvbmZsaWN0cywgc2VlXHJcbi8vIGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS9nZXR0aW5nLXN0YXJ0ZWQvI3RoaXJkLWJveC1zaXppbmcuXHJcbi8vXHJcbi8vIENyZWRpdDogaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9pbmhlcml0aW5nLWJveC1zaXppbmctcHJvYmFibHktc2xpZ2h0bHktYmV0dGVyLWJlc3QtcHJhY3RpY2UvXHJcblxyXG5odG1sIHtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG4qLFxyXG4qOjpiZWZvcmUsXHJcbio6OmFmdGVyIHtcclxuICBib3gtc2l6aW5nOiBpbmhlcml0O1xyXG59XHJcblxyXG5cclxuLy8gTWFrZSB2aWV3cG9ydCByZXNwb25zaXZlXHJcbi8vXHJcbi8vIEB2aWV3cG9ydCBpcyBuZWVkZWQgYmVjYXVzZSBJRSAxMCsgZG9lc24ndCBob25vciA8bWV0YSBuYW1lPVwidmlld3BvcnRcIj4gaW5cclxuLy8gc29tZSBjYXNlcy4gU2VlIGh0dHBzOi8vdGlta2FkbGVjLmNvbS8yMDEyLzEwL2llMTAtc25hcC1tb2RlLWFuZC1yZXNwb25zaXZlLWRlc2lnbi8uXHJcbi8vIEV2ZW50dWFsbHkgQHZpZXdwb3J0IHdpbGwgcmVwbGFjZSA8bWV0YSBuYW1lPVwidmlld3BvcnRcIj4uXHJcbi8vXHJcbi8vIEhvd2V2ZXIsIGBkZXZpY2Utd2lkdGhgIGlzIGJyb2tlbiBvbiBJRSAxMCBvbiBXaW5kb3dzIChQaG9uZSkgOCxcclxuLy8gKHNlZSBodHRwczovL3RpbWthZGxlYy5jb20vMjAxMy8wMS93aW5kb3dzLXBob25lLTgtYW5kLWRldmljZS13aWR0aC8gYW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTA0OTcpXHJcbi8vIGFuZCB0aGUgZml4IGZvciB0aGF0IGludm9sdmVzIGEgc25pcHBldCBvZiBKYXZhU2NyaXB0IHRvIHNuaWZmIHRoZSB1c2VyIGFnZW50XHJcbi8vIGFuZCBhcHBseSBzb21lIGNvbmRpdGlvbmFsIENTUy5cclxuLy9cclxuLy8gU2VlIGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS9nZXR0aW5nLXN0YXJ0ZWQvI3N1cHBvcnQtaWUxMC13aWR0aCBmb3IgdGhlIHJlbGV2YW50IGhhY2suXHJcbi8vXHJcbi8vIFdyYXAgYEB2aWV3cG9ydGAgd2l0aCBgQGF0LXJvb3RgIGZvciB3aGVuIGZvbGtzIGRvIGEgbmVzdGVkIGltcG9ydCAoZS5nLixcclxuLy8gYC5jbGFzcy1uYW1lIHsgQGltcG9ydCBcImJvb3RzdHJhcFwiOyB9YCkuXHJcbkBhdC1yb290IHtcclxuICBALW1zLXZpZXdwb3J0IHsgd2lkdGg6IGRldmljZS13aWR0aDsgfVxyXG59XHJcblxyXG5cclxuLy9cclxuLy8gUmVzZXQgSFRNTCwgYm9keSwgYW5kIG1vcmVcclxuLy9cclxuXHJcbmh0bWwge1xyXG4gIC8vIFNldHMgYSBzcGVjaWZpYyBkZWZhdWx0IGBmb250LXNpemVgIGZvciB1c2VyIHdpdGggYHJlbWAgdHlwZSBzY2FsZXMuXHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXJvb3Q7XHJcbiAgLy8gQXMgYSBzaWRlLWVmZmVjdCBvZiBzZXR0aW5nIHRoZSBAdmlld3BvcnQgYWJvdmUsXHJcbiAgLy8gSUUxMSAmIEVkZ2UgbWFrZSB0aGUgc2Nyb2xsYmFyIG92ZXJsYXAgdGhlIGNvbnRlbnQgYW5kIGF1dG9tYXRpY2FsbHkgaGlkZSBpdHNlbGYgd2hlbiBub3QgaW4gdXNlLlxyXG4gIC8vIFVuZm9ydHVuYXRlbHksIHRoZSBhdXRvLXNob3dpbmcgb2YgdGhlIHNjcm9sbGJhciBpcyBzb21ldGltZXMgdG9vIHNlbnNpdGl2ZSxcclxuICAvLyB0aHVzIG1ha2luZyBpdCBoYXJkIHRvIGNsaWNrIG9uIHN0dWZmIG5lYXIgdGhlIHJpZ2h0IGVkZ2Ugb2YgdGhlIHBhZ2UuXHJcbiAgLy8gU28gd2UgYWRkIHRoaXMgc3R5bGUgdG8gZm9yY2UgSUUxMSAmIEVkZ2UgdG8gdXNlIGEgXCJub3JtYWxcIiwgbm9uLW92ZXJsYXBwaW5nLCBub24tYXV0by1oaWRpbmcgc2Nyb2xsYmFyLlxyXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE4NTQzXHJcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBzY3JvbGxiYXI7XHJcbiAgLy8gQ2hhbmdlcyB0aGUgZGVmYXVsdCB0YXAgaGlnaGxpZ2h0IHRvIGJlIGNvbXBsZXRlbHkgdHJhbnNwYXJlbnQgaW4gaU9TLlxyXG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLDAsMCwwKTtcclxufVxyXG5cclxuYm9keSB7XHJcbiAgLy8gTWFrZSB0aGUgYGJvZHlgIHVzZSB0aGUgYGZvbnQtc2l6ZS1yb290YFxyXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcclxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcclxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcbiAgLy8gR28gZWFzeSBvbiB0aGUgZXllcyBhbmQgdXNlIHNvbWV0aGluZyBvdGhlciB0aGFuIGAjMDAwYCBmb3IgdGV4dFxyXG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcclxuICAvLyBCeSBkZWZhdWx0LCBgPGJvZHk+YCBoYXMgbm8gYGJhY2tncm91bmQtY29sb3JgIHNvIHdlIHNldCBvbmUgYXMgYSBiZXN0IHByYWN0aWNlLlxyXG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xyXG59XHJcblxyXG4vLyBTdXBwcmVzcyB0aGUgZm9jdXMgb3V0bGluZSBvbiBlbGVtZW50cyB0aGF0IGNhbm5vdCBiZSBhY2Nlc3NlZCB2aWEga2V5Ym9hcmQuXHJcbi8vIFRoaXMgcHJldmVudHMgYW4gdW53YW50ZWQgZm9jdXMgb3V0bGluZSBmcm9tIGFwcGVhcmluZyBhcm91bmQgZWxlbWVudHMgdGhhdFxyXG4vLyBtaWdodCBzdGlsbCByZXNwb25kIHRvIHBvaW50ZXIgZXZlbnRzLlxyXG4vL1xyXG4vLyBDcmVkaXQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9zdWl0Y3NzL2Jhc2VcclxuW3RhYmluZGV4PVwiLTFcIl06Zm9jdXMge1xyXG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuXHJcbi8vXHJcbi8vIFR5cG9ncmFwaHlcclxuLy9cclxuXHJcbi8vIFJlbW92ZSB0b3AgbWFyZ2lucyBmcm9tIGhlYWRpbmdzXHJcbi8vXHJcbi8vIEJ5IGRlZmF1bHQsIGA8aDE+YC1gPGg2PmAgYWxsIHJlY2VpdmUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gV2UgbnVrZSB0aGUgdG9wXHJcbi8vIG1hcmdpbiBmb3IgZWFzaWVyIGNvbnRyb2wgd2l0aGluIHR5cGUgc2NhbGVzIGFzIGl0IGF2b2lkcyBtYXJnaW4gY29sbGFwc2luZy5cclxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcclxufVxyXG5cclxuLy8gUmVzZXQgbWFyZ2lucyBvbiBwYXJhZ3JhcGhzXHJcbi8vXHJcbi8vIFNpbWlsYXJseSwgdGhlIHRvcCBtYXJnaW4gb24gYDxwPmBzIGdldCByZXNldC4gSG93ZXZlciwgd2UgYWxzbyByZXNldCB0aGVcclxuLy8gYm90dG9tIG1hcmdpbiB0byB1c2UgYHJlbWAgdW5pdHMgaW5zdGVhZCBvZiBgZW1gLlxyXG5wIHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XHJcbn1cclxuXHJcbi8vIEFiYnJldmlhdGlvbnMgYW5kIGFjcm9ueW1zXHJcbmFiYnJbdGl0bGVdLFxyXG4vLyBBZGQgZGF0YS0qIGF0dHJpYnV0ZSB0byBoZWxwIG91dCBvdXIgdG9vbHRpcCBwbHVnaW4sIHBlciBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzUyNTdcclxuYWJicltkYXRhLW9yaWdpbmFsLXRpdGxlXSB7XHJcbiAgY3Vyc29yOiBoZWxwO1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgJGFiYnItYm9yZGVyLWNvbG9yO1xyXG59XHJcblxyXG5hZGRyZXNzIHtcclxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcclxufVxyXG5cclxub2wsXHJcbnVsLFxyXG5kbCB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG59XHJcblxyXG5vbCBvbCxcclxudWwgdWwsXHJcbm9sIHVsLFxyXG51bCBvbCB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxufVxyXG5cclxuZHQge1xyXG4gIGZvbnQtd2VpZ2h0OiAkZHQtZm9udC13ZWlnaHQ7XHJcbn1cclxuXHJcbmRkIHtcclxuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcclxuICBtYXJnaW4tbGVmdDogMDsgLy8gVW5kbyBicm93c2VyIGRlZmF1bHRcclxufVxyXG5cclxuYmxvY2txdW90ZSB7XHJcbiAgbWFyZ2luOiAwIDAgMXJlbTtcclxufVxyXG5cclxuXHJcbi8vXHJcbi8vIExpbmtzXHJcbi8vXHJcblxyXG5hIHtcclxuICBjb2xvcjogJGxpbmstY29sb3I7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xyXG5cclxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XHJcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XHJcbiAgfVxyXG5cclxuICAmOmZvY3VzIHtcclxuICAgIEBpbmNsdWRlIHRhYi1mb2N1cygpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gQW5kIHVuZG8gdGhlc2Ugc3R5bGVzIGZvciBwbGFjZWhvbGRlciBsaW5rcy9uYW1lZCBhbmNob3JzICh3aXRob3V0IGhyZWYpXHJcbi8vIHdoaWNoIGhhdmUgbm90IGJlZW4gbWFkZSBleHBsaWNpdGx5IGtleWJvYXJkLWZvY3VzYWJsZSAod2l0aG91dCB0YWJpbmRleCkuXHJcbi8vIEl0IHdvdWxkIGJlIG1vcmUgc3RyYWlnaHRmb3J3YXJkIHRvIGp1c3QgdXNlIGFbaHJlZl0gaW4gcHJldmlvdXMgYmxvY2ssIGJ1dCB0aGF0XHJcbi8vIGNhdXNlcyBzcGVjaWZpY2l0eSBpc3N1ZXMgaW4gbWFueSBvdGhlciBzdHlsZXMgdGhhdCBhcmUgdG9vIGNvbXBsZXggdG8gZml4LlxyXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTQwMlxyXG5cclxuYTpub3QoW2hyZWZdKTpub3QoW3RhYmluZGV4XSkge1xyXG4gIGNvbG9yOiBpbmhlcml0O1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgfVxyXG5cclxuICAmOmZvY3VzIHtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy9cclxuLy8gQ29kZVxyXG4vL1xyXG5cclxucHJlIHtcclxuICAvLyBSZW1vdmUgYnJvd3NlciBkZWZhdWx0IHRvcCBtYXJnaW5cclxuICBtYXJnaW4tdG9wOiAwO1xyXG4gIC8vIFJlc2V0IGJyb3dzZXIgZGVmYXVsdCBvZiBgMWVtYCB0byB1c2UgYHJlbWBzXHJcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuICAvLyBOb3JtYWxpemUgdjQgcmVtb3ZlZCB0aGlzIHByb3BlcnR5LCBjYXVzaW5nIGA8cHJlPmAgY29udGVudCB0byBicmVhayBvdXQgb2Ygd3JhcHBpbmcgY29kZSBzbmlwcGV0c1xyXG4gIG92ZXJmbG93OiBhdXRvO1xyXG59XHJcblxyXG5cclxuLy9cclxuLy8gRmlndXJlc1xyXG4vL1xyXG5cclxuZmlndXJlIHtcclxuICAvLyBOb3JtYWxpemUgYWRkcyBgbWFyZ2luYCB0byBgZmlndXJlYHMgYXMgYnJvd3NlcnMgYXBwbHkgaXQgaW5jb25zaXN0ZW50bHkuXHJcbiAgLy8gV2UgcmVzZXQgdGhhdCB0byBjcmVhdGUgYSBiZXR0ZXIgZmxvdyBpbi1wYWdlLlxyXG4gIG1hcmdpbjogMCAwIDFyZW07XHJcbn1cclxuXHJcblxyXG4vL1xyXG4vLyBJbWFnZXNcclxuLy9cclxuXHJcbmltZyB7XHJcbiAgLy8gQnkgZGVmYXVsdCwgYDxpbWc+YHMgYXJlIGBpbmxpbmUtYmxvY2tgLiBUaGlzIGFzc3VtZXMgdGhhdCwgYW5kIHZlcnRpY2FsbHlcclxuICAvLyBjZW50ZXJzIHRoZW0uIFRoaXMgd29uJ3QgYXBwbHkgc2hvdWxkIHlvdSByZXNldCB0aGVtIHRvIGBibG9ja2AgbGV2ZWwuXHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAvLyBOb3RlOiBgPGltZz5gcyBhcmUgZGVsaWJlcmF0ZWx5IG5vdCBtYWRlIHJlc3BvbnNpdmUgYnkgZGVmYXVsdC5cclxuICAvLyBGb3IgdGhlIHJhdGlvbmFsZSBiZWhpbmQgdGhpcywgc2VlIHRoZSBjb21tZW50cyBvbiB0aGUgYC5pbWctZmx1aWRgIGNsYXNzLlxyXG59XHJcblxyXG5cclxuLy8gaU9TIFwiY2xpY2thYmxlIGVsZW1lbnRzXCIgZml4IGZvciByb2xlPVwiYnV0dG9uXCJcclxuLy9cclxuLy8gRml4ZXMgXCJjbGlja2FiaWxpdHlcIiBpc3N1ZSAoYW5kIG1vcmUgZ2VuZXJhbGx5LCB0aGUgZmlyaW5nIG9mIGV2ZW50cyBzdWNoIGFzIGZvY3VzIGFzIHdlbGwpXHJcbi8vIGZvciB0cmFkaXRpb25hbGx5IG5vbi1mb2N1c2FibGUgZWxlbWVudHMgd2l0aCByb2xlPVwiYnV0dG9uXCJcclxuLy8gc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXHJcblxyXG5bcm9sZT1cImJ1dHRvblwiXSB7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG5cclxuLy8gQXZvaWQgMzAwbXMgY2xpY2sgZGVsYXkgb24gdG91Y2ggZGV2aWNlcyB0aGF0IHN1cHBvcnQgdGhlIGB0b3VjaC1hY3Rpb25gIENTUyBwcm9wZXJ0eS5cclxuLy9cclxuLy8gSW4gcGFydGljdWxhciwgdW5saWtlIG1vc3Qgb3RoZXIgYnJvd3NlcnMsIElFMTErRWRnZSBvbiBXaW5kb3dzIDEwIG9uIHRvdWNoIGRldmljZXMgYW5kIElFIE1vYmlsZSAxMC0xMVxyXG4vLyBET04nVCByZW1vdmUgdGhlIGNsaWNrIGRlbGF5IHdoZW4gYDxtZXRhIG5hbWU9XCJ2aWV3cG9ydFwiIGNvbnRlbnQ9XCJ3aWR0aD1kZXZpY2Utd2lkdGhcIj5gIGlzIHByZXNlbnQuXHJcbi8vIEhvd2V2ZXIsIHRoZXkgRE8gc3VwcG9ydCByZW1vdmluZyB0aGUgY2xpY2sgZGVsYXkgdmlhIGB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbmAuXHJcbi8vIFNlZTpcclxuLy8gKiBodHRwczovL3Y0LWFscGhhLmdldGJvb3RzdHJhcC5jb20vY29udGVudC9yZWJvb3QvI2NsaWNrLWRlbGF5LW9wdGltaXphdGlvbi1mb3ItdG91Y2hcclxuLy8gKiBodHRwOi8vY2FuaXVzZS5jb20vI2ZlYXQ9Y3NzLXRvdWNoLWFjdGlvblxyXG4vLyAqIGh0dHBzOi8vcGF0cmlja2hsYXVrZS5naXRodWIuaW8vdG91Y2gvdGVzdHMvcmVzdWx0cy8jc3VwcHJlc3NpbmctMzAwbXMtZGVsYXlcclxuXHJcbmEsXHJcbmFyZWEsXHJcbmJ1dHRvbixcclxuW3JvbGU9XCJidXR0b25cIl0sXHJcbmlucHV0LFxyXG5sYWJlbCxcclxuc2VsZWN0LFxyXG5zdW1tYXJ5LFxyXG50ZXh0YXJlYSB7XHJcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XHJcbn1cclxuXHJcblxyXG4vL1xyXG4vLyBUYWJsZXNcclxuLy9cclxuXHJcbnRhYmxlIHtcclxuICAvLyBObyBsb25nZXIgcGFydCBvZiBOb3JtYWxpemUgc2luY2UgdjRcclxuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG4gIC8vIFJlc2V0IGZvciBuZXN0aW5nIHdpdGhpbiBwYXJlbnRzIHdpdGggYGJhY2tncm91bmQtY29sb3JgLlxyXG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZztcclxufVxyXG5cclxuY2FwdGlvbiB7XHJcbiAgcGFkZGluZy10b3A6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XHJcbiAgcGFkZGluZy1ib3R0b206ICR0YWJsZS1jZWxsLXBhZGRpbmc7XHJcbiAgY29sb3I6ICR0ZXh0LW11dGVkO1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207XHJcbn1cclxuXHJcbnRoIHtcclxuICAvLyBDZW50ZXJlZCBieSBkZWZhdWx0LCBidXQgbGVmdC1hbGlnbi1lZCB0byBtYXRjaCB0aGUgYHRkYHMgYmVsb3cuXHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxufVxyXG5cclxuXHJcbi8vXHJcbi8vIEZvcm1zXHJcbi8vXHJcblxyXG5sYWJlbCB7XHJcbiAgLy8gQWxsb3cgbGFiZWxzIHRvIHVzZSBgbWFyZ2luYCBmb3Igc3BhY2luZy5cclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XHJcbn1cclxuXHJcbi8vIFdvcmsgYXJvdW5kIGEgRmlyZWZveC9JRSBidWcgd2hlcmUgdGhlIHRyYW5zcGFyZW50IGBidXR0b25gIGJhY2tncm91bmRcclxuLy8gcmVzdWx0cyBpbiBhIGxvc3Mgb2YgdGhlIGRlZmF1bHQgYGJ1dHRvbmAgZm9jdXMgc3R5bGVzLlxyXG4vL1xyXG4vLyBDcmVkaXQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9zdWl0Y3NzL2Jhc2UvXHJcbmJ1dHRvbjpmb2N1cyB7XHJcbiAgb3V0bGluZTogMXB4IGRvdHRlZDtcclxuICBvdXRsaW5lOiA1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XHJcbn1cclxuXHJcbmlucHV0LFxyXG5idXR0b24sXHJcbnNlbGVjdCxcclxudGV4dGFyZWEge1xyXG4gIC8vIE5vcm1hbGl6ZSBpbmNsdWRlcyBgZm9udDogaW5oZXJpdDtgLCBzbyBgZm9udC1mYW1pbHlgLiBgZm9udC1zaXplYCwgZXRjIGFyZVxyXG4gIC8vIHByb3Blcmx5IGluaGVyaXRlZC4gSG93ZXZlciwgYGxpbmUtaGVpZ2h0YCBpc24ndCBpbmhlcml0ZWQgdGhlcmUuXHJcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcclxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuICAvLyBBcHBseSBhIGRpc2FibGVkIGN1cnNvciBmb3IgcmFkaW9zIGFuZCBjaGVja2JveGVzLlxyXG4gIC8vXHJcbiAgLy8gTm90ZTogTmVpdGhlciByYWRpb3Mgbm9yIGNoZWNrYm94ZXMgY2FuIGJlIHJlYWRvbmx5LlxyXG4gICY6ZGlzYWJsZWQge1xyXG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmlucHV0W3R5cGU9XCJkYXRlXCJdLFxyXG5pbnB1dFt0eXBlPVwidGltZVwiXSxcclxuaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxyXG5pbnB1dFt0eXBlPVwibW9udGhcIl0ge1xyXG4gIC8vIFJlbW92ZSB0aGUgZGVmYXVsdCBhcHBlYXJhbmNlIG9mIHRlbXBvcmFsIGlucHV0cyB0byBhdm9pZCBhIE1vYmlsZSBTYWZhcmlcclxuICAvLyBidWcgd2hlcmUgc2V0dGluZyBhIGN1c3RvbSBsaW5lLWhlaWdodCBwcmV2ZW50cyB0ZXh0IGZyb20gYmVpbmcgdmVydGljYWxseVxyXG4gIC8vIGNlbnRlcmVkIHdpdGhpbiB0aGUgaW5wdXQuXHJcbiAgLy9cclxuICAvLyBCdWcgcmVwb3J0OiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExMjY2XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBsaXN0Ym94O1xyXG59XHJcblxyXG50ZXh0YXJlYSB7XHJcbiAgLy8gVGV4dGFyZWFzIHNob3VsZCByZWFsbHkgb25seSByZXNpemUgdmVydGljYWxseSBzbyB0aGV5IGRvbid0IGJyZWFrIHRoZWlyIChob3Jpem9udGFsKSBjb250YWluZXJzLlxyXG4gIHJlc2l6ZTogdmVydGljYWw7XHJcbn1cclxuXHJcbmZpZWxkc2V0IHtcclxuICAvLyBDaHJvbWUgYW5kIEZpcmVmb3ggc2V0IGEgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXHJcbiAgLy8gc28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgaXQgYmVoYXZlcyBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxyXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEyMzU5LlxyXG4gIG1pbi13aWR0aDogMDtcclxuICAvLyBSZXNldCB0aGUgZGVmYXVsdCBvdXRsaW5lIGJlaGF2aW9yIG9mIGZpZWxkc2V0cyBzbyB0aGV5IGRvbid0IGFmZmVjdCBwYWdlIGxheW91dC5cclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbjogMDtcclxuICBib3JkZXI6IDA7XHJcbn1cclxuXHJcbmxlZ2VuZCB7XHJcbiAgLy8gUmVzZXQgdGhlIGVudGlyZSBsZWdlbmQgZWxlbWVudCB0byBtYXRjaCB0aGUgYGZpZWxkc2V0YFxyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XHJcbiAgZm9udC1zaXplOiAxLjVyZW07XHJcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xyXG4gIC8vIFRoaXMgb3ZlcnJpZGVzIHRoZSBleHRyYSByb3VuZGVkIGNvcm5lcnMgb24gc2VhcmNoIGlucHV0cyBpbiBpT1Mgc28gdGhhdCBvdXJcclxuICAvLyBgLmZvcm0tY29udHJvbGAgY2xhc3MgY2FuIHByb3Blcmx5IHN0eWxlIHRoZW0uIE5vdGUgdGhhdCB0aGlzIGNhbm5vdCBzaW1wbHlcclxuICAvLyBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXHJcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU4Ni5cclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbn1cclxuXHJcbi8vIHRvZG86IG5lZWRlZD9cclxub3V0cHV0IHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbi8vICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcclxuLy8gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XHJcbi8vICBjb2xvcjogJGlucHV0LWNvbG9yO1xyXG59XHJcblxyXG4vLyBBbHdheXMgaGlkZSBhbiBlbGVtZW50IHdpdGggdGhlIGBoaWRkZW5gIEhUTUwgYXR0cmlidXRlIChmcm9tIFB1cmVDU1MpLlxyXG5baGlkZGVuXSB7XHJcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcbiIsIi8vXHJcbi8vIEhlYWRpbmdzXHJcbi8vXHJcblxyXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LFxyXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcclxuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcclxuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xyXG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XHJcbiAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcclxuICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xyXG59XHJcblxyXG5oMSwgLmgxIHsgZm9udC1zaXplOiAkZm9udC1zaXplLWgxOyB9XHJcbmgyLCAuaDIgeyBmb250LXNpemU6ICRmb250LXNpemUtaDI7IH1cclxuaDMsIC5oMyB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMzsgfVxyXG5oNCwgLmg0IHsgZm9udC1zaXplOiAkZm9udC1zaXplLWg0OyB9XHJcbmg1LCAuaDUgeyBmb250LXNpemU6ICRmb250LXNpemUtaDU7IH1cclxuaDYsIC5oNiB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNjsgfVxyXG5cclxuLmxlYWQge1xyXG4gIGZvbnQtc2l6ZTogJGxlYWQtZm9udC1zaXplO1xyXG4gIGZvbnQtd2VpZ2h0OiAkbGVhZC1mb250LXdlaWdodDtcclxufVxyXG5cclxuLy8gVHlwZSBkaXNwbGF5IGNsYXNzZXNcclxuLmRpc3BsYXktMSB7XHJcbiAgZm9udC1zaXplOiAkZGlzcGxheTEtc2l6ZTtcclxuICBmb250LXdlaWdodDogJGRpc3BsYXkxLXdlaWdodDtcclxufVxyXG4uZGlzcGxheS0yIHtcclxuICBmb250LXNpemU6ICRkaXNwbGF5Mi1zaXplO1xyXG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTItd2VpZ2h0O1xyXG59XHJcbi5kaXNwbGF5LTMge1xyXG4gIGZvbnQtc2l6ZTogJGRpc3BsYXkzLXNpemU7XHJcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5My13ZWlnaHQ7XHJcbn1cclxuLmRpc3BsYXktNCB7XHJcbiAgZm9udC1zaXplOiAkZGlzcGxheTQtc2l6ZTtcclxuICBmb250LXdlaWdodDogJGRpc3BsYXk0LXdlaWdodDtcclxufVxyXG5cclxuXHJcbi8vXHJcbi8vIEhvcml6b250YWwgcnVsZXNcclxuLy9cclxuXHJcbmhyIHtcclxuICBtYXJnaW4tdG9wOiAkc3BhY2VyLXk7XHJcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlci15O1xyXG4gIGJvcmRlcjogMDtcclxuICBib3JkZXItdG9wOiAkaHItYm9yZGVyLXdpZHRoIHNvbGlkICRoci1ib3JkZXItY29sb3I7XHJcbn1cclxuXHJcblxyXG4vL1xyXG4vLyBFbXBoYXNpc1xyXG4vL1xyXG5cclxuc21hbGwsXHJcbi5zbWFsbCB7XHJcbiAgZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbn1cclxuXHJcbm1hcmssXHJcbi5tYXJrIHtcclxuICBwYWRkaW5nOiAkbWFyay1wYWRkaW5nO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRtYXJrLWJnO1xyXG59XHJcblxyXG5cclxuLy9cclxuLy8gTGlzdHNcclxuLy9cclxuXHJcbi5saXN0LXVuc3R5bGVkIHtcclxuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xyXG59XHJcblxyXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xyXG4ubGlzdC1pbmxpbmUge1xyXG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XHJcbn1cclxuLmxpc3QtaW5saW5lLWl0ZW0ge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgIG1hcmdpbi1yaWdodDogJGxpc3QtaW5saW5lLXBhZGRpbmc7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy9cclxuLy8gTWlzY1xyXG4vL1xyXG5cclxuLy8gQnVpbGRzIG9uIGBhYmJyYFxyXG4uaW5pdGlhbGlzbSB7XHJcbiAgZm9udC1zaXplOiA5MCU7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG5cclxuLy8gQmxvY2txdW90ZXNcclxuLmJsb2NrcXVvdGUge1xyXG4gIHBhZGRpbmc6ICgkc3BhY2VyIC8gMikgJHNwYWNlcjtcclxuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xyXG4gIGZvbnQtc2l6ZTogJGJsb2NrcXVvdGUtZm9udC1zaXplO1xyXG4gIGJvcmRlci1sZWZ0OiAkYmxvY2txdW90ZS1ib3JkZXItd2lkdGggc29saWQgJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yO1xyXG59XHJcblxyXG4uYmxvY2txdW90ZS1mb290ZXIge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGZvbnQtc2l6ZTogODAlOyAvLyBiYWNrIHRvIGRlZmF1bHQgZm9udC1zaXplXHJcbiAgY29sb3I6ICRibG9ja3F1b3RlLXNtYWxsLWNvbG9yO1xyXG5cclxuICAmOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXDIwMTQgXFwwMEEwXCI7IC8vIGVtIGRhc2gsIG5ic3BcclxuICB9XHJcbn1cclxuXHJcbi8vIE9wcG9zaXRlIGFsaWdubWVudCBvZiBibG9ja3F1b3RlXHJcbi5ibG9ja3F1b3RlLXJldmVyc2Uge1xyXG4gIHBhZGRpbmctcmlnaHQ6ICRzcGFjZXI7XHJcbiAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gIGJvcmRlci1yaWdodDogJGJsb2NrcXVvdGUtYm9yZGVyLXdpZHRoIHNvbGlkICRibG9ja3F1b3RlLWJvcmRlci1jb2xvcjtcclxuICBib3JkZXItbGVmdDogMDtcclxufVxyXG5cclxuLmJsb2NrcXVvdGUtcmV2ZXJzZSAuYmxvY2txdW90ZS1mb290ZXIge1xyXG4gICY6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gIH1cclxuICAmOjphZnRlciB7XHJcbiAgICBjb250ZW50OiBcIlxcMDBBMCBcXDIwMTRcIjsgLy8gbmJzcCwgZW0gZGFzaFxyXG4gIH1cclxufVxyXG5cclxuQGlmIG5vdCAkZW5hYmxlLWZsZXgge1xyXG4gIC8vIENsZWFuIHVwIHNvbWUgaG9yaXpvbnRhbCBgPGRsPmBzIGJ1aWx0IHdpdGggZ3JpZHNcclxuICAvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBRdWFsaWZ5aW5nRWxlbWVudFxyXG4gIGRsLnJvdyB7XHJcbiAgICA+IGRkICsgZHQge1xyXG4gICAgICBjbGVhcjogbGVmdDtcclxuICAgIH1cclxuICB9XHJcbiAgLy8gc2Nzcy1saW50OmVuYWJsZSBRdWFsaWZ5aW5nRWxlbWVudFxyXG59XHJcbiIsIi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxyXG4vL1xyXG4vLyBUaGlzIGlzIHB1cnBvc2VmdWxseSBvcHQtaW4gdmlhIGFuIGV4cGxpY2l0IGNsYXNzIHJhdGhlciB0aGFuIGJlaW5nIHRoZSBkZWZhdWx0IGZvciBhbGwgYDxpbWc+YHMuXHJcbi8vIFdlIHByZXZpb3VzbHkgdHJpZWQgdGhlIFwiaW1hZ2VzIGFyZSByZXNwb25zaXZlIGJ5IGRlZmF1bHRcIiBhcHByb2FjaCBpbiBCb290c3RyYXAgdjIsXHJcbi8vIGFuZCBhYmFuZG9uZWQgaXQgaW4gQm9vdHN0cmFwIHYzIGJlY2F1c2UgaXQgYnJlYWtzIGxvdHMgb2YgdGhpcmQtcGFydHkgd2lkZ2V0cyAoaW5jbHVkaW5nIEdvb2dsZSBNYXBzKVxyXG4vLyB3aGljaCB3ZXJlbid0IGV4cGVjdGluZyB0aGUgaW1hZ2VzIHdpdGhpbiB0aGVtc2VsdmVzIHRvIGJlIGludm9sdW50YXJpbHkgcmVzaXplZC5cclxuLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODE3OFxyXG4uaW1nLWZsdWlkIHtcclxuICBAaW5jbHVkZSBpbWctZmx1aWQ7XHJcbn1cclxuXHJcblxyXG4vLyBJbWFnZSB0aHVtYm5haWxzXHJcbi5pbWctdGh1bWJuYWlsIHtcclxuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcclxuICBib3JkZXI6ICR0aHVtYm5haWwtYm9yZGVyLXdpZHRoIHNvbGlkICR0aHVtYm5haWwtYm9yZGVyLWNvbG9yO1xyXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzKTtcclxuICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW4tb3V0O1xyXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHRodW1ibmFpbC1ib3gtc2hhZG93KTtcclxuXHJcbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXHJcbiAgQGluY2x1ZGUgaW1nLWZsdWlkO1xyXG59XHJcblxyXG4vL1xyXG4vLyBGaWd1cmVzXHJcbi8vXHJcblxyXG4uZmlndXJlIHtcclxuICAvLyBFbnN1cmVzIHRoZSBjYXB0aW9uJ3MgdGV4dCBhbGlnbnMgd2l0aCB0aGUgaW1hZ2UuXHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG59XHJcblxyXG4uZmlndXJlLWltZyB7XHJcbiAgbWFyZ2luLWJvdHRvbTogKCRzcGFjZXIteSAvIDIpO1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG59XHJcblxyXG4uZmlndXJlLWNhcHRpb24ge1xyXG4gIGZvbnQtc2l6ZTogJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZTtcclxuICBjb2xvcjogJGdyYXktbGlnaHQ7XHJcbn1cclxuIiwiLy8gSW5saW5lIGFuZCBibG9jayBjb2RlIHN0eWxlc1xyXG5jb2RlLFxyXG5rYmQsXHJcbnByZSxcclxuc2FtcCB7XHJcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XHJcbn1cclxuXHJcbi8vIElubGluZSBjb2RlXHJcbmNvZGUge1xyXG4gIHBhZGRpbmc6ICRjb2RlLXBhZGRpbmcteSAkY29kZS1wYWRkaW5nLXg7XHJcbiAgZm9udC1zaXplOiAkY29kZS1mb250LXNpemU7XHJcbiAgY29sb3I6ICRjb2RlLWNvbG9yO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2RlLWJnO1xyXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xyXG59XHJcblxyXG4vLyBVc2VyIGlucHV0IHR5cGljYWxseSBlbnRlcmVkIHZpYSBrZXlib2FyZFxyXG5rYmQge1xyXG4gIHBhZGRpbmc6ICRjb2RlLXBhZGRpbmcteSAkY29kZS1wYWRkaW5nLXg7XHJcbiAgZm9udC1zaXplOiAkY29kZS1mb250LXNpemU7XHJcbiAgY29sb3I6ICRrYmQtY29sb3I7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGtiZC1iZztcclxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXNtKTtcclxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRrYmQtYm94LXNoYWRvdyk7XHJcblxyXG4gIGtiZCB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgZm9udC1zaXplOiAxMDAlO1xyXG4gICAgZm9udC13ZWlnaHQ6ICRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0O1xyXG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcclxuICB9XHJcbn1cclxuXHJcbi8vIEJsb2NrcyBvZiBjb2RlXHJcbnByZSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4gIGZvbnQtc2l6ZTogJGNvZGUtZm9udC1zaXplO1xyXG4gIGNvbG9yOiAkcHJlLWNvbG9yO1xyXG5cclxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xyXG4gIGNvZGUge1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLy8gRW5hYmxlIHNjcm9sbGFibGUgYmxvY2tzIG9mIGNvZGVcclxuLnByZS1zY3JvbGxhYmxlIHtcclxuICBtYXgtaGVpZ2h0OiAkcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDtcclxuICBvdmVyZmxvdy15OiBzY3JvbGw7XHJcbn1cclxuIiwiLy8gQ29udGFpbmVyIHdpZHRoc1xyXG4vL1xyXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXHJcblxyXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xyXG4gIC5jb250YWluZXIge1xyXG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcclxuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyLW1heC13aWR0aHMoKTtcclxuICB9XHJcbn1cclxuXHJcbi8vIEZsdWlkIGNvbnRhaW5lclxyXG4vL1xyXG4vLyBVdGlsaXplcyB0aGUgbWl4aW4gbWVhbnQgZm9yIGZpeGVkIHdpZHRoIGNvbnRhaW5lcnMsIGJ1dCB3aXRob3V0IGFueSBkZWZpbmVkXHJcbi8vIHdpZHRoIGZvciBmbHVpZCwgZnVsbCB3aWR0aCBsYXlvdXRzLlxyXG5cclxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcclxuICAuY29udGFpbmVyLWZsdWlkIHtcclxuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyKCk7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBSb3dcclxuLy9cclxuLy8gUm93cyBjb250YWluIGFuZCBjbGVhciB0aGUgZmxvYXRzIG9mIHlvdXIgY29sdW1ucy5cclxuXHJcbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XHJcbiAgLnJvdyB7XHJcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gQ29sdW1uc1xyXG4vL1xyXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXHJcblxyXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xyXG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XHJcbn1cclxuIiwiLy9cclxuLy8gQmFzaWMgQm9vdHN0cmFwIHRhYmxlXHJcbi8vXHJcblxyXG4udGFibGUge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xyXG5cclxuICB0aCxcclxuICB0ZCB7XHJcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xyXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgIGJvcmRlci10b3A6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcclxuICB9XHJcblxyXG4gIHRoZWFkIHRoIHtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XHJcbiAgICBib3JkZXItYm90dG9tOiAoMiAqICR0YWJsZS1ib3JkZXItd2lkdGgpIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XHJcbiAgfVxyXG5cclxuICB0Ym9keSArIHRib2R5IHtcclxuICAgIGJvcmRlci10b3A6ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCkgc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcclxuICB9XHJcblxyXG4gIC50YWJsZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcclxuICB9XHJcbn1cclxuXHJcblxyXG4vL1xyXG4vLyBDb25kZW5zZWQgdGFibGUgdy8gaGFsZiBwYWRkaW5nXHJcbi8vXHJcblxyXG4udGFibGUtc20ge1xyXG4gIHRoLFxyXG4gIHRkIHtcclxuICAgIHBhZGRpbmc6ICR0YWJsZS1zbS1jZWxsLXBhZGRpbmc7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gQm9yZGVyZWQgdmVyc2lvblxyXG4vL1xyXG4vLyBBZGQgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXHJcblxyXG4udGFibGUtYm9yZGVyZWQge1xyXG4gIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xyXG5cclxuICB0aCxcclxuICB0ZCB7XHJcbiAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcclxuICB9XHJcblxyXG4gIHRoZWFkIHtcclxuICAgIHRoLFxyXG4gICAgdGQge1xyXG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAoMiAqICR0YWJsZS1ib3JkZXItd2lkdGgpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIFplYnJhLXN0cmlwaW5nXHJcbi8vXHJcbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXHJcblxyXG4udGFibGUtc3RyaXBlZCB7XHJcbiAgdGJvZHkgdHI6bnRoLW9mLXR5cGUob2RkKSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmctYWNjZW50O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEhvdmVyIGVmZmVjdFxyXG4vL1xyXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXHJcblxyXG4udGFibGUtaG92ZXIge1xyXG4gIHRib2R5IHRyIHtcclxuICAgIEBpbmNsdWRlIGhvdmVyIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJnLWhvdmVyO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIFRhYmxlIGJhY2tncm91bmRzXHJcbi8vXHJcbi8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XHJcbi8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXHJcblxyXG4vLyBHZW5lcmF0ZSB0aGUgY29udGV4dHVhbCB2YXJpYW50c1xyXG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudChhY3RpdmUsICR0YWJsZS1iZy1hY3RpdmUpO1xyXG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudChzdWNjZXNzLCAkc3RhdGUtc3VjY2Vzcy1iZyk7XHJcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KGluZm8sICRzdGF0ZS1pbmZvLWJnKTtcclxuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQod2FybmluZywgJHN0YXRlLXdhcm5pbmctYmcpO1xyXG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudChkYW5nZXIsICRzdGF0ZS1kYW5nZXItYmcpO1xyXG5cclxuXHJcbi8vIEludmVyc2Ugc3R5bGVzXHJcbi8vXHJcbi8vIFNhbWUgdGFibGUgbWFya3VwLCBidXQgaW52ZXJ0ZWQgY29sb3Igc2NoZW1lOiBkYXJrIGJhY2tncm91bmQgYW5kIGxpZ2h0IHRleHQuXHJcblxyXG4udGhlYWQtaW52ZXJzZSB7XHJcbiAgdGgge1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1kYXJrO1xyXG4gIH1cclxufVxyXG5cclxuLnRoZWFkLWRlZmF1bHQge1xyXG4gIHRoIHtcclxuICAgIGNvbG9yOiAkZ3JheTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWxpZ2h0ZXI7XHJcbiAgfVxyXG59XHJcblxyXG4udGFibGUtaW52ZXJzZSB7XHJcbiAgY29sb3I6ICRncmF5LWxpZ2h0ZXI7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZGFyaztcclxuXHJcbiAgdGgsXHJcbiAgdGQsXHJcbiAgdGhlYWQgdGgge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkZ3JheTtcclxuICB9XHJcblxyXG4gICYudGFibGUtYm9yZGVyZWQge1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gIH1cclxufVxyXG5cclxuXHJcblxyXG4vLyBSZXNwb25zaXZlIHRhYmxlc1xyXG4vL1xyXG4vLyBXcmFwIHlvdXIgdGFibGVzIGluIGAudGFibGUtcmVzcG9uc2l2ZWAgYW5kIHdlJ2xsIG1ha2UgdGhlbSBtb2JpbGUgZnJpZW5kbHlcclxuLy8gYnkgZW5hYmxpbmcgaG9yaXpvbnRhbCBzY3JvbGxpbmcuIE9ubHkgYXBwbGllcyA8NzY4cHguIEV2ZXJ5dGhpbmcgYWJvdmUgdGhhdFxyXG4vLyB3aWxsIGRpc3BsYXkgbm9ybWFsbHkuXHJcblxyXG4udGFibGUtcmVzcG9uc2l2ZSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgbWluLWhlaWdodDogMCU7IC8vIFdvcmthcm91bmQgZm9yIElFOSBidWcgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE0ODM3KVxyXG4gIG92ZXJmbG93LXg6IGF1dG87XHJcblxyXG4gIC8vIFRPRE86IGZpbmQgb3V0IGlmIHdlIG5lZWQgdGhpcyBzdGlsbC5cclxuICAvL1xyXG4gIC8vIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xyXG4gIC8vIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTAwNTdcclxufVxyXG5cclxuXHJcbi50YWJsZS1yZWZsb3cge1xyXG4gIHRoZWFkIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gIH1cclxuXHJcbiAgdGJvZHkge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIH1cclxuXHJcbiAgdGgsXHJcbiAgdGQge1xyXG4gICAgYm9yZGVyLXRvcDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xyXG4gICAgYm9yZGVyLWxlZnQ6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcclxuXHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICBib3JkZXItcmlnaHQ6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHRoZWFkLFxyXG4gIHRib2R5LFxyXG4gIHRmb290IHtcclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgIHRyOmxhc3QtY2hpbGQgdGgsXHJcbiAgICAgIHRyOmxhc3QtY2hpbGQgdGQge1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdHIge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcblxyXG4gICAgdGgsXHJcbiAgICB0ZCB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBRdWFsaWZ5aW5nRWxlbWVudFxyXG5cclxuLy9cclxuLy8gVGV4dHVhbCBmb3JtIGNvbnRyb2xzXHJcbi8vXHJcblxyXG4uZm9ybS1jb250cm9sIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB3aWR0aDogMTAwJTtcclxuICAvLyAvLyBNYWtlIGlucHV0cyBhdCBsZWFzdCB0aGUgaGVpZ2h0IG9mIHRoZWlyIGJ1dHRvbiBjb3VudGVycGFydCAoYmFzZSBsaW5lLWhlaWdodCArIHBhZGRpbmcgKyBib3JkZXIpXHJcbiAgLy8gaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xyXG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcclxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcclxuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xyXG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xyXG4gIC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTQuXHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xyXG4gIGJvcmRlcjogJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcclxuXHJcbiAgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxyXG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xyXG4gICAgLy8gTWFudWFsbHkgdXNlIHRoZSBpZi9lbHNlIGluc3RlYWQgb2YgdGhlIG1peGluIHRvIGFjY291bnQgZm9yIGlPUyBvdmVycmlkZVxyXG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXM7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICAvLyBPdGhlcndpc2UgdW5kbyB0aGUgaU9TIGRlZmF1bHRcclxuICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcclxuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJvcmRlci1jb2xvciBlYXNlLWluLW91dCAuMTVzLCBib3gtc2hhZG93IGVhc2UtaW4tb3V0IC4xNXMpO1xyXG5cclxuICAvLyBVbnN0eWxlIHRoZSBjYXJldCBvbiBgPHNlbGVjdD5gcyBpbiBJRTEwKy5cclxuICAmOjotbXMtZXhwYW5kIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gIH1cclxuXHJcbiAgLy8gQ3VzdG9taXplIHRoZSBgOmZvY3VzYCBzdGF0ZSB0byBpbWl0YXRlIG5hdGl2ZSBXZWJLaXQgc3R5bGVzLlxyXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC1mb2N1cygpO1xyXG5cclxuICAvLyBQbGFjZWhvbGRlclxyXG4gICY6OnBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiAkaW5wdXQtY29sb3ItcGxhY2Vob2xkZXI7XHJcbiAgICAvLyBPdmVycmlkZSBGaXJlZm94J3MgdW51c3VhbCBkZWZhdWx0IG9wYWNpdHk7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMTUyNi5cclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xyXG4gIC8vXHJcbiAgLy8gSFRNTDUgc2F5cyB0aGF0IGNvbnRyb2xzIHVuZGVyIGEgZmllbGRzZXQgPiBsZWdlbmQ6Zmlyc3QtY2hpbGQgd29uJ3QgYmVcclxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxyXG4gIC8vIGRvbid0IGhvbm9yIHRoYXQgZWRnZSBjYXNlOyB3ZSBzdHlsZSB0aGVtIGFzIGRpc2FibGVkIGFueXdheS5cclxuICAmOmRpc2FibGVkLFxyXG4gICZbcmVhZG9ubHldIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZy1kaXNhYmxlZDtcclxuICAgIC8vIGlPUyBmaXggZm9yIHVucmVhZGFibGUgZGlzYWJsZWQgY29udGVudDsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NTUuXHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgJjpkaXNhYmxlZCB7XHJcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XHJcbiAgfVxyXG59XHJcblxyXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcclxuICAmOm5vdChbc2l6ZV0pOm5vdChbbXVsdGlwbGVdKSB7XHJcbiAgICAkc2VsZWN0LWJvcmRlci13aWR0aDogKCRib3JkZXItd2lkdGggKiAyKTtcclxuICAgIGhlaWdodDogY2FsYygjeyRpbnB1dC1oZWlnaHR9IC0gI3skc2VsZWN0LWJvcmRlci13aWR0aH0pO1xyXG4gIH1cclxuXHJcbiAgJjpmb2N1czo6LW1zLXZhbHVlIHtcclxuICAgIC8vIFN1cHByZXNzIHRoZSBuZXN0ZWQgZGVmYXVsdCB3aGl0ZSB0ZXh0IG9uIGJsdWUgYmFja2dyb3VuZCBoaWdobGlnaHQgZ2l2ZW4gdG9cclxuICAgIC8vIHRoZSBzZWxlY3RlZCBvcHRpb24gdGV4dCB3aGVuIHRoZSAoc3RpbGwgY2xvc2VkKSA8c2VsZWN0PiByZWNlaXZlcyBmb2N1c1xyXG4gICAgLy8gaW4gSUUgYW5kICh1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnMpIEVkZ2UsIGFzIGl0IGxvb2tzIGJhZCBhbmQgY2Fubm90IGJlIG1hZGUgdG9cclxuICAgIC8vIG1hdGNoIHRoZSBhcHBlYXJhbmNlIG9mIHRoZSBuYXRpdmUgd2lkZ2V0LlxyXG4gICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTkzOTguXHJcbiAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xyXG4gIH1cclxufVxyXG5cclxuLy8gTWFrZSBmaWxlIGlucHV0cyBiZXR0ZXIgbWF0Y2ggdGV4dCBpbnB1dHMgYnkgZm9yY2luZyB0aGVtIHRvIG5ldyBsaW5lcy5cclxuLmZvcm0tY29udHJvbC1maWxlLFxyXG4uZm9ybS1jb250cm9sLXJhbmdlIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuXHJcbi8vXHJcbi8vIExhYmVsc1xyXG4vL1xyXG5cclxuLy8gRm9yIHVzZSB3aXRoIGhvcml6b250YWwgYW5kIGlubGluZSBmb3Jtcywgd2hlbiB5b3UgbmVlZCB0aGUgbGFiZWwgdGV4dCB0b1xyXG4vLyBhbGlnbiB3aXRoIHRoZSBmb3JtIGNvbnRyb2xzLlxyXG4uY29sLWZvcm0tbGFiZWwge1xyXG4gIHBhZGRpbmctdG9wOiAkaW5wdXQtcGFkZGluZy15O1xyXG4gIHBhZGRpbmctYm90dG9tOiAkaW5wdXQtcGFkZGluZy15O1xyXG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIHRoZSBgPGxhYmVsPmAgZGVmYXVsdFxyXG59XHJcblxyXG4uY29sLWZvcm0tbGFiZWwtbGcge1xyXG4gIHBhZGRpbmctdG9wOiAkaW5wdXQtcGFkZGluZy15LWxnO1xyXG4gIHBhZGRpbmctYm90dG9tOiAkaW5wdXQtcGFkZGluZy15LWxnO1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcclxufVxyXG5cclxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcclxuICBwYWRkaW5nLXRvcDogJGlucHV0LXBhZGRpbmcteS1zbTtcclxuICBwYWRkaW5nLWJvdHRvbTogJGlucHV0LXBhZGRpbmcteS1zbTtcclxuICBmb250LXNpemU6ICRmb250LXNpemUtc207XHJcbn1cclxuXHJcblxyXG4vL1xyXG4vLyBMZWdlbmRzXHJcbi8vXHJcblxyXG4vLyBGb3IgdXNlIHdpdGggaG9yaXpvbnRhbCBhbmQgaW5saW5lIGZvcm1zLCB3aGVuIHlvdSBuZWVkIHRoZSBsZWdlbmQgdGV4dCB0b1xyXG4vLyBiZSB0aGUgc2FtZSBzaXplIGFzIHJlZ3VsYXIgbGFiZWxzLCBhbmQgdG8gYWxpZ24gd2l0aCB0aGUgZm9ybSBjb250cm9scy5cclxuLmNvbC1mb3JtLWxlZ2VuZCB7XHJcbiAgcGFkZGluZy10b3A6ICRpbnB1dC1wYWRkaW5nLXk7XHJcbiAgcGFkZGluZy1ib3R0b206ICRpbnB1dC1wYWRkaW5nLXk7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcclxufVxyXG5cclxuXHJcbi8vIFN0YXRpYyBmb3JtIGNvbnRyb2wgdGV4dFxyXG4vL1xyXG4vLyBBcHBseSBjbGFzcyB0byBhbiBlbGVtZW50IHRvIG1ha2UgYW55IHN0cmluZyBvZiB0ZXh0IGFsaWduIHdpdGggbGFiZWxzIGluIGFcclxuLy8gaG9yaXpvbnRhbCBmb3JtIGxheW91dC5cclxuXHJcbi5mb3JtLWNvbnRyb2wtc3RhdGljIHtcclxuICBwYWRkaW5nLXRvcDogJGlucHV0LXBhZGRpbmcteTtcclxuICBwYWRkaW5nLWJvdHRvbTogJGlucHV0LXBhZGRpbmcteTtcclxuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xyXG4gIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLXdpZHRoOiAxcHggMDtcclxuXHJcbiAgJi5mb3JtLWNvbnRyb2wtc20sXHJcbiAgJi5mb3JtLWNvbnRyb2wtbGcge1xyXG4gICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXHJcbi8vXHJcbi8vIEJ1aWxkIG9uIGAuZm9ybS1jb250cm9sYCB3aXRoIG1vZGlmaWVyIGNsYXNzZXMgdG8gZGVjcmVhc2Ugb3IgaW5jcmVhc2UgdGhlXHJcbi8vIGhlaWdodCBhbmQgZm9udC1zaXplIG9mIGZvcm0gY29udHJvbHMuXHJcbi8vXHJcbi8vIFRoZSBgLmZvcm0tZ3JvdXAtKiBmb3JtLWNvbnRyb2xgIHZhcmlhdGlvbnMgYXJlIHNhZGx5IGR1cGxpY2F0ZWQgdG8gYXZvaWQgdGhlXHJcbi8vIGlzc3VlIGRvY3VtZW50ZWQgaW4gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNTA3NC5cclxuXHJcbi5mb3JtLWNvbnRyb2wtc20ge1xyXG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcclxuICBmb250LXNpemU6ICRmb250LXNpemUtc207XHJcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XHJcbn1cclxuXHJcbnNlbGVjdC5mb3JtLWNvbnRyb2wtc20ge1xyXG4gICY6bm90KFtzaXplXSk6bm90KFttdWx0aXBsZV0pIHtcclxuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcclxuICB9XHJcbn1cclxuXHJcbi5mb3JtLWNvbnRyb2wtbGcge1xyXG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcclxuICBmb250LXNpemU6ICRmb250LXNpemUtbGc7XHJcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XHJcbn1cclxuXHJcbnNlbGVjdC5mb3JtLWNvbnRyb2wtbGcge1xyXG4gICY6bm90KFtzaXplXSk6bm90KFttdWx0aXBsZV0pIHtcclxuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1sZztcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBGb3JtIGdyb3Vwc1xyXG4vL1xyXG4vLyBEZXNpZ25lZCB0byBoZWxwIHdpdGggdGhlIG9yZ2FuaXphdGlvbiBhbmQgc3BhY2luZyBvZiB2ZXJ0aWNhbCBmb3Jtcy4gRm9yXHJcbi8vIGhvcml6b250YWwgZm9ybXMsIHVzZSB0aGUgcHJlZGVmaW5lZCBncmlkIGNsYXNzZXMuXHJcblxyXG4uZm9ybS1ncm91cCB7XHJcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTtcclxufVxyXG5cclxuLmZvcm0tdGV4dCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luLXRvcDogKCRzcGFjZXIgKiAuMjUpO1xyXG59XHJcblxyXG5cclxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXHJcbi8vXHJcbi8vIEluZGVudCB0aGUgbGFiZWxzIHRvIHBvc2l0aW9uIHJhZGlvcy9jaGVja2JveGVzIGFzIGhhbmdpbmcgY29udHJvbHMuXHJcblxyXG4uZm9ybS1jaGVjayB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIG1hcmdpbi1ib3R0b206ICgkc3BhY2VyICogLjc1KTtcclxuXHJcbiAgLy8gTW92ZSB1cCBzaWJsaW5nIHJhZGlvcyBvciBjaGVja2JveGVzIGZvciB0aWdodGVyIHNwYWNpbmdcclxuICArIC5mb3JtLWNoZWNrIHtcclxuICAgIG1hcmdpbi10b3A6IC0uMjVyZW07XHJcbiAgfVxyXG5cclxuICAmLmRpc2FibGVkIHtcclxuICAgIC5mb3JtLWNoZWNrLWxhYmVsIHtcclxuICAgICAgY29sb3I6ICR0ZXh0LW11dGVkO1xyXG4gICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uZm9ybS1jaGVjay1sYWJlbCB7XHJcbiAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xyXG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgYDxsYWJlbD5gIGJvdHRvbSBtYXJnaW5cclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5mb3JtLWNoZWNrLWlucHV0IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgbWFyZ2luLXRvcDogLjI1cmVtO1xyXG4gIG1hcmdpbi1sZWZ0OiAtMS4yNXJlbTtcclxuXHJcbiAgJjpvbmx5LWNoaWxkIHtcclxuICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBSYWRpb3MgYW5kIGNoZWNrYm94ZXMgb24gc2FtZSBsaW5lXHJcbi5mb3JtLWNoZWNrLWlubGluZSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XHJcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBgPGxhYmVsPmAgYm90dG9tIG1hcmdpblxyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICArIC5mb3JtLWNoZWNrLWlubGluZSB7XHJcbiAgICBtYXJnaW4tbGVmdDogLjc1cmVtO1xyXG4gIH1cclxuXHJcbiAgJi5kaXNhYmxlZCB7XHJcbiAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XHJcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gRm9ybSBjb250cm9sIGZlZWRiYWNrIHN0YXRlc1xyXG4vL1xyXG4vLyBBcHBseSBjb250ZXh0dWFsIGFuZCBzZW1hbnRpYyBzdGF0ZXMgdG8gaW5kaXZpZHVhbCBmb3JtIGNvbnRyb2xzLlxyXG5cclxuLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XHJcbiAgbWFyZ2luLXRvcDogKCRzcGFjZXIgKiAuMjUpO1xyXG59XHJcblxyXG4uZm9ybS1jb250cm9sLXN1Y2Nlc3MsXHJcbi5mb3JtLWNvbnRyb2wtd2FybmluZyxcclxuLmZvcm0tY29udHJvbC1kYW5nZXIge1xyXG4gIHBhZGRpbmctcmlnaHQ6ICgkaW5wdXQtcGFkZGluZy14ICogMyk7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQgKCRpbnB1dC1oZWlnaHQgLyA0KTtcclxuICBiYWNrZ3JvdW5kLXNpemU6ICgkaW5wdXQtaGVpZ2h0IC8gMikgKCRpbnB1dC1oZWlnaHQgLyAyKTtcclxufVxyXG5cclxuLy8gRm9ybSB2YWxpZGF0aW9uIHN0YXRlc1xyXG4uaGFzLXN1Y2Nlc3Mge1xyXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCRicmFuZC1zdWNjZXNzKTtcclxuXHJcbiAgLmZvcm0tY29udHJvbC1zdWNjZXNzIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6ICRmb3JtLWljb24tc3VjY2VzcztcclxuICB9XHJcbn1cclxuXHJcbi5oYXMtd2FybmluZyB7XHJcbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJGJyYW5kLXdhcm5pbmcpO1xyXG5cclxuICAuZm9ybS1jb250cm9sLXdhcm5pbmcge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogJGZvcm0taWNvbi13YXJuaW5nO1xyXG4gIH1cclxufVxyXG5cclxuLmhhcy1kYW5nZXIge1xyXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCRicmFuZC1kYW5nZXIpO1xyXG5cclxuICAuZm9ybS1jb250cm9sLWRhbmdlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAkZm9ybS1pY29uLWRhbmdlcjtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBJbmxpbmUgZm9ybXNcclxuLy9cclxuLy8gTWFrZSBmb3JtcyBhcHBlYXIgaW5saW5lKC1ibG9jaykgYnkgYWRkaW5nIHRoZSBgLmZvcm0taW5saW5lYCBjbGFzcy4gSW5saW5lXHJcbi8vIGZvcm1zIGJlZ2luIHN0YWNrZWQgb24gZXh0cmEgc21hbGwgKG1vYmlsZSkgZGV2aWNlcyBhbmQgdGhlbiBnbyBpbmxpbmUgd2hlblxyXG4vLyB2aWV3cG9ydHMgcmVhY2ggPDc2OHB4LlxyXG4vL1xyXG4vLyBSZXF1aXJlcyB3cmFwcGluZyBpbnB1dHMgYW5kIGxhYmVscyB3aXRoIGAuZm9ybS1ncm91cGAgZm9yIHByb3BlciBkaXNwbGF5IG9mXHJcbi8vIGRlZmF1bHQgSFRNTCBmb3JtIGNvbnRyb2xzIGFuZCBvdXIgY3VzdG9tIGZvcm0gY29udHJvbHMgKGUuZy4sIGlucHV0IGdyb3VwcykuXHJcblxyXG4uZm9ybS1pbmxpbmUge1xyXG5cclxuICAvLyBLaWNrIGluIHRoZSBpbmxpbmVcclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XHJcbiAgICAvLyBJbmxpbmUtYmxvY2sgYWxsIHRoZSB0aGluZ3MgZm9yIFwiaW5saW5lXCJcclxuICAgIC5mb3JtLWdyb3VwIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIEFsbG93IGZvbGtzIHRvICpub3QqIHVzZSBgLmZvcm0tZ3JvdXBgXHJcbiAgICAuZm9ybS1jb250cm9sIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB3aWR0aDogYXV0bzsgLy8gUHJldmVudCBsYWJlbHMgZnJvbSBzdGFja2luZyBhYm92ZSBpbnB1dHMgaW4gYC5mb3JtLWdyb3VwYFxyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIE1ha2Ugc3RhdGljIGNvbnRyb2xzIGJlaGF2ZSBsaWtlIHJlZ3VsYXIgb25lc1xyXG4gICAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgLmlucHV0LWdyb3VwIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLXRhYmxlO1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuXHJcbiAgICAgIC5pbnB1dC1ncm91cC1hZGRvbixcclxuICAgICAgLmlucHV0LWdyb3VwLWJ0bixcclxuICAgICAgLmZvcm0tY29udHJvbCB7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBJbnB1dCBncm91cHMgbmVlZCB0aGF0IDEwMCUgd2lkdGggdGhvdWdoXHJcbiAgICAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgLmZvcm0tY29udHJvbC1sYWJlbCB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luIG9uIHJhZGlvcy9jaGVja2JveGVzIHRoYXQgd2VyZSB1c2VkIGZvciBzdGFja2luZywgYW5kXHJcbiAgICAvLyB0aGVuIHVuZG8gdGhlIGZsb2F0aW5nIG9mIHJhZGlvcyBhbmQgY2hlY2tib3hlcyB0byBtYXRjaC5cclxuICAgIC5mb3JtLWNoZWNrIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgfVxyXG4gICAgLmZvcm0tY2hlY2stbGFiZWwge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICB9XHJcbiAgICAuZm9ybS1jaGVjay1pbnB1dCB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gUmUtb3ZlcnJpZGUgdGhlIGZlZWRiYWNrIGljb24uXHJcbiAgICAuaGFzLWZlZWRiYWNrIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIHNjc3MtbGludDpkaXNhYmxlIFF1YWxpZnlpbmdFbGVtZW50XHJcblxyXG4vL1xyXG4vLyBCYXNlIHN0eWxlc1xyXG4vL1xyXG5cclxuLmJ0biB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xyXG4gIGxpbmUtaGVpZ2h0OiAkYnRuLWxpbmUtaGVpZ2h0O1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIHVzZXItc2VsZWN0OiBub25lO1xyXG4gIGJvcmRlcjogJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXksICRidG4tcGFkZGluZy14LCAkZm9udC1zaXplLWJhc2UsICRidG4tYm9yZGVyLXJhZGl1cyk7XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjJzIGVhc2UtaW4tb3V0KTtcclxuXHJcbiAgJixcclxuICAmOmFjdGl2ZSxcclxuICAmLmFjdGl2ZSB7XHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJi5mb2N1cyB7XHJcbiAgICAgIEBpbmNsdWRlIHRhYi1mb2N1cygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIH1cclxuICAmLmZvY3VzIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB9XHJcblxyXG4gICY6YWN0aXZlLFxyXG4gICYuYWN0aXZlIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcclxuICB9XHJcblxyXG4gICYuZGlzYWJsZWQsXHJcbiAgJjpkaXNhYmxlZCB7XHJcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XHJcbiAgICBvcGFjaXR5OiAuNjU7XHJcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcclxuYS5idG4uZGlzYWJsZWQsXHJcbmZpZWxkc2V0W2Rpc2FibGVkXSBhLmJ0biB7XHJcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuXHJcblxyXG4vL1xyXG4vLyBBbHRlcm5hdGUgYnV0dG9uc1xyXG4vL1xyXG5cclxuLmJ0bi1wcmltYXJ5IHtcclxuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXByaW1hcnktY29sb3IsICRidG4tcHJpbWFyeS1iZywgJGJ0bi1wcmltYXJ5LWJvcmRlcik7XHJcbn1cclxuLmJ0bi1zZWNvbmRhcnkge1xyXG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tc2Vjb25kYXJ5LWNvbG9yLCAkYnRuLXNlY29uZGFyeS1iZywgJGJ0bi1zZWNvbmRhcnktYm9yZGVyKTtcclxufVxyXG4uYnRuLWluZm8ge1xyXG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4taW5mby1jb2xvciwgJGJ0bi1pbmZvLWJnLCAkYnRuLWluZm8tYm9yZGVyKTtcclxufVxyXG4uYnRuLXN1Y2Nlc3Mge1xyXG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tc3VjY2Vzcy1jb2xvciwgJGJ0bi1zdWNjZXNzLWJnLCAkYnRuLXN1Y2Nlc3MtYm9yZGVyKTtcclxufVxyXG4uYnRuLXdhcm5pbmcge1xyXG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4td2FybmluZy1jb2xvciwgJGJ0bi13YXJuaW5nLWJnLCAkYnRuLXdhcm5pbmctYm9yZGVyKTtcclxufVxyXG4uYnRuLWRhbmdlciB7XHJcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1kYW5nZXItY29sb3IsICRidG4tZGFuZ2VyLWJnLCAkYnRuLWRhbmdlci1ib3JkZXIpO1xyXG59XHJcblxyXG4vLyBSZW1vdmUgYWxsIGJhY2tncm91bmRzXHJcbi5idG4tb3V0bGluZS1wcmltYXJ5IHtcclxuICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KCRidG4tcHJpbWFyeS1iZyk7XHJcbn1cclxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSB7XHJcbiAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkYnRuLXNlY29uZGFyeS1ib3JkZXIpO1xyXG59XHJcbi5idG4tb3V0bGluZS1pbmZvIHtcclxuICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KCRidG4taW5mby1iZyk7XHJcbn1cclxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3Mge1xyXG4gIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJGJ0bi1zdWNjZXNzLWJnKTtcclxufVxyXG4uYnRuLW91dGxpbmUtd2FybmluZyB7XHJcbiAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkYnRuLXdhcm5pbmctYmcpO1xyXG59XHJcbi5idG4tb3V0bGluZS1kYW5nZXIge1xyXG4gIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJGJ0bi1kYW5nZXItYmcpO1xyXG59XHJcblxyXG5cclxuLy9cclxuLy8gTGluayBidXR0b25zXHJcbi8vXHJcblxyXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xyXG4uYnRuLWxpbmsge1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7XHJcblxyXG4gICYsXHJcbiAgJjphY3RpdmUsXHJcbiAgJi5hY3RpdmUsXHJcbiAgJjpkaXNhYmxlZCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XHJcbiAgfVxyXG4gICYsXHJcbiAgJjpmb2N1cyxcclxuICAmOmFjdGl2ZSB7XHJcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIH1cclxuICBAaW5jbHVkZSBob3ZlciB7XHJcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIH1cclxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XHJcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICB9XHJcbiAgJjpkaXNhYmxlZCB7XHJcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XHJcbiAgICAgIGNvbG9yOiAkYnRuLWxpbmstZGlzYWJsZWQtY29sb3I7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vL1xyXG4vLyBCdXR0b24gU2l6ZXNcclxuLy9cclxuXHJcbi5idG4tbGcge1xyXG4gIC8vIGxpbmUtaGVpZ2h0OiBlbnN1cmUgZXZlbi1udW1iZXJlZCBoZWlnaHQgb2YgYnV0dG9uIG5leHQgdG8gbGFyZ2UgaW5wdXRcclxuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1sZywgJGJ0bi1wYWRkaW5nLXgtbGcsICRmb250LXNpemUtbGcsICRidG4tYm9yZGVyLXJhZGl1cy1sZyk7XHJcbn1cclxuLmJ0bi1zbSB7XHJcbiAgLy8gbGluZS1oZWlnaHQ6IGVuc3VyZSBwcm9wZXIgaGVpZ2h0IG9mIGJ1dHRvbiBuZXh0IHRvIHNtYWxsIGlucHV0XHJcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktc20sICRidG4tcGFkZGluZy14LXNtLCAkZm9udC1zaXplLXNtLCAkYnRuLWJvcmRlci1yYWRpdXMtc20pO1xyXG59XHJcblxyXG5cclxuLy9cclxuLy8gQmxvY2sgYnV0dG9uXHJcbi8vXHJcblxyXG4uYnRuLWJsb2NrIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLy8gVmVydGljYWxseSBzcGFjZSBvdXQgbXVsdGlwbGUgYmxvY2sgYnV0dG9uc1xyXG4uYnRuLWJsb2NrICsgLmJ0bi1ibG9jayB7XHJcbiAgbWFyZ2luLXRvcDogJGJ0bi1ibG9jay1zcGFjaW5nLXk7XHJcbn1cclxuXHJcbi8vIFNwZWNpZmljaXR5IG92ZXJyaWRlc1xyXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLFxyXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXHJcbmlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xyXG4gICYuYnRuLWJsb2NrIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxufVxyXG4iLCIuZmFkZSB7XHJcbiAgb3BhY2l0eTogMDtcclxuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgbGluZWFyO1xyXG5cclxuICAmLmluIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG59XHJcblxyXG4uY29sbGFwc2Uge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgJi5pbiB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbn1cclxuXHJcbnRyIHtcclxuICAmLmNvbGxhcHNlLmluIHtcclxuICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcclxuICB9XHJcbn1cclxuXHJcbnRib2R5IHtcclxuICAmLmNvbGxhcHNlLmluIHtcclxuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cDtcclxuICB9XHJcbn1cclxuXHJcbi5jb2xsYXBzaW5nIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XHJcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjM1cztcclxuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBoZWlnaHQ7XHJcbn1cclxuIiwiLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGA8ZGl2PmApXHJcbi5kcm9wdXAsXHJcbi5kcm9wZG93biB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uZHJvcGRvd24tdG9nZ2xlIHtcclxuICAvLyBHZW5lcmF0ZSB0aGUgY2FyZXQgYXV0b21hdGljYWxseVxyXG4gICY6OmFmdGVyIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHdpZHRoOiAwO1xyXG4gICAgaGVpZ2h0OiAwO1xyXG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJldC13aWR0aDtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkO1xyXG4gICAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIH1cclxuXHJcbiAgLy8gUHJldmVudCB0aGUgZm9jdXMgb24gdGhlIGRyb3Bkb3duIHRvZ2dsZSB3aGVuIGNsb3NpbmcgZHJvcGRvd25zXHJcbiAgJjpmb2N1cyB7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLmRyb3B1cCB7XHJcbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgIGJvcmRlci10b3A6IDA7XHJcbiAgICAgIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIFRoZSBkcm9wZG93biBtZW51XHJcbi5kcm9wZG93bi1tZW51IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAxMDAlO1xyXG4gIGxlZnQ6IDA7XHJcbiAgei1pbmRleDogJHppbmRleC1kcm9wZG93bjtcclxuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxyXG4gIGZsb2F0OiBsZWZ0O1xyXG4gIG1pbi13aWR0aDogJGRyb3Bkb3duLW1pbi13aWR0aDtcclxuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15IDA7XHJcbiAgbWFyZ2luOiAkZHJvcGRvd24tbWFyZ2luLXRvcCAwIDA7IC8vIG92ZXJyaWRlIGRlZmF1bHQgdWxcclxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcclxuICBjb2xvcjogJGJvZHktY29sb3I7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRW5zdXJlcyBwcm9wZXIgYWxpZ25tZW50IGlmIHBhcmVudCBoYXMgaXQgY2hhbmdlZCAoZS5nLiwgbW9kYWwgZm9vdGVyKVxyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xyXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XHJcbiAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyLXdpZHRoIHNvbGlkICRkcm9wZG93bi1ib3JkZXItY29sb3I7XHJcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XHJcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkZHJvcGRvd24tYm94LXNoYWRvdyk7XHJcbn1cclxuXHJcbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gYDxocj5gKSB3aXRoaW4gdGhlIGRyb3Bkb3duXHJcbi5kcm9wZG93bi1kaXZpZGVyIHtcclxuICBAaW5jbHVkZSBuYXYtZGl2aWRlcigkZHJvcGRvd24tZGl2aWRlci1iZyk7XHJcbn1cclxuXHJcbi8vIExpbmtzLCBidXR0b25zLCBhbmQgbW9yZSB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcclxuLy9cclxuLy8gYDxidXR0b24+YC1zcGVjaWZpYyBzdHlsZXMgYXJlIGRlbm90ZWQgd2l0aCBgLy8gRm9yIDxidXR0b24+c2BcclxuLmRyb3Bkb3duLWl0ZW0ge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHNcclxuICBwYWRkaW5nOiAzcHggJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xyXG4gIGNsZWFyOiBib3RoO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xyXG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xyXG4gIGJhY2tncm91bmQ6IG5vbmU7IC8vIEZvciBgPGJ1dHRvbj5gc1xyXG4gIGJvcmRlcjogMDsgLy8gRm9yIGA8YnV0dG9uPmBzXHJcblxyXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcclxuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWJnO1xyXG4gIH1cclxuXHJcbiAgLy8gQWN0aXZlIHN0YXRlXHJcbiAgJi5hY3RpdmUge1xyXG4gICAgQGluY2x1ZGUgcGxhaW4taG92ZXItZm9jdXMge1xyXG4gICAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZztcclxuICAgICAgb3V0bGluZTogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIERpc2FibGVkIHN0YXRlXHJcbiAgLy9cclxuICAvLyBHcmF5IG91dCB0ZXh0IGFuZCBlbnN1cmUgdGhlIGhvdmVyL2ZvY3VzIHN0YXRlIHJlbWFpbnMgZ3JheVxyXG4gICYuZGlzYWJsZWQge1xyXG4gICAgQGluY2x1ZGUgcGxhaW4taG92ZXItZm9jdXMge1xyXG4gICAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gTnVrZSBob3Zlci9mb2N1cyBlZmZlY3RzXHJcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVtb3ZlIENTUyBncmFkaWVudFxyXG4gICAgICBAaW5jbHVkZSByZXNldC1maWx0ZXIoKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIE9wZW4gc3RhdGUgZm9yIHRoZSBkcm9wZG93blxyXG4ub3BlbiB7XHJcbiAgLy8gU2hvdyB0aGUgbWVudVxyXG4gID4gLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG5cclxuICAvLyBSZW1vdmUgdGhlIG91dGxpbmUgd2hlbiA6Zm9jdXMgaXMgdHJpZ2dlcmVkXHJcbiAgPiBhIHtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNZW51IHBvc2l0aW9uaW5nXHJcbi8vXHJcbi8vIEFkZCBleHRyYSBjbGFzcyB0byBgLmRyb3Bkb3duLW1lbnVgIHRvIGZsaXAgdGhlIGFsaWdubWVudCBvZiB0aGUgZHJvcGRvd25cclxuLy8gbWVudSB3aXRoIHRoZSBwYXJlbnQuXHJcbi5kcm9wZG93bi1tZW51LXJpZ2h0IHtcclxuICByaWdodDogMDtcclxuICBsZWZ0OiBhdXRvOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIGAuZHJvcGRvd24tbWVudWBcclxufVxyXG5cclxuLmRyb3Bkb3duLW1lbnUtbGVmdCB7XHJcbiAgcmlnaHQ6IGF1dG87XHJcbiAgbGVmdDogMDtcclxufVxyXG5cclxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXHJcbi5kcm9wZG93bi1oZWFkZXIge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xyXG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIGZvciB1c2Ugd2l0aCBoZWFkaW5nIGVsZW1lbnRzXHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xyXG4gIGNvbG9yOiAkZHJvcGRvd24taGVhZGVyLWNvbG9yO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIGFzIHdpdGggPiBsaSA+IGFcclxufVxyXG5cclxuLy8gQmFja2Ryb3AgdG8gY2F0Y2ggYm9keSBjbGlja3Mgb24gbW9iaWxlLCBldGMuXHJcbi5kcm9wZG93bi1iYWNrZHJvcCB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHRvcDogMDtcclxuICByaWdodDogMDtcclxuICBib3R0b206IDA7XHJcbiAgbGVmdDogMDtcclxuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duLWJhY2tkcm9wO1xyXG59XHJcblxyXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcclxuLy9cclxuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LlxyXG4vLyBUT0RPOiBhYnN0cmFjdCB0aGlzIHNvIHRoYXQgdGhlIG5hdmJhciBmaXhlZCBzdHlsZXMgYXJlIG5vdCBwbGFjZWQgaGVyZT9cclxuXHJcbi5kcm9wdXAsXHJcbi5uYXZiYXItZml4ZWQtYm90dG9tIC5kcm9wZG93biB7XHJcbiAgLy8gUmV2ZXJzZSB0aGUgY2FyZXRcclxuICAuY2FyZXQge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGJvcmRlci10b3A6IDA7XHJcbiAgICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQ7XHJcbiAgfVxyXG5cclxuICAvLyBEaWZmZXJlbnQgcG9zaXRpb25pbmcgZm9yIGJvdHRvbSB1cCBtZW51XHJcbiAgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgdG9wOiBhdXRvO1xyXG4gICAgYm90dG9tOiAxMDAlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJGRyb3Bkb3duLW1hcmdpbi10b3A7XHJcbiAgfVxyXG59XHJcbiIsIi8vIHNjc3MtbGludDpkaXNhYmxlIFF1YWxpZnlpbmdFbGVtZW50XHJcblxyXG4vLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cclxuLmJ0bi1ncm91cCxcclxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxyXG5cclxuICA+IC5idG4ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG5cclxuICAgIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGJ1dHRvbiB0byB0aGUgZnJvbnRcclxuICAgICY6Zm9jdXMsXHJcbiAgICAmOmFjdGl2ZSxcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgei1pbmRleDogMjtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGhvdmVyIHtcclxuICAgICAgei1pbmRleDogMjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnMgd2hlbiBidXR0b25zIGFyZSBuZXh0IHRvIGVhY2ggb3RoZXJcclxuLmJ0bi1ncm91cCB7XHJcbiAgLmJ0biArIC5idG4sXHJcbiAgLmJ0biArIC5idG4tZ3JvdXAsXHJcbiAgLmJ0bi1ncm91cCArIC5idG4sXHJcbiAgLmJ0bi1ncm91cCArIC5idG4tZ3JvdXAge1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYnRuLWJvcmRlci13aWR0aDtcclxuICB9XHJcbn1cclxuXHJcbi8vIE9wdGlvbmFsOiBHcm91cCBtdWx0aXBsZSBidXR0b24gZ3JvdXBzIHRvZ2V0aGVyIGZvciBhIHRvb2xiYXJcclxuLmJ0bi10b29sYmFyIHtcclxuICBtYXJnaW4tbGVmdDogLSRidG4tdG9vbGJhci1tYXJnaW47IC8vIE9mZnNldCB0aGUgZmlyc3QgY2hpbGQncyBtYXJnaW5cclxuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xyXG5cclxuICAuYnRuLWdyb3VwLFxyXG4gIC5pbnB1dC1ncm91cCB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICB9XHJcblxyXG4gID4gLmJ0bixcclxuICA+IC5idG4tZ3JvdXAsXHJcbiAgPiAuaW5wdXQtZ3JvdXAge1xyXG4gICAgbWFyZ2luLWxlZnQ6ICRidG4tdG9vbGJhci1tYXJnaW47XHJcbiAgfVxyXG59XHJcblxyXG4uYnRuLWdyb3VwID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSB7XHJcbiAgYm9yZGVyLXJhZGl1czogMDtcclxufVxyXG5cclxuLy8gU2V0IGNvcm5lcnMgaW5kaXZpZHVhbCBiZWNhdXNlIHNvbWV0aW1lcyBhIHNpbmdsZSBidXR0b24gY2FuIGJlIGluIGEgLmJ0bi1ncm91cCBhbmQgd2UgbmVlZCA6Zmlyc3QtY2hpbGQgYW5kIDpsYXN0LWNoaWxkIHRvIGJvdGggbWF0Y2hcclxuLmJ0bi1ncm91cCA+IC5idG46Zmlyc3QtY2hpbGQge1xyXG4gIG1hcmdpbi1sZWZ0OiAwO1xyXG5cclxuICAmOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpIHtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XHJcbiAgfVxyXG59XHJcbi8vIE5lZWQgLmRyb3Bkb3duLXRvZ2dsZSBzaW5jZSA6bGFzdC1jaGlsZCBkb2Vzbid0IGFwcGx5IGdpdmVuIGEgLmRyb3Bkb3duLW1lbnUgaW1tZWRpYXRlbHkgYWZ0ZXIgaXRcclxuLmJ0bi1ncm91cCA+IC5idG46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcclxuLmJ0bi1ncm91cCA+IC5kcm9wZG93bi10b2dnbGU6bm90KDpmaXJzdC1jaGlsZCkge1xyXG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcclxufVxyXG5cclxuLy8gQ3VzdG9tIGVkaXRzIGZvciBpbmNsdWRpbmcgYnRuLWdyb3VwcyB3aXRoaW4gYnRuLWdyb3VwcyAodXNlZnVsIGZvciBpbmNsdWRpbmcgZHJvcGRvd24gYnV0dG9ucyB3aXRoaW4gYSBidG4tZ3JvdXApXHJcbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwIHtcclxuICBmbG9hdDogbGVmdDtcclxufVxyXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XHJcbiAgYm9yZGVyLXJhZGl1czogMDtcclxufVxyXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcclxuICA+IC5idG46bGFzdC1jaGlsZCxcclxuICA+IC5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcclxuICB9XHJcbn1cclxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG46Zmlyc3QtY2hpbGQge1xyXG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcclxufVxyXG5cclxuLy8gT24gYWN0aXZlIGFuZCBvcGVuLCBkb24ndCBzaG93IG91dGxpbmVcclxuLmJ0bi1ncm91cCAuZHJvcGRvd24tdG9nZ2xlOmFjdGl2ZSxcclxuLmJ0bi1ncm91cC5vcGVuIC5kcm9wZG93bi10b2dnbGUge1xyXG4gIG91dGxpbmU6IDA7XHJcbn1cclxuXHJcblxyXG4vLyBTaXppbmdcclxuLy9cclxuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXHJcblxyXG4uYnRuLWdyb3VwLXNtID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1zbTsgfVxyXG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxyXG5cclxuXHJcbi8vXHJcbi8vIFNwbGl0IGJ1dHRvbiBkcm9wZG93bnNcclxuLy9cclxuXHJcbi5idG4gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcclxuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcclxuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xyXG5cclxuICAmOjphZnRlciB7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuICB9XHJcbn1cclxuXHJcbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcclxuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcclxuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xyXG59XHJcblxyXG4uYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XHJcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XHJcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcclxufVxyXG5cclxuXHJcbi8vIFRoZSBjbGlja2FibGUgYnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbWVudVxyXG4vLyBSZW1vdmUgdGhlIGdyYWRpZW50IGFuZCBzZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXHJcbi5idG4tZ3JvdXAub3BlbiAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xyXG5cclxuICAvLyBTaG93IG5vIHNoYWRvdyBmb3IgYC5idG4tbGlua2Agc2luY2UgaXQgaGFzIG5vIG90aGVyIGJ1dHRvbiBzdHlsZXMuXHJcbiAgJi5idG4tbGluayB7XHJcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIFJlcG9zaXRpb24gdGhlIGNhcmV0XHJcbi5idG4gLmNhcmV0IHtcclxuICBtYXJnaW4tbGVmdDogMDtcclxufVxyXG4vLyBDYXJldHMgaW4gb3RoZXIgYnV0dG9uIHNpemVzXHJcbi5idG4tbGcgLmNhcmV0IHtcclxuICBib3JkZXItd2lkdGg6ICRjYXJldC13aWR0aC1sZyAkY2FyZXQtd2lkdGgtbGcgMDtcclxuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xyXG59XHJcbi8vIFVwc2lkZSBkb3duIGNhcmV0cyBmb3IgLmRyb3B1cFxyXG4uZHJvcHVwIC5idG4tbGcgLmNhcmV0IHtcclxuICBib3JkZXItd2lkdGg6IDAgJGNhcmV0LXdpZHRoLWxnICRjYXJldC13aWR0aC1sZztcclxufVxyXG5cclxuXHJcblxyXG4vL1xyXG4vLyBWZXJ0aWNhbCBidXR0b24gZ3JvdXBzXHJcbi8vXHJcblxyXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcclxuICA+IC5idG4sXHJcbiAgPiAuYnRuLWdyb3VwLFxyXG4gID4gLmJ0bi1ncm91cCA+IC5idG4ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBmbG9hdDogbm9uZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgLy8gQ2xlYXIgZmxvYXRzIHNvIGRyb3Bkb3duIG1lbnVzIGNhbiBiZSBwcm9wZXJseSBwbGFjZWRcclxuICA+IC5idG4tZ3JvdXAge1xyXG4gICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcclxuXHJcbiAgICA+IC5idG4ge1xyXG4gICAgICBmbG9hdDogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gID4gLmJ0biArIC5idG4sXHJcbiAgPiAuYnRuICsgLmJ0bi1ncm91cCxcclxuICA+IC5idG4tZ3JvdXAgKyAuYnRuLFxyXG4gID4gLmJ0bi1ncm91cCArIC5idG4tZ3JvdXAge1xyXG4gICAgbWFyZ2luLXRvcDogLSRpbnB1dC1idG4tYm9yZGVyLXdpZHRoO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0biB7XHJcbiAgJjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgfVxyXG4gICY6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcclxuICB9XHJcbiAgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xyXG4gIH1cclxufVxyXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XHJcbiAgYm9yZGVyLXJhZGl1czogMDtcclxufVxyXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcclxuICA+IC5idG46bGFzdC1jaGlsZCxcclxuICA+IC5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XHJcbiAgfVxyXG59XHJcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOmZpcnN0LWNoaWxkIHtcclxuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcclxufVxyXG5cclxuXHJcbi8vIENoZWNrYm94IGFuZCByYWRpbyBvcHRpb25zXHJcbi8vXHJcbi8vIEluIG9yZGVyIHRvIHN1cHBvcnQgdGhlIGJyb3dzZXIncyBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2ssIHBvd2VyZWQgYnkgdGhlXHJcbi8vIGByZXF1aXJlZGAgYXR0cmlidXRlLCB3ZSBoYXZlIHRvIFwiaGlkZVwiIHRoZSBpbnB1dHMgdmlhIGBjbGlwYC4gV2UgY2Fubm90IHVzZVxyXG4vLyBgZGlzcGxheTogbm9uZTtgIG9yIGB2aXNpYmlsaXR5OiBoaWRkZW47YCBhcyB0aGF0IGFsc28gaGlkZXMgdGhlIHBvcG92ZXIuXHJcbi8vIFNpbXBseSB2aXN1YWxseSBoaWRpbmcgdGhlIGlucHV0cyB2aWEgYG9wYWNpdHlgIHdvdWxkIGxlYXZlIHRoZW0gY2xpY2thYmxlIGluXHJcbi8vIGNlcnRhaW4gY2FzZXMgd2hpY2ggaXMgcHJldmVudGVkIGJ5IHVzaW5nIGBjbGlwYCBhbmQgYHBvaW50ZXItZXZlbnRzYC5cclxuLy8gVGhpcyB3YXksIHdlIGVuc3VyZSBhIERPTSBlbGVtZW50IGlzIHZpc2libGUgdG8gcG9zaXRpb24gdGhlIHBvcG92ZXIgZnJvbS5cclxuLy9cclxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEyNzk0IGFuZFxyXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xNDU1OSBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cclxuXHJcbltkYXRhLXRvZ2dsZT1cImJ1dHRvbnNcIl0ge1xyXG4gID4gLmJ0bixcclxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcclxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcclxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgY2xpcDogcmVjdCgwLDAsMCwwKTtcclxuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIEJhc2Ugc3R5bGVzXHJcbi8vXHJcblxyXG4uaW5wdXQtZ3JvdXAge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB3aWR0aDogMTAwJTtcclxuXHJcbiAgQGlmICRlbmFibGUtZmxleCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgZGlzcGxheTogdGFibGU7XHJcbiAgICAvLyBQcmV2ZW50IGlucHV0IGdyb3VwcyBmcm9tIGluaGVyaXRpbmcgYm9yZGVyIHN0eWxlcyBmcm9tIHRhYmxlIGNlbGxzIHdoZW5cclxuICAgIC8vIHBsYWNlZCB3aXRoaW4gYSB0YWJsZS5cclxuICAgIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XHJcbiAgfVxyXG5cclxuICAuZm9ybS1jb250cm9sIHtcclxuICAgIC8vIEVuc3VyZSB0aGF0IHRoZSBpbnB1dCBpcyBhbHdheXMgYWJvdmUgdGhlICphcHBlbmRlZCogYWRkb24gYnV0dG9uIGZvclxyXG4gICAgLy8gcHJvcGVyIGJvcmRlciBjb2xvcnMuXHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgZm9ybSBjb250cm9sIHRvIHRoZSBmcm9udFxyXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMtYWN0aXZlIHtcclxuICAgICAgei1pbmRleDogMztcclxuICAgIH1cclxuICAgIEBpZiAkZW5hYmxlLWZsZXgge1xyXG4gICAgICBmbGV4OiAxO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgIC8vIElFOSBmdWJhcnMgdGhlIHBsYWNlaG9sZGVyIGF0dHJpYnV0ZSBpbiB0ZXh0IGlucHV0cyBhbmQgdGhlIGFycm93cyBvblxyXG4gICAgICAvLyBzZWxlY3QgZWxlbWVudHMgaW4gaW5wdXQgZ3JvdXBzLiBUbyBmaXggaXQsIHdlIGZsb2F0IHRoZSBpbnB1dC4gRGV0YWlsczpcclxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU2MSNpc3N1ZWNvbW1lbnQtMjg5MzY4NTVcclxuICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB9XHJcbn1cclxuXHJcbi5pbnB1dC1ncm91cC1hZGRvbixcclxuLmlucHV0LWdyb3VwLWJ0bixcclxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wge1xyXG4gIEBpZiBub3QgJGVuYWJsZS1mbGV4IHtcclxuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcbiAgfVxyXG5cclxuICAmOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcclxuICB9XHJcbn1cclxuXHJcbi5pbnB1dC1ncm91cC1hZGRvbixcclxuLmlucHV0LWdyb3VwLWJ0biB7XHJcbiAgQGlmIG5vdCAkZW5hYmxlLWZsZXgge1xyXG4gICAgd2lkdGg6IDElO1xyXG4gIH1cclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIE1hdGNoIHRoZSBpbnB1dHNcclxufVxyXG5cclxuXHJcbi8vIFNpemluZyBvcHRpb25zXHJcbi8vXHJcbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGZvcm0gY29udHJvbCBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXJcclxuLy8gbWFuaXB1bGF0aW9uLlxyXG5cclxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCxcclxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFkZG9uLFxyXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biB7XHJcbiAgQGV4dGVuZCAuZm9ybS1jb250cm9sLWxnO1xyXG59XHJcbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXHJcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hZGRvbixcclxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4ge1xyXG4gIEBleHRlbmQgLmZvcm0tY29udHJvbC1zbTtcclxufVxyXG5cclxuXHJcbi8vXHJcbi8vIFRleHQgaW5wdXQgZ3JvdXBzXHJcbi8vXHJcblxyXG4uaW5wdXQtZ3JvdXAtYWRkb24ge1xyXG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcclxuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBBbGxvdyB1c2Ugb2YgPGxhYmVsPiBlbGVtZW50cyBieSBvdmVycmlkaW5nIG91ciBkZWZhdWx0IG1hcmdpbi1ib3R0b21cclxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XHJcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xyXG4gIGJvcmRlcjogJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcclxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcclxuXHJcbiAgLy8gU2l6aW5nXHJcbiAgJi5mb3JtLWNvbnRyb2wtc20ge1xyXG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XHJcbiAgfVxyXG4gICYuZm9ybS1jb250cm9sLWxnIHtcclxuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcclxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xyXG4gIH1cclxuXHJcbiAgLy8gc2Nzcy1saW50OmRpc2FibGUgUXVhbGlmeWluZ0VsZW1lbnRcclxuICAvLyBOdWtlIGRlZmF1bHQgbWFyZ2lucyBmcm9tIGNoZWNrYm94ZXMgYW5kIHJhZGlvcyB0byB2ZXJ0aWNhbGx5IGNlbnRlciB3aXRoaW4uXHJcbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxyXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gIH1cclxuICAvLyBzY3NzLWxpbnQ6ZW5hYmxlIFF1YWxpZnlpbmdFbGVtZW50XHJcbn1cclxuXHJcblxyXG4vL1xyXG4vLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcclxuLy9cclxuXHJcbi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sOm5vdCg6bGFzdC1jaGlsZCksXHJcbi5pbnB1dC1ncm91cC1hZGRvbjpub3QoOmxhc3QtY2hpbGQpLFxyXG4uaW5wdXQtZ3JvdXAtYnRuOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuLFxyXG4uaW5wdXQtZ3JvdXAtYnRuOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuLWdyb3VwID4gLmJ0bixcclxuLmlucHV0LWdyb3VwLWJ0bjpub3QoOmxhc3QtY2hpbGQpID4gLmRyb3Bkb3duLXRvZ2dsZSxcclxuLmlucHV0LWdyb3VwLWJ0bjpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXHJcbi5pbnB1dC1ncm91cC1idG46bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcclxuICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xyXG59XHJcbi5pbnB1dC1ncm91cC1hZGRvbjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICBib3JkZXItcmlnaHQ6IDA7XHJcbn1cclxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6bm90KDpmaXJzdC1jaGlsZCksXHJcbi5pbnB1dC1ncm91cC1hZGRvbjpub3QoOmZpcnN0LWNoaWxkKSxcclxuLmlucHV0LWdyb3VwLWJ0bjpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4sXHJcbi5pbnB1dC1ncm91cC1idG46bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuLWdyb3VwID4gLmJ0bixcclxuLmlucHV0LWdyb3VwLWJ0bjpub3QoOmZpcnN0LWNoaWxkKSA+IC5kcm9wZG93bi10b2dnbGUsXHJcbi5pbnB1dC1ncm91cC1idG46bm90KDpsYXN0LWNoaWxkKSA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXHJcbi5pbnB1dC1ncm91cC1idG46bm90KDpsYXN0LWNoaWxkKSA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcclxuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XHJcbn1cclxuLmZvcm0tY29udHJvbCArIC5pbnB1dC1ncm91cC1hZGRvbjpub3QoOmZpcnN0LWNoaWxkKSB7XHJcbiAgYm9yZGVyLWxlZnQ6IDA7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEJ1dHRvbiBpbnB1dCBncm91cHNcclxuLy9cclxuXHJcbi5pbnB1dC1ncm91cC1idG4ge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAvLyBKYW5raWx5IHByZXZlbnQgaW5wdXQgYnV0dG9uIGdyb3VwcyBmcm9tIHdyYXBwaW5nIHdpdGggYHdoaXRlLXNwYWNlYCBhbmRcclxuICAvLyBgZm9udC1zaXplYCBpbiBjb21iaW5hdGlvbiB3aXRoIGBpbmxpbmUtYmxvY2tgIG9uIGJ1dHRvbnMuXHJcbiAgZm9udC1zaXplOiAwO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblxyXG4gIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3Igc3BhY2luZywgcG9zaXRpb24gZm9yIGJyaW5naW5nIGhvdmVyZWQvZm9jdXNlZC9hY3RpdmVkXHJcbiAgLy8gZWxlbWVudCBhYm92ZSB0aGUgc2libGluZ3MuXHJcbiAgPiAuYnRuIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICsgLmJ0biB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAoLSRpbnB1dC1idG4tYm9yZGVyLXdpZHRoKTtcclxuICAgIH1cclxuICAgIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGJ1dHRvbiB0byB0aGUgZnJvbnRcclxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzLWFjdGl2ZSB7XHJcbiAgICAgIHotaW5kZXg6IDM7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBOZWdhdGl2ZSBtYXJnaW4gdG8gb25seSBoYXZlIGEgc2luZ2xlLCBzaGFyZWQgYm9yZGVyIGJldHdlZW4gdGhlIHR3b1xyXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICA+IC5idG4sXHJcbiAgICA+IC5idG4tZ3JvdXAge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6ICgtJGlucHV0LWJ0bi1ib3JkZXItd2lkdGgpO1xyXG4gICAgfVxyXG4gIH1cclxuICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuICAgID4gLmJ0bixcclxuICAgID4gLmJ0bi1ncm91cCB7XHJcbiAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAoLSRpbnB1dC1idG4tYm9yZGVyLXdpZHRoKTtcclxuICAgICAgLy8gQmVjYXVzZSBzcGVjaWZpY2l0eVxyXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cy1hY3RpdmUge1xyXG4gICAgICAgIHotaW5kZXg6IDM7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gc2Nzcy1saW50OmRpc2FibGUgUHJvcGVydHlDb3VudFxyXG5cclxuLy8gRW1iZWRkZWQgaWNvbnMgZnJvbSBPcGVuIEljb25pYy5cclxuLy8gUmVsZWFzZWQgdW5kZXIgTUlUIGFuZCBjb3B5cmlnaHQgMjAxNCBXYXlidXJ5LlxyXG4vLyBodHRwczovL3VzZWljb25pYy5jb20vb3BlblxyXG5cclxuXHJcbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xyXG4vL1xyXG4vLyBCYXNlIGNsYXNzIHRha2VzIGNhcmUgb2YgYWxsIHRoZSBrZXkgYmVoYXZpb3JhbCBhc3BlY3RzLlxyXG5cclxuLmN1c3RvbS1jb250cm9sIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1jb250cm9sLWd1dHRlcjtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICsgLmN1c3RvbS1jb250cm9sIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAkY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg7XHJcbiAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB6LWluZGV4OiAtMTsgLy8gUHV0IHRoZSBpbnB1dCBiZWhpbmQgdGhlIGxhYmVsIHNvIGl0IGRvZXNuJ3Qgb3ZlcmxheSB0ZXh0XHJcbiAgb3BhY2l0eTogMDtcclxuXHJcbiAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWluZGljYXRvciB7XHJcbiAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWNoZWNrZWQtaW5kaWNhdG9yLWNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWNoZWNrZWQtaW5kaWNhdG9yLWJnO1xyXG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtY2hlY2tlZC1pbmRpY2F0b3ItYm94LXNoYWRvdyk7XHJcbiAgfVxyXG5cclxuICAmOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWluZGljYXRvciB7XHJcbiAgICAvLyB0aGUgbWl4aW4gaXMgbm90IHVzZWQgaGVyZSB0byBtYWtlIHN1cmUgdGhlcmUgaXMgZmVlZGJhY2tcclxuICAgIGJveC1zaGFkb3c6ICRjdXN0b20tY29udHJvbC1mb2N1cy1pbmRpY2F0b3ItYm94LXNoYWRvdztcclxuICB9XHJcblxyXG4gICY6YWN0aXZlIH4gLmN1c3RvbS1jb250cm9sLWluZGljYXRvciB7XHJcbiAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWFjdGl2ZS1pbmRpY2F0b3ItY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtYWN0aXZlLWluZGljYXRvci1iZztcclxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWFjdGl2ZS1pbmRpY2F0b3ItYm94LXNoYWRvdyk7XHJcbiAgfVxyXG5cclxuICAmOmRpc2FibGVkIHtcclxuICAgIH4gLmN1c3RvbS1jb250cm9sLWluZGljYXRvciB7XHJcbiAgICAgIGN1cnNvcjogJGN1c3RvbS1jb250cm9sLWRpc2FibGVkLWN1cnNvcjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWRpc2FibGVkLWluZGljYXRvci1iZztcclxuICAgIH1cclxuXHJcbiAgICB+IC5jdXN0b20tY29udHJvbC1kZXNjcmlwdGlvbiB7XHJcbiAgICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtZGlzYWJsZWQtZGVzY3JpcHRpb24tY29sb3I7XHJcbiAgICAgIGN1cnNvcjogJGN1c3RvbS1jb250cm9sLWRpc2FibGVkLWN1cnNvcjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIEN1c3RvbSBpbmRpY2F0b3JcclxuLy9cclxuLy8gR2VuZXJhdGVzIGEgc2hhZG93IGVsZW1lbnQgdG8gY3JlYXRlIG91ciBtYWtlc2hpZnQgY2hlY2tib3gvcmFkaW8gYmFja2dyb3VuZC5cclxuXHJcbi5jdXN0b20tY29udHJvbC1pbmRpY2F0b3Ige1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IC4yNXJlbTtcclxuICBsZWZ0OiAwO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XHJcbiAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XHJcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZC1zaXplOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemU7XHJcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3cpO1xyXG59XHJcblxyXG4vLyBDaGVja2JveGVzXHJcbi8vXHJcbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciBjaGVja2JveGVzLlxyXG5cclxuLmN1c3RvbS1jaGVja2JveCB7XHJcbiAgLmN1c3RvbS1jb250cm9sLWluZGljYXRvciB7XHJcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tY2hlY2tib3gtcmFkaXVzKTtcclxuICB9XHJcblxyXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWluZGljYXRvciB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAkY3VzdG9tLWNoZWNrYm94LWNoZWNrZWQtaWNvbjtcclxuICB9XHJcblxyXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWluZGljYXRvciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtYmc7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAkY3VzdG9tLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtaWNvbjtcclxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jaGVja2JveC1pbmRldGVybWluYXRlLWJveC1zaGFkb3cpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gUmFkaW9zXHJcbi8vXHJcbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciByYWRpb3MuXHJcblxyXG4uY3VzdG9tLXJhZGlvIHtcclxuICAuY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yIHtcclxuICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tcmFkaW8tcmFkaXVzO1xyXG4gIH1cclxuXHJcbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6ICRjdXN0b20tcmFkaW8tY2hlY2tlZC1pY29uO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIExheW91dCBvcHRpb25zXHJcbi8vXHJcbi8vIEJ5IGRlZmF1bHQgcmFkaW9zIGFuZCBjaGVja2JveGVzIGFyZSBgaW5saW5lLWJsb2NrYCB3aXRoIG5vIGFkZGl0aW9uYWwgc3BhY2luZ1xyXG4vLyBzZXQuIFVzZSB0aGVzZSBvcHRpb25hbCBjbGFzc2VzIHRvIHR3ZWFrIHRoZSBsYXlvdXQuXHJcblxyXG4uY3VzdG9tLWNvbnRyb2xzLXN0YWNrZWQge1xyXG4gIC5jdXN0b20tY29udHJvbCB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIGNsZWFyOiBsZWZ0O1xyXG5cclxuICAgICsgLmN1c3RvbS1jb250cm9sIHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gU2VsZWN0XHJcbi8vXHJcbi8vIFJlcGxhY2VzIHRoZSBicm93c2VyIGRlZmF1bHQgc2VsZWN0IHdpdGggYSBjdXN0b20gb25lLCBtb3N0bHkgcHVsbGVkIGZyb21cclxuLy8gaHR0cDovL3ByaW1lcmNzcy5pby5cclxuLy9cclxuLy8gSW5jbHVkZXMgSUU5LXNwZWNpZmljIGhhY2tzIChub3RlZCBieSBgIFxcOWApLlxyXG5cclxuLmN1c3RvbS1zZWxlY3Qge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgJHNlbGVjdC1ib3JkZXItd2lkdGg6ICgkYm9yZGVyLXdpZHRoICogMik7XHJcbiAgaGVpZ2h0OiBjYWxjKCN7JGlucHV0LWhlaWdodH0gLSAjeyRzZWxlY3QtYm9yZGVyLXdpZHRofSk7XHJcbiAgcGFkZGluZzogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15ICgkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDtcclxuICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggXFw5O1xyXG4gIGNvbG9yOiAkY3VzdG9tLXNlbGVjdC1jb2xvcjtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gIGJhY2tncm91bmQ6ICRjdXN0b20tc2VsZWN0LWJnICRjdXN0b20tc2VsZWN0LWluZGljYXRvciBuby1yZXBlYXQgcmlnaHQgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14IGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lIFxcOTtcclxuICBiYWNrZ3JvdW5kLXNpemU6ICRjdXN0b20tc2VsZWN0LWJnLXNpemU7XHJcbiAgYm9yZGVyOiAkY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGggc29saWQgJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yO1xyXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1cyk7XHJcbiAgLy8gVXNlIHZlbmRvciBwcmVmaXhlcyBhcyBgYXBwZWFyYW5jZWAgaXNuJ3QgcGFydCBvZiB0aGUgQ1NTIHNwZWMuXHJcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuXHJcbiAgJjpmb2N1cyB7XHJcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3cpO1xyXG5cclxuICAgICY6Oi1tcy12YWx1ZSB7XHJcbiAgICAgIC8vIEZvciB2aXN1YWwgY29uc2lzdGVuY3kgd2l0aCBvdGhlciBwbGF0Zm9ybXMvYnJvd3NlcnMsXHJcbiAgICAgIC8vIHN1cHJlc3MgdGhlIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXHJcbiAgICAgIC8vIHRoZSBzZWxlY3RlZCBvcHRpb24gdGV4dCB3aGVuIHRoZSAoc3RpbGwgY2xvc2VkKSA8c2VsZWN0PiByZWNlaXZlcyBmb2N1c1xyXG4gICAgICAvLyBpbiBJRSBhbmQgKHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucykgRWRnZS5cclxuICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTkzOTguXHJcbiAgICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcclxuICAgIH1cclxuICB9XHJcblxyXG4gICY6ZGlzYWJsZWQge1xyXG4gICAgY29sb3I6ICRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yO1xyXG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc7XHJcbiAgfVxyXG5cclxuICAvLyBIaWRlcyB0aGUgZGVmYXVsdCBjYXJldCBpbiBJRTExXHJcbiAgJjo6LW1zLWV4cGFuZCB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxufVxyXG5cclxuLmN1c3RvbS1zZWxlY3Qtc20ge1xyXG4gIHBhZGRpbmctdG9wOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXk7XHJcbiAgcGFkZGluZy1ib3R0b206ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTtcclxuICBmb250LXNpemU6ICRjdXN0b20tc2VsZWN0LXNtLWZvbnQtc2l6ZTtcclxuXHJcbiAgLy8gJjpub3QoW211bHRpcGxlXSkge1xyXG4gIC8vICAgaGVpZ2h0OiAyNnB4O1xyXG4gIC8vICAgbWluLWhlaWdodDogMjZweDtcclxuICAvLyB9XHJcbn1cclxuXHJcblxyXG4vLyBGaWxlXHJcbi8vXHJcbi8vIEN1c3RvbSBmaWxlIGlucHV0LlxyXG5cclxuLmN1c3RvbS1maWxlIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uY3VzdG9tLWZpbGUtaW5wdXQge1xyXG4gIG1pbi13aWR0aDogJGN1c3RvbS1maWxlLXdpZHRoO1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxuICBtYXJnaW46IDA7XHJcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5ID0gMCk7XHJcbiAgb3BhY2l0eTogMDtcclxuXHJcbiAgJjpmb2N1cyB+IC5jdXN0b20tZmlsZS1jb250cm9sIHtcclxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3cpO1xyXG4gIH1cclxufVxyXG5cclxuLmN1c3RvbS1maWxlLWNvbnRyb2wge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgbGVmdDogMDtcclxuICB6LWluZGV4OiA1O1xyXG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcclxuICBwYWRkaW5nOiAkY3VzdG9tLWZpbGUtcGFkZGluZy14ICRjdXN0b20tZmlsZS1wYWRkaW5nLXk7XHJcbiAgbGluZS1oZWlnaHQ6ICRjdXN0b20tZmlsZS1saW5lLWhlaWdodDtcclxuICBjb2xvcjogJGN1c3RvbS1maWxlLWNvbG9yO1xyXG4gIHVzZXItc2VsZWN0OiBub25lO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZmlsZS1iZztcclxuICBib3JkZXI6ICRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGggc29saWQgJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjtcclxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzKTtcclxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tZmlsZS1ib3gtc2hhZG93KTtcclxuXHJcbiAgQGVhY2ggJGxhbmcsICR0ZXh0IGluIG1hcC1nZXQoJGN1c3RvbS1maWxlLXRleHQsIHBsYWNlaG9sZGVyKSB7XHJcbiAgICAmOmxhbmcoI3skbGFuZ30pOjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6ICR0ZXh0O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJjo6YmVmb3JlIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogLSRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGg7XHJcbiAgICByaWdodDogLSRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGg7XHJcbiAgICBib3R0b206IC0kY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoO1xyXG4gICAgei1pbmRleDogNjtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xyXG4gICAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteCAkY3VzdG9tLWZpbGUtcGFkZGluZy15O1xyXG4gICAgbGluZS1oZWlnaHQ6ICRjdXN0b20tZmlsZS1saW5lLWhlaWdodDtcclxuICAgIGNvbG9yOiAkY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1maWxlLWJ1dHRvbi1iZztcclxuICAgIGJvcmRlcjogJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yO1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwICRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzICRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzIDApO1xyXG4gIH1cclxuXHJcbiAgQGVhY2ggJGxhbmcsICR0ZXh0IGluIG1hcC1nZXQoJGN1c3RvbS1maWxlLXRleHQsIGJ1dHRvbi1sYWJlbCkge1xyXG4gICAgJjpsYW5nKCN7JGxhbmd9KTo6YmVmb3JlIHtcclxuICAgICAgY29udGVudDogJHRleHQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIEJhc2UgY2xhc3NcclxuLy9cclxuLy8gS2lja3N0YXJ0IGFueSBuYXZpZ2F0aW9uIGNvbXBvbmVudCB3aXRoIGEgc2V0IG9mIHN0eWxlIHJlc2V0cy4gV29ya3Mgd2l0aFxyXG4vLyBgPG5hdj5gcyBvciBgPHVsPmBzLlxyXG5cclxuLm5hdiB7XHJcbiAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxufVxyXG5cclxuLm5hdi1saW5rIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB9XHJcblxyXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHQgYW5kIHJlbW92ZXMgaG92ZXIvdGFiIGVmZmVjdHNcclxuICAmLmRpc2FibGVkIHtcclxuICAgIGNvbG9yOiAkbmF2LWRpc2FibGVkLWxpbmstY29sb3I7XHJcblxyXG4gICAgQGluY2x1ZGUgcGxhaW4taG92ZXItZm9jdXMge1xyXG4gICAgICBjb2xvcjogJG5hdi1kaXNhYmxlZC1saW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtZGlzYWJsZWQtbGluay1ob3Zlci1iZztcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBOYXYgaW5saW5lXHJcblxyXG4ubmF2LWlubGluZSB7XHJcbiAgLm5hdi1pdGVtIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB9XHJcblxyXG4gIC5uYXYtaXRlbSArIC5uYXYtaXRlbSxcclxuICAubmF2LWxpbmsgKyAubmF2LWxpbmsge1xyXG4gICAgbWFyZ2luLWxlZnQ6ICRuYXYtaXRlbS1pbmxpbmUtc3BhY2VyO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vXHJcbi8vIFRhYnNcclxuLy9cclxuXHJcbi5uYXYtdGFicyB7XHJcbiAgYm9yZGVyLWJvdHRvbTogJG5hdi10YWJzLWJvcmRlci13aWR0aCBzb2xpZCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xyXG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XHJcblxyXG4gIC5uYXYtaXRlbSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIC8vIE1ha2UgdGhlIGxpc3QtaXRlbXMgb3ZlcmxheSB0aGUgYm90dG9tIGJvcmRlclxyXG4gICAgbWFyZ2luLWJvdHRvbTogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XHJcblxyXG4gICAgKyAubmF2LWl0ZW0ge1xyXG4gICAgICBtYXJnaW4tbGVmdDogJG5hdi1pdGVtLW1hcmdpbjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5uYXYtbGluayB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBhZGRpbmc6ICRuYXYtbGluay1wYWRkaW5nO1xyXG4gICAgYm9yZGVyOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG5hdi10YWJzLWJvcmRlci1yYWRpdXMpO1xyXG5cclxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcclxuICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IgJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yICRuYXYtdGFicy1ib3JkZXItY29sb3I7XHJcbiAgICB9XHJcblxyXG4gICAgJi5kaXNhYmxlZCB7XHJcbiAgICAgIEBpbmNsdWRlIHBsYWluLWhvdmVyLWZvY3VzIHtcclxuICAgICAgICBjb2xvcjogJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5uYXYtbGluay5hY3RpdmUsXHJcbiAgLm5hdi1pdGVtLm9wZW4gLm5hdi1saW5rIHtcclxuICAgIEBpbmNsdWRlIHBsYWluLWhvdmVyLWZvY3VzIHtcclxuICAgICAgY29sb3I6ICRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJnO1xyXG4gICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1ib3JkZXItY29sb3IgJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJvcmRlci1jb2xvciB0cmFuc3BhcmVudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5kcm9wZG93bi1tZW51IHtcclxuICAgIC8vIE1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxyXG4gICAgbWFyZ2luLXRvcDogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XHJcbiAgICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxyXG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy9cclxuLy8gUGlsbHNcclxuLy9cclxuXHJcbi5uYXYtcGlsbHMge1xyXG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XHJcblxyXG4gIC5uYXYtaXRlbSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuXHJcbiAgICArIC5uYXYtaXRlbSB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAkbmF2LWl0ZW0tbWFyZ2luO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm5hdi1saW5rIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcGFkZGluZzogJG5hdi1saW5rLXBhZGRpbmc7XHJcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1cyk7XHJcbiAgfVxyXG5cclxuICAubmF2LWxpbmsuYWN0aXZlLFxyXG4gIC5uYXYtaXRlbS5vcGVuIC5uYXYtbGluayB7XHJcbiAgICBAaW5jbHVkZSBwbGFpbi1ob3Zlci1mb2N1cyB7XHJcbiAgICAgIGNvbG9yOiAkbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWNvbG9yO1xyXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtcGlsbHMtYWN0aXZlLWxpbmstYmc7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ubmF2LXN0YWNrZWQge1xyXG4gIC5uYXYtaXRlbSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGZsb2F0OiBub25lO1xyXG5cclxuICAgICsgLm5hdi1pdGVtIHtcclxuICAgICAgbWFyZ2luLXRvcDogJG5hdi1pdGVtLW1hcmdpbjtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy9cclxuLy8gVGFiYmFibGUgdGFic1xyXG4vL1xyXG5cclxuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXHJcbi50YWItY29udGVudCB7XHJcbiAgPiAudGFiLXBhbmUge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbiAgPiAuYWN0aXZlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxufVxyXG4iLCIvLyBXcmFwcGVyIGFuZCBiYXNlIGNsYXNzXHJcbi8vXHJcbi8vIFByb3ZpZGUgYSBzdGF0aWMgbmF2YmFyIGZyb20gd2hpY2ggd2UgZXhwYW5kIHRvIGNyZWF0ZSBmdWxsLXdpZHRoLCBmaXhlZCwgYW5kXHJcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxyXG5cclxuLm5hdmJhciB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHBhZGRpbmc6ICRuYXZiYXItcGFkZGluZy15ICRuYXZiYXItcGFkZGluZy14O1xyXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XHJcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXZiYXItYm9yZGVyLXJhZGl1cyk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gTmF2YmFyIGFsaWdubWVudCBvcHRpb25zXHJcbi8vXHJcbi8vIERpc3BsYXkgdGhlIG5hdmJhciBhY3Jvc3MgdGhlIGVudGlyZXR5IG9mIHRoZSBwYWdlIG9yIGZpeGVkIGl0IHRvIHRoZSB0b3Agb3JcclxuLy8gYm90dG9tIG9mIHRoZSBwYWdlLlxyXG5cclxuLy8gQSBzdGF0aWMsIGZ1bGwgd2lkdGggbW9kaWZpZXIgd2l0aCBubyByb3VuZGVkIGNvcm5lcnMuXHJcbi5uYXZiYXItZnVsbCB7XHJcbiAgei1pbmRleDogJHppbmRleC1uYXZiYXI7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBGaXggdGhlIHRvcC9ib3R0b20gbmF2YmFycyB3aGVuIHNjcmVlbiByZWFsIGVzdGF0ZSBzdXBwb3J0cyBpdFxyXG4ubmF2YmFyLWZpeGVkLXRvcCxcclxuLm5hdmJhci1maXhlZC1ib3R0b20ge1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICByaWdodDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHotaW5kZXg6ICR6aW5kZXgtbmF2YmFyLWZpeGVkO1xyXG5cclxuICAvLyBVbmRvIHRoZSByb3VuZGVkIGNvcm5lcnNcclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XHJcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xyXG4gIH1cclxufVxyXG5cclxuLm5hdmJhci1maXhlZC10b3Age1xyXG4gIHRvcDogMDtcclxufVxyXG5cclxuLm5hdmJhci1maXhlZC1ib3R0b20ge1xyXG4gIGJvdHRvbTogMDtcclxufVxyXG5cclxuLm5hdmJhci1zdGlja3ktdG9wIHtcclxuICBwb3NpdGlvbjogc3RpY2t5O1xyXG4gIHRvcDogMDtcclxuICB6LWluZGV4OiAkemluZGV4LW5hdmJhci1zdGlja3k7XHJcbiAgd2lkdGg6IDEwMCU7XHJcblxyXG4gIC8vIFVuZG8gdGhlIHJvdW5kZWQgY29ybmVyc1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy9cclxuLy8gQnJhbmQvcHJvamVjdCBuYW1lXHJcbi8vXHJcblxyXG4ubmF2YmFyLWJyYW5kIHtcclxuICBmbG9hdDogbGVmdDtcclxuICBwYWRkaW5nLXRvcDogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XHJcbiAgcGFkZGluZy1ib3R0b206ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xyXG4gIG1hcmdpbi1yaWdodDogMXJlbTtcclxuICBmb250LXNpemU6ICRmb250LXNpemUtbGc7XHJcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcblxyXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4ubmF2YmFyLWRpdmlkZXIge1xyXG4gIGZsb2F0OiBsZWZ0O1xyXG4gIHdpZHRoOiAkYm9yZGVyLXdpZHRoO1xyXG4gIHBhZGRpbmctdG9wOiAkbmF2YmFyLWRpdmlkZXItcGFkZGluZy15O1xyXG4gIHBhZGRpbmctYm90dG9tOiAkbmF2YmFyLWRpdmlkZXItcGFkZGluZy15O1xyXG4gIG1hcmdpbi1yaWdodDogJG5hdmJhci1wYWRkaW5nLXg7XHJcbiAgbWFyZ2luLWxlZnQ6ICAkbmF2YmFyLXBhZGRpbmcteDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAmOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXDAwYTBcIjtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBOYXZiYXIgdGV4dFxyXG4vL1xyXG4vL1xyXG5cclxuLm5hdmJhci10ZXh0IHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgcGFkZGluZy10b3A6ICAgIC40MjVyZW07XHJcbiAgcGFkZGluZy1ib3R0b206IC40MjVyZW07XHJcbn1cclxuXHJcblxyXG4vLyBOYXZiYXIgdG9nZ2xlXHJcbi8vXHJcbi8vIEN1c3RvbSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBgLm5hdmJhci1jb2xsYXBzZWAsIHBvd2VyZWQgYnkgdGhlIGNvbGxhcHNlXHJcbi8vIEJvb3RzdHJhcCBKYXZhU2NyaXB0IHBsdWdpbi5cclxuXHJcbi5uYXZiYXItdG9nZ2xlciB7XHJcbiAgd2lkdGg6IDIuNWVtO1xyXG4gIGhlaWdodDogMmVtO1xyXG4gIHBhZGRpbmc6ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXkgJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDtcclxuICBmb250LXNpemU6ICRuYXZiYXItdG9nZ2xlci1mb250LXNpemU7XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZC1zaXplOiAyNHB4IDI0cHg7XHJcbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXMpO1xyXG5cclxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBzY3NzLWxpbnQ6ZGlzYWJsZSBJbXBvcnRhbnRSdWxlXHJcbi5uYXZiYXItdG9nZ2xlYWJsZSB7XHJcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcclxuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcclxuXHJcbiAgICAmLSN7JGJyZWFrcG9pbnR9IHtcclxuICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcclxuICAgICAgICAubmF2YmFyLWJyYW5kIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiAuNXJlbTtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5uYXZiYXItbmF2IHtcclxuICAgICAgICAgIG1hcmdpbi10b3A6IC41cmVtO1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogLjVyZW07XHJcblxyXG4gICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vLyBzY3NzLWxpbnQ6ZW5hYmxlIEltcG9ydGFudFJ1bGVcclxuXHJcblxyXG4vLyBOYXZpZ2F0aW9uXHJcbi8vXHJcbi8vIEN1c3RvbSBuYXZiYXIgbmF2aWdhdGlvbiBidWlsdCBvbiB0aGUgYmFzZSBgLm5hdmAgc3R5bGVzLlxyXG5cclxuLm5hdmJhci1uYXYge1xyXG4gIC5uYXYtaXRlbSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICB9XHJcblxyXG4gIC5uYXYtbGluayB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBhZGRpbmctdG9wOiAgICAuNDI1cmVtO1xyXG4gICAgcGFkZGluZy1ib3R0b206IC40MjVyZW07XHJcblxyXG4gICAgKyAubmF2LWxpbmsge1xyXG4gICAgICBtYXJnaW4tbGVmdDogMXJlbTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5uYXYtaXRlbSArIC5uYXYtaXRlbSB7XHJcbiAgICBtYXJnaW4tbGVmdDogMXJlbTtcclxuICB9XHJcbn1cclxuXHJcbi8vIERhcmsgbGlua3MgYWdhaW5zdCBhIGxpZ2h0IGJhY2tncm91bmRcclxuLm5hdmJhci1saWdodCB7XHJcbiAgLm5hdmJhci1icmFuZCxcclxuICAubmF2YmFyLXRvZ2dsZXIge1xyXG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xyXG5cclxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcclxuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm5hdmJhci1uYXYge1xyXG4gICAgLm5hdi1saW5rIHtcclxuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XHJcblxyXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XHJcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAub3BlbiA+IC5uYXYtbGluayxcclxuICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXHJcbiAgICAubmF2LWxpbmsub3BlbixcclxuICAgIC5uYXYtbGluay5hY3RpdmUge1xyXG4gICAgICBAaW5jbHVkZSBwbGFpbi1ob3Zlci1mb2N1cyB7XHJcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubmF2YmFyLXRvZ2dsZXIge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogJG5hdmJhci1saWdodC10b2dnbGVyLWJnO1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyO1xyXG4gIH1cclxuXHJcbiAgLm5hdmJhci1kaXZpZGVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjA3NSk7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBXaGl0ZSBsaW5rcyBhZ2FpbnN0IGEgZGFyayBiYWNrZ3JvdW5kXHJcbi5uYXZiYXItZGFyayB7XHJcbiAgLm5hdmJhci1icmFuZCxcclxuICAubmF2YmFyLXRvZ2dsZXIge1xyXG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XHJcblxyXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xyXG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5uYXZiYXItbmF2IHtcclxuICAgIC5uYXYtbGluayB7XHJcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XHJcblxyXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XHJcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5vcGVuID4gLm5hdi1saW5rLFxyXG4gICAgLmFjdGl2ZSA+IC5uYXYtbGluayxcclxuICAgIC5uYXYtbGluay5vcGVuLFxyXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XHJcbiAgICAgIEBpbmNsdWRlIHBsYWluLWhvdmVyLWZvY3VzIHtcclxuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm5hdmJhci10b2dnbGVyIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6ICRuYXZiYXItZGFyay10b2dnbGVyLWJnO1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXI7XHJcbiAgfVxyXG5cclxuICAubmF2YmFyLWRpdmlkZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuMDc1KTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBOYXZiYXIgdG9nZ2xlYWJsZVxyXG4vL1xyXG4vLyBDdXN0b20gb3ZlcnJpZGUgZm9yIGNvbGxhcHNlIHBsdWdpbiBpbiBuYXZiYXIuXHJcblxyXG4ubmF2YmFyLXRvZ2dsZWFibGUge1xyXG4gICYteHMge1xyXG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcclxuICAgICAgLm5hdmJhci1uYXYgLm5hdi1pdGVtIHtcclxuICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xyXG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi1zbSB7XHJcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAubmF2YmFyLW5hdiAubmF2LWl0ZW0ge1xyXG4gICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLW1kIHtcclxuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgIC5uYXZiYXItbmF2IC5uYXYtaXRlbSB7XHJcbiAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gQmFzZSBzdHlsZXNcclxuLy9cclxuXHJcbi5jYXJkIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luLWJvdHRvbTogJGNhcmQtc3BhY2VyLXk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmc7XHJcbiAgLy8gYm9yZGVyOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xyXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XHJcbiAgYm9yZGVyOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xyXG59XHJcblxyXG4uY2FyZC1ibG9jayB7XHJcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXg7XHJcbn1cclxuXHJcbi5jYXJkLXRpdGxlIHtcclxuICBtYXJnaW4tYm90dG9tOiAkY2FyZC1zcGFjZXIteTtcclxufVxyXG5cclxuLmNhcmQtc3VidGl0bGUge1xyXG4gIG1hcmdpbi10b3A6IC0oJGNhcmQtc3BhY2VyLXkgLyAyKTtcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG59XHJcblxyXG4uY2FyZC10ZXh0Omxhc3QtY2hpbGQge1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbn1cclxuXHJcbi8vIC5jYXJkLWFjdGlvbnMge1xyXG4vLyAgIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xyXG5cclxuLy8gICAuY2FyZC1saW5rICsgLmNhcmQtbGluayB7XHJcbi8vICAgICBtYXJnaW4tbGVmdDogJGNhcmQtc3BhY2VyLXg7XHJcbi8vICAgfVxyXG4vLyB9XHJcblxyXG4uY2FyZC1saW5rIHtcclxuICBAaW5jbHVkZSBob3ZlciB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgfVxyXG5cclxuICArIC5jYXJkLWxpbmsge1xyXG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJkLXNwYWNlci14O1xyXG4gIH1cclxufVxyXG5cclxuLmNhcmQge1xyXG4gID4gLmxpc3QtZ3JvdXA6Zmlyc3QtY2hpbGQge1xyXG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XHJcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgPiAubGlzdC1ncm91cDpsYXN0LWNoaWxkIHtcclxuICAgIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XHJcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vXHJcbi8vIE9wdGlvbmFsIHRleHR1YWwgY2Fwc1xyXG4vL1xyXG5cclxuLmNhcmQtaGVhZGVyIHtcclxuICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteSAkY2FyZC1zcGFjZXIteDtcclxuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZW1vdmVzIHRoZSBkZWZhdWx0IG1hcmdpbi1ib3R0b20gb2YgPGhOPlxyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcclxuICBib3JkZXItYm90dG9tOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xyXG5cclxuICAmOmZpcnN0LWNoaWxkIHtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cy1pbm5lciAkY2FyZC1ib3JkZXItcmFkaXVzLWlubmVyIDAgMCk7XHJcbiAgfVxyXG59XHJcblxyXG4uY2FyZC1mb290ZXIge1xyXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcclxuICBib3JkZXItdG9wOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xyXG5cclxuICAmOmxhc3QtY2hpbGQge1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwIDAgJGNhcmQtYm9yZGVyLXJhZGl1cy1pbm5lciAkY2FyZC1ib3JkZXItcmFkaXVzLWlubmVyKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vL1xyXG4vLyBIZWFkZXIgbmF2c1xyXG4vL1xyXG5cclxuLmNhcmQtaGVhZGVyLXRhYnMge1xyXG4gIG1hcmdpbi1yaWdodDogLSgkY2FyZC1zcGFjZXIteCAvIDIpO1xyXG4gIG1hcmdpbi1ib3R0b206IC0kY2FyZC1zcGFjZXIteTtcclxuICBtYXJnaW4tbGVmdDogLSgkY2FyZC1zcGFjZXIteCAvIDIpO1xyXG4gIGJvcmRlci1ib3R0b206IDA7XHJcbn1cclxuXHJcbi5jYXJkLWhlYWRlci1waWxscyB7XHJcbiAgbWFyZ2luLXJpZ2h0OiAtKCRjYXJkLXNwYWNlci14IC8gMik7XHJcbiAgbWFyZ2luLWxlZnQ6IC0oJGNhcmQtc3BhY2VyLXggLyAyKTtcclxufVxyXG5cclxuXHJcbi8vXHJcbi8vIEJhY2tncm91bmQgdmFyaWF0aW9uc1xyXG4vL1xyXG5cclxuLmNhcmQtcHJpbWFyeSB7XHJcbiAgQGluY2x1ZGUgY2FyZC12YXJpYW50KCRicmFuZC1wcmltYXJ5LCAkYnJhbmQtcHJpbWFyeSk7XHJcbn1cclxuLmNhcmQtc3VjY2VzcyB7XHJcbiAgQGluY2x1ZGUgY2FyZC12YXJpYW50KCRicmFuZC1zdWNjZXNzLCAkYnJhbmQtc3VjY2Vzcyk7XHJcbn1cclxuLmNhcmQtaW5mbyB7XHJcbiAgQGluY2x1ZGUgY2FyZC12YXJpYW50KCRicmFuZC1pbmZvLCAkYnJhbmQtaW5mbyk7XHJcbn1cclxuLmNhcmQtd2FybmluZyB7XHJcbiAgQGluY2x1ZGUgY2FyZC12YXJpYW50KCRicmFuZC13YXJuaW5nLCAkYnJhbmQtd2FybmluZyk7XHJcbn1cclxuLmNhcmQtZGFuZ2VyIHtcclxuICBAaW5jbHVkZSBjYXJkLXZhcmlhbnQoJGJyYW5kLWRhbmdlciwgJGJyYW5kLWRhbmdlcik7XHJcbn1cclxuXHJcbi8vIFJlbW92ZSBhbGwgYmFja2dyb3VuZHNcclxuLmNhcmQtb3V0bGluZS1wcmltYXJ5IHtcclxuICBAaW5jbHVkZSBjYXJkLW91dGxpbmUtdmFyaWFudCgkYnRuLXByaW1hcnktYmcpO1xyXG59XHJcbi5jYXJkLW91dGxpbmUtc2Vjb25kYXJ5IHtcclxuICBAaW5jbHVkZSBjYXJkLW91dGxpbmUtdmFyaWFudCgkYnRuLXNlY29uZGFyeS1ib3JkZXIpO1xyXG59XHJcbi5jYXJkLW91dGxpbmUtaW5mbyB7XHJcbiAgQGluY2x1ZGUgY2FyZC1vdXRsaW5lLXZhcmlhbnQoJGJ0bi1pbmZvLWJnKTtcclxufVxyXG4uY2FyZC1vdXRsaW5lLXN1Y2Nlc3Mge1xyXG4gIEBpbmNsdWRlIGNhcmQtb3V0bGluZS12YXJpYW50KCRidG4tc3VjY2Vzcy1iZyk7XHJcbn1cclxuLmNhcmQtb3V0bGluZS13YXJuaW5nIHtcclxuICBAaW5jbHVkZSBjYXJkLW91dGxpbmUtdmFyaWFudCgkYnRuLXdhcm5pbmctYmcpO1xyXG59XHJcbi5jYXJkLW91dGxpbmUtZGFuZ2VyIHtcclxuICBAaW5jbHVkZSBjYXJkLW91dGxpbmUtdmFyaWFudCgkYnRuLWRhbmdlci1iZyk7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEludmVyc2UgdGV4dCB3aXRoaW4gYSBjYXJkIGZvciB1c2Ugd2l0aCBkYXJrIGJhY2tncm91bmRzXHJcbi8vXHJcblxyXG4uY2FyZC1pbnZlcnNlIHtcclxuICBAaW5jbHVkZSBjYXJkLWludmVyc2U7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEJsb2NrcXVvdGVcclxuLy9cclxuXHJcbi5jYXJkLWJsb2NrcXVvdGUge1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICBib3JkZXItbGVmdDogMDtcclxufVxyXG5cclxuLy8gQ2FyZCBpbWFnZVxyXG4uY2FyZC1pbWcge1xyXG4gIC8vIG1hcmdpbjogLTEuMzI1cmVtO1xyXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cy1pbm5lcik7XHJcbn1cclxuLmNhcmQtaW1nLW92ZXJsYXkge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgYm90dG9tOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgcGFkZGluZzogJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZztcclxufVxyXG5cclxuXHJcblxyXG4vLyBDYXJkIGltYWdlIGNhcHNcclxuLmNhcmQtaW1nLXRvcCB7XHJcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cy1pbm5lcik7XHJcbn1cclxuLmNhcmQtaW1nLWJvdHRvbSB7XHJcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cy1pbm5lcik7XHJcbn1cclxuXHJcblxyXG4vLyBDYXJkIHNldFxyXG4vL1xyXG4vLyBIZWFkcyB1cCEgV2UgZG8gc29tZSBmdW5reSBzdHlsZSByZXNldHRpbmcgaGVyZSBmb3IgbWFyZ2lucyBhY3Jvc3Mgb3VyIHR3b1xyXG4vLyB2YXJpYXRpb25zIChvbmUgZmxleCwgb25lIHRhYmxlKS4gSW5kaXZpZHVhbCBjYXJkcyBoYXZlIG1hcmdpbi1ib3R0b20gYnlcclxuLy8gZGVmYXVsdCwgYnV0IHRoZXkncmUgaWdub3JlZCBkdWUgdG8gdGFibGUgc3R5bGVzLiBGb3IgYSBjb25zaXN0ZW50IGRlc2lnbixcclxuLy8gd2UndmUgZG9uZSB0aGUgc2FtZSB0byB0aGUgZmxleCB2YXJpYXRpb24uXHJcbi8vXHJcbi8vIFRob3NlIGNoYW5nZXMgYXJlIG5vdGVkIGJ5IGAvLyBNYXJnaW4gYmFsYW5jaW5nYC5cclxuXHJcbkBpZiAkZW5hYmxlLWZsZXgge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcclxuICAgIC5jYXJkLWRlY2sge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1kZWNrLW1hcmdpbjtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtc3BhY2VyLXk7IC8vIE1hcmdpbiBiYWxhbmNpbmdcclxuICAgICAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1kZWNrLW1hcmdpbjtcclxuXHJcbiAgICAgIC5jYXJkIHtcclxuICAgICAgICBmbGV4OiAxIDAgMDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJkLWRlY2stbWFyZ2luO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIE1hcmdpbiBiYWxhbmNpbmdcclxuICAgICAgICBtYXJnaW4tbGVmdDogJGNhcmQtZGVjay1tYXJnaW47XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn0gQGVsc2Uge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcclxuICAgICRzcGFjZS1iZXR3ZWVuLWNhcmRzOiAoMiAqICRjYXJkLWRlY2stbWFyZ2luKTtcclxuICAgIC5jYXJkLWRlY2sge1xyXG4gICAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLXNwYWNlci15OyAvLyBNYXJnaW4gYmFsYW5jaW5nXHJcbiAgICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XHJcbiAgICAgIGJvcmRlci1zcGFjaW5nOiAkc3BhY2UtYmV0d2Vlbi1jYXJkcyAwO1xyXG5cclxuICAgICAgLmNhcmQge1xyXG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gTWFyZ2luIGJhbGFuY2luZ1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5jYXJkLWRlY2std3JhcHBlciB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogKC0kc3BhY2UtYmV0d2Vlbi1jYXJkcyk7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAoLSRzcGFjZS1iZXR3ZWVuLWNhcmRzKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vXHJcbi8vIENhcmQgZ3JvdXBzXHJcbi8vXHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XHJcbiAgLmNhcmQtZ3JvdXAge1xyXG4gICAgQGlmICRlbmFibGUtZmxleCB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgZGlzcGxheTogdGFibGU7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xyXG4gICAgfVxyXG5cclxuICAgIC5jYXJkIHtcclxuICAgICAgQGlmICRlbmFibGUtZmxleCB7XHJcbiAgICAgICAgZmxleDogMSAwIDA7XHJcbiAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgfVxyXG5cclxuICAgICAgKyAuY2FyZCB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8vIEhhbmRsZSByb3VuZGVkIGNvcm5lcnNcclxuICAgICAgQGlmICRlbmFibGUtcm91bmRlZCB7XHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xyXG5cclxuICAgICAgICAgIC5jYXJkLWltZy10b3Age1xyXG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20ge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcclxuXHJcbiAgICAgICAgICAuY2FyZC1pbWctdG9wIHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20ge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcblxyXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcclxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20ge1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vXHJcbi8vIENhcmRcclxuLy9cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcclxuICAuY2FyZC1jb2x1bW5zIHtcclxuICAgIGNvbHVtbi1jb3VudDogMztcclxuICAgIGNvbHVtbi1nYXA6ICRjYXJkLWNvbHVtbnMtc20tdXAtY29sdW1uLWdhcDtcclxuXHJcbiAgICAuY2FyZCB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gRG9uJ3QgbGV0IHRoZW0gdmVydGljYWxseSBzcGFuIG11bHRpcGxlIGNvbHVtbnNcclxuICAgICAgd2lkdGg6IDEwMCU7IC8vIERvbid0IGxldCB0aGVtIGV4Y2VlZCB0aGUgY29sdW1uIHdpZHRoXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIEJhc2Ugc3R5bGVzXHJcbi8vXHJcblxyXG4uYWxlcnQge1xyXG4gIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcclxuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyLXk7XHJcbiAgYm9yZGVyOiAkYWxlcnQtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGFsZXJ0LWJvcmRlci1yYWRpdXMpO1xyXG59XHJcblxyXG4vLyBIZWFkaW5ncyBmb3IgbGFyZ2VyIGFsZXJ0c1xyXG4uYWxlcnQtaGVhZGluZyB7XHJcbiAgLy8gU3BlY2lmaWVkIHRvIHByZXZlbnQgY29uZmxpY3RzIG9mIGNoYW5naW5nICRoZWFkaW5ncy1jb2xvclxyXG4gIGNvbG9yOiBpbmhlcml0O1xyXG59XHJcblxyXG4vLyBQcm92aWRlIGNsYXNzIGZvciBsaW5rcyB0aGF0IG1hdGNoIGFsZXJ0c1xyXG4uYWxlcnQtbGluayB7XHJcbiAgZm9udC13ZWlnaHQ6ICRhbGVydC1saW5rLWZvbnQtd2VpZ2h0O1xyXG59XHJcblxyXG5cclxuLy8gRGlzbWlzc2libGUgYWxlcnRzXHJcbi8vXHJcbi8vIEV4cGFuZCB0aGUgcmlnaHQgcGFkZGluZyBhbmQgYWNjb3VudCBmb3IgdGhlIGNsb3NlIGJ1dHRvbidzIHBvc2l0aW9uaW5nLlxyXG5cclxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcclxuICBwYWRkaW5nLXJpZ2h0OiAoJGFsZXJ0LXBhZGRpbmcteCAqIDIpO1xyXG5cclxuICAvLyBBZGp1c3QgY2xvc2UgbGluayBwb3NpdGlvblxyXG4gIC5jbG9zZSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0b3A6IC0uMTI1cmVtO1xyXG4gICAgcmlnaHQ6IC0kYWxlcnQtcGFkZGluZy14O1xyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gQWx0ZXJuYXRlIHN0eWxlc1xyXG4vL1xyXG4vLyBHZW5lcmF0ZSBjb250ZXh0dWFsIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGNvbG9yaXppbmcgdGhlIGFsZXJ0LlxyXG5cclxuLmFsZXJ0LXN1Y2Nlc3Mge1xyXG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LXN1Y2Nlc3MtYmcsICRhbGVydC1zdWNjZXNzLWJvcmRlciwgJGFsZXJ0LXN1Y2Nlc3MtdGV4dCk7XHJcbn1cclxuLmFsZXJ0LWluZm8ge1xyXG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LWluZm8tYmcsICRhbGVydC1pbmZvLWJvcmRlciwgJGFsZXJ0LWluZm8tdGV4dCk7XHJcbn1cclxuLmFsZXJ0LXdhcm5pbmcge1xyXG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LXdhcm5pbmctYmcsICRhbGVydC13YXJuaW5nLWJvcmRlciwgJGFsZXJ0LXdhcm5pbmctdGV4dCk7XHJcbn1cclxuLmFsZXJ0LWRhbmdlciB7XHJcbiAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtZGFuZ2VyLWJnLCAkYWxlcnQtZGFuZ2VyLWJvcmRlciwgJGFsZXJ0LWRhbmdlci10ZXh0KTtcclxufVxyXG4iLCIvL1xyXG4vLyBQcm9ncmVzcyBhbmltYXRpb25zXHJcbi8vXHJcblxyXG5Aa2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcclxuICBmcm9tIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogJHNwYWNlci15IDA7IH1cclxuICB0byB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxyXG59XHJcblxyXG5cclxuLy9cclxuLy8gQmFzaWMgcHJvZ3Jlc3MgYmFyXHJcbi8vXHJcblxyXG4ucHJvZ3Jlc3Mge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogJHNwYWNlci15OyAvLyB0b2RvOiBtYWtlIGEgbmV3IHZhciBmb3IgdGhpc1xyXG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXIteTtcclxufVxyXG4ucHJvZ3Jlc3NbdmFsdWVdIHtcclxuICAvLyBTZXQgb3ZlcmFsbCBiYWNrZ3JvdW5kXHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJnO1xyXG4gIC8vIFJlbW92ZSBGaXJlZm94IGFuZCBPcGVyYSBib3JkZXJcclxuICBib3JkZXI6IDA7XHJcbiAgLy8gUmVzZXQgdGhlIGRlZmF1bHQgYXBwZWFyYW5jZVxyXG4gIGFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgLy8gU2V0IG92ZXJhbGwgYm9yZGVyIHJhZGl1c1xyXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHByb2dyZXNzLWJvcmRlci1yYWRpdXMpO1xyXG59XHJcblxyXG4vLyBGaWxsZWQtaW4gcG9ydGlvbiBvZiB0aGUgYmFyXHJcbi5wcm9ncmVzc1t2YWx1ZV06Oi1tcy1maWxsIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xyXG4gIC8vIFJlbW92ZSByaWdodC1oYW5kIGJvcmRlciBvZiB2YWx1ZSBiYXIgZnJvbSBJRTEwKy9FZGdlXHJcbiAgYm9yZGVyOiAwO1xyXG59XHJcbi5wcm9ncmVzc1t2YWx1ZV06Oi1tb3otcHJvZ3Jlc3MtYmFyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xyXG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cyk7XHJcbn1cclxuLnByb2dyZXNzW3ZhbHVlXTo6LXdlYmtpdC1wcm9ncmVzcy12YWx1ZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1jb2xvcjtcclxuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJHByb2dyZXNzLWJvcmRlci1yYWRpdXMpO1xyXG59XHJcbi8vIFR3ZWFrcyBmb3IgZnVsbCBwcm9ncmVzcyBiYXJcclxuLnByb2dyZXNzW3ZhbHVlPVwiMTAwXCJdOjotbW96LXByb2dyZXNzLWJhciB7XHJcbiAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cyk7XHJcbn1cclxuLnByb2dyZXNzW3ZhbHVlPVwiMTAwXCJdOjotd2Via2l0LXByb2dyZXNzLXZhbHVlIHtcclxuICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRwcm9ncmVzcy1ib3JkZXItcmFkaXVzKTtcclxufVxyXG5cclxuLy8gVW5maWxsZWQgcG9ydGlvbiBvZiB0aGUgYmFyXHJcbi5wcm9ncmVzc1t2YWx1ZV06Oi13ZWJraXQtcHJvZ3Jlc3MtYmFyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmc7XHJcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cyk7XHJcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkcHJvZ3Jlc3MtYm94LXNoYWRvdyk7XHJcbn1cclxuYmFzZTo6LW1vei1wcm9ncmVzcy1iYXIsIC8vIEFic3VyZC1idXQtc3ludGFjdGljYWxseS12YWxpZCBzZWxlY3RvciB0byBtYWtlIHRoZXNlIHN0eWxlcyBGaXJlZm94LW9ubHlcclxuLnByb2dyZXNzW3ZhbHVlXSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJnO1xyXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHByb2dyZXNzLWJvcmRlci1yYWRpdXMpO1xyXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHByb2dyZXNzLWJveC1zaGFkb3cpO1xyXG59XHJcblxyXG4vLyBJRTkgaGFja3MgdG8gYWNjb21wYW55IGN1c3RvbSBtYXJrdXAuIFdlIGRvbid0IG5lZWQgdG8gc2NvcGUgdGhpcyB2aWEgbWVkaWEgcXVlcmllcywgYnV0IEkgZmVlbCBiZXR0ZXIgZG9pbmcgaXQgYW55d2F5LlxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjBcXDApIHtcclxuICAucHJvZ3Jlc3Mge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJnO1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRwcm9ncmVzcy1ib3gtc2hhZG93KTtcclxuICB9XHJcbiAgLnByb2dyZXNzLWJhciB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBoZWlnaHQ6ICRzcGFjZXIteTtcclxuICAgIHRleHQtaW5kZW50OiAtOTk5cmVtOyAvLyBTaW11bGF0ZSBoaWRpbmcgb2YgdmFsdWUgYXMgaW4gbmF0aXZlIGA8cHJvZ3Jlc3M+YFxyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1jb2xvcjtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cyk7XHJcbiAgfVxyXG4gIC5wcm9ncmVzc1t3aWR0aD1cIjEwMCVcIl0ge1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cyk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy9cclxuLy8gU3RyaXBlZFxyXG4vL1xyXG5cclxuLnByb2dyZXNzLXN0cmlwZWRbdmFsdWVdOjotd2Via2l0LXByb2dyZXNzLXZhbHVlIHtcclxuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkKCk7XHJcbiAgYmFja2dyb3VuZC1zaXplOiAkc3BhY2VyLXkgJHNwYWNlci15O1xyXG59XHJcbi5wcm9ncmVzcy1zdHJpcGVkW3ZhbHVlXTo6LW1vei1wcm9ncmVzcy1iYXIge1xyXG4gIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQoKTtcclxuICBiYWNrZ3JvdW5kLXNpemU6ICRzcGFjZXIteSAkc3BhY2VyLXk7XHJcbn1cclxuLnByb2dyZXNzLXN0cmlwZWRbdmFsdWVdOjotbXMtZmlsbCB7XHJcbiAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZCgpO1xyXG4gIGJhY2tncm91bmQtc2l6ZTogJHNwYWNlci15ICRzcGFjZXIteTtcclxufVxyXG4vLyBJRTlcclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDowXFwwKSB7XHJcbiAgLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcclxuICAgIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQoKTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogJHNwYWNlci15ICRzcGFjZXIteTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vL1xyXG4vLyBBbmltYXRlZFxyXG4vL1xyXG5cclxuLnByb2dyZXNzLWFuaW1hdGVkW3ZhbHVlXTo6LXdlYmtpdC1wcm9ncmVzcy12YWx1ZSB7XHJcbiAgYW5pbWF0aW9uOiBwcm9ncmVzcy1iYXItc3RyaXBlcyAycyBsaW5lYXIgaW5maW5pdGU7XHJcbn1cclxuLnByb2dyZXNzLWFuaW1hdGVkW3ZhbHVlXTo6LW1vei1wcm9ncmVzcy1iYXIge1xyXG4gIGFuaW1hdGlvbjogcHJvZ3Jlc3MtYmFyLXN0cmlwZXMgMnMgbGluZWFyIGluZmluaXRlO1xyXG59XHJcbi8vIElFOVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjBcXDApIHtcclxuICAucHJvZ3Jlc3MtYW5pbWF0ZWQgLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcclxuICAgIGFuaW1hdGlvbjogcHJvZ3Jlc3MtYmFyLXN0cmlwZXMgMnMgbGluZWFyIGluZmluaXRlO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vXHJcbi8vIFZhcmlhdGlvbnNcclxuLy9cclxuXHJcbi5wcm9ncmVzcy1zdWNjZXNzIHtcclxuICBAaW5jbHVkZSBwcm9ncmVzcy12YXJpYW50KCRwcm9ncmVzcy1iYXItc3VjY2Vzcy1iZyk7XHJcbn1cclxuLnByb2dyZXNzLWluZm8ge1xyXG4gIEBpbmNsdWRlIHByb2dyZXNzLXZhcmlhbnQoJHByb2dyZXNzLWJhci1pbmZvLWJnKTtcclxufVxyXG4ucHJvZ3Jlc3Mtd2FybmluZyB7XHJcbiAgQGluY2x1ZGUgcHJvZ3Jlc3MtdmFyaWFudCgkcHJvZ3Jlc3MtYmFyLXdhcm5pbmctYmcpO1xyXG59XHJcbi5wcm9ncmVzcy1kYW5nZXIge1xyXG4gIEBpbmNsdWRlIHByb2dyZXNzLXZhcmlhbnQoJHByb2dyZXNzLWJhci1kYW5nZXItYmcpO1xyXG59XHJcbiIsIkBpZiAkZW5hYmxlLWZsZXgge1xyXG4gIC5tZWRpYSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gIH1cclxuICAubWVkaWEtYm9keSB7XHJcbiAgICBmbGV4OiAxO1xyXG4gIH1cclxuICAubWVkaWEtbWlkZGxlIHtcclxuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcclxuICB9XHJcbiAgLm1lZGlhLWJvdHRvbSB7XHJcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcclxuICB9XHJcbn0gQGVsc2Uge1xyXG4gIC5tZWRpYSxcclxuICAubWVkaWEtYm9keSB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIH1cclxuICAubWVkaWEtYm9keSB7XHJcbiAgICB3aWR0aDogMTAwMDBweDtcclxuICB9XHJcbiAgLm1lZGlhLWxlZnQsXHJcbiAgLm1lZGlhLXJpZ2h0LFxyXG4gIC5tZWRpYS1ib2R5IHtcclxuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gIH1cclxuICAubWVkaWEtbWlkZGxlIHtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgfVxyXG4gIC5tZWRpYS1ib3R0b20ge1xyXG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vL1xyXG4vLyBJbWFnZXMvZWxlbWVudHMgYXMgdGhlIG1lZGlhIGFuY2hvclxyXG4vL1xyXG5cclxuLm1lZGlhLW9iamVjdCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gIC8vIEZpeCBjb2xsYXBzZSBpbiB3ZWJraXQgZnJvbSBtYXgtd2lkdGg6IDEwMCUgYW5kIGRpc3BsYXk6IHRhYmxlLWNlbGwuXHJcbiAgJi5pbWctdGh1bWJuYWlsIHtcclxuICAgIG1heC13aWR0aDogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vL1xyXG4vLyBBbGlnbm1lbnRcclxuLy9cclxuXHJcbi5tZWRpYS1yaWdodCB7XHJcbiAgcGFkZGluZy1sZWZ0OiAkbWVkaWEtYWxpZ25tZW50LXBhZGRpbmcteDtcclxufVxyXG5cclxuLm1lZGlhLWxlZnQge1xyXG4gIHBhZGRpbmctcmlnaHQ6ICRtZWRpYS1hbGlnbm1lbnQtcGFkZGluZy14O1xyXG59XHJcblxyXG5cclxuLy9cclxuLy8gSGVhZGluZ3NcclxuLy9cclxuXHJcbi5tZWRpYS1oZWFkaW5nIHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG4gIG1hcmdpbi1ib3R0b206ICRtZWRpYS1oZWFkaW5nLW1hcmdpbi1ib3R0b207XHJcbn1cclxuXHJcblxyXG4vL1xyXG4vLyBNZWRpYSBsaXN0IHZhcmlhdGlvblxyXG4vL1xyXG5cclxuLm1lZGlhLWxpc3Qge1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcbiIsIi5jbG9zZSB7XHJcbiAgZmxvYXQ6IHJpZ2h0O1xyXG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNSk7XHJcbiAgZm9udC13ZWlnaHQ6ICRjbG9zZS1mb250LXdlaWdodDtcclxuICBsaW5lLWhlaWdodDogMTtcclxuICBjb2xvcjogJGNsb3NlLWNvbG9yO1xyXG4gIHRleHQtc2hhZG93OiAkY2xvc2UtdGV4dC1zaGFkb3c7XHJcbiAgb3BhY2l0eTogLjI7XHJcblxyXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcclxuICAgIGNvbG9yOiAkY2xvc2UtY29sb3I7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBvcGFjaXR5OiAuNTtcclxuICB9XHJcbn1cclxuXHJcbi8vIEFkZGl0aW9uYWwgcHJvcGVydGllcyBmb3IgYnV0dG9uIHZlcnNpb25cclxuLy8gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXHJcbi8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxyXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcclxuXHJcbi8vIHNjc3MtbGludDpkaXNhYmxlIFF1YWxpZnlpbmdFbGVtZW50XHJcbmJ1dHRvbi5jbG9zZSB7XHJcbiAgcGFkZGluZzogMDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxufVxyXG4vLyBzY3NzLWxpbnQ6ZW5hYmxlIFF1YWxpZnlpbmdFbGVtZW50XHJcbiIsIkBpbXBvcnQgXCJ1dGlsaXRpZXMvYWxpZ25cIjtcclxuQGltcG9ydCBcInV0aWxpdGllcy9iYWNrZ3JvdW5kXCI7XHJcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvYm9yZGVyc1wiO1xyXG5AaW1wb3J0IFwidXRpbGl0aWVzL2NsZWFyZml4XCI7XHJcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvZGlzcGxheVwiO1xyXG5AaW1wb3J0IFwidXRpbGl0aWVzL2ZsZXhcIjtcclxuQGltcG9ydCBcInV0aWxpdGllcy9mbG9hdFwiO1xyXG5AaW1wb3J0IFwidXRpbGl0aWVzL3NjcmVlbnJlYWRlcnNcIjtcclxuQGltcG9ydCBcInV0aWxpdGllcy9zcGFjaW5nXCI7XHJcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvdGV4dFwiO1xyXG5AaW1wb3J0IFwidXRpbGl0aWVzL3Zpc2liaWxpdHlcIjtcclxuIiwiLmFsaWduLWJhc2VsaW5lIHsgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH0gLy8gQnJvd3NlciBkZWZhdWx0XHJcbi5hbGlnbi10b3AgeyB2ZXJ0aWNhbC1hbGlnbjogdG9wICFpbXBvcnRhbnQ7IH1cclxuLmFsaWduLW1pZGRsZSB7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDsgfVxyXG4uYWxpZ24tYm90dG9tIHsgdmVydGljYWwtYWxpZ246IGJvdHRvbSAhaW1wb3J0YW50OyB9XHJcbi5hbGlnbi10ZXh0LWJvdHRvbSB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbSAhaW1wb3J0YW50OyB9XHJcbi5hbGlnbi10ZXh0LXRvcCB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcCAhaW1wb3J0YW50OyB9XHJcbiIsIi8vXHJcbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcclxuLy9cclxuXHJcbi5iZy1mYWRlZCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktbGlnaHRlc3Q7XHJcbn1cclxuXHJcbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1wcmltYXJ5JywgJGJyYW5kLXByaW1hcnkpO1xyXG5cclxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLXN1Y2Nlc3MnLCAkYnJhbmQtc3VjY2Vzcyk7XHJcblxyXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctaW5mbycsICRicmFuZC1pbmZvKTtcclxuXHJcbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy13YXJuaW5nJywgJGJyYW5kLXdhcm5pbmcpO1xyXG5cclxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLWRhbmdlcicsICRicmFuZC1kYW5nZXIpO1xyXG5cclxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLWludmVyc2UnLCAkYnJhbmQtaW52ZXJzZSk7XHJcbiIsIi8vXHJcbi8vIEJvcmRlci13aWR0aFxyXG4vL1xyXG5cclxuLy8gVEJELi4uP1xyXG5cclxuXHJcbi8vXHJcbi8vIEJvcmRlci1yYWRpdXNcclxuLy9cclxuXHJcbi5yb3VuZGVkIHtcclxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcclxufVxyXG4ucm91bmRlZC10b3Age1xyXG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcclxufVxyXG4ucm91bmRlZC1yaWdodCB7XHJcbiAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XHJcbn1cclxuLnJvdW5kZWQtYm90dG9tIHtcclxuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XHJcbn1cclxuLnJvdW5kZWQtbGVmdCB7XHJcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcclxufVxyXG5cclxuLnJvdW5kZWQtY2lyY2xlIHtcclxuICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbn1cclxuIiwiLmNsZWFyZml4IHtcclxuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xyXG59XHJcbiIsIi8vXHJcbi8vIERpc3BsYXkgdXRpbGl0aWVzXHJcbi8vXHJcblxyXG4uZC1ibG9jayB7XHJcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxufVxyXG4uZC1pbmxpbmUtYmxvY2sge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xyXG59XHJcbi5kLWlubGluZSB7XHJcbiAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XHJcbn1cclxuIiwiLy8gRmxleCB2YXJpYXRpb25cclxuLy9cclxuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgYWRkaXRpb25hbCBmbGV4IGFsaWdubWVudCBvcHRpb25zLlxyXG5cclxuQGlmICRlbmFibGUtZmxleCB7XHJcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcclxuICAgIC8vIEZsZXggY29sdW1uIHJlb3JkZXJpbmdcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcclxuICAgICAgLmZsZXgtI3skYnJlYWtwb2ludH0tZmlyc3QgeyBvcmRlcjogLTE7IH1cclxuICAgICAgLmZsZXgtI3skYnJlYWtwb2ludH0tbGFzdCB7IG9yZGVyOiAxOyB9XHJcbiAgICAgIC5mbGV4LSN7JGJyZWFrcG9pbnR9LXVub3JkZXJlZCB7IG9yZGVyOiAwOyB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQWxpZ25tZW50IGZvciBldmVyeSBpdGVtXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XHJcbiAgICAgIC5mbGV4LWl0ZW1zLSN7JGJyZWFrcG9pbnR9LXRvcCB7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XHJcbiAgICAgIC5mbGV4LWl0ZW1zLSN7JGJyZWFrcG9pbnR9LW1pZGRsZSB7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cclxuICAgICAgLmZsZXgtaXRlbXMtI3skYnJlYWtwb2ludH0tYm90dG9tIHsgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQWxpZ25tZW50IHBlciBpdGVtXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XHJcbiAgICAgIC5mbGV4LSN7JGJyZWFrcG9pbnR9LXRvcCAgIHsgYWxpZ24tc2VsZjogZmxleC1zdGFydDsgfVxyXG4gICAgICAuZmxleC0jeyRicmVha3BvaW50fS1taWRkbGUgeyBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cclxuICAgICAgLmZsZXgtI3skYnJlYWtwb2ludH0tYm90dG9tIHsgYWxpZ24tc2VsZjogZmxleC1lbmQ7IH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCBvZiBpdGVtXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XHJcbiAgICAgIC5mbGV4LWl0ZW1zLSN7JGJyZWFrcG9pbnR9LWxlZnQgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cclxuICAgICAgLmZsZXgtaXRlbXMtI3skYnJlYWtwb2ludH0tY2VudGVyIHsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cclxuICAgICAgLmZsZXgtaXRlbXMtI3skYnJlYWtwb2ludH0tcmlnaHQgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XHJcbiAgICAgIC5mbGV4LWl0ZW1zLSN7JGJyZWFrcG9pbnR9LWFyb3VuZCB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XHJcbiAgICAgIC5mbGV4LWl0ZW1zLSN7JGJyZWFrcG9pbnR9LWJldHdlZW4geyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XHJcbiAgICAuZmxvYXQtI3skYnJlYWtwb2ludH0tbGVmdCB7XHJcbiAgICAgIEBpbmNsdWRlIGZsb2F0LWxlZnQoKTtcclxuICAgIH1cclxuICAgIC5mbG9hdC0jeyRicmVha3BvaW50fS1yaWdodCB7XHJcbiAgICAgIEBpbmNsdWRlIGZsb2F0LXJpZ2h0KCk7XHJcbiAgICB9XHJcbiAgICAuZmxvYXQtI3skYnJlYWtwb2ludH0tbm9uZSB7XHJcbiAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIFNjcmVlbnJlYWRlcnNcclxuLy9cclxuXHJcbi5zci1vbmx5IHtcclxuICBAaW5jbHVkZSBzci1vbmx5KCk7XHJcbn1cclxuXHJcbi5zci1vbmx5LWZvY3VzYWJsZSB7XHJcbiAgQGluY2x1ZGUgc3Itb25seS1mb2N1c2FibGUoKTtcclxufVxyXG4iLCIvLyBXaWR0aCBhbmQgaGVpZ2h0XHJcblxyXG4udy0xMDAgeyB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XHJcbi5oLTEwMCB7IGhlaWdodDogMTAwJSAhaW1wb3J0YW50OyB9XHJcblxyXG4vLyBNYXJnaW4gYW5kIFBhZGRpbmdcclxuXHJcbi5teC1hdXRvIHtcclxuICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuICBtYXJnaW4tbGVmdDogIGF1dG8gIWltcG9ydGFudDtcclxufVxyXG5cclxuQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKG1hcmdpbjogbSwgcGFkZGluZzogcCkge1xyXG4gIEBlYWNoICRzaXplLCAkbGVuZ3RocyBpbiAkc3BhY2VycyB7XHJcbiAgICAkbGVuZ3RoLXg6ICAgbWFwLWdldCgkbGVuZ3RocywgeCk7XHJcbiAgICAkbGVuZ3RoLXk6ICAgbWFwLWdldCgkbGVuZ3RocywgeSk7XHJcblxyXG4gICAgLiN7JGFiYnJldn0tI3skc2l6ZX0geyAjeyRwcm9wfTogICAgICAgICRsZW5ndGgteSAkbGVuZ3RoLXggIWltcG9ydGFudDsgfSAvLyBhID0gQWxsIHNpZGVzXHJcbiAgICAuI3skYWJicmV2fXQtI3skc2l6ZX0geyAjeyRwcm9wfS10b3A6ICAgICRsZW5ndGgteSAhaW1wb3J0YW50OyB9XHJcbiAgICAuI3skYWJicmV2fXItI3skc2l6ZX0geyAjeyRwcm9wfS1yaWdodDogICRsZW5ndGgteCAhaW1wb3J0YW50OyB9XHJcbiAgICAuI3skYWJicmV2fWItI3skc2l6ZX0geyAjeyRwcm9wfS1ib3R0b206ICRsZW5ndGgteSAhaW1wb3J0YW50OyB9XHJcbiAgICAuI3skYWJicmV2fWwtI3skc2l6ZX0geyAjeyRwcm9wfS1sZWZ0OiAgICRsZW5ndGgteCAhaW1wb3J0YW50OyB9XHJcblxyXG4gICAgLy8gQXhlc1xyXG4gICAgLiN7JGFiYnJldn14LSN7JHNpemV9IHtcclxuICAgICAgI3skcHJvcH0tcmlnaHQ6ICAkbGVuZ3RoLXggIWltcG9ydGFudDtcclxuICAgICAgI3skcHJvcH0tbGVmdDogICAkbGVuZ3RoLXggIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC4jeyRhYmJyZXZ9eS0jeyRzaXplfSB7XHJcbiAgICAgICN7JHByb3B9LXRvcDogICAgJGxlbmd0aC15ICFpbXBvcnRhbnQ7XHJcbiAgICAgICN7JHByb3B9LWJvdHRvbTogJGxlbmd0aC15ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBQb3NpdGlvbmluZ1xyXG5cclxuLnBvcy1mLXQge1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB0b3A6IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgbGVmdDogMDtcclxuICB6LWluZGV4OiAkemluZGV4LW5hdmJhci1maXhlZDtcclxufVxyXG4iLCIvL1xyXG4vLyBUZXh0XHJcbi8vXHJcblxyXG4vLyBBbGlnbm1lbnRcclxuXHJcbi50ZXh0LWp1c3RpZnkgICAgICAgIHsgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50OyB9XHJcbi50ZXh0LW5vd3JhcCAgICAgICAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50OyB9XHJcbi50ZXh0LXRydW5jYXRlICAgICAgIHsgQGluY2x1ZGUgdGV4dC10cnVuY2F0ZTsgfVxyXG5cclxuLy8gUmVzcG9uc2l2ZSBhbGlnbm1lbnRcclxuXHJcbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xyXG4gICAgLnRleHQtI3skYnJlYWtwb2ludH0tbGVmdCAgIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XHJcbiAgICAudGV4dC0jeyRicmVha3BvaW50fS1yaWdodCAgeyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XHJcbiAgICAudGV4dC0jeyRicmVha3BvaW50fS1jZW50ZXIgeyB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gVHJhbnNmb3JtYXRpb25cclxuXHJcbi50ZXh0LWxvd2VyY2FzZSAgICAgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50OyB9XHJcbi50ZXh0LXVwcGVyY2FzZSAgICAgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XHJcbi50ZXh0LWNhcGl0YWxpemUgICAgIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDsgfVxyXG5cclxuLy8gV2VpZ2h0IGFuZCBpdGFsaWNzXHJcblxyXG4uZm9udC13ZWlnaHQtbm9ybWFsICB7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cclxuLmZvbnQtd2VpZ2h0LWJvbGQgICAgeyBmb250LXdlaWdodDogYm9sZDsgfVxyXG4uZm9udC1pdGFsaWMgICAgICAgICB7IGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxyXG5cclxuLy8gQ29udGV4dHVhbCBjb2xvcnNcclxuXHJcbi50ZXh0LXdoaXRlIHtcclxuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LW11dGVkJywgJHRleHQtbXV0ZWQpO1xyXG5cclxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1wcmltYXJ5JywgJGJyYW5kLXByaW1hcnkpO1xyXG5cclxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1zdWNjZXNzJywgJGJyYW5kLXN1Y2Nlc3MpO1xyXG5cclxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1pbmZvJywgJGJyYW5kLWluZm8pO1xyXG5cclxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC13YXJuaW5nJywgJGJyYW5kLXdhcm5pbmcpO1xyXG5cclxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1kYW5nZXInLCAkYnJhbmQtZGFuZ2VyKTtcclxuXHJcbi8vIEZvbnQgY29sb3JcclxuXHJcbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtZ3JheS1kYXJrJywgJGdyYXktZGFyayk7XHJcblxyXG4vLyBNaXNjXHJcblxyXG4udGV4dC1oaWRlIHtcclxuICBAaW5jbHVkZSB0ZXh0LWhpZGUoKTtcclxufVxyXG4iLCIvL1xyXG4vLyBWaXNpYmlsaXR5IHV0aWxpdGllc1xyXG4vL1xyXG5cclxuLmludmlzaWJsZSB7XHJcbiAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8vIFJlc3BvbnNpdmUgdmlzaWJpbGl0eSB1dGlsaXRpZXNcclxuXHJcbkBlYWNoICRicCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xyXG4gIC5oaWRkZW4tI3skYnB9LXVwIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJwKSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbiAgLmhpZGRlbi0jeyRicH0tZG93biB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJwKSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBQcmludCB1dGlsaXRpZXNcclxuLy9cclxuLy8gTWVkaWEgcXVlcmllcyBhcmUgcGxhY2VkIG9uIHRoZSBpbnNpZGUgdG8gYmUgbWl4aW4tZnJpZW5kbHkuXHJcblxyXG4udmlzaWJsZS1wcmludC1ibG9jayB7XHJcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICBAbWVkaWEgcHJpbnQge1xyXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuLnZpc2libGUtcHJpbnQtaW5saW5lIHtcclxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcblxyXG4gIEBtZWRpYSBwcmludCB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuLnZpc2libGUtcHJpbnQtaW5saW5lLWJsb2NrIHtcclxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcblxyXG4gIEBtZWRpYSBwcmludCB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbi5oaWRkZW4tcHJpbnQge1xyXG4gIEBtZWRpYSBwcmludCB7XHJcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbiIsIi8qXG5TQ1NTIHZhcmlhYmxlcyBhcmUgaW5mb3JtYXRpb24gYWJvdXQgaWNvbidzIGNvbXBpbGVkIHN0YXRlLCBzdG9yZWQgdW5kZXIgaXRzIG9yaWdpbmFsIGZpbGUgbmFtZVxuXG4uaWNvbi1ob21lIHtcbiAgd2lkdGg6ICRpY29uLWhvbWUtd2lkdGg7XG59XG5cblRoZSBsYXJnZSBhcnJheS1saWtlIHZhcmlhYmxlcyBjb250YWluIGFsbCBpbmZvcm1hdGlvbiBhYm91dCBhIHNpbmdsZSBpY29uXG4kaWNvbi1ob21lOiB4IHkgb2Zmc2V0X3ggb2Zmc2V0X3kgd2lkdGggaGVpZ2h0IHRvdGFsX3dpZHRoIHRvdGFsX2hlaWdodCBpbWFnZV9wYXRoO1xuXG5BdCB0aGUgYm90dG9tIG9mIHRoaXMgc2VjdGlvbiwgd2UgcHJvdmlkZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgc3ByaXRlc2hlZXQgaXRzZWxmXG4kc3ByaXRlc2hlZXQ6IHdpZHRoIGhlaWdodCBpbWFnZSAkc3ByaXRlc2hlZXQtc3ByaXRlcztcbiovXG4kaWNvbi1zbS1mYWNlYm9vay1uYW1lOiAnaWNvbi1zbS1mYWNlYm9vayc7XG4kaWNvbi1zbS1mYWNlYm9vay14OiAwcHg7XG4kaWNvbi1zbS1mYWNlYm9vay15OiAwcHg7XG4kaWNvbi1zbS1mYWNlYm9vay1vZmZzZXQteDogMHB4O1xuJGljb24tc20tZmFjZWJvb2stb2Zmc2V0LXk6IDBweDtcbiRpY29uLXNtLWZhY2Vib29rLXdpZHRoOiAzMnB4O1xuJGljb24tc20tZmFjZWJvb2staGVpZ2h0OiAzMnB4O1xuJGljb24tc20tZmFjZWJvb2stdG90YWwtd2lkdGg6IDY0cHg7XG4kaWNvbi1zbS1mYWNlYm9vay10b3RhbC1oZWlnaHQ6IDY0cHg7XG4kaWNvbi1zbS1mYWNlYm9vay1pbWFnZTogJy4uL2ltZy9zcHJpdGUucG5nJztcbiRpY29uLXNtLWZhY2Vib29rOiAoMHB4LCAwcHgsIDBweCwgMHB4LCAzMnB4LCAzMnB4LCA2NHB4LCA2NHB4LCAnLi4vaW1nL3Nwcml0ZS5wbmcnLCAnaWNvbi1zbS1mYWNlYm9vaycsICk7XG4kaWNvbi1zbS1nb29nbGVwbHVzLW5hbWU6ICdpY29uLXNtLWdvb2dsZXBsdXMnO1xuJGljb24tc20tZ29vZ2xlcGx1cy14OiAzMnB4O1xuJGljb24tc20tZ29vZ2xlcGx1cy15OiAwcHg7XG4kaWNvbi1zbS1nb29nbGVwbHVzLW9mZnNldC14OiAtMzJweDtcbiRpY29uLXNtLWdvb2dsZXBsdXMtb2Zmc2V0LXk6IDBweDtcbiRpY29uLXNtLWdvb2dsZXBsdXMtd2lkdGg6IDMycHg7XG4kaWNvbi1zbS1nb29nbGVwbHVzLWhlaWdodDogMzJweDtcbiRpY29uLXNtLWdvb2dsZXBsdXMtdG90YWwtd2lkdGg6IDY0cHg7XG4kaWNvbi1zbS1nb29nbGVwbHVzLXRvdGFsLWhlaWdodDogNjRweDtcbiRpY29uLXNtLWdvb2dsZXBsdXMtaW1hZ2U6ICcuLi9pbWcvc3ByaXRlLnBuZyc7XG4kaWNvbi1zbS1nb29nbGVwbHVzOiAoMzJweCwgMHB4LCAtMzJweCwgMHB4LCAzMnB4LCAzMnB4LCA2NHB4LCA2NHB4LCAnLi4vaW1nL3Nwcml0ZS5wbmcnLCAnaWNvbi1zbS1nb29nbGVwbHVzJywgKTtcbiRpY29uLXNtLXR3aXR0ZXItbmFtZTogJ2ljb24tc20tdHdpdHRlcic7XG4kaWNvbi1zbS10d2l0dGVyLXg6IDBweDtcbiRpY29uLXNtLXR3aXR0ZXIteTogMzJweDtcbiRpY29uLXNtLXR3aXR0ZXItb2Zmc2V0LXg6IDBweDtcbiRpY29uLXNtLXR3aXR0ZXItb2Zmc2V0LXk6IC0zMnB4O1xuJGljb24tc20tdHdpdHRlci13aWR0aDogMzJweDtcbiRpY29uLXNtLXR3aXR0ZXItaGVpZ2h0OiAzMnB4O1xuJGljb24tc20tdHdpdHRlci10b3RhbC13aWR0aDogNjRweDtcbiRpY29uLXNtLXR3aXR0ZXItdG90YWwtaGVpZ2h0OiA2NHB4O1xuJGljb24tc20tdHdpdHRlci1pbWFnZTogJy4uL2ltZy9zcHJpdGUucG5nJztcbiRpY29uLXNtLXR3aXR0ZXI6ICgwcHgsIDMycHgsIDBweCwgLTMycHgsIDMycHgsIDMycHgsIDY0cHgsIDY0cHgsICcuLi9pbWcvc3ByaXRlLnBuZycsICdpY29uLXNtLXR3aXR0ZXInLCApO1xuJGljb24tc20tZmFjZWJvb2stMngtbmFtZTogJ2ljb24tc20tZmFjZWJvb2tAMngnO1xuJGljb24tc20tZmFjZWJvb2stMngteDogMHB4O1xuJGljb24tc20tZmFjZWJvb2stMngteTogMHB4O1xuJGljb24tc20tZmFjZWJvb2stMngtb2Zmc2V0LXg6IDBweDtcbiRpY29uLXNtLWZhY2Vib29rLTJ4LW9mZnNldC15OiAwcHg7XG4kaWNvbi1zbS1mYWNlYm9vay0yeC13aWR0aDogNjRweDtcbiRpY29uLXNtLWZhY2Vib29rLTJ4LWhlaWdodDogNjRweDtcbiRpY29uLXNtLWZhY2Vib29rLTJ4LXRvdGFsLXdpZHRoOiAxMjhweDtcbiRpY29uLXNtLWZhY2Vib29rLTJ4LXRvdGFsLWhlaWdodDogMTI4cHg7XG4kaWNvbi1zbS1mYWNlYm9vay0yeC1pbWFnZTogJy4uL2ltZy9zcHJpdGVAMngucG5nJztcbiRpY29uLXNtLWZhY2Vib29rLTJ4OiAoMHB4LCAwcHgsIDBweCwgMHB4LCA2NHB4LCA2NHB4LCAxMjhweCwgMTI4cHgsICcuLi9pbWcvc3ByaXRlQDJ4LnBuZycsICdpY29uLXNtLWZhY2Vib29rQDJ4JywgKTtcbiRpY29uLXNtLWdvb2dsZXBsdXMtMngtbmFtZTogJ2ljb24tc20tZ29vZ2xlcGx1c0AyeCc7XG4kaWNvbi1zbS1nb29nbGVwbHVzLTJ4LXg6IDY0cHg7XG4kaWNvbi1zbS1nb29nbGVwbHVzLTJ4LXk6IDBweDtcbiRpY29uLXNtLWdvb2dsZXBsdXMtMngtb2Zmc2V0LXg6IC02NHB4O1xuJGljb24tc20tZ29vZ2xlcGx1cy0yeC1vZmZzZXQteTogMHB4O1xuJGljb24tc20tZ29vZ2xlcGx1cy0yeC13aWR0aDogNjRweDtcbiRpY29uLXNtLWdvb2dsZXBsdXMtMngtaGVpZ2h0OiA2NHB4O1xuJGljb24tc20tZ29vZ2xlcGx1cy0yeC10b3RhbC13aWR0aDogMTI4cHg7XG4kaWNvbi1zbS1nb29nbGVwbHVzLTJ4LXRvdGFsLWhlaWdodDogMTI4cHg7XG4kaWNvbi1zbS1nb29nbGVwbHVzLTJ4LWltYWdlOiAnLi4vaW1nL3Nwcml0ZUAyeC5wbmcnO1xuJGljb24tc20tZ29vZ2xlcGx1cy0yeDogKDY0cHgsIDBweCwgLTY0cHgsIDBweCwgNjRweCwgNjRweCwgMTI4cHgsIDEyOHB4LCAnLi4vaW1nL3Nwcml0ZUAyeC5wbmcnLCAnaWNvbi1zbS1nb29nbGVwbHVzQDJ4JywgKTtcbiRpY29uLXNtLXR3aXR0ZXItMngtbmFtZTogJ2ljb24tc20tdHdpdHRlckAyeCc7XG4kaWNvbi1zbS10d2l0dGVyLTJ4LXg6IDBweDtcbiRpY29uLXNtLXR3aXR0ZXItMngteTogNjRweDtcbiRpY29uLXNtLXR3aXR0ZXItMngtb2Zmc2V0LXg6IDBweDtcbiRpY29uLXNtLXR3aXR0ZXItMngtb2Zmc2V0LXk6IC02NHB4O1xuJGljb24tc20tdHdpdHRlci0yeC13aWR0aDogNjRweDtcbiRpY29uLXNtLXR3aXR0ZXItMngtaGVpZ2h0OiA2NHB4O1xuJGljb24tc20tdHdpdHRlci0yeC10b3RhbC13aWR0aDogMTI4cHg7XG4kaWNvbi1zbS10d2l0dGVyLTJ4LXRvdGFsLWhlaWdodDogMTI4cHg7XG4kaWNvbi1zbS10d2l0dGVyLTJ4LWltYWdlOiAnLi4vaW1nL3Nwcml0ZUAyeC5wbmcnO1xuJGljb24tc20tdHdpdHRlci0yeDogKDBweCwgNjRweCwgMHB4LCAtNjRweCwgNjRweCwgNjRweCwgMTI4cHgsIDEyOHB4LCAnLi4vaW1nL3Nwcml0ZUAyeC5wbmcnLCAnaWNvbi1zbS10d2l0dGVyQDJ4JywgKTtcbiRzcHJpdGVzaGVldC13aWR0aDogNjRweDtcbiRzcHJpdGVzaGVldC1oZWlnaHQ6IDY0cHg7XG4kc3ByaXRlc2hlZXQtaW1hZ2U6ICcuLi9pbWcvc3ByaXRlLnBuZyc7XG4kc3ByaXRlc2hlZXQtc3ByaXRlczogKCRpY29uLXNtLWZhY2Vib29rLCAkaWNvbi1zbS1nb29nbGVwbHVzLCAkaWNvbi1zbS10d2l0dGVyLCApO1xuJHNwcml0ZXNoZWV0OiAoNjRweCwgNjRweCwgJy4uL2ltZy9zcHJpdGUucG5nJywgJHNwcml0ZXNoZWV0LXNwcml0ZXMsICk7XG4kcmV0aW5hLXNwcml0ZXNoZWV0LXdpZHRoOiAxMjhweDtcbiRyZXRpbmEtc3ByaXRlc2hlZXQtaGVpZ2h0OiAxMjhweDtcbiRyZXRpbmEtc3ByaXRlc2hlZXQtaW1hZ2U6ICcuLi9pbWcvc3ByaXRlQDJ4LnBuZyc7XG4kcmV0aW5hLXNwcml0ZXNoZWV0LXNwcml0ZXM6ICgkaWNvbi1zbS1mYWNlYm9vay0yeCwgJGljb24tc20tZ29vZ2xlcGx1cy0yeCwgJGljb24tc20tdHdpdHRlci0yeCwgKTtcbiRyZXRpbmEtc3ByaXRlc2hlZXQ6ICgxMjhweCwgMTI4cHgsICcuLi9pbWcvc3ByaXRlQDJ4LnBuZycsICRyZXRpbmEtc3ByaXRlc2hlZXQtc3ByaXRlcywgKTtcblxuLypcblRoZXNlIFwicmV0aW5hIGdyb3VwXCIgdmFyaWFibGVzIGFyZSBtYXBwaW5ncyBmb3IgdGhlIG5hbWluZyBhbmQgcGFpcmluZyBvZiBub3JtYWwgYW5kIHJldGluYSBzcHJpdGVzLlxuXG5UaGUgbGlzdCBmb3JtYXR0ZWQgdmFyaWFibGVzIGFyZSBpbnRlbmRlZCBmb3IgbWl4aW5zIGxpa2UgYHJldGluYS1zcHJpdGVgIGFuZCBgcmV0aW5hLXNwcml0ZXNgLlxuKi9cbiRpY29uLXNtLWZhY2Vib29rLWdyb3VwLW5hbWU6ICdpY29uLXNtLWZhY2Vib29rJztcbiRpY29uLXNtLWZhY2Vib29rLWdyb3VwOiAoJ2ljb24tc20tZmFjZWJvb2snLCAkaWNvbi1zbS1mYWNlYm9vaywgJGljb24tc20tZmFjZWJvb2stMngsICk7XG4kaWNvbi1zbS1nb29nbGVwbHVzLWdyb3VwLW5hbWU6ICdpY29uLXNtLWdvb2dsZXBsdXMnO1xuJGljb24tc20tZ29vZ2xlcGx1cy1ncm91cDogKCdpY29uLXNtLWdvb2dsZXBsdXMnLCAkaWNvbi1zbS1nb29nbGVwbHVzLCAkaWNvbi1zbS1nb29nbGVwbHVzLTJ4LCApO1xuJGljb24tc20tdHdpdHRlci1ncm91cC1uYW1lOiAnaWNvbi1zbS10d2l0dGVyJztcbiRpY29uLXNtLXR3aXR0ZXItZ3JvdXA6ICgnaWNvbi1zbS10d2l0dGVyJywgJGljb24tc20tdHdpdHRlciwgJGljb24tc20tdHdpdHRlci0yeCwgKTtcbiRyZXRpbmEtZ3JvdXBzOiAoJGljb24tc20tZmFjZWJvb2stZ3JvdXAsICRpY29uLXNtLWdvb2dsZXBsdXMtZ3JvdXAsICRpY29uLXNtLXR3aXR0ZXItZ3JvdXAsICk7XG5cbi8qXG5UaGUgcHJvdmlkZWQgbWl4aW5zIGFyZSBpbnRlbmRlZCB0byBiZSB1c2VkIHdpdGggdGhlIGFycmF5LWxpa2UgdmFyaWFibGVzXG5cbi5pY29uLWhvbWUge1xuICBAaW5jbHVkZSBzcHJpdGUtd2lkdGgoJGljb24taG9tZSk7XG59XG5cbi5pY29uLWVtYWlsIHtcbiAgQGluY2x1ZGUgc3ByaXRlKCRpY29uLWVtYWlsKTtcbn1cblxuRXhhbXBsZSB1c2FnZSBpbiBIVE1MOlxuXG5gZGlzcGxheTogYmxvY2tgIHNwcml0ZTpcbjxkaXYgY2xhc3M9XCJpY29uLWhvbWVcIj48L2Rpdj5cblxuVG8gY2hhbmdlIGBkaXNwbGF5YCAoZS5nLiBgZGlzcGxheTogaW5saW5lLWJsb2NrO2ApLCB3ZSBzdWdnZXN0IHVzaW5nIGEgY29tbW9uIENTUyBjbGFzczpcblxuLy8gQ1NTXG4uaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLy8gSFRNTFxuPGkgY2xhc3M9XCJpY29uIGljb24taG9tZVwiPjwvaT5cbiovXG5AbWl4aW4gc3ByaXRlLXdpZHRoKCRzcHJpdGUpIHtcbiAgd2lkdGg6IG50aCgkc3ByaXRlLCA1KTtcbn1cblxuQG1peGluIHNwcml0ZS1oZWlnaHQoJHNwcml0ZSkge1xuICBoZWlnaHQ6IG50aCgkc3ByaXRlLCA2KTtcbn1cblxuQG1peGluIHNwcml0ZS1wb3NpdGlvbigkc3ByaXRlKSB7XG4gICRzcHJpdGUtb2Zmc2V0LXg6IG50aCgkc3ByaXRlLCAzKTtcbiAgJHNwcml0ZS1vZmZzZXQteTogbnRoKCRzcHJpdGUsIDQpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkc3ByaXRlLW9mZnNldC14ICAkc3ByaXRlLW9mZnNldC15O1xufVxuXG5AbWl4aW4gc3ByaXRlLWltYWdlKCRzcHJpdGUpIHtcbiAgJHNwcml0ZS1pbWFnZTogbnRoKCRzcHJpdGUsIDkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoI3skc3ByaXRlLWltYWdlfSk7XG59XG5cbkBtaXhpbiBzcHJpdGUoJHNwcml0ZSkge1xuICBAaW5jbHVkZSBzcHJpdGUtaW1hZ2UoJHNwcml0ZSk7XG4gIEBpbmNsdWRlIHNwcml0ZS1wb3NpdGlvbigkc3ByaXRlKTtcbiAgQGluY2x1ZGUgc3ByaXRlLXdpZHRoKCRzcHJpdGUpO1xuICBAaW5jbHVkZSBzcHJpdGUtaGVpZ2h0KCRzcHJpdGUpO1xufVxuXG4vKlxuVGhlIGByZXRpbmEtc3ByaXRlYCBtaXhpbiBzZXRzIHVwIHJ1bGVzIGFuZCBhIG1lZGlhIHF1ZXJ5IGZvciBhIHNwcml0ZS9yZXRpbmEgc3ByaXRlLlxuICBJdCBzaG91bGQgYmUgdXNlZCB3aXRoIGEgXCJyZXRpbmEgZ3JvdXBcIiB2YXJpYWJsZS5cblxuVGhlIG1lZGlhIHF1ZXJ5IGlzIGZyb20gQ1NTIFRyaWNrczogaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9zbmlwcGV0cy9jc3MvcmV0aW5hLWRpc3BsYXktbWVkaWEtcXVlcnkvXG5cbiRpY29uLWhvbWUtZ3JvdXA6ICgnaWNvbi1ob21lJywgJGljb24taG9tZSwgJGljb24taG9tZS0yeCwgKTtcblxuLmljb24taG9tZSB7XG4gIEBpbmNsdWRlIHJldGluYS1zcHJpdGUoJGljb24taG9tZS1ncm91cCk7XG59XG4qL1xuQG1peGluIHNwcml0ZS1iYWNrZ3JvdW5kLXNpemUoJHNwcml0ZSkge1xuICAkc3ByaXRlLXRvdGFsLXdpZHRoOiBudGgoJHNwcml0ZSwgNyk7XG4gICRzcHJpdGUtdG90YWwtaGVpZ2h0OiBudGgoJHNwcml0ZSwgOCk7XG4gIGJhY2tncm91bmQtc2l6ZTogJHNwcml0ZS10b3RhbC13aWR0aCAkc3ByaXRlLXRvdGFsLWhlaWdodDtcbn1cblxuQG1peGluIHJldGluYS1zcHJpdGUoJHJldGluYS1ncm91cCkge1xuICAkbm9ybWFsLXNwcml0ZTogbnRoKCRyZXRpbmEtZ3JvdXAsIDIpO1xuICAkcmV0aW5hLXNwcml0ZTogbnRoKCRyZXRpbmEtZ3JvdXAsIDMpO1xuICBAaW5jbHVkZSBzcHJpdGUoJG5vcm1hbC1zcHJpdGUpO1xuXG4gIEBtZWRpYSAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgICAgICAgIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSB7XG4gICAgQGluY2x1ZGUgc3ByaXRlLWltYWdlKCRyZXRpbmEtc3ByaXRlKTtcbiAgICBAaW5jbHVkZSBzcHJpdGUtYmFja2dyb3VuZC1zaXplKCRub3JtYWwtc3ByaXRlKTtcbiAgfVxufVxuXG4vKlxuVGhlIGBzcHJpdGVzYCBtaXhpbiBnZW5lcmF0ZXMgaWRlbnRpY2FsIG91dHB1dCB0byB0aGUgQ1NTIHRlbXBsYXRlXG4gIGJ1dCBjYW4gYmUgb3ZlcnJpZGRlbiBpbnNpZGUgb2YgU0NTU1xuXG5AaW5jbHVkZSBzcHJpdGVzKCRzcHJpdGVzaGVldC1zcHJpdGVzKTtcbiovXG5AbWl4aW4gc3ByaXRlcygkc3ByaXRlcykge1xuICBAZWFjaCAkc3ByaXRlIGluICRzcHJpdGVzIHtcbiAgICAkc3ByaXRlLW5hbWU6IG50aCgkc3ByaXRlLCAxMCk7XG4gICAgLiN7JHNwcml0ZS1uYW1lfSB7XG4gICAgICBAaW5jbHVkZSBzcHJpdGUoJHNwcml0ZSk7XG4gICAgfVxuICB9XG59XG5cbi8qXG5UaGUgYHJldGluYS1zcHJpdGVzYCBtaXhpbiBnZW5lcmF0ZXMgYSBDU1MgcnVsZSBhbmQgbWVkaWEgcXVlcnkgZm9yIHJldGluYSBncm91cHNcbiAgVGhpcyB5aWVsZHMgdGhlIHNhbWUgb3V0cHV0IGFzIENTUyByZXRpbmEgdGVtcGxhdGUgYnV0IGNhbiBiZSBvdmVycmlkZGVuIGluIFNDU1NcblxuQGluY2x1ZGUgcmV0aW5hLXNwcml0ZXMoJHJldGluYS1ncm91cHMpO1xuKi9cbkBtaXhpbiByZXRpbmEtc3ByaXRlcygkcmV0aW5hLWdyb3Vwcykge1xuICBAZWFjaCAkcmV0aW5hLWdyb3VwIGluICRyZXRpbmEtZ3JvdXBzIHtcbiAgICAkc3ByaXRlLW5hbWU6IG50aCgkcmV0aW5hLWdyb3VwLCAxKTtcbiAgICAuI3skc3ByaXRlLW5hbWV9IHtcbiAgICAgIEBpbmNsdWRlIHJldGluYS1zcHJpdGUoJHJldGluYS1ncm91cCk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBfbWl4aW5zLnNjc3NcclxuXHJcbi8vIEdpdmVzIHlvdSBhIHNpbXBsZSB3YXkgdG8gdXNlIGJyZWFrcG9pbnRzIHdoaWxlIG5vdCByaXNraW5nIG1lc3NpbmcgdGhpbmdzIHVwIGlmIHRoZSBib290c3RyYXAgdmFyaWFibGVzIGNoYW5nZS5cclxuLy8gVXNhZ2U6IEByZXNwb25kLXRvKHNtKSB7Lyp5b3VyIGNzcyBoZXJlICovfVxyXG5AbWl4aW4gcmVzcG9uZC10bygkYnJlYWtwb2ludCkge1xyXG4gICAgQGlmIG1hcC1oYXMta2V5KCRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCkge1xyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAje21hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50KX0pIHtcclxuICAgICAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBlbHNlIHtcclxuICAgICAgICBAd2FybiBcIlVuZm9ydHVuYXRlbHksIG5vIHZhbHVlIGNvdWxkIGJlIHJldHJpZXZlZCBmcm9tIGAjeyRicmVha3BvaW50fWAuIFwiXHJcbiAgICAgICAgICAgICsgXCJQbGVhc2UgbWFrZSBzdXJlIGl0IGlzIGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AgbWFwLlwiO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gcmVzcG9uZC1kb3duLXRvKCRicmVha3BvaW50KSB7XHJcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50KSB7XHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7bWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQpfSkge1xyXG4gICAgICAgICAgICBAY29udGVudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGVsc2Uge1xyXG4gICAgICAgIEB3YXJuIFwiVW5mb3J0dW5hdGVseSwgbm8gdmFsdWUgY291bGQgYmUgcmV0cmlldmVkIGZyb20gYCN7JGJyZWFrcG9pbnR9YC4gXCJcclxuICAgICAgICAgICAgKyBcIlBsZWFzZSBtYWtlIHN1cmUgaXQgaXMgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYCBtYXAuXCI7XHJcbiAgICAgICAgfVxyXG59XHJcblxyXG5AbWl4aW4gcmVkdGl0bGUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjokYnJhbmQtc2Vjb25kYXJ5O1xyXG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICB3aWR0aDozMTVweDtcclxuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XHJcbiAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICBjb2xvcjokd2hpdGU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB0b3A6MDtcclxuICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDE1cHg7XHJcbiAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDE1cHg7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tcmlnaHQ6IDE1cHg7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tbGVmdDogMTVweDtcclxuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxNXB4O1xyXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMTVweDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBmb250LWZhbWlseTogXCJpbmR1c3RyeVwiO1xyXG4gICAgQGluY2x1ZGUgY2VudGVyLWhvcml6b250YWw7XHJcbiAgICAmLmNvbXBhY3Qge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxNXB4O1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gYm94dGl0bGUge1xyXG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICBwYWRkaW5nOiA4cHggMiU7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XHJcbiAgICBmb250LXNpemU6MThweDtcclxufVxyXG5cclxuQG1peGluIGNlbnRlci1jb250YWluZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG5AbWl4aW4gY2VudGVyLWJvdGgge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxufVxyXG5cclxuQG1peGluIGNlbnRlci1ob3Jpem9udGFsIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxufVxyXG5cclxuQG1peGluIGNlbnRlci12ZXJ0aWNhbCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxufVxyXG5cclxuLy8vIENsZWFyZml4IGV4dGVuZFxyXG4vLy8gVXNhZ2U6XHJcbi8vLyAgIC5mb28ge1xyXG4vLy8gICAgIEBleHRlbmQgJWNsZWFyZml4O1xyXG4vLy8gICB9XHJcbiVjbGVhcmZpeCB7XHJcbiAgICAqem9vbTogMTtcclxuXHJcbiAgICAmOmJlZm9yZSwgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogJyAnO1xyXG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNsZWFyOiBib3RoO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLy8gQWRkcyBhIHRoaW4gYmxhY2sgbGluZSBhYm92ZSB0aGUgZWxlbWVudCwgYW5kIGEgdGhpbiBncmF5IGxpbmUgYmVsb3cgdGhlIGVsZW1lbnQsIGNyZWF0aW5nIGFuIGlubGF5IGVmZmVjdC5cclxuLy8vIEBhY2Nlc3MgcHVibGljXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgLmZvbyB7XHJcbi8vLyAgICAgQGluY2x1ZGUgb3V0bGluZTtcclxuLy8vICAgfVxyXG4vLy8gQGV4YW1wbGUgY3NzIC0gUmVzdWx0XHJcbi8vLyAgIC5mb28ge1xyXG4vLy8gICAgIGJveC1zaGFkb3c6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAwIDFweCAwLCBpbnNldCByZ2JhKDAsIDAsIDAsIDAuNzUpIDAgMXB4IDA7XHJcbi8vLyAgIH1cclxuQG1peGluIG91dGxpbmUge1xyXG4gICAgYm94LXNoYWRvdzogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIDAgMXB4IDAsIGluc2V0IHJnYmEoMCwgMCwgMCwgMC43NSkgMCAxcHggMDtcclxufVxyXG4iLCIubW9kYWwtd3JhcCB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgd2lkdGg6IDA7XHJcbiAgICBoZWlnaHQ6IDA7XHJcbiAgICB6LWluZGV4OiA5OTk5OTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcclxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gY2hhbmdlIG9uIG9wZW4gbWF5YmU/XHJcblxyXG4gICAgLm1vZGFsLXJlbCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgLm1vZGFsIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2U7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMjVzO1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDMwMHB4O1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDc1JTs7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDI0cHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyLWJvdGg7XHJcblxyXG4gICAgICAgICAgICAubW9kYWwtY29udGVudCB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxZW07XHJcblxyXG4gICAgICAgICAgICAgICAgLm1vZGFsLWNsb3NlIHtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDBweDtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDBweDtcclxuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5vcGVuIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xyXG5cclxuICAgICAgICAubW9kYWwtcmVsIHtcclxuXHJcbiAgICAgICAgICAgIC5tb2RhbCB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuLyohXHJcbiAqIEhhbWJ1cmdlcnNcclxuICogQGRlc2NyaXB0aW9uIFRhc3R5IENTUy1hbmltYXRlZCBoYW1idXJnZXJzXHJcbiAqIEBhdXRob3IgSm9uYXRoYW4gU3VoIEBqb25zdWhcclxuICogQHNpdGUgaHR0cHM6Ly9qb25zdWguY29tL2hhbWJ1cmdlcnNcclxuICogQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL2pvbnN1aC9oYW1idXJnZXJzXHJcbiAqL1xyXG5cclxuLy8gU2V0dGluZ3NcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuJGhhbWJ1cmdlci1wYWRkaW5nLXggICAgICAgICAgICAgICAgICAgICAgIDogMTVweCAhZGVmYXVsdDtcclxuJGhhbWJ1cmdlci1wYWRkaW5nLXkgICAgICAgICAgICAgICAgICAgICAgIDogMTVweCAhZGVmYXVsdDtcclxuJGhhbWJ1cmdlci1sYXllci13aWR0aCAgICAgICAgICAgICAgICAgICAgIDogNDBweCAhZGVmYXVsdDtcclxuJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgICAgICAgICAgICAgICAgICAgIDogNHB4ICFkZWZhdWx0O1xyXG4kaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgICAgICAgICAgICAgICAgICAgOiA2cHggIWRlZmF1bHQ7XHJcbiRoYW1idXJnZXItbGF5ZXItY29sb3IgICAgICAgICAgICAgICAgICAgICA6ICMwMDAgIWRlZmF1bHQ7XHJcbiRoYW1idXJnZXItbGF5ZXItYm9yZGVyLXJhZGl1cyAgICAgICAgICAgICA6IDRweCAhZGVmYXVsdDtcclxuJGhhbWJ1cmdlci1ob3Zlci1vcGFjaXR5ICAgICAgICAgICAgICAgICAgIDogMC43ICFkZWZhdWx0O1xyXG4kaGFtYnVyZ2VyLWhvdmVyLXRyYW5zaXRpb24tZHVyYXRpb24gICAgICAgOiAwLjE1cyAhZGVmYXVsdDtcclxuJGhhbWJ1cmdlci1ob3Zlci10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyICFkZWZhdWx0O1xyXG5cclxuLy8gVG8gdXNlIENTUyBmaWx0ZXJzIGFzIHRoZSBob3ZlciBlZmZlY3QgaW5zdGVhZCBvZiBvcGFjaXR5LFxyXG4vLyBzZXQgJGhhbWJ1cmdlci1ob3Zlci11c2UtZmlsdGVyIGFzIHRydWUgYW5kXHJcbi8vIGNoYW5nZSB0aGUgdmFsdWUgb2YgJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXIgYWNjb3JkaW5nbHkuXHJcbiRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlcjogZmFsc2UgIWRlZmF1bHQ7XHJcbiRoYW1idXJnZXItaG92ZXItZmlsdGVyICAgIDogb3BhY2l0eSg1MCUpICFkZWZhdWx0O1xyXG5cclxuLy8gVHlwZXMgKFJlbW92ZSBvciBjb21tZW50IG91dCB3aGF0IHlvdSBkb27igJl0IG5lZWQpXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiRoYW1idXJnZXItdHlwZXM6IChcclxuICAzZHgsXHJcbiAgM2R4LXIsXHJcbiAgM2R5LFxyXG4gIDNkeS1yLFxyXG4gIGFycm93LFxyXG4gIGFycm93LXIsXHJcbiAgYXJyb3dhbHQsXHJcbiAgYXJyb3dhbHQtcixcclxuICBib3JpbmcsXHJcbiAgY29sbGFwc2UsXHJcbiAgY29sbGFwc2UtcixcclxuICBlbGFzdGljLFxyXG4gIGVsYXN0aWMtcixcclxuICBlbXBoYXRpYyxcclxuICBlbXBoYXRpYy1yLFxyXG4gIHNsaWRlcixcclxuICBzbGlkZXItcixcclxuICBzcHJpbmcsXHJcbiAgc3ByaW5nLXIsXHJcbiAgc3RhbmQsXHJcbiAgc3RhbmQtcixcclxuICBzcGluLFxyXG4gIHNwaW4tcixcclxuICBzcXVlZXplLFxyXG4gIHZvcnRleCxcclxuICB2b3J0ZXgtclxyXG4pICFkZWZhdWx0O1xyXG5cclxuLy8gQmFzZSBIYW1idXJnZXIgKFdlIG5lZWQgdGhpcylcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuQGltcG9ydCBcImhhbWJ1cmdlcnMvYmFzZVwiO1xyXG5cclxuLy8gSGFtYnVyZ2VyIHR5cGVzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBpbXBvcnQgXCJoYW1idXJnZXJzL3R5cGVzLzNkeFwiO1xyXG5AaW1wb3J0IFwiaGFtYnVyZ2Vycy90eXBlcy8zZHgtclwiO1xyXG5AaW1wb3J0IFwiaGFtYnVyZ2Vycy90eXBlcy8zZHlcIjtcclxuQGltcG9ydCBcImhhbWJ1cmdlcnMvdHlwZXMvM2R5LXJcIjtcclxuQGltcG9ydCBcImhhbWJ1cmdlcnMvdHlwZXMvYXJyb3dcIjtcclxuQGltcG9ydCBcImhhbWJ1cmdlcnMvdHlwZXMvYXJyb3ctclwiO1xyXG5AaW1wb3J0IFwiaGFtYnVyZ2Vycy90eXBlcy9hcnJvd2FsdFwiO1xyXG5AaW1wb3J0IFwiaGFtYnVyZ2Vycy90eXBlcy9hcnJvd2FsdC1yXCI7XHJcbkBpbXBvcnQgXCJoYW1idXJnZXJzL3R5cGVzL2JvcmluZ1wiO1xyXG5AaW1wb3J0IFwiaGFtYnVyZ2Vycy90eXBlcy9jb2xsYXBzZVwiO1xyXG5AaW1wb3J0IFwiaGFtYnVyZ2Vycy90eXBlcy9jb2xsYXBzZS1yXCI7XHJcbkBpbXBvcnQgXCJoYW1idXJnZXJzL3R5cGVzL2VsYXN0aWNcIjtcclxuQGltcG9ydCBcImhhbWJ1cmdlcnMvdHlwZXMvZWxhc3RpYy1yXCI7XHJcbkBpbXBvcnQgXCJoYW1idXJnZXJzL3R5cGVzL2VtcGhhdGljXCI7XHJcbkBpbXBvcnQgXCJoYW1idXJnZXJzL3R5cGVzL2VtcGhhdGljLXJcIjtcclxuQGltcG9ydCBcImhhbWJ1cmdlcnMvdHlwZXMvc2xpZGVyXCI7XHJcbkBpbXBvcnQgXCJoYW1idXJnZXJzL3R5cGVzL3NsaWRlci1yXCI7XHJcbkBpbXBvcnQgXCJoYW1idXJnZXJzL3R5cGVzL3NwcmluZ1wiO1xyXG5AaW1wb3J0IFwiaGFtYnVyZ2Vycy90eXBlcy9zcHJpbmctclwiO1xyXG5AaW1wb3J0IFwiaGFtYnVyZ2Vycy90eXBlcy9zdGFuZFwiO1xyXG5AaW1wb3J0IFwiaGFtYnVyZ2Vycy90eXBlcy9zdGFuZC1yXCI7XHJcbkBpbXBvcnQgXCJoYW1idXJnZXJzL3R5cGVzL3NwaW5cIjtcclxuQGltcG9ydCBcImhhbWJ1cmdlcnMvdHlwZXMvc3Bpbi1yXCI7XHJcbkBpbXBvcnQgXCJoYW1idXJnZXJzL3R5cGVzL3NxdWVlemVcIjtcclxuQGltcG9ydCBcImhhbWJ1cmdlcnMvdHlwZXMvdm9ydGV4XCI7XHJcbkBpbXBvcnQgXCJoYW1idXJnZXJzL3R5cGVzL3ZvcnRleC1yXCI7XHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBDb29raW5nIHVwIGFkZGl0aW9uYWwgdHlwZXM6XHJcbi8vXHJcbi8vIFRoZSBTYXNzIGZvciBlYWNoIGhhbWJ1cmdlciB0eXBlIHNob3VsZCBiZSBuZXN0ZWRcclxuLy8gaW5zaWRlIGFuIEBpZiBkaXJlY3RpdmUgdG8gY2hlY2sgd2hldGhlciBvciBub3RcclxuLy8gaXQgZXhpc3RzIGluICRoYW1idXJnZXItdHlwZXMgc28gb25seSB0aGUgQ1NTIGZvclxyXG4vLyBpbmNsdWRlZCB0eXBlcyBhcmUgZ2VuZXJhdGVkLlxyXG4vL1xyXG4vLyBlLmcuIGhhbWJ1cmdlcnMvdHlwZXMvX25ldy10eXBlLnNjc3NcclxuLy9cclxuLy8gQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIG5ldy10eXBlKSB7XHJcbi8vICAgLmhhbWJ1cmdlci0tbmV3LXR5cGUge1xyXG4vLyAgICAgLi4uXHJcbi8vICAgfVxyXG4vLyB9XHJcbiIsIi8vIEhhbWJ1cmdlclxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4uaGFtYnVyZ2VyIHtcclxuICBwYWRkaW5nOiAkaGFtYnVyZ2VyLXBhZGRpbmcteSAkaGFtYnVyZ2VyLXBhZGRpbmcteDtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCBmaWx0ZXI7XHJcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJGhhbWJ1cmdlci1ob3Zlci10cmFuc2l0aW9uLWR1cmF0aW9uO1xyXG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkaGFtYnVyZ2VyLWhvdmVyLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uO1xyXG5cclxuICAvLyBOb3JtYWxpemUgKDxidXR0b24+KVxyXG4gIGZvbnQ6IGluaGVyaXQ7XHJcbiAgY29sb3I6IGluaGVyaXQ7XHJcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIG1hcmdpbjogMDtcclxuICBvdmVyZmxvdzogdmlzaWJsZTtcclxuXHJcbiAgJjpob3ZlciB7XHJcbiAgICBAaWYgJGhhbWJ1cmdlci1ob3Zlci11c2UtZmlsdGVyID09IHRydWUge1xyXG4gICAgICBmaWx0ZXI6ICRoYW1idXJnZXItaG92ZXItZmlsdGVyO1xyXG4gICAgfVxyXG4gICAgQGVsc2Uge1xyXG4gICAgICBvcGFjaXR5OiAkaGFtYnVyZ2VyLWhvdmVyLW9wYWNpdHk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uaGFtYnVyZ2VyLWJveCB7XHJcbiAgd2lkdGg6ICRoYW1idXJnZXItbGF5ZXItd2lkdGg7XHJcbiAgaGVpZ2h0OiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDMgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5oYW1idXJnZXItaW5uZXIge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHRvcDogNTAlO1xyXG4gIG1hcmdpbi10b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0IC8gLTI7XHJcblxyXG4gICYsXHJcbiAgJjo6YmVmb3JlLFxyXG4gICY6OmFmdGVyIHtcclxuICAgIHdpZHRoOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoO1xyXG4gICAgaGVpZ2h0OiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRoYW1idXJnZXItbGF5ZXItY29sb3I7XHJcbiAgICBib3JkZXItcmFkaXVzOiAkaGFtYnVyZ2VyLWxheWVyLWJvcmRlci1yYWRpdXM7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcclxuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xyXG4gIH1cclxuXHJcbiAgJjo6YmVmb3JlLFxyXG4gICY6OmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcblxyXG4gICY6OmJlZm9yZSB7XHJcbiAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMTtcclxuICB9XHJcblxyXG4gICY6OmFmdGVyIHtcclxuICAgIGJvdHRvbTogKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0KSAqIC0xO1xyXG4gIH1cclxufVxyXG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgM2R4KSB7XHJcbiAgLypcclxuICAgKiAzRFhcclxuICAgKi9cclxuICAuaGFtYnVyZ2VyLS0zZHgge1xyXG4gICAgLmhhbWJ1cmdlci1ib3gge1xyXG4gICAgICBwZXJzcGVjdGl2ZTogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDI7XHJcbiAgICB9XHJcblxyXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XHJcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSxcclxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcclxuXHJcbiAgICAgICY6OmJlZm9yZSxcclxuICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKDE4MGRlZyk7XHJcblxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nLCAwKSByb3RhdGUoNDVkZWcpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcpICogLTEsIDApIHJvdGF0ZSgtNDVkZWcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgM2R4LXIpIHtcclxuICAvKlxyXG4gICAqIDNEWCBSZXZlcnNlXHJcbiAgICovXHJcbiAgLmhhbWJ1cmdlci0tM2R4LXIge1xyXG4gICAgLmhhbWJ1cmdlci1ib3gge1xyXG4gICAgICBwZXJzcGVjdGl2ZTogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDI7XHJcbiAgICB9XHJcblxyXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XHJcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSxcclxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcclxuXHJcbiAgICAgICY6OmJlZm9yZSxcclxuICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKC0xODBkZWcpO1xyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZywgMCkgcm90YXRlKDQ1ZGVnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nKSAqIC0xLCAwKSByb3RhdGUoLTQ1ZGVnKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIDNkeSkge1xyXG4gIC8qXHJcbiAgICogM0RZXHJcbiAgICovXHJcbiAgLmhhbWJ1cmdlci0tM2R5IHtcclxuICAgIC5oYW1idXJnZXItYm94IHtcclxuICAgICAgcGVyc3BlY3RpdmU6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAyO1xyXG4gICAgfVxyXG5cclxuICAgIC5oYW1idXJnZXItaW5uZXIge1xyXG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksXHJcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XHJcblxyXG4gICAgICAmOjpiZWZvcmUsXHJcbiAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgtMTgwZGVnKTtcclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcsIDApIHJvdGF0ZSg0NWRlZyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZykgKiAtMSwgMCkgcm90YXRlKC00NWRlZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCAzZHktcikge1xyXG4gIC8qXHJcbiAgICogM0RZIFJldmVyc2VcclxuICAgKi9cclxuICAuaGFtYnVyZ2VyLS0zZHktciB7XHJcbiAgICAuaGFtYnVyZ2VyLWJveCB7XHJcbiAgICAgIHBlcnNwZWN0aXZlOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMjtcclxuICAgIH1cclxuXHJcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcclxuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLFxyXG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xyXG5cclxuICAgICAgJjo6YmVmb3JlLFxyXG4gICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKTtcclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcsIDApIHJvdGF0ZSg0NWRlZyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZykgKiAtMSwgMCkgcm90YXRlKC00NWRlZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBhcnJvdykge1xyXG4gIC8qXHJcbiAgICogQXJyb3dcclxuICAgKi9cclxuICAuaGFtYnVyZ2VyLS1hcnJvdy5pcy1hY3RpdmUge1xyXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTAuMiwgMCwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0wLjIsIDAsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgYXJyb3ctcikge1xyXG4gIC8qXHJcbiAgICogQXJyb3cgUmlnaHRcclxuICAgKi9cclxuICAuaGFtYnVyZ2VyLS1hcnJvdy1yLmlzLWFjdGl2ZSB7XHJcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAwLjIsIDAsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDAuMiwgMCwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgYXJyb3dhbHQpIHtcclxuICAvKlxyXG4gICAqIEFycm93IEFsdFxyXG4gICAqL1xyXG4gIC5oYW1idXJnZXItLWFycm93YWx0IHtcclxuICAgIC5oYW1idXJnZXItaW5uZXIge1xyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMTVzIGVhc2UsXHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyAwLjE1cyBlYXNlLFxyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTAuMiwgJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0wLjI1LCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgZWFzZSxcclxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjE1cyAwLjFzIGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTAuMiwgJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDAuMjUsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcclxuICAgICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIGVhc2UsXHJcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xNXMgMC4xcyBjdWJpYy1iZXppZXIoMC44OTUsIDAuMDMsIDAuNjg1LCAwLjIyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGFycm93YWx0LXIpIHtcclxuICAvKlxyXG4gICAqIEFycm93IEFsdCBSaWdodFxyXG4gICAqL1xyXG4gIC5oYW1idXJnZXItLWFycm93YWx0LXIge1xyXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xNXMgZWFzZSxcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMTVzIGVhc2UsXHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAwLjIsICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMC4yNSwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgZWFzZSxcclxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjE1cyAwLjFzIGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMC4yLCAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMC4yNSwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTtcclxuICAgICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIGVhc2UsXHJcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xNXMgMC4xcyBjdWJpYy1iZXppZXIoMC44OTUsIDAuMDMsIDAuNjg1LCAwLjIyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGJvcmluZykge1xyXG4gIC8qXHJcbiAgICogQm9yaW5nXHJcbiAgICovXHJcbiAgLmhhbWJ1cmdlci0tYm9yaW5nIHtcclxuICAgIC5oYW1idXJnZXItaW5uZXIge1xyXG4gICAgICAmLFxyXG4gICAgICAmOjpiZWZvcmUsXHJcbiAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcblxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGNvbGxhcHNlKSB7XHJcbiAgLypcclxuICAgKiBDb2xsYXBzZVxyXG4gICAqL1xyXG4gIC5oYW1idXJnZXItLWNvbGxhcHNlIHtcclxuICAgIC5oYW1idXJnZXItaW5uZXIge1xyXG4gICAgICB0b3A6IGF1dG87XHJcbiAgICAgIGJvdHRvbTogMDtcclxuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XHJcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMTVzO1xyXG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XHJcblxyXG4gICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMiArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMikgKiAtMTtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4zcyAwLjNzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSxcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMXMgbGluZWFyO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjEycyAwLjNzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSxcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0KSAqIC0xLCAwKSByb3RhdGUoLTQ1ZGVnKTtcclxuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjMycztcclxuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4zcyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksXHJcbiAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMXMgMC4yN3MgbGluZWFyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xMnMgMC4xOHMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTVzIDAuNDJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgY29sbGFwc2Utcikge1xyXG4gIC8qXHJcbiAgICogQ29sbGFwc2UgUmV2ZXJzZVxyXG4gICAqL1xyXG4gIC5oYW1idXJnZXItLWNvbGxhcHNlLXIge1xyXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XHJcbiAgICAgIHRvcDogYXV0bztcclxuICAgICAgYm90dG9tOiAwO1xyXG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcclxuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xNXM7XHJcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuXHJcbiAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAyKSAqIC0xO1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjNzIDAuM3MgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLFxyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xcyBsaW5lYXI7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMTJzIDAuM3MgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLFxyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQpICogLTEsIDApIHJvdGF0ZSg0NWRlZyk7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4zMnM7XHJcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xyXG5cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuM3MgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjFzIDAuMjdzIGxpbmVhcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xMnMgMC4xOHMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTVzIDAuNDJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgZWxhc3RpYykge1xyXG4gIC8qXHJcbiAgICogRWxhc3RpY1xyXG4gICAqL1xyXG4gIC5oYW1idXJnZXItLWVsYXN0aWMge1xyXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XHJcbiAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgLyAyO1xyXG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjRzO1xyXG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XHJcblxyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmc7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyAwLjRzIGVhc2U7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDIpICsgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIDIpO1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjRzIGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcclxuICAgICAgICAkeS1vZmZzZXQ6ICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0O1xyXG5cclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICR5LW9mZnNldCwgMCkgcm90YXRlKDEzNWRlZyk7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xcztcclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xyXG4gICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0ICogLTIsIDApIHJvdGF0ZSgtMjcwZGVnKTtcclxuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBlbGFzdGljLXIpIHtcclxuICAvKlxyXG4gICAqIEVsYXN0aWMgUmV2ZXJzZVxyXG4gICAqL1xyXG4gIC5oYW1idXJnZXItLWVsYXN0aWMtciB7XHJcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcclxuICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAvIDI7XHJcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNHM7XHJcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC42OCwgLTAuNTUsIDAuMjY1LCAxLjU1KTtcclxuXHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZztcclxuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIDAuNHMgZWFzZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMikgKyAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMik7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNHMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xyXG4gICAgICAgICR5LW9mZnNldDogJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQ7XHJcblxyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0LCAwKSByb3RhdGUoLTEzNWRlZyk7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xcztcclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xyXG4gICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0ICogLTIsIDApIHJvdGF0ZSgyNzBkZWcpO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xcztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGVtcGhhdGljKSB7XHJcbiAgLypcclxuICAgKiBFbXBoYXRpY1xyXG4gICAqL1xyXG4gIC5oYW1idXJnZXItLWVtcGhhdGljIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XHJcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyAwLjI1cyBlYXNlLWluO1xyXG5cclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGN1YmljLWJlemllcigwLjYsIDAuMDQsIDAuOTgsIDAuMzM1KSxcclxuICAgICAgICAgICAgICAgICAgICB0b3AgMC4wNXMgMC4ycyBsaW5lYXIsXHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdCAwLjJzIDAuMjVzIGVhc2UtaW47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKyAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nKTtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBjdWJpYy1iZXppZXIoMC42LCAwLjA0LCAwLjk4LCAwLjMzNSksXHJcbiAgICAgICAgICAgICAgICAgICAgdG9wIDAuMDVzIDAuMnMgbGluZWFyLFxyXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0IDAuMnMgMC4yNXMgZWFzZS1pbjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XHJcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgbGVmdDogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0yO1xyXG4gICAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTI7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAyLCAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMiwgMCkgcm90YXRlKDQ1ZGVnKTtcclxuICAgICAgICAgIHRyYW5zaXRpb246IGxlZnQgMC4ycyBlYXNlLW91dCxcclxuICAgICAgICAgICAgICAgICAgICAgIHRvcCAwLjA1cyAwLjJzIGxpbmVhcixcclxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjJzIDAuMjVzIGN1YmljLWJlemllcigwLjA3NSwgMC44MiwgMC4xNjUsIDEpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgcmlnaHQ6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMjtcclxuICAgICAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0yO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTIsICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAyLCAwKSByb3RhdGUoLTQ1ZGVnKTtcclxuICAgICAgICAgIHRyYW5zaXRpb246IHJpZ2h0IDAuMnMgZWFzZS1vdXQsXHJcbiAgICAgICAgICAgICAgICAgICAgICB0b3AgMC4wNXMgMC4ycyBsaW5lYXIsXHJcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4ycyAwLjI1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGVtcGhhdGljLXIpIHtcclxuICAvKlxyXG4gICAqIEVtcGhhdGljIFJldmVyc2VcclxuICAgKi9cclxuICAuaGFtYnVyZ2VyLS1lbXBoYXRpYy1yIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XHJcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyAwLjI1cyBlYXNlLWluO1xyXG5cclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGN1YmljLWJlemllcigwLjYsIDAuMDQsIDAuOTgsIDAuMzM1KSxcclxuICAgICAgICAgICAgICAgICAgICB0b3AgMC4wNXMgMC4ycyBsaW5lYXIsXHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdCAwLjJzIDAuMjVzIGVhc2UtaW47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKyAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nKTtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBjdWJpYy1iZXppZXIoMC42LCAwLjA0LCAwLjk4LCAwLjMzNSksXHJcbiAgICAgICAgICAgICAgICAgICAgdG9wIDAuMDVzIDAuMnMgbGluZWFyLFxyXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0IDAuMnMgMC4yNXMgZWFzZS1pbjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XHJcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgbGVmdDogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0yO1xyXG4gICAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMjtcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDIsICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMiwgMCkgcm90YXRlKC00NWRlZyk7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBsZWZ0IDAuMnMgZWFzZS1vdXQsXHJcbiAgICAgICAgICAgICAgICAgICAgICB0b3AgMC4wNXMgMC4ycyBsaW5lYXIsXHJcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4ycyAwLjI1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIHJpZ2h0OiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTI7XHJcbiAgICAgICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAyO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTIsICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMiwgMCkgcm90YXRlKDQ1ZGVnKTtcclxuICAgICAgICAgIHRyYW5zaXRpb246IHJpZ2h0IDAuMnMgZWFzZS1vdXQsXHJcbiAgICAgICAgICAgICAgICAgICAgICB0b3AgMC4wNXMgMC4ycyBsaW5lYXIsXHJcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4ycyAwLjI1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHNsaWRlcikge1xyXG4gIC8qXHJcbiAgICogU2xpZGVyXHJcbiAgICovXHJcbiAgLmhhbWJ1cmdlci0tc2xpZGVyIHtcclxuICAgIC5oYW1idXJnZXItaW5uZXIge1xyXG4gICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0IC8gMjtcclxuXHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZztcclxuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XHJcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcclxuICAgICAgfVxyXG5cclxuICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMikgKyAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xyXG4gICAgICAgICR5LW9mZnNldDogJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQ7XHJcblxyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0LCAwKSByb3RhdGUoNDVkZWcpO1xyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoIC8gLTcsICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIC0xLCAwKTtcclxuICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICR5LW9mZnNldCAqIC0yLCAwKSByb3RhdGUoLTkwZGVnKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHNsaWRlci1yKSB7XHJcbiAgLypcclxuICAgKiBTbGlkZXIgUmV2ZXJzZVxyXG4gICAqL1xyXG4gIC5oYW1idXJnZXItLXNsaWRlci1yIHtcclxuICAgIC5oYW1idXJnZXItaW5uZXIge1xyXG4gICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0IC8gMjtcclxuXHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZztcclxuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XHJcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcclxuICAgICAgfVxyXG5cclxuICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMikgKyAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xyXG4gICAgICAgICR5LW9mZnNldDogJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQ7XHJcblxyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0LCAwKSByb3RhdGUoLTQ1ZGVnKTtcclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoIC8gNywgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogLTEsIDApO1xyXG4gICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0ICogLTIsIDApIHJvdGF0ZSg5MGRlZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBzcHJpbmcpIHtcclxuICAvKlxyXG4gICAqIFNwcmluZ1xyXG4gICAqL1xyXG4gIC5oYW1idXJnZXItLXNwcmluZyB7XHJcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcclxuICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAvIDI7XHJcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMHMgMC4xNXMgbGluZWFyO1xyXG5cclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nO1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjEycyAwLjNzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSxcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDIpICsgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIDIpO1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjNzIDAuM3MgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLFxyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4zMnM7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xMnMgMC4xOHMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTVzIDAuMzJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCwgMCkgcm90YXRlKDQ1ZGVnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjNzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSxcclxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjE1cyAwLjMycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQsIDApIHJvdGF0ZSgtNDVkZWcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgc3ByaW5nLXIpIHtcclxuICAvKlxyXG4gICAqIFNwcmluZyBSZXZlcnNlXHJcbiAgICovXHJcbiAgLmhhbWJ1cmdlci0tc3ByaW5nLXIge1xyXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XHJcbiAgICAgIHRvcDogYXV0bztcclxuICAgICAgYm90dG9tOiAwO1xyXG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcclxuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XHJcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuXHJcbiAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAyKSAqIC0xO1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjNzIDAuM3MgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLFxyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMHMgbGluZWFyO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjEycyAwLjNzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSxcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0KSAqIC0xLCAwKSByb3RhdGUoLTQ1ZGVnKTtcclxuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjMycztcclxuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4zcyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksXHJcbiAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDBzIDAuMzJzIGxpbmVhcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xMnMgMC4xOHMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTVzIDAuMzJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgc3RhbmQpIHtcclxuICAvKlxyXG4gICAqIFN0YW5kXHJcbiAgICovXHJcbiAgLmhhbWJ1cmdlci0tc3RhbmQge1xyXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XHJcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjFzIDAuMjJzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpLFxyXG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgbGluZWFyO1xyXG5cclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjFzIGVhc2UtaW4sXHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyAwLjFzIGVhc2UtaW4sXHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHJcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMXMgMHMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSksXHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjIycyBsaW5lYXI7XHJcblxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xMnMgZWFzZS1vdXQsXHJcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xcyAwLjIycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAgICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMTJzIGVhc2Utb3V0LFxyXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMXMgMC4yMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBzdGFuZC1yKSB7XHJcbiAgLypcclxuICAgKiBTdGFuZCBSZXZlcnNlXHJcbiAgICovXHJcbiAgLmhhbWJ1cmdlci0tc3RhbmQtciB7XHJcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcclxuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMXMgMC4yMnMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSksXHJcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBsaW5lYXI7XHJcblxyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMXMgZWFzZS1pbixcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xcyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMXMgZWFzZS1pbixcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xcyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHJcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMXMgMHMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSksXHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjIycyBsaW5lYXI7XHJcblxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xMnMgZWFzZS1vdXQsXHJcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xcyAwLjIycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAgICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMTJzIGVhc2Utb3V0LFxyXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMXMgMC4yMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBzcGluKSB7XHJcbiAgLypcclxuICAgKiBTcGluXHJcbiAgICovXHJcbiAgLmhhbWJ1cmdlci0tc3BpbiB7XHJcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcclxuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcclxuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xyXG5cclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjM0cyBlYXNlLWluLFxyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xcyBlYXNlLWluO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgMC4zNHMgZWFzZS1pbixcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4zcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjI1ZGVnKTtcclxuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjE0cztcclxuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XHJcblxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgZWFzZS1vdXQsXHJcbiAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMXMgMC4xNHMgZWFzZS1vdXQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgZWFzZS1vdXQsXHJcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4zcyAwLjE0cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHNwaW4tcikge1xyXG4gIC8qXHJcbiAgICogU3BpbiBSZXZlcnNlXHJcbiAgICovXHJcbiAgLmhhbWJ1cmdlci0tc3Bpbi1yIHtcclxuICAgIC5oYW1idXJnZXItaW5uZXIge1xyXG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xyXG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XHJcblxyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMzRzIGVhc2UtaW4sXHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjFzIGVhc2UtaW47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyAwLjM0cyBlYXNlLWluLFxyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjNzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMjI1ZGVnKTtcclxuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjE0cztcclxuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XHJcblxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgZWFzZS1vdXQsXHJcbiAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMXMgMC4xNHMgZWFzZS1vdXQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgZWFzZS1vdXQsXHJcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4zcyAwLjE0cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHNxdWVlemUpIHtcclxuICAvKlxyXG4gICAqIFNxdWVlemVcclxuICAgKi9cclxuICAuaGFtYnVyZ2VyLS1zcXVlZXplIHtcclxuICAgIC5oYW1idXJnZXItaW5uZXIge1xyXG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjFzO1xyXG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XHJcblxyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMTRzIGVhc2UsXHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjFzIGVhc2U7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyAwLjE0cyBlYXNlLFxyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjFzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xNHM7XHJcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIGVhc2UsXHJcbiAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMXMgMC4xNHMgZWFzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMXMgMC4xNHMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCB2b3J0ZXgpIHtcclxuICAvKlxyXG4gICAqIFZvcnRleFxyXG4gICAqL1xyXG4gIC5oYW1idXJnZXItLXZvcnRleCB7XHJcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcclxuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcclxuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcclxuXHJcbiAgICAgICY6OmJlZm9yZSxcclxuICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XHJcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0b3AsIG9wYWNpdHk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBib3R0b20sIHRyYW5zZm9ybTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNzY1ZGVnKTtcclxuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xyXG5cclxuICAgICAgICAmOjpiZWZvcmUsXHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHZvcnRleC1yKSB7XHJcbiAgLypcclxuICAgKiBWb3J0ZXggUmV2ZXJzZVxyXG4gICAqL1xyXG4gIC5oYW1idXJnZXItLXZvcnRleC1yIHtcclxuICAgIC5oYW1idXJnZXItaW5uZXIge1xyXG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xyXG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xyXG5cclxuICAgICAgJjo6YmVmb3JlLFxyXG4gICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xcztcclxuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRvcCwgb3BhY2l0eTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGJvdHRvbSwgdHJhbnNmb3JtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNzY1ZGVnKTtcclxuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xyXG5cclxuICAgICAgICAmOjpiZWZvcmUsXHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIiNmYWRlIHtcbiAgICAvLyBXcmFwcGVyIGZvciB0aGUgc2xpZGUgY29udGFpbmVyIGFuZCBpbmRpY2F0b3JzXHJcbiAgICAuY2Fyb3VzZWwge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcm91c2VsLWlubmVyIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgID4gLmNhcm91c2VsLWl0ZW0ge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIHRyYW5zaXRpb246IC42cyBlYXNlLWluLW91dCBsZWZ0O1xyXG5cclxuICAgICAgICAvLyBBY2NvdW50IGZvciBqYW5raXR1ZGUgb24gaW1hZ2VzXHJcbiAgICAgICAgPiBpbWcsXHJcbiAgICAgICAgPiBhID4gaW1nIHtcclxuICAgICAgICAgIEBleHRlbmQgLmltZy1mbHVpZDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gV2ViS2l0IENTUzMgdHJhbnNmb3JtcyBmb3Igc3VwcG9ydGVkIGRldmljZXNcclxuICAgICAgICBAbWVkaWEgYWxsIGFuZCAodHJhbnNmb3JtLTNkKSwgKC13ZWJraXQtdHJhbnNmb3JtLTNkKSB7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDFzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgICAgcGVyc3BlY3RpdmU6IDEwMDBweDtcclxuXHJcbiAgICAgICAgICAmLm5leHQsXHJcbiAgICAgICAgICAmLmFjdGl2ZS5yaWdodCB7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIC8vdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICAgICAgICAgICAgb3BhY2l0eTowO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgJi5wcmV2LFxyXG4gICAgICAgICAgJi5hY3RpdmUubGVmdCB7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIC8vdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmLm5leHQubGVmdCxcclxuICAgICAgICAgICYucHJldi5yaWdodCxcclxuICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgLy90cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgPiAuYWN0aXZlLFxyXG4gICAgICA+IC5uZXh0LFxyXG4gICAgICA+IC5wcmV2IHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG5cclxuICAgICAgPiAuYWN0aXZlIHtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA+IC5uZXh0LFxyXG4gICAgICA+IC5wcmV2IHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA+IC5uZXh0IHtcclxuICAgICAgICBsZWZ0OiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICAgID4gLnByZXYge1xyXG4gICAgICAgIGxlZnQ6IC0xMDAlO1xyXG4gICAgICB9XHJcbiAgICAgID4gLm5leHQubGVmdCxcclxuICAgICAgPiAucHJldi5yaWdodCB7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgPiAuYWN0aXZlLmxlZnQge1xyXG4gICAgICAgIGxlZnQ6IC0xMDAlO1xyXG4gICAgICB9XHJcbiAgICAgID4gLmFjdGl2ZS5yaWdodCB7XHJcbiAgICAgICAgbGVmdDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvL1xyXG4gICAgLy8gTGVmdC9yaWdodCBjb250cm9scyBmb3IgbmF2XHJcbiAgICAvL1xyXG5cclxuICAgIC5jYXJvdXNlbC1jb250cm9sIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGJvdHRvbTogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xyXG4gICAgICBmb250LXNpemU6ICRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZTtcclxuICAgICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIHRleHQtc2hhZG93OiAkY2Fyb3VzZWwtdGV4dC1zaGFkb3c7XHJcbiAgICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk7XHJcbiAgICAgIC8vIFdlIGNhbid0IGhhdmUgdGhpcyB0cmFuc2l0aW9uIGhlcmUgYmVjYXVzZSBXZWJLaXQgY2FuY2VscyB0aGUgY2Fyb3VzZWxcclxuICAgICAgLy8gYW5pbWF0aW9uIGlmIHlvdSB0cmlwIHRoaXMgd2hpbGUgaW4gdGhlIG1pZGRsZSBvZiBhbm90aGVyIGFuaW1hdGlvbi5cclxuXHJcbiAgICAgIC8vIFNldCBncmFkaWVudHMgZm9yIGJhY2tncm91bmRzXHJcbiAgICAgICYubGVmdCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQteCgkc3RhcnQtY29sb3I6IHJnYmEoMCwwLDAsLjUpLCAkZW5kLWNvbG9yOiByZ2JhKDAsMCwwLC4wMDAxKSk7XHJcbiAgICAgIH1cclxuICAgICAgJi5yaWdodCB7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgbGVmdDogYXV0bztcclxuICAgICAgICBAaW5jbHVkZSBncmFkaWVudC14KCRzdGFydC1jb2xvcjogcmdiYSgwLDAsMCwuMDAwMSksICRlbmQtY29sb3I6IHJnYmEoMCwwLDAsLjUpKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcclxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xyXG4gICAgICAgIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgb3V0bGluZTogMDtcclxuICAgICAgICBvcGFjaXR5OiAuOTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLy8gVG9nZ2xlc1xyXG4gICAgICAuaWNvbi1wcmV2LFxyXG4gICAgICAuaWNvbi1uZXh0IHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgei1pbmRleDogNTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6ICRjYXJvdXNlbC1pY29uLXdpZHRoO1xyXG4gICAgICAgIGhlaWdodDogJGNhcm91c2VsLWljb24td2lkdGg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLSgkY2Fyb3VzZWwtaWNvbi13aWR0aCAvIDIpO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBzZXJpZjtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgfVxyXG4gICAgICAuaWNvbi1wcmV2IHtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0oJGNhcm91c2VsLWljb24td2lkdGggLyAyKTtcclxuICAgICAgfVxyXG4gICAgICAuaWNvbi1uZXh0IHtcclxuICAgICAgICByaWdodDogNTAlO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogLSgkY2Fyb3VzZWwtaWNvbi13aWR0aCAvIDIpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuaWNvbi1wcmV2IHtcclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgY29udGVudDogXCJcXDIwMzlcIjsvLyBTSU5HTEUgTEVGVC1QT0lOVElORyBBTkdMRSBRVU9UQVRJT04gTUFSSyAoVSsyMDM5KVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuaWNvbi1uZXh0IHtcclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgY29udGVudDogXCJcXDIwM2FcIjsvLyBTSU5HTEUgUklHSFQtUE9JTlRJTkcgQU5HTEUgUVVPVEFUSU9OIE1BUksgKFUrMjAzQSlcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgLy8gT3B0aW9uYWwgaW5kaWNhdG9yIHBpcHNcclxuICAgIC8vXHJcbiAgICAvLyBBZGQgYW4gdW5vcmRlcmVkIGxpc3Qgd2l0aCB0aGUgZm9sbG93aW5nIGNsYXNzIGFuZCBhZGQgYSBsaXN0IGl0ZW0gZm9yIGVhY2hcclxuICAgIC8vIHNsaWRlIHlvdXIgY2Fyb3VzZWwgaG9sZHMuXHJcblxyXG4gICAgLmNhcm91c2VsLWluZGljYXRvcnMge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGJvdHRvbTogMTBweDtcclxuICAgICAgbGVmdDogNTAlO1xyXG4gICAgICB6LWluZGV4OiAxNTtcclxuICAgICAgd2lkdGg6ICRjYXJvdXNlbC1pbmRpY2F0b3JzLXdpZHRoO1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAtKCRjYXJvdXNlbC1pbmRpY2F0b3JzLXdpZHRoIC8gMik7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuXHJcbiAgICAgIGxpIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc2l6ZTtcclxuICAgICAgICBoZWlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc2l6ZTtcclxuICAgICAgICBtYXJnaW46IDFweDtcclxuICAgICAgICB0ZXh0LWluZGVudDogLTk5OXB4O1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAvLyBJRTkgaGFjayBmb3IgZXZlbnQgaGFuZGxpbmdcclxuICAgICAgICAvL1xyXG4gICAgICAgIC8vIEludGVybmV0IEV4cGxvcmVyIDkgZG9lcyBub3QgcHJvcGVybHkgaGFuZGxlIGNsaWNrcyBvbiBlbGVtZW50cyB3aXRoIGEgYGJhY2tncm91bmQtY29sb3JgIG9mIGB0cmFuc3BhcmVudGAsXHJcbiAgICAgICAgLy8gc28gd2UgdXNlIGByZ2JhKDAsMCwwLDApYCBpbnN0ZWFkIHNpbmNlIGl0J3MgYSBub24tYnVnZ3kgZXF1aXZhbGVudC5cclxuICAgICAgICAvLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI0ludGVybmV0X0V4cGxvcmVyXHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwKTsgLy8gSUU5XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNhcm91c2VsLWluZGljYXRvci1ib3JkZXItY29sb3I7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGNhcm91c2VsLWluZGljYXRvci1zaXplO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuYWN0aXZlIHtcclxuICAgICAgICB3aWR0aDogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtc2l6ZTtcclxuICAgICAgICBoZWlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLXNpemU7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8vIE9wdGlvbmFsIGNhcHRpb25zXHJcbiAgICAvL1xyXG4gICAgLy8gSGlkZGVuIGJ5IGRlZmF1bHQgZm9yIHNtYWxsZXIgdmlld3BvcnRzLlxyXG5cclxuICAgIC5jYXJvdXNlbC1jYXB0aW9uIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICByaWdodDogKCgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpIC8gMik7XHJcbiAgICAgIGJvdHRvbTogMjBweDtcclxuICAgICAgbGVmdDogKCgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpIC8gMik7XHJcbiAgICAgIHotaW5kZXg6IDEwO1xyXG4gICAgICBwYWRkaW5nLXRvcDogMjBweDtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XHJcbiAgICAgIGNvbG9yOiAkY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICB0ZXh0LXNoYWRvdzogJGNhcm91c2VsLXRleHQtc2hhZG93O1xyXG5cclxuICAgICAgLmJ0biB7XHJcbiAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmU7IC8vIE5vIHNoYWRvdyBmb3IgYnV0dG9uIGVsZW1lbnRzIGluIGNhcm91c2VsLWNhcHRpb25cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvL1xyXG4gICAgLy8gUmVzcG9uc2l2ZSB2YXJpYXRpb25zXHJcbiAgICAvL1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcclxuICAgICAgLy8gU2NhbGUgdXAgdGhlIGNvbnRyb2xzIGEgc21pZGdlXHJcbiAgICAgIC5jYXJvdXNlbC1jb250cm9sIHtcclxuICAgICAgICAuaWNvbi1wcmV2LFxyXG4gICAgICAgIC5pY29uLW5leHQge1xyXG4gICAgICAgICAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXNtLXVwLXNpemU7XHJcbiAgICAgICAgICBoZWlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLXNtLXVwLXNpemU7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtKCRjYXJvdXNlbC1jb250cm9sLXNtLXVwLXNpemUgLyAyKTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogJGNhcm91c2VsLWNvbnRyb2wtc20tdXAtc2l6ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmljb24tcHJldiB7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLSgkY2Fyb3VzZWwtY29udHJvbC1zbS11cC1zaXplIC8gMik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pY29uLW5leHQge1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtKCRjYXJvdXNlbC1jb250cm9sLXNtLXVwLXNpemUgLyAyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8vIFNob3cgYW5kIGxlZnQgYWxpZ24gdGhlIGNhcHRpb25zXHJcbiAgICAgIC5jYXJvdXNlbC1jYXB0aW9uIHtcclxuICAgICAgICByaWdodDogKCgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24tc20tdXAtd2lkdGgpIC8gMik7XHJcbiAgICAgICAgbGVmdDogKCgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24tc20tdXAtd2lkdGgpIC8gMik7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8vIE1vdmUgdXAgdGhlIGluZGljYXRvcnNcclxuICAgICAgLmNhcm91c2VsLWluZGljYXRvcnMge1xyXG4gICAgICAgIGJvdHRvbTogMjBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxufVxyXG4iLCIjc2xpZGUge1xyXG4gICAgLy8gV3JhcHBlciBmb3IgdGhlIHNsaWRlIGNvbnRhaW5lciBhbmQgaW5kaWNhdG9yc1xyXG4gICAgLmNhcm91c2VsIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgfVxyXG5cclxuICAgIC5jYXJvdXNlbC1pbm5lciB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICA+IC5jYXJvdXNlbC1pdGVtIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB0cmFuc2l0aW9uOiAuNnMgZWFzZS1pbi1vdXQgbGVmdDtcclxuXHJcbiAgICAgICAgLy8gQWNjb3VudCBmb3IgamFua2l0dWRlIG9uIGltYWdlc1xyXG4gICAgICAgID4gaW1nLFxyXG4gICAgICAgID4gYSA+IGltZyB7XHJcbiAgICAgICAgICBAZXh0ZW5kIC5pbWctZmx1aWQ7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIFdlYktpdCBDU1MzIHRyYW5zZm9ybXMgZm9yIHN1cHBvcnRlZCBkZXZpY2VzXHJcbiAgICAgICAgQG1lZGlhIGFsbCBhbmQgKHRyYW5zZm9ybS0zZCksICgtd2Via2l0LXRyYW5zZm9ybS0zZCkge1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC42cyBlYXNlLWluLW91dDtcclxuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAgIHBlcnNwZWN0aXZlOiAxMDAwcHg7XHJcblxyXG4gICAgICAgICAgJi5uZXh0LFxyXG4gICAgICAgICAgJi5hY3RpdmUucmlnaHQge1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgJi5wcmV2LFxyXG4gICAgICAgICAgJi5hY3RpdmUubGVmdCB7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgJi5uZXh0LmxlZnQsXHJcbiAgICAgICAgICAmLnByZXYucmlnaHQsXHJcbiAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICA+IC5hY3RpdmUsXHJcbiAgICAgID4gLm5leHQsXHJcbiAgICAgID4gLnByZXYge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA+IC5hY3RpdmUge1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgID4gLm5leHQsXHJcbiAgICAgID4gLnByZXYge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgID4gLm5leHQge1xyXG4gICAgICAgIGxlZnQ6IDEwMCU7XHJcbiAgICAgIH1cclxuICAgICAgPiAucHJldiB7XHJcbiAgICAgICAgbGVmdDogLTEwMCU7XHJcbiAgICAgIH1cclxuICAgICAgPiAubmV4dC5sZWZ0LFxyXG4gICAgICA+IC5wcmV2LnJpZ2h0IHtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA+IC5hY3RpdmUubGVmdCB7XHJcbiAgICAgICAgbGVmdDogLTEwMCU7XHJcbiAgICAgIH1cclxuICAgICAgPiAuYWN0aXZlLnJpZ2h0IHtcclxuICAgICAgICBsZWZ0OiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8vXHJcbiAgICAvLyBMZWZ0L3JpZ2h0IGNvbnRyb2xzIGZvciBuYXZcclxuICAgIC8vXHJcblxyXG4gICAgLmNhcm91c2VsLWNvbnRyb2wge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgYm90dG9tOiAwO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XHJcbiAgICAgIGZvbnQtc2l6ZTogJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplO1xyXG4gICAgICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgdGV4dC1zaGFkb3c6ICRjYXJvdXNlbC10ZXh0LXNoYWRvdztcclxuICAgICAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTtcclxuICAgICAgLy8gV2UgY2FuJ3QgaGF2ZSB0aGlzIHRyYW5zaXRpb24gaGVyZSBiZWNhdXNlIFdlYktpdCBjYW5jZWxzIHRoZSBjYXJvdXNlbFxyXG4gICAgICAvLyBhbmltYXRpb24gaWYgeW91IHRyaXAgdGhpcyB3aGlsZSBpbiB0aGUgbWlkZGxlIG9mIGFub3RoZXIgYW5pbWF0aW9uLlxyXG5cclxuICAgICAgLy8gU2V0IGdyYWRpZW50cyBmb3IgYmFja2dyb3VuZHNcclxuICAgICAgJi5sZWZ0IHtcclxuICAgICAgICBAaW5jbHVkZSBncmFkaWVudC14KCRzdGFydC1jb2xvcjogcmdiYSgwLDAsMCwuNSksICRlbmQtY29sb3I6IHJnYmEoMCwwLDAsLjAwMDEpKTtcclxuICAgICAgfVxyXG4gICAgICAmLnJpZ2h0IHtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgIEBpbmNsdWRlIGdyYWRpZW50LXgoJHN0YXJ0LWNvbG9yOiByZ2JhKDAsMCwwLC4wMDAxKSwgJGVuZC1jb2xvcjogcmdiYSgwLDAsMCwuNSkpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAvLyBIb3Zlci9mb2N1cyBzdGF0ZVxyXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XHJcbiAgICAgICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICBvdXRsaW5lOiAwO1xyXG4gICAgICAgIG9wYWNpdHk6IC45O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAvLyBUb2dnbGVzXHJcbiAgICAgIC5pY29uLXByZXYsXHJcbiAgICAgIC5pY29uLW5leHQge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICB6LWluZGV4OiA1O1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB3aWR0aDogJGNhcm91c2VsLWljb24td2lkdGg7XHJcbiAgICAgICAgaGVpZ2h0OiAkY2Fyb3VzZWwtaWNvbi13aWR0aDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtKCRjYXJvdXNlbC1pY29uLXdpZHRoIC8gMik7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IHNlcmlmO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICB9XHJcbiAgICAgIC5pY29uLXByZXYge1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogLSgkY2Fyb3VzZWwtaWNvbi13aWR0aCAvIDIpO1xyXG4gICAgICB9XHJcbiAgICAgIC5pY29uLW5leHQge1xyXG4gICAgICAgIHJpZ2h0OiA1MCU7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtKCRjYXJvdXNlbC1pY29uLXdpZHRoIC8gMik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5pY29uLXByZXYge1xyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICBjb250ZW50OiBcIlxcMjAzOVwiOy8vIFNJTkdMRSBMRUZULVBPSU5USU5HIEFOR0xFIFFVT1RBVElPTiBNQVJLIChVKzIwMzkpXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5pY29uLW5leHQge1xyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICBjb250ZW50OiBcIlxcMjAzYVwiOy8vIFNJTkdMRSBSSUdIVC1QT0lOVElORyBBTkdMRSBRVU9UQVRJT04gTUFSSyAoVSsyMDNBKVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvLyBPcHRpb25hbCBpbmRpY2F0b3IgcGlwc1xyXG4gICAgLy9cclxuICAgIC8vIEFkZCBhbiB1bm9yZGVyZWQgbGlzdCB3aXRoIHRoZSBmb2xsb3dpbmcgY2xhc3MgYW5kIGFkZCBhIGxpc3QgaXRlbSBmb3IgZWFjaFxyXG4gICAgLy8gc2xpZGUgeW91ciBjYXJvdXNlbCBob2xkcy5cclxuXHJcbiAgICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgYm90dG9tOiAxMHB4O1xyXG4gICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgIHotaW5kZXg6IDE1O1xyXG4gICAgICB3aWR0aDogJGNhcm91c2VsLWluZGljYXRvcnMtd2lkdGg7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgbWFyZ2luLWxlZnQ6IC0oJGNhcm91c2VsLWluZGljYXRvcnMtd2lkdGggLyAyKTtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG5cclxuICAgICAgbGkge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB3aWR0aDogJGNhcm91c2VsLWluZGljYXRvci1zaXplO1xyXG4gICAgICAgIGhlaWdodDogJGNhcm91c2VsLWluZGljYXRvci1zaXplO1xyXG4gICAgICAgIG1hcmdpbjogMXB4O1xyXG4gICAgICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIC8vIElFOSBoYWNrIGZvciBldmVudCBoYW5kbGluZ1xyXG4gICAgICAgIC8vXHJcbiAgICAgICAgLy8gSW50ZXJuZXQgRXhwbG9yZXIgOSBkb2VzIG5vdCBwcm9wZXJseSBoYW5kbGUgY2xpY2tzIG9uIGVsZW1lbnRzIHdpdGggYSBgYmFja2dyb3VuZC1jb2xvcmAgb2YgYHRyYW5zcGFyZW50YCxcclxuICAgICAgICAvLyBzbyB3ZSB1c2UgYHJnYmEoMCwwLDAsMClgIGluc3RlYWQgc2luY2UgaXQncyBhIG5vbi1idWdneSBlcXVpdmFsZW50LlxyXG4gICAgICAgIC8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjSW50ZXJuZXRfRXhwbG9yZXJcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDApOyAvLyBJRTlcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY2Fyb3VzZWwtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNpemU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5hY3RpdmUge1xyXG4gICAgICAgIHdpZHRoOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1zaXplO1xyXG4gICAgICAgIGhlaWdodDogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtc2l6ZTtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgLy8gT3B0aW9uYWwgY2FwdGlvbnNcclxuICAgIC8vXHJcbiAgICAvLyBIaWRkZW4gYnkgZGVmYXVsdCBmb3Igc21hbGxlciB2aWV3cG9ydHMuXHJcblxyXG4gICAgLmNhcm91c2VsLWNhcHRpb24ge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHJpZ2h0OiAoKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgLyAyKTtcclxuICAgICAgYm90dG9tOiAyMHB4O1xyXG4gICAgICBsZWZ0OiAoKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgLyAyKTtcclxuICAgICAgei1pbmRleDogMTA7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuICAgICAgY29sb3I6ICRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIHRleHQtc2hhZG93OiAkY2Fyb3VzZWwtdGV4dC1zaGFkb3c7XHJcblxyXG4gICAgICAuYnRuIHtcclxuICAgICAgICB0ZXh0LXNoYWRvdzogbm9uZTsgLy8gTm8gc2hhZG93IGZvciBidXR0b24gZWxlbWVudHMgaW4gY2Fyb3VzZWwtY2FwdGlvblxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8vXHJcbiAgICAvLyBSZXNwb25zaXZlIHZhcmlhdGlvbnNcclxuICAgIC8vXHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xyXG4gICAgICAvLyBTY2FsZSB1cCB0aGUgY29udHJvbHMgYSBzbWlkZ2VcclxuICAgICAgLmNhcm91c2VsLWNvbnRyb2wge1xyXG4gICAgICAgIC5pY29uLXByZXYsXHJcbiAgICAgICAgLmljb24tbmV4dCB7XHJcbiAgICAgICAgICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtc20tdXAtc2l6ZTtcclxuICAgICAgICAgIGhlaWdodDogJGNhcm91c2VsLWNvbnRyb2wtc20tdXAtc2l6ZTtcclxuICAgICAgICAgIG1hcmdpbi10b3A6IC0oJGNhcm91c2VsLWNvbnRyb2wtc20tdXAtc2l6ZSAvIDIpO1xyXG4gICAgICAgICAgZm9udC1zaXplOiAkY2Fyb3VzZWwtY29udHJvbC1zbS11cC1zaXplO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuaWNvbi1wcmV2IHtcclxuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtKCRjYXJvdXNlbC1jb250cm9sLXNtLXVwLXNpemUgLyAyKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmljb24tbmV4dCB7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0oJGNhcm91c2VsLWNvbnRyb2wtc20tdXAtc2l6ZSAvIDIpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLy8gU2hvdyBhbmQgbGVmdCBhbGlnbiB0aGUgY2FwdGlvbnNcclxuICAgICAgLmNhcm91c2VsLWNhcHRpb24ge1xyXG4gICAgICAgIHJpZ2h0OiAoKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi1zbS11cC13aWR0aCkgLyAyKTtcclxuICAgICAgICBsZWZ0OiAoKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi1zbS11cC13aWR0aCkgLyAyKTtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLy8gTW92ZSB1cCB0aGUgaW5kaWNhdG9yc1xyXG4gICAgICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XHJcbiAgICAgICAgYm90dG9tOiAyMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG59XHJcbiIsIiNoZWFkZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDowO1xyXG4gICAgcmlnaHQ6MDtcclxuICAgIHRvcDogNjVweDtcclxuICAgIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyNmZjAwMDArMCxmZjAwMDArNTAsMDA4OGUyKzUwLDAwN2JmNysxMDAgKi9cclxuICAgIGJhY2tncm91bmQ6ICRicmFuZC1zZWNvbmRhcnk7IC8qIE9sZCBicm93c2VycyAqL1xyXG4gICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgICRicmFuZC1zZWNvbmRhcnkgMCUsICRicmFuZC1zZWNvbmRhcnkgNTAlLCAkYnJhbmQtcHJpbWFyeSA1MCUsICRicmFuZC1wcmltYXJ5IDEwMCUpOyAvKiBGRjMuNi0xNSAqL1xyXG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgICRicmFuZC1zZWNvbmRhcnkgMCUsJGJyYW5kLXNlY29uZGFyeSA1MCUsJGJyYW5kLXByaW1hcnkgNTAlLCRicmFuZC1wcmltYXJ5IDEwMCUpOyAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAgJGJyYW5kLXNlY29uZGFyeSAwJSwkYnJhbmQtc2Vjb25kYXJ5IDUwJSwkYnJhbmQtcHJpbWFyeSA1MCUsJGJyYW5kLXByaW1hcnkgMTAwJSk7IC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xyXG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyRicmFuZC1zZWNvbmRhcnknLCBlbmRDb2xvcnN0cj0nJGJyYW5kLXByaW1hcnknLEdyYWRpZW50VHlwZT0xICk7IC8qIElFNi05ICovXHJcbiAgICB6LWluZGV4OiA5OTk5OTk5O1xyXG4gICAgLmNvbnRhaW5lciB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHBhZGRpbmc6MDtcclxuICAgIH1cclxuICAgIC5tdm1sb2dvIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOi02MHB4O1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDgwcHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogJ0hPTUUnO1xyXG4gICAgICAgICAgICBib3R0b206IC0yMnB4O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXItaG9yaXpvbnRhbDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuICAgIG5hdiB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBtYXJnaW4tbGVmdDo1MHB4O1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjokd2hpdGU7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgcGFkZGluZzowIDI1cHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxM3B4O1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWJldHdlZW4obWQsIGxnKSB7XHJcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTBweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAxMXB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjExcHg7XHJcbiAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6JGJyYW5kLXNlY29uZGFyeTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHVsIHtcclxuICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICBwYWRkaW5nOjVweCAxNXB4IDVweCAxMjVweDtcclxuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICYuY3VycmVudF9wYWdlX2l0ZW0ge1xyXG4gICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6JGJyYW5kLXNlY29uZGFyeTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uaG9tZSB7XHJcbiAgICAjaGVhZGVyIHtcclxuICAgICAgICAubXZtbG9nbyB7XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIlxyXG4vLyBTaXRlIFN0eWxlcyBhbmQgZGVmYXVsdHNcclxuaHRtbCB7XHJcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XHJcbn0gLy9Eb250IHJlbW92ZSB0aGlzLCBpdCBmb3JjZXMgYSBzY3JvbGwgYmFyIGFuZCBwcmV2ZW50cyBwYWdlcyBmcm9tIGp1bXBpbmcgaWYgdGhlIHBhZ2UgaXMgdG8gc2hvcnQuLlxyXG5cclxuYm9keSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG59XHJcblxyXG4uc3ByaXRlIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG5cclxubmF2Lm5hdmJhciB7XHJcbiAgICBAZXh0ZW5kICVjbGVhcmZpeDtcclxufVxyXG5cclxuLmNsZWFyZml4IHtcclxuICAgIEBleHRlbmQgJWNsZWFyZml4O1xyXG59XHJcblxyXG4vLyBEZWZhdWx0IGNvbnRlbnQgc3R5bGVzLlxyXG4uY29udGVudCB7XHJcblxyXG4gICAgLnJlc3BvbnNpdmUtaWZyYW1lIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgLy8gUGFkZGluZyBib3R0b20gaXMgYWRkZWQgaW50byB0aGlzIHdpdGgganF1ZXJ5IHNvIHRoZXJlJ3Mgbm8gcmVhc29uIHRvIGRlZmluZSBpdCBoZXJlLlxyXG5cclxuICAgICAgICBpZnJhbWUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gTGlzdCBmaXhlciB0byBoZWxwIGNvb3JkaW5hdGUgd2l0aCBmbG9hdGVkIGltYWdlcyBhIGxpdHRsZSBiaXQgYmV0dGVyLlxyXG4gICAgdWwsIG9sIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMWVtO1xyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgbGVmdDogMWVtO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uYWxpZ25jZW50ZXIge1xyXG4gICAgbWFyZ2luOjAgYXV0bztcclxufVxyXG5cclxuLmFsaWdubGVmdCB7XHJcbiAgICBmbG9hdDpsZWZ0O1xyXG4gICAgbWFyZ2luOiAwICRzcGFjZXIgJHNwYWNlciAwO1xyXG59XHJcblxyXG4uYWxpZ25yaWdodCB7XHJcbiAgICBmbG9hdDpyaWdodDtcclxuICAgIG1hcmdpbjogMCAwICRzcGFjZXIgJHNwYWNlcjtcclxufVxyXG4iLCJbdi1jbG9ha10ge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmNvbnRlbnQge1xyXG5cclxuICAgIC8vIFBsYWNlIHlvdXIgbWFpbiBjb250ZW50IHN0eWxlcyBoZXJlXHJcbiAgICAvLyBUaGlzIHNob3VsZCBiZSB0aGUgZGVmYXVsdCB0ZW1wbGF0ZSBzdHlsZXMgZm9yIGFueSBjb250ZW50IGFyZWFzLFxyXG4gICAgLy8gaW5jbHVkZSBzdHlsZXMgZm9yIHBhcmFncmFwaHMsIGhlYWRlcnMsIGxpc3RzLCBldGMuXHJcblxyXG4gICAgaDEge1xyXG5cclxuICAgIH1cclxuXHJcbiAgICBoMiB7XHJcblxyXG4gICAgfVxyXG5cclxuICAgIGgzIHtcclxuXHJcbiAgICB9XHJcblxyXG4gICAgaDQge1xyXG5cclxuICAgIH1cclxuXHJcbiAgICBoNSB7XHJcblxyXG4gICAgfVxyXG5cclxuICAgIGg2IHtcclxuXHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcblxyXG4gICAgfVxyXG5cclxuICAgIHVsIHtcclxuXHJcbiAgICAgICAgbGkge1xyXG5cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgb2wge1xyXG5cclxuICAgICAgICBsaSB7XHJcblxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBkbCB7XHJcblxyXG4gICAgICAgIGR0IHtcclxuXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBkZCB7XHJcblxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBibG9ja3F1b3RlIHtcclxuXHJcbiAgICB9XHJcblxyXG4gICAgaHIge1xyXG5cclxuICAgIH1cclxuXHJcbiAgICBpbWcge1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbn1cclxuIiwiJG1vYmlsZS1tZW51LXdpZHRoOiAzMDBweDtcclxuJG1vYmlsZS1tZW51LXRyYW5zaXRpb24tZHVyYXRpb246IDAuMjVzO1xyXG4kbW9iaWxlLW1lbnUtdHJhbnNpdGlvbi1lYXNpbmc6IGVhc2U7XHJcblxyXG5AaW5jbHVkZSByZXNwb25kLWRvd24tdG8obGcpIHtcclxuICAgIC5tb2JpbGViYXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRicmFuZC1wcmltYXJ5O1xyXG4gICAgICAgIGhlaWdodDogNTJweDtcclxuICAgICAgICB6LWluZGV4OiA5OTk5O1xyXG4gICAgfVxyXG4gICAgI21vYmlsZS1tZW51LWJ0biB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHotaW5kZXg6IDk5OTk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuXHJcbiAgICAgICAgYnV0dG9uIHtcclxuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgICNtb2JpbGUtbWVudSB7XHJcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBib3R0b206MDtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcclxuICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAkbW9iaWxlLW1lbnUtdHJhbnNpdGlvbi1kdXJhdGlvbiAkbW9iaWxlLW1lbnUtdHJhbnNpdGlvbi1lYXNpbmc7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYnJhbmQtc2Vjb25kYXJ5O1xyXG4gICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDVweCAtNXB4IDE1cHggcmdiYSgwLDAsMCwwLjE1KTtcclxuICAgICAgICB6LWluZGV4OiA5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgID4gLm1vYmlsZS1tZW51LXdyYXAge1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcclxuICAgICAgICAgICAgd2lkdGg6ICRtb2JpbGUtbWVudS13aWR0aDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogYXV0bztcclxuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBsaXN0LXN0eWxlOm5vbmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6MDtcclxuICAgICAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMDtcclxuICAgICAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOjA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLmN1cnJlbnRfcGFnZV9pdGVtIHtcclxuICAgICAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6JGdyZXktZDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjokZ3JleS1tO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzJweDtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiaW5kdXN0cnlcIjtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiRncmV5LW07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYm9keSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkbW9iaWxlLW1lbnUtdHJhbnNpdGlvbi1kdXJhdGlvbiAkbW9iaWxlLW1lbnUtdHJhbnNpdGlvbi1lYXNpbmc7XHJcbiAgICB9XHJcblxyXG4gICAgYm9keS5tb2JpbGUtbWVudS1vcGVuIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEgKiAkbW9iaWxlLW1lbnUtd2lkdGgpO1xyXG5cclxuICAgICAgICAjbW9iaWxlLW1lbnUge1xyXG4gICAgICAgICAgICB3aWR0aDogJG1vYmlsZS1tZW51LXdpZHRoO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuIiwiI3ByZWxvYWRlci1zaGVsbCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwcHg7XHJcblxyXG4gICAgLmNzLWxvYWRlciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAuY3MtbG9hZGVyLWlubmVyIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgLmNzLWxvYWRlci1pbm5lciBsYWJlbCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgbG9sIHtcclxuICAgIDAlIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzAwcHgpO1xyXG4gICAgfVxyXG4gICAgMzMlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xyXG4gICAgfVxyXG4gICAgNjYlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xyXG4gICAgfVxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzAwcHgpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3MtbG9hZGVyLWlubmVyIGxhYmVsOm50aC1jaGlsZCg2KSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb246IGxvbCAzcyBpbmZpbml0ZSBlYXNlLWluLW91dDtcclxuICBhbmltYXRpb246IGxvbCAzcyBpbmZpbml0ZSBlYXNlLWluLW91dDtcclxufVxyXG5cclxuLmNzLWxvYWRlci1pbm5lciBsYWJlbDpudGgtY2hpbGQoNSkge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBsb2wgM3MgMTAwbXMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XHJcbiAgYW5pbWF0aW9uOiBsb2wgM3MgMTAwbXMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbi5jcy1sb2FkZXItaW5uZXIgbGFiZWw6bnRoLWNoaWxkKDQpIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbjogbG9sIDNzIDIwMG1zIGluZmluaXRlIGVhc2UtaW4tb3V0O1xyXG4gIGFuaW1hdGlvbjogbG9sIDNzIDIwMG1zIGluZmluaXRlIGVhc2UtaW4tb3V0O1xyXG59XHJcblxyXG4uY3MtbG9hZGVyLWlubmVyIGxhYmVsOm50aC1jaGlsZCgzKSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb246IGxvbCAzcyAzMDBtcyBpbmZpbml0ZSBlYXNlLWluLW91dDtcclxuICBhbmltYXRpb246IGxvbCAzcyAzMDBtcyBpbmZpbml0ZSBlYXNlLWluLW91dDtcclxufVxyXG5cclxuLmNzLWxvYWRlci1pbm5lciBsYWJlbDpudGgtY2hpbGQoMikge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBsb2wgM3MgNDAwbXMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XHJcbiAgYW5pbWF0aW9uOiBsb2wgM3MgNDAwbXMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbi5jcy1sb2FkZXItaW5uZXIgbGFiZWw6bnRoLWNoaWxkKDEpIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbjogbG9sIDNzIDUwMG1zIGluZmluaXRlIGVhc2UtaW4tb3V0O1xyXG4gIGFuaW1hdGlvbjogbG9sIDNzIDUwMG1zIGluZmluaXRlIGVhc2UtaW4tb3V0O1xyXG59XHJcbiIsIltkYXRhLWNvbnRhaW5lci1uYW1lPVwiaGVyby1pbWFnZS1hbmdsZVwiXSB7XHJcbiAgICBwYWRkaW5nLXRvcDoxMjVweDtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6dXJsKCdodHRwOi8vcGxhY2Vob2xkLml0LzIyMDB4NjAwJyk7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB6LWluZGV4OjE7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBjb2xvcjokd2hpdGU7XHJcbiAgICBoMSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYnJhbmQtc2Vjb25kYXJ5O1xyXG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG5cclxuICAgICAgICBwYWRkaW5nLXRvcDogMTJweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgY29sb3I6JHdoaXRlO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuXHJcblxyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiaW5kdXN0cnlcIjtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgICAgICB0b3A6IDc4cHg7XHJcbiAgICAgICAgICAgIGxlZnQ6MDtcclxuICAgICAgICAgICAgcmlnaHQ6MDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgICAgICBib3R0b206MDtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDE1cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDE1cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEycHggNDBweCA2cHg7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlci1ob3Jpem9udGFsO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcclxuXHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8qQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1vbmx5KG1kKSB7XHJcbiAgICAgICAgICAgIHJpZ2h0OjA7XHJcbiAgICAgICAgfSovXHJcbiAgICB9XHJcbiAgICAuY29weSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6MjBweDtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOjkwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjokd2hpdGU7XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6JGJyYW5kLXNlY29uZGFyeTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5pbWFnZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b20gY2VudGVyO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6MzUwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgfVxyXG59XHJcbiIsIltkYXRhLWNvbnRhaW5lci1uYW1lPVwicHJvbW90aW9uYWwtYm94ZXNcIl0ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRicmFuZC1wcmltYXJ5O1xyXG4gICAgY29sb3I6JHdoaXRlO1xyXG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XHJcbiAgICBpIHtcclxuICAgICAgICBmb250LXNpemU6IDUwcHg7XHJcbiAgICB9XHJcbiAgICB1bCB7XHJcbiAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgcGFkZGluZzowO1xyXG4gICAgfVxyXG4gICAgbGkge1xyXG4gICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGJyYW5kLXByaW1hcnk7XHJcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcblxyXG4gICAgfVxyXG4gICAgYSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcGFkZGluZzoyZW0gOHB4O1xyXG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOmRhcmtlbigkd2hpdGUsIDIwJSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICAgIG1hcmdpbi10b3A6MTBweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XHJcbiAgICB9XHJcblxyXG4gICAgLyogb25lIGl0ZW0gKi9cclxuICAgIGxpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDEpIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgLyogdHdvIGl0ZW1zICovXHJcbiAgICBsaTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKSxcclxuICAgIGxpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpIH4gbGkge1xyXG4gICAgICB3aWR0aDogNTAlO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIHRocmVlIGl0ZW1zICovXHJcbiAgICBsaTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKSxcclxuICAgIGxpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpIH4gbGkge1xyXG4gICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xyXG4gICAgICAgICB3aWR0aDogMzMuMzMzMyU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKiBmb3VyIGl0ZW1zICovXHJcbiAgICBsaTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KSxcclxuICAgIGxpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpIH4gbGkge1xyXG4gICAgICAgIHdpZHRoOjUwJTtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyNSU7XHJcbiAgICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKiBmaXZlIGl0ZW1zICovXHJcbiAgICBsaTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KSxcclxuICAgIGxpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpIH4gbGkge1xyXG4gICAgICB3aWR0aDogMjAlO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIGZpdmUgaXRlbXMgKi9cclxuICAgIGxpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpLFxyXG4gICAgbGk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNikgfiBsaSB7XHJcbiAgICAgIHdpZHRoOiAxNi42NjY2NjY2NjclO1xyXG4gICAgfVxyXG5cclxuICAgIGxpOm50aC1jaGlsZCgxKSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjpsaWdodGVuKCRicmFuZC1wcmltYXJ5LCAxNSUpO1xyXG4gICAgfVxyXG4gICAgbGk6bnRoLWNoaWxkKDIpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOmxpZ2h0ZW4oJGJyYW5kLXByaW1hcnksIDEwJSk7XHJcbiAgICB9XHJcbiAgICBsaTpudGgtY2hpbGQoMykge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6bGlnaHRlbigkYnJhbmQtcHJpbWFyeSwgNSUpO1xyXG4gICAgfVxyXG4gICAgbGk6bnRoLWNoaWxkKDQpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRicmFuZC1wcmltYXJ5O1xyXG4gICAgfVxyXG4gICAgbGk6bnRoLWNoaWxkKDUpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOmRhcmtlbigkYnJhbmQtcHJpbWFyeSwgNSUpO1xyXG4gICAgfVxyXG4gICAgbGk6bnRoLWNoaWxkKDYpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOmRhcmtlbigkYnJhbmQtcHJpbWFyeSwgMTAlKTtcclxuICAgIH1cclxufVxyXG4iLCJbZGF0YS1jb250YWluZXItbmFtZT1cInByb21vdGlvbmFsLWJsdXJiXCJdIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiRicmFuZC1zZWNvbmRhcnk7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTp1cmwoJy93cC1jb250ZW50L3RoZW1lcy9jYW5kZW9jcmVhdGl2ZS9pbWcvTVZNX1JlZF90ZXh0dXJlLW1pbi5qcGcnKTtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgcmlnaHQ7XHJcbiAgY29sb3I6JHdoaXRlO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB6LWluZGV4OiA0O1xyXG4gICAgaDIge1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgZm9udC1zaXplOjE4cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6Ym9sZDtcclxuICAgIH1cclxuICAgIC5pbWFnZSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgYm90dG9tOjA7XHJcbiAgICAgICAgICAgIHJpZ2h0OjA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmVsZW1lbnQge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOjMwcHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206MzBweDtcclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgICBjb2xvcjokd2hpdGU7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6JGJyYW5kLXdhcm5pbmc7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uaXRlbTU4NWIxMzc5NmQwYzkgeyAvL091ciBNaXNzaW9uIEhvbWVwYWdlOiAvXHJcbiAgICBtYXJnaW4tdG9wOjgwcHg7XHJcbn1cclxuXHJcblxyXG4uaXRlbTU4NWMwOWE2YTNiZmEgeyAvL0hvbmVyIHRoZSBNZW1vcnk6IC9zaG93LXlvdXItc3VwcG9ydC9cclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDE3LzAxL0hvbm9yX3RoZV9tZW1vcnktbWluLmpwZycpIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xyXG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgIH1cclxuICAgIC5lbGVtZW50IHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMTA2cHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDcwcHg7XHJcbiAgICB9XHJcbiAgICBoMiB7XHJcbiAgICAgICAgQGluY2x1ZGUgcmVkdGl0bGU7XHJcbiAgICB9XHJcbn1cclxuLml0ZW01ODZlYmIyMzJjMmI1IHsgLy9Ib25lciB0aGUgTWVtb3J5OiAvc2hvdy15b3VyLXN1cHBvcnQvXHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOnVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL2NhbmRlb2NyZWF0aXZlL2ltZy9NVk1fQmFja2dyb3VuZF9ibHVlLW1pbi5qcGcnKTtcclxufVxyXG4iLCJbZGF0YS1jb250YWluZXItbmFtZT1cImZlZWQtZnVsbFwiXSB7XHJcbiAgICBwYWRkaW5nLXRvcDo1MHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206NTBweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xyXG4gICAgaDIge1xyXG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gICAgICAgIGNvbG9yOiRncmV5LXh4ZDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOjgwcHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206MDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuYmRyIHtcclxuICAgICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JleS1sO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206NTBweDtcclxuICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206MDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBhcnRpY2xlIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOjgwcHg7XHJcbiAgICB9XHJcbiAgICBoZWFkZXIge1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206MnB4IHNvbGlkICRncmV5LW1sO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206NDBweDtcclxuICAgIH1cclxuICAgIGgxIHtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIGZvbnQtc2l6ZToxLjJlbTtcclxuICAgICAgICBtYXJnaW46MjBweCAwO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gICAgICAgICAgICBtYXJnaW46NXB4IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmRhdGUge1xyXG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OjE0cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6Ym9sZDtcclxuICAgICAgICBmb250LXNpemU6MTJweDtcclxuICAgIH1cclxuICAgIC50aXRsZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xyXG4gICAgICAgICAgICBib3JkZXItbGVmdDoxcHggc29saWQgJGdyZXktbWw7XHJcbiAgICAgICAgIH1cclxuICAgIH1cclxuICAgIC5idG4ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6NDBweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgfVxyXG59XHJcbiIsIltkYXRhLWNvbnRhaW5lci1uYW1lPVwiY29sdW1uZWQtY29udGVudFwiXSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICBwYWRkaW5nLXRvcDogODBweDtcclxuICAgIGgyIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiaW5kdXN0cnlcIjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBwYWRkaW5nOiAxOHB4IDAgMTRweDtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGEge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgfVxyXG59XHJcblxyXG4uaXRlbTU4NWFlMmMzN2ZlMjYge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgLy9wYWRkaW5nLWJvdHRvbTo4MHB4O1xyXG4gICAgaDIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1zZWNvbmRhcnk7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICB0b3A6IC0yNXB4O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXItaG9yaXpvbnRhbDtcclxuICAgICAgICAgICAgd2lkdGg6IDQ1cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogNDVweDtcclxuICAgICAgICAgICAgei1pbmRleDogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIHRvcDogLTQwcHg7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXItaG9yaXpvbnRhbDtcclxuICAgICAgICAgICAgd2lkdGg6IDg1cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogODVweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLXNlY29uZGFyeTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuICAgICAgICAgICAgei1pbmRleDogLTFcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuaXRlbTEsXHJcbiAgICAuaXRlbTIsXHJcbiAgICAuaXRlbTMge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xyXG4gICAgfVxyXG4gICAgLml0ZW0xIHtcclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHVybCgnL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDE3LzAzL01WTV9naWZ0XzMweDMwLnBuZycpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLml0ZW0yIHtcclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL2NhbmRlb2NyZWF0aXZlL2ltZy9NVk1fR3JvdXBfVG91cnNfMzB4MzAucG5nJyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuaXRlbTMge1xyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogdXJsKCcvd3AtY29udGVudC90aGVtZXMvY2FuZGVvY3JlYXRpdmUvaW1nL01WTV9Wb2x1bnRlZXJfMzB4MzAucG5nJyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5pdGVtNTg1YjBiZGE1M2U5ZCB7XHJcbiAgICBoMiB7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIHRvcDogLTI4cHg7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlci1ob3Jpem9udGFsO1xyXG4gICAgICAgICAgICB3aWR0aDogNDVweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA0NXB4O1xyXG4gICAgICAgICAgICB6LWluZGV4OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIHdpZHRoOiA3MHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDcwcHg7XHJcbiAgICAgICAgICAgIHRvcDogLTM2cHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1wcmltYXJ5O1xyXG4gICAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNTBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuICAgICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlci1ob3Jpem9udGFsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5pdGVtMSB7XHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9jYW5kZW9jcmVhdGl2ZS9pbWcvTVZNX0dyb3VwX1RvdXJzXzMweDMwLnBuZycpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLml0ZW0yIHtcclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL2NhbmRlb2NyZWF0aXZlL2ltZy9NVk1fV2Fsa190aHJvdWdoXzMweDMwLnBuZycpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLml0ZW0zIHtcclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL2NhbmRlb2NyZWF0aXZlL2ltZy9NVk1fT24tc2l0ZV8zMHgzMC5wbmcnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5pdGVtNCB7XHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9jYW5kZW9jcmVhdGl2ZS9pbWcvTVZNX29mZjBzaXRlXzMweDMwLnBuZycpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLml0ZW0ge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5pdGVtNTg2ZWJhOGM4NmEzNyB7XHJcbiAgICAvL25vdGUgVFlwZXMgb2YgbWVtYmVyc2hpcDogL21lbWJlcnNoaXAtc3VwcG9ydC9cclxuICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAuY29udGFpbmVyLWZsdWlkIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDglO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDglO1xyXG4gICAgfVxyXG4gICAgLml0ZW0ge1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNzBweDtcclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1zZWNvbmRhcnk7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICBzdHJvbmcge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGRpdiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDExcHg7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgcGFkZGluZzogMTVweDtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMTBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDEwcHg7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNDVweDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgdWwge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWxpZ2h0ZXI7XHJcbiAgICAgICAgcGFkZGluZzogMThweCA0MHB4IDA7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDEwcHg7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMTBweDtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIltkYXRhLWNvbnRhaW5lci1uYW1lPVwibWFwLWJ1aWxkZXJcIl0ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjokYnJhbmQtcHJpbWFyeTtcclxuICAgIGNvbG9yOiR3aGl0ZTtcclxuICAgIC5jb3B5IHtcclxuICAgICAgICBwYWRkaW5nLXRvcDo2MHB4O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOjYwcHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAubWFwLWJ1aWxkZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnJyk7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICAgICAgbWluLWhlaWdodDoyNTBweDtcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogLjg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgYSB7XHJcbiAgICAgICAgY29sb3I6JHdoaXRlO1xyXG4gICAgfVxyXG4gICAgc3Ryb25nIHtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgfVxyXG4gICAgcCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTozMHB4O1xyXG4gICAgfVxyXG59XHJcbiIsIi5wYWdlLXRlbXBsYXRlLXRlbXBsYXRlLWV4aGliaXRpb24taXRlbXMge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTp1cmwoJ2h0dHA6Ly9wbGFjZWhvbGQuaXQvMjIwMHg2MDAnKTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xyXG4gICAgICAgIHNlY3Rpb24ge1xyXG4gICAgICAgICAgICAmLmNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTY1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5leGhpYml0aW9uLWl0ZW1zLW1lbnUge1xyXG4gICAgICAgICAgICB6LWluZGV4OiA5OTtcclxuXHJcbiAgICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOjA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MTBweDtcclxuICAgICAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjowO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206OHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6MDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OjIwJTtcclxuICAgICAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYnJhbmQtc2Vjb25kYXJ5O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjokd2hpdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHggNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnaW5kdXN0cnknO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjpkYXJrZW4oJGJyYW5kLXNlY29uZGFyeSwgMTAlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgICAgY29sb3I6JHdoaXRlO1xyXG4gICAgICAgICAgICBoMSB7XHJcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTonaW5kdXN0cnknO1xyXG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgW2RhdGEtY29udGFpbmVyLW5hbWU9XCJleGhpYml0aW9ucy1pdGVtc1wiXSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDoxNTBweDtcclxuICAgICAgICAgICAgOnRhcmdldDpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDpcIlwiO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgICAgIGhlaWdodDoxNzBweDsgLyogZml4ZWQgaGVhZGVyIGhlaWdodCovXHJcbiAgICAgICAgICAgICAgICBtYXJnaW46LTE3MHB4IDAgMDsgLyogbmVnYXRpdmUgZml4ZWQgaGVhZGVyIGhlaWdodCAqL1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5iYWNrZ3JvdW5kaW1hZ2Uge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOi0xNDJweDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6MDtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OjA7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmV4aGliaXRpb24taXRlbSB7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgdG9wO1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206MTUwcHg7XHJcbiAgICAgICAgICAgICAgIC5pdGVtLWhlcm8taW1hZ2Uge1xyXG4gICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAmLml0ZW0xIHtcclxuICAgICAgICAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6LTEwMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6LTE1MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB9XHJcblxyXG5cclxuXHJcbiAgICAgICAgICAgIC5zbGlkZXIge1xyXG4gICAgICAgICAgICAgICAgLnNsaWNrLXNsaWRlIHtcclxuICAgICAgICAgICAgICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuODtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjk1KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICYuc2xpY2stY2VudGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaW1ne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEuMDgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS4wOCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEuMDgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMDgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNlNjdlMjI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA0KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgW3R5cGU9XCJidXR0b25cIl0uc2xpY2stYXJyb3cge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYnJhbmQtc2Vjb25kYXJ5O1xyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjpkYXJrZW4oJGJyYW5kLXNlY29uZGFyeSwgMTAlKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc2xpY2stbmV4dHtcclxuICAgICAgICAgICAgICAgIHJpZ2h0Oi01NXB4O1xyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjEwNVwiO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuc2xpY2stcHJldiB7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAtNTVweDtcclxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjEwNFwiO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5zbGljay1uZXh0LFxyXG4gICAgICAgICAgICAuc2xpY2stcHJldiB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMzVweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNjBweDtcclxuICAgICAgICAgICAgICAgIHRvcDogMzVweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc2xpY2stbmV4dDpiZWZvcmUsXHJcbiAgICAgICAgICAgIC5zbGljay1wcmV2OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6MTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc2xpY2stZG90cyB7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IC01NXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzBweDtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuc2xpY2stZG90cyBsaS5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXNlY29uZGFyeTtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnNsaWNrLWRvdHRlZCB7XHJcbiAgICAgICAgICAgICAgICAmLnNsaWNrLXNsaWRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGFydGljbGUge1xyXG4gICAgICAgICAgICBoMSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRicmFuZC1wcmltYXJ5O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6JHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcImluZHVzdHJ5XCI7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMTBweCA4cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46MCAwIDQwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOjIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTozMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wbGF5dmlkZW8ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICBmb250LXN0eWxlOml0YWxpYztcclxuICAgICAgICAgICAgY29sb3I6JGJyYW5kLXByaW1hcnk7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxNHB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbToyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5wbGF5IHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDoyMCU7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OjA7XHJcbiAgICAgICAgICAgICAgICByaWdodDowO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjYwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmZhLXBsYXkge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6JHdoaXRlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgLmZhLXBsYXkge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiRicmFuZC1zZWNvbmRhcnk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiIsIlxyXG4uaXRlbTU4NTlkMDkwYTQ2Yjkge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYnJhbmQtc2Vjb25kYXJ5O1xyXG4gICAgfVxyXG4gICAgbWFyZ2luLXRvcDotMTEwcHg7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOnVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL2NhbmRlb2NyZWF0aXZlL2ltZy9NVk1fUmVkX3RleHR1cmVfYW5nbGUtbWluLnBuZycpO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgdG9wO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xyXG4gICAgY29sb3I6JHdoaXRlO1xyXG4gICAgcGFkZGluZy1ib3R0b206MTAwcHg7XHJcbiAgICBwYWRkaW5nLXRvcDoxMjBweDtcclxuICAgIHotaW5kZXg6IDk5OTk5OTk5OTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGgzIHtcclxuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOjQ1cHg7XHJcbiAgICAgICAgY29sb3I6JHdoaXRlO1xyXG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcclxuICAgICAgICBmb250LXNpemU6MjJweDtcclxuICAgIH1cclxuICAgIC5jb3B5IHtcclxuICAgICAgICBib3JkZXItbGVmdDoxcHggc29saWQgJHdoaXRlO1xyXG4gICAgICAgIGJvcmRlci1yaWdodDoxcHggc29saWQgJHdoaXRlO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICR3aGl0ZTtcclxuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA4JTtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA4JTtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTozNXB4O1xyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBsZWZ0OjA7XHJcbiAgICAgICAgICAgIHJpZ2h0OjA7XHJcbiAgICAgICAgICAgIHRvcDotOHB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6MTRweDtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6Ym9sZDtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgICAgICAud3JhcHBlciB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYmRybCxcclxuICAgICAgICAgICAgLmJkcnIge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6MXB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OjFweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6MDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYmRybCB7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OjA7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOjhweDtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOjEwMDBweDtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6MXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0Oi0xMDE1cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmJkcnIge1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6MDtcclxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogOHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0xMDE1cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6MTRweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgcDpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6MjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjokYnJhbmQtd2FybmluZztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5udW1iZXIge1xyXG4gICAgICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDI1cHg7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAyNXB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDI1cHg7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGJvdHRvbTotMTVweDtcclxuICAgICAgICB6LWluZGV4OiA5OTtcclxuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgQGluY2x1ZGUgY2VudGVyLWhvcml6b250YWw7XHJcbiAgICAgICAgZGl2IHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDEwcHg7XHJcbiAgICAgICAgICAgIGxlZnQ6IDE0cHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZToyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgICAgICAgLnNwYWNpbmcge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTo0MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gIH1cclxuIiwiW2RhdGEtY29udGFpbmVyLW5hbWU9XCJzdGFmZi12b2x1bnRlZXJzXCJdIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJyYW5kLXByaW1hcnk7XHJcbiAgICB9XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOnVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL2NhbmRlb2NyZWF0aXZlL2ltZy9NVk1fQmFja2dyb3VuZF9ibHVlLW1pbi5qcGcnKTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6JGJyYW5kLXByaW1hcnk7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgcmlnaHQ7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgIC8vYmFja2dyb3VuZC1jb2xvcjokYnJhbmQtcHJpbWFyeTtcclxuICAgIGNvbG9yOiR3aGl0ZTtcclxuICAgIHBhZGRpbmctYm90dG9tOjkwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBoMiB7XHJcbiAgICAgICAgQGluY2x1ZGUgcmVkdGl0bGU7XHJcbiAgICB9XHJcbiAgICAjc2xpZGUge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOjE0MHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206OTBweDtcclxuICAgIH1cclxuICAgICNjYXJvdXNlbC1leGFtcGxlLWdlbmVyaWMyIHtcclxuICAgICAgICAuYmRyIHtcclxuICAgICAgICAgICAgYm9yZGVyOjFweCBzb2xpZCAkd2hpdGU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XHJcbiAgICAgICAgICAgIGNvbG9yOiRicmFuZC1wcmltYXJ5O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDMwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnN1YnRpdGxlIHtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJHdoaXRlO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDMwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206MDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmZsZXgtaXRlbXMteHMtY2VudGVyIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6MjBweDtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206MjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmNvbC1zbS04IHtcclxuICAgICAgICAgICAgcGFkZGluZzowO1xyXG4gICAgICAgICAgICBwOmxhc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOjA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmNvcHkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOjMwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY2Fyb3VzZWwtaW5uZXIge1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmNhcm91c2VsLWluZGljYXRvcnMge1xyXG4gICAgICAgICAgICBib3R0b206IC02MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuY3VzdG9tbmF2IHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6NDUlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcclxuICAgICAgICAgICAgY29sb3I6JGJyYW5kLXNlY29uZGFyeTtcclxuICAgICAgICAgICAgd2lkdGg6MzVweDtcclxuICAgICAgICAgICAgaGVpZ2h0OjUwcHg7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsMCwwLDAuNzUpO1xyXG4gICAgICAgICAgICAtbW96LWJveC1zaGFkb3c6IDBweCAwcHggMTBweCAwcHggcmdiYSgwLDAsMCwwLjc1KTtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsMCwwLDAuNzUpO1xyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDUzXCI7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6MTdweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcclxuICAgICAgICAgICAgICAgIGxlZnQ6MTBweDtcclxuICAgICAgICAgICAgICAgIHRvcDoxNXB4O1xyXG4gICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgJi5sZWZ0IHtcclxuICAgICAgICAgICAgICAgICBsZWZ0OjIlO1xyXG4gICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OjIwJTtcclxuICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwNTNcIjtcclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgJi5yaWdodCB7XHJcbiAgICAgICAgICAgICAgICAgcmlnaHQ6MiU7XHJcbiAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xyXG4gICAgICAgICAgICAgICAgICAgICByaWdodDoyMCU7XHJcbiAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwNTRcIjtcclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIuaXRlbTU4NmZjOGY4N2Q0ODEgeyAvL1doeSBEb25hdGUgUGFnZTogL3Nob3cteW91ci1zdXBwb3J0L1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGNvbG9yOiRicmFuZC1wcmltYXJ5O1xyXG4gICAgcGFkZGluZy1ib3R0b206MTQwcHg7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogJyAnO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOnVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL2NhbmRlb2NyZWF0aXZlL2ltZy9NVk1fRmxhZ19pbWFnZS1taW4uanBnJyk7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSBjZW50ZXI7XHJcbiAgICAgICAgLW1zLWJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICAgICAgLW8tYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgICAgICAtbW96LWJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICAgICAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICAgICAgb3BhY2l0eTogMC4zO1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBoMiB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYnJhbmQtcHJpbWFyeTtcclxuICAgICAgICBjb2xvcjokd2hpdGU7XHJcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBtYXJnaW4tdG9wOjgwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDZweDtcclxuICAgIH1cclxuICAgIC5mbGV4LWl0ZW1zLXhzLXJpZ2h0IHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgei1pbmRleDogOTk5OTk5OTk5OTk7XHJcbiAgICB9XHJcbiAgICB1bCB7XHJcbiAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6MThweDtcclxuICAgICAgICBwYWRkaW5nOjA7XHJcbiAgICB9XHJcbiAgICBsaSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxNXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLml0ZW01ODU5NmM1MzlhNTc2IHsgLy9BZGRyZXNzIG9uIHRoZSBjb250YWN0IHVzIHBhZ2U6IC9jb250YWN0LXVzL1xyXG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTo2MHB4O1xyXG4gICAgaDIge1xyXG4gICAgICAgIEBpbmNsdWRlIHJlZHRpdGxlO1xyXG4gICAgfVxyXG59XHJcblxyXG4uaXRlbTU4NThiYTY4MDAwNzUgeyAvL1R5cGVzIG9mIGRvbmF0aW9ucyBQYWdlOiAvc2hvdy15b3VyLXN1cHBvcnQvXHJcbiAgICBwYWRkaW5nLXRvcDo0MHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206MjhweDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBjb2xvcjokYnJhbmQtcHJpbWFyeTtcclxuICAgIGZvbnQtZmFtaWx5OiBcImluZHVzdHJ5XCI7XHJcblxyXG4gICAgLmJ0bi1kYW5nZXIge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OjIwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMC43cmVtIDFyZW0gMC41cmVtO1xyXG4gICAgfVxyXG59XHJcblxyXG4uaXRlbTU4NWFlNGY4YzYxM2EgeyAvLyBWaXNpdG9yIEluZm9ybWF0aW9uIDogL2Fib3V0LXVzL1xyXG4gICAgcGFkZGluZy10b3A6NjBweDtcclxuICAgIHBhZGRpbmctYm90dG9tOjYwcHg7XHJcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgIGgyICB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYnJhbmQtcHJpbWFyeTtcclxuICAgICAgICBjb2xvcjokd2hpdGU7XHJcbiAgICAgICAgQGluY2x1ZGUgYm94dGl0bGU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5pdGVtNTg2YmZiZDU4YTcyOSB7IC8vIFN0YWZmIGFuZCBWb2x1bnRlZXJzIDogL2Fib3V0LXVzL1xyXG4gICAgcGFkZGluZy10b3A6NjBweDtcclxuICAgIHBhZGRpbmctYm90dG9tOjYwcHg7XHJcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuXHJcbn1cclxuXHJcbi5pdGVtNTg2ZmM3NjNiZDJhMCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOjcwcHg7XHJcbn1cclxuIiwiLml0ZW01ODVjMDdmMDBjZDZhIHsgLy8gUGFnZSBVUkw6IC9tZW1iZXJzaGlwLXN1cHBvcnQvXHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAudHJpYW5nbGUge1xyXG4gICAgICAgIHotaW5kZXg6IDk5OTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgIGJvcmRlci1sZWZ0OiAzMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGJvcmRlci1yaWdodDogMzBweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICBib3JkZXItdG9wOiAzMHB4IHNvbGlkICRibGFjaztcclxuICAgICAgICBAaW5jbHVkZSBjZW50ZXItaG9yaXpvbnRhbDtcclxuICAgIH1cclxuICAgIC5ibHVlIHtcclxuICAgICAgICBjb2xvcjokd2hpdGU7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206MzFweDtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5wYWRkaW5nIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDo4MHB4O1xyXG4gICAgfVxyXG4gICAgLmxlZnQsXHJcbiAgICAucmlnaHQge1xyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcmVkdGl0bGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmxlZnQge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJyYW5kLXByaW1hcnk7XHJcbiAgICAgICAgLnNlbGVjdHRpdGxlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYnJhbmQtc2Vjb25kYXJ5O1xyXG4gICAgICAgICAgICBjb2xvcjokd2hpdGU7XHJcbiAgICAgICAgICAgIHdpZHRoOjI3NXB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOjA7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6NXB4IDQwcHggOHB4O1xyXG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxNXB4O1xyXG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTVweDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyLWhvcml6b250YWw7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5yaWdodCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XHJcbiAgICB9XHJcblxyXG4ub3B0aW9ucyB7XHJcbiAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcclxuICAgIHBhZGRpbmctYm90dG9tOjQ1cHg7XHJcbiAgICAtd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDEwcHg7XHJcbiAgICAtd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxMHB4O1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzLXRvcGxlZnQ6IDEwcHg7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXMtdG9wcmlnaHQ6IDEwcHg7XHJcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxMHB4O1xyXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDEwcHg7XHJcbiAgICBtYXJnaW4tbGVmdDowO1xyXG4gICAgbWFyZ2luLXJpZ2h0OjA7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgIH1cclxuICAgIC5yb3cgICAge1xyXG4gICAgICAgIG1hcmdpbi10b3A6NDVweDtcclxuICAgIH1cclxuICAgIC5udW1iZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6LTVweDtcclxuICAgICAgICBsZWZ0Oi00MHB4O1xyXG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB3aWR0aDozMHB4O1xyXG4gICAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgICBjb2xvcjokd2hpdGU7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGxlZnQ6MDtcclxuICAgICAgICAgICAgY29udGVudDpcIlwiO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRicmFuZC1zZWNvbmRhcnk7XHJcbiAgICAgICAgICAgIHdpZHRoOjMwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiA1MHB4O1xyXG4gICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgICAucHJpY2Uge1xyXG4gICAgICAgIGZvbnQtc2l6ZToyMnB4O1xyXG4gICAgICAgIGNvbG9yOiRicmFuZC1wcmltYXJ5O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206MDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgICAgLmJkciB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgbGVmdDogMjglO1xyXG4gICAgICAgICAgICB0b3A6IDUwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTQwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxcHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyZXktbWQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG59XHJcbiIsIi5ob21lIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6dXJsKCcvd3AtY29udGVudC90aGVtZXMvY2FuZGVvY3JlYXRpdmUvaW1nL01WTV9IT01FX0Nsb3Vkcy1taW4uanBnJyk7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcclxuICAgIC5tYWlubW9uZXkge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiA2NnB4O1xyXG4gICAgfVxyXG4gICAgLmNhcm91c2VsLWNhcHRpb24ge1xyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBib3JkZXI6MXB4IHNvbGlkICRicmFuZC1zZWNvbmRhcnk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xyXG4gICAgICAgICAgICBwYWRkaW5nOjVweCAzJTtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgY29sb3I6JGJyYW5kLXNlY29uZGFyeTtcclxuICAgICAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDRweDtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDo0NXB4O1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIHRvcDowO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgICAgIGhlaWdodDoyOXB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6MzNweDtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OjA7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDoxcHggc29saWQgJGJyYW5kLXNlY29uZGFyeTtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6OHB4O1xyXG4gICAgICAgICAgICAgICAgdG9wOjZweDtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDU0XCI7XHJcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDpub3JtYWw7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAjZmFkZSB7XHJcbiAgICAgICAgLmNhcm91c2VsLWluZGljYXRvcnMgIHtcclxuICAgICAgICAgICAgYm90dG9tOjA7XHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRicmFuZC1wcmltYXJ5O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOjFweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jdXN0b21uYXYge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6NTUlO1xyXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XHJcbiAgICAgICAgY29sb3I6JGJyYW5kLXNlY29uZGFyeTtcclxuICAgICAgICB3aWR0aDozNXB4O1xyXG4gICAgICAgIGhlaWdodDo0NnB4O1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsMCwwLDAuNzUpO1xyXG4gICAgICAgIC1tb3otYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsMCwwLDAuNzUpO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggMnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuNDYpO1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDUzXCI7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcclxuICAgICAgICAgICAgbGVmdDoxMHB4O1xyXG4gICAgICAgICAgICB0b3A6MTVweDtcclxuICAgICAgICAgfVxyXG4gICAgICAgICAmLmxlZnQge1xyXG4gICAgICAgICAgICAgbGVmdDoyJTtcclxuICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcclxuICAgICAgICAgICAgICAgIGxlZnQ6MjAlO1xyXG4gICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjA1M1wiO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgfVxyXG4gICAgICAgICAmLnJpZ2h0IHtcclxuICAgICAgICAgICAgIHJpZ2h0OjIlO1xyXG4gICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xyXG4gICAgICAgICAgICAgICAgIHJpZ2h0OjIwJTtcclxuICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjA1NFwiO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdLCJtYXBwaW5ncyI6IkFDQUE7Ozs7O0dBS0c7QWtDTEgsNEVBQTRFO0FBUTVFLEFBQUEsSUFBSSxDQUFDO0VBQ0gsV0FBVyxFQUFFLFVBQVc7RUFDeEIsV0FBVyxFQUFFLElBQUs7RUFDbEIsb0JBQW9CLEVBQUUsSUFBSztFQUMzQix3QkFBd0IsRUFBRSxJQUFLO0NBQ2hDOztBQU1ELEFBQUEsSUFBSSxDQUFDO0VBQ0gsTUFBTSxFQUFFLENBQUU7Q0FDWDs7QUFXRCxBQUFBLE9BQU87QUFDUCxBQUFBLEtBQUs7QUFDTCxBQUFBLE9BQU87QUFDUCxBQUFBLFVBQVU7QUFDVixBQUFBLE1BQU07QUFDTixBQUFBLE1BQU07QUFDTixBQUFBLE1BQU07QUFDTixBQUFBLElBQUk7QUFDSixBQUFBLElBQUk7QUFDSixBQUFBLEdBQUc7QUFDSCxBQUFBLE9BQU87QUFDUCxBQUFBLE9BQU8sQ0FBQztFQUNOLE9BQU8sRUFBRSxLQUFNO0NBQ2hCOztBQU1ELEFBQUEsS0FBSztBQUNMLEFBQUEsTUFBTTtBQUNOLEFBQUEsUUFBUTtBQUNSLEFBQUEsS0FBSyxDQUFDO0VBQ0osT0FBTyxFQUFFLFlBQWE7Q0FDdkI7O0FBTUQsQUFBb0IsS0FBZixBQUFBLElBQUssRUFBQSxBQUFBLEFBQVMsUUFBUixBQUFBLEdBQVc7RUFDcEIsT0FBTyxFQUFFLElBQUs7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QXRCSixTQXNCYSxFQUFULEFBdEJKLFNBc0JhLEVBQVQsQUF0QkosU0FzQmEsRUFBVCxBQXRCSixTQXNCYSxFQUFULEFBdEJKLFNBc0JhLEVBQVQsQUF0QkosU0FzQmEsRUFBVCxBQXRCSixVQXNCYyxFQUFWLEFBdEJKLFVBc0JjLEVBQVYsQUF0QkosVUFzQmMsRUFMWixBQWpCRixPQWlCUyxFQUtMLEFBdEJKLFNBc0JhLEVBQVQsQUF0QkosU0FzQmEsRUFBVCxBQXRCSixTQXNCYSxFQUFULEFBdEJKLFNBc0JhLEVBQVQsQUF0QkosU0FzQmEsRUFBVCxBQXRCSixTQXNCYSxFQUFULEFBdEJKLFNBc0JhLEVBQVQsQUF0QkosU0FzQmEsRUFBVCxBQXRCSixTQXNCYSxFQUFULEFBdEJKLFVBc0JjLEVBQVYsQUF0QkosVUFzQmMsRUFBVixBQXRCSixVQXNCYyxFQUxaLEFBakJGLE9BaUJTLEVBS0wsQUF0QkosU0FzQmEsRUFBVCxBQXRCSixTQXNCYSxFQUFULEFBdEJKLFNBc0JhLEVBQVQsQUF0QkosU0FzQmEsRUFBVCxBQXRCSixTQXNCYSxFQUFULEFBdEJKLFNBc0JhLEVBQVQsQUF0QkosU0FzQmEsRUFBVCxBQXRCSixTQXNCYSxFQUFULEFBdEJKLFNBc0JhLEVBQVQsQUF0QkosVUFzQmMsRUFBVixBQXRCSixVQXNCYyxFQUFWLEFBdEJKLFVBc0JjLEVBTFosQUFqQkYsT0FpQlMsRUFLTCxBQXRCSixTQXNCYSxFQUFULEFBdEJKLFNBc0JhLEVBQVQsQUF0QkosU0FzQmEsRUFBVCxBQXRCSixTQXNCYSxFQUFULEFBdEJKLFNBc0JhLEVBQVQsQUF0QkosU0FzQmEsRUFBVCxBQXRCSixTQXNCYSxFQUFULEFBdEJKLFNBc0JhLEVBQVQsQUF0QkosU0FzQmEsRUFBVCxBQXRCSixVQXNCYyxFQUFWLEFBdEJKLFVBc0JjLEVBQVYsQUF0QkosVUFzQmMsRUFMWixBQWpCRixPQWlCUyxFQUtMLEFBdEJKLFNBc0JhLEVBQVQsQUF0QkosU0FzQmEsRUFBVCxBQXRCSixTQXNCYSxFQUFULEFBdEJKLFNBc0JhLEVBQVQs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QUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFVO0VBSXBCLFNBQVMsRUFBRSxRQUFVO0NEL0JoQjs7QUFGRCxBQUFBLFNBQVMsQ0FBVDtFQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0VBSXBCLFNBQVMsRUFBRSxTQUFVO0NEL0JoQjs7QUFGRCxBQUFBLFNBQVMsQ0FBVDtFQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFVO0VBSXBCLFNBQVMsRUFBRSxHQUFVO0NEL0JoQjs7QUFGRCxBQUFBLFNBQVMsQ0FBVDtFQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0VBSXBCLFNBQVMsRUFBRSxTQUFVO0NEL0JoQjs7QUFGRCxBQUFBLFNBQVMsQ0FBVDtFQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0VBSXBCLFNBQVMsRUFBRSxTQUFVO0NEL0JoQjs7QUFGRCxBQUFBLFNBQVMsQ0FBVDtFQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFVO0VBSXBCLFNBQVMsRUFBRSxHQUFVO0NEL0JoQjs7QUFGRCxBQUFBLFNBQVMsQ0FBVDtFQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0VBSXBCLFNBQVMsRUFBRSxTQUFVO0NEL0JoQjs7QUFGRCxBQUFBLFNBQVMsQ0FBVDtFQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0VBSXBCLFNBQVMsRUFBRSxTQUFVO0NEL0JoQjs7QUFGRCxBQUFBLFNBQVMsQ0FBVDtFQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFVO0VBSXBCLFNBQVMsRUFBRSxHQUFVO0NEL0JoQjs7QUFGRCxBQUFBLFVBQVUsQ0FBVjtFQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0VBSXBCLFNBQVMsRUFBRSxTQUFVO0NEL0JoQjs7QUFGRCxBQUFBLFVBQVUsQ0FBVjtFQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0VBSXBCLFNBQVMsRUFBRSxTQUFVO0NEL0JoQjs7QUFGRCxBQUFBLFVBQVUsQ0FBVjtFQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFVO0VBSXBCLFNBQVMsRUFBRSxJQUFVO0NEL0JoQjs7QUFLQyxBQUFBLFVBQVUsQ0FBVjtFQzBDUixLQUFLLEVBQThDLElBQUk7Q0R4QzlDOztBQUZELEFBQUEsVUFBVSxDQUFWO0VDMENSLEtBQUssRUFBZ0IsUUFBVTtDRHhDdEI7O0FBRkQsQUFBQSxVQUFVLENBQVY7RUMwQ1IsS0FBSyxFQUFnQixTQUFVO0NEeEN0Qjs7QUFGRCxBQUFBLFVBQVUsQ0FBVjtFQzBDUixLQUFLLEVBQWdCLEdBQVU7Q0R4Q3RCOztBQUZELEFBQUEsVUFBVSxDQUFWO0VDMENSLEtBQUssRUFBZ0IsU0FBVTtDRHhDdEI7O0FBRkQsQUFBQSxVQUFVLENBQVY7RUMwQ1IsS0FBSyxFQUFnQixTQUFVO0NEeEN0Qjs7QUFGRCxBQUFBLFVBQVUsQ0FBVjtFQzBDUixLQUFLLEVBQWdCLEdBQVU7Q0R4Q3RCOztBQUZELEFBQUEsVUFBVSxDQUFWO0VDMENSLEtBQUssRUFBZ0IsU0FBVTtDRHhDdEI7O0FBRkQsQUFBQSxVQUFVLENBQVY7RUMwQ1IsS0FBSyxFQUFnQixTQUFVO0NEeEN0Qjs7QUFGRCxBQUFBLFVBQVUsQ0FBVjtFQzBDUixLQUFLLEVBQWdCLEdBQVU7Q0R4Q3RCOztBQUZELEFBQUEsV0FBVyxDQUFYO0VDMENSLEtBQUssRUFBZ0IsU0FBVTtDRHhDdEI7O0FBRkQsQUFBQSxXQUFXLENBQVg7RUMwQ1IsS0FBSyxFQUFnQixTQUFVO0NEeEN0Qjs7QUFGRCxBQUFBLFdBQVcsQ0FBWDtFQzBDUixLQUFLLEVBQWdCLElBQVU7Q0R4Q3RCOztBQUZELEFBQUEsVUFBVSxDQUFWO0VDc0NSLElBQUksRUFBOEMsSUFBSTtDRHBDN0M7O0FBRkQsQUFBQSxVQUFVLENBQVY7RUNzQ1IsSUFBSSxFQUFnQixRQUFVO0NEcENyQjs7QUFGRCxBQUFBLFVBQVUsQ0FBVjtFQ3NDUixJQUFJLEVBQWdCLFNBQVU7Q0RwQ3JCOztBQUZELEFBQUEsVUFBVSxDQUFWO0VDc0NSLElBQUksRUFBZ0IsR0FBVTtDRHBDckI7O0FBRkQsQUFBQSxVQUFVLENBQVY7RUNzQ1IsSUFBSSxFQUFnQixTQUFVO0NEcENyQjs7QUFGRCxBQUFBLFVBQVUsQ0FBVjtFQ3NDUixJQUFJLEVBQWdCLFNBQVU7Q0RwQ3JCOztBQUZELEFBQUEsVUFBVSxDQUFWO0VDc0NSLElBQUksRUFBZ0IsR0FBVTtDRHBDckI7O0FBRkQsQUFBQSxVQUFVLENBQVY7RUNzQ1IsSUFBSSxFQUFnQixTQUFVO0NEcENyQjs7QUFGRCxBQUFBLFVBQVUsQ0FBVjtFQ3NDUixJQUFJLEVBQWdCLFNBQVU7Q0RwQ3JCOztBQUZELEFBQUEsVUFBVSxDQUFWO0VDc0NSLElBQUksRUFBZ0IsR0FBVTtDRHBDckI7O0FBRkQsQUFBQSxXQUFXLENBQVg7RUNzQ1IsSUFBSSxFQUFnQixTQUFVO0NEcENyQjs7QUFGRCxBQUFBLFdBQVcsQ0FBWDtFQ3NDUixJQUFJLEVBQWdCLFNBQVU7Q0RwQ3JCOztBQUZELEFBQUEsV0FBVyxDQUFYO0VDc0NSLElBQUksRUFBZ0IsSUFBVTtDRHBDckI7O0FBT0QsQUFBQSxZQUFZLENBQVo7RUN5QlIsV0FBVyxFQUFFLFFBQVU7Q0R2QmQ7O0FBRkQsQUFBQSxZQUFZLENBQVo7RUN5QlIsV0FBVyxFQUFFLFNBQVU7Q0R2QmQ7O0FBRkQsQUFBQSxZQUFZLENBQVo7RUN5QlIsV0FBVyxFQUFFLEdBQVU7Q0R2QmQ7O0FBRkQsQUFBQSxZQUFZLENBQVo7RUN5QlIsV0FBVyxFQUFFLFNBQVU7Q0R2QmQ7O0FBRkQsQUFBQSxZQUFZLENBQVo7RUN5QlIsV0FBVyxFQUFFLFNBQVU7Q0R2QmQ7O0FBRkQsQUFBQSxZQUFZLENBQVo7RUN5QlIsV0FBVyxFQUFFLEdBQVU7Q0R2QmQ7O0FBRkQsQUFBQSxZQUFZLENBQVo7RUN5QlIsV0FBVyxFQUFFLFNBQVU7Q0R2QmQ7O0FBRkQsQUFBQSxZQUFZLENBQVo7RUN5QlIsV0FBVyxFQUFFLFNBQVU7Q0R2QmQ7O0FBRkQsQUFBQSxZQUFZLENBQVo7RUN5QlIsV0FBVyxFQUFFLEdBQVU7Q0R2QmQ7O0FBRkQsQUFBQSxhQUFhLENBQWI7RUN5QlIsV0FBVyxFQUFFLFNBQVU7Q0R2QmQ7O0FBRkQsQUFBQSxhQUFhLENBQWI7RUN5QlIsV0FBVyxFQUFFLFNBQVU7Q0R2QmQ7O0EzQmxCUCxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RTJCUmIsQUFBQSxPQUFPLENBQVA7SUFDRSxVQUFVLEVBQUUsQ0FBRTtJQUNkLFNBQVMsRUFBRSxDQUFFO0lBQ2IsU0FBUyxFQUFFLElBQUs7R0FDakI7RUFJRCxBQUFBLFNBQVMsQ0FBVDtJQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFVO0lBSXBCLFNBQVMsRUFBRSxRQUFVO0dEL0JoQjtFQUZELEFBQUEsU0FBUyxDQUFUO0lDNkJKLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVU7R0QvQmhCO0VBRkQsQUFBQSxTQUFTLENBQVQ7SUM2QkosSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBVTtJQUlwQixTQUFTLEVBQUUsR0FBVTtHRC9CaEI7RUFGRCxBQUFBLFNBQVMsQ0FBVDtJQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0lBSXBCLFNBQVMsRUFBRSxTQUFVO0dEL0JoQjtFQUZELEFBQUEsU0FBUyxDQUFUO0lDNkJKLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVU7R0QvQmhCO0VBRkQsQUFBQSxTQUFTLENBQVQ7SUM2QkosSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBVTtJQUlwQixTQUFTLEVBQUUsR0FBVTtHRC9CaEI7RUFGRCxBQUFBLFNBQVMsQ0FBVDtJQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0lBSXBCLFNBQVMsRUFBRSxTQUFVO0dEL0JoQjtFQUZELEFBQUEsU0FBUyxDQUFUO0lDNkJKLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVU7R0QvQmhCO0VBRkQsQUFBQSxTQUFTLENBQVQ7SUM2QkosSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBVTtJQUlwQixTQUFTLEVBQUUsR0FBVTtHRC9CaEI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0lBSXBCLFNBQVMsRUFBRSxTQUFVO0dEL0JoQjtFQUZELEFBQUEsVUFBVSxDQUFWO0lDNkJKLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVU7R0QvQmhCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUM2QkosSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBVTtJQUlwQixTQUFTLEVBQUUsSUFBVTtHRC9CaEI7RUFLQyxBQUFBLFVBQVUsQ0FBVjtJQzBDUixLQUFLLEVBQThDLElBQUk7R0R4QzlDO0VBRkQsQUFBQSxVQUFVLENBQVY7SUMwQ1IsS0FBSyxFQUFnQixRQUFVO0dEeEN0QjtFQUZELEFBQUEsVUFBVSxDQUFWO0lDMENSLEtBQUssRUFBZ0IsU0FBVTtHRHhDdEI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQzBDUixLQUFLLEVBQWdCLEdBQVU7R0R4Q3RCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUMwQ1IsS0FBSyxFQUFnQixTQUFVO0dEeEN0QjtFQUZELEFBQUEsVUFBVSxDQUFWO0lDMENSLEtBQUssRUFBZ0IsU0FBVTtHRHhDdEI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQzBDUixLQUFLLEVBQWdCLEdBQVU7R0R4Q3RCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUMwQ1IsS0FBSyxFQUFnQixTQUFVO0dEeEN0QjtFQUZELEFBQUEsVUFBVSxDQUFWO0lDMENSLEtBQUssRUFBZ0IsU0FBVTtHRHhDdEI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQzBDUixLQUFLLEVBQWdCLEdBQVU7R0R4Q3RCO0VBRkQsQUFBQSxXQUFXLENBQVg7SUMwQ1IsS0FBSyxFQUFnQixTQUFVO0dEeEN0QjtFQUZELEFBQUEsV0FBVyxDQUFYO0lDMENSLEtBQUssRUFBZ0IsU0FBVTtHRHhDdEI7RUFGRCxBQUFBLFdBQVcsQ0FBWDtJQzBDUixLQUFLLEVBQWdCLElBQVU7R0R4Q3RCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUNzQ1IsSUFBSSxFQUE4QyxJQUFJO0dEcEM3QztFQUZELEFBQUEsVUFBVSxDQUFWO0lDc0NSLElBQUksRUFBZ0IsUUFBVTtHRHBDckI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQ3NDUixJQUFJLEVBQWdCLFNBQVU7R0RwQ3JCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUNzQ1IsSUFBSSxFQUFnQixHQUFVO0dEcENyQjtFQUZELEFBQUEsVUFBVSxDQUFWO0lDc0NSLElBQUksRUFBZ0IsU0FBVTtHRHBDckI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQ3NDUixJQUFJLEVBQWdCLFNBQVU7R0RwQ3JCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUNzQ1IsSUFBSSxFQUFnQixHQUFVO0dEcENyQjtFQUZELEFBQUEsVUFBVSxDQUFWO0lDc0NSLElBQUksRUFBZ0IsU0FBVTtHRHBDckI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQ3NDUixJQUFJLEVBQWdCLFNBQVU7R0RwQ3JCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUNzQ1IsSUFBSSxFQUFnQixHQUFVO0dEcENyQjtFQUZELEFBQUEsV0FBVyxDQUFYO0lDc0NSLElBQUksRUFBZ0IsU0FBVTtHRHBDckI7RUFGRCxBQUFBLFdBQVcsQ0FBWDtJQ3NDUixJQUFJLEVBQWdCLFNBQVU7R0RwQ3JCO0VBRkQsQUFBQSxXQUFXLENBQVg7SUNzQ1IsSUFBSSxFQUFnQixJQUFVO0dEcENyQjtFQU9ELEFBQUEsWUFBWSxDQUFaO0lDeUJSLFdBQVcsRUFBRSxFQUFVO0dEdkJkO0VBRkQsQUFBQSxZQUFZLENBQVo7SUN5QlIsV0FBVyxFQUFFLFFBQVU7R0R2QmQ7RUFGRCxBQUFBLFlBQVksQ0FBWjtJQ3lCUixXQUFXLEVBQUUsU0FBVTtHRHZCZDtFQUZELEFBQUEsWUFBWSxDQUFaO0lDeUJSLFdBQVcsRUFBRSxHQUFVO0dEdkJkO0VBRkQsQUFBQSxZQUFZLENBQVo7SUN5QlIsV0FBVyxFQUFFLFNBQVU7R0R2QmQ7RUFGRCxBQUFBLFlBQVksQ0FBWjtJQ3lCUixXQUFXLEVBQUUsU0FBVTtHRHZCZDtFQUZELEFBQUEsWUFBWSxDQUFaO0lDeUJSLFdBQVcsRUFBRSxHQUFVO0dEdkJkO0VBRkQsQUFBQSxZQUFZLENBQVo7SUN5QlIsV0FBVyxFQUFFLFNBQVU7R0R2QmQ7RUFGRCxBQUFBLFlBQVksQ0FBWjtJQ3lCUixXQUFXLEVBQUUsU0FBVTtHRHZCZDtFQUZELEFBQUEsWUFBWSxDQUFaO0lDeUJSLFdBQVcsRUFBRSxHQUFVO0dEdkJkO0VBRkQsQUFBQSxhQUFhLENBQWI7SUN5QlIsV0FBVyxFQUFFLFNBQVU7R0R2QmQ7RUFGRCxBQUFBLGFBQWEsQ0FBYjtJQ3lCUixXQUFXLEVBQUUsU0FBVTtHRHZCZDs7O0EzQmxCUCxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RTJCUmIsQUFBQSxPQUFPLENBQVA7SUFDRSxVQUFVLEVBQUUsQ0FBRTtJQUNkLFNBQVMsRUFBRSxDQUFFO0lBQ2IsU0FBUyxFQUFFLElBQUs7R0FDakI7RUFJRCxBQUFBLFNBQVMsQ0FBVDtJQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFVO0lBSXBCLFNBQVMsRUFBRSxRQUFVO0dEL0JoQjtFQUZELEFBQUEsU0FBUyxDQUFUO0lDNkJKLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVU7R0QvQmhCO0VBRkQsQUFBQSxTQUFTLENBQVQ7SUM2QkosSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBVTtJQUlwQixTQUFTLEVBQUUsR0FBVTtHRC9CaEI7RUFGRCxBQUFBLFNBQVMsQ0FBVDtJQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0lBSXBCLFNBQVMsRUFBRSxTQUFVO0dEL0JoQjtFQUZELEFBQUEsU0FBUyxDQUFUO0lDNkJKLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVU7R0QvQmhCO0VBRkQsQUFBQSxTQUFTLENBQVQ7SUM2QkosSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBVTtJQUlwQixTQUFTLEVBQUUsR0FBVTtHRC9CaEI7RUFGRCxBQUFBLFNBQVMsQ0FBVDtJQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0lBSXBCLFNBQVMsRUFBRSxTQUFVO0dEL0JoQjtFQUZELEFBQUEsU0FBUyxDQUFUO0lDNkJKLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVU7R0QvQmhCO0VBRkQsQUFBQSxTQUFTLENBQVQ7SUM2QkosSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBVTtJQUlwQixTQUFTLEVBQUUsR0FBVTtHRC9CaEI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0lBSXBCLFNBQVMsRUFBRSxTQUFVO0dEL0JoQjtFQUZELEFBQUEsVUFBVSxDQUFWO0lDNkJKLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVU7R0QvQmhCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUM2QkosSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBVTtJQUlwQixTQUFTLEVBQUUsSUFBVTtHRC9CaEI7RUFLQyxBQUFBLFVBQVUsQ0FBVjtJQzBDUixLQUFLLEVBQThDLElBQUk7R0R4QzlDO0VBRkQsQUFBQSxVQUFVLENBQVY7SUMwQ1IsS0FBSyxFQUFnQixRQUFVO0dEeEN0QjtFQUZELEFBQUEsVUFBVSxDQUFWO0lDMENSLEtBQUssRUFBZ0IsU0FBVTtHRHhDdEI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQzBDUixLQUFLLEVBQWdCLEdBQVU7R0R4Q3RCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUMwQ1IsS0FBSyxFQUFnQixTQUFVO0dEeEN0QjtFQUZELEFBQUEsVUFBVSxDQUFWO0lDMENSLEtBQUssRUFBZ0IsU0FBVTtHRHhDdEI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQzBDUixLQUFLLEVBQWdCLEdBQVU7R0R4Q3RCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUMwQ1IsS0FBSyxFQUFnQixTQUFVO0dEeEN0QjtFQUZELEFBQUEsVUFBVSxDQUFWO0lDMENSLEtBQUssRUFBZ0IsU0FBVTtHRHhDdEI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQzBDUixLQUFLLEVBQWdCLEdBQVU7R0R4Q3RCO0VBRkQsQUFBQSxXQUFXLENBQVg7SUMwQ1IsS0FBSyxFQUFnQixTQUFVO0dEeEN0QjtFQUZELEFBQUEsV0FBVyxDQUFYO0lDMENSLEtBQUssRUFBZ0IsU0FBVTtHRHhDdEI7RUFGRCxBQUFBLFdBQVcsQ0FBWDtJQzBDUixLQUFLLEVBQWdCLElBQVU7R0R4Q3RCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUNzQ1IsSUFBSSxFQUE4QyxJQUFJO0dEcEM3QztFQUZELEFBQUEsVUFBVSxDQUFWO0lDc0NSLElBQUksRUFBZ0IsUUFBVTtHRHBDckI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQ3NDUixJQUFJLEVBQWdCLFNBQVU7R0RwQ3JCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUNzQ1IsSUFBSSxFQUFnQixHQUFVO0dEcENyQjtFQUZELEFBQUEsVUFBVSxDQUFWO0lDc0NSLElBQUksRUFBZ0IsU0FBVTtHRHBDckI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQ3NDUixJQUFJLEVBQWdCLFNBQVU7R0RwQ3JCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUNzQ1IsSUFBSSxFQUFnQixHQUFVO0dEcENyQjtFQUZELEFBQUEsVUFBVSxDQUFWO0lDc0NSLElBQUksRUFBZ0IsU0FBVTtHRHBDckI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQ3NDUixJQUFJLEVBQWdCLFNBQVU7R0RwQ3JCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUNzQ1IsSUFBSSxFQUFnQixHQUFVO0dEcENyQjtFQUZELEFBQUEsV0FBVyxDQUFYO0lDc0NSLElBQUksRUFBZ0IsU0FBVTtHRHBDckI7RUFGRCxBQUFBLFdBQVcsQ0FBWDtJQ3NDUixJQUFJLEVBQWdCLFNBQVU7R0RwQ3JCO0VBRkQsQUFBQSxXQUFXLENBQVg7SUNzQ1IsSUFBSSxFQUFnQixJQUFVO0dEcENyQjtFQU9ELEFBQUEsWUFBWSxDQUFaO0lDeUJSLFdBQVcsRUFBRSxFQUFVO0dEdkJkO0VBRkQsQUFBQSxZQUFZLENBQVo7SUN5QlIsV0FBVyxFQUFFLFFBQVU7R0R2QmQ7RUFGRCxBQUFBLFlBQVksQ0FBWjtJQ3lCUixXQUFXLEVBQUUsU0FBVTtHRHZCZDtFQUZELEFBQUEsWUFBWSxDQUFaO0lDeUJSLFdBQVcsRUFBRSxHQUFVO0dEdkJkO0VBRkQsQUFBQSxZQUFZLENBQVo7SUN5QlIsV0FBVyxFQUFFLFNBQVU7R0R2QmQ7RUFGRCxBQUFBLFlBQVksQ0FBWjtJQ3lCUixXQUFXLEVBQUUsU0FBVTtHRHZCZDtFQUZELEFBQUEsWUFBWSxDQUFaO0lDeUJSLFdBQVcsRUFBRSxHQUFVO0dEdkJkO0VBRkQsQUFBQSxZQUFZLENBQVo7SUN5QlIsV0FBVyxFQUFFLFNBQVU7R0R2QmQ7RUFGRCxBQUFBLFlBQVksQ0FBWjtJQ3lCUixXQUFXLEVBQUUsU0FBVTtHRHZCZDtFQUZELEFBQUEsWUFBWSxDQUFaO0lDeUJSLFdBQVcsRUFBRSxHQUFVO0dEdkJkO0VBRkQsQUFBQSxhQUFhLENBQWI7SUN5QlIsV0FBVyxFQUFFLFNBQVU7R0R2QmQ7RUFGRCxBQUFBLGFBQWEsQ0FBYjtJQ3lCUixXQUFXLEVBQUUsU0FBVTtHRHZCZDs7O0EzQmxCUCxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RTJCUmIsQUFBQSxPQUFPLENBQVA7SUFDRSxVQUFVLEVBQUUsQ0FBRTtJQUNkLFNBQVMsRUFBRSxDQUFFO0lBQ2IsU0FBUyxFQUFFLElBQUs7R0FDakI7RUFJRCxBQUFBLFNBQVMsQ0FBVDtJQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFVO0lBSXBCLFNBQVMsRUFBRSxRQUFVO0dEL0JoQjtFQUZELEFBQUEsU0FBUyxDQUFUO0lDNkJKLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVU7R0QvQmhCO0VBRkQsQUFBQSxTQUFTLENBQVQ7SUM2QkosSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBVTtJQUlwQixTQUFTLEVBQUUsR0FBVTtHRC9CaEI7RUFGRCxBQUFBLFNBQVMsQ0FBVDtJQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0lBSXBCLFNBQVMsRUFBRSxTQUFVO0dEL0JoQjtFQUZELEFBQUEsU0FBUyxDQUFUO0lDNkJKLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVU7R0QvQmhCO0VBRkQsQUFBQSxTQUFTLENBQVQ7SUM2QkosSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBVTtJQUlwQixTQUFTLEVBQUUsR0FBVTtHRC9CaEI7RUFGRCxBQUFBLFNBQVMsQ0FBVDtJQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0lBSXBCLFNBQVMsRUFBRSxTQUFVO0dEL0JoQjtFQUZELEFBQUEsU0FBUyxDQUFUO0lDNkJKLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVU7R0QvQmhCO0VBRkQsQUFBQSxTQUFTLENBQVQ7SUM2QkosSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBVTtJQUlwQixTQUFTLEVBQUUsR0FBVTtHRC9CaEI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0lBSXBCLFNBQVMsRUFBRSxTQUFVO0dEL0JoQjtFQUZELEFBQUEsVUFBVSxDQUFWO0lDNkJKLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVU7R0QvQmhCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUM2QkosSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBVTtJQUlwQixTQUFTLEVBQUUsSUFBVTtHRC9CaEI7RUFLQyxBQUFBLFVBQVUsQ0FBVjtJQzBDUixLQUFLLEVBQThDLElBQUk7R0R4QzlDO0VBRkQsQUFBQSxVQUFVLENBQVY7SUMwQ1IsS0FBSyxFQUFnQixRQUFVO0dEeEN0QjtFQUZELEFBQUEsVUFBVSxDQUFWO0lDMENSLEtBQUssRUFBZ0IsU0FBVTtHRHhDdEI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQzBDUixLQUFLLEVBQWdCLEdBQVU7R0R4Q3RCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUMwQ1IsS0FBSyxFQUFnQixTQUFVO0dEeEN0QjtFQUZELEFBQUEsVUFBVSxDQUFWO0lDMENSLEtBQUssRUFBZ0IsU0FBVTtHRHhDdEI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQzBDUixLQUFLLEVBQWdCLEdBQVU7R0R4Q3RCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUMwQ1IsS0FBSyxFQUFnQixTQUFVO0dEeEN0QjtFQUZELEFBQUEsVUFBVSxDQUFWO0lDMENSLEtBQUssRUFBZ0IsU0FBVTtHRHhDdEI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQzBDUixLQUFLLEVBQWdCLEdBQVU7R0R4Q3RCO0VBRkQsQUFBQSxXQUFXLENBQVg7SUMwQ1IsS0FBSyxFQUFnQixTQUFVO0dEeEN0QjtFQUZELEFBQUEsV0FBVyxDQUFYO0lDMENSLEtBQUssRUFBZ0IsU0FBVTtHRHhDdEI7RUFGRCxBQUFBLFdBQVcsQ0FBWDtJQzBDUixLQUFLLEVBQWdCLElBQVU7R0R4Q3RCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUNzQ1IsSUFBSSxFQUE4QyxJQUFJO0dEcEM3QztFQUZELEFBQUEsVUFBVSxDQUFWO0lDc0NSLElBQUksRUFBZ0IsUUFBVTtHRHBDckI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQ3NDUixJQUFJLEVBQWdCLFNBQVU7R0RwQ3JCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUNzQ1IsSUFBSSxFQUFnQixHQUFVO0dEcENyQjtFQUZELEFBQUEsVUFBVSxDQUFWO0lDc0NSLElBQUksRUFBZ0IsU0FBVTtHRHBDckI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQ3NDUixJQUFJLEVBQWdCLFNBQVU7R0RwQ3JCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUNzQ1IsSUFBSSxFQUFnQixHQUFVO0dEcENyQjtFQUZELEFBQUEsVUFBVSxDQUFWO0lDc0NSLElBQUksRUFBZ0IsU0FBVTtHRHBDckI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQ3NDUixJQUFJLEVBQWdCLFNBQVU7R0RwQ3JCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUNzQ1IsSUFBSSxFQUFnQixHQUFVO0dEcENyQjtFQUZELEFBQUEsV0FBVyxDQUFYO0lDc0NSLElBQUksRUFBZ0IsU0FBVTtHRHBDckI7RUFGRCxBQUFBLFdBQVcsQ0FBWDtJQ3NDUixJQUFJLEVBQWdCLFNBQVU7R0RwQ3JCO0VBRkQsQUFBQSxXQUFXLENBQVg7SUNzQ1IsSUFBSSxFQUFnQixJQUFVO0dEcENyQjtFQU9ELEFBQUEsWUFBWSxDQUFaO0lDeUJSLFdBQVcsRUFBRSxFQUFVO0dEdkJkO0VBRkQsQUFBQSxZQUFZLENBQVo7SUN5QlIsV0FBVyxFQUFFLFFBQVU7R0R2QmQ7RUFGRCxBQUFBLFlBQVksQ0FBWjtJQ3lCUixXQUFXLEVBQUUsU0FBVTtHRHZCZDtFQUZELEFBQUEsWUFBWSxDQUFaO0lDeUJSLFdBQVcsRUFBRSxHQUFVO0dEdkJkO0VBRkQsQUFBQSxZQUFZLENBQVo7SUN5QlIsV0FBVyxFQUFFLFNBQVU7R0R2QmQ7RUFGRCxBQUFBLFlBQVksQ0FBWjtJQ3lCUixXQUFXLEVBQUUsU0FBVTtHRHZCZDtFQUZELEFBQUEsWUFBWSxDQUFaO0lDeUJSLFdBQVcsRUFBRSxHQUFVO0dEdkJkO0VBRkQsQUFBQSxZQUFZLENBQVo7SUN5QlIsV0FBVyxFQUFFLFNBQVU7R0R2QmQ7RUFGRCxBQUFBLFlBQVksQ0FBWjtJQ3lCUixXQUFXLEVBQUUsU0FBVTtHRHZCZDtFQUZELEFBQUEsWUFBWSxDQUFaO0lDeUJSLFdBQVcsRUFBRSxHQUFVO0dEdkJkO0VBRkQsQUFBQSxhQUFhLENBQWI7SUN5QlIsV0FBVyxFQUFFLFNBQVU7R0R2QmQ7RUFGRCxBQUFBLGFBQWEsQ0FBYjtJQ3lCUixXQUFXLEVBQUUsU0FBVTtHRHZCZDs7O0EzQmxCUCxNQUFNLEVBQUwsU0FBUyxFQUFFLE1BQU07RTJCUmQsQUFBQSxPQUFPLENBQVA7SUFDRSxVQUFVLEVBQUUsQ0FBRTtJQUNkLFNBQVMsRUFBRSxDQUFFO0lBQ2IsU0FBUyxFQUFFLElBQUs7R0FDakI7RUFJRCxBQUFBLFNBQVMsQ0FBVDtJQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFVO0lBSXBCLFNBQVMsRUFBRSxRQUFVO0dEL0JoQjtFQUZELEFBQUEsU0FBUyxDQUFUO0lDNkJKLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVU7R0QvQmhCO0VBRkQsQUFBQSxTQUFTLENBQVQ7SUM2QkosSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBVTtJQUlwQixTQUFTLEVBQUUsR0FBVTtHRC9CaEI7RUFGRCxBQUFBLFNBQVMsQ0FBVDtJQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0lBSXBCLFNBQVMsRUFBRSxTQUFVO0dEL0JoQjtFQUZELEFBQUEsU0FBUyxDQUFUO0lDNkJKLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVU7R0QvQmhCO0VBRkQsQUFBQSxTQUFTLENBQVQ7SUM2QkosSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBVTtJQUlwQixTQUFTLEVBQUUsR0FBVTtHRC9CaEI7RUFGRCxBQUFBLFNBQVMsQ0FBVDtJQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0lBSXBCLFNBQVMsRUFBRSxTQUFVO0dEL0JoQjtFQUZELEFBQUEsU0FBUyxDQUFUO0lDNkJKLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVU7R0QvQmhCO0VBRkQsQUFBQSxTQUFTLENBQVQ7SUM2QkosSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBVTtJQUlwQixTQUFTLEVBQUUsR0FBVTtHRC9CaEI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQzZCSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0lBSXBCLFNBQVMsRUFBRSxTQUFVO0dEL0JoQjtFQUZELEFBQUEsVUFBVSxDQUFWO0lDNkJKLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVU7R0QvQmhCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUM2QkosSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBVTtJQUlwQixTQUFTLEVBQUUsSUFBVTtHRC9CaEI7RUFLQyxBQUFBLFVBQVUsQ0FBVjtJQzBDUixLQUFLLEVBQThDLElBQUk7R0R4QzlDO0VBRkQsQUFBQSxVQUFVLENBQVY7SUMwQ1IsS0FBSyxFQUFnQixRQUFVO0dEeEN0QjtFQUZELEFBQUEsVUFBVSxDQUFWO0lDMENSLEtBQUssRUFBZ0IsU0FBVTtHRHhDdEI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQzBDUixLQUFLLEVBQWdCLEdBQVU7R0R4Q3RCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUMwQ1IsS0FBSyxFQUFnQixTQUFVO0dEeEN0QjtFQUZELEFBQUEsVUFBVSxDQUFWO0lDMENSLEtBQUssRUFBZ0IsU0FBVTtHRHhDdEI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQzBDUixLQUFLLEVBQWdCLEdBQVU7R0R4Q3RCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUMwQ1IsS0FBSyxFQUFnQixTQUFVO0dEeEN0QjtFQUZELEFBQUEsVUFBVSxDQUFWO0lDMENSLEtBQUssRUFBZ0IsU0FBVTtHRHhDdEI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQzBDUixLQUFLLEVBQWdCLEdBQVU7R0R4Q3RCO0VBRkQsQUFBQSxXQUFXLENBQVg7SUMwQ1IsS0FBSyxFQUFnQixTQUFVO0dEeEN0QjtFQUZELEFBQUEsV0FBVyxDQUFYO0lDMENSLEtBQUssRUFBZ0IsU0FBVTtHRHhDdEI7RUFGRCxBQUFBLFdBQVcsQ0FBWDtJQzBDUixLQUFLLEVBQWdCLElBQVU7R0R4Q3RCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUNzQ1IsSUFBSSxFQUE4QyxJQUFJO0dEcEM3QztFQUZELEFBQUEsVUFBVSxDQUFWO0lDc0NSLElBQUksRUFBZ0IsUUFBVTtHRHBDckI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQ3NDUixJQUFJLEVBQWdCLFNBQVU7R0RwQ3JCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUNzQ1IsSUFBSSxFQUFnQixHQUFVO0dEcENyQjtFQUZELEFBQUEsVUFBVSxDQUFWO0lDc0NSLElBQUksRUFBZ0IsU0FBVTtHRHBDckI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQ3NDUixJQUFJLEVBQWdCLFNBQVU7R0RwQ3JCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUNzQ1IsSUFBSSxFQUFnQixHQUFVO0dEcENyQjtFQUZELEFBQUEsVUFBVSxDQUFWO0lDc0NSLElBQUksRUFBZ0IsU0FBVTtHRHBDckI7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQ3NDUixJQUFJLEVBQWdCLFNBQVU7R0RwQ3JCO0VBRkQsQUFBQSxVQUFVLENBQVY7SUNzQ1IsSUFBSSxFQUFnQixHQUFVO0dEcENyQjtFQUZELEFBQUEsV0FBVyxDQUFYO0lDc0NSLElBQUksRUFBZ0IsU0FBVTtHRHBDckI7RUFGRCxBQUFBLFdBQVcsQ0FBWDtJQ3NDUixJQUFJLEVBQWdCLFNBQVU7R0RwQ3JCO0VBRkQsQUFBQSxXQUFXLENBQVg7SUNzQ1IsSUFBSSxFQUFnQixJQUFVO0dEcENyQjtFQU9ELEFBQUEsWUFBWSxDQUFaO0lDeUJSLFdBQVcsRUFBRSxFQUFVO0dEdkJkO0VBRkQsQUFBQSxZQUFZLENBQVo7SUN5QlIsV0FBVyxFQUFFLFFBQVU7R0R2QmQ7RUFGRCxBQUFBLFlBQVksQ0FBWjtJQ3lCUixXQUFXLEVBQUUsU0FBVTtHRHZCZDtFQUZELEFBQUEsWUFBWSxDQUFaO0lDeUJSLFdBQVcsRUFBRSxHQUFVO0dEdkJkO0VBRkQsQUFBQSxZQUFZLENBQVo7SUN5QlIsV0FBVyxFQUFFLFNBQVU7R0R2QmQ7RUFGRCxBQUFBLFlBQVksQ0FBWjtJQ3lCUixXQUFXLEVBQUUsU0FBVTtHRHZCZDtFQUZELEFBQUEsWUFBWSxDQUFaO0lDeUJSLFdBQVcsRUFBRSxHQUFVO0dEdkJkO0VBRkQsQUFBQSxZQUFZLENBQVo7SUN5QlIsV0FBVyxFQUFFLFNBQVU7R0R2QmQ7RUFGRCxBQUFBLFlBQVksQ0FBWjtJQ3lCUixXQUFXLEVBQUUsU0FBVTtHRHZCZDtFQUZELEFBQUEsWUFBWSxDQUFaO0lDeUJSLFdBQVcsRUFBRSxHQUFVO0dEdkJkO0VBRkQsQUFBQSxhQUFhLENBQWI7SUN5QlIsV0FBVyxFQUFFLFNBQVU7R0R2QmQ7RUFGRCxBQUFBLGFBQWEsQ0FBYjtJQ3lCUixXQUFXLEVBQUUsU0FBVTtHRHZCZDs7O0FVM0RYLEFBQUEsTUFBTSxDQUFDO0VBQ0wsS0FBSyxFQUFFLElBQUs7RUFDWixTQUFTLEVBQUUsSUFBSztFQUNoQixhQUFhLEV2Q3VFSixJQUFJO0N1Q2xEZDs7QUF4QkQsQUFLRSxNQUxJLENBS0osRUFBRTtBQUxKLEFBTUUsTUFOSSxDQU1KLEVBQUUsQ0FBQztFQUNELE9BQU8sRXZDa1BxQixPQUFNO0V1Q2pQbEMsY0FBYyxFQUFFLEdBQUk7RUFDcEIsVUFBVSxFdkNzRkMsR0FBRyxDdUN0RmtCLEtBQUssQ3ZDa0NiLE9BQU87Q3VDakNoQzs7QUFWSCxBQVlRLE1BWkYsQ0FZSixLQUFLLENBQUMsRUFBRSxDQUFDO0VBQ1AsY0FBYyxFQUFFLE1BQU87RUFDdkIsYUFBYSxFQUFHLEdBQUMsQ0FBd0IsS0FBSyxDdkM2QnRCLE9BQU87Q3VDNUJoQzs7QUFmSCxBQWlCVSxNQWpCSixDQWlCSixLQUFLLEdBQUcsS0FBSyxDQUFDO0VBQ1osVUFBVSxFQUFHLEdBQUMsQ0FBd0IsS0FBSyxDdkN5Qm5CLE9BQU87Q3VDeEJoQzs7QUFuQkgsQUFxQkUsTUFyQkksQ0FxQkosTUFBTSxDQUFDO0VBQ0wsZ0JBQWdCLEV2Q2dGUCxJQUFJO0N1Qy9FZDs7QUFRSCxBQUNFLFNBRE8sQ0FDUCxFQUFFO0FBREosQUFFRSxTQUZPLENBRVAsRUFBRSxDQUFDO0VBQ0QsT0FBTyxFdkN3TnFCLE1BQUs7Q3VDdk5sQzs7QUFRSCxBQUFBLGVBQWUsQ0FBQztFQUNkLE1BQU0sRXZDbURPLEdBQUcsQ3VDbkRZLEtBQUssQ3ZDRFAsT0FBTztDdUNjbEM7O0FBZEQsQUFHRSxlQUhhLENBR2IsRUFBRTtBQUhKLEFBSUUsZUFKYSxDQUliLEVBQUUsQ0FBQztFQUNELE1BQU0sRXZDK0NLLEdBQUcsQ3VDL0NjLEtBQUssQ3ZDTFQsT0FBTztDdUNNaEM7O0FBTkgsQUFTSSxlQVRXLENBUWIsS0FBSyxDQUNILEVBQUU7QUFUTixBQVVJLGVBVlcsQ0FRYixLQUFLLENBRUgsRUFBRSxDQUFDO0VBQ0QsbUJBQW1CLEVBQUcsR0FBQztDQUN4Qjs7QUFTTCxBQUMwQixjQURaLENBQ1osS0FBSyxDQUFDLEVBQUUsQUFBQSxZQUFhLENBQUEsQUFBQSxHQUFHLEVBQUU7RUFDeEIsZ0JBQWdCLEV2QzJMWSxtQkFBSTtDdUMxTGpDOztBQVFILEFBQ1EsWUFESSxDQUNWLEtBQUssQ0FBQyxFQUFFLEFwQ3RFTCxNQUFNLENBQUM7RW9Dd0VOLGdCQUFnQixFdkNnTFUsb0JBQUk7Q0d4UFg7O0FxQkx2QixBQUFBLGFBQWE7QUFBYixBQUVJLGFBRlMsR0FFVCxFQUFFO0FBRk4sQUFHSSxhQUhTLEdBR1QsRUFBRSxDQUFDO0VBQ0gsZ0JBQWdCLEV4QnlQVSxvQkFBSTtDd0J4UC9COztBQUtILEFBR0UsWUFIVSxDQUdWLGFBQWEsQXJCUlosTUFBTSxDQUFDO0VxQlVKLGdCQUFnQixFQUpELG9CQUFNO0NyQk5KOztBcUJLdkIsQUFPUSxZQVBJLENBR1YsYUFBYSxBckJSWixNQUFNLEdxQllELEVBQUU7QUFQVixBQVFRLFlBUkksQ0FHVixhQUFhLEFyQlJaLE1BQU0sR3FCYUQsRUFBRSxDQUFDO0VBQ0gsZ0JBQWdCLEVBUkgsb0JBQU07Q0FTcEI7O0FBcEJQLEFBQUEsY0FBYztBQUFkLEFBRUksY0FGVSxHQUVWLEVBQUU7QUFGTixBQUdJLGNBSFUsR0FHVixFQUFFLENBQUM7RUFDSCxnQkFBZ0IsRXhCa2tCVyxPQUFPO0N3QmprQm5DOztBQUtILEFBR0UsWUFIVSxDQUdWLGNBQWMsQXJCUmIsTUFBTSxDQUFDO0VxQlVKLGdCQUFnQixFQUpELE9BQU07Q3JCTko7O0FxQkt2QixBQU9RLFlBUEksQ0FHVixjQUFjLEFyQlJiLE1BQU0sR3FCWUQsRUFBRTtBQVBWLEFBUVEsWUFSSSxDQUdWLGNBQWMsQXJCUmIsTUFBTSxHcUJhRCxFQUFFLENBQUM7RUFDSCxnQkFBZ0IsRUFSSCxPQUFNO0NBU3BCOztBQXBCUCxBQUFBLFdBQVc7QUFBWCxBQUVJLFdBRk8sR0FFUCxFQUFFO0FBRk4sQUFHSSxXQUhPLEdBR1AsRUFBRSxDQUFDO0VBQ0gsZ0JBQWdCLEV4QnNrQlcsT0FBTztDd0Jya0JuQzs7QUFLSCxBQUdFLFlBSFUsQ0FHVixXQUFXLEFyQlJWLE1BQU0sQ0FBQztFcUJVSixnQkFBZ0IsRUFKRCxPQUFNO0NyQk5KOztBcUJLdkIsQUFPUSxZQVBJLENBR1YsV0FBVyxBckJSVixNQUFNLEdxQllELEVBQUU7QUFQVixBQVFRLFlBUkksQ0FHVixXQUFXLEFyQlJWLE1BQU0sR3FCYUQsRUFBRSxDQUFDO0VBQ0gsZ0JBQWdCLEVBUkgsT0FBTTtDQVNwQjs7QUFwQlAsQUFBQSxjQUFjO0FBQWQsQUFFSSxjQUZVLEdBRVYsRUFBRTtBQUZOLEFBR0ksY0FIVSxHQUdWLEVBQUUsQ0FBQztFQUNILGdCQUFnQixFeEIwa0JXLE9BQU87Q3dCemtCbkM7O0FBS0gsQUFHRSxZQUhVLENBR1YsY0FBYyxBckJSYixNQUFNLENBQUM7RXFCVUosZ0JBQWdCLEVBSkQsT0FBTTtDckJOSjs7QXFCS3ZCLEFBT1EsWUFQSSxDQUdWLGNBQWMsQXJCUmIsTUFBTSxHcUJZRCxFQUFFO0FBUFYsQUFRUSxZQVJJLENBR1YsY0FBYyxBckJSYixNQUFNLEdxQmFELEVBQUUsQ0FBQztFQUNILGdCQUFnQixFQVJILE9BQU07Q0FTcEI7O0FBcEJQLEFBQUEsYUFBYTtBQUFiLEFBRUksYUFGUyxHQUVULEVBQUU7QUFGTixBQUdJLGFBSFMsR0FHVCxFQUFFLENBQUM7RUFDSCxnQkFBZ0IsRXhCK2tCVyxPQUFPO0N3QjlrQm5DOztBQUtILEFBR0UsWUFIVSxDQUdWLGFBQWEsQXJCUlosTUFBTSxDQUFDO0VxQlVKLGdCQUFnQixFQUpELE9BQU07Q3JCTko7O0FxQkt2QixBQU9RLFlBUEksQ0FHVixhQUFhLEFyQlJaLE1BQU0sR3FCWUQsRUFBRTtBQVBWLEFBUVEsWUFSSSxDQUdWLGFBQWEsQXJCUlosTUFBTSxHcUJhRCxFQUFFLENBQUM7RUFDSCxnQkFBZ0IsRUFSSCxPQUFNO0NBU3BCOztBZWdGVCxBQUNFLGNBRFksQ0FDWixFQUFFLENBQUM7RUFDRCxLQUFLLEVBQUUsSUFBSztFQUNaLGdCQUFnQixFdkNoRVEsT0FBTztDdUNpRWhDOztBQUdILEFBQ0UsY0FEWSxDQUNaLEVBQUUsQ0FBQztFQUNELEtBQUssRXZDckVtQixPQUFPO0V1Q3NFL0IsZ0JBQWdCLEV2Q3BFUSxPQUFPO0N1Q3FFaEM7O0FBR0gsQUFBQSxjQUFjLENBQUM7RUFDYixLQUFLLEV2Q3pFcUIsT0FBTztFdUMwRWpDLGdCQUFnQixFdkM3RVUsT0FBTztDdUN3RmxDOztBQWJELEFBSUUsY0FKWSxDQUlaLEVBQUU7QUFKSixBQUtFLGNBTFksQ0FLWixFQUFFO0FBTEosQUFNUSxjQU5NLENBTVosS0FBSyxDQUFDLEVBQUUsQ0FBQztFQUNQLFlBQVksRXZDakZZLE9BQU87Q3VDa0ZoQzs7QUFSSCxBQUFBLGNBQWMsQUFVWCxlQUFlLENBQUM7RUFDZixNQUFNLEVBQUUsQ0FBRTtDQUNYOztBQVdILEFBQUEsaUJBQWlCLENBQUM7RUFDaEIsT0FBTyxFQUFFLEtBQU07RUFDZixLQUFLLEVBQUUsSUFBSztFQUNaLFVBQVUsRUFBRSxFQUFHO0VBQ2YsVUFBVSxFQUFFLElBQUs7Q0FNbEI7O0FBR0QsQUFDRSxhQURXLENBQ1gsS0FBSyxDQUFDO0VBQ0osS0FBSyxFQUFFLElBQUs7Q0FDYjs7QUFISCxBQUtFLGFBTFcsQ0FLWCxLQUFLLENBQUM7RUFDSixPQUFPLEVBQUUsS0FBTTtFQUNmLFdBQVcsRUFBRSxNQUFPO0NBQ3JCOztBQVJILEFBVUUsYUFWVyxDQVVYLEVBQUU7QUFWSixBQVdFLGFBWFcsQ0FXWCxFQUFFLENBQUM7RUFDRCxVQUFVLEV2Q3BFQyxHQUFHLEN1Q29Fa0IsS0FBSyxDdkN4SGIsT0FBTztFdUN5SC9CLFdBQVcsRXZDckVBLEdBQUcsQ3VDcUVtQixLQUFLLEN2Q3pIZCxPQUFPO0N1QzhIaEM7O0FBbEJILEFBVUUsYUFWVyxDQVVYLEVBQUUsQUFLQyxXQUFXO0FBZmhCLEFBV0UsYUFYVyxDQVdYLEVBQUUsQUFJQyxXQUFXLENBQUM7RUFDWCxZQUFZLEV2Q3hFSCxHQUFHLEN1Q3dFc0IsS0FBSyxDdkM1SGpCLE9BQU87Q3VDNkg5Qjs7QUFqQkwsQUF3Qm9CLGFBeEJQLENBb0JYLEtBQUssQUFHRixXQUFXLENBQ1YsRUFBRSxBQUFBLFdBQVcsQ0FBQyxFQUFFO0FBeEJ0QixBQXlCb0IsYUF6QlAsQ0FvQlgsS0FBSyxBQUdGLFdBQVcsQ0FFVixFQUFFLEFBQUEsV0FBVyxDQUFDLEVBQUU7QUF6QnRCLEFBd0JvQixhQXhCUCxDQXFCWCxLQUFLLEFBRUYsV0FBVyxDQUNWLEVBQUUsQUFBQSxXQUFXLENBQUMsRUFBRTtBQXhCdEIsQUF5Qm9CLGFBekJQLENBcUJYLEtBQUssQUFFRixXQUFXLENBRVYsRUFBRSxBQUFBLFdBQVcsQ0FBQyxFQUFFO0FBekJ0QixBQXdCb0IsYUF4QlAsQ0FzQlgsS0FBSyxBQUNGLFdBQVcsQ0FDVixFQUFFLEFBQUEsV0FBVyxDQUFDLEVBQUU7QUF4QnRCLEFBeUJvQixhQXpCUCxDQXNCWCxLQUFLLEFBQ0YsV0FBVyxDQUVWLEVBQUUsQUFBQSxXQUFXLENBQUMsRUFBRSxDQUFDO0VBQ2YsYUFBYSxFdkNsRk4sR0FBRyxDdUNrRnlCLEtBQUssQ3ZDdElwQixPQUFPO0N1Q3VJNUI7O0FBM0JQLEFBK0JFLGFBL0JXLENBK0JYLEVBQUUsQ0FBQztFQUNELEtBQUssRUFBRSxJQUFLO0NBT2I7O0FBdkNILEFBa0NJLGFBbENTLENBK0JYLEVBQUUsQ0FHQSxFQUFFO0FBbENOLEFBbUNJLGFBbkNTLENBK0JYLEVBQUUsQ0FJQSxFQUFFLENBQUM7RUFDRCxPQUFPLEVBQUUsZ0JBQWlCO0VBQzFCLE1BQU0sRXZDN0ZHLEdBQUcsQ3VDNkZnQixLQUFLLEN2Q2pKWCxPQUFPO0N1Q2tKOUI7O0FDM0xMLEFBQUEsYUFBYSxDQUFDO0VBQ1osT0FBTyxFQUFFLEtBQU07RUFDZixLQUFLLEVBQUUsSUFBSztFQUdaLE9BQU8sRXhDcVR3QixNQUFLLENBREwsT0FBTTtFd0NuVHJDLFNBQVMsRXhDa0tNLElBQUk7RXdDaktuQixXQUFXLEV4Q29Ub0IsSUFBSTtFd0NuVG5DLEtBQUssRXhDK0JxQixPQUFPO0V3QzlCakMsZ0JBQWdCLEV4Q29UZSxJQUFJO0V3Q2xUbkMsZ0JBQWdCLEVBQUUsSUFBSztFQUN2QixlQUFlLEVBQUUsV0FBWTtFQUM3QixNQUFNLEV4Q2dGTyxHQUFHLEN3Q2hGZ0IsS0FBSyxDeENvVE4sbUJBQUk7RXdDL1NqQyxhQUFhLEV4Q3NOUSxPQUFNO0N3QzlLOUI7O0FBMURELEFBQUEsYUFBYSxBQTRCVixZQUFZLENBQUM7RUFDWixnQkFBZ0IsRUFBRSxXQUFZO0VBQzlCLE1BQU0sRUFBRSxDQUFFO0NBQ1g7O0FBL0JILEFBQUEsYUFBYSxBbEJ5Q1YsTUFBTSxDQUFDO0VBQ04sS0FBSyxFdEJIbUIsT0FBTztFc0JJL0IsZ0JBQWdCLEV0QmtSYSxJQUFJO0VzQmpSakMsWUFBWSxFdEI4UmlCLE9BQU87RXNCN1JwQyxPQUFPLEVBQUUsSUFBSztDQUVmOztBa0IvQ0gsQUFBQSxhQUFhLEFBcUNWLGFBQWEsQ0FBQztFQUNiLEtBQUssRXhDd1N3QixJQUFJO0V3Q3RTakMsT0FBTyxFQUFFLENBQUU7Q0FDWjs7QUF6Q0gsQUFBQSxhQUFhLEFBZ0RWLFNBQVMsRUFoRFosQUFBQSxhQUFhLENBaURWLEFBQUEsUUFBQyxBQUFBLEVBQVU7RUFDVixnQkFBZ0IsRXhDVFEsT0FBTztFd0NXL0IsT0FBTyxFQUFFLENBQUU7Q0FDWjs7QUFyREgsQUFBQSxhQUFhLEFBdURWLFNBQVMsQ0FBQztFQUNULE1BQU0sRXhDdVN1QixXQUFXO0N3Q3RTekM7O0FBR0gsQUFBTSxNQUFBLEFBQUEsYUFBYSxBQUNoQixJQUFLLEVBQUEsQUFBQSxBQUFLLElBQUosQUFBQSxFQUFNLElBQUssRUFBQSxBQUFBLEFBQVMsUUFBUixBQUFBLEdBQVc7RUFFNUIsTUFBTSxFQUFFLGtCQUFJO0NBQ2I7O0FBSkgsQUFBTSxNQUFBLEFBQUEsYUFBYSxBQU1oQixNQUFNLEFBQUEsV0FBVyxDQUFDO0VBTWpCLEtBQUssRXhDakNtQixPQUFPO0V3Q2tDL0IsZ0JBQWdCLEV4Q29QYSxJQUFJO0N3Q25QbEM7O0FBSUgsQUFBQSxrQkFBa0I7QUFDbEIsQUFBQSxtQkFBbUIsQ0FBQztFQUNsQixPQUFPLEVBQUUsS0FBTTtDQUNoQjs7QUFTRCxBQUFBLGVBQWUsQ0FBQztFQUNkLFdBQVcsRXhDK05vQixNQUFLO0V3QzlOcEMsY0FBYyxFeEM4TmlCLE1BQUs7RXdDN05wQyxhQUFhLEVBQUUsQ0FBRTtDQUNsQjs7QUFFRCxBQUFBLGtCQUFrQixDQUFDO0VBQ2pCLFdBQVcsRXhDbVBvQixPQUFNO0V3Q2xQckMsY0FBYyxFeENrUGlCLE9BQU07RXdDalByQyxTQUFTLEV4Q3NFTSxPQUFPO0N3Q3JFdkI7O0FBRUQsQUFBQSxrQkFBa0IsQ0FBQztFQUNqQixXQUFXLEV4QzBPb0IsT0FBTTtFd0N6T3JDLGNBQWMsRXhDeU9pQixPQUFNO0V3Q3hPckMsU0FBUyxFeENpRU0sUUFBTztDd0NoRXZCOztBQVNELEFBQUEsZ0JBQWdCLENBQUM7RUFDZixXQUFXLEV4Q3NNb0IsTUFBSztFd0NyTXBDLGNBQWMsRXhDcU1pQixNQUFLO0V3Q3BNcEMsYUFBYSxFQUFFLENBQUU7RUFDakIsU0FBUyxFeENpRE0sSUFBSTtDd0NoRHBCOztBQVFELEFBQUEsb0JBQW9CLENBQUM7RUFDbkIsV0FBVyxFeEN5TG9CLE1BQUs7RXdDeExwQyxjQUFjLEV4Q3dMaUIsTUFBSztFd0N2THBDLFdBQVcsRXhDd0xvQixJQUFJO0V3Q3ZMbkMsTUFBTSxFQUFFLGlCQUFrQjtFQUMxQixZQUFZLEVBQUUsS0FBTTtDQU9yQjs7QUFaRCxBQUFBLG9CQUFvQixBQU9qQixnQkFBZ0IsRUt0RW5CLEFMK0RBLGVLL0RlLEdMK0RmLG9CQUFvQixBSy9ERixhQUFhO0FBQy9CLEFMOERBLGVLOURlLEdMOERmLG9CQUFvQixBSzlERixrQkFBa0I7QUFDcEMsQUw2REEsZUs3RGUsR0FBRyxnQkFBZ0IsR0w2RGxDLG9CQUFvQixBSzdEaUIsSUFBSSxFTDZEekMsQUFBQSxvQkFBb0IsQUFRakIsZ0JBQWdCLEVLNUVuQixBTG9FQSxlS3BFZSxHTG9FZixvQkFBb0IsQUtwRUYsYUFBYTtBQUMvQixBTG1FQSxlS25FZSxHTG1FZixvQkFBb0IsQUtuRUYsa0JBQWtCO0FBQ3BDLEFMa0VBLGVLbEVlLEdBQUcsZ0JBQWdCLEdMa0VsQyxvQkFBb0IsQUtsRWlCLElBQUksQ0wwRXJCO0VBQ2hCLGFBQWEsRUFBRSxDQUFFO0VBQ2pCLFlBQVksRUFBRSxDQUFFO0NBQ2pCOztBQVlILEFBQUEsZ0JBQWdCLEVLdEZoQixBTHNGQSxlS3RGZSxHQUFHLGFBQWE7QUFDL0IsQUxxRkEsZUtyRmUsR0FBRyxrQkFBa0I7QUFDcEMsQUxvRkEsZUtwRmUsR0FBRyxnQkFBZ0IsR0FBRyxJQUFJLENMb0Z4QjtFQUNmLE9BQU8sRXhDeUx3QixPQUFNLENBRE4sTUFBSztFd0N2THBDLFNBQVMsRXhDaUJNLFFBQU87RTBCNUtwQixhQUFhLEUxQjRPUSxNQUFLO0N3Qy9FN0I7O0FBRUQsQUFBTSxNQUFBLEFBQUEsZ0JBQWdCLEFBQ25CLElBQUssRUFBQSxBQUFBLEFBQUssSUFBSixBQUFBLEVBQU0sSUFBSyxFQUFBLEFBQUEsQUFBUyxRQUFSLEFBQUEsSUs3RnJCLEFMNEZBLGVLNUZlLEdMNEZmLE1BQU0sQUs1RlksYUFBYSxBTDZGNUIsSUFBSyxFQUFBLEFBQUEsQUFBSyxJQUFKLEFBQUEsRUFBTSxJQUFLLEVBQUEsQUFBQSxBQUFTLFFBQVIsQUFBQTtBSzVGckIsQUwyRkEsZUszRmUsR0wyRmYsTUFBTSxBSzNGWSxrQkFBa0IsQUw0RmpDLElBQUssRUFBQSxBQUFBLEFBQUssSUFBSixBQUFBLEVBQU0sSUFBSyxFQUFBLEFBQUEsQUFBUyxRQUFSLEFBQUE7QUszRnJCLEFMMEZBLGVLMUZlLEdBQUcsZ0JBQWdCLEdMMEZsQyxNQUFNLEFLMUYrQixJQUFJLEFMMkZ0QyxJQUFLLEVBQUEsQUFBQSxBQUFLLElBQUosQUFBQSxFQUFNLElBQUssRUFBQSxBQUFBLEFBQVMsUUFBUixBQUFBLEdBQVc7RUFDNUIsTUFBTSxFeEN5THlCLFNBQWE7Q3dDeEw3Qzs7QUFHSCxBQUFBLGdCQUFnQixFS3ZHaEIsQUx1R0EsZUt2R2UsR0FBRyxhQUFhO0FBQy9CLEFMc0dBLGVLdEdlLEdBQUcsa0JBQWtCO0FBQ3BDLEFMcUdBLGVLckdlLEdBQUcsZ0JBQWdCLEdBQUcsSUFBSSxDTHFHeEI7RUFDZixPQUFPLEV4Q2dMd0IsT0FBTSxDQUROLE1BQU07RXdDOUtyQyxTQUFTLEV4Q0lNLE9BQU87RTBCM0twQixhQUFhLEUxQjJPUSxNQUFLO0N3Q2xFN0I7O0FBRUQsQUFBTSxNQUFBLEFBQUEsZ0JBQWdCLEFBQ25CLElBQUssRUFBQSxBQUFBLEFBQUssSUFBSixBQUFBLEVBQU0sSUFBSyxFQUFBLEFBQUEsQUFBUyxRQUFSLEFBQUEsSUs5R3JCLEFMNkdBLGVLN0dlLEdMNkdmLE1BQU0sQUs3R1ksYUFBYSxBTDhHNUIsSUFBSyxFQUFBLEFBQUEsQUFBSyxJQUFKLEFBQUEsRUFBTSxJQUFLLEVBQUEsQUFBQSxBQUFTLFFBQVIsQUFBQTtBSzdHckIsQUw0R0EsZUs1R2UsR0w0R2YsTUFBTSxBSzVHWSxrQkFBa0IsQUw2R2pDLElBQUssRUFBQSxBQUFBLEFBQUssSUFBSixBQUFBLEVBQU0sSUFBSyxFQUFBLEFBQUEsQUFBUyxRQUFSLEFBQUE7QUs1R3JCLEFMMkdBLGVLM0dlLEdBQUcsZ0JBQWdCLEdMMkdsQyxNQUFNLEFLM0crQixJQUFJLEFMNEd0QyxJQUFLLEVBQUEsQUFBQSxBQUFLLElBQUosQUFBQSxFQUFNLElBQUssRUFBQSxBQUFBLEFBQVMsUUFBUixBQUFBLEdBQVc7RUFDNUIsTUFBTSxFeEM0S3lCLFVBQWE7Q3dDM0s3Qzs7QUFTSCxBQUFBLFdBQVcsQ0FBQztFQUNWLGFBQWEsRXhDOUdKLElBQUk7Q3dDK0dkOztBQUVELEFBQUEsVUFBVSxDQUFDO0VBQ1QsT0FBTyxFQUFFLEtBQU07RUFDZixVQUFVLEVBQUcsT0FBTztDQUNyQjs7QUFPRCxBQUFBLFdBQVcsQ0FBQztFQUNWLFFBQVEsRUFBRSxRQUFTO0VBQ25CLE9BQU8sRUFBRSxLQUFNO0VBQ2YsYUFBYSxFQUFHLE9BQU87Q0FheEI7O0FBaEJELEFBTUksV0FOTyxHQU1QLFdBQVcsQ0FBQztFQUNaLFVBQVUsRUFBRSxPQUFRO0NBQ3JCOztBQVJILEFBV0ksV0FYTyxBQVVSLFNBQVMsQ0FDUixpQkFBaUIsQ0FBQztFQUNoQixLQUFLLEV4Q3ZLaUIsT0FBTztFd0N3SzdCLE1BQU0sRXhDK0lxQixXQUFXO0N3QzlJdkM7O0FBSUwsQUFBQSxpQkFBaUIsQ0FBQztFQUNoQixZQUFZLEVBQUUsT0FBUTtFQUN0QixhQUFhLEVBQUUsQ0FBRTtFQUNqQixNQUFNLEVBQUUsT0FBUTtDQUNqQjs7QUFFRCxBQUFBLGlCQUFpQixDQUFDO0VBQ2hCLFFBQVEsRUFBRSxRQUFTO0VBQ25CLFVBQVUsRUFBRSxNQUFPO0VBQ25CLFdBQVcsRUFBRSxRQUFTO0NBS3ZCOztBQVJELEFBQUEsaUJBQWlCLEFBS2QsV0FBVyxDQUFDO0VBQ1gsUUFBUSxFQUFFLE1BQU87Q0FDbEI7O0FBSUgsQUFBQSxrQkFBa0IsQ0FBQztFQUNqQixRQUFRLEVBQUUsUUFBUztFQUNuQixPQUFPLEVBQUUsWUFBYTtFQUN0QixZQUFZLEVBQUUsT0FBUTtFQUN0QixhQUFhLEVBQUUsQ0FBRTtFQUNqQixjQUFjLEVBQUUsTUFBTztFQUN2QixNQUFNLEVBQUUsT0FBUTtDQVVqQjs7QUFoQkQsQUFRSSxrQkFSYyxHQVFkLGtCQUFrQixDQUFDO0VBQ25CLFdBQVcsRUFBRSxNQUFPO0NBQ3JCOztBQVZILEFBQUEsa0JBQWtCLEFBWWYsU0FBUyxDQUFDO0VBQ1QsS0FBSyxFeEMzTW1CLE9BQU87RXdDNE0vQixNQUFNLEV4QzJHdUIsV0FBVztDd0MxR3pDOztBQVFILEFBQUEsc0JBQXNCLENBQUM7RUFDckIsVUFBVSxFQUFHLE9BQU87Q0FDckI7O0FBRUQsQUFBQSxxQkFBcUI7QUFDckIsQUFBQSxxQkFBcUI7QUFDckIsQUFBQSxvQkFBb0IsQ0FBQztFQUNuQixhQUFhLEVBQUcsT0FBZ0I7RUFDaEMsaUJBQWlCLEVBQUUsU0FBVTtFQUM3QixtQkFBbUIsRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFFLFFBQWE7RUFDaEQsZUFBZSxFQUFHLE9BQWEsQ0FBTyxPQUFhO0NBQ3BEOztBQUdELEFsQjFRRSxZa0IwUVUsQ2xCMVFWLHNCQUFzQjtBa0IwUXhCLEFsQnpRRSxZa0J5UVUsQ2xCelFWLG1CQUFtQjtBa0J5UXJCLEFsQnhRRSxZa0J3UVUsQ2xCeFFWLGlCQUFpQjtBa0J3UW5CLEFsQnZRRSxZa0J1UVUsQ2xCdlFWLGtCQUFrQjtBa0J1UXBCLEFsQnRRRSxZa0JzUVUsQ2xCdFFWLGVBQWUsQ0FBQztFQUNkLEtBQUssRXpCK0NPLE9BQU87Q3lCOUNwQjs7QWtCb1FILEFsQmpRRSxZa0JpUVUsQ2xCalFWLGFBQWEsQ0FBQztFQUNaLFlBQVksRXpCMENBLE9BQU87Q3lCbkNwQjs7QWtCeVBILEFsQmpRRSxZa0JpUVUsQ2xCalFWLGFBQWEsQUFJUixNQUFNLENBQUM7RUFDTixVQUFVLEV0Qm9UZSxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsb0JBQUksRXNCcFRkLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLE9BQU87Q0FDL0M7O0FrQjJQUCxBbEJ0UEUsWWtCc1BVLENsQnRQVixrQkFBa0IsQ0FBQztFQUNqQixLQUFLLEV6QitCTyxPQUFPO0V5QjlCbkIsWUFBWSxFekI4QkEsT0FBTztFeUI3Qm5CLGdCQUFnQixFQUFFLE9BQU87Q0FDMUI7O0FrQmtQSCxBQUdFLFlBSFUsQ0FHVixxQkFBcUIsQ0FBQztFQUNwQixnQkFBZ0IsRXhDbUtBLHFQQUFHO0N3Q2xLcEI7O0FBR0gsQWxCbFJFLFlrQmtSVSxDbEJsUlYsc0JBQXNCO0FrQmtSeEIsQWxCalJFLFlrQmlSVSxDbEJqUlYsbUJBQW1CO0FrQmlSckIsQWxCaFJFLFlrQmdSVSxDbEJoUlYsaUJBQWlCO0FrQmdSbkIsQWxCL1FFLFlrQitRVSxDbEIvUVYsa0JBQWtCO0FrQitRcEIsQWxCOVFFLFlrQjhRVSxDbEI5UVYsZUFBZSxDQUFDO0VBQ2QsS0FBSyxFekJpRE8sT0FBTztDeUJoRHBCOztBa0I0UUgsQWxCelFFLFlrQnlRVSxDbEJ6UVYsYUFBYSxDQUFDO0VBQ1osWUFBWSxFekI0Q0EsT0FBTztDeUJyQ3BCOztBa0JpUUgsQWxCelFFLFlrQnlRVSxDbEJ6UVYsYUFBYSxBQUlSLE1BQU0sQ0FBQztFQUNOLFVBQVUsRXRCb1RlLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxvQkFBSSxFc0JwVGQsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsT0FBTztDQUMvQzs7QWtCbVFQLEFsQjlQRSxZa0I4UFUsQ2xCOVBWLGtCQUFrQixDQUFDO0VBQ2pCLEtBQUssRXpCaUNPLE9BQU87RXlCaENuQixZQUFZLEV6QmdDQSxPQUFPO0V5Qi9CbkIsZ0JBQWdCLEVBQUUsS0FBTztDQUMxQjs7QWtCMFBILEFBR0UsWUFIVSxDQUdWLHFCQUFxQixDQUFDO0VBQ3BCLGdCQUFnQixFeEM4SkEsOFRBQUc7Q3dDN0pwQjs7QUFHSCxBbEIxUkUsV2tCMFJTLENsQjFSVCxzQkFBc0I7QWtCMFJ4QixBbEJ6UkUsV2tCeVJTLENsQnpSVCxtQkFBbUI7QWtCeVJyQixBbEJ4UkUsV2tCd1JTLENsQnhSVCxpQkFBaUI7QWtCd1JuQixBbEJ2UkUsV2tCdVJTLENsQnZSVCxrQkFBa0I7QWtCdVJwQixBbEJ0UkUsV2tCc1JTLENsQnRSVCxlQUFlLENBQUM7RUFDZCxLQUFLLEV6QjhDUyxPQUFPO0N5QjdDdEI7O0FrQm9SSCxBbEJqUkUsV2tCaVJTLENsQmpSVCxhQUFhLENBQUM7RUFDWixZQUFZLEV6QnlDRSxPQUFPO0N5QmxDdEI7O0FrQnlRSCxBbEJqUkUsV2tCaVJTLENsQmpSVCxhQUFhLEFBSVIsTUFBTSxDQUFDO0VBQ04sVUFBVSxFdEJvVGUsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLG9CQUFJLEVzQnBUZCxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxPQUFPO0NBQy9DOztBa0IyUVAsQWxCdFFFLFdrQnNRUyxDbEJ0UVQsa0JBQWtCLENBQUM7RUFDakIsS0FBSyxFekI4QlMsT0FBTztFeUI3QnJCLFlBQVksRXpCNkJFLE9BQU87RXlCNUJyQixnQkFBZ0IsRUFBRSxPQUFPO0NBQzFCOztBa0JrUUgsQUFHRSxXQUhTLENBR1Qsb0JBQW9CLENBQUM7RUFDbkIsZ0JBQWdCLEV4Q3lKRCwrUkFBRztDd0N4Sm5COztBdEN6UEMsTUFBTSxFQUFMLFNBQVMsRUFBRSxLQUFLO0VzQ3NRckIsQUFLSSxZQUxRLENBS1IsV0FBVyxDQUFDO0lBQ1YsT0FBTyxFQUFFLFlBQWE7SUFDdEIsYUFBYSxFQUFFLENBQUU7SUFDakIsY0FBYyxFQUFFLE1BQU87R0FDeEI7RUFUTCxBQVlJLFlBWlEsQ0FZUixhQUFhLENBQUM7SUFDWixPQUFPLEVBQUUsWUFBYTtJQUN0QixLQUFLLEVBQUUsSUFBSztJQUNaLGNBQWMsRUFBRSxNQUFPO0dBQ3hCO0VBaEJMLEFBbUJJLFlBbkJRLENBbUJSLG9CQUFvQixDQUFDO0lBQ25CLE9BQU8sRUFBRSxZQUFhO0dBQ3ZCO0VBckJMLEFBdUJJLFlBdkJRLENBdUJSLFlBQVksQ0FBQztJQUNYLE9BQU8sRUFBRSxZQUFhO0lBQ3RCLEtBQUssRUFBRSxJQUFLO0lBQ1osY0FBYyxFQUFFLE1BQU87R0FPeEI7RUFqQ0wsQUE0Qk0sWUE1Qk0sQ0F1QlIsWUFBWSxDQUtWLGtCQUFrQjtFQTVCeEIsQUE2Qk0sWUE3Qk0sQ0F1QlIsWUFBWSxDQU1WLGdCQUFnQjtFQTdCdEIsQUE4Qk0sWUE5Qk0sQ0F1QlIsWUFBWSxDQU9WLGFBQWEsQ0FBQztJQUNaLEtBQUssRUFBRSxJQUFLO0dBQ2I7RUFoQ1AsQUFvQ21CLFlBcENQLENBb0NSLFlBQVksR0FBRyxhQUFhLENBQUM7SUFDM0IsS0FBSyxFQUFFLElBQUs7R0FDYjtFQXRDTCxBQXdDSSxZQXhDUSxDQXdDUixtQkFBbUIsQ0FBQztJQUNsQixhQUFhLEVBQUUsQ0FBRTtJQUNqQixjQUFjLEVBQUUsTUFBTztHQUN4QjtFQTNDTCxBQStDSSxZQS9DUSxDQStDUixXQUFXLENBQUM7SUFDVixPQUFPLEVBQUUsWUFBYTtJQUN0QixVQUFVLEVBQUUsQ0FBRTtJQUNkLGFBQWEsRUFBRSxDQUFFO0lBQ2pCLGNBQWMsRUFBRSxNQUFPO0dBQ3hCO0VBcERMLEFBcURJLFlBckRRLENBcURSLGlCQUFpQixDQUFDO0lBQ2hCLFlBQVksRUFBRSxDQUFFO0dBQ2pCO0VBdkRMLEFBd0RJLFlBeERRLENBd0RSLGlCQUFpQixDQUFDO0lBQ2hCLFFBQVEsRUFBRSxRQUFTO0lBQ25CLFdBQVcsRUFBRSxDQUFFO0dBQ2hCO0VBM0RMLEFBOERrQixZQTlETixDQThEUixhQUFhLENBQUMsc0JBQXNCLENBQUM7SUFDbkMsR0FBRyxFQUFFLENBQUU7R0FDUjs7O0FDN1dMLEFBQUEsSUFBSSxDQUFDO0VBQ0gsT0FBTyxFQUFFLFlBQWE7RUFDdEIsV0FBVyxFekN3UW9CLE1BQU07RXlDdlFyQyxXQUFXLEV6Q3NRb0IsSUFBSTtFeUNyUW5DLFVBQVUsRUFBRSxNQUFPO0VBQ25CLFdBQVcsRUFBRSxNQUFPO0VBQ3BCLGNBQWMsRUFBRSxNQUFPO0VBQ3ZCLE1BQU0sRUFBRSxPQUFRO0VBQ2hCLFdBQVcsRUFBRSxJQUFLO0VBQ2xCLE1BQU0sRXpDb0ZPLEdBQUcsQ3lDcEZnQixLQUFLLENBQUMsV0FBVztFekI4RmpELE9BQU8sRWhCaUt3QixNQUFLLENBREwsSUFBSTtFZ0IvSm5DLFNBQVMsRWhCZ0VNLElBQUk7RTBCMUtqQixhQUFhLEUxQjBPUSxPQUFNO0N5QzlMOUI7O0FBMUNELEFBQUEsSUFBSSxBQWdCQyxNQUFNLEVBaEJYLEFBQUEsSUFBSSxBQWlCQyxNQUFNLEVBakJYLEFBQUEsSUFBSSxBQWNELE9BQU8sQUFFTCxNQUFNLEVBaEJYLEFBQUEsSUFBSSxBQWNELE9BQU8sQUFHTCxNQUFNLEVBakJYLEFBQUEsSUFBSSxBQWVELE9BQU8sQUFDTCxNQUFNLEVBaEJYLEFBQUEsSUFBSSxBQWVELE9BQU8sQUFFTCxNQUFNLENBQUM7RS9CakJWLE9BQU8sRUFBRSxpQ0FBa0M7RUFDM0MsY0FBYyxFQUFFLElBQUs7QytCa0JsQjs7QUFuQkwsQUFBQSxJQUFJLEF0Q2NDLE1BQU0sRXNDZFgsQUFBQSxJQUFJLEF0Q2VDLE1BQU0sQ0FBQztFc0NRUixlQUFlLEVBQUUsSUFBSztDdENOckI7O0FzQ2pCTCxBQUFBLElBQUksQUF5QkQsTUFBTSxDQUFDO0VBQ04sZUFBZSxFQUFFLElBQUs7Q0FDdkI7O0FBM0JILEFBQUEsSUFBSSxBQTZCRCxPQUFPLEVBN0JWLEFBQUEsSUFBSSxBQThCRCxPQUFPLENBQUM7RUFDUCxnQkFBZ0IsRUFBRSxJQUFLO0VBQ3ZCLE9BQU8sRUFBRSxDQUFFO0NBRVo7O0FBbENILEFBQUEsSUFBSSxBQW9DRCxTQUFTLEVBcENaLEFBQUEsSUFBSSxBQXFDRCxTQUFTLENBQUM7RUFDVCxNQUFNLEV6Q3lUdUIsV0FBVztFeUN4VHhDLE9BQU8sRUFBRSxHQUFJO0NBRWQ7O0FBSUgsQUFBSyxDQUFKLEFBQUEsSUFBSSxBQUFBLFNBQVM7QUFDZCxBQUFvQixRQUFaLENBQUEsQUFBQSxRQUFDLEFBQUEsRUFBVSxDQUFDLEFBQUEsSUFBSSxDQUFDO0VBQ3ZCLGNBQWMsRUFBRSxJQUFLO0NBQ3RCOztBQU9ELEFBQUEsWUFBWSxDQUFDO0V6QnBEWCxLQUFLLEVoQjJRMEIsSUFBSTtFZ0IxUW5DLGdCQUFnQixFbkIrQ0YsT0FBTztFbUI5Q3JCLFlBQVksRW5COENFLE9BQU87QzRDTXRCOztBQUZELEFBQUEsWUFBWSxBdENuRFAsTUFBTSxDQUFDO0VhS1IsS0FBSyxFaEJxUXdCLElBQUk7RWdCcFFqQyxnQkFBZ0IsRUFWRSxPQUFNO0VBV3BCLFlBQVksRUFWRixPQUFNO0NiR0M7O0FzQ21EekIsQUFBQSxZQUFZLEF6QnpDVCxNQUFNLEV5QnlDVCxBQUFBLFlBQVksQXpCeENULE1BQU0sQ0FBQztFQUNOLEtBQUssRWhCOFB3QixJQUFJO0VnQjdQakMsZ0JBQWdCLEVBakJFLE9BQU07RUFrQnBCLFlBQVksRUFqQkYsT0FBTTtDQWtCckI7O0F5Qm9DSCxBQUFBLFlBQVksQXpCbENULE9BQU8sRXlCa0NWLEFBQUEsWUFBWSxBekJqQ1QsT0FBTztBQUNSLEF5QmdDRixLekJoQ08sR3lCZ0NQLFlBQVksQXpCaENELGdCQUFnQixDQUFDO0VBQ3hCLEtBQUssRWhCc1B3QixJQUFJO0VnQnJQakMsZ0JBQWdCLEVBekJFLE9BQU07RUEwQnBCLFlBQVksRUF6QkYsT0FBTTtFQTJCcEIsZ0JBQWdCLEVBQUUsSUFBSztDQVV4Qjs7QXlCaUJILEFBQUEsWUFBWSxBekJsQ1QsT0FBTyxBQVVMLE1BQU0sRXlCd0JYLEFBQUEsWUFBWSxBekJsQ1QsT0FBTyxBQVdMLE1BQU0sRXlCdUJYLEFBQUEsWUFBWSxBekJsQ1QsT0FBTyxBQVlMLE1BQU0sRXlCc0JYLEFBQUEsWUFBWSxBekJqQ1QsT0FBTyxBQVNMLE1BQU0sRXlCd0JYLEFBQUEsWUFBWSxBekJqQ1QsT0FBTyxBQVVMLE1BQU0sRXlCdUJYLEFBQUEsWUFBWSxBekJqQ1QsT0FBTyxBQVdMLE1BQU07QUFWVCxBeUJnQ0YsS3pCaENPLEd5QmdDUCxZQUFZLEF6QmhDRCxnQkFBZ0IsQUFRdEIsTUFBTTtBQVJULEF5QmdDRixLekJoQ08sR3lCZ0NQLFlBQVksQXpCaENELGdCQUFnQixBQVN0QixNQUFNO0FBVFQsQXlCZ0NGLEt6QmhDTyxHeUJnQ1AsWUFBWSxBekJoQ0QsZ0JBQWdCLEFBVXRCLE1BQU0sQ0FBQztFQUNOLEtBQUssRWhCNE9zQixJQUFJO0VnQjNPL0IsZ0JBQWdCLEVBQUUsT0FBTTtFQUNwQixZQUFZLEVBQUUsS0FBTTtDQUN6Qjs7QXlCa0JMLEFBQUEsWUFBWSxBekJmVCxTQUFTLEFBRVAsTUFBTSxFeUJhWCxBQUFBLFlBQVksQXpCZlQsU0FBUyxBQUdQLE1BQU0sRXlCWVgsQUFBQSxZQUFZLEF6QmRULFNBQVMsQUFDUCxNQUFNLEV5QmFYLEFBQUEsWUFBWSxBekJkVCxTQUFTLEFBRVAsTUFBTSxDQUFDO0VBQ04sZ0JBQWdCLEVuQk9OLE9BQU87RW1CTmIsWUFBWSxFbkJNTixPQUFPO0NtQkxsQjs7QXlCU0wsQUFBQSxZQUFZLEF6QmZULFNBQVMsQWJwQ1AsTUFBTSxFc0NtRFgsQUFBQSxZQUFZLEF6QmRULFNBQVMsQWJyQ1AsTUFBTSxDQUFDO0VhNENOLGdCQUFnQixFbkJHTixPQUFPO0VtQkZiLFlBQVksRW5CRU4sT0FBTztDTS9DRTs7QXNDc0R6QixBQUFBLGNBQWMsQ0FBQztFekJ2RGIsS0FBSyxFaEJtQ3FCLE9BQU87RWdCbENqQyxnQkFBZ0IsRWhCK1FlLElBQUk7RWdCOVFuQyxZQUFZLEVoQitRbUIsSUFBSTtDeUN4TnBDOztBQUZELEFBQUEsY0FBYyxBdEN0RFQsTUFBTSxDQUFDO0VhS1IsS0FBSyxFaEI2Qm1CLE9BQU87RWdCNUIvQixnQkFBZ0IsRUFWRSxPQUFNO0VBV3BCLFlBQVksRUFWRixPQUFNO0NiR0M7O0FzQ3NEekIsQUFBQSxjQUFjLEF6QjVDWCxNQUFNLEV5QjRDVCxBQUFBLGNBQWMsQXpCM0NYLE1BQU0sQ0FBQztFQUNOLEtBQUssRWhCc0JtQixPQUFPO0VnQnJCL0IsZ0JBQWdCLEVBakJFLE9BQU07RUFrQnBCLFlBQVksRUFqQkYsT0FBTTtDQWtCckI7O0F5QnVDSCxBQUFBLGNBQWMsQXpCckNYLE9BQU8sRXlCcUNWLEFBQUEsY0FBYyxBekJwQ1gsT0FBTztBQUNSLEF5Qm1DRixLekJuQ08sR3lCbUNQLGNBQWMsQXpCbkNILGdCQUFnQixDQUFDO0VBQ3hCLEtBQUssRWhCY21CLE9BQU87RWdCYi9CLGdCQUFnQixFQXpCRSxPQUFNO0VBMEJwQixZQUFZLEVBekJGLE9BQU07RUEyQnBCLGdCQUFnQixFQUFFLElBQUs7Q0FVeEI7O0F5Qm9CSCxBQUFBLGNBQWMsQXpCckNYLE9BQU8sQUFVTCxNQUFNLEV5QjJCWCxBQUFBLGNBQWMsQXpCckNYLE9BQU8sQUFXTCxNQUFNLEV5QjBCWCxBQUFBLGNBQWMsQXpCckNYLE9BQU8sQUFZTCxNQUFNLEV5QnlCWCxBQUFBLGNBQWMsQXpCcENYLE9BQU8sQUFTTCxNQUFNLEV5QjJCWCxBQUFBLGNBQWMsQXpCcENYLE9BQU8sQUFVTCxNQUFNLEV5QjBCWCxBQUFBLGNBQWMsQXpCcENYLE9BQU8sQUFXTCxNQUFNO0FBVlQsQXlCbUNGLEt6Qm5DTyxHeUJtQ1AsY0FBYyxBekJuQ0gsZ0JBQWdCLEFBUXRCLE1BQU07QUFSVCxBeUJtQ0YsS3pCbkNPLEd5Qm1DUCxjQUFjLEF6Qm5DSCxnQkFBZ0IsQUFTdEIsTUFBTTtBQVRULEF5Qm1DRixLekJuQ08sR3lCbUNQLGNBQWMsQXpCbkNILGdCQUFnQixBQVV0QixNQUFNLENBQUM7RUFDTixLQUFLLEVoQklpQixPQUFPO0VnQkg3QixnQkFBZ0IsRUFBRSxPQUFNO0VBQ3BCLFlBQVksRUFBRSxPQUFNO0NBQ3pCOztBeUJxQkwsQUFBQSxjQUFjLEF6QmxCWCxTQUFTLEFBRVAsTUFBTSxFeUJnQlgsQUFBQSxjQUFjLEF6QmxCWCxTQUFTLEFBR1AsTUFBTSxFeUJlWCxBQUFBLGNBQWMsQXpCakJYLFNBQVMsQUFDUCxNQUFNLEV5QmdCWCxBQUFBLGNBQWMsQXpCakJYLFNBQVMsQUFFUCxNQUFNLENBQUM7RUFDTixnQkFBZ0IsRWhCdU9XLElBQUk7RWdCdE8zQixZQUFZLEVoQnVPVyxJQUFJO0NnQnRPaEM7O0F5QllMLEFBQUEsY0FBYyxBekJsQlgsU0FBUyxBYnBDUCxNQUFNLEVzQ3NEWCxBQUFBLGNBQWMsQXpCakJYLFNBQVMsQWJyQ1AsTUFBTSxDQUFDO0VhNENOLGdCQUFnQixFaEJtT1csSUFBSTtFZ0JsTzNCLFlBQVksRWhCbU9XLElBQUk7Q0doUlo7O0FzQ3lEekIsQUFBQSxTQUFTLENBQUM7RXpCMURSLEtBQUssRWhCbVIwQixJQUFJO0VnQmxSbkMsZ0JBQWdCLEVuQmtERixPQUFPO0VtQmpEckIsWUFBWSxFbkJpREUsT0FBTztDNENTdEI7O0FBRkQsQUFBQSxTQUFTLEF0Q3pESixNQUFNLENBQUM7RWFLUixLQUFLLEVoQjZRd0IsSUFBSTtFZ0I1UWpDLGdCQUFnQixFQVZFLE9BQU07RUFXcEIsWUFBWSxFQVZGLE9BQU07Q2JHQzs7QXNDeUR6QixBQUFBLFNBQVMsQXpCL0NOLE1BQU0sRXlCK0NULEFBQUEsU0FBUyxBekI5Q04sTUFBTSxDQUFDO0VBQ04sS0FBSyxFaEJzUXdCLElBQUk7RWdCclFqQyxnQkFBZ0IsRUFqQkUsT0FBTTtFQWtCcEIsWUFBWSxFQWpCRixPQUFNO0NBa0JyQjs7QXlCMENILEFBQUEsU0FBUyxBekJ4Q04sT0FBTyxFeUJ3Q1YsQUFBQSxTQUFTLEF6QnZDTixPQUFPO0FBQ1IsQXlCc0NGLEt6QnRDTyxHeUJzQ1AsU0FBUyxBekJ0Q0UsZ0JBQWdCLENBQUM7RUFDeEIsS0FBSyxFaEI4UHdCLElBQUk7RWdCN1BqQyxnQkFBZ0IsRUF6QkUsT0FBTTtFQTBCcEIsWUFBWSxFQXpCRixPQUFNO0VBMkJwQixnQkFBZ0IsRUFBRSxJQUFLO0NBVXhCOztBeUJ1QkgsQUFBQSxTQUFTLEF6QnhDTixPQUFPLEFBVUwsTUFBTSxFeUI4QlgsQUFBQSxTQUFTLEF6QnhDTixPQUFPLEFBV0wsTUFBTSxFeUI2QlgsQUFBQSxTQUFTLEF6QnhDTixPQUFPLEFBWUwsTUFBTSxFeUI0QlgsQUFBQSxTQUFTLEF6QnZDTixPQUFPLEFBU0wsTUFBTSxFeUI4QlgsQUFBQSxTQUFTLEF6QnZDTixPQUFPLEFBVUwsTUFBTSxFeUI2QlgsQUFBQSxTQUFTLEF6QnZDTixPQUFPLEFBV0wsTUFBTTtBQVZULEF5QnNDRixLekJ0Q08sR3lCc0NQLFNBQVMsQXpCdENFLGdCQUFnQixBQVF0QixNQUFNO0FBUlQsQXlCc0NGLEt6QnRDTyxHeUJzQ1AsU0FBUyxBekJ0Q0UsZ0JBQWdCLEFBU3RCLE1BQU07QUFUVCxBeUJzQ0YsS3pCdENPLEd5QnNDUCxTQUFTLEF6QnRDRSxnQkFBZ0IsQUFVdEIsTUFBTSxDQUFDO0VBQ04sS0FBSyxFaEJvUHNCLElBQUk7RWdCblAvQixnQkFBZ0IsRUFBRSxPQUFNO0VBQ3BCLFlBQVksRUFBRSxPQUFNO0NBQ3pCOztBeUJ3QkwsQUFBQSxTQUFTLEF6QnJCTixTQUFTLEFBRVAsTUFBTSxFeUJtQlgsQUFBQSxTQUFTLEF6QnJCTixTQUFTLEFBR1AsTUFBTSxFeUJrQlgsQUFBQSxTQUFTLEF6QnBCTixTQUFTLEFBQ1AsTUFBTSxFeUJtQlgsQUFBQSxTQUFTLEF6QnBCTixTQUFTLEFBRVAsTUFBTSxDQUFDO0VBQ04sZ0JBQWdCLEVuQlVOLE9BQU87RW1CVGIsWUFBWSxFbkJTTixPQUFPO0NtQlJsQjs7QXlCZUwsQUFBQSxTQUFTLEF6QnJCTixTQUFTLEFicENQLE1BQU0sRXNDeURYLEFBQUEsU0FBUyxBekJwQk4sU0FBUyxBYnJDUCxNQUFNLENBQUM7RWE0Q04sZ0JBQWdCLEVuQk1OLE9BQU87RW1CTGIsWUFBWSxFbkJLTixPQUFPO0NNbERFOztBc0M0RHpCLEFBQUEsWUFBWSxDQUFDO0V6QjdEWCxLQUFLLEVoQnVSMEIsSUFBSTtFZ0J0Um5DLGdCQUFnQixFbkJpREYsT0FBTztFbUJoRHJCLFlBQVksRW5CZ0RFLE9BQU87QzRDYXRCOztBQUZELEFBQUEsWUFBWSxBdEM1RFAsTUFBTSxDQUFDO0VhS1IsS0FBSyxFaEJpUndCLElBQUk7RWdCaFJqQyxnQkFBZ0IsRUFWRSxPQUFNO0VBV3BCLFlBQVksRUFWRixPQUFNO0NiR0M7O0FzQzREekIsQUFBQSxZQUFZLEF6QmxEVCxNQUFNLEV5QmtEVCxBQUFBLFlBQVksQXpCakRULE1BQU0sQ0FBQztFQUNOLEtBQUssRWhCMFF3QixJQUFJO0VnQnpRakMsZ0JBQWdCLEVBakJFLE9BQU07RUFrQnBCLFlBQVksRUFqQkYsT0FBTTtDQWtCckI7O0F5QjZDSCxBQUFBLFlBQVksQXpCM0NULE9BQU8sRXlCMkNWLEFBQUEsWUFBWSxBekIxQ1QsT0FBTztBQUNSLEF5QnlDRixLekJ6Q08sR3lCeUNQLFlBQVksQXpCekNELGdCQUFnQixDQUFDO0VBQ3hCLEtBQUssRWhCa1F3QixJQUFJO0VnQmpRakMsZ0JBQWdCLEVBekJFLE9BQU07RUEwQnBCLFlBQVksRUF6QkYsT0FBTTtFQTJCcEIsZ0JBQWdCLEVBQUUsSUFBSztDQVV4Qjs7QXlCMEJILEFBQUEsWUFBWSxBekIzQ1QsT0FBTyxBQVVMLE1BQU0sRXlCaUNYLEFBQUEsWUFBWSxBekIzQ1QsT0FBTyxBQVdMLE1BQU0sRXlCZ0NYLEFBQUEsWUFBWSxBekIzQ1QsT0FBTyxBQVlMLE1BQU0sRXlCK0JYLEFBQUEsWUFBWSxBekIxQ1QsT0FBTyxBQVNMLE1BQU0sRXlCaUNYLEFBQUEsWUFBWSxBekIxQ1QsT0FBTyxBQVVMLE1BQU0sRXlCZ0NYLEFBQUEsWUFBWSxBekIxQ1QsT0FBTyxBQVdMLE1BQU07QUFWVCxBeUJ5Q0YsS3pCekNPLEd5QnlDUCxZQUFZLEF6QnpDRCxnQkFBZ0IsQUFRdEIsTUFBTTtBQVJULEF5QnlDRixLekJ6Q08sR3lCeUNQLFlBQVksQXpCekNELGdCQUFnQixBQVN0QixNQUFNO0FBVFQsQXlCeUNGLEt6QnpDTyxHeUJ5Q1AsWUFBWSxBekJ6Q0QsZ0JBQWdCLEFBVXRCLE1BQU0sQ0FBQztFQUNOLEtBQUssRWhCd1BzQixJQUFJO0VnQnZQL0IsZ0JBQWdCLEVBQUUsT0FBTTtFQUNwQixZQUFZLEVBQUUsT0FBTTtDQUN6Qjs7QXlCMkJMLEFBQUEsWUFBWSxBekJ4QlQsU0FBUyxBQUVQLE1BQU0sRXlCc0JYLEFBQUEsWUFBWSxBekJ4QlQsU0FBUyxBQUdQLE1BQU0sRXlCcUJYLEFBQUEsWUFBWSxBekJ2QlQsU0FBUyxBQUNQLE1BQU0sRXlCc0JYLEFBQUEsWUFBWSxBekJ2QlQsU0FBUyxBQUVQLE1BQU0sQ0FBQztFQUNOLGdCQUFnQixFbkJTTixPQUFPO0VtQlJiLFlBQVksRW5CUU4sT0FBTztDbUJQbEI7O0F5QmtCTCxBQUFBLFlBQVksQXpCeEJULFNBQVMsQWJwQ1AsTUFBTSxFc0M0RFgsQUFBQSxZQUFZLEF6QnZCVCxTQUFTLEFickNQLE1BQU0sQ0FBQztFYTRDTixnQkFBZ0IsRW5CS04sT0FBTztFbUJKYixZQUFZLEVuQklOLE9BQU87Q01qREU7O0FzQytEekIsQUFBQSxZQUFZLENBQUM7RXpCaEVYLEtBQUssRWhCMlIwQixJQUFJO0VnQjFSbkMsZ0JBQWdCLEVuQm1ERixPQUFPO0VtQmxEckIsWUFBWSxFbkJrREUsT0FBTztDNENjdEI7O0FBRkQsQUFBQSxZQUFZLEF0Qy9EUCxNQUFNLENBQUM7RWFLUixLQUFLLEVoQnFSd0IsSUFBSTtFZ0JwUmpDLGdCQUFnQixFQVZFLE9BQU07RUFXcEIsWUFBWSxFQVZGLE9BQU07Q2JHQzs7QXNDK0R6QixBQUFBLFlBQVksQXpCckRULE1BQU0sRXlCcURULEFBQUEsWUFBWSxBekJwRFQsTUFBTSxDQUFDO0VBQ04sS0FBSyxFaEI4UXdCLElBQUk7RWdCN1FqQyxnQkFBZ0IsRUFqQkUsT0FBTTtFQWtCcEIsWUFBWSxFQWpCRixPQUFNO0NBa0JyQjs7QXlCZ0RILEFBQUEsWUFBWSxBekI5Q1QsT0FBTyxFeUI4Q1YsQUFBQSxZQUFZLEF6QjdDVCxPQUFPO0FBQ1IsQXlCNENGLEt6QjVDTyxHeUI0Q1AsWUFBWSxBekI1Q0QsZ0JBQWdCLENBQUM7RUFDeEIsS0FBSyxFaEJzUXdCLElBQUk7RWdCclFqQyxnQkFBZ0IsRUF6QkUsT0FBTTtFQTBCcEIsWUFBWSxFQXpCRixPQUFNO0VBMkJwQixnQkFBZ0IsRUFBRSxJQUFLO0NBVXhCOztBeUI2QkgsQUFBQSxZQUFZLEF6QjlDVCxPQUFPLEFBVUwsTUFBTSxFeUJvQ1gsQUFBQSxZQUFZLEF6QjlDVCxPQUFPLEFBV0wsTUFBTSxFeUJtQ1gsQUFBQSxZQUFZLEF6QjlDVCxPQUFPLEFBWUwsTUFBTSxFeUJrQ1gsQUFBQSxZQUFZLEF6QjdDVCxPQUFPLEFBU0wsTUFBTSxFeUJvQ1gsQUFBQSxZQUFZLEF6QjdDVCxPQUFPLEFBVUwsTUFBTSxFeUJtQ1gsQUFBQSxZQUFZLEF6QjdDVCxPQUFPLEFBV0wsTUFBTTtBQVZULEF5QjRDRixLekI1Q08sR3lCNENQLFlBQVksQXpCNUNELGdCQUFnQixBQVF0QixNQUFNO0FBUlQsQXlCNENGLEt6QjVDTyxHeUI0Q1AsWUFBWSxBekI1Q0QsZ0JBQWdCLEFBU3RCLE1BQU07QUFUVCxBeUI0Q0YsS3pCNUNPLEd5QjRDUCxZQUFZLEF6QjVDRCxnQkFBZ0IsQUFVdEIsTUFBTSxDQUFDO0VBQ04sS0FBSyxFaEI0UHNCLElBQUk7RWdCM1AvQixnQkFBZ0IsRUFBRSxPQUFNO0VBQ3BCLFlBQVksRUFBRSxPQUFNO0NBQ3pCOztBeUI4QkwsQUFBQSxZQUFZLEF6QjNCVCxTQUFTLEFBRVAsTUFBTSxFeUJ5QlgsQUFBQSxZQUFZLEF6QjNCVCxTQUFTLEFBR1AsTUFBTSxFeUJ3QlgsQUFBQSxZQUFZLEF6QjFCVCxTQUFTLEFBQ1AsTUFBTSxFeUJ5QlgsQUFBQSxZQUFZLEF6QjFCVCxTQUFTLEFBRVAsTUFBTSxDQUFDO0VBQ04sZ0JBQWdCLEVuQldOLE9BQU87RW1CVmIsWUFBWSxFbkJVTixPQUFPO0NtQlRsQjs7QXlCcUJMLEFBQUEsWUFBWSxBekIzQlQsU0FBUyxBYnBDUCxNQUFNLEVzQytEWCxBQUFBLFlBQVksQXpCMUJULFNBQVMsQWJyQ1AsTUFBTSxDQUFDO0VhNENOLGdCQUFnQixFbkJPTixPQUFPO0VtQk5iLFlBQVksRW5CTU4sT0FBTztDTW5ERTs7QXNDa0V6QixBQUFBLFdBQVcsQ0FBQztFekJuRVYsS0FBSyxFaEIrUjBCLElBQUk7RWdCOVJuQyxnQkFBZ0IsRW5CZ0RBLE9BQU87RW1CL0N2QixZQUFZLEVuQitDSSxPQUFPO0M0Q29CeEI7O0FBRkQsQUFBQSxXQUFXLEF0Q2xFTixNQUFNLENBQUM7RWFLUixLQUFLLEVoQnlSd0IsSUFBSTtFZ0J4UmpDLGdCQUFnQixFQVZFLE9BQU07RUFXcEIsWUFBWSxFQVZGLE9BQU07Q2JHQzs7QXNDa0V6QixBQUFBLFdBQVcsQXpCeERSLE1BQU0sRXlCd0RULEFBQUEsV0FBVyxBekJ2RFIsTUFBTSxDQUFDO0VBQ04sS0FBSyxFaEJrUndCLElBQUk7RWdCalJqQyxnQkFBZ0IsRUFqQkUsT0FBTTtFQWtCcEIsWUFBWSxFQWpCRixPQUFNO0NBa0JyQjs7QXlCbURILEFBQUEsV0FBVyxBekJqRFIsT0FBTyxFeUJpRFYsQUFBQSxXQUFXLEF6QmhEUixPQUFPO0FBQ1IsQXlCK0NGLEt6Qi9DTyxHeUIrQ1AsV0FBVyxBekIvQ0EsZ0JBQWdCLENBQUM7RUFDeEIsS0FBSyxFaEIwUXdCLElBQUk7RWdCelFqQyxnQkFBZ0IsRUF6QkUsT0FBTTtFQTBCcEIsWUFBWSxFQXpCRixPQUFNO0VBMkJwQixnQkFBZ0IsRUFBRSxJQUFLO0NBVXhCOztBeUJnQ0gsQUFBQSxXQUFXLEF6QmpEUixPQUFPLEFBVUwsTUFBTSxFeUJ1Q1gsQUFBQSxXQUFXLEF6QmpEUixPQUFPLEFBV0wsTUFBTSxFeUJzQ1gsQUFBQSxXQUFXLEF6QmpEUixPQUFPLEFBWUwsTUFBTSxFeUJxQ1gsQUFBQSxXQUFXLEF6QmhEUixPQUFPLEFBU0wsTUFBTSxFeUJ1Q1gsQUFBQSxXQUFXLEF6QmhEUixPQUFPLEFBVUwsTUFBTSxFeUJzQ1gsQUFBQSxXQUFXLEF6QmhEUixPQUFPLEFBV0wsTUFBTTtBQVZULEF5QitDRixLekIvQ08sR3lCK0NQLFdBQVcsQXpCL0NBLGdCQUFnQixBQVF0QixNQUFNO0FBUlQsQXlCK0NGLEt6Qi9DTyxHeUIrQ1AsV0FBVyxBekIvQ0EsZ0JBQWdCLEFBU3RCLE1BQU07QUFUVCxBeUIrQ0YsS3pCL0NPLEd5QitDUCxXQUFXLEF6Qi9DQSxnQkFBZ0IsQUFVdEIsTUFBTSxDQUFDO0VBQ04sS0FBSyxFaEJnUXNCLElBQUk7RWdCL1AvQixnQkFBZ0IsRUFBRSxPQUFNO0VBQ3BCLFlBQVksRUFBRSxPQUFNO0NBQ3pCOztBeUJpQ0wsQUFBQSxXQUFXLEF6QjlCUixTQUFTLEFBRVAsTUFBTSxFeUI0QlgsQUFBQSxXQUFXLEF6QjlCUixTQUFTLEFBR1AsTUFBTSxFeUIyQlgsQUFBQSxXQUFXLEF6QjdCUixTQUFTLEFBQ1AsTUFBTSxFeUI0QlgsQUFBQSxXQUFXLEF6QjdCUixTQUFTLEFBRVAsTUFBTSxDQUFDO0VBQ04sZ0JBQWdCLEVuQlFKLE9BQU87RW1CUGYsWUFBWSxFbkJPSixPQUFPO0NtQk5wQjs7QXlCd0JMLEFBQUEsV0FBVyxBekI5QlIsU0FBUyxBYnBDUCxNQUFNLEVzQ2tFWCxBQUFBLFdBQVcsQXpCN0JSLFNBQVMsQWJyQ1AsTUFBTSxDQUFDO0VhNENOLGdCQUFnQixFbkJJSixPQUFPO0VtQkhmLFlBQVksRW5CR0osT0FBTztDTWhEQTs7QXNDdUV6QixBQUFBLG9CQUFvQixDQUFDO0V6QnBCbkIsS0FBSyxFbkJKUyxPQUFPO0VtQktyQixnQkFBZ0IsRUFBRSxJQUFLO0VBQ3ZCLGdCQUFnQixFQUFFLFdBQVk7RUFDOUIsWUFBWSxFbkJQRSxPQUFPO0M0QzBCdEI7O0FBRkQsQUFBQSxvQkFBb0IsQXRDdkVmLE1BQU0sQ0FBQztFYXlEUixLQUFLLEVBQUUsSUFBSztFQUNaLGdCQUFnQixFbkJYSixPQUFPO0VtQllmLFlBQVksRW5CWkosT0FBTztDTS9DRTs7QXNDdUV6QixBQUFBLG9CQUFvQixBekJUakIsTUFBTSxFeUJTVCxBQUFBLG9CQUFvQixBekJSakIsTUFBTSxDQUFDO0VBQ04sS0FBSyxFQUFFLElBQUs7RUFDWixnQkFBZ0IsRW5CbEJKLE9BQU87RW1CbUJmLFlBQVksRW5CbkJKLE9BQU87Q21Cb0JwQjs7QXlCSUgsQUFBQSxvQkFBb0IsQXpCRmpCLE9BQU8sRXlCRVYsQUFBQSxvQkFBb0IsQXpCRGpCLE9BQU87QUFDUixBeUJBRixLekJBTyxHeUJBUCxvQkFBb0IsQXpCQVQsZ0JBQWdCLENBQUM7RUFDeEIsS0FBSyxFQUFFLElBQUs7RUFDWixnQkFBZ0IsRW5CMUJKLE9BQU87RW1CMkJmLFlBQVksRW5CM0JKLE9BQU87Q21Cb0NwQjs7QXlCWkgsQUFBQSxvQkFBb0IsQXpCRmpCLE9BQU8sQUFPTCxNQUFNLEV5QkxYLEFBQUEsb0JBQW9CLEF6QkZqQixPQUFPLEFBUUwsTUFBTSxFeUJOWCxBQUFBLG9CQUFvQixBekJGakIsT0FBTyxBQVNMLE1BQU0sRXlCUFgsQUFBQSxvQkFBb0IsQXpCRGpCLE9BQU8sQUFNTCxNQUFNLEV5QkxYLEFBQUEsb0JBQW9CLEF6QkRqQixPQUFPLEFBT0wsTUFBTSxFeUJOWCxBQUFBLG9CQUFvQixBekJEakIsT0FBTyxBQVFMLE1BQU07QUFQVCxBeUJBRixLekJBTyxHeUJBUCxvQkFBb0IsQXpCQVQsZ0JBQWdCLEFBS3RCLE1BQU07QUFMVCxBeUJBRixLekJBTyxHeUJBUCxvQkFBb0IsQXpCQVQsZ0JBQWdCLEFBTXRCLE1BQU07QUFOVCxBeUJBRixLekJBTyxHeUJBUCxvQkFBb0IsQXpCQVQsZ0JBQWdCLEFBT3RCLE1BQU0sQ0FBQztFQUNOLEtBQUssRUFBRSxJQUFLO0VBQ1osZ0JBQWdCLEVBQUUsT0FBTTtFQUNwQixZQUFZLEVBQUUsS0FBTTtDQUN6Qjs7QXlCWEwsQUFBQSxvQkFBb0IsQXpCY2pCLFNBQVMsQUFFUCxNQUFNLEV5QmhCWCxBQUFBLG9CQUFvQixBekJjakIsU0FBUyxBQUdQLE1BQU0sRXlCakJYLEFBQUEsb0JBQW9CLEF6QmVqQixTQUFTLEFBQ1AsTUFBTSxFeUJoQlgsQUFBQSxvQkFBb0IsQXpCZWpCLFNBQVMsQUFFUCxNQUFNLENBQUM7RUFDTixZQUFZLEVBQUUsT0FBTztDQUN0Qjs7QXlCbkJMLEFBQUEsb0JBQW9CLEF6QmNqQixTQUFTLEFickZQLE1BQU0sRXNDdUVYLEFBQUEsb0JBQW9CLEF6QmVqQixTQUFTLEFidEZQLE1BQU0sQ0FBQztFYTRGTixZQUFZLEVBQUUsT0FBTztDYjVGRjs7QXNDMEV6QixBQUFBLHNCQUFzQixDQUFDO0V6QnZCckIsS0FBSyxFaEI2TjBCLElBQUk7RWdCNU5uQyxnQkFBZ0IsRUFBRSxJQUFLO0VBQ3ZCLGdCQUFnQixFQUFFLFdBQVk7RUFDOUIsWUFBWSxFaEIwTm1CLElBQUk7Q3lDcE1wQzs7QUFGRCxBQUFBLHNCQUFzQixBdEMxRWpCLE1BQU0sQ0FBQztFYXlEUixLQUFLLEVBQUUsSUFBSztFQUNaLGdCQUFnQixFaEJzTmEsSUFBSTtFZ0JyTjdCLFlBQVksRWhCcU5hLElBQUk7Q0doUlo7O0FzQzBFekIsQUFBQSxzQkFBc0IsQXpCWm5CLE1BQU0sRXlCWVQsQUFBQSxzQkFBc0IsQXpCWG5CLE1BQU0sQ0FBQztFQUNOLEtBQUssRUFBRSxJQUFLO0VBQ1osZ0JBQWdCLEVoQitNYSxJQUFJO0VnQjlNN0IsWUFBWSxFaEI4TWEsSUFBSTtDZ0I3TWxDOztBeUJPSCxBQUFBLHNCQUFzQixBekJMbkIsT0FBTyxFeUJLVixBQUFBLHNCQUFzQixBekJKbkIsT0FBTztBQUNSLEF5QkdGLEt6QkhPLEd5QkdQLHNCQUFzQixBekJIWCxnQkFBZ0IsQ0FBQztFQUN4QixLQUFLLEVBQUUsSUFBSztFQUNaLGdCQUFnQixFaEJ1TWEsSUFBSTtFZ0J0TTdCLFlBQVksRWhCc01hLElBQUk7Q2dCN0xsQzs7QXlCVEgsQUFBQSxzQkFBc0IsQXpCTG5CLE9BQU8sQUFPTCxNQUFNLEV5QkZYLEFBQUEsc0JBQXNCLEF6QkxuQixPQUFPLEFBUUwsTUFBTSxFeUJIWCxBQUFBLHNCQUFzQixBekJMbkIsT0FBTyxBQVNMLE1BQU0sRXlCSlgsQUFBQSxzQkFBc0IsQXpCSm5CLE9BQU8sQUFNTCxNQUFNLEV5QkZYLEFBQUEsc0JBQXNCLEF6QkpuQixPQUFPLEFBT0wsTUFBTSxFeUJIWCxBQUFBLHNCQUFzQixBekJKbkIsT0FBTyxBQVFMLE1BQU07QUFQVCxBeUJHRixLekJITyxHeUJHUCxzQkFBc0IsQXpCSFgsZ0JBQWdCLEFBS3RCLE1BQU07QUFMVCxBeUJHRixLekJITyxHeUJHUCxzQkFBc0IsQXpCSFgsZ0JBQWdCLEFBTXRCLE1BQU07QUFOVCxBeUJHRixLekJITyxHeUJHUCxzQkFBc0IsQXpCSFgsZ0JBQWdCLEFBT3RCLE1BQU0sQ0FBQztFQUNOLEtBQUssRUFBRSxJQUFLO0VBQ1osZ0JBQWdCLEVBQUUsT0FBTTtFQUNwQixZQUFZLEVBQUUsT0FBTTtDQUN6Qjs7QXlCUkwsQUFBQSxzQkFBc0IsQXpCV25CLFNBQVMsQUFFUCxNQUFNLEV5QmJYLEFBQUEsc0JBQXNCLEF6QlduQixTQUFTLEFBR1AsTUFBTSxFeUJkWCxBQUFBLHNCQUFzQixBekJZbkIsU0FBUyxBQUNQLE1BQU0sRXlCYlgsQUFBQSxzQkFBc0IsQXpCWW5CLFNBQVMsQUFFUCxNQUFNLENBQUM7RUFDTixZQUFZLEVBQUUsS0FBTztDQUN0Qjs7QXlCaEJMLEFBQUEsc0JBQXNCLEF6QlduQixTQUFTLEFickZQLE1BQU0sRXNDMEVYLEFBQUEsc0JBQXNCLEF6QlluQixTQUFTLEFidEZQLE1BQU0sQ0FBQztFYTRGTixZQUFZLEVBQUUsS0FBTztDYjVGRjs7QXNDNkV6QixBQUFBLGlCQUFpQixDQUFDO0V6QjFCaEIsS0FBSyxFbkJEUyxPQUFPO0VtQkVyQixnQkFBZ0IsRUFBRSxJQUFLO0VBQ3ZCLGdCQUFnQixFQUFFLFdBQVk7RUFDOUIsWUFBWSxFbkJKRSxPQUFPO0M0QzZCdEI7O0FBRkQsQUFBQSxpQkFBaUIsQXRDN0VaLE1BQU0sQ0FBQztFYXlEUixLQUFLLEVBQUUsSUFBSztFQUNaLGdCQUFnQixFbkJSSixPQUFPO0VtQlNmLFlBQVksRW5CVEosT0FBTztDTWxERTs7QXNDNkV6QixBQUFBLGlCQUFpQixBekJmZCxNQUFNLEV5QmVULEFBQUEsaUJBQWlCLEF6QmRkLE1BQU0sQ0FBQztFQUNOLEtBQUssRUFBRSxJQUFLO0VBQ1osZ0JBQWdCLEVuQmZKLE9BQU87RW1CZ0JmLFlBQVksRW5CaEJKLE9BQU87Q21CaUJwQjs7QXlCVUgsQUFBQSxpQkFBaUIsQXpCUmQsT0FBTyxFeUJRVixBQUFBLGlCQUFpQixBekJQZCxPQUFPO0FBQ1IsQXlCTUYsS3pCTk8sR3lCTVAsaUJBQWlCLEF6Qk5OLGdCQUFnQixDQUFDO0VBQ3hCLEtBQUssRUFBRSxJQUFLO0VBQ1osZ0JBQWdCLEVuQnZCSixPQUFPO0VtQndCZixZQUFZLEVuQnhCSixPQUFPO0NtQmlDcEI7O0F5Qk5ILEFBQUEsaUJBQWlCLEF6QlJkLE9BQU8sQUFPTCxNQUFNLEV5QkNYLEFBQUEsaUJBQWlCLEF6QlJkLE9BQU8sQUFRTCxNQUFNLEV5QkFYLEFBQUEsaUJBQWlCLEF6QlJkLE9BQU8sQUFTTCxNQUFNLEV5QkRYLEFBQUEsaUJBQWlCLEF6QlBkLE9BQU8sQUFNTCxNQUFNLEV5QkNYLEFBQUEsaUJBQWlCLEF6QlBkLE9BQU8sQUFPTCxNQUFNLEV5QkFYLEFBQUEsaUJBQWlCLEF6QlBkLE9BQU8sQUFRTCxNQUFNO0FBUFQsQXlCTUYsS3pCTk8sR3lCTVAsaUJBQWlCLEF6Qk5OLGdCQUFnQixBQUt0QixNQUFNO0FBTFQsQXlCTUYsS3pCTk8sR3lCTVAsaUJBQWlCLEF6Qk5OLGdCQUFnQixBQU10QixNQUFNO0FBTlQsQXlCTUYsS3pCTk8sR3lCTVAsaUJBQWlCLEF6Qk5OLGdCQUFnQixBQU90QixNQUFNLENBQUM7RUFDTixLQUFLLEVBQUUsSUFBSztFQUNaLGdCQUFnQixFQUFFLE9BQU07RUFDcEIsWUFBWSxFQUFFLE9BQU07Q0FDekI7O0F5QkxMLEFBQUEsaUJBQWlCLEF6QlFkLFNBQVMsQUFFUCxNQUFNLEV5QlZYLEFBQUEsaUJBQWlCLEF6QlFkLFNBQVMsQUFHUCxNQUFNLEV5QlhYLEFBQUEsaUJBQWlCLEF6QlNkLFNBQVMsQUFDUCxNQUFNLEV5QlZYLEFBQUEsaUJBQWlCLEF6QlNkLFNBQVMsQUFFUCxNQUFNLENBQUM7RUFDTixZQUFZLEVBQUUsT0FBTztDQUN0Qjs7QXlCYkwsQUFBQSxpQkFBaUIsQXpCUWQsU0FBUyxBYnJGUCxNQUFNLEVzQzZFWCxBQUFBLGlCQUFpQixBekJTZCxTQUFTLEFidEZQLE1BQU0sQ0FBQztFYTRGTixZQUFZLEVBQUUsT0FBTztDYjVGRjs7QXNDZ0Z6QixBQUFBLG9CQUFvQixDQUFDO0V6QjdCbkIsS0FBSyxFbkJGUyxPQUFPO0VtQkdyQixnQkFBZ0IsRUFBRSxJQUFLO0VBQ3ZCLGdCQUFnQixFQUFFLFdBQVk7RUFDOUIsWUFBWSxFbkJMRSxPQUFPO0M0Q2lDdEI7O0FBRkQsQUFBQSxvQkFBb0IsQXRDaEZmLE1BQU0sQ0FBQztFYXlEUixLQUFLLEVBQUUsSUFBSztFQUNaLGdCQUFnQixFbkJUSixPQUFPO0VtQlVmLFlBQVksRW5CVkosT0FBTztDTWpERTs7QXNDZ0Z6QixBQUFBLG9CQUFvQixBekJsQmpCLE1BQU0sRXlCa0JULEFBQUEsb0JBQW9CLEF6QmpCakIsTUFBTSxDQUFDO0VBQ04sS0FBSyxFQUFFLElBQUs7RUFDWixnQkFBZ0IsRW5CaEJKLE9BQU87RW1CaUJmLFlBQVksRW5CakJKLE9BQU87Q21Ca0JwQjs7QXlCYUgsQUFBQSxvQkFBb0IsQXpCWGpCLE9BQU8sRXlCV1YsQUFBQSxvQkFBb0IsQXpCVmpCLE9BQU87QUFDUixBeUJTRixLekJUTyxHeUJTUCxvQkFBb0IsQXpCVFQsZ0JBQWdCLENBQUM7RUFDeEIsS0FBSyxFQUFFLElBQUs7RUFDWixnQkFBZ0IsRW5CeEJKLE9BQU87RW1CeUJmLFlBQVksRW5CekJKLE9BQU87Q21Ca0NwQjs7QXlCSEgsQUFBQSxvQkFBb0IsQXpCWGpCLE9BQU8sQUFPTCxNQUFNLEV5QklYLEFBQUEsb0JBQW9CLEF6QlhqQixPQUFPLEFBUUwsTUFBTSxFeUJHWCxBQUFBLG9CQUFvQixBekJYakIsT0FBTyxBQVNMLE1BQU0sRXlCRVgsQUFBQSxvQkFBb0IsQXpCVmpCLE9BQU8sQUFNTCxNQUFNLEV5QklYLEFBQUEsb0JBQW9CLEF6QlZqQixPQUFPLEFBT0wsTUFBTSxFeUJHWCxBQUFBLG9CQUFvQixBekJWakIsT0FBTyxBQVFMLE1BQU07QUFQVCxBeUJTRixLekJUTyxHeUJTUCxvQkFBb0IsQXpCVFQsZ0JBQWdCLEFBS3RCLE1BQU07QUFMVCxBeUJTRixLekJUTyxHeUJTUCxvQkFBb0IsQXpCVFQsZ0JBQWdCLEFBTXRCLE1BQU07QUFOVCxBeUJTRixLekJUTyxHeUJTUCxvQkFBb0IsQXpCVFQsZ0JBQWdCLEFBT3RCLE1BQU0sQ0FBQztFQUNOLEtBQUssRUFBRSxJQUFLO0VBQ1osZ0JBQWdCLEVBQUUsT0FBTTtFQUNwQixZQUFZLEVBQUUsT0FBTTtDQUN6Qjs7QXlCRkwsQUFBQSxvQkFBb0IsQXpCS2pCLFNBQVMsQUFFUCxNQUFNLEV5QlBYLEFBQUEsb0JBQW9CLEF6QktqQixTQUFTLEFBR1AsTUFBTSxFeUJSWCxBQUFBLG9CQUFvQixBekJNakIsU0FBUyxBQUNQLE1BQU0sRXlCUFgsQUFBQSxvQkFBb0IsQXpCTWpCLFNBQVMsQUFFUCxNQUFNLENBQUM7RUFDTixZQUFZLEVBQUUsT0FBTztDQUN0Qjs7QXlCVkwsQUFBQSxvQkFBb0IsQXpCS2pCLFNBQVMsQWJyRlAsTUFBTSxFc0NnRlgsQUFBQSxvQkFBb0IsQXpCTWpCLFNBQVMsQWJ0RlAsTUFBTSxDQUFDO0VhNEZOLFlBQVksRUFBRSxPQUFPO0NiNUZGOztBc0NtRnpCLEFBQUEsb0JBQW9CLENBQUM7RXpCaENuQixLQUFLLEVuQkFTLE9BQU87RW1CQ3JCLGdCQUFnQixFQUFFLElBQUs7RUFDdkIsZ0JBQWdCLEVBQUUsV0FBWTtFQUM5QixZQUFZLEVuQkhFLE9BQU87QzRDa0N0Qjs7QUFGRCxBQUFBLG9CQUFvQixBdENuRmYsTUFBTSxDQUFDO0VheURSLEtBQUssRUFBRSxJQUFLO0VBQ1osZ0JBQWdCLEVuQlBKLE9BQU87RW1CUWYsWUFBWSxFbkJSSixPQUFPO0NNbkRFOztBc0NtRnpCLEFBQUEsb0JBQW9CLEF6QnJCakIsTUFBTSxFeUJxQlQsQUFBQSxvQkFBb0IsQXpCcEJqQixNQUFNLENBQUM7RUFDTixLQUFLLEVBQUUsSUFBSztFQUNaLGdCQUFnQixFbkJkSixPQUFPO0VtQmVmLFlBQVksRW5CZkosT0FBTztDbUJnQnBCOztBeUJnQkgsQUFBQSxvQkFBb0IsQXpCZGpCLE9BQU8sRXlCY1YsQUFBQSxvQkFBb0IsQXpCYmpCLE9BQU87QUFDUixBeUJZRixLekJaTyxHeUJZUCxvQkFBb0IsQXpCWlQsZ0JBQWdCLENBQUM7RUFDeEIsS0FBSyxFQUFFLElBQUs7RUFDWixnQkFBZ0IsRW5CdEJKLE9BQU87RW1CdUJmLFlBQVksRW5CdkJKLE9BQU87Q21CZ0NwQjs7QXlCQUgsQUFBQSxvQkFBb0IsQXpCZGpCLE9BQU8sQUFPTCxNQUFNLEV5Qk9YLEFBQUEsb0JBQW9CLEF6QmRqQixPQUFPLEFBUUwsTUFBTSxFeUJNWCxBQUFBLG9CQUFvQixBekJkakIsT0FBTyxBQVNMLE1BQU0sRXlCS1gsQUFBQSxvQkFBb0IsQXpCYmpCLE9BQU8sQUFNTCxNQUFNLEV5Qk9YLEFBQUEsb0JBQW9CLEF6QmJqQixPQUFPLEFBT0wsTUFBTSxFeUJNWCxBQUFBLG9CQUFvQixBekJiakIsT0FBTyxBQVFMLE1BQU07QUFQVCxBeUJZRixLekJaTyxHeUJZUCxvQkFBb0IsQXpCWlQsZ0JBQWdCLEFBS3RCLE1BQU07QUFMVCxBeUJZRixLekJaTyxHeUJZUCxvQkFBb0IsQXpCWlQsZ0JBQWdCLEFBTXRCLE1BQU07QUFOVCxBeUJZRixLekJaTyxHeUJZUCxvQkFBb0IsQXpCWlQsZ0JBQWdCLEFBT3RCLE1BQU0sQ0FBQztFQUNOLEtBQUssRUFBRSxJQUFLO0VBQ1osZ0JBQWdCLEVBQUUsT0FBTTtFQUNwQixZQUFZLEVBQUUsT0FBTTtDQUN6Qjs7QXlCQ0wsQUFBQSxvQkFBb0IsQXpCRWpCLFNBQVMsQUFFUCxNQUFNLEV5QkpYLEFBQUEsb0JBQW9CLEF6QkVqQixTQUFTLEFBR1AsTUFBTSxFeUJMWCxBQUFBLG9CQUFvQixBekJHakIsU0FBUyxBQUNQLE1BQU0sRXlCSlgsQUFBQSxvQkFBb0IsQXpCR2pCLFNBQVMsQUFFUCxNQUFNLENBQUM7RUFDTixZQUFZLEVBQUUsT0FBTztDQUN0Qjs7QXlCUEwsQUFBQSxvQkFBb0IsQXpCRWpCLFNBQVMsQWJyRlAsTUFBTSxFc0NtRlgsQUFBQSxvQkFBb0IsQXpCR2pCLFNBQVMsQWJ0RlAsTUFBTSxDQUFDO0VhNEZOLFlBQVksRUFBRSxPQUFPO0NiNUZGOztBc0NzRnpCLEFBQUEsbUJBQW1CLENBQUM7RXpCbkNsQixLQUFLLEVuQkhXLE9BQU87RW1CSXZCLGdCQUFnQixFQUFFLElBQUs7RUFDdkIsZ0JBQWdCLEVBQUUsV0FBWTtFQUM5QixZQUFZLEVuQk5JLE9BQU87QzRDd0N4Qjs7QUFGRCxBQUFBLG1CQUFtQixBdEN0RmQsTUFBTSxDQUFDO0VheURSLEtBQUssRUFBRSxJQUFLO0VBQ1osZ0JBQWdCLEVuQlZGLE9BQU87RW1CV2pCLFlBQVksRW5CWEYsT0FBTztDTWhEQTs7QXNDc0Z6QixBQUFBLG1CQUFtQixBekJ4QmhCLE1BQU0sRXlCd0JULEFBQUEsbUJBQW1CLEF6QnZCaEIsTUFBTSxDQUFDO0VBQ04sS0FBSyxFQUFFLElBQUs7RUFDWixnQkFBZ0IsRW5CakJGLE9BQU87RW1Ca0JqQixZQUFZLEVuQmxCRixPQUFPO0NtQm1CdEI7O0F5Qm1CSCxBQUFBLG1CQUFtQixBekJqQmhCLE9BQU8sRXlCaUJWLEFBQUEsbUJBQW1CLEF6QmhCaEIsT0FBTztBQUNSLEF5QmVGLEt6QmZPLEd5QmVQLG1CQUFtQixBekJmUixnQkFBZ0IsQ0FBQztFQUN4QixLQUFLLEVBQUUsSUFBSztFQUNaLGdCQUFnQixFbkJ6QkYsT0FBTztFbUIwQmpCLFlBQVksRW5CMUJGLE9BQU87Q21CbUN0Qjs7QXlCR0gsQUFBQSxtQkFBbUIsQXpCakJoQixPQUFPLEFBT0wsTUFBTSxFeUJVWCxBQUFBLG1CQUFtQixBekJqQmhCLE9BQU8sQUFRTCxNQUFNLEV5QlNYLEFBQUEsbUJBQW1CLEF6QmpCaEIsT0FBTyxBQVNMLE1BQU0sRXlCUVgsQUFBQSxtQkFBbUIsQXpCaEJoQixPQUFPLEFBTUwsTUFBTSxFeUJVWCxBQUFBLG1CQUFtQixBekJoQmhCLE9BQU8sQUFPTCxNQUFNLEV5QlNYLEFBQUEsbUJBQW1CLEF6QmhCaEIsT0FBTyxBQVFMLE1BQU07QUFQVCxBeUJlRixLekJmTyxHeUJlUCxtQkFBbUIsQXpCZlIsZ0JBQWdCLEFBS3RCLE1BQU07QUFMVCxBeUJlRixLekJmTyxHeUJlUCxtQkFBbUIsQXpCZlIsZ0JBQWdCLEFBTXRCLE1BQU07QUFOVCxBeUJlRixLekJmTyxHeUJlUCxtQkFBbUIsQXpCZlIsZ0JBQWdCLEFBT3RCLE1BQU0sQ0FBQztFQUNOLEtBQUssRUFBRSxJQUFLO0VBQ1osZ0JBQWdCLEVBQUUsT0FBTTtFQUNwQixZQUFZLEVBQUUsT0FBTTtDQUN6Qjs7QXlCSUwsQUFBQSxtQkFBbUIsQXpCRGhCLFNBQVMsQUFFUCxNQUFNLEV5QkRYLEFBQUEsbUJBQW1CLEF6QkRoQixTQUFTLEFBR1AsTUFBTSxFeUJGWCxBQUFBLG1CQUFtQixBekJBaEIsU0FBUyxBQUNQLE1BQU0sRXlCRFgsQUFBQSxtQkFBbUIsQXpCQWhCLFNBQVMsQUFFUCxNQUFNLENBQUM7RUFDTixZQUFZLEVBQUUsT0FBTztDQUN0Qjs7QXlCSkwsQUFBQSxtQkFBbUIsQXpCRGhCLFNBQVMsQWJyRlAsTUFBTSxFc0NzRlgsQUFBQSxtQkFBbUIsQXpCQWhCLFNBQVMsQWJ0RlAsTUFBTSxDQUFDO0VhNEZOLFlBQVksRUFBRSxPQUFPO0NiNUZGOztBc0NnR3pCLEFBQUEsU0FBUyxDQUFDO0VBQ1IsV0FBVyxFQUFFLE1BQU87RUFDcEIsS0FBSyxFNUNuRFMsT0FBTztFNENvRHJCLGFBQWEsRUFBRSxDQUFFO0NBNEJsQjs7QUEvQkQsQUFBQSxTQUFTLEVBQVQsQUFBQSxTQUFTLEFBTU4sT0FBTyxFQU5WLEFBQUEsU0FBUyxBQU9OLE9BQU8sRUFQVixBQUFBLFNBQVMsQUFRTixTQUFTLENBQUM7RUFDVCxnQkFBZ0IsRUFBRSxXQUFZO0NBRS9COztBQVhILEFBQUEsU0FBUyxFQUFULEFBQUEsU0FBUyxBQWFOLE1BQU0sRUFiVCxBQUFBLFNBQVMsQUFjTixPQUFPLENBQUM7RUFDUCxZQUFZLEVBQUUsV0FBWTtDQUMzQjs7QUFoQkgsQUFBQSxTQUFTLEF0Q2hHSixNQUFNLENBQUM7RXNDa0hSLFlBQVksRUFBRSxXQUFZO0N0Q2xITDs7QXNDZ0d6QixBQUFBLFNBQVMsQXRDdEZKLE1BQU0sRXNDc0ZYLEFBQUEsU0FBUyxBdENyRkosTUFBTSxDQUFDO0VzQzBHUixLQUFLLEV6Q1hlLE9BQU07RXlDWTFCLGVBQWUsRXpDWEssU0FBUztFeUNZN0IsZ0JBQWdCLEVBQUUsV0FBWTtDdEMxRzdCOztBc0NtRkwsQUFBQSxTQUFTLEFBeUJOLFNBQVMsQXRDL0dQLE1BQU0sRXNDc0ZYLEFBQUEsU0FBUyxBQXlCTixTQUFTLEF0QzlHUCxNQUFNLENBQUM7RXNDZ0hOLEtBQUssRXpDdkZpQixPQUFPO0V5Q3dGN0IsZUFBZSxFQUFFLElBQUs7Q3RDL0d2Qjs7QXNDeUhMLEFBQUEsT0FBTyxFRzVDUCxBSDRDQSxhRzVDYSxHQUFHLElBQUksQ0g0Q1o7RXpCbkNOLE9BQU8sRWhCcU13QixPQUFNLENBRE4sTUFBTTtFZ0JuTXJDLFNBQVMsRWhCaUVNLE9BQU87RTBCM0twQixhQUFhLEUxQjJPUSxNQUFLO0N5QzVGN0I7O0FBQ0QsQUFBQSxPQUFPLEVHakRQLEFIaURBLGFHakRhLEdBQUcsSUFBSSxDSGlEWjtFekJ2Q04sT0FBTyxFaEJrTXdCLE9BQU0sQ0FETixNQUFLO0VnQmhNcEMsU0FBUyxFaEJrRU0sUUFBTztFMEI1S3BCLGFBQWEsRTFCNE9RLE1BQUs7Q3lDekY3Qjs7QUFPRCxBQUFBLFVBQVUsQ0FBQztFQUNULE9BQU8sRUFBRSxLQUFNO0VBQ2YsS0FBSyxFQUFFLElBQUs7Q0FDYjs7QUFHRCxBQUFhLFVBQUgsR0FBRyxVQUFVLENBQUM7RUFDdEIsVUFBVSxFekMrSXFCLE1BQUs7Q3lDOUlyQzs7QUFHRCxBQUFtQixLQUFkLENBQUEsQUFBQSxJQUFDLENBQUssUUFBUSxBQUFiLENBR0gsVUFBVTtBQUZiLEFBQWtCLEtBQWIsQ0FBQSxBQUFBLElBQUMsQ0FBSyxPQUFPLEFBQVosQ0FFSCxVQUFVO0FBRGIsQUFBbUIsS0FBZCxDQUFBLEFBQUEsSUFBQyxDQUFLLFFBQVEsQUFBYixDQUNILFVBQVUsQ0FBQztFQUNWLEtBQUssRUFBRSxJQUFLO0NBQ2I7O0FDOUtILEFBQUEsS0FBSyxDQUFDO0VBQ0osT0FBTyxFQUFFLENBQUU7RUFDWCxVQUFVLEVBQUUsbUJBQW9CO0NBS2pDOztBQVBELEFBQUEsS0FBSyxBQUlGLEdBQUcsQ0FBQztFQUNILE9BQU8sRUFBRSxDQUFFO0NBQ1o7O0FBR0gsQUFBQSxTQUFTLENBQUM7RUFDUixPQUFPLEVBQUUsSUFBSztDQUlmOztBQUxELEFBQUEsU0FBUyxBQUVOLEdBQUcsQ0FBQztFQUNILE9BQU8sRUFBRSxLQUFNO0NBQ2hCOztBQUdILEFBQUEsRUFBRSxBQUNDLFNBQVMsQUFBQSxHQUFHLENBQUM7RUFDWixPQUFPLEVBQUUsU0FBVTtDQUNwQjs7QUFHSCxBQUFBLEtBQUssQUFDRixTQUFTLEFBQUEsR0FBRyxDQUFDO0VBQ1osT0FBTyxFQUFFLGVBQWdCO0NBQzFCOztBQUdILEFBQUEsV0FBVyxDQUFDO0VBQ1YsUUFBUSxFQUFFLFFBQVM7RUFDbkIsTUFBTSxFQUFFLENBQUU7RUFDVixRQUFRLEVBQUUsTUFBTztFQUNqQiwwQkFBMEIsRUFBRSxJQUFLO0VBQ2pDLG1CQUFtQixFQUFFLElBQUs7RUFDMUIsbUJBQW1CLEVBQUUsTUFBTztDQUM3Qjs7QUNsQ0QsQUFBQSxPQUFPO0FBQ1AsQUFBQSxTQUFTLENBQUM7RUFDUixRQUFRLEVBQUUsUUFBUztDQUNwQjs7QUFFRCxBQUFBLGdCQUFnQixBQUViLE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBRSxZQUFhO0VBQ3RCLEtBQUssRUFBRSxDQUFFO0VBQ1QsTUFBTSxFQUFFLENBQUU7RUFDVixXQUFXLEUzQ3lPVSxLQUFJO0UyQ3hPekIsY0FBYyxFQUFFLE1BQU87RUFDdkIsT0FBTyxFQUFFLEVBQUc7RUFDWixVQUFVLEUzQ3NPVyxLQUFJLEMyQ3RPQSxLQUFLO0VBQzlCLFlBQVksRTNDcU9TLEtBQUksQzJDck9FLEtBQUssQ0FBQyxXQUFXO0VBQzVDLFdBQVcsRTNDb09VLEtBQUksQzJDcE9DLEtBQUssQ0FBQyxXQUFXO0NBQzVDOztBQVpILEFBQUEsZ0JBQWdCLEFBZWIsTUFBTSxDQUFDO0VBQ04sT0FBTyxFQUFFLENBQUU7Q0FDWjs7QUFHSCxBQUNFLE9BREssQ0FDTCxnQkFBZ0IsQUFDYixPQUFPLENBQUM7RUFDUCxVQUFVLEVBQUUsQ0FBRTtFQUNkLGFBQWEsRTNDdU5NLEtBQUksQzJDdk5LLEtBQUs7Q0FDbEM7O0FBS0wsQUFBQSxjQUFjLENBQUM7RUFDYixRQUFRLEVBQUUsUUFBUztFQUNuQixHQUFHLEVBQUUsSUFBSztFQUNWLElBQUksRUFBRSxDQUFFO0VBQ1IsT0FBTyxFM0MyYmtCLElBQUk7RTJDMWI3QixPQUFPLEVBQUUsSUFBSztFQUNkLEtBQUssRUFBRSxJQUFLO0VBQ1osU0FBUyxFM0MwWnNCLEtBQUs7RTJDelpwQyxPQUFPLEUzQzBad0IsTUFBSyxDMkMxWlAsQ0FBQztFQUM5QixNQUFNLEUzQzBaeUIsUUFBTyxDMkMxWlQsQ0FBQyxDQUFDLENBQUM7RUFDaEMsU0FBUyxFM0NnSU0sSUFBSTtFMkMvSG5CLEtBQUssRTNDSHFCLE9BQU87RTJDSWpDLFVBQVUsRUFBRSxJQUFLO0VBQ2pCLFVBQVUsRUFBRSxJQUFLO0VBQ2pCLGdCQUFnQixFM0NzWmUsSUFBSTtFMkNyWm5DLGVBQWUsRUFBRSxXQUFZO0VBQzdCLE1BQU0sRTNDK0NPLEdBQUcsQzJDL0NlLEtBQUssQzNDcVpMLG1CQUFJO0UwQnJjakMsYUFBYSxFMUIwT1EsT0FBTTtDMkN2TDlCOztBQUdELEFBQUEsaUJBQWlCLENBQUM7RXRCckRoQixNQUFNLEVBQUUsR0FBSTtFQUNaLE1BQU0sRUFBRyxNQUFTLENBQU0sQ0FBQztFQUN6QixRQUFRLEVBQUUsTUFBTztFQUNqQixnQkFBZ0IsRXJCbWNlLE9BQU87QzJDL1l2Qzs7QUFLRCxBQUFBLGNBQWMsQ0FBQztFQUNiLE9BQU8sRUFBRSxLQUFNO0VBQ2YsS0FBSyxFQUFFLElBQUs7RUFDWixPQUFPLEVBQUUsR0FBRyxDM0NtWm1CLE1BQU07RTJDbFpyQyxLQUFLLEVBQUUsSUFBSztFQUNaLFdBQVcsRUFBRSxNQUFPO0VBQ3BCLEtBQUssRTNDM0JxQixPQUFPO0UyQzRCakMsVUFBVSxFQUFFLE9BQVE7RUFDcEIsV0FBVyxFQUFFLE1BQU87RUFDcEIsVUFBVSxFQUFFLElBQUs7RUFDakIsTUFBTSxFQUFFLENBQUU7Q0FtQ1g7O0FBN0NELEFBQUEsY0FBYyxBeEM3Q1QsTUFBTSxFd0M2Q1gsQUFBQSxjQUFjLEF4QzVDVCxNQUFNLENBQUM7RXdDeURSLEtBQUssRTNDaVl3QixPQUFNO0UyQ2hZbkMsZUFBZSxFQUFFLElBQUs7RUFDdEIsZ0JBQWdCLEUzQ2dZYSxPQUFPO0NHemJuQzs7QXdDMENMLEFBQUEsY0FBYyxBQW1CWCxPQUFPLEVBbkJWLEFBQUEsY0FBYyxBQW1CWCxPQUFPLEF4Qy9DTCxNQUFNLEV3QzRCWCxBQUFBLGNBQWMsQUFtQlgsT0FBTyxBeEM5Q0wsTUFBTSxDQUFDO0V3Q2dETixLQUFLLEUzQzRKYyxJQUFJO0UyQzNKdkIsZUFBZSxFQUFFLElBQUs7RUFDdEIsZ0JBQWdCLEU5Qy9CTixPQUFPO0U4Q2dDakIsT0FBTyxFQUFFLENBQUU7Q3hDakRaOztBd0N5QkwsQUFBQSxjQUFjLEFBK0JYLFNBQVMsRUEvQlosQUFBQSxjQUFjLEFBK0JYLFNBQVMsQXhDM0RQLE1BQU0sRXdDNEJYLEFBQUEsY0FBYyxBQStCWCxTQUFTLEF4QzFEUCxNQUFNLENBQUM7RXdDNEROLEtBQUssRTNDcERpQixPQUFPO0NHTjlCOztBd0N5QkwsQUFBQSxjQUFjLEFBK0JYLFNBQVMsQXhDNUVQLE1BQU0sRXdDNkNYLEFBQUEsY0FBYyxBQStCWCxTQUFTLEF4QzNFUCxNQUFNLENBQUM7RXdDa0ZOLGVBQWUsRUFBRSxJQUFLO0VBQ3RCLE1BQU0sRTNDNlBxQixXQUFXO0UyQzVQdEMsZ0JBQWdCLEVBQUUsV0FBWTtFQUM5QixnQkFBZ0IsRUFBRSxJQUFLO0VyQ3BHM0IsTUFBTSxFQUFFLDZEQUE4RDtDSGlCbkU7O0F3QzBGTCxBQUVJLEtBRkMsR0FFRCxjQUFjLENBQUM7RUFDZixPQUFPLEVBQUUsS0FBTTtDQUNoQjs7QUFKSCxBQU9JLEtBUEMsR0FPRCxDQUFDLENBQUM7RUFDRixPQUFPLEVBQUUsQ0FBRTtDQUNaOztBQU9ILEFBQUEsb0JBQW9CLENBQUM7RUFDbkIsS0FBSyxFQUFFLENBQUU7RUFDVCxJQUFJLEVBQUUsSUFBSztDQUNaOztBQUVELEFBQUEsbUJBQW1CLENBQUM7RUFDbEIsS0FBSyxFQUFFLElBQUs7RUFDWixJQUFJLEVBQUUsQ0FBRTtDQUNUOztBQUdELEFBQUEsZ0JBQWdCLENBQUM7RUFDZixPQUFPLEVBQUUsS0FBTTtFQUNmLE9BQU8sRTNDd1R3QixNQUFLLENBaUJMLE1BQU07RTJDeFVyQyxhQUFhLEVBQUUsQ0FBRTtFQUNqQixTQUFTLEUzQ2dDTSxRQUFPO0UyQy9CdEIsS0FBSyxFM0NuR3FCLE9BQU87RTJDb0dqQyxXQUFXLEVBQUUsTUFBTztDQUNyQjs7QUFHRCxBQUFBLGtCQUFrQixDQUFDO0VBQ2pCLFFBQVEsRUFBRSxLQUFNO0VBQ2hCLEdBQUcsRUFBRSxDQUFFO0VBQ1AsS0FBSyxFQUFFLENBQUU7RUFDVCxNQUFNLEVBQUUsQ0FBRTtFQUNWLElBQUksRUFBRSxDQUFFO0VBQ1IsT0FBTyxFM0NxVW1CLEdBQUc7QzJDcFU5Qjs7QUFPRCxBQUdFLE9BSEssQ0FHTCxNQUFNO0FBRlIsQUFFRSxvQkFGa0IsQ0FBQyxTQUFTLENBRTVCLE1BQU0sQ0FBQztFQUNMLE9BQU8sRUFBRSxFQUFHO0VBQ1osVUFBVSxFQUFFLENBQUU7RUFDZCxhQUFhLEUzQzJFUSxLQUFJLEMyQzNFRyxLQUFLO0NBQ2xDOztBQVBILEFBVUUsT0FWSyxDQVVMLGNBQWM7QUFUaEIsQUFTRSxvQkFUa0IsQ0FBQyxTQUFTLENBUzVCLGNBQWMsQ0FBQztFQUNiLEdBQUcsRUFBRSxJQUFLO0VBQ1YsTUFBTSxFQUFFLElBQUs7RUFDYixhQUFhLEUzQ3NSZ0IsUUFBTztDMkNyUnJDOztBQy9LSCxBQUFBLFVBQVU7QUFDVixBQUFBLG1CQUFtQixDQUFDO0VBQ2xCLFFBQVEsRUFBRSxRQUFTO0VBQ25CLE9BQU8sRUFBRSxZQUFhO0VBQ3RCLGNBQWMsRUFBRSxNQUFPO0NBaUJ4Qjs7QUFyQkQsQUFNSSxVQU5NLEdBTU4sSUFBSTtBQUxSLEFBS0ksbUJBTGUsR0FLZixJQUFJLENBQUM7RUFDTCxRQUFRLEVBQUUsUUFBUztFQUNuQixLQUFLLEVBQUUsSUFBSztFQUNaLGFBQWEsRUFBRSxDQUFFO0NBV2xCOztBQXBCSCxBQU1JLFVBTk0sR0FNTixJQUFJLEFBTUgsTUFBTSxFQVpYLEFBTUksVUFOTSxHQU1OLElBQUksQUFPSCxPQUFPLEVBYlosQUFNSSxVQU5NLEdBTU4sSUFBSSxBQVFILE9BQU87QUFiWixBQUtJLG1CQUxlLEdBS2YsSUFBSSxBQU1ILE1BQU07QUFYWCxBQUtJLG1CQUxlLEdBS2YsSUFBSSxBQU9ILE9BQU87QUFaWixBQUtJLG1CQUxlLEdBS2YsSUFBSSxBQVFILE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBRSxDQUFFO0NBQ1o7O0FBaEJMLEFBTUksVUFOTSxHQU1OLElBQUksQXpDQ0gsTUFBTTtBeUNOWCxBQUtJLG1CQUxlLEdBS2YsSUFBSSxBekNDSCxNQUFNLENBQUM7RXlDV04sT0FBTyxFQUFFLENBQUU7Q3pDWFE7O0F5Q2lCekIsQUFDUyxVQURDLENBQ1IsSUFBSSxHQUFHLElBQUk7QUFEYixBQUVTLFVBRkMsQ0FFUixJQUFJLEdBQUcsVUFBVTtBQUZuQixBQUdlLFVBSEwsQ0FHUixVQUFVLEdBQUcsSUFBSTtBQUhuQixBQUllLFVBSkwsQ0FJUixVQUFVLEdBQUcsVUFBVSxDQUFDO0VBQ3RCLFdBQVcsRTVDbUVBLElBQUc7QzRDbEVmOztBQUlILEFBQUEsWUFBWSxDQUFDO0VBQ1gsV0FBVyxFNUMrUW9CLE9BQUs7QzRDbFFyQzs7QUFkRCxBQUFBLFlBQVksQWhCcENULE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBRSxFQUFHO0VBQ1osT0FBTyxFQUFFLEtBQU07RUFDZixLQUFLLEVBQUUsSUFBSztDQUNiOztBZ0JnQ0gsQUFJRSxZQUpVLENBSVYsVUFBVTtBQUpaLEFBS0UsWUFMVSxDQUtWLFlBQVksQ0FBQztFQUNYLEtBQUssRUFBRSxJQUFLO0NBQ2I7O0FBUEgsQUFTSSxZQVRRLEdBU1IsSUFBSTtBQVRSLEFBVUksWUFWUSxHQVVSLFVBQVU7QUFWZCxBQVdJLFlBWFEsR0FXUixZQUFZLENBQUM7RUFDYixXQUFXLEU1Q29Ra0IsTUFBSztDNENuUW5DOztBQUdILEFBQXlFLFVBQS9ELEdBQUcsSUFBSSxBQUFBLElBQUssQ0FBQSxBQUFBLFlBQVksQ0FBQyxJQUFLLENBQUEsQUFBQSxXQUFXLENBQUMsSUFBSyxDQUFBLEFBQUEsZ0JBQWdCLEVBQUU7RUFDekUsYUFBYSxFQUFFLENBQUU7Q0FDbEI7O0FBR0QsQUFBaUIsVUFBUCxHQUFHLElBQUksQUFBQSxZQUFZLENBQUM7RUFDNUIsV0FBVyxFQUFFLENBQUU7Q0FLaEI7O0FBTkQsQUFBaUIsVUFBUCxHQUFHLElBQUksQUFBQSxZQUFZLEFBRzFCLElBQUssQ0FBQSxBQUFBLFdBQVcsQ0FBQyxJQUFLLENBQUEsQUFBQSxnQkFBZ0IsRUFBRTtFbEI1Q3ZDLDBCQUEwQixFa0I2Q0csQ0FBQztFbEI1QzlCLHVCQUF1QixFa0I0Q00sQ0FBQztDQUMvQjs7QUFHSCxBQUE2QyxVQUFuQyxHQUFHLElBQUksQUFBQSxXQUFXLEFBQUEsSUFBSyxDQUFBLEFBQUEsWUFBWTtBQUM3QyxBQUE4QyxVQUFwQyxHQUFHLGdCQUFnQixBQUFBLElBQUssQ0FBQSxBQUFBLFlBQVksRUFBRTtFbEJwQzVDLHlCQUF5QixFa0JxQ0MsQ0FBQztFbEJwQzNCLHNCQUFzQixFa0JvQ0ksQ0FBQztDQUM5Qjs7QUFHRCxBQUFhLFVBQUgsR0FBRyxVQUFVLENBQUM7RUFDdEIsS0FBSyxFQUFFLElBQUs7Q0FDYjs7QUFDRCxBQUE2RCxVQUFuRCxHQUFHLFVBQVUsQUFBQSxJQUFLLENBQUEsQUFBQSxZQUFZLENBQUMsSUFBSyxDQUFBLEFBQUEsV0FBVyxJQUFJLElBQUksQ0FBQztFQUNoRSxhQUFhLEVBQUUsQ0FBRTtDQUNsQjs7QUFDRCxBQUNRLFVBREUsR0FBRyxVQUFVLEFBQUEsWUFBWSxBQUFBLElBQUssQ0FBQSxBQUFBLFdBQVcsSUFDL0MsSUFBSSxBQUFBLFdBQVc7QUFEbkIsQUFFSSxVQUZNLEdBQUcsVUFBVSxBQUFBLFlBQVksQUFBQSxJQUFLLENBQUEsQUFBQSxXQUFXLElBRS9DLGdCQUFnQixDQUFDO0VsQi9EakIsMEJBQTBCLEVrQmdFRyxDQUFDO0VsQi9EOUIsdUJBQXVCLEVrQitETSxDQUFDO0NBQy9COztBQUVILEFBQTJELFVBQWpELEdBQUcsVUFBVSxBQUFBLFdBQVcsQUFBQSxJQUFLLENBQUEsQUFBQSxZQUFZLElBQUksSUFBSSxBQUFBLFlBQVksQ0FBQztFbEJyRHBFLHlCQUF5QixFa0JzREMsQ0FBQztFbEJyRDNCLHNCQUFzQixFa0JxREksQ0FBQztDQUM5Qjs7QUFHRCxBQUEyQixVQUFqQixDQUFDLGdCQUFnQixBQUFBLE9BQU87QUFDbEMsQUFBZ0IsVUFBTixBQUFBLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQztFQUMvQixPQUFPLEVBQUUsQ0FBRTtDQUNaOztBQWVELEFBQU8sSUFBSCxHQUFHLHNCQUFzQixDQUFDO0VBQzVCLGFBQWEsRUFBRSxPQUFjO0VBQzdCLFlBQVksRUFBRSxPQUFjO0NBSzdCOztBQVBELEFBQU8sSUFBSCxHQUFHLHNCQUFzQixBQUkxQixPQUFPLENBQUM7RUFDUCxXQUFXLEVBQUUsQ0FBRTtDQUNoQjs7QUFHSCxBQUFVLE9BQUgsR0FBRyxzQkFBc0IsRUFqQmhDLEFBaUJVLGFBakJHLEdBQUcsSUFBSSxHQWlCVixzQkFBc0IsQ0FBQztFQUMvQixhQUFhLEVBQUUsUUFBaUI7RUFDaEMsWUFBWSxFQUFFLFFBQWlCO0NBQ2hDOztBQUVELEFBQVUsT0FBSCxHQUFHLHNCQUFzQixFQXJCaEMsQUFxQlUsYUFyQkcsR0FBRyxJQUFJLEdBcUJWLHNCQUFzQixDQUFDO0VBQy9CLGFBQWEsRUFBRSxRQUFpQjtFQUNoQyxZQUFZLEVBQUUsUUFBaUI7Q0FDaEM7O0FBZ0JELEFBQUssSUFBRCxDQUFDLE1BQU0sQ0FBQztFQUNWLFdBQVcsRUFBRSxDQUFFO0NBQ2hCOztBQUVELEFBQVEsT0FBRCxDQUFDLE1BQU0sRUE1Q2QsQUE0Q1EsYUE1Q0ssR0FBRyxJQUFJLENBNENaLE1BQU0sQ0FBQztFQUNiLFlBQVksRTVDb0dXLEtBQUksQ0FBSixLQUFJLEM0Q3BHbUIsQ0FBQztFQUMvQyxtQkFBbUIsRUFBRSxDQUFFO0NBQ3hCOztBQUVELEFBQWdCLE9BQVQsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUF0QixBQUFnQixPQUFULENBakRQLGFBQWEsR0FBRyxJQUFJLENBaURKLE1BQU0sQ0FBQztFQUNyQixZQUFZLEVBQUUsQ0FBQyxDNUMrRlEsS0FBSSxDQUFKLEtBQUk7QzRDOUY1Qjs7QUFRRCxBQUNJLG1CQURlLEdBQ2YsSUFBSTtBQURSLEFBRUksbUJBRmUsR0FFZixVQUFVO0FBRmQsQUFHaUIsbUJBSEUsR0FHZixVQUFVLEdBQUcsSUFBSSxDQUFDO0VBQ2xCLE9BQU8sRUFBRSxLQUFNO0VBQ2YsS0FBSyxFQUFFLElBQUs7RUFDWixLQUFLLEVBQUUsSUFBSztFQUNaLFNBQVMsRUFBRSxJQUFLO0NBQ2pCOztBQVJILEFBV0ksbUJBWGUsR0FXZixVQUFVLEFoQnpLWCxPQUFPLENBQUM7RUFDUCxPQUFPLEVBQUUsRUFBRztFQUNaLE9BQU8sRUFBRSxLQUFNO0VBQ2YsS0FBSyxFQUFFLElBQUs7Q0FDYjs7QWdCMEpILEFBY00sbUJBZGEsR0FXZixVQUFVLEdBR1IsSUFBSSxDQUFDO0VBQ0wsS0FBSyxFQUFFLElBQUs7Q0FDYjs7QUFoQkwsQUFtQlcsbUJBbkJRLEdBbUJmLElBQUksR0FBRyxJQUFJO0FBbkJmLEFBb0JXLG1CQXBCUSxHQW9CZixJQUFJLEdBQUcsVUFBVTtBQXBCckIsQUFxQmlCLG1CQXJCRSxHQXFCZixVQUFVLEdBQUcsSUFBSTtBQXJCckIsQUFzQmlCLG1CQXRCRSxHQXNCZixVQUFVLEdBQUcsVUFBVSxDQUFDO0VBQ3hCLFVBQVUsRTVDbkZDLElBQUc7RTRDb0ZkLFdBQVcsRUFBRSxDQUFFO0NBQ2hCOztBQUdILEFBQXNCLG1CQUFILEdBQUcsSUFBSSxBQUN2QixJQUFLLENBQUEsQUFBQSxZQUFZLENBQUMsSUFBSyxDQUFBLEFBQUEsV0FBVyxFQUFFO0VBQ25DLGFBQWEsRUFBRSxDQUFFO0NBQ2xCOztBQUhILEFBQXNCLG1CQUFILEdBQUcsSUFBSSxBQUl2QixZQUFZLEFBQUEsSUFBSyxDQUFBLEFBQUEsV0FBVyxFQUFFO0VsQnZLN0IsMEJBQTBCLEVrQndLSSxDQUFDO0VsQnZLL0IseUJBQXlCLEVrQnVLSyxDQUFDO0NBQ2hDOztBQU5ILEFBQXNCLG1CQUFILEdBQUcsSUFBSSxBQU92QixXQUFXLEFBQUEsSUFBSyxDQUFBLEFBQUEsWUFBWSxFQUFFO0VsQnhMN0IsdUJBQXVCLEVrQnlMSSxDQUFDO0VsQnhMNUIsc0JBQXNCLEVrQndMSyxDQUFDO0NBQzdCOztBQUVILEFBQXNFLG1CQUFuRCxHQUFHLFVBQVUsQUFBQSxJQUFLLENBQUEsQUFBQSxZQUFZLENBQUMsSUFBSyxDQUFBLEFBQUEsV0FBVyxJQUFJLElBQUksQ0FBQztFQUN6RSxhQUFhLEVBQUUsQ0FBRTtDQUNsQjs7QUFDRCxBQUNRLG1CQURXLEdBQUcsVUFBVSxBQUFBLFlBQVksQUFBQSxJQUFLLENBQUEsQUFBQSxXQUFXLElBQ3hELElBQUksQUFBQSxXQUFXO0FBRG5CLEFBRUksbUJBRmUsR0FBRyxVQUFVLEFBQUEsWUFBWSxBQUFBLElBQUssQ0FBQSxBQUFBLFdBQVcsSUFFeEQsZ0JBQWdCLENBQUM7RWxCbkxqQiwwQkFBMEIsRWtCb0xJLENBQUM7RWxCbkwvQix5QkFBeUIsRWtCbUxLLENBQUM7Q0FDaEM7O0FBRUgsQUFBb0UsbUJBQWpELEdBQUcsVUFBVSxBQUFBLFdBQVcsQUFBQSxJQUFLLENBQUEsQUFBQSxZQUFZLElBQUksSUFBSSxBQUFBLFlBQVksQ0FBQztFbEJyTTdFLHVCQUF1QixFa0JzTUUsQ0FBQztFbEJyTTFCLHNCQUFzQixFa0JxTUcsQ0FBQztDQUM3Qjs7Q0FlRCxBQUFBLEFBR3NCLFdBSHJCLENBQVksU0FBUyxBQUFyQixJQUNHLElBQUksQ0FFSixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssT0FBTyxBQUFaO0NBSFYsQUFBQSxBQUl5QixXQUp4QixDQUFZLFNBQVMsQUFBckIsSUFDRyxJQUFJLENBR0osS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLFVBQVUsQUFBZjtDQUpWLEFBQUEsQUFHc0IsV0FIckIsQ0FBWSxTQUFTLEFBQXJCLElBRUcsVUFBVSxHQUFHLElBQUksQ0FDakIsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLE9BQU8sQUFBWjtDQUhWLEFBQUEsQUFJeUIsV0FKeEIsQ0FBWSxTQUFTLEFBQXJCLElBRUcsVUFBVSxHQUFHLElBQUksQ0FFakIsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLFVBQVUsQUFBZixFQUFpQjtFQUNyQixRQUFRLEVBQUUsUUFBUztFQUNuQixJQUFJLEVBQUUsZ0JBQUk7RUFDVixjQUFjLEVBQUUsSUFBSztDQUN0Qjs7QUNwT0wsQUFBQSxZQUFZLENBQUM7RUFDWCxRQUFRLEVBQUUsUUFBUztFQUNuQixLQUFLLEVBQUUsSUFBSztFQUdWLE9BQU8sRUFBRSxJQUFLO0NBNEJqQjs7QUFqQ0QsQUFhRSxZQWJVLENBYVYsYUFBYSxDQUFDO0VBR1osUUFBUSxFQUFFLFFBQVM7RUFDbkIsT0FBTyxFQUFFLENBQUU7RUFNVCxJQUFJLEVBQUUsQ0FBRTtFQVFWLGFBQWEsRUFBRSxDQUFFO0NBQ2xCOztBQWhDSCxBQWFFLFlBYlUsQ0FhVixhQUFhLEExQ29DVixNQUFNLEUwQ2pEWCxBQWFFLFlBYlUsQ0FhVixhQUFhLEExQ3FDVixPQUFPLEUwQ2xEWixBQWFFLFlBYlUsQ0FhVixhQUFhLEExQ3NDVixNQUFNLENBQUM7RTBDL0JOLE9BQU8sRUFBRSxDQUFFO0MxQ2lDWjs7QTBDbEJMLEFBQUEsa0JBQWtCLEFBT2YsSUFBSyxDQUFBLEFBQUEsWUFBWSxDQUFDLElBQUssQ0FBQSxBQUFBLFdBQVc7QUFOckMsQUFBQSxnQkFBZ0IsQUFNYixJQUFLLENBQUEsQUFBQSxZQUFZLENBQUMsSUFBSyxDQUFBLEFBQUEsV0FBVztBQUxyQyxBQUFhLFlBQUQsQ0FBQyxhQUFhLEFBS3ZCLElBQUssQ0FBQSxBQUFBLFlBQVksQ0FBQyxJQUFLLENBQUEsQUFBQSxXQUFXLEVBQUU7RW5CMUNuQyxhQUFhLEVtQjJDVSxDQUFDO0NBQ3pCOztBQUdILEFBQUEsa0JBQWtCO0FBQ2xCLEFBQUEsZ0JBQWdCLENBQUM7RUFJZixXQUFXLEVBQUUsTUFBTztFQUNwQixjQUFjLEVBQUUsTUFBTztDQUN4Qjs7QUF3QkQsQUFBQSxrQkFBa0IsQ0FBQztFQUNqQixPQUFPLEU3QzZPd0IsTUFBSyxDQURMLE9BQU07RTZDM09yQyxhQUFhLEVBQUUsQ0FBRTtFQUNqQixTQUFTLEU3Q3lGTSxJQUFJO0U2Q3hGbkIsV0FBVyxFQUFFLE1BQU87RUFDcEIsV0FBVyxFN0MwT29CLElBQUk7RTZDek9uQyxLQUFLLEU3QzNDcUIsT0FBTztFNkM0Q2pDLFVBQVUsRUFBRSxNQUFPO0VBQ25CLGdCQUFnQixFN0MzQ1UsT0FBTztFNkM0Q2pDLE1BQU0sRTdDUU8sR0FBRyxDNkNSZ0IsS0FBSyxDN0M0T04sbUJBQUk7RTBCblVqQyxhQUFhLEUxQjBPUSxPQUFNO0M2QzdIOUI7O0FBL0JELEFBQUEsa0JBQWtCLEFBYWYsZ0JBQWdCO0FBdkJuQixBQVVBLGVBVmUsR0FVZixrQkFBa0I7QUFUbEIsQUFTQSxlQVRlLEdBQUcsZ0JBQWdCLEdBU2xDLGtCQUFrQixBQVRtQixJQUFJLENBc0JyQjtFQUNoQixPQUFPLEU3Q3VQc0IsT0FBTSxDQUROLE1BQUs7RTZDclBsQyxTQUFTLEU3QytFSSxRQUFPO0UwQjVLcEIsYUFBYSxFMUI0T1EsTUFBSztDNkM3STNCOztBQWpCSCxBQUFBLGtCQUFrQixBQWtCZixnQkFBZ0I7QUFqQ25CLEFBZUEsZUFmZSxHQWVmLGtCQUFrQjtBQWRsQixBQWNBLGVBZGUsR0FBRyxnQkFBZ0IsR0FjbEMsa0JBQWtCLEFBZG1CLElBQUksQ0FnQ3JCO0VBQ2hCLE9BQU8sRTdDcVBzQixPQUFNLENBRE4sTUFBTTtFNkNuUG5DLFNBQVMsRTdDeUVJLE9BQU87RTBCM0twQixhQUFhLEUxQjJPUSxNQUFLO0M2Q3ZJM0I7O0FBdEJILEFBMEJvQixrQkExQkYsQ0EwQmhCLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxPQUFPLEFBQVo7QUExQlIsQUEyQnVCLGtCQTNCTCxDQTJCaEIsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLFVBQVUsQUFBZixFQUFpQjtFQUNyQixVQUFVLEVBQUUsQ0FBRTtDQUNmOztBQVNILEFBQTBDLFlBQTlCLENBQUMsYUFBYSxBQUFBLElBQUssQ0FBQSxBQUFBLFdBQVc7QUFDMUMsQUFBa0Msa0JBQWhCLEFBQUEsSUFBSyxDQUFBLEFBQUEsV0FBVztBQUNsQyxBQUFvQyxnQkFBcEIsQUFBQSxJQUFLLENBQUEsQUFBQSxXQUFXLElBQUksSUFBSTtBQUN4QyxBQUFpRCxnQkFBakMsQUFBQSxJQUFLLENBQUEsQUFBQSxXQUFXLElBQUksVUFBVSxHQUFHLElBQUk7QUFDckQsQUFBb0MsZ0JBQXBCLEFBQUEsSUFBSyxDQUFBLEFBQUEsV0FBVyxJQUFJLGdCQUFnQjtBQUNwRCxBQUErRSxnQkFBL0QsQUFBQSxJQUFLLENBQUEsQUFBQSxZQUFZLElBQUksSUFBSSxBQUFBLElBQUssQ0FBQSxBQUFBLFdBQVcsQ0FBQyxJQUFLLENBQUEsQUFBQSxnQkFBZ0I7QUFDL0UsQUFBbUUsZ0JBQW5ELEFBQUEsSUFBSyxDQUFBLEFBQUEsWUFBWSxJQUFJLFVBQVUsQUFBQSxJQUFLLENBQUEsQUFBQSxXQUFXLElBQUksSUFBSSxDQUFDO0VuQjdHcEUsMEJBQTBCLEVtQjhHQyxDQUFDO0VuQjdHNUIsdUJBQXVCLEVtQjZHSSxDQUFDO0NBQy9COztBQUNELEFBQWtDLGtCQUFoQixBQUFBLElBQUssQ0FBQSxBQUFBLFdBQVcsRUFBRTtFQUNsQyxZQUFZLEVBQUUsQ0FBRTtDQUNqQjs7QUFDRCxBQUEyQyxZQUEvQixDQUFDLGFBQWEsQUFBQSxJQUFLLENBQUEsQUFBQSxZQUFZO0FBQzNDLEFBQW1DLGtCQUFqQixBQUFBLElBQUssQ0FBQSxBQUFBLFlBQVk7QUFDbkMsQUFBcUMsZ0JBQXJCLEFBQUEsSUFBSyxDQUFBLEFBQUEsWUFBWSxJQUFJLElBQUk7QUFDekMsQUFBa0QsZ0JBQWxDLEFBQUEsSUFBSyxDQUFBLEFBQUEsWUFBWSxJQUFJLFVBQVUsR0FBRyxJQUFJO0FBQ3RELEFBQXFDLGdCQUFyQixBQUFBLElBQUssQ0FBQSxBQUFBLFlBQVksSUFBSSxnQkFBZ0I7QUFDckQsQUFBeUQsZ0JBQXpDLEFBQUEsSUFBSyxDQUFBLEFBQUEsV0FBVyxJQUFJLElBQUksQUFBQSxJQUFLLENBQUEsQUFBQSxZQUFZO0FBQ3pELEFBQW1FLGdCQUFuRCxBQUFBLElBQUssQ0FBQSxBQUFBLFdBQVcsSUFBSSxVQUFVLEFBQUEsSUFBSyxDQUFBLEFBQUEsWUFBWSxJQUFJLElBQUksQ0FBQztFbkIzR3BFLHlCQUF5QixFbUI0R0MsQ0FBQztFbkIzRzNCLHNCQUFzQixFbUIyR0ksQ0FBQztDQUM5Qjs7QUFDRCxBQUFtRCxhQUF0QyxHQUFHLGtCQUFrQixBQUFBLElBQUssQ0FBQSxBQUFBLFlBQVksRUFBRTtFQUNuRCxXQUFXLEVBQUUsQ0FBRTtDQUNoQjs7QUFNRCxBQUFBLGdCQUFnQixDQUFDO0VBQ2YsUUFBUSxFQUFFLFFBQVM7RUFHbkIsU0FBUyxFQUFFLENBQUU7RUFDYixXQUFXLEVBQUUsTUFBTztDQWlDckI7O0FBdENELEFBU0ksZ0JBVFksR0FTWixJQUFJLENBQUM7RUFDTCxRQUFRLEVBQUUsUUFBUztDQVFwQjs7QUFsQkgsQUFXTSxnQkFYVSxHQVNaLElBQUksR0FFRixJQUFJLENBQUM7RUFDTCxXQUFXLEU3QzlERixJQUFHO0M2QytEYjs7QUFiTCxBQVNJLGdCQVRZLEdBU1osSUFBSSxBMUN6R0gsTUFBTSxFMENnR1gsQUFTSSxnQkFUWSxHQVNaLElBQUksQTFDeEdILE9BQU8sRTBDK0ZaLEFBU0ksZ0JBVFksR0FTWixJQUFJLEExQ3ZHSCxNQUFNLENBQUM7RTBDOEdOLE9BQU8sRUFBRSxDQUFFO0MxQzVHWjs7QTBDNEZMLEFBc0JNLGdCQXRCVSxBQXFCYixJQUFLLENBQUEsQUFBQSxXQUFXLElBQ2IsSUFBSTtBQXRCVixBQXVCTSxnQkF2QlUsQUFxQmIsSUFBSyxDQUFBLEFBQUEsV0FBVyxJQUViLFVBQVUsQ0FBQztFQUNYLFlBQVksRTdDMUVILElBQUc7QzZDMkViOztBQXpCTCxBQTRCTSxnQkE1QlUsQUEyQmIsSUFBSyxDQUFBLEFBQUEsWUFBWSxJQUNkLElBQUk7QUE1QlYsQUE2Qk0sZ0JBN0JVLEFBMkJiLElBQUssQ0FBQSxBQUFBLFlBQVksSUFFZCxVQUFVLENBQUM7RUFDWCxPQUFPLEVBQUUsQ0FBRTtFQUNYLFdBQVcsRTdDakZGLElBQUc7QzZDc0ZiOztBQXBDTCxBQTRCTSxnQkE1QlUsQUEyQmIsSUFBSyxDQUFBLEFBQUEsWUFBWSxJQUNkLElBQUksQTFDNUhMLE1BQU0sRTBDZ0dYLEFBNEJNLGdCQTVCVSxBQTJCYixJQUFLLENBQUEsQUFBQSxZQUFZLElBQ2QsSUFBSSxBMUMzSEwsT0FBTyxFMEMrRlosQUE0Qk0sZ0JBNUJVLEFBMkJiLElBQUssQ0FBQSxBQUFBLFlBQVksSUFDZCxJQUFJLEExQzFITCxNQUFNO0EwQzhGWCxBQTZCTSxnQkE3QlUsQUEyQmIsSUFBSyxDQUFBLEFBQUEsWUFBWSxJQUVkLFVBQVUsQTFDN0hYLE1BQU07QTBDZ0dYLEFBNkJNLGdCQTdCVSxBQTJCYixJQUFLLENBQUEsQUFBQSxZQUFZLElBRWQsVUFBVSxBMUM1SFgsT0FBTztBMEMrRlosQUE2Qk0sZ0JBN0JVLEFBMkJiLElBQUssQ0FBQSxBQUFBLFlBQVksSUFFZCxVQUFVLEExQzNIWCxNQUFNLENBQUM7RTBDZ0lKLE9BQU8sRUFBRSxDQUFFO0MxQzlIZDs7QTJDOUNMLEFBQUEsZUFBZSxDQUFDO0VBQ2QsUUFBUSxFQUFFLFFBQVM7RUFDbkIsT0FBTyxFQUFFLFlBQWE7RUFDdEIsWUFBWSxFOUN5VlksTUFBTTtFOEN4VjlCLE1BQU0sRUFBRSxPQUFRO0NBS2pCOztBQVRELEFBTUksZUFOVyxHQU1YLGVBQWUsQ0FBQztFQUNoQixXQUFXLEU5Q3NWVyxJQUFJO0M4Q3JWM0I7O0FBR0gsQUFBQSxxQkFBcUIsQ0FBQztFQUNwQixRQUFRLEVBQUUsUUFBUztFQUNuQixPQUFPLEVBQUUsRUFBRztFQUNaLE9BQU8sRUFBRSxDQUFFO0NBOEJaOztBQWpDRCxBQUtjLHFCQUxPLEFBS2xCLFFBQVEsR0FBRyx5QkFBeUIsQ0FBQztFQUNwQyxLQUFLLEU5Q3dWcUMsSUFBSTtFOEN2VjlDLGdCQUFnQixFOUN3VjBCLE9BQU87QzhDdFZsRDs7QUFUSCxBQVdZLHFCQVhTLEFBV2xCLE1BQU0sR0FBRyx5QkFBeUIsQ0FBQztFQUVsQyxVQUFVLEU5Q3FWOEIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBTyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFLLENBQUMsT0FBTztDOENwVmhGOztBQWRILEFBZ0JhLHFCQWhCUSxBQWdCbEIsT0FBTyxHQUFHLHlCQUF5QixDQUFDO0VBQ25DLEtBQUssRTlDbVZvQyxJQUFJO0U4Q2xWN0MsZ0JBQWdCLEU5Q21WeUIsT0FBTztDOENqVmpEOztBQXBCSCxBQXVCTSxxQkF2QmUsQUFzQmxCLFNBQVMsR0FDTix5QkFBeUIsQ0FBQztFQUMxQixNQUFNLEU5Q3VUcUIsV0FBVztFOEN0VHRDLGdCQUFnQixFOUNrVXVCLElBQUk7QzhDalU1Qzs7QUExQkwsQUE0Qk0scUJBNUJlLEFBc0JsQixTQUFTLEdBTU4sMkJBQTJCLENBQUM7RUFDNUIsS0FBSyxFOUMrVGtDLE9BQU87RThDOVQ5QyxNQUFNLEU5Q2lUcUIsV0FBVztDOENoVHZDOztBQVFMLEFBQUEseUJBQXlCLENBQUM7RUFDeEIsUUFBUSxFQUFFLFFBQVM7RUFDbkIsR0FBRyxFQUFFLE1BQU87RUFDWixJQUFJLEVBQUUsQ0FBRTtFQUNSLE9BQU8sRUFBRSxLQUFNO0VBQ2YsS0FBSyxFOUN5UytCLElBQUk7RThDeFN4QyxNQUFNLEU5Q3dTOEIsSUFBSTtFOEN2U3hDLGNBQWMsRUFBRSxJQUFLO0VBQ3JCLFdBQVcsRUFBRSxJQUFLO0VBQ2xCLGdCQUFnQixFOUNzU29CLElBQUk7RThDclN4QyxpQkFBaUIsRUFBRSxTQUFVO0VBQzdCLG1CQUFtQixFQUFFLGFBQWM7RUFDbkMsZUFBZSxFOUNvU3FCLEdBQUcsQ0FBQyxHQUFHO0M4Q2xTNUM7O0FBTUQsQUFDRSxnQkFEYyxDQUNkLHlCQUF5QixDQUFDO0VwQjlFeEIsYUFBYSxFMUIwT1EsT0FBTTtDOEMxSjVCOztBQUhILEFBS2tDLGdCQUxsQixDQUtkLHFCQUFxQixBQUFBLFFBQVEsR0FBRyx5QkFBeUIsQ0FBQztFQUN4RCxnQkFBZ0IsRTlDd1NXLHNNQUFHO0M4Q3ZTL0I7O0FBUEgsQUFTd0MsZ0JBVHhCLENBU2QscUJBQXFCLEFBQUEsY0FBYyxHQUFHLHlCQUF5QixDQUFDO0VBQzlELGdCQUFnQixFOUNzU2UsT0FBTztFOENyU3RDLGdCQUFnQixFOUN1U2lCLG1KQUFHO0M4Q3JTckM7O0FBT0gsQUFDRSxhQURXLENBQ1gseUJBQXlCLENBQUM7RUFDeEIsYUFBYSxFOUMrUkssR0FBRztDOEM5UnRCOztBQUhILEFBS2tDLGFBTHJCLENBS1gscUJBQXFCLEFBQUEsUUFBUSxHQUFHLHlCQUF5QixDQUFDO0VBQ3hELGdCQUFnQixFOUM0UlEsZ0pBQUc7QzhDM1I1Qjs7QUFTSCxBQUNFLHdCQURzQixDQUN0QixlQUFlLENBQUM7RUFDZCxLQUFLLEVBQUUsSUFBSztFQUNaLEtBQUssRUFBRSxJQUFLO0NBS2I7O0FBUkgsQUFLTSx3QkFMa0IsQ0FDdEIsZUFBZSxHQUlYLGVBQWUsQ0FBQztFQUNoQixXQUFXLEVBQUUsQ0FBRTtDQUNoQjs7QUFZTCxBQUFBLGNBQWMsQ0FBQztFQUNiLE9BQU8sRUFBRSxZQUFhO0VBQ3RCLFNBQVMsRUFBRSxJQUFLO0VBRWhCLE1BQU0sRUFBRSxrQkFBSTtFQUNaLE9BQU8sRTlDNlAwQixRQUFPLEM4QzdQTCxPQUF3QixDOUM2UDFCLFFBQU8sQ0FEUCxPQUFNO0U4QzNQdkMsYUFBYSxFOUMyUG9CLE9BQU0sQzhDM1BDLEVBQUU7RUFDMUMsS0FBSyxFOUNsR3FCLE9BQU87RThDbUdqQyxjQUFjLEVBQUUsTUFBTztFQUN2QixVQUFVLEU5QzZQa0IsSUFBSSxDQUlKLGlLQUFHLEM4Q2pRd0IsU0FBUyxDQUFDLEtBQUssQzlDd1ByQyxPQUFNLEM4Q3hQeUQsTUFBTTtFQUN0RyxnQkFBZ0IsRUFBRSxPQUFRO0VBQzFCLGVBQWUsRTlDNlBhLEdBQUcsQ0FBQyxJQUFJO0U4QzVQcEMsTUFBTSxFOUNqRE8sR0FBRyxDOENpRG9CLEtBQUssQzlDbUxWLG1CQUFJO0UwQm5VakMsYUFBYSxFMUIwT1EsT0FBTTtFOEN2RjdCLGVBQWUsRUFBRSxJQUFLO0VBQ3RCLGtCQUFrQixFQUFFLElBQUs7Q0E0QjFCOztBQTVDRCxBQUFBLGNBQWMsQUFrQlgsTUFBTSxDQUFDO0VBQ04sWUFBWSxFOUM0UG1CLE9BQU87RThDM1B0QyxPQUFPLEVBQUUsSUFBSztDQVlmOztBQWhDSCxBQUFBLGNBQWMsQUFrQlgsTUFBTSxBQUtKLFdBQVcsQ0FBQztFQU1YLEtBQUssRTlDeEhpQixPQUFPO0U4Q3lIN0IsZ0JBQWdCLEU5QzZKVyxJQUFJO0M4QzVKaEM7O0FBL0JMLEFBQUEsY0FBYyxBQWtDWCxTQUFTLENBQUM7RUFDVCxLQUFLLEU5QzdIbUIsT0FBTztFOEM4SC9CLE1BQU0sRTlDeUx1QixXQUFXO0U4Q3hMeEMsZ0JBQWdCLEU5QzlIUSxPQUFPO0M4QytIaEM7O0FBdENILEFBQUEsY0FBYyxBQXlDWCxZQUFZLENBQUM7RUFDWixPQUFPLEVBQUUsQ0FBRTtDQUNaOztBQUdILEFBQUEsaUJBQWlCLENBQUM7RUFDaEIsV0FBVyxFOUNtTnNCLFFBQU87RThDbE54QyxjQUFjLEU5Q2tObUIsUUFBTztFOENqTnhDLFNBQVMsRTlDa09rQixHQUFHO0M4QzVOL0I7O0FBT0QsQUFBQSxZQUFZLENBQUM7RUFDWCxRQUFRLEVBQUUsUUFBUztFQUNuQixPQUFPLEVBQUUsWUFBYTtFQUN0QixTQUFTLEVBQUUsSUFBSztFQUNoQixNQUFNLEU5Q21OdUIsTUFBTTtFOENsTm5DLE1BQU0sRUFBRSxPQUFRO0NBQ2pCOztBQUVELEFBQUEsa0JBQWtCLENBQUM7RUFDakIsU0FBUyxFOUMrTW9CLEtBQUs7RThDOU1sQyxTQUFTLEVBQUUsSUFBSztFQUNoQixNQUFNLEVBQUUsQ0FBRTtFQUNWLE1BQU0sRUFBRSxnQkFBSztFQUNiLE9BQU8sRUFBRSxDQUFFO0NBS1o7O0FBRUQsQUFBQSxvQkFBb0IsQ0FBQztFQUNuQixRQUFRLEVBQUUsUUFBUztFQUNuQixHQUFHLEVBQUUsQ0FBRTtFQUNQLEtBQUssRUFBRSxDQUFFO0VBQ1QsSUFBSSxFQUFFLENBQUU7RUFDUixPQUFPLEVBQUUsQ0FBRTtFQUNYLE1BQU0sRTlDNkx1QixNQUFNO0U4QzVMbkMsT0FBTyxFOUNnTW1CLE1BQUssQ0FDTCxJQUFJO0U4Q2hNOUIsV0FBVyxFOUNpTWUsR0FBRztFOENoTTdCLEtBQUssRTlDaU1xQixJQUFJO0U4Q2hNOUIsV0FBVyxFQUFFLElBQUs7RUFDbEIsZ0JBQWdCLEU5Q2dNVSxJQUFJO0U4Qy9MOUIsTUFBTSxFOUNuSU8sR0FBRyxDOENtSWtCLEtBQUssQzlDaU1iLElBQUk7RTBCbmE1QixhQUFhLEUxQjBPUSxPQUFNO0M4Q3VCOUI7O0FBM0NELEFBQUEsb0JBQW9CLEFBaUJmLEtBQU0sQ0FBQSxBQUFBLEVBQUUsQ0FBQyxPQUFPLENBQWpCO0VBQ0UsT0FBTyxFOUNrTUwsZ0JBQWdCO0M4Q2pNbkI7O0FBbkJMLEFBQUEsb0JBQW9CLEFBc0JqQixRQUFRLENBQUM7RUFDUixRQUFRLEVBQUUsUUFBUztFQUNuQixHQUFHLEU5Qy9JUSxJQUFHO0U4Q2dKZCxLQUFLLEU5Q2hKTSxJQUFHO0U4Q2lKZCxNQUFNLEU5Q2pKSyxJQUFHO0U4Q2tKZCxPQUFPLEVBQUUsQ0FBRTtFQUNYLE9BQU8sRUFBRSxLQUFNO0VBQ2YsTUFBTSxFOUNzS3FCLE1BQU07RThDcktqQyxPQUFPLEU5Q3lLaUIsTUFBSyxDQUNMLElBQUk7RThDeks1QixXQUFXLEU5QzBLYSxHQUFHO0U4Q3pLM0IsS0FBSyxFOUMwS21CLElBQUk7RThDeks1QixnQkFBZ0IsRTlDZ0xRLElBQUk7RThDL0s1QixNQUFNLEU5Q3pKSyxHQUFHLEM4Q3lKb0IsS0FBSyxDOUMyS2YsSUFBSTtFMEJuYTVCLGFBQWEsRW9CeVBVLENBQUMsQzlDZkgsT0FBTSxDQUFOLE9BQU0sQzhDZW9ELENBQUM7Q0FDakY7O0FBcENILEFBQUEsb0JBQW9CLEFBdUNmLEtBQU0sQ0FBQSxBQUFBLEVBQUUsQ0FBQyxRQUFRLENBQWxCO0VBQ0UsT0FBTyxFOUMrS0wsUUFBUTtDOEM5S1g7O0FDOVBMLEFBQUEsSUFBSSxDQUFDO0VBQ0gsWUFBWSxFQUFFLENBQUU7RUFDaEIsYUFBYSxFQUFFLENBQUU7RUFDakIsVUFBVSxFQUFFLElBQUs7Q0FDbEI7O0FBRUQsQUFBQSxTQUFTLENBQUM7RUFDUixPQUFPLEVBQUUsWUFBYTtDQWdCdkI7O0FBakJELEFBQUEsU0FBUyxBNUNTSixNQUFNLEU0Q1RYLEFBQUEsU0FBUyxBNUNVSixNQUFNLENBQUM7RTRDTlIsZUFBZSxFQUFFLElBQUs7QzVDUXJCOztBNENaTCxBQUFBLFNBQVMsQUFRTixTQUFTLENBQUM7RUFDVCxLQUFLLEUvQzBCbUIsT0FBTztDK0NuQmhDOztBQWhCSCxBQUFBLFNBQVMsQUFRTixTQUFTLEVBUlosQUFBQSxTQUFTLEFBUU4sU0FBUyxBNUNrQlAsTUFBTSxFNEMxQlgsQUFBQSxTQUFTLEFBUU4sU0FBUyxBNUNtQlAsTUFBTSxDQUFDO0U0Q2ZOLEtBQUssRS9DdUJpQixPQUFPO0UrQ3RCN0IsTUFBTSxFL0M2VXFCLFdBQVc7RStDNVV0QyxnQkFBZ0IsRS9DMGZVLFdBQVc7Q0czZXRDOztBNENQTCxBQUNFLFdBRFMsQ0FDVCxTQUFTLENBQUM7RUFDUixPQUFPLEVBQUUsWUFBYTtDQUN2Qjs7QUFISCxBQUtjLFdBTEgsQ0FLVCxTQUFTLEdBQUcsU0FBUztBQUx2QixBQU1jLFdBTkgsQ0FNVCxTQUFTLEdBQUcsU0FBUyxDQUFDO0VBQ3BCLFdBQVcsRS9Dc2VpQixJQUFJO0MrQ3JlakM7O0FBUUgsQUFBQSxTQUFTLENBQUM7RUFDUixhQUFhLEUvQ2lEQSxHQUFHLEMrQ2pEc0IsS0FBSyxDL0NtZUMsSUFBSTtDK0NwYmpEOztBQWhERCxBQUFBLFNBQVMsQW5CaEROLE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBRSxFQUFHO0VBQ1osT0FBTyxFQUFFLEtBQU07RUFDZixLQUFLLEVBQUUsSUFBSztDQUNiOztBbUI0Q0gsQUFJRSxTQUpPLENBSVAsU0FBUyxDQUFDO0VBQ1IsS0FBSyxFQUFFLElBQUs7RUFFWixhQUFhLEUvQzJDRixJQUFHO0MrQ3RDZjs7QUFaSCxBQVNNLFNBVEcsQ0FJUCxTQUFTLEdBS0wsU0FBUyxDQUFDO0VBQ1YsV0FBVyxFL0NrZGUsTUFBSztDK0NqZGhDOztBQVhMLEFBY0UsU0FkTyxDQWNQLFNBQVMsQ0FBQztFQUNSLE9BQU8sRUFBRSxLQUFNO0VBQ2YsT0FBTyxFL0M4Y3FCLEtBQUksQ0FBQyxHQUFHO0UrQzdjcEMsTUFBTSxFL0NpQ0ssR0FBRyxDK0NqQ2lCLEtBQUssQ0FBQyxXQUFXO0VyQnhEaEQsdUJBQXVCLEUxQm9PRixPQUFNO0UwQm5PM0Isc0JBQXNCLEUxQm1PRCxPQUFNO0MrQzlKNUI7O0FBL0JILEFBY0UsU0FkTyxDQWNQLFNBQVMsQTVDM0NOLE1BQU0sRTRDNkJYLEFBY0UsU0FkTyxDQWNQLFNBQVMsQTVDMUNOLE1BQU0sQ0FBQztFNENpRE4sWUFBWSxFL0N2QlUsT0FBTyxDQUFQLE9BQU8sQ0FzZVcsSUFBSTtDRzlmN0M7O0E0QzBCTCxBQWNFLFNBZE8sQ0FjUCxTQUFTLEFBVU4sU0FBUyxFQXhCZCxBQWNFLFNBZE8sQ0FjUCxTQUFTLEFBVU4sU0FBUyxBNUNwQ1QsTUFBTSxFNENZWCxBQWNFLFNBZE8sQ0FjUCxTQUFTLEFBVU4sU0FBUyxBNUNuQ1QsTUFBTSxDQUFDO0U0Q3FDSixLQUFLLEUvQzdCZSxPQUFPO0UrQzhCM0IsZ0JBQWdCLEVBQUUsV0FBWTtFQUM5QixZQUFZLEVBQUUsV0FBWTtDNUNyQzdCOztBNENTTCxBQWlDVyxTQWpDRixDQWlDUCxTQUFTLEFBQUEsT0FBTyxFQWpDbEIsQUFpQ1csU0FqQ0YsQ0FpQ1AsU0FBUyxBQUFBLE9BQU8sQTVDN0NiLE1BQU0sRTRDWVgsQUFpQ1csU0FqQ0YsQ0FpQ1AsU0FBUyxBQUFBLE9BQU8sQTVDNUNiLE1BQU07QTRDV1gsQUFrQ2lCLFNBbENSLENBa0NQLFNBQVMsQUFBQSxLQUFLLENBQUMsU0FBUztBQWxDMUIsQUFrQ2lCLFNBbENSLENBa0NQLFNBQVMsQUFBQSxLQUFLLENBQUMsU0FBUyxBNUM5Q3JCLE1BQU07QTRDWVgsQUFrQ2lCLFNBbENSLENBa0NQLFNBQVMsQUFBQSxLQUFLLENBQUMsU0FBUyxBNUM3Q3JCLE1BQU0sQ0FBQztFNEMrQ04sS0FBSyxFL0N4Q2lCLE9BQU87RStDeUM3QixnQkFBZ0IsRS9Db0JULElBQUk7RStDbkJYLFlBQVksRS9Db2M0QixJQUFJLENBQUosSUFBSSxDK0NwY29ELFdBQVc7QzVDL0M1Rzs7QTRDU0wsQUEwQ0UsU0ExQ08sQ0EwQ1AsY0FBYyxDQUFDO0VBRWIsVUFBVSxFL0NNQyxJQUFHO0UwQnpGZCx1QkFBdUIsRXFCcUZJLENBQUM7RXJCcEY1QixzQkFBc0IsRXFCb0ZLLENBQUM7Q0FDN0I7O0FBUUgsQUFBQSxVQUFVLEFuQnZHUCxPQUFPLENBQUM7RUFDUCxPQUFPLEVBQUUsRUFBRztFQUNaLE9BQU8sRUFBRSxLQUFNO0VBQ2YsS0FBSyxFQUFFLElBQUs7Q0FDYjs7QW1CbUdILEFBR0UsVUFIUSxDQUdSLFNBQVMsQ0FBQztFQUNSLEtBQUssRUFBRSxJQUFLO0NBS2I7O0FBVEgsQUFNTSxVQU5JLENBR1IsU0FBUyxHQUdMLFNBQVMsQ0FBQztFQUNWLFdBQVcsRS9DOFplLE1BQUs7QytDN1poQzs7QUFSTCxBQVdFLFVBWFEsQ0FXUixTQUFTLENBQUM7RUFDUixPQUFPLEVBQUUsS0FBTTtFQUNmLE9BQU8sRS9DMFpxQixLQUFJLENBQUMsR0FBRztFMEIzZ0JwQyxhQUFhLEUxQjBPUSxPQUFNO0MrQ3ZINUI7O0FBZkgsQUFpQlcsVUFqQkQsQ0FpQlIsU0FBUyxBQUFBLE9BQU8sRUFqQmxCLEFBaUJXLFVBakJELENBaUJSLFNBQVMsQUFBQSxPQUFPLEE1Q3BGYixNQUFNLEU0Q21FWCxBQWlCVyxVQWpCRCxDQWlCUixTQUFTLEFBQUEsT0FBTyxBNUNuRmIsTUFBTTtBNENrRVgsQUFrQmlCLFVBbEJQLENBa0JSLFNBQVMsQUFBQSxLQUFLLENBQUMsU0FBUztBQWxCMUIsQUFrQmlCLFVBbEJQLENBa0JSLFNBQVMsQUFBQSxLQUFLLENBQUMsU0FBUyxBNUNyRnJCLE1BQU07QTRDbUVYLEFBa0JpQixVQWxCUCxDQWtCUixTQUFTLEFBQUEsS0FBSyxDQUFDLFNBQVMsQTVDcEZyQixNQUFNLENBQUM7RTRDc0ZOLEtBQUssRS9Dc0hjLElBQUk7RStDckh2QixNQUFNLEVBQUUsT0FBUTtFQUNoQixnQkFBZ0IsRWxEckVOLE9BQU87Q01qQmxCOztBNEMyRkwsQUFDRSxZQURVLENBQ1YsU0FBUyxDQUFDO0VBQ1IsT0FBTyxFQUFFLEtBQU07RUFDZixLQUFLLEVBQUUsSUFBSztDQU1iOztBQVRILEFBS00sWUFMTSxDQUNWLFNBQVMsR0FJTCxTQUFTLENBQUM7RUFDVixVQUFVLEUvQ29ZZ0IsTUFBSztFK0NuWS9CLFdBQVcsRUFBRSxDQUFFO0NBQ2hCOztBQVVMLEFBQ0ksWUFEUSxHQUNSLFNBQVMsQ0FBQztFQUNWLE9BQU8sRUFBRSxJQUFLO0NBQ2Y7O0FBSEgsQUFJSSxZQUpRLEdBSVIsT0FBTyxDQUFDO0VBQ1IsT0FBTyxFQUFFLEtBQU07Q0FDaEI7O0FDdEpILEFBQUEsT0FBTyxDQUFDO0VBQ04sUUFBUSxFQUFFLFFBQVM7RUFDbkIsT0FBTyxFaER5ZTRCLE1BQU8sQ0FsYWpDLElBQUk7Q2dEakVkOztBQVJELEFBQUEsT0FBTyxBcEJKSixPQUFPLENBQUM7RUFDUCxPQUFPLEVBQUUsRUFBRztFQUNaLE9BQU8sRUFBRSxLQUFNO0VBQ2YsS0FBSyxFQUFFLElBQUs7Q0FDYjs7QTFCd0NDLE1BQU0sRUFBTCxTQUFTLEVBQUUsS0FBSztFOEN4Q3JCLEFBQUEsT0FBTyxDQUFDO0l0QkRKLGFBQWEsRTFCME9RLE9BQU07R2dEak85Qjs7O0FBU0QsQUFBQSxZQUFZLENBQUM7RUFDWCxPQUFPLEVoRDJja0IsSUFBSTtDZ0R0YzlCOztBOUNpQkcsTUFBTSxFQUFMLFNBQVMsRUFBRSxLQUFLO0U4Q3ZCckIsQUFBQSxZQUFZLENBQUM7SXRCbEJULGFBQWEsRXNCc0JVLENBQUM7R0FFM0I7OztBQUdELEFBQUEsaUJBQWlCO0FBQ2pCLEFBQUEsb0JBQW9CLENBQUM7RUFDbkIsUUFBUSxFQUFFLEtBQU07RUFDaEIsS0FBSyxFQUFFLENBQUU7RUFDVCxJQUFJLEVBQUUsQ0FBRTtFQUNSLE9BQU8sRWhEa2NrQixJQUFJO0NnRDViOUI7O0E5Q0dHLE1BQU0sRUFBTCxTQUFTLEVBQUUsS0FBSztFOENkckIsQUFBQSxpQkFBaUI7RUFDakIsQUFBQSxvQkFBb0IsQ0FBQztJdEI1QmpCLGFBQWEsRXNCb0NVLENBQUM7R0FFM0I7OztBQUVELEFBQUEsaUJBQWlCLENBQUM7RUFDaEIsR0FBRyxFQUFFLENBQUU7Q0FDUjs7QUFFRCxBQUFBLG9CQUFvQixDQUFDO0VBQ25CLE1BQU0sRUFBRSxDQUFFO0NBQ1g7O0FBRUQsQUFBQSxrQkFBa0IsQ0FBQztFQUNqQixRQUFRLEVBQUUsTUFBTztFQUNqQixHQUFHLEVBQUUsQ0FBRTtFQUNQLE9BQU8sRWhEZ2JrQixJQUFJO0VnRC9hN0IsS0FBSyxFQUFFLElBQUs7Q0FNYjs7QTlDakJHLE1BQU0sRUFBTCxTQUFTLEVBQUUsS0FBSztFOENPckIsQUFBQSxrQkFBa0IsQ0FBQztJdEJoRGYsYUFBYSxFc0J3RFUsQ0FBQztHQUUzQjs7O0FBT0QsQUFBQSxhQUFhLENBQUM7RUFDWixLQUFLLEVBQUUsSUFBSztFQUNaLFdBQVcsRWhEMmF1QixPQUFNO0VnRDFheEMsY0FBYyxFaEQwYW9CLE9BQU07RWdEemF4QyxZQUFZLEVBQUUsSUFBSztFQUNuQixTQUFTLEVoRHFHTSxPQUFPO0VnRHBHdEIsV0FBVyxFQUFFLE9BQVE7Q0FLdEI7O0FBWEQsQUFBQSxhQUFhLEE3Q2pEUixNQUFNLEU2Q2lEWCxBQUFBLGFBQWEsQTdDaERSLE1BQU0sQ0FBQztFNkN5RFIsZUFBZSxFQUFFLElBQUs7QzdDdkRyQjs7QTZDNERMLEFBQUEsZUFBZSxDQUFDO0VBQ2QsS0FBSyxFQUFFLElBQUs7RUFDWixLQUFLLEVoRGNRLEdBQUc7RWdEYmhCLFdBQVcsRWhEOFp1QixRQUFPO0VnRDdaekMsY0FBYyxFaEQ2Wm9CLFFBQU87RWdENVp6QyxZQUFZLEVoRFZILElBQUk7RWdEV2IsV0FBVyxFaERYRixJQUFJO0VnRFliLFFBQVEsRUFBRSxNQUFPO0NBS2xCOztBQVpELEFBQUEsZUFBZSxBQVNaLFFBQVEsQ0FBQztFQUNSLE9BQU8sRUFBRSxPQUFRO0NBQ2xCOztBQVFILEFBQUEsWUFBWSxDQUFDO0VBQ1gsT0FBTyxFQUFFLFlBQWE7RUFDdEIsV0FBVyxFQUFLLE9BQVE7RUFDeEIsY0FBYyxFQUFFLE9BQVE7Q0FDekI7O0FBUUQsQUFBQSxlQUFlLENBQUM7RUFDZCxLQUFLLEVBQUUsS0FBTTtFQUNiLE1BQU0sRUFBRSxHQUFJO0VBQ1osT0FBTyxFaERrWTRCLE1BQUssQ0FETCxPQUFNO0VnRGhZekMsU0FBUyxFaER5RE0sT0FBTztFZ0R4RHRCLFdBQVcsRUFBRSxDQUFFO0VBQ2YsVUFBVSxFQUFFLG1DQUFvQztFQUNoRCxlQUFlLEVBQUUsU0FBVTtFQUMzQixNQUFNLEVoRHZCTyxHQUFHLENnRHVCTSxLQUFLLENBQUMsV0FBVztFdEJ0SHJDLGFBQWEsRTFCME9RLE9BQU07Q2dEOUc5Qjs7QUFkRCxBQUFBLGVBQWUsQTdDOUZWLE1BQU0sRTZDOEZYLEFBQUEsZUFBZSxBN0M3RlYsTUFBTSxDQUFDO0U2Q3lHUixlQUFlLEVBQUUsSUFBSztDN0N2R3JCOztBNkM0R0wsQUFBQSxxQkFBa0IsQXBCbElmLE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBRSxFQUFHO0VBQ1osT0FBTyxFQUFFLEtBQU07RUFDZixLQUFLLEVBQUUsSUFBSztDQUNiOztBMUJxREMsTUFBTSxFQUFMLFNBQVMsRUFBRSxLQUFLO0U4Q3lFckIsQUFRUSxxQkFSVSxDQVFWLGFBQWEsQ0FBQztJQUNaLE9BQU8sRUFBRSxLQUFNO0lBQ2YsS0FBSyxFQUFFLElBQUs7SUFDWixVQUFVLEVBQUUsS0FBTTtJQUNsQixZQUFZLEVBQUUsQ0FBRTtHQUNqQjtFQWJULEFBZVEscUJBZlUsQ0FlVixXQUFXLENBQUM7SUFDVixVQUFVLEVBQUUsS0FBTTtJQUNsQixhQUFhLEVBQUUsS0FBTTtHQU10QjtFQXZCVCxBQW1CVSxxQkFuQlEsQ0FlVixXQUFXLENBSVQsY0FBYyxDQUFDO0lBQ2IsUUFBUSxFQUFFLE1BQU87SUFDakIsS0FBSyxFQUFFLElBQUs7R0FDYjs7O0E5QzVHUCxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RThDc0ZyQixBQUFBLHFCQUFrQixDQUlkO0lBdUJJLE9BQU8sRUFBRSxLQUFNO0dBRWxCOzs7QUE3QkwsQUFBQSxxQkFBa0IsQXBCbElmLE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBRSxFQUFHO0VBQ1osT0FBTyxFQUFFLEtBQU07RUFDZixLQUFLLEVBQUUsSUFBSztDQUNiOztBMUJxREMsTUFBTSxFQUFMLFNBQVMsRUFBRSxLQUFLO0U4Q3lFckIsQUFRUSxxQkFSVSxDQVFWLGFBQWEsQ0FBQztJQUNaLE9BQU8sRUFBRSxLQUFNO0lBQ2YsS0FBSyxFQUFFLElBQUs7SUFDWixVQUFVLEVBQUUsS0FBTTtJQUNsQixZQUFZLEVBQUUsQ0FBRTtHQUNqQjtFQWJULEFBZVEscUJBZlUsQ0FlVixXQUFXLENBQUM7SUFDVixVQUFVLEVBQUUsS0FBTTtJQUNsQixhQUFhLEVBQUUsS0FBTTtHQU10QjtFQXZCVCxBQW1CVSxxQkFuQlEsQ0FlVixXQUFXLENBSVQsY0FBYyxDQUFDO0lBQ2IsUUFBUSxFQUFFLE1BQU87SUFDakIsS0FBSyxFQUFFLElBQUs7R0FDYjs7O0E5QzVHUCxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RThDc0ZyQixBQUFBLHFCQUFrQixDQUlkO0lBdUJJLE9BQU8sRUFBRSxLQUFNO0dBRWxCOzs7QUE3QkwsQUFBQSxxQkFBa0IsQXBCbElmLE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBRSxFQUFHO0VBQ1osT0FBTyxFQUFFLEtBQU07RUFDZixLQUFLLEVBQUUsSUFBSztDQUNiOztBMUJxREMsTUFBTSxFQUFMLFNBQVMsRUFBRSxLQUFLO0U4Q3lFckIsQUFRUSxxQkFSVSxDQVFWLGFBQWEsQ0FBQztJQUNaLE9BQU8sRUFBRSxLQUFNO0lBQ2YsS0FBSyxFQUFFLElBQUs7SUFDWixVQUFVLEVBQUUsS0FBTTtJQUNsQixZQUFZLEVBQUUsQ0FBRTtHQUNqQjtFQWJULEFBZVEscUJBZlUsQ0FlVixXQUFXLENBQUM7SUFDVixVQUFVLEVBQUUsS0FBTTtJQUNsQixhQUFhLEVBQUUsS0FBTTtHQU10QjtFQXZCVCxBQW1CVSxxQkFuQlEsQ0FlVixXQUFXLENBSVQsY0FBYyxDQUFDO0lBQ2IsUUFBUSxFQUFFLE1BQU87SUFDakIsS0FBSyxFQUFFLElBQUs7R0FDYjs7O0E5QzVHUCxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RThDc0ZyQixBQUFBLHFCQUFrQixDQUlkO0lBdUJJLE9BQU8sRUFBRSxLQUFNO0dBRWxCOzs7QUE3QkwsQUFBQSxxQkFBa0IsQXBCbElmLE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBRSxFQUFHO0VBQ1osT0FBTyxFQUFFLEtBQU07RUFDZixLQUFLLEVBQUUsSUFBSztDQUNiOztBMUJxREMsTUFBTSxFQUFMLFNBQVMsRUFBRSxNQUFNO0U4Q3lFdEIsQUFRUSxxQkFSVSxDQVFWLGFBQWEsQ0FBQztJQUNaLE9BQU8sRUFBRSxLQUFNO0lBQ2YsS0FBSyxFQUFFLElBQUs7SUFDWixVQUFVLEVBQUUsS0FBTTtJQUNsQixZQUFZLEVBQUUsQ0FBRTtHQUNqQjtFQWJULEFBZVEscUJBZlUsQ0FlVixXQUFXLENBQUM7SUFDVixVQUFVLEVBQUUsS0FBTTtJQUNsQixhQUFhLEVBQUUsS0FBTTtHQU10QjtFQXZCVCxBQW1CVSxxQkFuQlEsQ0FlVixXQUFXLENBSVQsY0FBYyxDQUFDO0lBQ2IsUUFBUSxFQUFFLE1BQU87SUFDakIsS0FBSyxFQUFFLElBQUs7R0FDYjs7O0E5QzVHUCxNQUFNLEVBQUwsU0FBUyxFQUFFLE1BQU07RThDc0Z0QixBQUFBLHFCQUFrQixDQUlkO0lBdUJJLE9BQU8sRUFBRSxLQUFNO0dBRWxCOzs7QUE3QkwsQUFBQSxxQkFBa0IsQ0FJZDtFQXVCSSxPQUFPLEVBQUUsS0FBTTtDQUVsQjs7QUE3QkwsQUFBQSxxQkFBa0IsQXBCbElmLE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBRSxFQUFHO0VBQ1osT0FBTyxFQUFFLEtBQU07RUFDZixLQUFLLEVBQUUsSUFBSztDQUNiOztBb0I4SEgsQUFRUSxxQkFSVSxDQVFWLGFBQWEsQ0FBQztFQUNaLE9BQU8sRUFBRSxLQUFNO0VBQ2YsS0FBSyxFQUFFLElBQUs7RUFDWixVQUFVLEVBQUUsS0FBTTtFQUNsQixZQUFZLEVBQUUsQ0FBRTtDQUNqQjs7QUFiVCxBQWVRLHFCQWZVLENBZVYsV0FBVyxDQUFDO0VBQ1YsVUFBVSxFQUFFLEtBQU07RUFDbEIsYUFBYSxFQUFFLEtBQU07Q0FNdEI7O0FBdkJULEFBbUJVLHFCQW5CUSxDQWVWLFdBQVcsQ0FJVCxjQUFjLENBQUM7RUFDYixRQUFRLEVBQUUsTUFBTztFQUNqQixLQUFLLEVBQUUsSUFBSztDQUNiOztBQWlCWCxBQUNFLFdBRFMsQ0FDVCxTQUFTLENBQUM7RUFDUixLQUFLLEVBQUUsSUFBSztDQUNiOztBQUhILEFBS0UsV0FMUyxDQUtULFNBQVMsQ0FBQztFQUNSLE9BQU8sRUFBRSxLQUFNO0VBQ2YsV0FBVyxFQUFLLE9BQVE7RUFDeEIsY0FBYyxFQUFFLE9BQVE7Q0FLekI7O0FBYkgsQUFVTSxXQVZLLENBS1QsU0FBUyxHQUtMLFNBQVMsQ0FBQztFQUNWLFdBQVcsRUFBRSxJQUFLO0NBQ25COztBQVpMLEFBZWMsV0FmSCxDQWVULFNBQVMsR0FBRyxTQUFTLENBQUM7RUFDcEIsV0FBVyxFQUFFLElBQUs7Q0FDbkI7O0FBSUgsQUFDRSxhQURXLENBQ1gsYUFBYTtBQURmLEFBRUUsYUFGVyxDQUVYLGVBQWUsQ0FBQztFQUNkLEtBQUssRWhEb1UyQixrQkFBSTtDZ0QvVHJDOztBQVJILEFBQ0UsYUFEVyxDQUNYLGFBQWEsQTdDNUtWLE1BQU0sRTZDMktYLEFBQ0UsYUFEVyxDQUNYLGFBQWEsQTdDM0tWLE1BQU07QTZDMEtYLEFBRUUsYUFGVyxDQUVYLGVBQWUsQTdDN0taLE1BQU07QTZDMktYLEFBRUUsYUFGVyxDQUVYLGVBQWUsQTdDNUtaLE1BQU0sQ0FBQztFNkNnTE4sS0FBSyxFaERpVXlCLGtCQUFJO0NHL2VuQzs7QTZDd0tMLEFBV0ksYUFYUyxDQVVYLFdBQVcsQ0FDVCxTQUFTLENBQUM7RUFDUixLQUFLLEVoRHlUeUIsa0JBQUk7Q2dEcFRuQzs7QUFqQkwsQUFXSSxhQVhTLENBVVgsV0FBVyxDQUNULFNBQVMsQTdDdExSLE1BQU0sRTZDMktYLEFBV0ksYUFYUyxDQVVYLFdBQVcsQ0FDVCxTQUFTLEE3Q3JMUixNQUFNLENBQUM7RTZDeUxKLEtBQUssRWhEdVR1QixrQkFBSTtDRzllbkM7O0E2Q3dLTCxBQW1CWSxhQW5CQyxDQVVYLFdBQVcsQ0FTVCxLQUFLLEdBQUcsU0FBUyxFQW5CckIsQUFtQlksYUFuQkMsQ0FVWCxXQUFXLENBU1QsS0FBSyxHQUFHLFNBQVMsQTdDN0toQixNQUFNLEU2QzBKWCxBQW1CWSxhQW5CQyxDQVVYLFdBQVcsQ0FTVCxLQUFLLEdBQUcsU0FBUyxBN0M1S2hCLE1BQU07QTZDeUpYLEFBb0JjLGFBcEJELENBVVgsV0FBVyxDQVVULE9BQU8sR0FBRyxTQUFTO0FBcEJ2QixBQW9CYyxhQXBCRCxDQVVYLFdBQVcsQ0FVVCxPQUFPLEdBQUcsU0FBUyxBN0M5S2xCLE1BQU07QTZDMEpYLEFBb0JjLGFBcEJELENBVVgsV0FBVyxDQVVULE9BQU8sR0FBRyxTQUFTLEE3QzdLbEIsTUFBTTtBNkN5SlgsQUFxQmEsYUFyQkEsQ0FVWCxXQUFXLENBV1QsU0FBUyxBQUFBLEtBQUs7QUFyQmxCLEFBcUJhLGFBckJBLENBVVgsV0FBVyxDQVdULFNBQVMsQUFBQSxLQUFLLEE3Qy9LYixNQUFNO0E2QzBKWCxBQXFCYSxhQXJCQSxDQVVYLFdBQVcsQ0FXVCxTQUFTLEFBQUEsS0FBSyxBN0M5S2IsTUFBTTtBNkN5SlgsQUFzQmEsYUF0QkEsQ0FVWCxXQUFXLENBWVQsU0FBUyxBQUFBLE9BQU87QUF0QnBCLEFBc0JhLGFBdEJBLENBVVgsV0FBVyxDQVlULFNBQVMsQUFBQSxPQUFPLEE3Q2hMZixNQUFNO0E2QzBKWCxBQXNCYSxhQXRCQSxDQVVYLFdBQVcsQ0FZVCxTQUFTLEFBQUEsT0FBTyxBN0MvS2YsTUFBTSxDQUFDO0U2Q2lMSixLQUFLLEVoRCtTdUIsa0JBQUk7Q0c5ZG5DOztBNkN1SkwsQUE2QkUsYUE3QlcsQ0E2QlgsZUFBZSxDQUFDO0VBQ2QsZ0JBQWdCLEVoRDJTTSxtUEFBRztFZ0QxU3pCLFlBQVksRWhEMlNvQixrQkFBSTtDZ0QxU3JDOztBQWhDSCxBQWtDRSxhQWxDVyxDQWtDWCxlQUFlLENBQUM7RUFDZCxnQkFBZ0IsRUFBRSxvQkFBSTtDQUN2Qjs7QUFJSCxBQUNFLFlBRFUsQ0FDVixhQUFhO0FBRGYsQUFFRSxZQUZVLENBRVYsZUFBZSxDQUFDO0VBQ2QsS0FBSyxFaERxUjJCLEtBQUk7Q2dEaFJyQzs7QUFSSCxBQUNFLFlBRFUsQ0FDVixhQUFhLEE3Q3BOVixNQUFNLEU2Q21OWCxBQUNFLFlBRFUsQ0FDVixhQUFhLEE3Q25OVixNQUFNO0E2Q2tOWCxBQUVFLFlBRlUsQ0FFVixlQUFlLEE3Q3JOWixNQUFNO0E2Q21OWCxBQUVFLFlBRlUsQ0FFVixlQUFlLEE3Q3BOWixNQUFNLENBQUM7RTZDd05OLEtBQUssRWhEa1J5QixLQUFJO0NHeGVuQzs7QTZDZ05MLEFBV0ksWUFYUSxDQVVWLFdBQVcsQ0FDVCxTQUFTLENBQUM7RUFDUixLQUFLLEVoRDBReUIsd0JBQUk7Q2dEclFuQzs7QUFqQkwsQUFXSSxZQVhRLENBVVYsV0FBVyxDQUNULFNBQVMsQTdDOU5SLE1BQU0sRTZDbU5YLEFBV0ksWUFYUSxDQVVWLFdBQVcsQ0FDVCxTQUFTLEE3QzdOUixNQUFNLENBQUM7RTZDaU9KLEtBQUssRWhEd1F1Qix5QkFBSTtDR3ZlbkM7O0E2Q2dOTCxBQW1CWSxZQW5CQSxDQVVWLFdBQVcsQ0FTVCxLQUFLLEdBQUcsU0FBUyxFQW5CckIsQUFtQlksWUFuQkEsQ0FVVixXQUFXLENBU1QsS0FBSyxHQUFHLFNBQVMsQTdDck5oQixNQUFNLEU2Q2tNWCxBQW1CWSxZQW5CQSxDQVVWLFdBQVcsQ0FTVCxLQUFLLEdBQUcsU0FBUyxBN0NwTmhCLE1BQU07QTZDaU1YLEFBb0JjLFlBcEJGLENBVVYsV0FBVyxDQVVULE9BQU8sR0FBRyxTQUFTO0FBcEJ2QixBQW9CYyxZQXBCRixDQVVWLFdBQVcsQ0FVVCxPQUFPLEdBQUcsU0FBUyxBN0N0TmxCLE1BQU07QTZDa01YLEFBb0JjLFlBcEJGLENBVVYsV0FBVyxDQVVULE9BQU8sR0FBRyxTQUFTLEE3Q3JObEIsTUFBTTtBNkNpTVgsQUFxQmEsWUFyQkQsQ0FVVixXQUFXLENBV1QsU0FBUyxBQUFBLEtBQUs7QUFyQmxCLEFBcUJhLFlBckJELENBVVYsV0FBVyxDQVdULFNBQVMsQUFBQSxLQUFLLEE3Q3ZOYixNQUFNO0E2Q2tNWCxBQXFCYSxZQXJCRCxDQVVWLFdBQVcsQ0FXVCxTQUFTLEFBQUEsS0FBSyxBN0N0TmIsTUFBTTtBNkNpTVgsQUFzQmEsWUF0QkQsQ0FVVixXQUFXLENBWVQsU0FBUyxBQUFBLE9BQU87QUF0QnBCLEFBc0JhLFlBdEJELENBVVYsV0FBVyxDQVlULFNBQVMsQUFBQSxPQUFPLEE3Q3hOZixNQUFNO0E2Q2tNWCxBQXNCYSxZQXRCRCxDQVVWLFdBQVcsQ0FZVCxTQUFTLEFBQUEsT0FBTyxBN0N2TmYsTUFBTSxDQUFDO0U2Q3lOSixLQUFLLEVoRGdRdUIsS0FBSTtDR3ZkbkM7O0E2QytMTCxBQTZCRSxZQTdCVSxDQTZCVixlQUFlLENBQUM7RUFDZCxnQkFBZ0IsRWhENFBLLHlQQUFHO0VnRDNQeEIsWUFBWSxFaEQ0UG9CLHdCQUFJO0NnRDNQckM7O0FBaENILEFBa0NFLFlBbENVLENBa0NWLGVBQWUsQ0FBQztFQUNkLGdCQUFnQixFQUFFLDBCQUFJO0NBQ3ZCOztBQVFILEFBQUEscUJBQWtCLEFwQmxSZixPQUFPLENBQUM7RUFDUCxPQUFPLEVBQUUsRUFBRztFQUNaLE9BQU8sRUFBRSxLQUFNO0VBQ2YsS0FBSyxFQUFFLElBQUs7Q0FDYjs7QTFCcURDLE1BQU0sRUFBTCxTQUFTLEVBQUUsS0FBSztFOEN5TnJCLEFBSWtCLHFCQUpBLENBSVosV0FBVyxDQUFDLFNBQVMsQ0FBQztJQUNwQixLQUFLLEVBQUUsSUFBSztJQUNaLFdBQVcsRUFBRSxDQUFFO0dBQ2hCOzs7QTlDN09ILE1BQU0sRUFBTCxTQUFTLEVBQUUsS0FBSztFOENzT3JCLEFBQUEscUJBQWtCLENBQ1g7SUFTRCxPQUFPLEVBQUUsZ0JBQWlCO0dBRTdCOzs7QUFaSCxBQUFBLHFCQUFrQixBcEJsUmYsT0FBTyxDQUFDO0VBQ1AsT0FBTyxFQUFFLEVBQUc7RUFDWixPQUFPLEVBQUUsS0FBTTtFQUNmLEtBQUssRUFBRSxJQUFLO0NBQ2I7O0ExQnFEQyxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RThDeU5yQixBQWlCa0IscUJBakJBLENBaUJaLFdBQVcsQ0FBQyxTQUFTLENBQUM7SUFDcEIsS0FBSyxFQUFFLElBQUs7SUFDWixXQUFXLEVBQUUsQ0FBRTtHQUNoQjs7O0E5QzFQSCxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RThDc09yQixBQUFBLHFCQUFrQixDQWNYO0lBU0QsT0FBTyxFQUFFLGdCQUFpQjtHQUU3Qjs7O0FBekJILEFBQUEscUJBQWtCLEFwQmxSZixPQUFPLENBQUM7RUFDUCxPQUFPLEVBQUUsRUFBRztFQUNaLE9BQU8sRUFBRSxLQUFNO0VBQ2YsS0FBSyxFQUFFLElBQUs7Q0FDYjs7QTFCcURDLE1BQU0sRUFBTCxTQUFTLEVBQUUsS0FBSztFOEN5TnJCLEFBOEJrQixxQkE5QkEsQ0E4QlosV0FBVyxDQUFDLFNBQVMsQ0FBQztJQUNwQixLQUFLLEVBQUUsSUFBSztJQUNaLFdBQVcsRUFBRSxDQUFFO0dBQ2hCOzs7QTlDdlFILE1BQU0sRUFBTCxTQUFTLEVBQUUsS0FBSztFOENzT3JCLEFBQUEscUJBQWtCLENBMkJYO0lBU0QsT0FBTyxFQUFFLGdCQUFpQjtHQUU3Qjs7O0FDclRILEFBQUEsS0FBSyxDQUFDO0VBQ0osUUFBUSxFQUFFLFFBQVM7RUFDbkIsT0FBTyxFQUFFLEtBQU07RUFDZixhQUFhLEVqRHVsQlksT0FBTTtFaUR0bEIvQixnQkFBZ0IsRWpENGxCUyxJQUFJO0UwQmhtQjNCLGFBQWEsRTFCME9RLE9BQU07RWlEbk83QixNQUFNLEVqRG9sQm1CLEdBQUcsQ2lEcGxCRCxLQUFLLENqRHNsQlAsb0JBQUk7Q2lEcmxCOUI7O0FBRUQsQUFBQSxXQUFXLENBQUM7RUFFVixPQUFPLEVqRDZrQmtCLE9BQU87Q2lENWtCakM7O0FBSEQsQUFBQSxXQUFXLEFyQmJSLE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBRSxFQUFHO0VBQ1osT0FBTyxFQUFFLEtBQU07RUFDZixLQUFLLEVBQUUsSUFBSztDQUNiOztBcUJjSCxBQUFBLFdBQVcsQ0FBQztFQUNWLGFBQWEsRWpEMGtCWSxPQUFNO0NpRHprQmhDOztBQUVELEFBQUEsY0FBYyxDQUFDO0VBQ2IsVUFBVSxFQUFJLFNBQWM7RUFDNUIsYUFBYSxFQUFFLENBQUU7Q0FDbEI7O0FBRUQsQUFBVSxVQUFBLEFBQUEsV0FBVyxDQUFDO0VBQ3BCLGFBQWEsRUFBRSxDQUFFO0NBQ2xCOztBQVVELEFBQUEsVUFBVSxBOUM5QkwsTUFBTSxDQUFDO0U4Q2dDUixlQUFlLEVBQUUsSUFBSztDOUNoQ0Q7O0E4QzhCekIsQUFLSSxVQUxNLEdBS04sVUFBVSxDQUFDO0VBQ1gsV0FBVyxFakQraUJZLE9BQU87Q2lEOWlCL0I7O0FBR0gsQUFFb0IsS0FGZixHQUNELFdBQVcsQUFBQSxZQUFZLENBQ3ZCLGdCQUFnQixBQUFBLFlBQVksQ0FBQztFdkIxQzdCLHVCQUF1QixFMUJvT0YsT0FBTTtFMEJuTzNCLHNCQUFzQixFMUJtT0QsT0FBTTtDaUR4TDFCOztBQUpMLEFBUW9CLEtBUmYsR0FPRCxXQUFXLEFBQUEsV0FBVyxDQUN0QixnQkFBZ0IsQUFBQSxXQUFXLENBQUM7RXZCbEM1QiwwQkFBMEIsRTFCc05MLE9BQU07RTBCck4zQix5QkFBeUIsRTFCcU5KLE9BQU07Q2lEbEwxQjs7QUFTTCxBQUFBLFlBQVksQ0FBQztFQUVYLE9BQU8sRWpEdWhCa0IsT0FBTSxDQUROLE9BQU87RWlEcmhCaEMsYUFBYSxFQUFFLENBQUU7RUFDakIsZ0JBQWdCLEVqRDBoQlMsT0FBTztFaUR6aEJoQyxhQUFhLEVqRHFoQlksR0FBRyxDaURyaEJNLEtBQUssQ2pEdWhCZCxvQkFBSTtDaURsaEI5Qjs7QUFWRCxBQUFBLFlBQVksQXJCcEVULE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBRSxFQUFHO0VBQ1osT0FBTyxFQUFFLEtBQU07RUFDZixLQUFLLEVBQUUsSUFBSztDQUNiOztBcUJnRUgsQUFBQSxZQUFZLEFBT1QsWUFBWSxDQUFDO0V2QnhFWixhQUFhLEUxQjhsQlUsbUJBQUksQ0FBSixtQkFBSSxDaURyaEJnRCxDQUFDLENBQUMsQ0FBQztDQUMvRTs7QUFHSCxBQUFBLFlBQVksQ0FBQztFQUVYLE9BQU8sRWpEMmdCa0IsT0FBTSxDQUROLE9BQU87RWlEemdCaEMsZ0JBQWdCLEVqRCtnQlMsT0FBTztFaUQ5Z0JoQyxVQUFVLEVqRDBnQmUsR0FBRyxDaUQxZ0JHLEtBQUssQ2pENGdCWCxvQkFBSTtDaUR2Z0I5Qjs7QUFURCxBQUFBLFlBQVksQXJCaEZULE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBRSxFQUFHO0VBQ1osT0FBTyxFQUFFLEtBQU07RUFDZixLQUFLLEVBQUUsSUFBSztDQUNiOztBcUI0RUgsQUFBQSxZQUFZLEFBTVQsV0FBVyxDQUFDO0V2Qm5GWCxhQUFhLEV1Qm9GVSxDQUFDLENBQUMsQ0FBQyxDakQwZ0JILG1CQUFJLENBQUosbUJBQUk7Q2lEemdCNUI7O0FBUUgsQUFBQSxpQkFBaUIsQ0FBQztFQUNoQixZQUFZLEVBQUksU0FBYztFQUM5QixhQUFhLEVqRDJmWSxRQUFNO0VpRDFmL0IsV0FBVyxFQUFJLFNBQWM7RUFDN0IsYUFBYSxFQUFFLENBQUU7Q0FDbEI7O0FBRUQsQUFBQSxrQkFBa0IsQ0FBQztFQUNqQixZQUFZLEVBQUksU0FBYztFQUM5QixXQUFXLEVBQUksU0FBYztDQUM5Qjs7QUFPRCxBQUFBLGFBQWEsQ0FBQztFaEMvR1osZ0JBQWdCLEVwQnNERixPQUFPO0VvQnJEckIsWUFBWSxFcEJxREUsT0FBTztDb0QyRHRCOztBQUZELEFoQzVHRSxhZ0M0R1csQ2hDNUdYLFlBQVk7QWdDNEdkLEFoQzNHRSxhZ0MyR1csQ2hDM0dYLFlBQVksQ0FBQztFQUNYLGdCQUFnQixFQUFFLFdBQVk7Q0FDL0I7O0FnQzRHSCxBQUFBLGFBQWEsQ0FBQztFaENsSFosZ0JBQWdCLEVwQndERixPQUFPO0VvQnZEckIsWUFBWSxFcEJ1REUsT0FBTztDb0Q0RHRCOztBQUZELEFoQy9HRSxhZ0MrR1csQ2hDL0dYLFlBQVk7QWdDK0dkLEFoQzlHRSxhZ0M4R1csQ2hDOUdYLFlBQVksQ0FBQztFQUNYLGdCQUFnQixFQUFFLFdBQVk7Q0FDL0I7O0FnQytHSCxBQUFBLFVBQVUsQ0FBQztFaENySFQsZ0JBQWdCLEVwQnlERixPQUFPO0VvQnhEckIsWUFBWSxFcEJ3REUsT0FBTztDb0Q4RHRCOztBQUZELEFoQ2xIRSxVZ0NrSFEsQ2hDbEhSLFlBQVk7QWdDa0hkLEFoQ2pIRSxVZ0NpSFEsQ2hDakhSLFlBQVksQ0FBQztFQUNYLGdCQUFnQixFQUFFLFdBQVk7Q0FDL0I7O0FnQ2tISCxBQUFBLGFBQWEsQ0FBQztFaEN4SFosZ0JBQWdCLEVwQjBERixPQUFPO0VvQnpEckIsWUFBWSxFcEJ5REUsT0FBTztDb0RnRXRCOztBQUZELEFoQ3JIRSxhZ0NxSFcsQ2hDckhYLFlBQVk7QWdDcUhkLEFoQ3BIRSxhZ0NvSFcsQ2hDcEhYLFlBQVksQ0FBQztFQUNYLGdCQUFnQixFQUFFLFdBQVk7Q0FDL0I7O0FnQ3FISCxBQUFBLFlBQVksQ0FBQztFaEMzSFgsZ0JBQWdCLEVwQnVEQSxPQUFPO0VvQnREdkIsWUFBWSxFcEJzREksT0FBTztDb0RzRXhCOztBQUZELEFoQ3hIRSxZZ0N3SFUsQ2hDeEhWLFlBQVk7QWdDd0hkLEFoQ3ZIRSxZZ0N1SFUsQ2hDdkhWLFlBQVksQ0FBQztFQUNYLGdCQUFnQixFQUFFLFdBQVk7Q0FDL0I7O0FnQzBISCxBQUFBLHFCQUFxQixDQUFDO0VoQ3RIcEIsZ0JBQWdCLEVBQUUsV0FBWTtFQUM5QixZQUFZLEVwQjJDRSxPQUFPO0NvRDRFdEI7O0FBQ0QsQUFBQSx1QkFBdUIsQ0FBQztFaEN6SHRCLGdCQUFnQixFQUFFLFdBQVk7RUFDOUIsWUFBWSxFakI0UW1CLElBQUk7Q2lEbEpwQzs7QUFDRCxBQUFBLGtCQUFrQixDQUFDO0VoQzVIakIsZ0JBQWdCLEVBQUUsV0FBWTtFQUM5QixZQUFZLEVwQjhDRSxPQUFPO0NvRCtFdEI7O0FBQ0QsQUFBQSxxQkFBcUIsQ0FBQztFaEMvSHBCLGdCQUFnQixFQUFFLFdBQVk7RUFDOUIsWUFBWSxFcEI2Q0UsT0FBTztDb0RtRnRCOztBQUNELEFBQUEscUJBQXFCLENBQUM7RWhDbElwQixnQkFBZ0IsRUFBRSxXQUFZO0VBQzlCLFlBQVksRXBCK0NFLE9BQU87Q29Eb0Z0Qjs7QUFDRCxBQUFBLG9CQUFvQixDQUFDO0VoQ3JJbkIsZ0JBQWdCLEVBQUUsV0FBWTtFQUM5QixZQUFZLEVwQjRDSSxPQUFPO0NvRDBGeEI7O0FBTUQsQWhDcElFLGFnQ29JVyxDaENwSVgsWUFBWTtBZ0NvSWQsQWhDbklFLGFnQ21JVyxDaENuSVgsWUFBWSxDQUFDO0VBQ1gsWUFBWSxFQUFFLHdCQUFJO0NBQ25COztBZ0NpSUgsQWhDaElFLGFnQ2dJVyxDaENoSVgsWUFBWTtBZ0NnSWQsQWhDL0hFLGFnQytIVyxDaEMvSFgsWUFBWTtBZ0MrSGQsQWhDOUhFLGFnQzhIVyxDaEM5SFgsV0FBVztBZ0M4SGIsQWhDN0hFLGFnQzZIVyxDaEM3SFgsZ0JBQWdCLENBQUM7RUFDZixLQUFLLEVBQUUsSUFBSztDQUNiOztBZ0MySEgsQWhDMUhFLGFnQzBIVyxDaEMxSFgsVUFBVTtBZ0MwSFosQWhDekhFLGFnQ3lIVyxDaEN6SFgsVUFBVTtBZ0N5SFosQWhDeEhFLGFnQ3dIVyxDaEN4SFgsY0FBYztBZ0N3SGhCLEFoQ3ZIbUIsYWdDdUhOLENoQ3ZIWCxnQkFBZ0IsQ0FBQyxrQkFBa0IsQ0FBQztFQUNsQyxLQUFLLEVBQUUseUJBQUk7Q0FDWjs7QWdDcUhILEFoQ3BIRSxhZ0NvSFcsQ2hDcEhYLFVBQVUsQWRsQlAsTUFBTSxFOENzSVgsQWhDcEhFLGFnQ29IVyxDaENwSFgsVUFBVSxBZGpCUCxNQUFNLENBQUM7RWNtQk4sS0FBSyxFakI4akJnQixJQUFJO0NHL2tCMUI7O0E4QzJJTCxBQUFBLGdCQUFnQixDQUFDO0VBQ2YsT0FBTyxFQUFFLENBQUU7RUFDWCxhQUFhLEVBQUUsQ0FBRTtFQUNqQixXQUFXLEVBQUUsQ0FBRTtDQUNoQjs7QUFHRCxBQUFBLFNBQVMsQ0FBQztFdkJyS04sYUFBYSxFMUI4bEJVLG1CQUFJO0NpRHRiOUI7O0FBQ0QsQUFBQSxpQkFBaUIsQ0FBQztFQUNoQixRQUFRLEVBQUUsUUFBUztFQUNuQixHQUFHLEVBQUUsQ0FBRTtFQUNQLEtBQUssRUFBRSxDQUFFO0VBQ1QsTUFBTSxFQUFFLENBQUU7RUFDVixJQUFJLEVBQUUsQ0FBRTtFQUNSLE9BQU8sRWpEcWJrQixPQUFPO0NpRHBiakM7O0FBS0QsQUFBQSxhQUFhLENBQUM7RXZCL0tWLHVCQUF1QixFMUJ3bEJBLG1CQUFJO0UwQnZsQjNCLHNCQUFzQixFMUJ1bEJDLG1CQUFJO0NpRHZhOUI7O0FBQ0QsQUFBQSxnQkFBZ0IsQ0FBQztFdkJwS2IsMEJBQTBCLEUxQjBrQkgsbUJBQUk7RTBCemtCM0IseUJBQXlCLEUxQnlrQkYsbUJBQUk7Q2lEcGE5Qjs7QS9DakpHLE1BQU0sRUFBTCxTQUFTLEVBQUUsS0FBSztFK0MrSmpCLEFBQUEsVUFBVSxDQUFDO0lBQ1QsT0FBTyxFQUFFLElBQUs7SUFDZCxTQUFTLEVBQUUsUUFBUztJQUNwQixZQUFZLEVqRDJaUyxTQUFPO0lpRDFaNUIsYUFBYSxFakQ4WVEsT0FBTTtJaUQ3WTNCLFdBQVcsRWpEeVpVLFNBQU87R2lEalo3QjtFQWJELEFBT0UsVUFQUSxDQU9SLEtBQUssQ0FBQztJQUNKLElBQUksRUFBRSxLQUFNO0lBQ1osWUFBWSxFakRxWk8sUUFBTztJaURwWjFCLGFBQWEsRUFBRSxDQUFFO0lBQ2pCLFdBQVcsRWpEbVpRLFFBQU87R2lEbFozQjs7O0EvQzNLSCxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RStDME1uQixBQUFBLFdBQVcsQ0FBQztJQUVSLE9BQU8sRUFBRSxJQUFLO0lBQ2QsU0FBUyxFQUFFLFFBQVM7R0FxRHZCO0VBeERELEFBVUUsV0FWUyxDQVVULEtBQUssQ0FBQztJQUVGLElBQUksRUFBRSxLQUFNO0dBMkNmO0VBdkRILEFBa0JNLFdBbEJLLENBVVQsS0FBSyxHQVFELEtBQUssQ0FBQztJQUNOLFdBQVcsRUFBRSxDQUFFO0lBQ2YsV0FBVyxFQUFFLENBQUU7R0FDaEI7RUFyQkwsQUFVRSxXQVZTLENBVVQsS0FBSyxBQWVBLFlBQVksQ0FBQztJdkIvUGxCLDBCQUEwQixFdUJnUVMsQ0FBQztJdkIvUHBDLHVCQUF1QixFdUIrUFksQ0FBQztHQVEvQjtFQWxDUCxBQTRCUSxXQTVCRyxDQVVULEtBQUssQUFlQSxZQUFZLENBR1gsYUFBYSxDQUFDO0lBQ1osdUJBQXVCLEVBQUUsQ0FBRTtHQUM1QjtFQTlCVCxBQStCUSxXQS9CRyxDQVVULEtBQUssQUFlQSxZQUFZLENBTVgsZ0JBQWdCLENBQUM7SUFDZiwwQkFBMEIsRUFBRSxDQUFFO0dBQy9CO0VBakNULEFBVUUsV0FWUyxDQVVULEtBQUssQUF5QkEsV0FBVyxDQUFDO0l2QjNQakIseUJBQXlCLEV1QjRQUyxDQUFDO0l2QjNQbkMsc0JBQXNCLEV1QjJQWSxDQUFDO0dBUTlCO0VBNUNQLEFBc0NRLFdBdENHLENBVVQsS0FBSyxBQXlCQSxXQUFXLENBR1YsYUFBYSxDQUFDO0lBQ1osc0JBQXNCLEVBQUUsQ0FBRTtHQUMzQjtFQXhDVCxBQXlDUSxXQXpDRyxDQVVULEtBQUssQUF5QkEsV0FBVyxDQU1WLGdCQUFnQixDQUFDO0lBQ2YseUJBQXlCLEVBQUUsQ0FBRTtHQUM5QjtFQTNDVCxBQVVFLFdBVlMsQ0FVVCxLQUFLLEFBb0NBLElBQUssQ0FBQSxBQUFBLFlBQVksQ0FBQyxJQUFLLENBQUEsQUFBQSxXQUFXLEVBQUU7SUFDbkMsYUFBYSxFQUFFLENBQUU7R0FNbEI7RUFyRFAsQUFpRFEsV0FqREcsQ0FVVCxLQUFLLEFBb0NBLElBQUssQ0FBQSxBQUFBLFlBQVksQ0FBQyxJQUFLLENBQUEsQUFBQSxXQUFXLEVBR2pDLGFBQWE7RUFqRHJCLEFBa0RRLFdBbERHLENBVVQsS0FBSyxBQW9DQSxJQUFLLENBQUEsQUFBQSxZQUFZLENBQUMsSUFBSyxDQUFBLEFBQUEsV0FBVyxFQUlqQyxnQkFBZ0IsQ0FBQztJQUNmLGFBQWEsRUFBRSxDQUFFO0dBQ2xCOzs7QS9DOVBQLE1BQU0sRUFBTCxTQUFTLEVBQUUsS0FBSztFK0MyUW5CLEFBQUEsYUFBYSxDQUFDO0lBQ1osWUFBWSxFQUFFLENBQUU7SUFDaEIsVUFBVSxFakRrVGtCLE9BQU87R2lENVNwQztFQVJELEFBSUUsYUFKVyxDQUlYLEtBQUssQ0FBQztJQUNKLE9BQU8sRUFBRSxZQUFhO0lBQ3RCLEtBQUssRUFBRSxJQUFLO0dBQ2I7OztBQzNUTCxBQUFBLE1BQU0sQ0FBQztFQUNMLE9BQU8sRWxEc3NCcUIsT0FBTSxDQUROLE9BQU87RWtEcHNCbkMsYUFBYSxFbER3RUosSUFBSTtFa0R2RWIsTUFBTSxFbEQ0Rk8sR0FBRyxDa0Q1RlksS0FBSyxDQUFDLFdBQVc7RXhCSDNDLGFBQWEsRTFCME9RLE9BQU07Q2tEck85Qjs7QUFHRCxBQUFBLGNBQWMsQ0FBQztFQUViLEtBQUssRUFBRSxPQUFRO0NBQ2hCOztBQUdELEFBQUEsV0FBVyxDQUFDO0VBQ1YsV0FBVyxFbEQwckJpQixJQUFJO0NrRHpyQmpDOztBQU9ELEFBQUEsa0JBQWtCLENBQUM7RUFDakIsYUFBYSxFQUFHLE1BQWdCO0NBU2pDOztBQVZELEFBSUUsa0JBSmdCLENBSWhCLE1BQU0sQ0FBQztFQUNMLFFBQVEsRUFBRSxRQUFTO0VBQ25CLEdBQUcsRUFBRSxRQUFTO0VBQ2QsS0FBSyxFbER3cUJxQixRQUFPO0VrRHZxQmpDLEtBQUssRUFBRSxPQUFRO0NBQ2hCOztBQVFILEFBQUEsY0FBYyxDQUFDO0VuQ3pDYixnQkFBZ0IsRWZ3a0JlLE9BQU87RWV2a0J0QyxZQUFZLEVmd2tCbUIsT0FBTTtFZXZrQnJDLEtBQUssRWZxa0IwQixPQUFPO0NrRDVoQnZDOztBQUZELEFuQ3JDRSxjbUNxQ1ksQ25DckNaLEVBQUUsQ0FBQztFQUNELGdCQUFnQixFQUFFLE9BQU07Q0FDekI7O0FtQ21DSCxBbkNsQ0UsY21Da0NZLENuQ2xDWixXQUFXLENBQUM7RUFDVixLQUFLLEVBQUUsT0FBTTtDQUNkOztBbUNtQ0gsQUFBQSxXQUFXLENBQUM7RW5DNUNWLGdCQUFnQixFZjRrQmUsT0FBTztFZTNrQnRDLFlBQVksRWY0a0JtQixPQUFNO0VlM2tCckMsS0FBSyxFZnlrQjBCLE9BQU87Q2tEN2hCdkM7O0FBRkQsQW5DeENFLFdtQ3dDUyxDbkN4Q1QsRUFBRSxDQUFDO0VBQ0QsZ0JBQWdCLEVBQUUsT0FBTTtDQUN6Qjs7QW1Dc0NILEFuQ3JDRSxXbUNxQ1MsQ25DckNULFdBQVcsQ0FBQztFQUNWLEtBQUssRUFBRSxPQUFNO0NBQ2Q7O0FtQ3NDSCxBQUFBLGNBQWMsQ0FBQztFbkMvQ2IsZ0JBQWdCLEVmZ2xCZSxPQUFPO0VlL2tCdEMsWUFBWSxFZmlsQm1CLE9BQU07RWVobEJyQyxLQUFLLEVmNmtCMEIsT0FBTztDa0Q5aEJ2Qzs7QUFGRCxBbkMzQ0UsY21DMkNZLENuQzNDWixFQUFFLENBQUM7RUFDRCxnQkFBZ0IsRUFBRSxPQUFNO0NBQ3pCOztBbUN5Q0gsQW5DeENFLGNtQ3dDWSxDbkN4Q1osV0FBVyxDQUFDO0VBQ1YsS0FBSyxFQUFFLE9BQU07Q0FDZDs7QW1DeUNILEFBQUEsYUFBYSxDQUFDO0VuQ2xEWixnQkFBZ0IsRWZxbEJlLE9BQU87RWVwbEJ0QyxZQUFZLEVmcWxCbUIsT0FBTTtFZXBsQnJDLEtBQUssRWZrbEIwQixPQUFPO0NrRGhpQnZDOztBQUZELEFuQzlDRSxhbUM4Q1csQ25DOUNYLEVBQUUsQ0FBQztFQUNELGdCQUFnQixFQUFFLE9BQU07Q0FDekI7O0FtQzRDSCxBbkMzQ0UsYW1DMkNXLENuQzNDWCxXQUFXLENBQUM7RUFDVixLQUFLLEVBQUUsT0FBTTtDQUNkOztBb0NSSCxVQUFVLENBQVYsb0JBQVU7RUFDUixBQUFBLElBQUk7SUFBRyxtQkFBbUIsRW5EeUVqQixJQUFJLENtRHpFeUIsQ0FBQzs7RUFDdkMsQUFBQSxFQUFFO0lBQUcsbUJBQW1CLEVBQUUsR0FBSTs7OztBQVFoQyxBQUFBLFNBQVMsQ0FBQztFQUNSLE9BQU8sRUFBRSxLQUFNO0VBQ2YsS0FBSyxFQUFFLElBQUs7RUFDWixNQUFNLEVuRDZERyxJQUFJO0VtRDVEYixhQUFhLEVuRDRESixJQUFJO0NtRDNEZDs7QUFDRCxBQUFlLFNBQU4sQ0FBQSxBQUFBLEtBQUMsQUFBQSxFQUFPO0VBRWYsZ0JBQWdCLEVuRDZzQlksSUFBSTtFbUQzc0JoQyxNQUFNLEVBQUUsQ0FBRTtFQUVWLFVBQVUsRUFBRSxJQUFLO0V6QnRCZixhQUFhLEUxQjBPUSxPQUFNO0NtRGpOOUI7O0FBR0QsQUFBZ0IsU0FBUCxDQUFBLEFBQUEsS0FBQyxBQUFBLENBQU0sVUFBVSxDQUFDO0VBQ3pCLGdCQUFnQixFbkRtc0JZLE9BQU87RW1EanNCbkMsTUFBTSxFQUFFLENBQUU7Q0FDWDs7QUFDRCxBQUFnQixTQUFQLENBQUEsQUFBQSxLQUFDLEFBQUEsQ0FBTSxtQkFBbUIsQ0FBQztFQUNsQyxnQkFBZ0IsRW5EOHJCWSxPQUFPO0UwQnJzQmpDLHlCQUF5QixFMUIrTUosT0FBTTtFMEI5TTNCLHNCQUFzQixFMUI4TUQsT0FBTTtDbUR0TTlCOztBQUNELEFBQWdCLFNBQVAsQ0FBQSxBQUFBLEtBQUMsQUFBQSxDQUFNLHdCQUF3QixDQUFDO0VBQ3ZDLGdCQUFnQixFbkQwckJZLE9BQU87RTBCcnNCakMseUJBQXlCLEUxQitNSixPQUFNO0UwQjlNM0Isc0JBQXNCLEUxQjhNRCxPQUFNO0NtRGxNOUI7O0FBRUQsQUFBc0IsU0FBYixDQUFBLEFBQUEsS0FBQyxDQUFNLEtBQUssQUFBWCxDQUFZLG1CQUFtQixDQUFDO0V6QjdCdEMsMEJBQTBCLEUxQjZOTCxPQUFNO0UwQjVOM0IsdUJBQXVCLEUxQjRORixPQUFNO0NtRDlMOUI7O0FBQ0QsQUFBc0IsU0FBYixDQUFBLEFBQUEsS0FBQyxDQUFNLEtBQUssQUFBWCxDQUFZLHdCQUF3QixDQUFDO0V6QmhDM0MsMEJBQTBCLEUxQjZOTCxPQUFNO0UwQjVOM0IsdUJBQXVCLEUxQjRORixPQUFNO0NtRDNMOUI7O0FBR0QsQUFBZ0IsU0FBUCxDQUFBLEFBQUEsS0FBQyxBQUFBLENBQU0sc0JBQXNCLENBQUM7RUFDckMsZ0JBQWdCLEVuRDRxQlksSUFBSTtFMEIvdEI5QixhQUFhLEUxQjBPUSxPQUFNO0NtRHBMOUI7O0FBQ0QsQUFBSSxJQUFBLEFBQUEsbUJBQW1CO0FBQ3ZCLEFBQWUsU0FBTixDQUFBLEFBQUEsS0FBQyxBQUFBLEVBQU87RUFDZixnQkFBZ0IsRW5Ec3FCWSxJQUFJO0UwQi90QjlCLGFBQWEsRTFCME9RLE9BQU07Q21EOUs5Qjs7QUFHRCxNQUFNLENBQU4sTUFBTSxNQUFNLFNBQVMsRUFBRSxHQUFHO0VBQ3hCLEFBQUEsU0FBUyxDQUFDO0lBQ1IsZ0JBQWdCLEVuRDhwQlUsSUFBSTtJMEIvdEI5QixhQUFhLEUxQjBPUSxPQUFNO0dtRHRLNUI7RUFDRCxBQUFBLGFBQWEsQ0FBQztJQUNaLE9BQU8sRUFBRSxZQUFhO0lBQ3RCLE1BQU0sRW5ER0MsSUFBSTtJbURGWCxXQUFXLEVBQUUsT0FBUTtJQUNyQixnQkFBZ0IsRW5EdXBCVSxPQUFPO0kwQnJzQmpDLHlCQUF5QixFMUIrTUosT0FBTTtJMEI5TTNCLHNCQUFzQixFMUI4TUQsT0FBTTtHbUQvSjVCO0VBQ0QsQUFBc0IsU0FBYixDQUFBLEFBQUEsS0FBQyxDQUFNLE1BQU0sQUFBWixFQUFjO0l6Qi9EdEIsMEJBQTBCLEUxQjZOTCxPQUFNO0kwQjVOM0IsdUJBQXVCLEUxQjRORixPQUFNO0dtRDVKNUI7OztBQVFILEFBQXdCLGlCQUFQLENBQUEsQUFBQSxLQUFDLEFBQUEsQ0FBTSx3QkFBd0IsQ0FBQztFeEJqRC9DLGdCQUFnQixFQUFFLG1MQUFlO0V3Qm1EakMsZUFBZSxFbkRkTixJQUFJLENBQUosSUFBSTtDbURlZDs7QUFDRCxBQUF3QixpQkFBUCxDQUFBLEFBQUEsS0FBQyxBQUFBLENBQU0sbUJBQW1CLENBQUM7RXhCckQxQyxnQkFBZ0IsRUFBRSxtTEFBZTtFd0J1RGpDLGVBQWUsRW5EbEJOLElBQUksQ0FBSixJQUFJO0NtRG1CZDs7QUFDRCxBQUF3QixpQkFBUCxDQUFBLEFBQUEsS0FBQyxBQUFBLENBQU0sVUFBVSxDQUFDO0V4QnpEakMsZ0JBQWdCLEVBQUUsbUxBQWU7RXdCMkRqQyxlQUFlLEVuRHRCTixJQUFJLENBQUosSUFBSTtDbUR1QmQ7O0FBRUQsTUFBTSxDQUFOLE1BQU0sTUFBTSxTQUFTLEVBQUUsR0FBRztFQUN4QixBQUFBLHFCQUFxQixDQUFDO0l4Qi9EdEIsZ0JBQWdCLEVBQUUsbUxBQWU7SXdCaUUvQixlQUFlLEVuRDVCUixJQUFJLENBQUosSUFBSTtHbUQ2Qlo7OztBQVFILEFBQXlCLGtCQUFQLENBQUEsQUFBQSxLQUFDLEFBQUEsQ0FBTSx3QkFBd0IsQ0FBQztFQUNoRCxTQUFTLEVBQUUsdUNBQXdDO0NBQ3BEOztBQUNELEFBQXlCLGtCQUFQLENBQUEsQUFBQSxLQUFDLEFBQUEsQ0FBTSxtQkFBbUIsQ0FBQztFQUMzQyxTQUFTLEVBQUUsdUNBQXdDO0NBQ3BEOztBQUVELE1BQU0sQ0FBTixNQUFNLE1BQU0sU0FBUyxFQUFFLEdBQUc7RUFDeEIsQUFBbUIsa0JBQUQsQ0FBQyxxQkFBcUIsQ0FBQztJQUN2QyxTQUFTLEVBQUUsdUNBQXdDO0dBQ3BEOzs7QUFRSCxBQUFBLGlCQUFpQixDNUJsSWQsQUFBQSxLQUFDLEFBQUEsQ0FBTSx3QkFBd0IsQ0FBQztFQUMvQixnQkFBZ0IsRTFCdURKLE9BQU87QzBCdERwQjs7QTRCZ0lILEFBQUEsaUJBQWlCLEM1QjlIZCxBQUFBLEtBQUMsQUFBQSxDQUFNLG1CQUFtQixDQUFDO0VBQzFCLGdCQUFnQixFMUJtREosT0FBTztDMEJsRHBCOztBNEI0SEgsQUFBQSxpQkFBaUIsQzVCekhkLEFBQUEsS0FBQyxBQUFBLENBQU0sVUFBVSxDQUFDO0VBQ2pCLGdCQUFnQixFMUI4Q0osT0FBTztDMEI3Q3BCOztBQUdELE1BQU0sQ0FBTixNQUFNLE1BQU0sU0FBUyxFQUFFLEdBQUc7RTRCb0g1QixBNUJuSEksaUI0Qm1IYSxDNUJuSGIsYUFBYSxDQUFDO0lBQ1osZ0JBQWdCLEUxQndDTixPQUFPO0cwQnZDbEI7OztBNEJvSEwsQUFBQSxjQUFjLEM1QnJJWCxBQUFBLEtBQUMsQUFBQSxDQUFNLHdCQUF3QixDQUFDO0VBQy9CLGdCQUFnQixFMUJ3REosT0FBTztDMEJ2RHBCOztBNEJtSUgsQUFBQSxjQUFjLEM1QmpJWCxBQUFBLEtBQUMsQUFBQSxDQUFNLG1CQUFtQixDQUFDO0VBQzFCLGdCQUFnQixFMUJvREosT0FBTztDMEJuRHBCOztBNEIrSEgsQUFBQSxjQUFjLEM1QjVIWCxBQUFBLEtBQUMsQUFBQSxDQUFNLFVBQVUsQ0FBQztFQUNqQixnQkFBZ0IsRTFCK0NKLE9BQU87QzBCOUNwQjs7QUFHRCxNQUFNLENBQU4sTUFBTSxNQUFNLFNBQVMsRUFBRSxHQUFHO0U0QnVINUIsQTVCdEhJLGM0QnNIVSxDNUJ0SFYsYUFBYSxDQUFDO0lBQ1osZ0JBQWdCLEUxQnlDTixPQUFPO0cwQnhDbEI7OztBNEJ1SEwsQUFBQSxpQkFBaUIsQzVCeElkLEFBQUEsS0FBQyxBQUFBLENBQU0sd0JBQXdCLENBQUM7RUFDL0IsZ0JBQWdCLEUxQnlESixPQUFPO0MwQnhEcEI7O0E0QnNJSCxBQUFBLGlCQUFpQixDNUJwSWQsQUFBQSxLQUFDLEFBQUEsQ0FBTSxtQkFBbUIsQ0FBQztFQUMxQixnQkFBZ0IsRTFCcURKLE9BQU87QzBCcERwQjs7QTRCa0lILEFBQUEsaUJBQWlCLEM1Qi9IZCxBQUFBLEtBQUMsQUFBQSxDQUFNLFVBQVUsQ0FBQztFQUNqQixnQkFBZ0IsRTFCZ0RKLE9BQU87QzBCL0NwQjs7QUFHRCxNQUFNLENBQU4sTUFBTSxNQUFNLFNBQVMsRUFBRSxHQUFHO0U0QjBINUIsQTVCekhJLGlCNEJ5SGEsQzVCekhiLGFBQWEsQ0FBQztJQUNaLGdCQUFnQixFMUIwQ04sT0FBTztHMEJ6Q2xCOzs7QTRCMEhMLEFBQUEsZ0JBQWdCLEM1QjNJYixBQUFBLEtBQUMsQUFBQSxDQUFNLHdCQUF3QixDQUFDO0VBQy9CLGdCQUFnQixFMUJzREYsT0FBTztDMEJyRHRCOztBNEJ5SUgsQUFBQSxnQkFBZ0IsQzVCdkliLEFBQUEsS0FBQyxBQUFBLENBQU0sbUJBQW1CLENBQUM7RUFDMUIsZ0JBQWdCLEUxQmtERixPQUFPO0MwQmpEdEI7O0E0QnFJSCxBQUFBLGdCQUFnQixDNUJsSWIsQUFBQSxLQUFDLEFBQUEsQ0FBTSxVQUFVLENBQUM7RUFDakIsZ0JBQWdCLEUxQjZDRixPQUFPO0MwQjVDdEI7O0FBR0QsTUFBTSxDQUFOLE1BQU0sTUFBTSxTQUFTLEVBQUUsR0FBRztFNEI2SDVCLEE1QjVISSxnQjRCNEhZLEM1QjVIWixhQUFhLENBQUM7SUFDWixnQkFBZ0IsRTFCdUNKLE9BQU87RzBCdENwQjs7O0E2Qm5CSCxBQUFBLE1BQU0sQ0FBQztFQUNMLE9BQU8sRUFBRSxJQUFLO0NBQ2Y7O0FBQ0QsQUFBQSxXQUFXLENBQUM7RUFDVixJQUFJLEVBQUUsQ0FBRTtDQUNUOztBQUNELEFBQUEsYUFBYSxDQUFDO0VBQ1osVUFBVSxFQUFFLE1BQU87Q0FDcEI7O0FBQ0QsQUFBQSxhQUFhLENBQUM7RUFDWixVQUFVLEVBQUUsUUFBUztDQUN0Qjs7QUE0QkgsQUFBQSxhQUFhLENBQUM7RUFDWixPQUFPLEVBQUUsS0FBTTtDQU1oQjs7QUFQRCxBQUFBLGFBQWEsQUFJVixjQUFjLENBQUM7RUFDZCxTQUFTLEVBQUUsSUFBSztDQUNqQjs7QUFRSCxBQUFBLFlBQVksQ0FBQztFQUNYLFlBQVksRXBEaXZCZ0IsSUFBSTtDb0RodkJqQzs7QUFFRCxBQUFBLFdBQVcsQ0FBQztFQUNWLGFBQWEsRXBENnVCZSxJQUFJO0NvRDV1QmpDOztBQU9ELEFBQUEsY0FBYyxDQUFDO0VBQ2IsVUFBVSxFQUFFLENBQUU7RUFDZCxhQUFhLEVwRGt1QmdCLEdBQUc7Q29EanVCakM7O0FBT0QsQUFBQSxXQUFXLENBQUM7RUFDVixZQUFZLEVBQUUsQ0FBRTtFQUNoQixVQUFVLEVBQUUsSUFBSztDQUNsQjs7QUNoRkQsQUFBQSxNQUFNLENBQUM7RUFDTCxLQUFLLEVBQUUsS0FBTTtFQUNiLFNBQVMsRUFBRyxNQUFlO0VBQzNCLFdBQVcsRXJEazBCaUIsSUFBSTtFcURqMEJoQyxXQUFXLEVBQUUsQ0FBRTtFQUNmLEtBQUssRXJEaTBCdUIsSUFBSTtFcURoMEJoQyxXQUFXLEVyRGkwQmlCLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUk7RXFEaDBCeEMsT0FBTyxFQUFFLEVBQUc7Q0FRYjs7QUFmRCxBQUFBLE1BQU0sQWxEb0JELE1BQU0sRWtEcEJYLEFBQUEsTUFBTSxBbERxQkQsTUFBTSxDQUFDO0VrRFhSLEtBQUssRXJENHpCcUIsSUFBSTtFcUQzekI5QixlQUFlLEVBQUUsSUFBSztFQUN0QixNQUFNLEVBQUUsT0FBUTtFQUNoQixPQUFPLEVBQUUsRUFBRztDbERVWDs7QWtEQUwsQUFBTSxNQUFBLEFBQUEsTUFBTSxDQUFDO0VBQ1gsT0FBTyxFQUFFLENBQUU7RUFDWCxNQUFNLEVBQUUsT0FBUTtFQUNoQixVQUFVLEVBQUUsV0FBWTtFQUN4QixNQUFNLEVBQUUsQ0FBRTtFQUNWLGtCQUFrQixFQUFFLElBQUs7Q0FDMUI7O0FFN0JELEFBQUEsZUFBZSxDQUFDO0VBQUUsY0FBYyxFQUFFLG1CQUFvQjtDQUFJOztBQUMxRCxBQUFBLFVBQVUsQ0FBQztFQUFFLGNBQWMsRUFBRSxjQUFlO0NBQUk7O0FBQ2hELEFBQUEsYUFBYSxDQUFDO0VBQUUsY0FBYyxFQUFFLGlCQUFrQjtDQUFJOztBQUN0RCxBQUFBLGFBQWEsQ0FBQztFQUFFLGNBQWMsRUFBRSxpQkFBa0I7Q0FBSTs7QUFDdEQsQUFBQSxrQkFBa0IsQ0FBQztFQUFFLGNBQWMsRUFBRSxzQkFBdUI7Q0FBSTs7QUFDaEUsQUFBQSxlQUFlLENBQUM7RUFBRSxjQUFjLEVBQUUsbUJBQW9CO0NBQUk7O0FDRDFELEFBQUEsU0FBUyxDQUFDO0VBQ1IsZ0JBQWdCLEV4RDJDVSxPQUFPO0N3RDFDbEM7O0EvQkhDLEFBQUEsV0FBVyxDQUFYO0VBQ0UsZ0JBQWdCLEU1QnFESixPQUFPLEM0QnJETSxVQUFVO0NBQ3BDOztBQUNELEFBQUMsQ0FBQSxBQUFBLFdBQVcsQXRCY1QsTUFBTSxFc0JkVCxBQUFDLENBQUEsQUFBQSxXQUFXLEF0QmVULE1BQU0sQ0FBQztFc0JiTixnQkFBZ0IsRUFBRSxPQUFNLENBQWMsVUFBVTtDdEJlakQ7O0FzQnBCSCxBQUFBLFdBQVcsQ0FBWDtFQUNFLGdCQUFnQixFNUJ1REosT0FBTyxDNEJ2RE0sVUFBVTtDQUNwQzs7QUFDRCxBQUFDLENBQUEsQUFBQSxXQUFXLEF0QmNULE1BQU0sRXNCZFQsQUFBQyxDQUFBLEFBQUEsV0FBVyxBdEJlVCxNQUFNLENBQUM7RXNCYk4sZ0JBQWdCLEVBQUUsT0FBTSxDQUFjLFVBQVU7Q3RCZWpEOztBc0JwQkgsQUFBQSxRQUFRLENBQVI7RUFDRSxnQkFBZ0IsRTVCd0RKLE9BQU8sQzRCeERNLFVBQVU7Q0FDcEM7O0FBQ0QsQUFBQyxDQUFBLEFBQUEsUUFBUSxBdEJjTixNQUFNLEVzQmRULEFBQUMsQ0FBQSxBQUFBLFFBQVEsQXRCZU4sTUFBTSxDQUFDO0VzQmJOLGdCQUFnQixFQUFFLE9BQU0sQ0FBYyxVQUFVO0N0QmVqRDs7QXNCcEJILEFBQUEsV0FBVyxDQUFYO0VBQ0UsZ0JBQWdCLEU1QnlESixPQUFPLEM0QnpETSxVQUFVO0NBQ3BDOztBQUNELEFBQUMsQ0FBQSxBQUFBLFdBQVcsQXRCY1QsTUFBTSxFc0JkVCxBQUFDLENBQUEsQUFBQSxXQUFXLEF0QmVULE1BQU0sQ0FBQztFc0JiTixnQkFBZ0IsRUFBRSxPQUFNLENBQWMsVUFBVTtDdEJlakQ7O0FzQnBCSCxBQUFBLFVBQVUsQ0FBVjtFQUNFLGdCQUFnQixFNUJzREYsT0FBTyxDNEJ0REksVUFBVTtDQUNwQzs7QUFDRCxBQUFDLENBQUEsQUFBQSxVQUFVLEF0QmNSLE1BQU0sRXNCZFQsQUFBQyxDQUFBLEFBQUEsVUFBVSxBdEJlUixNQUFNLENBQUM7RXNCYk4sZ0JBQWdCLEVBQUUsT0FBTSxDQUFjLFVBQVU7Q3RCZWpEOztBc0JwQkgsQUFBQSxXQUFXLENBQVg7RUFDRSxnQkFBZ0IsRXpCd0NRLE9BQU8sQ3lCeENOLFVBQVU7Q0FDcEM7O0FBQ0QsQUFBQyxDQUFBLEFBQUEsV0FBVyxBdEJjVCxNQUFNLEVzQmRULEFBQUMsQ0FBQSxBQUFBLFdBQVcsQXRCZVQsTUFBTSxDQUFDO0VzQmJOLGdCQUFnQixFQUFFLE9BQU0sQ0FBYyxVQUFVO0N0QmVqRDs7QXNEWkwsQUFBQSxRQUFRLENBQUM7RS9CUEwsYUFBYSxFMUIwT1EsT0FBTTtDeURqTzlCOztBQUNELEFBQUEsWUFBWSxDQUFDO0UvQkpULHVCQUF1QixFMUJvT0YsT0FBTTtFMEJuTzNCLHNCQUFzQixFMUJtT0QsT0FBTTtDeUQ5TjlCOztBQUNELEFBQUEsY0FBYyxDQUFDO0UvQkFYLDBCQUEwQixFMUI2TkwsT0FBTTtFMEI1TjNCLHVCQUF1QixFMUI0TkYsT0FBTTtDeUQzTjlCOztBQUNELEFBQUEsZUFBZSxDQUFDO0UvQklaLDBCQUEwQixFMUJzTkwsT0FBTTtFMEJyTjNCLHlCQUF5QixFMUJxTkosT0FBTTtDeUR4TjlCOztBQUNELEFBQUEsYUFBYSxDQUFDO0UvQlFWLHlCQUF5QixFMUIrTUosT0FBTTtFMEI5TTNCLHNCQUFzQixFMUI4TUQsT0FBTTtDeURyTjlCOztBQUVELEFBQUEsZUFBZSxDQUFDO0VBQ2QsYUFBYSxFQUFFLEdBQUk7Q0FDcEI7O0FDN0JELEFBQUEsU0FBUyxBOUJDTixPQUFPLENBQUM7RUFDUCxPQUFPLEVBQUUsRUFBRztFQUNaLE9BQU8sRUFBRSxLQUFNO0VBQ2YsS0FBSyxFQUFFLElBQUs7Q0FDYjs7QStCREgsQUFBQSxRQUFRLENBQUM7RUFDUCxPQUFPLEVBQUUsZ0JBQWlCO0NBQzNCOztBQUNELEFBQUEsZUFBZSxDQUFDO0VBQ2QsT0FBTyxFQUFFLHVCQUF3QjtDQUNsQzs7QUFDRCxBQUFBLFNBQVMsQ0FBQztFQUNSLE9BQU8sRUFBRSxpQkFBa0I7Q0FDNUI7O0FDSkssQUFBQSxjQUFjLENBQWQ7RUFBRSxLQUFLLEVBQUUsRUFBRztDQUFJOztBQUNoQixBQUFBLGFBQWEsQ0FBYjtFQUFFLEtBQUssRUFBRSxDQUFFO0NBQUk7O0FBQ2YsQUFBQSxrQkFBa0IsQ0FBbEI7RUFBRSxLQUFLLEVBQUUsQ0FBRTtDQUFJOztBQUtmLEFBQUEsa0JBQWtCLENBQWxCO0VBQUUsV0FBVyxFQUFFLFVBQVc7Q0FBSTs7QUFDOUIsQUFBQSxxQkFBcUIsQ0FBckI7RUFBRSxXQUFXLEVBQUUsTUFBTztDQUFJOztBQUMxQixBQUFBLHFCQUFxQixDQUFyQjtFQUFFLFdBQVcsRUFBRSxRQUFTO0NBQUk7O0FBSzVCLEFBQUEsWUFBWSxDQUFaO0VBQUUsVUFBVSxFQUFFLFVBQVc7Q0FBSTs7QUFDN0IsQUFBQSxlQUFlLENBQWY7RUFBRSxVQUFVLEVBQUUsTUFBTztDQUFJOztBQUN6QixBQUFBLGVBQWUsQ0FBZjtFQUFFLFVBQVUsRUFBRSxRQUFTO0NBQUk7O0FBSzNCLEFBQUEsbUJBQW1CLENBQW5CO0VBQUUsZUFBZSxFQUFFLFVBQVc7Q0FBSTs7QUFDbEMsQUFBQSxxQkFBcUIsQ0FBckI7RUFBRSxlQUFlLEVBQUUsTUFBTztDQUFJOztBQUM5QixBQUFBLG9CQUFvQixDQUFwQjtFQUFFLGVBQWUsRUFBRSxRQUFTO0NBQUk7O0FBQ2hDLEFBQUEscUJBQXFCLENBQXJCO0VBQUUsZUFBZSxFQUFFLFlBQWE7Q0FBSTs7QUFDcEMsQUFBQSxzQkFBc0IsQ0FBdEI7RUFBRSxlQUFlLEVBQUUsYUFBYztDQUFJOztBMURZdkMsTUFBTSxFQUFMLFNBQVMsRUFBRSxLQUFLO0UwRHJDZixBQUFBLGNBQWMsQ0FBZDtJQUFFLEtBQUssRUFBRSxFQUFHO0dBQUk7RUFDaEIsQUFBQSxhQUFhLENBQWI7SUFBRSxLQUFLLEVBQUUsQ0FBRTtHQUFJO0VBQ2YsQUFBQSxrQkFBa0IsQ0FBbEI7SUFBRSxLQUFLLEVBQUUsQ0FBRTtHQUFJOzs7QTFEbUNqQixNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RTBEOUJmLEFBQUEsa0JBQWtCLENBQWxCO0lBQUUsV0FBVyxFQUFFLFVBQVc7R0FBSTtFQUM5QixBQUFBLHFCQUFxQixDQUFyQjtJQUFFLFdBQVcsRUFBRSxNQUFPO0dBQUk7RUFDMUIsQUFBQSxxQkFBcUIsQ0FBckI7SUFBRSxXQUFXLEVBQUUsUUFBUztHQUFJOzs7QTFENEI5QixNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RTBEdkJmLEFBQUEsWUFBWSxDQUFaO0lBQUUsVUFBVSxFQUFFLFVBQVc7R0FBSTtFQUM3QixBQUFBLGVBQWUsQ0FBZjtJQUFFLFVBQVUsRUFBRSxNQUFPO0dBQUk7RUFDekIsQUFBQSxlQUFlLENBQWY7SUFBRSxVQUFVLEVBQUUsUUFBUztHQUFJOzs7QTFEcUI3QixNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RTBEaEJmLEFBQUEsbUJBQW1CLENBQW5CO0lBQUUsZUFBZSxFQUFFLFVBQVc7R0FBSTtFQUNsQyxBQUFBLHFCQUFxQixDQUFyQjtJQUFFLGVBQWUsRUFBRSxNQUFPO0dBQUk7RUFDOUIsQUFBQSxvQkFBb0IsQ0FBcEI7SUFBRSxlQUFlLEVBQUUsUUFBUztHQUFJO0VBQ2hDLEFBQUEscUJBQXFCLENBQXJCO0lBQUUsZUFBZSxFQUFFLFlBQWE7R0FBSTtFQUNwQyxBQUFBLHNCQUFzQixDQUF0QjtJQUFFLGVBQWUsRUFBRSxhQUFjO0dBQUk7OztBMURZdkMsTUFBTSxFQUFMLFNBQVMsRUFBRSxLQUFLO0UwRHJDZixBQUFBLGNBQWMsQ0FBZDtJQUFFLEtBQUssRUFBRSxFQUFHO0dBQUk7RUFDaEIsQUFBQSxhQUFhLENBQWI7SUFBRSxLQUFLLEVBQUUsQ0FBRTtHQUFJO0VBQ2YsQUFBQSxrQkFBa0IsQ0FBbEI7SUFBRSxLQUFLLEVBQUUsQ0FBRTtHQUFJOzs7QTFEbUNqQixNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RTBEOUJmLEFBQUEsa0JBQWtCLENBQWxCO0lBQUUsV0FBVyxFQUFFLFVBQVc7R0FBSTtFQUM5QixBQUFBLHFCQUFxQixDQUFyQjtJQUFFLFdBQVcsRUFBRSxNQUFPO0dBQUk7RUFDMUIsQUFBQSxxQkFBcUIsQ0FBckI7SUFBRSxXQUFXLEVBQUUsUUFBUztHQUFJOzs7QTFENEI5QixNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RTBEdkJmLEFBQUEsWUFBWSxDQUFaO0lBQUUsVUFBVSxFQUFFLFVBQVc7R0FBSTtFQUM3QixBQUFBLGVBQWUsQ0FBZjtJQUFFLFVBQVUsRUFBRSxNQUFPO0dBQUk7RUFDekIsQUFBQSxlQUFlLENBQWY7SUFBRSxVQUFVLEVBQUUsUUFBUztHQUFJOzs7QTFEcUI3QixNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RTBEaEJmLEFBQUEsbUJBQW1CLENBQW5CO0lBQUUsZUFBZSxFQUFFLFVBQVc7R0FBSTtFQUNsQyxBQUFBLHFCQUFxQixDQUFyQjtJQUFFLGVBQWUsRUFBRSxNQUFPO0dBQUk7RUFDOUIsQUFBQSxvQkFBb0IsQ0FBcEI7SUFBRSxlQUFlLEVBQUUsUUFBUztHQUFJO0VBQ2hDLEFBQUEscUJBQXFCLENBQXJCO0lBQUUsZUFBZSxFQUFFLFlBQWE7R0FBSTtFQUNwQyxBQUFBLHNCQUFzQixDQUF0QjtJQUFFLGVBQWUsRUFBRSxhQUFjO0dBQUk7OztBMURZdkMsTUFBTSxFQUFMLFNBQVMsRUFBRSxLQUFLO0UwRHJDZixBQUFBLGNBQWMsQ0FBZDtJQUFFLEtBQUssRUFBRSxFQUFHO0dBQUk7RUFDaEIsQUFBQSxhQUFhLENBQWI7SUFBRSxLQUFLLEVBQUUsQ0FBRTtHQUFJO0VBQ2YsQUFBQSxrQkFBa0IsQ0FBbEI7SUFBRSxLQUFLLEVBQUUsQ0FBRTtHQUFJOzs7QTFEbUNqQixNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RTBEOUJmLEFBQUEsa0JBQWtCLENBQWxCO0lBQUUsV0FBVyxFQUFFLFVBQVc7R0FBSTtFQUM5QixBQUFBLHFCQUFxQixDQUFyQjtJQUFFLFdBQVcsRUFBRSxNQUFPO0dBQUk7RUFDMUIsQUFBQSxxQkFBcUIsQ0FBckI7SUFBRSxXQUFXLEVBQUUsUUFBUztHQUFJOzs7QTFENEI5QixNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RTBEdkJmLEFBQUEsWUFBWSxDQUFaO0lBQUUsVUFBVSxFQUFFLFVBQVc7R0FBSTtFQUM3QixBQUFBLGVBQWUsQ0FBZjtJQUFFLFVBQVUsRUFBRSxNQUFPO0dBQUk7RUFDekIsQUFBQSxlQUFlLENBQWY7SUFBRSxVQUFVLEVBQUUsUUFBUztHQUFJOzs7QTFEcUI3QixNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RTBEaEJmLEFBQUEsbUJBQW1CLENBQW5CO0lBQUUsZUFBZSxFQUFFLFVBQVc7R0FBSTtFQUNsQyxBQUFBLHFCQUFxQixDQUFyQjtJQUFFLGVBQWUsRUFBRSxNQUFPO0dBQUk7RUFDOUIsQUFBQSxvQkFBb0IsQ0FBcEI7SUFBRSxlQUFlLEVBQUUsUUFBUztHQUFJO0VBQ2hDLEFBQUEscUJBQXFCLENBQXJCO0lBQUUsZUFBZSxFQUFFLFlBQWE7R0FBSTtFQUNwQyxBQUFBLHNCQUFzQixDQUF0QjtJQUFFLGVBQWUsRUFBRSxhQUFjO0dBQUk7OztBMURZdkMsTUFBTSxFQUFMLFNBQVMsRUFBRSxNQUFNO0UwRHJDaEIsQUFBQSxjQUFjLENBQWQ7SUFBRSxLQUFLLEVBQUUsRUFBRztHQUFJO0VBQ2hCLEFBQUEsYUFBYSxDQUFiO0lBQUUsS0FBSyxFQUFFLENBQUU7R0FBSTtFQUNmLEFBQUEsa0JBQWtCLENBQWxCO0lBQUUsS0FBSyxFQUFFLENBQUU7R0FBSTs7O0ExRG1DakIsTUFBTSxFQUFMLFNBQVMsRUFBRSxNQUFNO0UwRDlCaEIsQUFBQSxrQkFBa0IsQ0FBbEI7SUFBRSxXQUFXLEVBQUUsVUFBVztHQUFJO0VBQzlCLEFBQUEscUJBQXFCLENBQXJCO0lBQUUsV0FBVyxFQUFFLE1BQU87R0FBSTtFQUMxQixBQUFBLHFCQUFxQixDQUFyQjtJQUFFLFdBQVcsRUFBRSxRQUFTO0dBQUk7OztBMUQ0QjlCLE1BQU0sRUFBTCxTQUFTLEVBQUUsTUFBTTtFMER2QmhCLEFBQUEsWUFBWSxDQUFaO0lBQUUsVUFBVSxFQUFFLFVBQVc7R0FBSTtFQUM3QixBQUFBLGVBQWUsQ0FBZjtJQUFFLFVBQVUsRUFBRSxNQUFPO0dBQUk7RUFDekIsQUFBQSxlQUFlLENBQWY7SUFBRSxVQUFVLEVBQUUsUUFBUztHQUFJOzs7QTFEcUI3QixNQUFNLEVBQUwsU0FBUyxFQUFFLE1BQU07RTBEaEJoQixBQUFBLG1CQUFtQixDQUFuQjtJQUFFLGVBQWUsRUFBRSxVQUFXO0dBQUk7RUFDbEMsQUFBQSxxQkFBcUIsQ0FBckI7SUFBRSxlQUFlLEVBQUUsTUFBTztHQUFJO0VBQzlCLEFBQUEsb0JBQW9CLENBQXBCO0lBQUUsZUFBZSxFQUFFLFFBQVM7R0FBSTtFQUNoQyxBQUFBLHFCQUFxQixDQUFyQjtJQUFFLGVBQWUsRUFBRSxZQUFhO0dBQUk7RUFDcEMsQUFBQSxzQkFBc0IsQ0FBdEI7SUFBRSxlQUFlLEVBQUUsYUFBYztHQUFJOzs7QUMvQnZDLEFBQUEsY0FBYyxDQUFkO0U5QkRGLEtBQUssRUFBRSxlQUFnQjtDOEJHcEI7O0FBQ0QsQUFBQSxlQUFlLENBQWY7RTlCREYsS0FBSyxFQUFFLGdCQUFpQjtDOEJHckI7O0FBQ0QsQUFBQSxjQUFjLENBQWQ7RUFDRSxLQUFLLEVBQUUsZUFBZ0I7Q0FDeEI7O0EzRG1DRCxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RTJEM0NqQixBQUFBLGNBQWMsQ0FBZDtJOUJERixLQUFLLEVBQUUsZUFBZ0I7RzhCR3BCO0VBQ0QsQUFBQSxlQUFlLENBQWY7STlCREYsS0FBSyxFQUFFLGdCQUFpQjtHOEJHckI7RUFDRCxBQUFBLGNBQWMsQ0FBZDtJQUNFLEtBQUssRUFBRSxlQUFnQjtHQUN4Qjs7O0EzRG1DRCxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RTJEM0NqQixBQUFBLGNBQWMsQ0FBZDtJOUJERixLQUFLLEVBQUUsZUFBZ0I7RzhCR3BCO0VBQ0QsQUFBQSxlQUFlLENBQWY7STlCREYsS0FBSyxFQUFFLGdCQUFpQjtHOEJHckI7RUFDRCxBQUFBLGNBQWMsQ0FBZDtJQUNFLEtBQUssRUFBRSxlQUFnQjtHQUN4Qjs7O0EzRG1DRCxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RTJEM0NqQixBQUFBLGNBQWMsQ0FBZDtJOUJERixLQUFLLEVBQUUsZUFBZ0I7RzhCR3BCO0VBQ0QsQUFBQSxlQUFlLENBQWY7STlCREYsS0FBSyxFQUFFLGdCQUFpQjtHOEJHckI7RUFDRCxBQUFBLGNBQWMsQ0FBZDtJQUNFLEtBQUssRUFBRSxlQUFnQjtHQUN4Qjs7O0EzRG1DRCxNQUFNLEVBQUwsU0FBUyxFQUFFLE1BQU07RTJEM0NsQixBQUFBLGNBQWMsQ0FBZDtJOUJERixLQUFLLEVBQUUsZUFBZ0I7RzhCR3BCO0VBQ0QsQUFBQSxlQUFlLENBQWY7STlCREYsS0FBSyxFQUFFLGdCQUFpQjtHOEJHckI7RUFDRCxBQUFBLGNBQWMsQ0FBZDtJQUNFLEtBQUssRUFBRSxlQUFnQjtHQUN4Qjs7O0FDTkwsQUFBQSxRQUFRLENBQUM7RXREQ1AsUUFBUSxFQUFFLFFBQVM7RUFDbkIsS0FBSyxFQUFFLEdBQUk7RUFDWCxNQUFNLEVBQUUsR0FBSTtFQUNaLE9BQU8sRUFBRSxDQUFFO0VBQ1gsTUFBTSxFQUFFLElBQUs7RUFDYixRQUFRLEVBQUUsTUFBTztFQUNqQixJQUFJLEVBQUUsZ0JBQUk7RUFDVixNQUFNLEVBQUUsQ0FBRTtDc0ROWDs7QUFFRCxBQUFBLGtCQUFrQixBdERjZixPQUFPLEVzRGRWLEFBQUEsa0JBQWtCLEF0RGVmLE1BQU0sQ0FBQztFQUNOLFFBQVEsRUFBRSxNQUFPO0VBQ2pCLEtBQUssRUFBRSxJQUFLO0VBQ1osTUFBTSxFQUFFLElBQUs7RUFDYixNQUFNLEVBQUUsQ0FBRTtFQUNWLFFBQVEsRUFBRSxPQUFRO0VBQ2xCLElBQUksRUFBRSxJQUFLO0NBQ1o7O0F1RDVCSCxBQUFBLE1BQU0sQ0FBQztFQUFFLEtBQUssRUFBRSxlQUFnQjtDQUFJOztBQUNwQyxBQUFBLE1BQU0sQ0FBQztFQUFFLE1BQU0sRUFBRSxlQUFnQjtDQUFJOztBQUlyQyxBQUFBLFFBQVEsQ0FBQztFQUNQLFlBQVksRUFBRSxlQUFnQjtFQUM5QixXQUFXLEVBQUcsZUFBZ0I7Q0FDL0I7O0FBT0csQUFBQSxJQUFJLENBQUo7RUFBRSxNQUFRLEUvRG1FUCxDQUFDLENBREQsQ0FBQyxDK0RsRW1DLFVBQVU7Q0FBSTs7QUFDckQsQUFBQSxLQUFLLENBQUw7RUFBRSxVQUFZLEUvRGtFWCxDQUFDLEMrRGxFNkIsVUFBVTtDQUFJOztBQUMvQyxBQUFBLEtBQUssQ0FBTDtFQUFFLFlBQWMsRS9EZ0ViLENBQUMsQytEaEUrQixVQUFVO0NBQUk7O0FBQ2pELEFBQUEsS0FBSyxDQUFMO0VBQUUsYUFBZSxFL0RnRWQsQ0FBQyxDK0RoRWdDLFVBQVU7Q0FBSTs7QUFDbEQsQUFBQSxLQUFLLENBQUw7RUFBRSxXQUFhLEUvRDhEWixDQUFDLEMrRDlEOEIsVUFBVTtDQUFJOztBQUdoRCxBQUFBLEtBQUssQ0FBTDtFQUNFLFlBQWMsRS9EMERiLENBQUMsQytEMUQrQixVQUFVO0VBQzNDLFdBQWEsRS9EeURaLENBQUMsQytEekQ4QixVQUFVO0NBQzNDOztBQUNELEFBQUEsS0FBSyxDQUFMO0VBQ0UsVUFBWSxFL0R1RFgsQ0FBQyxDK0R2RDZCLFVBQVU7RUFDekMsYUFBZSxFL0RzRGQsQ0FBQyxDK0R0RGdDLFVBQVU7Q0FDN0M7O0FBZEQsQUFBQSxJQUFJLENBQUo7RUFBRSxNQUFRLEUvRDZESCxJQUFJLENBQUosSUFBSSxDK0Q3RDRCLFVBQVU7Q0FBSTs7QUFDckQsQUFBQSxLQUFLLENBQUw7RUFBRSxVQUFZLEUvRDREUCxJQUFJLEMrRDVEc0IsVUFBVTtDQUFJOztBQUMvQyxBQUFBLEtBQUssQ0FBTDtFQUFFLFlBQWMsRS9EMkRULElBQUksQytEM0R3QixVQUFVO0NBQUk7O0FBQ2pELEFBQUEsS0FBSyxDQUFMO0VBQUUsYUFBZSxFL0QwRFYsSUFBSSxDK0QxRHlCLFVBQVU7Q0FBSTs7QUFDbEQsQUFBQSxLQUFLLENBQUw7RUFBRSxXQUFhLEUvRHlEUixJQUFJLEMrRHpEdUIsVUFBVTtDQUFJOztBQUdoRCxBQUFBLEtBQUssQ0FBTDtFQUNFLFlBQWMsRS9EcURULElBQUksQytEckR3QixVQUFVO0VBQzNDLFdBQWEsRS9Eb0RSLElBQUksQytEcER1QixVQUFVO0NBQzNDOztBQUNELEFBQUEsS0FBSyxDQUFMO0VBQ0UsVUFBWSxFL0RpRFAsSUFBSSxDK0RqRHNCLFVBQVU7RUFDekMsYUFBZSxFL0RnRFYsSUFBSSxDK0RoRHlCLFVBQVU7Q0FDN0M7O0FBZEQsQUFBQSxJQUFJLENBQUo7RUFBRSxNQUFRLEUvRDJFTixNQUFTLENBRFQsTUFBUyxDK0QxRTBCLFVBQVU7Q0FBSTs7QUFDckQsQUFBQSxLQUFLLENBQUw7RUFBRSxVQUFZLEUvRDBFVixNQUFTLEMrRDFFb0IsVUFBVTtDQUFJOztBQUMvQyxBQUFBLEtBQUssQ0FBTDtFQUFFLFlBQWMsRS9Ed0VaLE1BQVMsQytEeEVzQixVQUFVO0NBQUk7O0FBQ2pELEFBQUEsS0FBSyxDQUFMO0VBQUUsYUFBZSxFL0R3RWIsTUFBUyxDK0R4RXVCLFVBQVU7Q0FBSTs7QUFDbEQsQUFBQSxLQUFLLENBQUw7RUFBRSxXQUFhLEUvRHNFWCxNQUFTLEMrRHRFcUIsVUFBVTtDQUFJOztBQUdoRCxBQUFBLEtBQUssQ0FBTDtFQUNFLFlBQWMsRS9Ea0VaLE1BQVMsQytEbEVzQixVQUFVO0VBQzNDLFdBQWEsRS9EaUVYLE1BQVMsQytEakVxQixVQUFVO0NBQzNDOztBQUNELEFBQUEsS0FBSyxDQUFMO0VBQ0UsVUFBWSxFL0QrRFYsTUFBUyxDK0QvRG9CLFVBQVU7RUFDekMsYUFBZSxFL0Q4RGIsTUFBUyxDK0Q5RHVCLFVBQVU7Q0FDN0M7O0FBZEQsQUFBQSxJQUFJLENBQUo7RUFBRSxNQUFRLEUvRCtFTixJQUFTLENBRFQsSUFBUyxDK0Q5RTBCLFVBQVU7Q0FBSTs7QUFDckQsQUFBQSxLQUFLLENBQUw7RUFBRSxVQUFZLEUvRDhFVixJQUFTLEMrRDlFb0IsVUFBVTtDQUFJOztBQUMvQyxBQUFBLEtBQUssQ0FBTDtFQUFFLFlBQWMsRS9ENEVaLElBQVMsQytENUVzQixVQUFVO0NBQUk7O0FBQ2pELEFBQUEsS0FBSyxDQUFMO0VBQUUsYUFBZSxFL0Q0RWIsSUFBUyxDK0Q1RXVCLFVBQVU7Q0FBSTs7QUFDbEQsQUFBQSxLQUFLLENBQUw7RUFBRSxXQUFhLEUvRDBFWCxJQUFTLEMrRDFFcUIsVUFBVTtDQUFJOztBQUdoRCxBQUFBLEtBQUssQ0FBTDtFQUNFLFlBQWMsRS9Ec0VaLElBQVMsQytEdEVzQixVQUFVO0VBQzNDLFdBQWEsRS9EcUVYLElBQVMsQytEckVxQixVQUFVO0NBQzNDOztBQUNELEFBQUEsS0FBSyxDQUFMO0VBQ0UsVUFBWSxFL0RtRVYsSUFBUyxDK0RuRW9CLFVBQVU7RUFDekMsYUFBZSxFL0RrRWIsSUFBUyxDK0RsRXVCLFVBQVU7Q0FDN0M7O0FBZEQsQUFBQSxJQUFJLENBQUo7RUFBRSxPQUFRLEUvRG1FUCxDQUFDLENBREQsQ0FBQyxDK0RsRW1DLFVBQVU7Q0FBSTs7QUFDckQsQUFBQSxLQUFLLENBQUw7RUFBRSxXQUFZLEUvRGtFWCxDQUFDLEMrRGxFNkIsVUFBVTtDQUFJOztBQUMvQyxBQUFBLEtBQUssQ0FBTDtFQUFFLGFBQWMsRS9EZ0ViLENBQUMsQytEaEUrQixVQUFVO0NBQUk7O0FBQ2pELEFBQUEsS0FBSyxDQUFMO0VBQUUsY0FBZSxFL0RnRWQsQ0FBQyxDK0RoRWdDLFVBQVU7Q0FBSTs7QUFDbEQsQUFBQSxLQUFLLENBQUw7RUFBRSxZQUFhLEUvRDhEWixDQUFDLEMrRDlEOEIsVUFBVTtDQUFJOztBQUdoRCxBQUFBLEtBQUssQ0FBTDtFQUNFLGFBQWMsRS9EMERiLENBQUMsQytEMUQrQixVQUFVO0VBQzNDLFlBQWEsRS9EeURaLENBQUMsQytEekQ4QixVQUFVO0NBQzNDOztBQUNELEFBQUEsS0FBSyxDQUFMO0VBQ0UsV0FBWSxFL0R1RFgsQ0FBQyxDK0R2RDZCLFVBQVU7RUFDekMsY0FBZSxFL0RzRGQsQ0FBQyxDK0R0RGdDLFVBQVU7Q0FDN0M7O0FBZEQsQUFBQSxJQUFJLENBQUo7RUFBRSxPQUFRLEUvRDZESCxJQUFJLENBQUosSUFBSSxDK0Q3RDRCLFVBQVU7Q0FBSTs7QUFDckQsQUFBQSxLQUFLLENBQUw7RUFBRSxXQUFZLEUvRDREUCxJQUFJLEMrRDVEc0IsVUFBVTtDQUFJOztBQUMvQyxBQUFBLEtBQUssQ0FBTDtFQUFFLGFBQWMsRS9EMkRULElBQUksQytEM0R3QixVQUFVO0NBQUk7O0FBQ2pELEFBQUEsS0FBSyxDQUFMO0VBQUUsY0FBZSxFL0QwRFYsSUFBSSxDK0QxRHlCLFVBQVU7Q0FBSTs7QUFDbEQsQUFBQSxLQUFLLENBQUw7RUFBRSxZQUFhLEUvRHlEUixJQUFJLEMrRHpEdUIsVUFBVTtDQUFJOztBQUdoRCxBQUFBLEtBQUssQ0FBTDtFQUNFLGFBQWMsRS9EcURULElBQUksQytEckR3QixVQUFVO0VBQzNDLFlBQWEsRS9Eb0RSLElBQUksQytEcER1QixVQUFVO0NBQzNDOztBQUNELEFBQUEsS0FBSyxDQUFMO0VBQ0UsV0FBWSxFL0RpRFAsSUFBSSxDK0RqRHNCLFVBQVU7RUFDekMsY0FBZSxFL0RnRFYsSUFBSSxDK0RoRHlCLFVBQVU7Q0FDN0M7O0FBZEQsQUFBQSxJQUFJLENBQUo7RUFBRSxPQUFRLEUvRDJFTixNQUFTLENBRFQsTUFBUyxDK0QxRTBCLFVBQVU7Q0FBSTs7QUFDckQsQUFBQSxLQUFLLENBQUw7RUFBRSxXQUFZLEUvRDBFVixNQUFTLEMrRDFFb0IsVUFBVTtDQUFJOztBQUMvQyxBQUFBLEtBQUssQ0FBTDtFQUFFLGFBQWMsRS9Ed0VaLE1BQVMsQytEeEVzQixVQUFVO0NBQUk7O0FBQ2pELEFBQUEsS0FBSyxDQUFMO0VBQUUsY0FBZSxFL0R3RWIsTUFBUyxDK0R4RXVCLFVBQVU7Q0FBSTs7QUFDbEQsQUFBQSxLQUFLLENBQUw7RUFBRSxZQUFhLEUvRHNFWCxNQUFTLEMrRHRFcUIsVUFBVTtDQUFJOztBQUdoRCxBQUFBLEtBQUssQ0FBTDtFQUNFLGFBQWMsRS9Ea0VaLE1BQVMsQytEbEVzQixVQUFVO0VBQzNDLFlBQWEsRS9EaUVYLE1BQVMsQytEakVxQixVQUFVO0NBQzNDOztBQUNELEFBQUEsS0FBSyxDQUFMO0VBQ0UsV0FBWSxFL0QrRFYsTUFBUyxDK0QvRG9CLFVBQVU7RUFDekMsY0FBZSxFL0Q4RGIsTUFBUyxDK0Q5RHVCLFVBQVU7Q0FDN0M7O0FBZEQsQUFBQSxJQUFJLENBQUo7RUFBRSxPQUFRLEUvRCtFTixJQUFTLENBRFQsSUFBUyxDK0Q5RTBCLFVBQVU7Q0FBSTs7QUFDckQsQUFBQSxLQUFLLENBQUw7RUFBRSxXQUFZLEUvRDhFVixJQUFTLEMrRDlFb0IsVUFBVTtDQUFJOztBQUMvQyxBQUFBLEtBQUssQ0FBTDtFQUFFLGFBQWMsRS9ENEVaLElBQVMsQytENUVzQixVQUFVO0NBQUk7O0FBQ2pELEFBQUEsS0FBSyxDQUFMO0VBQUUsY0FBZSxFL0Q0RWIsSUFBUyxDK0Q1RXVCLFVBQVU7Q0FBSTs7QUFDbEQsQUFBQSxLQUFLLENBQUw7RUFBRSxZQUFhLEUvRDBFWCxJQUFTLEMrRDFFcUIsVUFBVTtDQUFJOztBQUdoRCxBQUFBLEtBQUssQ0FBTDtFQUNFLGFBQWMsRS9Ec0VaLElBQVMsQytEdEVzQixVQUFVO0VBQzNDLFlBQWEsRS9EcUVYLElBQVMsQytEckVxQixVQUFVO0NBQzNDOztBQUNELEFBQUEsS0FBSyxDQUFMO0VBQ0UsV0FBWSxFL0RtRVYsSUFBUyxDK0RuRW9CLFVBQVU7RUFDekMsY0FBZSxFL0RrRWIsSUFBUyxDK0RsRXVCLFVBQVU7Q0FDN0M7O0FBTUwsQUFBQSxRQUFRLENBQUM7RUFDUCxRQUFRLEVBQUUsS0FBTTtFQUNoQixHQUFHLEVBQUUsQ0FBRTtFQUNQLEtBQUssRUFBRSxDQUFFO0VBQ1QsSUFBSSxFQUFFLENBQUU7RUFDUixPQUFPLEUvRDRia0IsSUFBSTtDK0QzYjlCOztBQ3JDRCxBQUFBLGFBQWEsQ0FBUTtFQUFFLFVBQVUsRUFBRSxrQkFBbUI7Q0FBSTs7QUFDMUQsQUFBQSxZQUFZLENBQVM7RUFBRSxXQUFXLEVBQUUsaUJBQWtCO0NBQUk7O0FBQzFELEFBQUEsY0FBYyxDQUFPO0VsREpuQixRQUFRLEVBQUUsTUFBTztFQUNqQixhQUFhLEVBQUUsUUFBUztFQUN4QixXQUFXLEVBQUUsTUFBTztDa0RFMkI7O0FBTTdDLEFBQUEsYUFBYSxDQUFiO0VBQUUsVUFBVSxFQUFFLGVBQWdCO0NBQUk7O0FBQ2xDLEFBQUEsY0FBYyxDQUFkO0VBQUUsVUFBVSxFQUFFLGdCQUFpQjtDQUFJOztBQUNuQyxBQUFBLGVBQWUsQ0FBZjtFQUFFLFVBQVUsRUFBRSxpQkFBa0I7Q0FBSTs7QTlENkJwQyxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RThEL0JqQixBQUFBLGFBQWEsQ0FBYjtJQUFFLFVBQVUsRUFBRSxlQUFnQjtHQUFJO0VBQ2xDLEFBQUEsY0FBYyxDQUFkO0lBQUUsVUFBVSxFQUFFLGdCQUFpQjtHQUFJO0VBQ25DLEFBQUEsZUFBZSxDQUFmO0lBQUUsVUFBVSxFQUFFLGlCQUFrQjtHQUFJOzs7QTlENkJwQyxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RThEL0JqQixBQUFBLGFBQWEsQ0FBYjtJQUFFLFVBQVUsRUFBRSxlQUFnQjtHQUFJO0VBQ2xDLEFBQUEsY0FBYyxDQUFkO0lBQUUsVUFBVSxFQUFFLGdCQUFpQjtHQUFJO0VBQ25DLEFBQUEsZUFBZSxDQUFmO0lBQUUsVUFBVSxFQUFFLGlCQUFrQjtHQUFJOzs7QTlENkJwQyxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RThEL0JqQixBQUFBLGFBQWEsQ0FBYjtJQUFFLFVBQVUsRUFBRSxlQUFnQjtHQUFJO0VBQ2xDLEFBQUEsY0FBYyxDQUFkO0lBQUUsVUFBVSxFQUFFLGdCQUFpQjtHQUFJO0VBQ25DLEFBQUEsZUFBZSxDQUFmO0lBQUUsVUFBVSxFQUFFLGlCQUFrQjtHQUFJOzs7QTlENkJwQyxNQUFNLEVBQUwsU0FBUyxFQUFFLE1BQU07RThEL0JsQixBQUFBLGFBQWEsQ0FBYjtJQUFFLFVBQVUsRUFBRSxlQUFnQjtHQUFJO0VBQ2xDLEFBQUEsY0FBYyxDQUFkO0lBQUUsVUFBVSxFQUFFLGdCQUFpQjtHQUFJO0VBQ25DLEFBQUEsZUFBZSxDQUFmO0lBQUUsVUFBVSxFQUFFLGlCQUFrQjtHQUFJOzs7QUFNeEMsQUFBQSxlQUFlLENBQU07RUFBRSxjQUFjLEVBQUUsb0JBQXFCO0NBQUk7O0FBQ2hFLEFBQUEsZUFBZSxDQUFNO0VBQUUsY0FBYyxFQUFFLG9CQUFxQjtDQUFJOztBQUNoRSxBQUFBLGdCQUFnQixDQUFLO0VBQUUsY0FBYyxFQUFFLHFCQUFzQjtDQUFJOztBQUlqRSxBQUFBLG1CQUFtQixDQUFFO0VBQUUsV0FBVyxFQUFFLE1BQU87Q0FBSTs7QUFDL0MsQUFBQSxpQkFBaUIsQ0FBSTtFQUFFLFdBQVcsRUFBRSxJQUFLO0NBQUk7O0FBQzdDLEFBQUEsWUFBWSxDQUFTO0VBQUUsVUFBVSxFQUFFLE1BQU87Q0FBSTs7QUFJOUMsQUFBQSxXQUFXLENBQUM7RUFDVixLQUFLLEVBQUUsZUFBZ0I7Q0FDeEI7O0FwRGpDQyxBQUFBLFdBQVcsQ0FBWDtFQUNFLEtBQUssRVowQ21CLE9BQU8sQ1kxQ2pCLFVBQVU7Q0FDekI7O0FBQ0QsQUFBQyxDQUFBLEFBQUEsV0FBVyxBVGNULE1BQU0sRVNkVCxBQUFDLENBQUEsQUFBQSxXQUFXLEFUZVQsTUFBTSxDQUFDO0VTYk4sS0FBSyxFQUFFLE9BQU0sQ0FBYyxVQUFVO0NUZXRDOztBU3BCSCxBQUFBLGFBQWEsQ0FBYjtFQUNFLEtBQUssRWZxRE8sT0FBTyxDZXJETCxVQUFVO0NBQ3pCOztBQUNELEFBQUMsQ0FBQSxBQUFBLGFBQWEsQVRjWCxNQUFNLEVTZFQsQUFBQyxDQUFBLEFBQUEsYUFBYSxBVGVYLE1BQU0sQ0FBQztFU2JOLEtBQUssRUFBRSxPQUFNLENBQWMsVUFBVTtDVGV0Qzs7QVNwQkgsQUFBQSxhQUFhLENBQWI7RUFDRSxLQUFLLEVmdURPLE9BQU8sQ2V2REwsVUFBVTtDQUN6Qjs7QUFDRCxBQUFDLENBQUEsQUFBQSxhQUFhLEFUY1gsTUFBTSxFU2RULEFBQUMsQ0FBQSxBQUFBLGFBQWEsQVRlWCxNQUFNLENBQUM7RVNiTixLQUFLLEVBQUUsT0FBTSxDQUFjLFVBQVU7Q1RldEM7O0FTcEJILEFBQUEsVUFBVSxDQUFWO0VBQ0UsS0FBSyxFZndETyxPQUFPLENleERMLFVBQVU7Q0FDekI7O0FBQ0QsQUFBQyxDQUFBLEFBQUEsVUFBVSxBVGNSLE1BQU0sRVNkVCxBQUFDLENBQUEsQUFBQSxVQUFVLEFUZVIsTUFBTSxDQUFDO0VTYk4sS0FBSyxFQUFFLE9BQU0sQ0FBYyxVQUFVO0NUZXRDOztBU3BCSCxBQUFBLGFBQWEsQ0FBYjtFQUNFLEtBQUssRWZ5RE8sT0FBTyxDZXpETCxVQUFVO0NBQ3pCOztBQUNELEFBQUMsQ0FBQSxBQUFBLGFBQWEsQVRjWCxNQUFNLEVTZFQsQUFBQyxDQUFBLEFBQUEsYUFBYSxBVGVYLE1BQU0sQ0FBQztFU2JOLEtBQUssRUFBRSxPQUFNLENBQWMsVUFBVTtDVGV0Qzs7QVNwQkgsQUFBQSxZQUFZLENBQVo7RUFDRSxLQUFLLEVmc0RTLE9BQU8sQ2V0RFAsVUFBVTtDQUN6Qjs7QUFDRCxBQUFDLENBQUEsQUFBQSxZQUFZLEFUY1YsTUFBTSxFU2RULEFBQUMsQ0FBQSxBQUFBLFlBQVksQVRlVixNQUFNLENBQUM7RVNiTixLQUFLLEVBQUUsT0FBTSxDQUFjLFVBQVU7Q1RldEM7O0FTcEJILEFBQUEsZUFBZSxDQUFmO0VBQ0UsS0FBSyxFWndDbUIsT0FBTyxDWXhDakIsVUFBVTtDQUN6Qjs7QUFDRCxBQUFDLENBQUEsQUFBQSxlQUFlLEFUY2IsTUFBTSxFU2RULEFBQUMsQ0FBQSxBQUFBLGVBQWUsQVRlYixNQUFNLENBQUM7RVNiTixLQUFLLEVBQUUsT0FBTSxDQUFjLFVBQVU7Q1RldEM7O0E2RGlDTCxBQUFBLFVBQVUsQ0FBQztFbkR0RFQsSUFBSSxFQUFFLEtBQU07RUFDWixLQUFLLEVBQUUsV0FBWTtFQUNuQixXQUFXLEVBQUUsSUFBSztFQUNsQixnQkFBZ0IsRUFBRSxXQUFZO0VBQzlCLE1BQU0sRUFBRSxDQUFFO0NtRG9EWDs7QUN0REQsQUFBQSxVQUFVLENBQUM7RUFDVCxVQUFVLEVBQUUsaUJBQWtCO0NBQy9COztBQUtDLEFBQUEsYUFBYSxDQUFiO0VBRUksT0FBTyxFQUFFLGVBQWdCO0NBRTVCOztBL0QyQ0MsTUFBTSxFQUFMLFNBQVMsRUFBRSxLQUFLO0UrRDFDbkIsQUFBQSxlQUFlLENBQWY7SUFFSSxPQUFPLEVBQUUsZUFBZ0I7R0FFNUI7OztBL0R5QkMsTUFBTSxFQUFMLFNBQVMsRUFBRSxLQUFLO0UrRGxDbkIsQUFBQSxhQUFhLENBQWI7SUFFSSxPQUFPLEVBQUUsZUFBZ0I7R0FFNUI7OztBL0QyQ0MsTUFBTSxFQUFMLFNBQVMsRUFBRSxLQUFLO0UrRDFDbkIsQUFBQSxlQUFlLENBQWY7SUFFSSxPQUFPLEVBQUUsZUFBZ0I7R0FFNUI7OztBL0R5QkMsTUFBTSxFQUFMLFNBQVMsRUFBRSxLQUFLO0UrRGxDbkIsQUFBQSxhQUFhLENBQWI7SUFFSSxPQUFPLEVBQUUsZUFBZ0I7R0FFNUI7OztBL0QyQ0MsTUFBTSxFQUFMLFNBQVMsRUFBRSxLQUFLO0UrRDFDbkIsQUFBQSxlQUFlLENBQWY7SUFFSSxPQUFPLEVBQUUsZUFBZ0I7R0FFNUI7OztBL0R5QkMsTUFBTSxFQUFMLFNBQVMsRUFBRSxLQUFLO0UrRGxDbkIsQUFBQSxhQUFhLENBQWI7SUFFSSxPQUFPLEVBQUUsZUFBZ0I7R0FFNUI7OztBL0QyQ0MsTUFBTSxFQUFMLFNBQVMsRUFBRSxNQUFNO0UrRDFDcEIsQUFBQSxlQUFlLENBQWY7SUFFSSxPQUFPLEVBQUUsZUFBZ0I7R0FFNUI7OztBL0R5QkMsTUFBTSxFQUFMLFNBQVMsRUFBRSxNQUFNO0UrRGxDcEIsQUFBQSxhQUFhLENBQWI7SUFFSSxPQUFPLEVBQUUsZUFBZ0I7R0FFNUI7OztBQUNELEFBQUEsZUFBZSxDQUFmO0VBRUksT0FBTyxFQUFFLGVBQWdCO0NBRTVCOztBQVFILEFBQUEsb0JBQW9CLENBQUM7RUFDbkIsT0FBTyxFQUFFLGVBQWdCO0NBSzFCOztBQUhDLE1BQU0sQ0FBTixLQUFLO0VBSFAsQUFBQSxvQkFBb0IsQ0FBQztJQUlqQixPQUFPLEVBQUUsZ0JBQWlCO0dBRTdCOzs7QUFDRCxBQUFBLHFCQUFxQixDQUFDO0VBQ3BCLE9BQU8sRUFBRSxlQUFnQjtDQUsxQjs7QUFIQyxNQUFNLENBQU4sS0FBSztFQUhQLEFBQUEscUJBQXFCLENBQUM7SUFJbEIsT0FBTyxFQUFFLGlCQUFrQjtHQUU5Qjs7O0FBQ0QsQUFBQSwyQkFBMkIsQ0FBQztFQUMxQixPQUFPLEVBQUUsZUFBZ0I7Q0FLMUI7O0FBSEMsTUFBTSxDQUFOLEtBQUs7RUFIUCxBQUFBLDJCQUEyQixDQUFDO0lBSXhCLE9BQU8sRUFBRSx1QkFBd0I7R0FFcEM7OztBQUdDLE1BQU0sQ0FBTixLQUFLO0VBRFAsQUFBQSxhQUFhLENBQUM7SUFFVixPQUFPLEVBQUUsZUFBZ0I7R0FFNUI7OztBQ3RERDs7Ozs7Ozs7Ozs7O0VBWUU7QUE4RUY7Ozs7RUFJRTtBQVNGOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBeUJFO0FBMkJGOzs7Ozs7Ozs7OztFQVdFO0FBbUJGOzs7OztFQUtFO0FBVUY7Ozs7O0VBS0U7QWtDL0xGLEFqQzhFQSxHaUM5RUcsQUFBQSxPQUFPLEVBSVYsQWpDMEVBLFNpQzFFUyxDakMwRUM7RUFDTixLQUFLLEVBQUUsQ0FBRTtDQVVaOztBaUN6RkQsQWpDOEVBLEdpQzlFRyxBQUFBLE9BQU8sQWpDaUZMLE9BQU8sRWlDN0VaLEFqQzBFQSxTaUMxRVMsQWpDNkVKLE9BQU8sRWlDakZaLEFqQzhFQSxHaUM5RUcsQUFBQSxPQUFPLEFqQ2lGSyxNQUFNLEVpQzdFckIsQWpDMEVBLFNpQzFFUyxBakM2RU0sTUFBTSxDQUFDO0VBQ2QsT0FBTyxFQUFFLEdBQUk7RUFDYixPQUFPLEVBQUUsS0FBTTtDQUNsQjs7QWlDcEZMLEFqQzhFQSxHaUM5RUcsQUFBQSxPQUFPLEFqQ3NGTCxNQUFNLEVpQ2xGWCxBakMwRUEsU2lDMUVTLEFqQ2tGSixNQUFNLENBQUM7RUFDSixLQUFLLEVBQUUsSUFBSztDQUNmOztBQ3RHTCxBQUFBLFdBQVcsQ0FBQztFQUNSLFFBQVEsRUFBRSxLQUFNO0VBQ2hCLEdBQUcsRUFBRSxDQUFFO0VBQ1AsSUFBSSxFQUFFLENBQUU7RUFDUixLQUFLLEVBQUUsQ0FBRTtFQUNULE1BQU0sRUFBRSxDQUFFO0VBQ1YsT0FBTyxFQUFFLEtBQU07RUFDZixPQUFPLEVBQUUsQ0FBRTtFQUNYLGNBQWMsRUFBRSxJQUFLO0VBQ3JCLGdCQUFnQixFQUFFLGtCQUFJO0VBQ3RCLFVBQVUsRUFBRSxpQkFBa0I7RUFDOUIsUUFBUSxFQUFFLE1BQU87Q0E4Q3BCOztBQXpERCxBQWFJLFdBYk8sQ0FhUCxVQUFVLENBQUM7RUFDUCxLQUFLLEVBQUUsSUFBSztFQUNaLE1BQU0sRUFBRSxJQUFLO0VBQ2IsUUFBUSxFQUFFLFFBQVM7Q0EwQnRCOztBQTFDTCxBQWtCUSxXQWxCRyxDQWFQLFVBQVUsQ0FLTixNQUFNLENBQUM7RUFDSCxPQUFPLEVBQUUsQ0FBRTtFQUNYLFVBQVUsRUFBRSxjQUFlO0VBQzNCLGdCQUFnQixFQUFFLEtBQU07RUFDeEIsU0FBUyxFQUFFLEtBQU07RUFDakIsU0FBUyxFQUFFLEdBQUk7RUFDZixPQUFPLEVBQUUsSUFBSztFQUNkLFVBQVUsRXZFZmQsSUFBSTtFdUVnQkEsU0FBUyxFQUFFLElBQUs7RUFDaEIsV0FBVyxFQUFFLElBQUs7RUQwQzFCLFFBQVEsRUFBRSxRQUFTO0VBQ25CLEdBQUcsRUFBRSxHQUFJO0VBQ1QsSUFBSSxFQUFFLEdBQUk7RUFDVixTQUFTLEVBQUUscUJBQVM7Q0MvQmY7O0FBekNULEFBOEJZLFdBOUJELENBYVAsVUFBVSxDQUtOLE1BQU0sQ0FZRixjQUFjLENBQUM7RUFDWCxRQUFRLEVBQUUsUUFBUztFQUNuQixPQUFPLEVBQUUsR0FBSTtDQVFoQjs7QUF4Q2IsQUFrQ2dCLFdBbENMLENBYVAsVUFBVSxDQUtOLE1BQU0sQ0FZRixjQUFjLENBSVYsWUFBWSxDQUFDO0VBQ1QsUUFBUSxFQUFFLFFBQVM7RUFDbkIsS0FBSyxFQUFFLEdBQUk7RUFDWCxHQUFHLEVBQUUsR0FBSTtFQUNULE1BQU0sRUFBRSxPQUFRO0NBQ25COztBQXZDakIsQUFBQSxXQUFXLEFBNENOLEtBQUssQ0FBQztFQUNILEtBQUssRUFBRSxJQUFLO0VBQ1osTUFBTSxFQUFFLElBQUs7RUFDYixPQUFPLEVBQUUsQ0FBRTtFQUNYLGNBQWMsRUFBRSxHQUFJO0NBUXZCOztBQXhETCxBQW9EWSxXQXBERCxBQTRDTixLQUFLLENBTUYsVUFBVSxDQUVOLE1BQU0sQ0FBQztFQUNILE9BQU8sRUFBRSxDQUFFO0NBQ2Q7O0FDckRiOzs7Ozs7R0FNRztBQ0xILEFBQUEsVUFBVSxDQUFDO0VBQ1QsT0FBTyxFRFNvQyxJQUFJLENBREosSUFBSTtFQ1AvQyxPQUFPLEVBQUUsWUFBYTtFQUN0QixNQUFNLEVBQUUsT0FBUTtFQUVoQixtQkFBbUIsRUFBRSxlQUFnQjtFQUNyQyxtQkFBbUIsRURXd0IsS0FBSztFQ1ZoRCwwQkFBMEIsRURXaUIsTUFBTTtFQ1JqRCxJQUFJLEVBQUUsT0FBUTtFQUNkLEtBQUssRUFBRSxPQUFRO0VBQ2YsY0FBYyxFQUFFLElBQUs7RUFDckIsZ0JBQWdCLEVBQUUsV0FBWTtFQUM5QixNQUFNLEVBQUUsQ0FBRTtFQUNWLE1BQU0sRUFBRSxDQUFFO0VBQ1YsUUFBUSxFQUFFLE9BQVE7Q0FVbkI7O0FBMUJELEFBQUEsVUFBVSxBQWtCUCxNQUFNLENBQUM7RUFLSixPQUFPLEV6RTJDYSxDQUFDO0N5RXpDeEI7O0FBR0gsQUFBQSxjQUFjLENBQUM7RUFDYixLQUFLLEVEbEJzQyxJQUFJO0VDbUIvQyxNQUFNLEVBQUUsSUFBdUI7RUFDL0IsT0FBTyxFQUFFLFlBQWE7RUFDdEIsUUFBUSxFQUFFLFFBQVM7Q0FDcEI7O0FBRUQsQUFBQSxnQkFBZ0IsQ0FBQztFQUNmLE9BQU8sRUFBRSxLQUFNO0VBQ2YsR0FBRyxFQUFFLEdBQUk7RUFDVCxVQUFVLEVBQUUsSUFBdUI7Q0E0QnBDOztBQS9CRCxBQUFBLGdCQUFnQixFQUFoQixBQUFBLGdCQUFnQixBQU1iLFFBQVEsRUFOWCxBQUFBLGdCQUFnQixBQU9iLE9BQU8sQ0FBQztFQUNQLEtBQUssRURoQ29DLElBQUk7RUNpQzdDLE1BQU0sRURoQ21DLEdBQUc7RUNpQzVDLGdCQUFnQixFekVyQ1osSUFBSTtFeUVzQ1IsYUFBYSxFRC9CNEIsR0FBRztFQ2dDNUMsUUFBUSxFQUFFLFFBQVM7RUFDbkIsbUJBQW1CLEVBQUUsU0FBVTtFQUMvQixtQkFBbUIsRUFBRSxLQUFNO0VBQzNCLDBCQUEwQixFQUFFLElBQUs7Q0FDbEM7O0FBaEJILEFBQUEsZ0JBQWdCLEFBa0JiLFFBQVEsRUFsQlgsQUFBQSxnQkFBZ0IsQUFtQmIsT0FBTyxDQUFDO0VBQ1AsT0FBTyxFQUFFLEVBQUc7RUFDWixPQUFPLEVBQUUsS0FBTTtDQUNoQjs7QUF0QkgsQUFBQSxnQkFBZ0IsQUF3QmIsUUFBUSxDQUFDO0VBQ1IsR0FBRyxFQUFHLEtBQXdCO0NBQy9COztBQTFCSCxBQUFBLGdCQUFnQixBQTRCYixPQUFPLENBQUM7RUFDUCxNQUFNLEVBQUcsS0FBd0I7Q0FDbEM7O0FDbEVEOztLQUVHO0FBQ0gsQUFDRSxlQURhLENBQ2IsY0FBYyxDQUFDO0VBQ2IsV0FBVyxFQUFFLElBQXNCO0NBQ3BDOztBQUhILEFBS0UsZUFMYSxDQUtiLGdCQUFnQixDQUFDO0VBQ2YsVUFBVSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsb0NBQVksRUFDM0IsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxvQ0FBWTtDQU1sRDs7QUFiSCxBQUtFLGVBTGEsQ0FLYixnQkFBZ0IsQUFJYixRQUFRLEVBVGIsQUFLRSxlQUxhLENBS2IsZ0JBQWdCLEFBS2IsT0FBTyxDQUFDO0VBQ1AsVUFBVSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLG9DQUFZO0NBQzNDOztBQVpMLEFBZ0JJLGVBaEJXLEFBZVosVUFBVSxDQUNULGdCQUFnQixDQUFDO0VBQ2YsZ0JBQWdCLEVBQUUsV0FBWTtFQUM5QixTQUFTLEVBQUUsZUFBTztDQVNuQjs7QUEzQkwsQUFnQkksZUFoQlcsQUFlWixVQUFVLENBQ1QsZ0JBQWdCLEFBSWIsUUFBUSxDQUFDO0VBQ1IsU0FBUyxFQUFFLHVCQUFXLENBQTJELGFBQU07Q0FDeEY7O0FBdEJQLEFBZ0JJLGVBaEJXLEFBZVosVUFBVSxDQUNULGdCQUFnQixBQVFiLE9BQU8sQ0FBQztFQUNQLFNBQVMsRUFBRSx3QkFBVyxDQUFrRSxjQUFNO0NBQy9GOztBMEI5QlQsQUFFSSxLQUZDLENBRUQsU0FBUyxDQUFDO0VBQ1IsUUFBUSxFQUFFLFFBQVM7Q0FDcEI7O0FBSkwsQUFNSSxLQU5DLENBTUQsZUFBZSxDQUFDO0VBQ2QsUUFBUSxFQUFFLFFBQVM7RUFDbkIsS0FBSyxFQUFFLElBQUs7RUFDWixRQUFRLEVBQUUsTUFBTztDQTRFbEI7O0FBckZMLEFBV1EsS0FYSCxDQU1ELGVBQWUsR0FLWCxjQUFjLENBQUM7RUFDZixRQUFRLEVBQUUsUUFBUztFQUNuQixPQUFPLEVBQUUsSUFBSztFQUNkLFVBQVUsRUFBRSxvQkFBcUI7Q0FtQ2xDOztBQWpEUCxBQWlCVSxLQWpCTCxDQU1ELGVBQWUsR0FLWCxjQUFjLEdBTVosR0FBRztBQWpCYixBQWtCYyxLQWxCVCxDQU1ELGVBQWUsR0FLWCxjQUFjLEdBT1osQ0FBQyxHQUFHLEdBQUcsQ0FBQztFQUVSLFdBQVcsRUFBRSxDQUFFO0NBQ2hCOztBQUdELE1BQU0sQ0FBTixHQUFHLE1BQU0sWUFBWSxJQUFJLG9CQUFDO0VBeEJsQyxBQVdRLEtBWEgsQ0FNRCxlQUFlLEdBS1gsY0FBYyxDQUFDO0lBY2IsVUFBVSxFQUFFLHNCQUF1QjtJQUNuQyxtQkFBbUIsRUFBRSxNQUFPO0lBQzVCLFdBQVcsRUFBRSxNQUFPO0dBc0J2QjtFQWpEUCxBQVdRLEtBWEgsQ0FNRCxlQUFlLEdBS1gsY0FBYyxBQWtCWCxLQUFLLEVBN0JoQixBQVdRLEtBWEgsQ0FNRCxlQUFlLEdBS1gsY0FBYyxBQW1CWCxPQUFPLEFBQUEsTUFBTSxDQUFDO0lBQ2IsSUFBSSxFQUFFLENBQUU7SUFFUixPQUFPLEVBQUMsQ0FBRTtHQUNYO0VBbENYLEFBV1EsS0FYSCxDQU1ELGVBQWUsR0FLWCxjQUFjLEFBd0JYLEtBQUssRUFuQ2hCLEFBV1EsS0FYSCxDQU1ELGVBQWUsR0FLWCxjQUFjLEFBeUJYLE9BQU8sQUFBQSxLQUFLLENBQUM7SUFDWixJQUFJLEVBQUUsQ0FBRTtJQUVSLE9BQU8sRUFBRSxDQUFFO0dBQ1o7RUF4Q1gsQUFXUSxLQVhILENBTUQsZUFBZSxHQUtYLGNBQWMsQUE4QlgsS0FBSyxBQUFBLEtBQUssRUF6Q3JCLEFBV1EsS0FYSCxDQU1ELGVBQWUsR0FLWCxjQUFjLEFBK0JYLEtBQUssQUFBQSxNQUFNLEVBMUN0QixBQVdRLEtBWEgsQ0FNRCxlQUFlLEdBS1gsY0FBYyxBQWdDWCxPQUFPLENBQUM7SUFDUCxJQUFJLEVBQUUsQ0FBRTtJQUVSLE9BQU8sRUFBRSxDQUFFO0dBQ1o7OztBQS9DWCxBQW1EUSxLQW5ESCxDQU1ELGVBQWUsR0E2Q1gsT0FBTztBQW5EZixBQW9EUSxLQXBESCxDQU1ELGVBQWUsR0E4Q1gsS0FBSztBQXBEYixBQXFEUSxLQXJESCxDQU1ELGVBQWUsR0ErQ1gsS0FBSyxDQUFDO0VBQ04sT0FBTyxFQUFFLEtBQU07Q0FDaEI7O0FBdkRQLEFBeURRLEtBekRILENBTUQsZUFBZSxHQW1EWCxPQUFPLENBQUM7RUFDUixJQUFJLEVBQUUsQ0FBRTtDQUNUOztBQTNEUCxBQTZEUSxLQTdESCxDQU1ELGVBQWUsR0F1RFgsS0FBSztBQTdEYixBQThEUSxLQTlESCxDQU1ELGVBQWUsR0F3RFgsS0FBSyxDQUFDO0VBQ04sUUFBUSxFQUFFLFFBQVM7RUFDbkIsR0FBRyxFQUFFLENBQUU7RUFDUCxLQUFLLEVBQUUsSUFBSztDQUNiOztBQWxFUCxBQW9FUSxLQXBFSCxDQU1ELGVBQWUsR0E4RFgsS0FBSyxDQUFDO0VBQ04sSUFBSSxFQUFFLElBQUs7Q0FDWjs7QUF0RVAsQUF1RVEsS0F2RUgsQ0FNRCxlQUFlLEdBaUVYLEtBQUssQ0FBQztFQUNOLElBQUksRUFBRSxLQUFNO0NBQ2I7O0FBekVQLEFBMEVhLEtBMUVSLENBTUQsZUFBZSxHQW9FWCxLQUFLLEFBQUEsS0FBSztBQTFFbEIsQUEyRWEsS0EzRVIsQ0FNRCxlQUFlLEdBcUVYLEtBQUssQUFBQSxNQUFNLENBQUM7RUFDWixJQUFJLEVBQUUsQ0FBRTtDQUNUOztBQTdFUCxBQStFZSxLQS9FVixDQU1ELGVBQWUsR0F5RVgsT0FBTyxBQUFBLEtBQUssQ0FBQztFQUNiLElBQUksRUFBRSxLQUFNO0NBQ2I7O0FBakZQLEFBa0ZlLEtBbEZWLENBTUQsZUFBZSxHQTRFWCxPQUFPLEFBQUEsTUFBTSxDQUFDO0VBQ2QsSUFBSSxFQUFFLElBQUs7Q0FDWjs7QUFwRlAsQUE0RkksS0E1RkMsQ0E0RkQsaUJBQWlCLENBQUM7RUFDaEIsUUFBUSxFQUFFLFFBQVM7RUFDbkIsR0FBRyxFQUFFLENBQUU7RUFDUCxNQUFNLEVBQUUsQ0FBRTtFQUNWLElBQUksRUFBRSxDQUFFO0VBQ1IsS0FBSyxFakcrc0JtQyxHQUFHO0VpRzlzQjNDLFNBQVMsRWpHaXRCK0IsSUFBSTtFaUdodEI1QyxLQUFLLEVqRzRzQm1DLElBQUk7RWlHM3NCNUMsVUFBVSxFQUFFLE1BQU87RUFDbkIsV0FBVyxFakd3c0I2QixDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxrQkFBSTtFaUd2c0J0RCxPQUFPLEVqRzRzQmlDLEdBQUU7Q2lHdHBCM0M7O0FBNUpMLEFBNEZJLEtBNUZDLENBNEZELGlCQUFpQixBQWVkLEtBQUssQ0FBQztFdEVwR1gsZ0JBQWdCLEVBQUUsNEVBQWU7RUFDakMsaUJBQWlCLEVBQUUsUUFBUztFQUM1QixNQUFNLEVBQUUsOEdBQWdKO0NzRW9Hbko7O0FBN0dQLEFBNEZJLEtBNUZDLENBNEZELGlCQUFpQixBQWtCZCxNQUFNLENBQUM7RUFDTixLQUFLLEVBQUUsQ0FBRTtFQUNULElBQUksRUFBRSxJQUFLO0V0RXpHakIsZ0JBQWdCLEVBQUUsNEVBQWU7RUFDakMsaUJBQWlCLEVBQUUsUUFBUztFQUM1QixNQUFNLEVBQUUsOEdBQWdKO0NzRXlHbko7O0FBbEhQLEFBNEZJLEtBNUZDLENBNEZELGlCQUFpQixBOUZ4RWhCLE1BQU0sRThGcEJYLEFBNEZJLEtBNUZDLENBNEZELGlCQUFpQixBOUZ2RWhCLE1BQU0sQ0FBQztFOEZpR0osS0FBSyxFakd5ckJpQyxJQUFJO0VpR3hyQjFDLGVBQWUsRUFBRSxJQUFLO0VBQ3RCLE9BQU8sRUFBRSxDQUFFO0VBQ1gsT0FBTyxFQUFFLEVBQUc7QzlGbEdmOztBOEZ2QkwsQUE2SE0sS0E3SEQsQ0E0RkQsaUJBQWlCLENBaUNmLFVBQVU7QUE3SGhCLEFBOEhNLEtBOUhELENBNEZELGlCQUFpQixDQWtDZixVQUFVLENBQUM7RUFDVCxRQUFRLEVBQUUsUUFBUztFQUNuQixHQUFHLEVBQUUsR0FBSTtFQUNULE9BQU8sRUFBRSxDQUFFO0VBQ1gsT0FBTyxFQUFFLFlBQWE7RUFDdEIsS0FBSyxFakc2ckJpQyxJQUFJO0VpRzVyQjFDLE1BQU0sRWpHNHJCZ0MsSUFBSTtFaUczckIxQyxVQUFVLEVBQUksS0FBb0I7RUFDbEMsV0FBVyxFQUFFLEtBQU07RUFDbkIsV0FBVyxFQUFFLENBQUU7Q0FDaEI7O0FBeElQLEFBeUlNLEtBeklELENBNEZELGlCQUFpQixDQTZDZixVQUFVLENBQUM7RUFDVCxJQUFJLEVBQUUsR0FBSTtFQUNWLFdBQVcsRUFBSSxLQUFvQjtDQUNwQzs7QUE1SVAsQUE2SU0sS0E3SUQsQ0E0RkQsaUJBQWlCLENBaURmLFVBQVUsQ0FBQztFQUNULEtBQUssRUFBRSxHQUFJO0VBQ1gsWUFBWSxFQUFJLEtBQW9CO0NBQ3JDOztBQWhKUCxBQWtKTSxLQWxKRCxDQTRGRCxpQkFBaUIsQ0FzRGYsVUFBVSxBQUNQLFFBQVEsQ0FBQztFQUNSLE9BQU8sRUFBRSxPQUFRO0NBQ2xCOztBQXJKVCxBQXVKTSxLQXZKRCxDQTRGRCxpQkFBaUIsQ0EyRGYsVUFBVSxBQUNQLFFBQVEsQ0FBQztFQUNSLE9BQU8sRUFBRSxPQUFRO0NBQ2xCOztBQTFKVCxBQW9LSSxLQXBLQyxDQW9LRCxvQkFBb0IsQ0FBQztFQUNuQixRQUFRLEVBQUUsUUFBUztFQUNuQixNQUFNLEVBQUUsSUFBSztFQUNiLElBQUksRUFBRSxHQUFJO0VBQ1YsT0FBTyxFQUFFLEVBQUc7RUFDWixLQUFLLEVqRzRvQm1DLEdBQUc7RWlHM29CM0MsWUFBWSxFQUFFLENBQUU7RUFDaEIsV0FBVyxFQUFJLElBQTBCO0VBQ3pDLFVBQVUsRUFBRSxNQUFPO0VBQ25CLFVBQVUsRUFBRSxJQUFLO0NBeUJsQjs7QUF0TUwsQUErS00sS0EvS0QsQ0FvS0Qsb0JBQW9CLENBV2xCLEVBQUUsQ0FBQztFQUNELE9BQU8sRUFBRSxZQUFhO0VBQ3RCLEtBQUssRWpHc29CaUMsSUFBSTtFaUdyb0IxQyxNQUFNLEVqR3FvQmdDLElBQUk7RWlHcG9CMUMsTUFBTSxFQUFFLEdBQUk7RUFDWixXQUFXLEVBQUUsTUFBTztFQUNwQixNQUFNLEVBQUUsT0FBUTtFQU1oQixnQkFBZ0IsRUFBRSxXQUFJO0VBQ3RCLE1BQU0sRUFBRSxHQUFHLENBQUMsS0FBSyxDakc4bkJxQixJQUFJO0VpRzduQjFDLGFBQWEsRWpHMG5CeUIsSUFBSTtDaUd6bkIzQzs7QUE5TFAsQUFnTU0sS0FoTUQsQ0FvS0Qsb0JBQW9CLENBNEJsQixPQUFPLENBQUM7RUFDTixLQUFLLEVqR3VuQmlDLElBQUk7RWlHdG5CMUMsTUFBTSxFakdzbkJnQyxJQUFJO0VpR3JuQjFDLE1BQU0sRUFBRSxDQUFFO0VBQ1YsZ0JBQWdCLEVqR3FuQnNCLElBQUk7Q2lHcG5CM0M7O0FBck1QLEFBNk1JLEtBN01DLENBNk1ELGlCQUFpQixDQUFDO0VBQ2hCLFFBQVEsRUFBRSxRQUFTO0VBQ25CLEtBQUssRUFBSSxHQUFJO0VBQ2IsTUFBTSxFQUFFLElBQUs7RUFDYixJQUFJLEVBQUksR0FBSTtFQUNaLE9BQU8sRUFBRSxFQUFHO0VBQ1osV0FBVyxFQUFFLElBQUs7RUFDbEIsY0FBYyxFQUFFLElBQUs7RUFDckIsS0FBSyxFakd5bUJtQyxJQUFJO0VpR3htQjVDLFVBQVUsRUFBRSxNQUFPO0VBQ25CLFdBQVcsRWpHc2xCNkIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsa0JBQUk7Q2lHamxCdkQ7O0FBNU5MLEFBeU5NLEtBek5ELENBNk1ELGlCQUFpQixDQVlmLElBQUksQ0FBQztFQUNILFdBQVcsRUFBRSxJQUFLO0NBQ25COztBL0Y5S0gsTUFBTSxFQUFMLFNBQVMsRUFBRSxLQUFLO0UrRjdDckIsQUFzT1EsS0F0T0gsQ0FxT0MsaUJBQWlCLENBQ2YsVUFBVTtFQXRPbEIsQUF1T1EsS0F2T0gsQ0FxT0MsaUJBQWlCLENBRWYsVUFBVSxDQUFDO0lBQ1QsS0FBSyxFakd5a0IrQixJQUFJO0lpR3hrQnhDLE1BQU0sRWpHd2tCOEIsSUFBSTtJaUd2a0J4QyxVQUFVLEVBQUksS0FBNEI7SUFDMUMsU0FBUyxFakdza0IyQixJQUFJO0dpR3JrQnpDO0VBNU9ULEFBNk9RLEtBN09ILENBcU9DLGlCQUFpQixDQVFmLFVBQVUsQ0FBQztJQUNULFdBQVcsRUFBSSxLQUE0QjtHQUM1QztFQS9PVCxBQWdQUSxLQWhQSCxDQXFPQyxpQkFBaUIsQ0FXZixVQUFVLENBQUM7SUFDVCxZQUFZLEVBQUksS0FBNEI7R0FDN0M7RUFsUFQsQUFzUE0sS0F0UEQsQ0FzUEMsaUJBQWlCLENBQUM7SUFDaEIsS0FBSyxFQUFJLEdBQUk7SUFDYixJQUFJLEVBQUksR0FBSTtJQUNaLGNBQWMsRUFBRSxJQUFLO0dBQ3RCO0VBMVBQLEFBNlBNLEtBN1BELENBNlBDLG9CQUFvQixDQUFDO0lBQ25CLE1BQU0sRUFBRSxJQUFLO0dBQ2Q7OztBQy9QUCxBQUVJLE1BRkUsQ0FFRixTQUFTLENBQUM7RUFDUixRQUFRLEVBQUUsUUFBUztDQUNwQjs7QUFKTCxBQU1JLE1BTkUsQ0FNRixlQUFlLENBQUM7RUFDZCxRQUFRLEVBQUUsUUFBUztFQUNuQixLQUFLLEVBQUUsSUFBSztFQUNaLFFBQVEsRUFBRSxNQUFPO0NBeUVsQjs7QUFsRkwsQUFXUSxNQVhGLENBTUYsZUFBZSxHQUtYLGNBQWMsQ0FBQztFQUNmLFFBQVEsRUFBRSxRQUFTO0VBQ25CLE9BQU8sRUFBRSxJQUFLO0VBQ2QsVUFBVSxFQUFFLG9CQUFxQjtDQWdDbEM7O0FBOUNQLEFBaUJVLE1BakJKLENBTUYsZUFBZSxHQUtYLGNBQWMsR0FNWixHQUFHO0FBakJiLEFBa0JjLE1BbEJSLENBTUYsZUFBZSxHQUtYLGNBQWMsR0FPWixDQUFDLEdBQUcsR0FBRyxDQUFDO0VBRVIsV0FBVyxFQUFFLENBQUU7Q0FDaEI7O0FBR0QsTUFBTSxDQUFOLEdBQUcsTUFBTSxZQUFZLElBQUksb0JBQUM7RUF4QmxDLEFBV1EsTUFYRixDQU1GLGVBQWUsR0FLWCxjQUFjLENBQUM7SUFjYixVQUFVLEVBQUUseUJBQTBCO0lBQ3RDLG1CQUFtQixFQUFFLE1BQU87SUFDNUIsV0FBVyxFQUFFLE1BQU87R0FtQnZCO0VBOUNQLEFBV1EsTUFYRixDQU1GLGVBQWUsR0FLWCxjQUFjLEFBa0JYLEtBQUssRUE3QmhCLEFBV1EsTUFYRixDQU1GLGVBQWUsR0FLWCxjQUFjLEFBbUJYLE9BQU8sQUFBQSxNQUFNLENBQUM7SUFDYixJQUFJLEVBQUUsQ0FBRTtJQUNSLFNBQVMsRUFBRSx1QkFBVztHQUN2QjtFQWpDWCxBQVdRLE1BWEYsQ0FNRixlQUFlLEdBS1gsY0FBYyxBQXVCWCxLQUFLLEVBbENoQixBQVdRLE1BWEYsQ0FNRixlQUFlLEdBS1gsY0FBYyxBQXdCWCxPQUFPLEFBQUEsS0FBSyxDQUFDO0lBQ1osSUFBSSxFQUFFLENBQUU7SUFDUixTQUFTLEVBQUUsd0JBQVc7R0FDdkI7RUF0Q1gsQUFXUSxNQVhGLENBTUYsZUFBZSxHQUtYLGNBQWMsQUE0QlgsS0FBSyxBQUFBLEtBQUssRUF2Q3JCLEFBV1EsTUFYRixDQU1GLGVBQWUsR0FLWCxjQUFjLEFBNkJYLEtBQUssQUFBQSxNQUFNLEVBeEN0QixBQVdRLE1BWEYsQ0FNRixlQUFlLEdBS1gsY0FBYyxBQThCWCxPQUFPLENBQUM7SUFDUCxJQUFJLEVBQUUsQ0FBRTtJQUNSLFNBQVMsRUFBRSxvQkFBVztHQUN2Qjs7O0FBNUNYLEFBZ0RRLE1BaERGLENBTUYsZUFBZSxHQTBDWCxPQUFPO0FBaERmLEFBaURRLE1BakRGLENBTUYsZUFBZSxHQTJDWCxLQUFLO0FBakRiLEFBa0RRLE1BbERGLENBTUYsZUFBZSxHQTRDWCxLQUFLLENBQUM7RUFDTixPQUFPLEVBQUUsS0FBTTtDQUNoQjs7QUFwRFAsQUFzRFEsTUF0REYsQ0FNRixlQUFlLEdBZ0RYLE9BQU8sQ0FBQztFQUNSLElBQUksRUFBRSxDQUFFO0NBQ1Q7O0FBeERQLEFBMERRLE1BMURGLENBTUYsZUFBZSxHQW9EWCxLQUFLO0FBMURiLEFBMkRRLE1BM0RGLENBTUYsZUFBZSxHQXFEWCxLQUFLLENBQUM7RUFDTixRQUFRLEVBQUUsUUFBUztFQUNuQixHQUFHLEVBQUUsQ0FBRTtFQUNQLEtBQUssRUFBRSxJQUFLO0NBQ2I7O0FBL0RQLEFBaUVRLE1BakVGLENBTUYsZUFBZSxHQTJEWCxLQUFLLENBQUM7RUFDTixJQUFJLEVBQUUsSUFBSztDQUNaOztBQW5FUCxBQW9FUSxNQXBFRixDQU1GLGVBQWUsR0E4RFgsS0FBSyxDQUFDO0VBQ04sSUFBSSxFQUFFLEtBQU07Q0FDYjs7QUF0RVAsQUF1RWEsTUF2RVAsQ0FNRixlQUFlLEdBaUVYLEtBQUssQUFBQSxLQUFLO0FBdkVsQixBQXdFYSxNQXhFUCxDQU1GLGVBQWUsR0FrRVgsS0FBSyxBQUFBLE1BQU0sQ0FBQztFQUNaLElBQUksRUFBRSxDQUFFO0NBQ1Q7O0FBMUVQLEFBNEVlLE1BNUVULENBTUYsZUFBZSxHQXNFWCxPQUFPLEFBQUEsS0FBSyxDQUFDO0VBQ2IsSUFBSSxFQUFFLEtBQU07Q0FDYjs7QUE5RVAsQUErRWUsTUEvRVQsQ0FNRixlQUFlLEdBeUVYLE9BQU8sQUFBQSxNQUFNLENBQUM7RUFDZCxJQUFJLEVBQUUsSUFBSztDQUNaOztBQWpGUCxBQXlGSSxNQXpGRSxDQXlGRixpQkFBaUIsQ0FBQztFQUNoQixRQUFRLEVBQUUsUUFBUztFQUNuQixHQUFHLEVBQUUsQ0FBRTtFQUNQLE1BQU0sRUFBRSxDQUFFO0VBQ1YsSUFBSSxFQUFFLENBQUU7RUFDUixLQUFLLEVsR2t0Qm1DLEdBQUc7RWtHanRCM0MsU0FBUyxFbEdvdEIrQixJQUFJO0VrR250QjVDLEtBQUssRWxHK3NCbUMsSUFBSTtFa0c5c0I1QyxVQUFVLEVBQUUsTUFBTztFQUNuQixXQUFXLEVsRzJzQjZCLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLGtCQUFJO0VrRzFzQnRELE9BQU8sRWxHK3NCaUMsR0FBRTtDa0d6cEIzQzs7QUF6SkwsQUF5RkksTUF6RkUsQ0F5RkYsaUJBQWlCLEFBZWQsS0FBSyxDQUFDO0V2RWpHWCxnQkFBZ0IsRUFBRSw0RUFBZTtFQUNqQyxpQkFBaUIsRUFBRSxRQUFTO0VBQzVCLE1BQU0sRUFBRSw4R0FBZ0o7Q3VFaUduSjs7QUExR1AsQUF5RkksTUF6RkUsQ0F5RkYsaUJBQWlCLEFBa0JkLE1BQU0sQ0FBQztFQUNOLEtBQUssRUFBRSxDQUFFO0VBQ1QsSUFBSSxFQUFFLElBQUs7RXZFdEdqQixnQkFBZ0IsRUFBRSw0RUFBZTtFQUNqQyxpQkFBaUIsRUFBRSxRQUFTO0VBQzVCLE1BQU0sRUFBRSw4R0FBZ0o7Q3VFc0duSjs7QUEvR1AsQUF5RkksTUF6RkUsQ0F5RkYsaUJBQWlCLEEvRnJFaEIsTUFBTSxFK0ZwQlgsQUF5RkksTUF6RkUsQ0F5RkYsaUJBQWlCLEEvRnBFaEIsTUFBTSxDQUFDO0UrRjhGSixLQUFLLEVsRzRyQmlDLElBQUk7RWtHM3JCMUMsZUFBZSxFQUFFLElBQUs7RUFDdEIsT0FBTyxFQUFFLENBQUU7RUFDWCxPQUFPLEVBQUUsRUFBRztDL0YvRmY7O0ErRnZCTCxBQTBITSxNQTFIQSxDQXlGRixpQkFBaUIsQ0FpQ2YsVUFBVTtBQTFIaEIsQUEySE0sTUEzSEEsQ0F5RkYsaUJBQWlCLENBa0NmLFVBQVUsQ0FBQztFQUNULFFBQVEsRUFBRSxRQUFTO0VBQ25CLEdBQUcsRUFBRSxHQUFJO0VBQ1QsT0FBTyxFQUFFLENBQUU7RUFDWCxPQUFPLEVBQUUsWUFBYTtFQUN0QixLQUFLLEVsR2dzQmlDLElBQUk7RWtHL3JCMUMsTUFBTSxFbEcrckJnQyxJQUFJO0VrRzlyQjFDLFVBQVUsRUFBSSxLQUFvQjtFQUNsQyxXQUFXLEVBQUUsS0FBTTtFQUNuQixXQUFXLEVBQUUsQ0FBRTtDQUNoQjs7QUFySVAsQUFzSU0sTUF0SUEsQ0F5RkYsaUJBQWlCLENBNkNmLFVBQVUsQ0FBQztFQUNULElBQUksRUFBRSxHQUFJO0VBQ1YsV0FBVyxFQUFJLEtBQW9CO0NBQ3BDOztBQXpJUCxBQTBJTSxNQTFJQSxDQXlGRixpQkFBaUIsQ0FpRGYsVUFBVSxDQUFDO0VBQ1QsS0FBSyxFQUFFLEdBQUk7RUFDWCxZQUFZLEVBQUksS0FBb0I7Q0FDckM7O0FBN0lQLEFBK0lNLE1BL0lBLENBeUZGLGlCQUFpQixDQXNEZixVQUFVLEFBQ1AsUUFBUSxDQUFDO0VBQ1IsT0FBTyxFQUFFLE9BQVE7Q0FDbEI7O0FBbEpULEFBb0pNLE1BcEpBLENBeUZGLGlCQUFpQixDQTJEZixVQUFVLEFBQ1AsUUFBUSxDQUFDO0VBQ1IsT0FBTyxFQUFFLE9BQVE7Q0FDbEI7O0FBdkpULEFBaUtJLE1BaktFLENBaUtGLG9CQUFvQixDQUFDO0VBQ25CLFFBQVEsRUFBRSxRQUFTO0VBQ25CLE1BQU0sRUFBRSxJQUFLO0VBQ2IsSUFBSSxFQUFFLEdBQUk7RUFDVixPQUFPLEVBQUUsRUFBRztFQUNaLEtBQUssRWxHK29CbUMsR0FBRztFa0c5b0IzQyxZQUFZLEVBQUUsQ0FBRTtFQUNoQixXQUFXLEVBQUksSUFBMEI7RUFDekMsVUFBVSxFQUFFLE1BQU87RUFDbkIsVUFBVSxFQUFFLElBQUs7Q0F5QmxCOztBQW5NTCxBQTRLTSxNQTVLQSxDQWlLRixvQkFBb0IsQ0FXbEIsRUFBRSxDQUFDO0VBQ0QsT0FBTyxFQUFFLFlBQWE7RUFDdEIsS0FBSyxFbEd5b0JpQyxJQUFJO0VrR3hvQjFDLE1BQU0sRWxHd29CZ0MsSUFBSTtFa0d2b0IxQyxNQUFNLEVBQUUsR0FBSTtFQUNaLFdBQVcsRUFBRSxNQUFPO0VBQ3BCLE1BQU0sRUFBRSxPQUFRO0VBTWhCLGdCQUFnQixFQUFFLFdBQUk7RUFDdEIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENsR2lvQnFCLElBQUk7RWtHaG9CMUMsYUFBYSxFbEc2bkJ5QixJQUFJO0NrRzVuQjNDOztBQTNMUCxBQTZMTSxNQTdMQSxDQWlLRixvQkFBb0IsQ0E0QmxCLE9BQU8sQ0FBQztFQUNOLEtBQUssRWxHMG5CaUMsSUFBSTtFa0d6bkIxQyxNQUFNLEVsR3luQmdDLElBQUk7RWtHeG5CMUMsTUFBTSxFQUFFLENBQUU7RUFDVixnQkFBZ0IsRWxHd25Cc0IsSUFBSTtDa0d2bkIzQzs7QUFsTVAsQUEwTUksTUExTUUsQ0EwTUYsaUJBQWlCLENBQUM7RUFDaEIsUUFBUSxFQUFFLFFBQVM7RUFDbkIsS0FBSyxFQUFJLEdBQUk7RUFDYixNQUFNLEVBQUUsSUFBSztFQUNiLElBQUksRUFBSSxHQUFJO0VBQ1osT0FBTyxFQUFFLEVBQUc7RUFDWixXQUFXLEVBQUUsSUFBSztFQUNsQixjQUFjLEVBQUUsSUFBSztFQUNyQixLQUFLLEVsRzRtQm1DLElBQUk7RWtHM21CNUMsVUFBVSxFQUFFLE1BQU87RUFDbkIsV0FBVyxFbEd5bEI2QixDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxrQkFBSTtDa0dwbEJ2RDs7QUF6TkwsQUFzTk0sTUF0TkEsQ0EwTUYsaUJBQWlCLENBWWYsSUFBSSxDQUFDO0VBQ0gsV0FBVyxFQUFFLElBQUs7Q0FDbkI7O0FoRzNLSCxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RWdHN0NyQixBQW1PUSxNQW5PRixDQWtPQSxpQkFBaUIsQ0FDZixVQUFVO0VBbk9sQixBQW9PUSxNQXBPRixDQWtPQSxpQkFBaUIsQ0FFZixVQUFVLENBQUM7SUFDVCxLQUFLLEVsRzRrQitCLElBQUk7SWtHM2tCeEMsTUFBTSxFbEcya0I4QixJQUFJO0lrRzFrQnhDLFVBQVUsRUFBSSxLQUE0QjtJQUMxQyxTQUFTLEVsR3lrQjJCLElBQUk7R2tHeGtCekM7RUF6T1QsQUEwT1EsTUExT0YsQ0FrT0EsaUJBQWlCLENBUWYsVUFBVSxDQUFDO0lBQ1QsV0FBVyxFQUFJLEtBQTRCO0dBQzVDO0VBNU9ULEFBNk9RLE1BN09GLENBa09BLGlCQUFpQixDQVdmLFVBQVUsQ0FBQztJQUNULFlBQVksRUFBSSxLQUE0QjtHQUM3QztFQS9PVCxBQW1QTSxNQW5QQSxDQW1QQSxpQkFBaUIsQ0FBQztJQUNoQixLQUFLLEVBQUksR0FBSTtJQUNiLElBQUksRUFBSSxHQUFJO0lBQ1osY0FBYyxFQUFFLElBQUs7R0FDdEI7RUF2UFAsQUEwUE0sTUExUEEsQ0EwUEEsb0JBQW9CLENBQUM7SUFDbkIsTUFBTSxFQUFFLElBQUs7R0FDZDs7O0FoQzNDSCxBQUFBLGlCQUFpQixDQUFqQjtFQWhFRixnQkFBZ0IsRUFBTSxzQkFBQztFQUx2QixtQkFBbUIsRUFySFMsR0FBRyxDQUFFLEdBQUc7RUEyR3BDLEtBQUssRUEzR2lDLElBQUk7RUErRzFDLE1BQU0sRUEvR3NDLElBQUk7Q0E0TDdDOztBQWpDSCxNQUFNLEVBQUwsOEJBQUMsRUFBK0IsQ0FBQyxJQUFJLGNBQWMsRUFBRSxNQUFNO0VBK0IxRCxBQUFBLGlCQUFpQixDQUFqQjtJQWhFRixnQkFBZ0IsRUFBTSx5QkFBQztJQXlCdkIsZUFBZSxFQW5KbUMsSUFBSSxDQUFFLElBQUk7R0E0THpEOzs7QUFGRCxBQUFBLG1CQUFtQixDQUFuQjtFQWhFRixnQkFBZ0IsRUFBTSxzQkFBQztFQUx2QixtQkFBbUIsRUExR2EsS0FBSSxDQUFFLEdBQUc7RUFnR3pDLEtBQUssRUFoR3NDLElBQUk7RUFvRy9DLE1BQU0sRUFwRzJDLElBQUk7Q0FpTGxEOztBQWpDSCxNQUFNLEVBQUwsOEJBQUMsRUFBK0IsQ0FBQyxJQUFJLGNBQWMsRUFBRSxNQUFNO0VBK0IxRCxBQUFBLG1CQUFtQixDQUFuQjtJQWhFRixnQkFBZ0IsRUFBTSx5QkFBQztJQXlCdkIsZUFBZSxFQXhJd0MsSUFBSSxDQUFFLElBQUk7R0FpTDlEOzs7QUFGRCxBQUFBLGdCQUFnQixDQUFoQjtFQWhFRixnQkFBZ0IsRUFBTSxzQkFBQztFQUx2QixtQkFBbUIsRUEvRlMsR0FBRyxDQUFHLEtBQUk7RUFxRnRDLEtBQUssRUFyRm1DLElBQUk7RUF5RjVDLE1BQU0sRUF6RndDLElBQUk7Q0FzSy9DOztBQWpDSCxNQUFNLEVBQUwsOEJBQUMsRUFBK0IsQ0FBQyxJQUFJLGNBQWMsRUFBRSxNQUFNO0VBK0IxRCxBQUFBLGdCQUFnQixDQUFoQjtJQWhFRixnQkFBZ0IsRUFBTSx5QkFBQztJQXlCdkIsZUFBZSxFQTdIcUMsSUFBSSxDQUFFLElBQUk7R0FzSzNEOzs7QWlDbk5MLEFBQUEsT0FBTyxDQUFDO0VBQ0osUUFBUSxFQUFFLFFBQVM7RUFDbkIsSUFBSSxFQUFDLENBQUU7RUFDUCxLQUFLLEVBQUMsQ0FBRTtFQUNSLEdBQUcsRUFBRSxJQUFLO0VBQ1YscUlBQXFJO0VBQ3JJLFVBQVUsRXRHb0RJLE9BQU87RXNHcERTLGtCQUFrQjtFQUNoRCxVQUFVLEVBQUUsOEVBQW9CO0VBQTZGLGNBQWM7RUFDM0ksVUFBVSxFQUFFLGlGQUF1QjtFQUEwRiw2QkFBNkI7RUFDMUosVUFBVSxFQUFFLDZFQUFlO0VBQThGLHNEQUFzRDtFQUMvSyxNQUFNLEVBQUUsMkhBQTJIO0VBQUUsV0FBVztFQUNoSixPQUFPLEVBQUUsT0FBUTtDQThEcEI7O0FBekVELEFBWUksT0FaRyxDQVlILFVBQVUsQ0FBQztFQUNQLFFBQVEsRUFBRSxRQUFTO0VBQ25CLE9BQU8sRUFBQyxDQUFFO0NBQ2I7O0FBZkwsQUFnQkksT0FoQkcsQ0FnQkgsUUFBUSxDQUFDO0VBQ0wsUUFBUSxFQUFFLFFBQVM7RUFDbkIsR0FBRyxFQUFDLEtBQU07Q0FpQmI7O0FqR3VCRCxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RWlHMURyQixBQW9CWSxPQXBCTCxDQWdCSCxRQUFRLENBSUEsR0FBRyxDQUFDO0lBQ0EsS0FBSyxFQUFFLElBQUs7SUFDWixVQUFVLEVBQUUsR0FBSTtJQUNoQixXQUFXLEVBQUUsSUFBSztJQUNsQixRQUFRLEVBQUUsS0FBTTtHQUNuQjs7O0FBekJiLEFBZ0JJLE9BaEJHLENBZ0JILFFBQVEsQUFXSCxNQUFNLENBQUM7RUFDSixPQUFPLEVBQUUsTUFBTztFQUNoQixNQUFNLEVBQUUsS0FBTTtFQUNkLFdBQVcsRUFBRSxJQUFLO0VBQ2xCLEtBQUssRXRHckJULElBQUk7RXNHc0JBLFNBQVMsRUFBRSxJQUFLO0VoQzRDeEIsUUFBUSxFQUFFLFFBQVM7RUFDbkIsSUFBSSxFQUFFLEdBQUk7RUFDVixTQUFTLEVBQUUsZ0JBQVU7Q2dDNUNoQjs7QUFsQ1QsQUFxQ0ksT0FyQ0csQ0FxQ0gsR0FBRyxDQUFDO0VBQ0EsZ0JBQWdCLEV0R21CUixPQUFPO0VzR2xCZixjQUFjLEVBQUUsU0FBVTtFQUMxQixXQUFXLEVBQUMsSUFBSztDQW1CcEI7O0FBM0RMLEFBeUNRLE9BekNELENBcUNILEdBQUcsQ0FJQyxDQUFDLENBQUM7RUFDRSxLQUFLLEV0R2hDVCxJQUFJO0VzR2lDQSxXQUFXLEVBQUMsSUFBSztFQUNqQixlQUFlLEVBQUUsSUFBSztFQUN0QixPQUFPLEVBQUMsTUFBTztFQUNmLFNBQVMsRUFBQyxJQUFLO0VBQ2YsY0FBYyxFQUFFLEdBQUk7Q0FXdkI7O0FqR0FMLE1BQU0sRUFiTCxTQUFTLEVBQUUsS0FBSyxPQWFoQixTQUFTLEVBQUUsTUFBTTtFaUcxRHRCLEFBeUNRLE9BekNELENBcUNILEdBQUcsQ0FJQyxDQUFDLENBQUM7SUFRSSxTQUFTLEVBQUUsSUFBSztHQVNyQjs7O0FBUEcsTUFBTSxFQUFMLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLE1BQU07RUFuRHJELEFBeUNRLE9BekNELENBcUNILEdBQUcsQ0FJQyxDQUFDLENBQUM7SUFXTSxPQUFPLEVBQUUsTUFBTztJQUNoQixTQUFTLEVBQUMsSUFBSztHQUt0Qjs7O0FBMURULEFBeUNRLE9BekNELENBcUNILEdBQUcsQ0FJQyxDQUFDLEFBY0ksTUFBTSxDQUFDO0VBQ0osS0FBSyxFdEdFSCxPQUFPO0NzR0RaOztBQXpEYixBQTRESSxPQTVERyxDQTRESCxFQUFFLENBQUM7RUFDQyxNQUFNLEVBQUMsQ0FBRTtFQUNULE9BQU8sRUFBQyxrQkFBbUI7RUFDM0IsVUFBVSxFQUFFLElBQUs7Q0FTcEI7O0FBeEVMLEFBZ0VRLE9BaEVELENBNERILEVBQUUsQ0FJRSxFQUFFLENBQUM7RUFDQyxPQUFPLEVBQUMsWUFBYTtDQU14Qjs7QUF2RVQsQUFtRWdCLE9BbkVULENBNERILEVBQUUsQ0FJRSxFQUFFLEFBRUcsa0JBQWtCLENBQ2YsQ0FBQyxDQUFDO0VBQ0UsS0FBSyxFdEdWUCxPQUFPO0NzR1dSOztBQUtqQixBQUVRLEtBRkgsQ0FDRCxPQUFPLENBQ0gsUUFBUSxBQUNILE1BQU0sQ0FBQztFQUNKLE9BQU8sRUFBQyxFQUFHO0NBQ2Q7O0FDN0ViLEFBQUEsSUFBSSxDQUFDO0VBQ0QsVUFBVSxFQUFFLE1BQU87Q0FDdEI7O0FBRUQsQUFBQSxJQUFJLENBQUM7RUFDRCxVQUFVLEVBQUUsSUFBSztDQUNwQjs7QUFFRCxBQUFBLE9BQU8sQ0FBQztFQUNKLE9BQU8sRUFBRSxZQUFhO0NBQ3pCOztBQVdELEFBRUksUUFGSSxDQUVKLGtCQUFrQixDQUFDO0VBQ2YsUUFBUSxFQUFFLFFBQVM7Q0FVdEI7O0FBYkwsQUFNUSxRQU5BLENBRUosa0JBQWtCLENBSWQsTUFBTSxDQUFDO0VBQ0gsUUFBUSxFQUFFLFFBQVM7RUFDbkIsR0FBRyxFQUFFLENBQUU7RUFDUCxJQUFJLEVBQUUsQ0FBRTtFQUNSLEtBQUssRUFBRSxJQUFLO0VBQ1osTUFBTSxFQUFFLElBQUs7Q0FDaEI7O0FBWlQsQUFnQkksUUFoQkksQ0FnQkosRUFBRSxFQWhCTixBQWdCUSxRQWhCQSxDQWdCQSxFQUFFLENBQUM7RUFDSCxXQUFXLEVBQUUsR0FBSTtDQU9wQjs7QUF4QkwsQUFtQlEsUUFuQkEsQ0FnQkosRUFBRSxDQUdFLEVBQUUsRUFuQlYsQUFtQlEsUUFuQkEsQ0FnQkEsRUFBRSxDQUdGLEVBQUUsQ0FBQztFQUNDLFFBQVEsRUFBRSxRQUFTO0VBQ25CLElBQUksRUFBRSxHQUFJO0VBQ1YsYUFBYSxFQUFFLEdBQUk7Q0FDdEI7O0FBSVQsQUFBQSxZQUFZLENBQUM7RUFDVCxNQUFNLEVBQUMsTUFBTztDQUNqQjs7QUFFRCxBQUFBLFVBQVUsQ0FBQztFQUNQLEtBQUssRUFBQyxJQUFLO0VBQ1gsTUFBTSxFQUFFLENBQUMsQ3BHc0JGLElBQUksQ0FBSixJQUFJLENvR3RCZSxDQUFDO0NBQzlCOztBQUVELEFBQUEsV0FBVyxDQUFDO0VBQ1IsS0FBSyxFQUFDLEtBQU07RUFDWixNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ3BHaUJKLElBQUksQ0FBSixJQUFJO0NvR2hCZDs7Q0M5REQsQUFBQSxBQUFRLE9BQVAsQUFBQSxFQUFTO0VBQ04sT0FBTyxFQUFFLElBQUs7Q0FDakI7O0FBRUQsQUFtRUksUUFuRUksQ0FtRUosR0FBRyxDQUFDO0VBQ0EsU0FBUyxFQUFFLElBQUs7RUFDaEIsTUFBTSxFQUFFLElBQUs7Q0FDaEI7O0FsQ3ZERyxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RW1DZHJCLEFBQUEsVUFBVSxDQUFDO0lBQ1AsUUFBUSxFQUFFLEtBQU07SUFDaEIsR0FBRyxFQUFFLENBQUU7SUFDUCxLQUFLLEVBQUUsQ0FBRTtJQUNULElBQUksRUFBRSxDQUFFO0lBQ1IsZ0JBQWdCLEV6RytDUixPQUFPO0l5RzlDZixNQUFNLEVBQUUsSUFBSztJQUNiLE9BQU8sRUFBRSxJQUFLO0dBQ2pCO0VBQ0QsQUFBQSxnQkFBZ0IsQ0FBQztJQUNiLFFBQVEsRUFBRSxRQUFTO0lBQ25CLEdBQUcsRUFBRSxDQUFFO0lBQ1AsSUFBSSxFQUFFLENBQUU7SUFDUixPQUFPLEVBQUUsSUFBSztJQUNkLFNBQVMsRUFBRSxpQkFBVTtHQUt4QjtFQVZELEFBT0ksZ0JBUFksQ0FPWixNQUFNLENBQUM7SUFDSCxPQUFPLEVBQUUsSUFBSztHQUNqQjtFQUlMLEFBQUEsWUFBWSxDQUFDO0lBQ1QsUUFBUSxFQUFFLEtBQU07SUFDaEIsS0FBSyxFQUFFLENBQUU7SUFDVCxHQUFHLEVBQUUsQ0FBRTtJQUNQLE1BQU0sRUFBQyxDQUFFO0lBQ1QsU0FBUyxFQUFFLGdCQUFVO0lBQ3JCLE9BQU8sRUFBRSxDQUFFO0lBQ1gsS0FBSyxFQUFFLENBQUU7SUFDVCxVQUFVLEVBQUUsS0FBTTtJQUNsQixVQUFVLEVBQUUsS0FBSyxDQW5DUyxLQUFLLENBQ1AsSUFBSTtJQW1DNUIsZ0JBQWdCLEV6R3FCTixPQUFPO0l5R3BCakIsVUFBVSxFQUFFLEtBQUssQ0FBQyxHQUFHLENBQUUsSUFBRyxDQUFDLElBQUksQ0FBQyxtQkFBSTtJQUNwQyxPQUFPLEVBQUUsMkJBQTRCO0lBQ3JDLFVBQVUsRUFBRSxNQUFPO0dBc0N0QjtFQW5ERCxBQWNNLFlBZE0sR0FjTixpQkFBaUIsQ0FBQztJQUNoQixVQUFVLEVBQUUsS0FBTTtJQUNsQixLQUFLLEVBM0NHLEtBQUs7SUE0Q2IsUUFBUSxFQUFFLEtBQU07SUFDaEIsUUFBUSxFQUFFLElBQUs7SUFDZixPQUFPLEVBQUUsSUFBSztHQUNqQjtFQXBCTCxBQXFCSSxZQXJCUSxDQXFCUixFQUFFLENBQUM7SUFDQyxVQUFVLEVBQUMsSUFBSztJQUNoQixPQUFPLEVBQUMsQ0FBRTtJQUNWLE1BQU0sRUFBQyxDQUFFO0dBZ0JaO0VBeENMLEFBeUJRLFlBekJJLENBcUJSLEVBQUUsQ0FJRSxFQUFFLENBQUM7SUFDQyxhQUFhLEVBQUMsR0FBRyxDQUFDLEtBQUssQ3pHM0MvQixJQUFJO0l5RzRDSSxPQUFPLEVBQUUsTUFBTztHQVluQjtFQXZDVCxBQXlCUSxZQXpCSSxDQXFCUixFQUFFLENBSUUsRUFBRSxBQUdHLGFBQWEsQ0FBQztJQUNYLGFBQWEsRUFBQyxDQUFFO0dBQ25CO0VBOUJiLEFBZ0NnQixZQWhDSixDQXFCUixFQUFFLENBSUUsRUFBRSxBQU1HLGtCQUFrQixDQUNmLENBQUMsQ0FBQztJQUNFLEtBQUssRXpHMUNwQixJQUFJO0d5RzhDUTtFQXJDakIsQUFnQ2dCLFlBaENKLENBcUJSLEVBQUUsQ0FJRSxFQUFFLEFBTUcsa0JBQWtCLENBQ2YsQ0FBQyxBQUVJLE1BQU0sQ0FBQztJQUNKLEtBQUssRXpHOUN4QixJQUFJO0d5RytDWTtFQXBDckIsQUF5Q0ksWUF6Q1EsQ0F5Q1IsQ0FBQyxDQUFDO0lBQ0UsS0FBSyxFQUFFLElBQUs7SUFDWixTQUFTLEVBQUUsSUFBSztJQUNoQixXQUFXLEVBQUUsSUFBSztJQUNsQixXQUFXLEVBQUUsVUFBVztJQUN4QixlQUFlLEVBQUUsSUFBSztHQUl6QjtFQWxETCxBQXlDSSxZQXpDUSxDQXlDUixDQUFDLEFBTUksTUFBTSxDQUFDO0lBQ0osS0FBSyxFekczRFosSUFBSTtHeUc0REE7RUFJVCxBQUFBLElBQUksQ0FBQztJQUNELFNBQVMsRUFBRSxJQUFLO0lBQ2hCLFVBQVUsRUFBRSxTQUFTLENBakZLLEtBQUssQ0FDUCxJQUFJO0dBaUYvQjtFQUVELEFBQUksSUFBQSxBQUFBLGlCQUFpQixDQUFDO0lBQ2xCLFNBQVMsRUFBRSxrQkFBVTtHQUt4QjtFQU5ELEFBR0ksSUFIQSxBQUFBLGlCQUFpQixDQUdqQixZQUFZLENBQUM7SUFDVCxLQUFLLEVBekZHLEtBQUs7R0EwRmhCOzs7QUMxRlQsQUFBQSxnQkFBZ0IsQ0FBQztFQUNiLFFBQVEsRUFBRSxRQUFTO0VBQ25CLEtBQUssRUFBRSxJQUFLO0VBQ1osTUFBTSxFQUFFLEtBQU07Q0F3QmpCOztBQTNCRCxBQUtJLGdCQUxZLENBS1osVUFBVSxDQUFDO0VBQ1AsUUFBUSxFQUFFLFFBQVM7RUFDbkIsR0FBRyxFQUFFLENBQUU7RUFDUCxJQUFJLEVBQUUsQ0FBRTtFQUNSLE1BQU0sRUFBRSxJQUFLO0VBQ2IsS0FBSyxFQUFFLElBQUs7Q0FDZjs7QUFYTCxBQWFJLGdCQWJZLENBYVosZ0JBQWdCLENBQUM7RUFDYixTQUFTLEVBQUUsZ0JBQVU7RUFDckIsR0FBRyxFQUFFLEdBQUk7RUFDVCxRQUFRLEVBQUUsUUFBUztFQUNuQixLQUFLLEVBQUUsSUFBSztFQUNaLEtBQUssRTFHdUNHLE9BQU87RTBHdENmLFVBQVUsRUFBRSxNQUFPO0NBQ3RCOztBQXBCTCxBQXNCcUIsZ0JBdEJMLENBc0JaLGdCQUFnQixDQUFDLEtBQUssQ0FBQztFQUNuQixTQUFTLEVBQUUsSUFBSztFQUNoQixPQUFPLEVBQUUsQ0FBRTtFQUNYLE9BQU8sRUFBQyxZQUFhO0NBQ3hCOztBQUdMLFVBQVUsQ0FBVixHQUFVO0VBQ04sQUFBQSxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUU7SUFDWCxTQUFTLEVBQUUsa0JBQVU7O0VBRXpCLEFBQUEsR0FBRztJQUNDLE9BQU8sRUFBRSxDQUFFO0lBQ1gsU0FBUyxFQUFFLGVBQVU7O0VBRXpCLEFBQUEsR0FBRztJQUNDLE9BQU8sRUFBRSxDQUFFO0lBQ1gsU0FBUyxFQUFFLGVBQVU7O0VBRXpCLEFBQUEsSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFFO0lBQ1gsU0FBUyxFQUFFLGlCQUFVOzs7O0FBSTdCLEFBQWtDLGdCQUFsQixDQUFDLEtBQUssQUFBQSxVQUFXLENBQUEsQUFBQSxDQUFDLEVBQUU7RUFDbEMsaUJBQWlCLEVBQUUsMkJBQTRCO0VBQy9DLFNBQVMsRUFBRSwyQkFBNEI7Q0FDeEM7O0FBRUQsQUFBa0MsZ0JBQWxCLENBQUMsS0FBSyxBQUFBLFVBQVcsQ0FBQSxBQUFBLENBQUMsRUFBRTtFQUNsQyxpQkFBaUIsRUFBRSxpQ0FBa0M7RUFDckQsU0FBUyxFQUFFLGlDQUFrQztDQUM5Qzs7QUFFRCxBQUFrQyxnQkFBbEIsQ0FBQyxLQUFLLEFBQUEsVUFBVyxDQUFBLEFBQUEsQ0FBQyxFQUFFO0VBQ2xDLGlCQUFpQixFQUFFLGlDQUFrQztFQUNyRCxTQUFTLEVBQUUsaUNBQWtDO0NBQzlDOztBQUVELEFBQWtDLGdCQUFsQixDQUFDLEtBQUssQUFBQSxVQUFXLENBQUEsQUFBQSxDQUFDLEVBQUU7RUFDbEMsaUJBQWlCLEVBQUUsaUNBQWtDO0VBQ3JELFNBQVMsRUFBRSxpQ0FBa0M7Q0FDOUM7O0FBRUQsQUFBa0MsZ0JBQWxCLENBQUMsS0FBSyxBQUFBLFVBQVcsQ0FBQSxBQUFBLENBQUMsRUFBRTtFQUNsQyxpQkFBaUIsRUFBRSxpQ0FBa0M7RUFDckQsU0FBUyxFQUFFLGlDQUFrQztDQUM5Qzs7QUFFRCxBQUFrQyxnQkFBbEIsQ0FBQyxLQUFLLEFBQUEsVUFBVyxDQUFBLEFBQUEsQ0FBQyxFQUFFO0VBQ2xDLGlCQUFpQixFQUFFLGlDQUFrQztFQUNyRCxTQUFTLEVBQUUsaUNBQWtDO0NBQzlDOztDQzVFRCxBQUFBLEFBQXVDLG1CQUF0QyxDQUFvQixrQkFBa0IsQUFBdEMsRUFBd0M7RUFDckMsV0FBVyxFQUFDLEtBQU07RUFDbEIsZ0JBQWdCLEVBQUMsbUNBQUc7RUFDcEIsaUJBQWlCLEVBQUUsU0FBVTtFQUM3QixtQkFBbUIsRUFBRSxVQUFXO0VBQ2hDLGVBQWUsRUFBQyxLQUFNO0VBQ3RCLFFBQVEsRUFBRSxNQUFPO0VBQ2pCLE9BQU8sRUFBQyxDQUFFO0VBQ1YsUUFBUSxFQUFFLFFBQVM7RUFDbkIsS0FBSyxFM0dDRCxJQUFJO0MyR3VEWDs7Q0FqRUQsQUFBQSxBQVVJLG1CQVZILENBQW9CLGtCQUFrQixBQUF0QyxFQVVHLEVBQUUsQ0FBQztFQUNDLGdCQUFnQixFM0crQ04sT0FBTztFMkc5Q2pCLE9BQU8sRUFBQyxZQUFhO0VBRXJCLFdBQVcsRUFBRSxJQUFLO0VBQ2xCLGNBQWMsRUFBRSxJQUFLO0VBQ3JCLFNBQVMsRUFBRSxJQUFLO0VBQ2hCLEtBQUssRTNHUEwsSUFBSTtFMkdRSixRQUFRLEVBQUUsUUFBUztFQUNuQixVQUFVLEVBQUUsTUFBTztFQUNuQixPQUFPLEVBQUUsQ0FBRTtFQUdYLGNBQWMsRUFBRSxTQUFVO0VBQzFCLFdBQVcsRUFBRSxVQUFXO0VBQ3hCLGFBQWEsRUFBQyxDQUFFO0VBa0JoQjs7V0FFRztDQUNOOztBdEdZRCxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7R3NHMURyQixBQUFBLEFBVUksbUJBVkgsQ0FBb0Isa0JBQWtCLEFBQXRDLEVBVUcsRUFBRSxDQUFDO0lBa0JLLEdBQUcsRUFBRSxJQUFLO0lBQ1YsSUFBSSxFQUFDLENBQUU7SUFDUCxLQUFLLEVBQUMsQ0FBRTtHQWdCZjs7O0F0R0RELE1BQU0sRUFBTCxTQUFTLEVBQUUsS0FBSztHc0c3Q3JCLEFBQUEsQUFVSSxtQkFWSCxDQUFvQixrQkFBa0IsQUFBdEMsRUFVRyxFQUFFLENBQUM7SUF1QkssTUFBTSxFQUFDLENBQUU7SUFDVCx1QkFBdUIsRUFBRSxJQUFLO0lBQzlCLHNCQUFzQixFQUFFLElBQUs7SUFDN0IsT0FBTyxFQUFFLGFBQWM7SXJDd0MvQixRQUFRLEVBQUUsUUFBUztJQUNuQixJQUFJLEVBQUUsR0FBSTtJQUNWLFNBQVMsRUFBRSxnQkFBVTtHcUNoQ3BCOzs7QXRHREQsTUFBTSxFQUFMLFNBQVMsRUFBRSxLQUFLO0dzRzdDckIsQUFBQSxBQVVJLG1CQVZILENBQW9CLGtCQUFrQixBQUF0QyxFQVVHLEVBQUUsQ0FBQztJQThCSyxTQUFTLEVBQUUsSUFBSztHQU12Qjs7O0NBOUNMLEFBQUEsQUErQ0ksbUJBL0NILENBQW9CLGtCQUFrQixBQUF0QyxFQStDRyxLQUFLLENBQUM7RUFDRixXQUFXLEVBQUMsSUFBSztDQVVwQjs7QXRHYkQsTUFBTSxFQUFMLFNBQVMsRUFBRSxLQUFLO0dzRzdDckIsQUFBQSxBQStDSSxtQkEvQ0gsQ0FBb0Isa0JBQWtCLEFBQXRDLEVBK0NHLEtBQUssQ0FBQztJQUdFLGNBQWMsRUFBQyxJQUFLO0dBUTNCOzs7Q0ExREwsQUFBQSxBQW9EUSxtQkFwRFAsQ0FBb0Isa0JBQWtCLEFBQXRDLEVBK0NHLEtBQUssQ0FLRCxDQUFDLENBQUM7RUFDRSxLQUFLLEUzRzNDVCxJQUFJO0MyRytDSDs7Q0F6RFQsQUFBQSxBQW9EUSxtQkFwRFAsQ0FBb0Isa0JBQWtCLEFBQXRDLEVBK0NHLEtBQUssQ0FLRCxDQUFDLEFBRUksTUFBTSxDQUFDO0VBQ0osS0FBSyxFM0dHSCxPQUFPO0MyR0ZaOztDQXhEYixBQUFBLEFBMkRJLG1CQTNESCxDQUFvQixrQkFBa0IsQUFBdEMsRUEyREcsTUFBTSxDQUFDO0VBQ0gsaUJBQWlCLEVBQUUsU0FBVTtFQUM3QixtQkFBbUIsRUFBRSxhQUFjO0VBQ25DLFVBQVUsRUFBQyxLQUFNO0VBQ2pCLGVBQWUsRUFBRSxPQUFRO0NBQzVCOztDQ2hFTCxBQUFBLEFBQXdDLG1CQUF2QyxDQUFvQixtQkFBbUIsQUFBdkMsRUFBeUM7RUFDdEMsZ0JBQWdCLEU1R1NaLElBQUk7RTRHUlIsZ0JBQWdCLEU1R3VESixPQUFPO0U0R3REbkIsS0FBSyxFNUdPRCxJQUFJO0U0R05SLFVBQVUsRUFBQyxNQUFPO0VBQ2xCLGNBQWMsRUFBQyxTQUFVO0VBZ0N6QixjQUFjO0VBS2QsZUFBZTtFQU1mLGlCQUFpQjtFQVNqQixnQkFBZ0I7RUFTaEIsZ0JBQWdCO0VBTWhCLGdCQUFnQjtDQXdCbkI7O0NBaEdELEFBQUEsQUFNSSxtQkFOSCxDQUFvQixtQkFBbUIsQUFBdkMsRUFNRyxDQUFDLENBQUM7RUFDRSxTQUFTLEVBQUUsSUFBSztDQUNuQjs7Q0FSTCxBQUFBLEFBU0ksbUJBVEgsQ0FBb0IsbUJBQW1CLEFBQXZDLEVBU0csRUFBRSxDQUFDO0VBQ0MsTUFBTSxFQUFDLENBQUU7RUFDVCxPQUFPLEVBQUMsQ0FBRTtDQUNiOztDQVpMLEFBQUEsQUFhSSxtQkFiSCxDQUFvQixtQkFBbUIsQUFBdkMsRUFhRyxFQUFFLENBQUM7RUFDRCxLQUFLLEVBQUUsSUFBSztFQUNaLFVBQVUsRUFBRSxNQUFPO0VBQ25CLEtBQUssRUFBRSxJQUFLO0VBQ1osV0FBVyxFQUFFLElBQUs7RUFDbEIsZ0JBQWdCLEU1R3VDTixPQUFPO0U0R3RDakIsVUFBVSxFQUFFLElBQUs7Q0FFbEI7O0NBckJMLEFBQUEsQUFzQkksbUJBdEJILENBQW9CLG1CQUFtQixBQUF2QyxFQXNCRyxDQUFDLENBQUM7RUFDRSxPQUFPLEVBQUUsS0FBTTtFQUNmLE9BQU8sRUFBQyxPQUFRO0VBQ2hCLEtBQUssRTVHZkwsSUFBSTtFNEdnQkosZUFBZSxFQUFFLElBQUs7Q0FJekI7O0NBOUJMLEFBQUEsQUFzQkksbUJBdEJILENBQW9CLG1CQUFtQixBQUF2QyxFQXNCRyxDQUFDLEFBS0ksTUFBTSxDQUFDO0VBQ0osS0FBSyxFQUFDLE9BQU07Q0FDZjs7Q0E3QlQsQUFBQSxBQWdDSSxtQkFoQ0gsQ0FBb0IsbUJBQW1CLEFBQXZDLEVBZ0NHLENBQUMsQ0FBQztFQUNFLFVBQVUsRUFBQyxJQUFLO0VBQ2hCLGFBQWEsRUFBQyxDQUFFO0NBQ25COztDQW5DTCxBQUFBLEFBc0NtQyxtQkF0Q2xDLENBQW9CLG1CQUFtQixBQUF2QyxFQXNDRyxFQUFFLEFBQUEsWUFBWSxBQUFBLGVBQWdCLENBQUEsQUFBQSxDQUFDLEVBQUU7RUFDL0IsS0FBSyxFQUFFLElBQUs7Q0FDYjs7Q0F4Q0wsQUFBQSxBQTJDbUMsbUJBM0NsQyxDQUFvQixtQkFBbUIsQUFBdkMsRUEyQ0csRUFBRSxBQUFBLFlBQVksQUFBQSxlQUFnQixDQUFBLEFBQUEsQ0FBQztDQTNDbkMsQUFBQSxBQTRDdUMsbUJBNUN0QyxDQUFvQixtQkFBbUIsQUFBdkMsRUE0Q0csRUFBRSxBQUFBLFlBQVksQUFBQSxlQUFnQixDQUFBLEFBQUEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztFQUNwQyxLQUFLLEVBQUUsR0FBSTtDQUNaOztDQTlDTCxBQUFBLEFBaURtQyxtQkFqRGxDLENBQW9CLG1CQUFtQixBQUF2QyxFQWlERyxFQUFFLEFBQUEsWUFBWSxBQUFBLGVBQWdCLENBQUEsQUFBQSxDQUFDO0NBakRuQyxBQUFBLEFBa0R1QyxtQkFsRHRDLENBQW9CLG1CQUFtQixBQUF2QyxFQWtERyxFQUFFLEFBQUEsWUFBWSxBQUFBLGVBQWdCLENBQUEsQUFBQSxDQUFDLElBQUksRUFBRSxDQUFDO0VBQ2xDLEtBQUssRUFBQyxJQUFLO0NBSWQ7O0F2R1ZELE1BQU0sRUFBTCxTQUFTLEVBQUUsS0FBSztHdUc3Q3JCLEFBQUEsQUFpRG1DLG1CQWpEbEMsQ0FBb0IsbUJBQW1CLEFBQXZDLEVBaURHLEVBQUUsQUFBQSxZQUFZLEFBQUEsZUFBZ0IsQ0FBQSxBQUFBLENBQUM7R0FqRG5DLEFBQUEsQUFrRHVDLG1CQWxEdEMsQ0FBb0IsbUJBQW1CLEFBQXZDLEVBa0RHLEVBQUUsQUFBQSxZQUFZLEFBQUEsZUFBZ0IsQ0FBQSxBQUFBLENBQUMsSUFBSSxFQUFFLENBQUM7SUFHakMsS0FBSyxFQUFFLFFBQVM7R0FFcEI7OztDQXZETCxBQUFBLEFBMERtQyxtQkExRGxDLENBQW9CLG1CQUFtQixBQUF2QyxFQTBERyxFQUFFLEFBQUEsWUFBWSxBQUFBLGVBQWdCLENBQUEsQUFBQSxDQUFDO0NBMURuQyxBQUFBLEFBMkR1QyxtQkEzRHRDLENBQW9CLG1CQUFtQixBQUF2QyxFQTJERyxFQUFFLEFBQUEsWUFBWSxBQUFBLGVBQWdCLENBQUEsQUFBQSxDQUFDLElBQUksRUFBRSxDQUFDO0VBQ2xDLEtBQUssRUFBQyxHQUFJO0NBSWI7O0F2R25CRCxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7R3VHN0NyQixBQUFBLEFBMERtQyxtQkExRGxDLENBQW9CLG1CQUFtQixBQUF2QyxFQTBERyxFQUFFLEFBQUEsWUFBWSxBQUFBLGVBQWdCLENBQUEsQUFBQSxDQUFDO0dBMURuQyxBQUFBLEFBMkR1QyxtQkEzRHRDLENBQW9CLG1CQUFtQixBQUF2QyxFQTJERyxFQUFFLEFBQUEsWUFBWSxBQUFBLGVBQWdCLENBQUEsQUFBQSxDQUFDLElBQUksRUFBRSxDQUFDO0lBRzlCLEtBQUssRUFBRSxHQUFJO0dBRWxCOzs7Q0FoRUwsQUFBQSxBQW1FbUMsbUJBbkVsQyxDQUFvQixtQkFBbUIsQUFBdkMsRUFtRUcsRUFBRSxBQUFBLFlBQVksQUFBQSxlQUFnQixDQUFBLEFBQUEsQ0FBQztDQW5FbkMsQUFBQSxBQW9FdUMsbUJBcEV0QyxDQUFvQixtQkFBbUIsQUFBdkMsRUFvRUcsRUFBRSxBQUFBLFlBQVksQUFBQSxlQUFnQixDQUFBLEFBQUEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztFQUNwQyxLQUFLLEVBQUUsR0FBSTtDQUNaOztDQXRFTCxBQUFBLEFBeUVtQyxtQkF6RWxDLENBQW9CLG1CQUFtQixBQUF2QyxFQXlFRyxFQUFFLEFBQUEsWUFBWSxBQUFBLGVBQWdCLENBQUEsQUFBQSxDQUFDO0NBekVuQyxBQUFBLEFBMEV1QyxtQkExRXRDLENBQW9CLG1CQUFtQixBQUF2QyxFQTBFRyxFQUFFLEFBQUEsWUFBWSxBQUFBLGVBQWdCLENBQUEsQUFBQSxDQUFDLElBQUksRUFBRSxDQUFDO0VBQ3BDLEtBQUssRUFBRSxhQUFjO0NBQ3RCOztDQTVFTCxBQUFBLEFBOEVrQixtQkE5RWpCLENBQW9CLG1CQUFtQixBQUF2QyxFQThFRyxFQUFFLEFBQUEsVUFBVyxDQUFBLEFBQUEsQ0FBQyxFQUFFO0VBQ1osZ0JBQWdCLEVBQUMsT0FBTztDQUMzQjs7Q0FoRkwsQUFBQSxBQWlGa0IsbUJBakZqQixDQUFvQixtQkFBbUIsQUFBdkMsRUFpRkcsRUFBRSxBQUFBLFVBQVcsQ0FBQSxBQUFBLENBQUMsRUFBRTtFQUNaLGdCQUFnQixFQUFDLE9BQU87Q0FDM0I7O0NBbkZMLEFBQUEsQUFvRmtCLG1CQXBGakIsQ0FBb0IsbUJBQW1CLEFBQXZDLEVBb0ZHLEVBQUUsQUFBQSxVQUFXLENBQUEsQUFBQSxDQUFDLEVBQUU7RUFDWixnQkFBZ0IsRUFBQyxPQUFPO0NBQzNCOztDQXRGTCxBQUFBLEFBdUZrQixtQkF2RmpCLENBQW9CLG1CQUFtQixBQUF2QyxFQXVGRyxFQUFFLEFBQUEsVUFBVyxDQUFBLEFBQUEsQ0FBQyxFQUFFO0VBQ1osZ0JBQWdCLEU1Ry9CUixPQUFPO0M0R2dDbEI7O0NBekZMLEFBQUEsQUEwRmtCLG1CQTFGakIsQ0FBb0IsbUJBQW1CLEFBQXZDLEVBMEZHLEVBQUUsQUFBQSxVQUFXLENBQUEsQUFBQSxDQUFDLEVBQUU7RUFDWixnQkFBZ0IsRUFBQyxPQUFNO0NBQzFCOztDQTVGTCxBQUFBLEFBNkZrQixtQkE3RmpCLENBQW9CLG1CQUFtQixBQUF2QyxFQTZGRyxFQUFFLEFBQUEsVUFBVyxDQUFBLEFBQUEsQ0FBQyxFQUFFO0VBQ1osZ0JBQWdCLEVBQUMsT0FBTTtDQUMxQjs7Q0MvRkwsQUFBQSxBQUF3QyxtQkFBdkMsQ0FBb0IsbUJBQW1CLEFBQXZDLEVBQXlDO0VBQ3hDLGdCQUFnQixFN0d5REEsT0FBTztFNkd4RHZCLGdCQUFnQixFQUFDLG9FQUFHO0VBQ3BCLG1CQUFtQixFQUFFLFNBQVU7RUFDL0IsS0FBSyxFN0dNQyxJQUFJO0U2R0xWLFFBQVEsRUFBRSxRQUFTO0VBQ25CLE9BQU8sRUFBRSxDQUFFO0NBMEJaOztDQWhDRCxBQUFBLEFBT0ksbUJBUEgsQ0FBb0IsbUJBQW1CLEFBQXZDLEVBT0csRUFBRSxDQUFDO0VBQ0MsY0FBYyxFQUFFLFNBQVU7RUFDMUIsU0FBUyxFQUFDLElBQUs7RUFDZixXQUFXLEVBQUMsSUFBSztDQUNwQjs7Q0FYTCxBQUFBLEFBWUksbUJBWkgsQ0FBb0IsbUJBQW1CLEFBQXZDLEVBWUcsTUFBTSxDQUFDO0VBQ0gsUUFBUSxFQUFFLFFBQVM7Q0FNdEI7O0NBbkJMLEFBQUEsQUFjUSxtQkFkUCxDQUFvQixtQkFBbUIsQUFBdkMsRUFZRyxNQUFNLENBRUYsR0FBRyxDQUFDO0VBQ0EsUUFBUSxFQUFFLFFBQVM7RUFDbkIsTUFBTSxFQUFDLENBQUU7RUFDVCxLQUFLLEVBQUMsQ0FBRTtDQUNYOztDQWxCVCxBQUFBLEFBb0JJLG1CQXBCSCxDQUFvQixtQkFBbUIsQUFBdkMsRUFvQkcsUUFBUSxDQUFDO0VBQ0wsV0FBVyxFQUFDLElBQUs7RUFDakIsY0FBYyxFQUFDLElBQUs7Q0FDdkI7O0NBdkJMLEFBQUEsQUF5QkksbUJBekJILENBQW9CLG1CQUFtQixBQUF2QyxFQXlCRyxDQUFDLENBQUM7RUFDRSxLQUFLLEU3R2hCTCxJQUFJO0U2R2lCSixlQUFlLEVBQUMsU0FBVTtDQUk3Qjs7Q0EvQkwsQUFBQSxBQXlCSSxtQkF6QkgsQ0FBb0IsbUJBQW1CLEFBQXZDLEVBeUJHLENBQUMsQUFHSSxNQUFNLENBQUM7RUFDSixLQUFLLEU3R2dDRCxPQUFPO0M2Ry9CZDs7QUFJVCxBQUFBLGtCQUFrQixDQUFDO0VBQ2YsVUFBVSxFQUFDLElBQUs7Q0FDbkI7O0FBR0QsQUFBQSxrQkFBa0IsQ0FBQztFQUNmLGdCQUFnQixFQUFFLDJEQUFHLENBQXdELFVBQVU7RUFDdkYsaUJBQWlCLEVBQUUsU0FBVTtFQUM3QixtQkFBbUIsRUFBRSxVQUFXO0VBQ2hDLFVBQVUsRUFBQyxNQUFPO0VBQ2xCLFFBQVEsRUFBRSxRQUFTO0NBV3RCOztBeEdWRyxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RXdHTnJCLEFBQUEsa0JBQWtCLENBQUM7SUFPWCxlQUFlLEVBQUUsS0FBTTtHQVM5Qjs7O0FBaEJELEFBU0ksa0JBVGMsQ0FTZCxRQUFRLENBQUM7RUFDTCxXQUFXLEVBQUUsS0FBTTtFQUNuQixjQUFjLEVBQUUsSUFBSztDQUN4Qjs7QUFaTCxBQWFJLGtCQWJjLENBYWQsRUFBRSxDQUFDO0V2Q3JCSCxnQkFBZ0IsRXRFMkJGLE9BQU87RXNFMUJyQixPQUFPLEVBQUMsWUFBYTtFQUNyQixLQUFLLEVBQUMsS0FBTTtFQUNaLFdBQVcsRUFBRSxJQUFLO0VBQ2xCLGNBQWMsRUFBRSxJQUFLO0VBQ3JCLFNBQVMsRUFBRSxJQUFLO0VBQ2hCLEtBQUssRXRFM0JELElBQUk7RXNFNEJSLFFBQVEsRUFBRSxRQUFTO0VBQ25CLFVBQVUsRUFBRSxNQUFPO0VBQ25CLEdBQUcsRUFBQyxDQUFFO0VBQ04sa0NBQWtDLEVBQUUsSUFBSztFQUN6QyxpQ0FBaUMsRUFBRSxJQUFLO0VBQ3hDLDhCQUE4QixFQUFFLElBQUs7RUFDckMsNkJBQTZCLEVBQUUsSUFBSztFQUNwQywwQkFBMEIsRUFBRSxJQUFLO0VBQ2pDLHlCQUF5QixFQUFFLElBQUs7RUFDaEMsY0FBYyxFQUFFLFNBQVU7RUFDMUIsV0FBVyxFQUFFLFVBQVc7RUE0QnhCLFFBQVEsRUFBRSxRQUFTO0VBQ25CLElBQUksRUFBRSxHQUFJO0VBQ1YsU0FBUyxFQUFFLGdCQUFVO0N1Q3hCcEI7O0FBZkwsQUFhSSxrQkFiYyxDQWFkLEVBQUUsQXZDRkQsUUFBUSxDQUFDO0VBQ04sU0FBUyxFQUFDLElBQUs7RUFDZixXQUFXLEVBQUUsSUFBSztFQUNsQixjQUFjLEVBQUUsSUFBSztDQUN4Qjs7QXVDRUwsQUFBQSxrQkFBa0IsQ0FBQztFQUNmLGdCQUFnQixFQUFDLHdFQUFHO0NBQ3ZCOztDQzFERCxBQUFBLEFBQWdDLG1CQUEvQixDQUFvQixXQUFXLEFBQS9CLEVBQWlDO0VBQzlCLFdBQVcsRUFBQyxJQUFLO0VBQ2pCLGNBQWMsRUFBQyxJQUFLO0VBQ3BCLGdCQUFnQixFOUdPWixJQUFJO0M4RzBDWDs7Q0FwREQsQUFBQSxBQUlJLG1CQUpILENBQW9CLFdBQVcsQUFBL0IsRUFJRyxFQUFFLENBQUM7RUFDQyxVQUFVLEVBQUMsTUFBTztFQUNsQixLQUFLLEU5R2NGLElBQUk7RThHYlAsYUFBYSxFQUFDLElBQUs7RUFDbkIsV0FBVyxFQUFFLElBQUs7Q0FJckI7O0F6RzhDRCxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7R3lHMURyQixBQUFBLEFBSUksbUJBSkgsQ0FBb0IsV0FBVyxBQUEvQixFQUlHLEVBQUUsQ0FBQztJQU1LLGFBQWEsRUFBQyxDQUFFO0dBRXZCOzs7Q0FaTCxBQUFBLEFBYUksbUJBYkgsQ0FBb0IsV0FBVyxBQUEvQixFQWFHLElBQUksQ0FBQztFQUNELGFBQWEsRUFBQyxHQUFHLENBQUMsS0FBSyxDOUdBdEIsSUFBSTtFOEdDTCxhQUFhLEVBQUMsSUFBSztDQUl0Qjs7Q0FuQkwsQUFBQSxBQWFJLG1CQWJILENBQW9CLFdBQVcsQUFBL0IsRUFhRyxJQUFJLEFBR0MsYUFBYSxDQUFDO0VBQ1gsYUFBYSxFQUFDLENBQUU7Q0FDbkI7O0NBbEJULEFBQUEsQUFvQkksbUJBcEJILENBQW9CLFdBQVcsQUFBL0IsRUFvQkcsT0FBTyxDQUFDO0VBQ0osYUFBYSxFQUFDLElBQUs7Q0FDdEI7O0NBdEJMLEFBQUEsQUF1QkksbUJBdkJILENBQW9CLFdBQVcsQUFBL0IsRUF1QkcsTUFBTSxDQUFDO0VBQ0gsYUFBYSxFQUFDLEdBQUcsQ0FBQyxLQUFLLEM5R1RyQixJQUFJO0U4R1VOLGFBQWEsRUFBQyxJQUFLO0NBQ3RCOztDQTFCTCxBQUFBLEFBMkJJLG1CQTNCSCxDQUFvQixXQUFXLEFBQS9CLEVBMkJHLEVBQUUsQ0FBQztFQUNDLGNBQWMsRUFBRSxTQUFVO0VBQzFCLFNBQVMsRUFBQyxLQUFNO0VBQ2hCLE1BQU0sRUFBQyxNQUFPO0VBQ2QsY0FBYyxFQUFFLEdBQUk7Q0FLdkI7O0F6R3NCRCxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7R3lHMURyQixBQUFBLEFBMkJJLG1CQTNCSCxDQUFvQixXQUFXLEFBQS9CLEVBMkJHLEVBQUUsQ0FBQztJQU1LLFVBQVUsRUFBQyxNQUFPO0lBQ2xCLE1BQU0sRUFBQyxLQUFNO0dBRXBCOzs7Q0FwQ0wsQUFBQSxBQXFDSSxtQkFyQ0gsQ0FBb0IsV0FBVyxBQUEvQixFQXFDRyxLQUFLLENBQUM7RUFDRixVQUFVLEVBQUMsTUFBTztFQUNsQixXQUFXLEVBQUMsSUFBSztFQUNqQixXQUFXLEVBQUMsSUFBSztFQUNqQixTQUFTLEVBQUMsSUFBSztDQUNsQjs7QXpHR0QsTUFBTSxFQUFMLFNBQVMsRUFBRSxLQUFLO0d5RzdDckIsQUFBQSxBQTJDSSxtQkEzQ0gsQ0FBb0IsV0FBVyxBQUEvQixFQTJDRyxNQUFNLENBQUM7SUFFQyxXQUFXLEVBQUMsR0FBRyxDQUFDLEtBQUssQzlHOUJ2QixJQUFJO0c4R2dDVDs7O0NBL0NMLEFBQUEsQUFnREksbUJBaERILENBQW9CLFdBQVcsQUFBL0IsRUFnREcsSUFBSSxDQUFDO0VBQ0QsVUFBVSxFQUFDLElBQUs7RUFDaEIsYUFBYSxFQUFFLENBQUU7Q0FDcEI7O0NDbkRMLEFBQUEsQUFBdUMsbUJBQXRDLENBQW9CLGtCQUFrQixBQUF0QyxFQUF3QztFQUNyQyxnQkFBZ0IsRS9HU1osSUFBSTtFK0dSUixXQUFXLEVBQUUsSUFBSztDQXFCckI7O0NBdkJELEFBQUEsQUFHSSxtQkFISCxDQUFvQixrQkFBa0IsQUFBdEMsRUFHRyxFQUFFLENBQUM7RUFDQyxRQUFRLEVBQUUsUUFBUztFQUNuQixXQUFXLEVBQUUsVUFBVztFQUN4QixnQkFBZ0IsRS9HbURSLE9BQU87RStHbERmLEtBQUssRS9HR0wsSUFBSTtFK0dGSixjQUFjLEVBQUUsU0FBVTtFQUMxQixTQUFTLEVBQUUsSUFBSztFQUNoQixVQUFVLEVBQUUsTUFBTztFQUNuQixPQUFPLEVBQUUsV0FBWTtFQUNyQixjQUFjLEVBQUUsR0FBSTtFQUNwQixXQUFXLEVBQUUsSUFBSztFQUNsQixhQUFhLEVBQUUsSUFBSztDQUt2Qjs7Q0FuQkwsQUFBQSxBQWVRLG1CQWZQLENBQW9CLGtCQUFrQixBQUF0QyxFQUdHLEVBQUUsQ0FZRSxDQUFDLENBQUM7RUFDRSxLQUFLLEUvR05ULElBQUk7RStHT0EsZUFBZSxFQUFFLFNBQVU7Q0FDOUI7O0NBbEJULEFBQUEsQUFvQkksbUJBcEJILENBQW9CLGtCQUFrQixBQUF0QyxFQW9CRyxDQUFDLENBQUM7RUFDRSxlQUFlLEVBQUUsU0FBVTtDQUM5Qjs7QUFHTCxBQUFBLGtCQUFrQixDQUFDO0VBQ2YsZ0JBQWdCLEUvRytCSixPQUFPO0UrRzlCbkIsS0FBSyxFL0dqQkQsSUFBSTtDK0dtRVg7O0FBcERELEFBSUksa0JBSmMsQ0FJZCxFQUFFLENBQUM7RUFDQyxnQkFBZ0IsRS9HNEJOLE9BQU87RStHM0JqQixRQUFRLEVBQUUsUUFBUztFQUNuQixPQUFPLEVBQUUsQ0FBRTtDQWtCZDs7QUF6QkwsQUFJSSxrQkFKYyxDQUlkLEVBQUUsQUFJRyxPQUFPLENBQUM7RUFDTCxHQUFHLEVBQUUsS0FBTTtFekMwQ25CLFFBQVEsRUFBRSxRQUFTO0VBQ25CLElBQUksRUFBRSxHQUFJO0VBQ1YsU0FBUyxFQUFFLGdCQUFVO0V5QzFDYixLQUFLLEVBQUUsSUFBSztFQUNaLE1BQU0sRUFBRSxJQUFLO0VBQ2IsT0FBTyxFQUFFLENBQUU7Q0FDZDs7QUFkVCxBQUlJLGtCQUpjLENBSWQsRUFBRSxBQVdHLE1BQU0sQ0FBQztFQUNKLEdBQUcsRUFBRSxLQUFNO0VBQ1gsT0FBTyxFQUFFLEVBQUc7RXpDa0NwQixRQUFRLEVBQUUsUUFBUztFQUNuQixJQUFJLEVBQUUsR0FBSTtFQUNWLFNBQVMsRUFBRSxnQkFBVTtFeUNsQ2IsS0FBSyxFQUFFLElBQUs7RUFDWixNQUFNLEVBQUUsSUFBSztFQUNiLFVBQVUsRS9HWUosT0FBTztFK0dYYixhQUFhLEVBQUUsSUFBSztFQUNwQixPQUFPLEVBQUUsRUFDWjtDQUFDOztBQXhCVixBQTBCSSxrQkExQmMsQ0EwQmQsTUFBTTtBQTFCVixBQTJCSSxrQkEzQmMsQ0EyQmQsTUFBTTtBQTNCVixBQTRCSSxrQkE1QmMsQ0E0QmQsTUFBTSxDQUFDO0VBQ0gsY0FBYyxFQUFFLElBQUs7Q0FDeEI7O0FBOUJMLEFBZ0NRLGtCQWhDVSxDQStCZCxNQUFNLENBQ0YsRUFBRSxBQUNHLE9BQU8sQ0FBQztFQUNMLE9BQU8sRUFBRSxxREFBRztDQUNmOztBQW5DYixBQXVDUSxrQkF2Q1UsQ0FzQ2QsTUFBTSxDQUNGLEVBQUUsQUFDRyxPQUFPLENBQUM7RUFDTCxPQUFPLEVBQUUsc0VBQUc7Q0FDZjs7QUExQ2IsQUE4Q1Esa0JBOUNVLENBNkNkLE1BQU0sQ0FDRixFQUFFLEFBQ0csT0FBTyxDQUFDO0VBQ0wsT0FBTyxFQUFFLG9FQUFHO0NBQ2Y7O0FBS2IsQUFDSSxrQkFEYyxDQUNkLEVBQUUsQ0FBQztFQUNDLE9BQU8sRUFBRSxDQUFFO0NBb0JkOztBQXRCTCxBQUNJLGtCQURjLENBQ2QsRUFBRSxBQUVHLE9BQU8sQ0FBQztFQUNMLEdBQUcsRUFBRSxLQUFNO0V6Q1BuQixRQUFRLEVBQUUsUUFBUztFQUNuQixJQUFJLEVBQUUsR0FBSTtFQUNWLFNBQVMsRUFBRSxnQkFBVTtFeUNPYixLQUFLLEVBQUUsSUFBSztFQUNaLE1BQU0sRUFBRSxJQUFLO0VBQ2IsT0FBTyxFQUFFLENBQUU7Q0FDZDs7QUFUVCxBQUNJLGtCQURjLENBQ2QsRUFBRSxBQVNHLE1BQU0sQ0FBQztFQUNKLE9BQU8sRUFBRSxFQUFHO0VBQ1osS0FBSyxFQUFFLElBQUs7RUFDWixNQUFNLEVBQUUsSUFBSztFQUNiLEdBQUcsRUFBRSxLQUFNO0VBQ1gsVUFBVSxFL0dyQ04sT0FBTztFK0dzQ1gsa0JBQWtCLEVBQUUsSUFBSztFQUN6QixxQkFBcUIsRUFBRSxJQUFLO0VBQzVCLGFBQWEsRUFBRSxJQUFLO0VBQ3BCLE9BQU8sRUFBRSxFQUFHO0V6Q3RCcEIsUUFBUSxFQUFFLFFBQVM7RUFDbkIsSUFBSSxFQUFFLEdBQUk7RUFDVixTQUFTLEVBQUUsZ0JBQVU7Q3lDc0JoQjs7QUFyQlQsQUF3QlEsa0JBeEJVLENBdUJkLE1BQU0sQ0FDRixFQUFFLEFBQ0csT0FBTyxDQUFDO0VBQ0wsT0FBTyxFQUFFLHNFQUFHO0NBQ2Y7O0FBM0JiLEFBK0JRLGtCQS9CVSxDQThCZCxNQUFNLENBQ0YsRUFBRSxBQUNHLE9BQU8sQ0FBQztFQUNMLE9BQU8sRUFBRSx1RUFBRztDQUNmOztBQWxDYixBQXNDUSxrQkF0Q1UsQ0FxQ2QsTUFBTSxDQUNGLEVBQUUsQUFDRyxPQUFPLENBQUM7RUFDTCxPQUFPLEVBQUUsa0VBQUc7Q0FDZjs7QUF6Q2IsQUE2Q1Esa0JBN0NVLENBNENkLE1BQU0sQ0FDRixFQUFFLEFBQ0csT0FBTyxDQUFDO0VBQ0wsT0FBTyxFQUFFLG1FQUFHO0NBQ2Y7O0FBaERiLEFBbURJLGtCQW5EYyxDQW1EZCxLQUFLLENBQUM7RUFDRixhQUFhLEVBQUUsSUFBSztDQUN2Qjs7QUFHTCxBQUFBLGtCQUFrQixDQUFDO0VBRWYsV0FBVyxFQUFFLENBQUU7RUFDZixjQUFjLEVBQUUsQ0FBRTtDQWtEckI7O0FBckRELEFBSUksa0JBSmMsQ0FJZCxnQkFBZ0IsQ0FBQztFQUNiLFlBQVksRUFBRSxFQUFHO0VBQ2pCLGFBQWEsRUFBRSxFQUFHO0NBQ3JCOztBQVBMLEFBUUksa0JBUmMsQ0FRZCxLQUFLLENBQUM7RUFDRixRQUFRLEVBQUUsTUFBTztFQUNqQixhQUFhLEVBQUUsSUFBSztDQThCdkI7O0FBeENMLEFBV1Esa0JBWFUsQ0FRZCxLQUFLLENBR0QsRUFBRSxDQUFDO0VBQ0MsZ0JBQWdCLEUvR3pGVixPQUFPO0UrRzBGYixVQUFVLEVBQUUsSUFBSztFQUNqQixhQUFhLEVBQUUsSUFBSztFQUNwQixTQUFTLEVBQUUsSUFBSztFQUNoQixhQUFhLEVBQUUsSUFBSztFQUNwQixZQUFZLEVBQUUsSUFBSztFQUNuQixhQUFhLEVBQUUsSUFBSztDQU12Qjs7QUF4QlQsQUFtQlksa0JBbkJNLENBUWQsS0FBSyxDQUdELEVBQUUsQ0FRRSxNQUFNLENBQUM7RUFDSCxPQUFPLEVBQUUsS0FBTTtFQUNmLFNBQVMsRUFBRSxJQUFLO0VBQ2hCLFdBQVcsRUFBRSxNQUFPO0NBQ3ZCOztBQXZCYixBQXlCUSxrQkF6QlUsQ0FRZCxLQUFLLENBaUJELEdBQUcsQ0FBQztFQUNBLGdCQUFnQixFL0d4R1osT0FBTztFK0d5R1gsS0FBSyxFL0d4SlQsSUFBSTtFK0d5SkEsU0FBUyxFQUFFLElBQUs7RUFDaEIsVUFBVSxFQUFFLE1BQU87RUFDbkIsT0FBTyxFQUFFLElBQUs7RUFDZCxzQkFBc0IsRUFBRSxJQUFLO0VBQzdCLHVCQUF1QixFQUFFLElBQUs7RUFDOUIsY0FBYyxFQUFFLFNBQVU7Q0FNN0I7O0FBdkNULEFBa0NZLGtCQWxDTSxDQVFkLEtBQUssQ0FpQkQsR0FBRyxDQVNDLE1BQU0sQ0FBQztFQUNILE9BQU8sRUFBRSxLQUFNO0VBQ2YsU0FBUyxFQUFFLElBQUs7RUFDaEIsV0FBVyxFQUFFLElBQUs7Q0FDckI7O0FBdENiLEFBeUNJLGtCQXpDYyxDQXlDZCxFQUFFLENBQUM7RUFDQyxnQkFBZ0IsRTVHbElJLE9BQU87RTRHbUkzQixPQUFPLEVBQUUsV0FBWTtFQUNyQiwwQkFBMEIsRUFBRSxJQUFLO0VBQ2pDLHlCQUF5QixFQUFFLElBQUs7RUFDaEMsTUFBTSxFQUFFLElBQUs7Q0FNaEI7O0FBcERMLEFBK0NRLGtCQS9DVSxDQXlDZCxFQUFFLENBTUUsRUFBRSxDQUFDO0VBQ0MsS0FBSyxFL0c5SEQsT0FBTztFK0crSFgsYUFBYSxFQUFFLEdBQUk7RUFDbkIsU0FBUyxFQUFFLElBQUs7Q0FDbkI7O0NDMUxULEFBQUEsQUFBa0MsbUJBQWpDLENBQW9CLGFBQWEsQUFBakMsRUFBbUM7RUFDaEMsZ0JBQWdCLEVoSHdESixPQUFPO0VnSHZEbkIsS0FBSyxFaEhRRCxJQUFJO0NnSGlCWDs7Q0EzQkQsQUFBQSxBQUdJLG1CQUhILENBQW9CLGFBQWEsQUFBakMsRUFHRyxLQUFLLENBQUM7RUFDRixXQUFXLEVBQUMsSUFBSztFQUNqQixjQUFjLEVBQUMsSUFBSztFQUNwQixVQUFVLEVBQUMsTUFBTztDQUNyQjs7Q0FQTCxBQUFBLEFBUUksbUJBUkgsQ0FBb0IsYUFBYSxBQUFqQyxFQVFHLFlBQVksQ0FBQztFQUNULGdCQUFnQixFQUFFLE9BQUc7RUFDckIsaUJBQWlCLEVBQUUsU0FBVTtFQUM3QixtQkFBbUIsRUFBRSxhQUFjO0VBQ25DLGVBQWUsRUFBRSxLQUFNO0VBQ3ZCLFVBQVUsRUFBQyxLQUFNO0NBSXBCOztDQWpCTCxBQUFBLEFBUUksbUJBUkgsQ0FBb0IsYUFBYSxBQUFqQyxFQVFHLFlBQVksQUFNUCxNQUFNLENBQUM7RUFDSixPQUFPLEVBQUUsRUFBRztDQUNmOztDQWhCVCxBQUFBLEFBa0JJLG1CQWxCSCxDQUFvQixhQUFhLEFBQWpDLEVBa0JHLENBQUMsQ0FBQztFQUNFLEtBQUssRWhIVEwsSUFBSTtDZ0hVUDs7Q0FwQkwsQUFBQSxBQXFCSSxtQkFyQkgsQ0FBb0IsYUFBYSxBQUFqQyxFQXFCRyxNQUFNLENBQUM7RUFDSCxjQUFjLEVBQUUsU0FBVTtDQUM3Qjs7Q0F2QkwsQUFBQSxBQXdCSSxtQkF4QkgsQ0FBb0IsYUFBYSxBQUFqQyxFQXdCRyxDQUFDLENBQUM7RUFDRSxhQUFhLEVBQUMsSUFBSztDQUN0Qjs7QUMxQkwsQUFBQSx3Q0FBd0MsQ0FBQztFQUNyQyxnQkFBZ0IsRUFBQyxtQ0FBRztFQUNwQixpQkFBaUIsRUFBRSxTQUFVO0VBQzdCLG1CQUFtQixFQUFFLFVBQVc7Q0FtTi9COztBQXROTCxBQUlRLHdDQUpnQyxDQUloQyxPQUFPLEFBQ0YsVUFBVSxDQUFDO0VBQ1IsV0FBVyxFQUFFLEtBQU07Q0FDdEI7O0FBUGIsQUFVUSx3Q0FWZ0MsQ0FVaEMsc0JBQXNCLENBQUM7RUFDbkIsT0FBTyxFQUFFLEVBQUc7Q0ErQmY7O0FBMUNULEFBYVksd0NBYjRCLENBVWhDLHNCQUFzQixDQUdsQixFQUFFLENBQUM7RUFDQyxVQUFVLEVBQUUsSUFBSztFQUNqQixPQUFPLEVBQUMsQ0FBRTtFQUNWLE1BQU0sRUFBQyxDQUFFO0VBQ1QsVUFBVSxFQUFDLElBQUs7Q0F1Qm5COztBQXhDYixBQWtCZ0Isd0NBbEJ3QixDQVVoQyxzQkFBc0IsQ0FHbEIsRUFBRSxDQUtFLEVBQUUsQ0FBQztFQUNDLFVBQVUsRUFBRSxJQUFLO0VBQ2pCLE1BQU0sRUFBQyxDQUFFO0VBQ1QsYUFBYSxFQUFDLEdBQUk7RUFDbEIsT0FBTyxFQUFDLENBQUU7RUFDVixhQUFhLEVBQUMsR0FBSTtDQWdCckI7O0FBdkNqQixBQXdCb0Isd0NBeEJvQixDQVVoQyxzQkFBc0IsQ0FHbEIsRUFBRSxDQUtFLEVBQUUsQ0FNRSxDQUFDLENBQUM7RUFDRSxnQkFBZ0IsRWpIaUN0QixPQUFPO0VpSGhDRCxLQUFLLEVqSGhCckIsSUFBSTtFaUhpQlksT0FBTyxFQUFFLEtBQU07RUFDZixPQUFPLEVBQUUsYUFBYztFQUN2QixVQUFVLEVBQUUsTUFBTztFQUNuQixjQUFjLEVBQUUsU0FBVTtFQUMxQixXQUFXLEVBQUUsVUFBVztFQUN4QixTQUFTLEVBQUUsSUFBSztFQUNoQixXQUFXLEVBQUUsSUFBSztFQUNsQixlQUFlLEVBQUUsSUFBSztDQUl6Qjs7QUF0Q3JCLEFBd0JvQix3Q0F4Qm9CLENBVWhDLHNCQUFzQixDQUdsQixFQUFFLENBS0UsRUFBRSxDQU1FLENBQUMsQUFXSSxNQUFNLENBQUM7RUFDSixnQkFBZ0IsRUFBQyxPQUFNO0NBQzFCOztBQXJDekIsQUE0Q1Esd0NBNUNnQyxDQTRDaEMsUUFBUSxDQUFDO0VBQ0wsS0FBSyxFakhuQ1QsSUFBSTtDaUh5Q0g7O0FBbkRULEFBOENZLHdDQTlDNEIsQ0E0Q2hDLFFBQVEsQ0FFSixFQUFFLENBQUM7RUFDQyxXQUFXLEVBQUMsVUFBVztFQUN2QixjQUFjLEVBQUMsU0FBVTtDQUM1Qjs7QUFqRGIsQUFxRGdELHdDQXJEUixFQXFEaEMsQUFBQSxtQkFBQyxDQUFvQixtQkFBbUIsQUFBdkMsRUFBeUM7RUFDdEMsUUFBUSxFQUFFLFFBQVM7RUFDbkIsVUFBVSxFQUFDLEtBQU07Q0FnSHBCOztBQXZLVCxBQXdEbUIsd0NBeERxQixFQXFEaEMsQUFBQSxtQkFBQyxDQUFvQixtQkFBbUIsQUFBdkMsRUFHRyxPQUFPLEFBQUEsT0FBTyxDQUFDO0VBQ1gsT0FBTyxFQUFDLEVBQUc7RUFDWCxPQUFPLEVBQUMsS0FBTTtFQUNkLE1BQU0sRUFBQyxLQUFNO0VBQUUsd0JBQXdCO0VBQ3ZDLE1BQU0sRUFBQyxVQUFXO0VBQUUsa0NBQWtDO0NBQ3pEOztBQTdEYixBQThEWSx3Q0E5RDRCLEVBcURoQyxBQUFBLG1CQUFDLENBQW9CLG1CQUFtQixBQUF2QyxFQVNHLGdCQUFnQixDQUFDO0VBQ2IsUUFBUSxFQUFFLFFBQVM7RUFDbkIsR0FBRyxFQUFDLE1BQU87RUFDWCxJQUFJLEVBQUMsQ0FBRTtFQUNQLEtBQUssRUFBQyxDQUFFO0VBQ1IsS0FBSyxFQUFDLElBQUs7RUFDWCxPQUFPLEVBQUUsRUFBRztDQUNmOztBQXJFYixBQXNFWSx3Q0F0RTRCLEVBcURoQyxBQUFBLG1CQUFDLENBQW9CLG1CQUFtQixBQUF2QyxFQWlCRyxnQkFBZ0IsQ0FBQztFQUNmLG1CQUFtQixFQUFFLFNBQVU7RUFDL0IsaUJBQWlCLEVBQUUsU0FBVTtFQUM3QixjQUFjLEVBQUMsS0FBTTtDQWV0Qjs7QUF4RmIsQUEwRWUsd0NBMUV5QixFQXFEaEMsQUFBQSxtQkFBQyxDQUFvQixtQkFBbUIsQUFBdkMsRUFpQkcsZ0JBQWdCLENBSWIsZ0JBQWdCLENBQUM7RUFDZixVQUFVLEVBQUUsTUFBTztFQUNuQixRQUFRLEVBQUUsUUFBUztDQVVwQjs7QUF0RmhCLEFBOEVtQix3Q0E5RXFCLEVBcURoQyxBQUFBLG1CQUFDLENBQW9CLG1CQUFtQixBQUF2QyxFQWlCRyxnQkFBZ0IsQ0FJYixnQkFBZ0IsQUFHZCxNQUFNLENBQ0osR0FBRyxDQUFDO0VBQ0YsVUFBVSxFQUFDLE1BQU87Q0FLbkI7O0E1R3ZDaEIsTUFBTSxFQUFMLFNBQVMsRUFBRSxLQUFLO0U0RzdDckIsQUE4RW1CLHdDQTlFcUIsRUFxRGhDLEFBQUEsbUJBQUMsQ0FBb0IsbUJBQW1CLEFBQXZDLEVBaUJHLGdCQUFnQixDQUliLGdCQUFnQixBQUdkLE1BQU0sQ0FDSixHQUFHLENBQUM7SUFHRCxVQUFVLEVBQUMsTUFBTztHQUdwQjs7O0FBcEZwQixBQThGb0Isd0NBOUZvQixFQXFEaEMsQUFBQSxtQkFBQyxDQUFvQixtQkFBbUIsQUFBdkMsRUF1Q0csT0FBTyxDQUNILFlBQVksQ0FDUixHQUFHLENBQUE7RUFDQyxPQUFPLEVBQUUsR0FBSTtFQUNiLFVBQVUsRUFBRSxjQUFlO0VBQzNCLFNBQVMsRUFBRSxXQUFLO0VBQ2hCLE1BQU0sRUFBRSxNQUFPO0NBQ2xCOztBQW5HckIsQUFxR3dCLHdDQXJHZ0IsRUFxRGhDLEFBQUEsbUJBQUMsQ0FBb0IsbUJBQW1CLEFBQXZDLEVBdUNHLE9BQU8sQ0FDSCxZQUFZLEFBT1AsYUFBYSxDQUNWLEdBQUcsQ0FBQTtFQUNDLGNBQWMsRUFBRSxXQUFLO0VBQ3JCLGFBQWEsRUFBRSxXQUFLO0VBQ3BCLFlBQVksRUFBRSxXQUFLO0VBQ25CLGlCQUFpQixFQUFFLFdBQUs7RUFDeEIsS0FBSyxFQUFFLE9BQVE7RUFDZixPQUFPLEVBQUUsQ0FBRTtFQUNYLFNBQVMsRUFBRSxXQUFLO0NBQ25COztBQTdHekIsQUFrSDJCLHdDQWxIYSxFQXFEaEMsQUFBQSxtQkFBQyxDQUFvQixtQkFBbUIsQUFBdkMsR0E2REcsQUFBQSxJQUFDLENBQUssUUFBUSxBQUFiLENBQWMsWUFBWSxDQUFDO0VBQ3hCLGdCQUFnQixFakh6RGQsT0FBTztDaUg2RFo7O0FBdkhiLEFBa0gyQix3Q0FsSGEsRUFxRGhDLEFBQUEsbUJBQUMsQ0FBb0IsbUJBQW1CLEFBQXZDLEdBNkRHLEFBQUEsSUFBQyxDQUFLLFFBQVEsQUFBYixDQUFjLFlBQVksQUFFdEIsTUFBTSxDQUFDO0VBQ0osZ0JBQWdCLEVBQUMsT0FBTTtDQUMxQjs7QUF0SGpCLEFBd0hZLHdDQXhINEIsRUFxRGhDLEFBQUEsbUJBQUMsQ0FBb0IsbUJBQW1CLEFBQXZDLEVBbUVHLFdBQVcsQ0FBQTtFQUNQLEtBQUssRUFBQyxLQUFNO0NBSWY7O0FBN0hiLEFBd0hZLHdDQXhINEIsRUFxRGhDLEFBQUEsbUJBQUMsQ0FBb0IsbUJBQW1CLEFBQXZDLEVBbUVHLFdBQVcsQUFFTixPQUFPLENBQUM7RUFDRCxPQUFPLEVBQUUsT0FBUTtDQUN4Qjs7QUE1SGpCLEFBK0hZLHdDQS9INEIsRUFxRGhDLEFBQUEsbUJBQUMsQ0FBb0IsbUJBQW1CLEFBQXZDLEVBMEVHLFdBQVcsQ0FBQztFQUNSLElBQUksRUFBRSxLQUFNO0NBSWY7O0FBcEliLEFBK0hZLHdDQS9INEIsRUFxRGhDLEFBQUEsbUJBQUMsQ0FBb0IsbUJBQW1CLEFBQXZDLEVBMEVHLFdBQVcsQUFFTixPQUFPLENBQUM7RUFDTCxPQUFPLEVBQUUsT0FBUTtDQUNwQjs7QUFuSWpCLEFBcUlZLHdDQXJJNEIsRUFxRGhDLEFBQUEsbUJBQUMsQ0FBb0IsbUJBQW1CLEFBQXZDLEVBZ0ZHLFdBQVc7QUFySXZCLEFBc0lZLHdDQXRJNEIsRUFxRGhDLEFBQUEsbUJBQUMsQ0FBb0IsbUJBQW1CLEFBQXZDLEVBaUZHLFdBQVcsQ0FBQztFQUNSLEtBQUssRUFBRSxJQUFLO0VBQ1osTUFBTSxFQUFFLElBQUs7RUFDYixHQUFHLEVBQUUsSUFBSztDQUNiOztBQTFJYixBQTJJdUIsd0NBM0lpQixFQXFEaEMsQUFBQSxtQkFBQyxDQUFvQixtQkFBbUIsQUFBdkMsRUFzRkcsV0FBVyxBQUFBLE9BQU87QUEzSTlCLEFBNEl1Qix3Q0E1SWlCLEVBcURoQyxBQUFBLG1CQUFDLENBQW9CLG1CQUFtQixBQUF2QyxFQXVGRyxXQUFXLEFBQUEsT0FBTyxDQUFDO0VBQ2YsV0FBVyxFQUFFLFdBQVk7RUFDekIsU0FBUyxFQUFFLElBQUs7RUFDaEIsV0FBVyxFQUFFLENBQUU7RUFDZixPQUFPLEVBQUMsQ0FBRTtFQUNWLEtBQUssRUFBRSxLQUFNO0VBQ2Isc0JBQXNCLEVBQUUsV0FBWTtFQUNwQyx1QkFBdUIsRUFBRSxTQUFVO0NBQ3RDOztBQXBKYixBQXFKWSx3Q0FySjRCLEVBcURoQyxBQUFBLG1CQUFDLENBQW9CLG1CQUFtQixBQUF2QyxFQWdHRyxXQUFXLENBQUM7RUFDUixNQUFNLEVBQUUsS0FBTTtDQUNqQjs7QUF2SmIsQUF3SmlDLHdDQXhKTyxFQXFEaEMsQUFBQSxtQkFBQyxDQUFvQixtQkFBbUIsQUFBdkMsRUFtR0csV0FBVyxDQUFDLEVBQUUsQ0FBQyxNQUFNLEFBQUEsT0FBTyxDQUFDO0VBQ3JCLFNBQVMsRUFBRSxJQUFLO0VBQ2hCLEtBQUssRUFBRSxJQUFLO0VBQ1osTUFBTSxFQUFFLElBQUs7Q0FDaEI7O0FBNUpqQixBQThKOEMsd0NBOUpOLEVBcURoQyxBQUFBLG1CQUFDLENBQW9CLG1CQUFtQixBQUF2QyxFQXlHRyxXQUFXLENBQUMsRUFBRSxBQUFBLGFBQWEsQ0FBQyxNQUFNLEFBQUEsT0FBTyxDQUFDO0VBQ3RDLEtBQUssRWpIckdILE9BQU87RWlIc0dULE9BQU8sRUFBRSxDQUFFO0NBQ2Q7O0FBaktiLEFBa0tZLHdDQWxLNEIsRUFxRGhDLEFBQUEsbUJBQUMsQ0FBb0IsbUJBQW1CLEFBQXZDLEVBNkdHLGFBQWEsQUFDUixhQUFhLENBQUM7RUFDWCxhQUFhLEVBQUUsS0FBTTtDQUN4Qjs7QUFyS2pCLEFBMEtZLHdDQTFLNEIsQ0F5S2hDLE9BQU8sQ0FDSCxFQUFFLENBQUM7RUFDQyxnQkFBZ0IsRWpIbEhoQixPQUFPO0VpSG1IUCxLQUFLLEVqSGxLYixJQUFJO0VpSG1LSSxjQUFjLEVBQUUsU0FBVTtFQUMxQixXQUFXLEVBQUUsVUFBVztFQUN4QixVQUFVLEVBQUMsTUFBTztFQUNsQixTQUFTLEVBQUUsSUFBSztFQUNoQixPQUFPLEVBQUUsYUFBYztFQUN2QixNQUFNLEVBQUMsUUFBUztDQUNuQjs7QUFuTGIsQUFvTFksd0NBcEw0QixDQXlLaEMsT0FBTyxDQVdILENBQUMsQ0FBQztFQUNFLGFBQWEsRUFBQyxJQUFLO0NBQ3RCOztBQXRMYixBQXVMWSx3Q0F2TDRCLENBeUtoQyxPQUFPLENBY0gsRUFBRSxDQUFDO0VBQ0MsYUFBYSxFQUFDLElBQUs7Q0FDdEI7O0FBekxiLEFBMkxRLHdDQTNMZ0MsQ0EyTGhDLFVBQVUsQ0FBQztFQUNQLE9BQU8sRUFBQyxLQUFNO0VBQ2QsVUFBVSxFQUFDLE1BQU87RUFDbEIsS0FBSyxFakhySUQsT0FBTztFaUhzSVgsU0FBUyxFQUFDLElBQUs7RUFDZixVQUFVLEVBQUMsTUFBTztFQUNsQixlQUFlLEVBQUUsSUFBSztDQW9CekI7O0FBck5ULEFBa01ZLHdDQWxNNEIsQ0EyTGhDLFVBQVUsQ0FPTixHQUFHLENBQUM7RUFDQSxhQUFhLEVBQUMsSUFBSztDQUN0Qjs7QUFwTWIsQUFxTVksd0NBck00QixDQTJMaEMsVUFBVSxDQVVOLEtBQUssQ0FBQztFQUNGLFFBQVEsRUFBRSxRQUFTO0VBQ25CLEdBQUcsRUFBQyxHQUFJO0VBQ1IsSUFBSSxFQUFDLENBQUU7RUFDUCxLQUFLLEVBQUMsQ0FBRTtFQUNSLFVBQVUsRUFBRSxNQUFPO0VBQ25CLFNBQVMsRUFBQyxJQUFLO0NBQ2xCOztBQTVNYixBQTZNWSx3Q0E3TTRCLENBMkxoQyxVQUFVLENBa0JOLFFBQVEsQ0FBQztFQUNMLEtBQUssRWpIcE1iLElBQUk7Q2lIcU1DOztBQS9NYixBQWlOZ0Isd0NBak53QixDQTJMaEMsVUFBVSxBQXFCTCxNQUFNLENBQ0gsUUFBUSxDQUFDO0VBQ0wsS0FBSyxFakh4SlAsT0FBTztDaUh5SlI7O0FDbE5qQixBQUFBLGtCQUFrQixDQUFDO0VBSWYsVUFBVSxFQUFDLE1BQU87RUFDbEIsZ0JBQWdCLEVBQUMsMEVBQUc7RUFDcEIsbUJBQW1CLEVBQUUsU0FBVTtFQUMvQixpQkFBaUIsRUFBQyxTQUFVO0VBQzVCLEtBQUssRWxIQ0QsSUFBSTtFa0hBUixjQUFjLEVBQUMsS0FBTTtFQUNyQixXQUFXLEVBQUMsS0FBTTtFQUNsQixPQUFPLEVBQUUsU0FBVTtFQUNuQixRQUFRLEVBQUUsUUFBUztDQXNHcEI7O0E3R3pEQyxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RTZHekRyQixBQUFBLGtCQUFrQixDQUFDO0lBRVgsZ0JBQWdCLEVsSHVETixPQUFPO0drSHlEdEI7OztBQWxISCxBQWFJLGtCQWJjLENBYWQsRUFBRSxDQUFDO0VBQ0MsVUFBVSxFQUFDLE1BQU87RUFDbEIsYUFBYSxFQUFDLElBQUs7RUFDbkIsS0FBSyxFbEhQTCxJQUFJO0VrSFFKLFVBQVUsRUFBQyxNQUFPO0VBQ2xCLGNBQWMsRUFBQyxTQUFVO0VBQ3pCLFNBQVMsRUFBQyxJQUFLO0NBQ2xCOztBQXBCTCxBQXFCSSxrQkFyQmMsQ0FxQmQsS0FBSyxDQUFDO0VBQ0YsV0FBVyxFQUFDLEdBQUcsQ0FBQyxLQUFLLENsSGJyQixJQUFJO0VrSGNKLFlBQVksRUFBQyxHQUFHLENBQUMsS0FBSyxDbEhkdEIsSUFBSTtFa0hlSixhQUFhLEVBQUMsR0FBRyxDQUFDLEtBQUssQ2xIZnZCLElBQUk7RWtIZ0JKLFVBQVUsRUFBQyxNQUFPO0VBQ2xCLFFBQVEsRUFBRSxRQUFTO0VBQ25CLFlBQVksRUFBRSxFQUFHO0VBQ2pCLGFBQWEsRUFBRSxFQUFHO0VBQ2xCLGNBQWMsRUFBQyxJQUFLO0NBMkR2Qjs7QUF4RkwsQUE4QlEsa0JBOUJVLENBcUJkLEtBQUssQ0FTRCxFQUFFLENBQUM7RUFDQyxRQUFRLEVBQUUsUUFBUztFQUNuQixJQUFJLEVBQUMsQ0FBRTtFQUNQLEtBQUssRUFBQyxDQUFFO0VBQ1IsR0FBRyxFQUFDLElBQUs7RUFDVCxTQUFTLEVBQUMsSUFBSztFQUNmLGNBQWMsRUFBRSxTQUFVO0VBQzFCLFdBQVcsRUFBQyxJQUFLO0VBQ2pCLFFBQVEsRUFBQyxNQUFPO0NBb0NuQjs7QUExRVQsQUF1Q1ksa0JBdkNNLENBcUJkLEtBQUssQ0FTRCxFQUFFLENBU0UsUUFBUSxDQUFDO0VBQ0wsT0FBTyxFQUFDLFlBQWE7RUFDckIsUUFBUSxFQUFFLFFBQVM7Q0FDdEI7O0FBMUNiLEFBMkNZLGtCQTNDTSxDQXFCZCxLQUFLLENBU0QsRUFBRSxDQWFFLEtBQUs7QUEzQ2pCLEFBNENZLGtCQTVDTSxDQXFCZCxLQUFLLENBU0QsRUFBRSxDQWNFLEtBQUssQ0FBQztFQUNGLFFBQVEsRUFBRSxRQUFTO0VBQ25CLEtBQUssRUFBQyxHQUFJO0VBQ1YsTUFBTSxFQUFDLEdBQUk7RUFDSyxHQUFHLEVBQUMsQ0FBRTtDQUN6Qjs7QUFqRGIsQUFrRFksa0JBbERNLENBcUJkLEtBQUssQ0FTRCxFQUFFLENBb0JFLEtBQUssQ0FBQztFQUNGLElBQUksRUFBQyxDQUFFO0NBVVY7O0FBN0RiLEFBa0RZLGtCQWxETSxDQXFCZCxLQUFLLENBU0QsRUFBRSxDQW9CRSxLQUFLLEFBRUEsT0FBTyxDQUFDO0VBQ0wsR0FBRyxFQUFDLEdBQUk7RUFDUixPQUFPLEVBQUMsRUFBRztFQUNYLEtBQUssRUFBQyxNQUFPO0VBQ2IsTUFBTSxFQUFDLEdBQUk7RUFDWCxnQkFBZ0IsRWxIaEQ1QixJQUFJO0VrSGlEUSxRQUFRLEVBQUUsUUFBUztFQUNuQixJQUFJLEVBQUMsT0FBUTtDQUNoQjs7QUE1RGpCLEFBOERZLGtCQTlETSxDQXFCZCxLQUFLLENBU0QsRUFBRSxDQWdDRSxLQUFLLENBQUM7RUFDRixLQUFLLEVBQUMsQ0FBRTtDQVVYOztBQXpFYixBQThEWSxrQkE5RE0sQ0FxQmQsS0FBSyxDQVNELEVBQUUsQ0FnQ0UsS0FBSyxBQUVBLE1BQU0sQ0FBQztFQUNKLEdBQUcsRUFBRSxHQUFJO0VBQ1QsT0FBTyxFQUFFLEVBQUc7RUFDWixLQUFLLEVBQUUsTUFBTztFQUNkLE1BQU0sRUFBRSxHQUFJO0VBQ1osZ0JBQWdCLEVBQUUsSUFBSztFQUN2QixRQUFRLEVBQUUsUUFBUztFQUNuQixLQUFLLEVBQUUsT0FBUTtDQUNsQjs7QUF4RWpCLEFBMkVRLGtCQTNFVSxDQXFCZCxLQUFLLENBc0RELENBQUMsQ0FBQztFQUNFLFdBQVcsRUFBRSxJQUFLO0VBQ2xCLFNBQVMsRUFBQyxJQUFLO0NBQ2xCOztBQTlFVCxBQStFUyxrQkEvRVMsQ0FxQmQsS0FBSyxDQTBERCxDQUFDLEFBQUEsY0FBYyxDQUFDO0VBQ1osV0FBVyxFQUFDLElBQUs7Q0FDcEI7O0FBakZULEFBa0ZRLGtCQWxGVSxDQXFCZCxLQUFLLENBNkRELENBQUMsQ0FBQztFQUNFLEtBQUssRWxIMUVULElBQUk7Q2tIOEVIOztBQXZGVCxBQWtGUSxrQkFsRlUsQ0FxQmQsS0FBSyxDQTZERCxDQUFDLEFBRUksTUFBTSxDQUFDO0VBQ0osS0FBSyxFbEh6QkwsT0FBTztDa0gwQlY7O0FBdEZiLEFBeUZJLGtCQXpGYyxDQXlGZCxPQUFPLENBQUM7RUFDSixLQUFLLEVBQUUsSUFBSztFQUNaLE1BQU0sRUFBRSxJQUFLO0VBQ2IsZ0JBQWdCLEVsSHBDUixPQUFPO0VrSHFDZixrQkFBa0IsRUFBRSxJQUFLO0VBQ3pCLHFCQUFxQixFQUFFLElBQUs7RUFDNUIsYUFBYSxFQUFFLElBQUs7RUFDcEIsUUFBUSxFQUFFLFFBQVM7RUFDbkIsTUFBTSxFQUFDLEtBQU07RUFDYixPQUFPLEVBQUUsRUFBRztFQUNaLFVBQVUsRUFBQyxNQUFPO0VBQ2xCLFFBQVEsRUFBRSxRQUFTO0U1Q3pCdkIsUUFBUSxFQUFFLFFBQVM7RUFDbkIsSUFBSSxFQUFFLEdBQUk7RUFDVixTQUFTLEVBQUUsZ0JBQVU7QzRDK0JwQjs7QUE1R0wsQUFzR1Esa0JBdEdVLENBeUZkLE9BQU8sQ0FhSCxHQUFHLENBQUM7RUFDQSxRQUFRLEVBQUUsUUFBUztFQUNuQixHQUFHLEVBQUUsSUFBSztFQUNWLElBQUksRUFBRSxJQUFLO0VBQ1gsU0FBUyxFQUFDLElBQUs7Q0FDbEI7O0E3R2xETCxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RTZHekRyQixBQThHWSxrQkE5R00sQ0E4R04sUUFBUSxDQUFDO0lBQ0wsYUFBYSxFQUFDLElBQUs7R0FDdEI7OztDQ2pIYixBQUFBLEFBQXVDLG1CQUF0QyxDQUFvQixrQkFBa0IsQUFBdEMsRUFBd0M7RUFJckMsZ0JBQWdCLEVBQUMsd0VBQUc7RUFDcEIsZ0JBQWdCLEVuSG9ESixPQUFPO0VtSG5EbkIsbUJBQW1CLEVBQUUsU0FBVTtFQUMvQixpQkFBaUIsRUFBRSxTQUFVO0VBQzdCLGVBQWUsRUFBRSxLQUFNO0VBRXZCLEtBQUssRW5IQUQsSUFBSTtFbUhDUixjQUFjLEVBQUMsSUFBSztFQUNwQixRQUFRLEVBQUUsUUFBUztDQW1GdEI7O0E5R3JDRyxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RzhHMURyQixBQUFBLEFBQXVDLG1CQUF0QyxDQUFvQixrQkFBa0IsQUFBdEMsRUFBd0M7SUFFakMsZ0JBQWdCLEVuSHVEUixPQUFPO0dtSHNDdEI7OztDQS9GRCxBQUFBLEFBYUksbUJBYkgsQ0FBb0Isa0JBQWtCLEFBQXRDLEVBYUcsRUFBRSxDQUFDO0U3Q2tCSCxnQkFBZ0IsRXRFMkJGLE9BQU87RXNFMUJyQixPQUFPLEVBQUMsWUFBYTtFQUNyQixLQUFLLEVBQUMsS0FBTTtFQUNaLFdBQVcsRUFBRSxJQUFLO0VBQ2xCLGNBQWMsRUFBRSxJQUFLO0VBQ3JCLFNBQVMsRUFBRSxJQUFLO0VBQ2hCLEtBQUssRXRFM0JELElBQUk7RXNFNEJSLFFBQVEsRUFBRSxRQUFTO0VBQ25CLFVBQVUsRUFBRSxNQUFPO0VBQ25CLEdBQUcsRUFBQyxDQUFFO0VBQ04sa0NBQWtDLEVBQUUsSUFBSztFQUN6QyxpQ0FBaUMsRUFBRSxJQUFLO0VBQ3hDLDhCQUE4QixFQUFFLElBQUs7RUFDckMsNkJBQTZCLEVBQUUsSUFBSztFQUNwQywwQkFBMEIsRUFBRSxJQUFLO0VBQ2pDLHlCQUF5QixFQUFFLElBQUs7RUFDaEMsY0FBYyxFQUFFLFNBQVU7RUFDMUIsV0FBVyxFQUFFLFVBQVc7RUE0QnhCLFFBQVEsRUFBRSxRQUFTO0VBQ25CLElBQUksRUFBRSxHQUFJO0VBQ1YsU0FBUyxFQUFFLGdCQUFVO0M2Qy9EcEI7O0NBZkwsQUFBQSxBQWFJLG1CQWJILENBQW9CLGtCQUFrQixBQUF0QyxFQWFHLEVBQUUsQTdDcUNELFFBQVEsQ0FBQztFQUNOLFNBQVMsRUFBQyxJQUFLO0VBQ2YsV0FBVyxFQUFFLElBQUs7RUFDbEIsY0FBYyxFQUFFLElBQUs7Q0FDeEI7O0M2Q3RETCxBQUFBLEFBZ0JJLG1CQWhCSCxDQUFvQixrQkFBa0IsQUFBdEMsRUFnQkcsTUFBTSxDQUFDO0VBQ0gsV0FBVyxFQUFDLEtBQU07RUFDbEIsYUFBYSxFQUFDLElBQUs7Q0FDdEI7O0NBbkJMLEFBQUEsQUFxQlEsbUJBckJQLENBQW9CLGtCQUFrQixBQUF0QyxFQW9CRywwQkFBMEIsQ0FDdEIsSUFBSSxDQUFDO0VBQ0QsTUFBTSxFQUFDLEdBQUcsQ0FBQyxLQUFLLENuSFpwQixJQUFJO0NtSGFIOztDQXZCVCxBQUFBLEFBd0JRLG1CQXhCUCxDQUFvQixrQkFBa0IsQUFBdEMsRUFvQkcsMEJBQTBCLENBSXRCLEVBQUUsQ0FBQztFQUNDLGdCQUFnQixFbkhmcEIsSUFBSTtFbUhnQkEsS0FBSyxFbkgrQkQsT0FBTztFbUg5QlgsT0FBTyxFQUFFLFNBQVU7RUFDbkIsU0FBUyxFQUFFLElBQUs7Q0FDbkI7O0NBN0JULEFBQUEsQUE4QlEsbUJBOUJQLENBQW9CLGtCQUFrQixBQUF0QyxFQW9CRywwQkFBMEIsQ0FVdEIsU0FBUyxDQUFDO0VBQ04sYUFBYSxFQUFDLEdBQUcsQ0FBQyxLQUFLLENuSHJCM0IsSUFBSTtFbUhzQkEsT0FBTyxFQUFFLFNBQVU7RUFDbkIsYUFBYSxFQUFDLENBQUU7Q0FDbkI7O0NBbENULEFBQUEsQUFtQ1EsbUJBbkNQLENBQW9CLGtCQUFrQixBQUF0QyxFQW9CRywwQkFBMEIsQ0FldEIscUJBQXFCLENBQUM7RUFDbEIsV0FBVyxFQUFDLElBQUs7RUFDakIsY0FBYyxFQUFDLElBQUs7Q0FDdkI7O0NBdENULEFBQUEsQUF1Q1EsbUJBdkNQLENBQW9CLGtCQUFrQixBQUF0QyxFQW9CRywwQkFBMEIsQ0FtQnRCLFNBQVMsQ0FBQztFQUNOLE9BQU8sRUFBQyxDQUFFO0NBSWI7O0NBNUNULEFBQUEsQUF5Q2EsbUJBekNaLENBQW9CLGtCQUFrQixBQUF0QyxFQW9CRywwQkFBMEIsQ0FtQnRCLFNBQVMsQ0FFTCxDQUFDLEFBQUEsYUFBYSxDQUFDO0VBQ1gsYUFBYSxFQUFDLENBQUU7Q0FDbkI7O0NBM0NiLEFBQUEsQUE2Q1EsbUJBN0NQLENBQW9CLGtCQUFrQixBQUF0QyxFQW9CRywwQkFBMEIsQ0F5QnRCLEtBQUssQ0FBQztFQUNGLE9BQU8sRUFBQyxJQUFLO0NBQ2hCOztDQS9DVCxBQUFBLEFBaURRLG1CQWpEUCxDQUFvQixrQkFBa0IsQUFBdEMsRUFvQkcsMEJBQTBCLENBNkJ0QixlQUFlLENBQUM7RUFDWixRQUFRLEVBQUUsT0FBUTtDQUNyQjs7Q0FuRFQsQUFBQSxBQW9EUSxtQkFwRFAsQ0FBb0Isa0JBQWtCLEFBQXRDLEVBb0JHLDBCQUEwQixDQWdDdEIsb0JBQW9CLENBQUM7RUFDakIsTUFBTSxFQUFFLEtBQU07Q0FDakI7O0NBdERULEFBQUEsQUF1RFEsbUJBdkRQLENBQW9CLGtCQUFrQixBQUF0QyxFQW9CRywwQkFBMEIsQ0FtQ3RCLFVBQVUsQ0FBQztFQUNQLFFBQVEsRUFBRSxRQUFTO0VBQ25CLEdBQUcsRUFBQyxHQUFJO0VBQ1IsT0FBTyxFQUFDLEtBQU07RUFDZCxnQkFBZ0IsRW5IakRwQixJQUFJO0VtSGtEQSxLQUFLLEVuSEZDLE9BQU87RW1IR2IsS0FBSyxFQUFDLElBQUs7RUFDWCxNQUFNLEVBQUMsSUFBSztFQUNaLGtCQUFrQixFQUFFLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxtQkFBSTtFQUN6QyxlQUFlLEVBQUUsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLG1CQUFJO0VBQ3RDLFVBQVUsRUFBRSxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsbUJBQUk7Q0E0QnBDOztDQTdGVCxBQUFBLEFBdURRLG1CQXZEUCxDQUFvQixrQkFBa0IsQUFBdEMsRUFvQkcsMEJBQTBCLENBbUN0QixVQUFVLEFBV0wsT0FBTyxDQUFDO0VBQ0wsUUFBUSxFQUFDLFFBQVM7RUFDbEIsT0FBTyxFQUFFLE9BQVE7RUFDakIsU0FBUyxFQUFDLElBQUs7RUFDZixXQUFXLEVBQUUsV0FBWTtFQUN6QixJQUFJLEVBQUMsSUFBSztFQUNWLEdBQUcsRUFBQyxJQUFLO0NBQ1g7O0NBekVkLEFBQUEsQUF1RFEsbUJBdkRQLENBQW9CLGtCQUFrQixBQUF0QyxFQW9CRywwQkFBMEIsQ0FtQ3RCLFVBQVUsQUFtQkosS0FBSyxDQUFDO0VBQ0gsSUFBSSxFQUFDLEVBQUc7Q0FRWDs7QTlHdENWLE1BQU0sRUFBTCxTQUFTLEVBQUUsS0FBSztHOEc3Q3JCLEFBQUEsQUF1RFEsbUJBdkRQLENBQW9CLGtCQUFrQixBQUF0QyxFQW9CRywwQkFBMEIsQ0FtQ3RCLFVBQVUsQUFtQkosS0FBSyxDQUFDO0lBR0EsSUFBSSxFQUFDLEdBQUk7R0FNZjs7O0NBbkZkLEFBQUEsQUF1RFEsbUJBdkRQLENBQW9CLGtCQUFrQixBQUF0QyxFQW9CRywwQkFBMEIsQ0FtQ3RCLFVBQVUsQUFtQkosS0FBSyxBQU1ELE9BQU8sQ0FBQztFQUNMLE9BQU8sRUFBRSxPQUFRO0NBQ25COztDQWxGbkIsQUFBQSxBQXVEUSxtQkF2RFAsQ0FBb0Isa0JBQWtCLEFBQXRDLEVBb0JHLDBCQUEwQixDQW1DdEIsVUFBVSxBQTZCSixNQUFNLENBQUM7RUFDSixLQUFLLEVBQUMsRUFBRztDQU9aOztBOUcvQ1YsTUFBTSxFQUFMLFNBQVMsRUFBRSxLQUFLO0c4RzdDckIsQUFBQSxBQXVEUSxtQkF2RFAsQ0FBb0Isa0JBQWtCLEFBQXRDLEVBb0JHLDBCQUEwQixDQW1DdEIsVUFBVSxBQTZCSixNQUFNLENBQUM7SUFHQSxLQUFLLEVBQUMsR0FBSTtHQUtqQjs7O0NBNUZkLEFBQUEsQUF1RFEsbUJBdkRQLENBQW9CLGtCQUFrQixBQUF0QyxFQW9CRywwQkFBMEIsQ0FtQ3RCLFVBQVUsQUE2QkosTUFBTSxBQUtGLE9BQU8sQ0FBQztFQUNMLE9BQU8sRUFBRSxPQUFRO0NBQ25COztBQzNGbkIsQUFBQSxrQkFBa0IsQ0FBQztFQUNmLFFBQVEsRUFBRSxRQUFTO0VBQ25CLFVBQVUsRXBIUU4sSUFBSTtFb0hQUixRQUFRLEVBQUUsTUFBTztFQUNqQixLQUFLLEVwSHFETyxPQUFPO0VvSHBEbkIsY0FBYyxFQUFDLEtBQU07Q0E4Q3hCOztBQW5ERCxBQUFBLGtCQUFrQixBQU1iLE9BQU8sQ0FBQztFQUNMLE9BQU8sRUFBRSxHQUFJO0VBQ2IsT0FBTyxFQUFFLEtBQU07RUFDZixRQUFRLEVBQUUsUUFBUztFQUNuQixJQUFJLEVBQUUsQ0FBRTtFQUNSLEdBQUcsRUFBRSxDQUFFO0VBQ1AsS0FBSyxFQUFFLElBQUs7RUFDWixNQUFNLEVBQUUsSUFBSztFQUNiLE9BQU8sRUFBRSxDQUFFO0VBQ1gsZ0JBQWdCLEVBQUMsbUVBQUc7RUFDcEIsaUJBQWlCLEVBQUMsU0FBVTtFQUM1QixtQkFBbUIsRUFBRSxhQUFjO0VBQ25DLG1CQUFtQixFQUFFLEtBQU07RUFDM0Isa0JBQWtCLEVBQUUsS0FBTTtFQUMxQixvQkFBb0IsRUFBRSxLQUFNO0VBQzVCLHVCQUF1QixFQUFFLEtBQU07RUFDL0IsZUFBZSxFQUFFLEtBQU07RUFDdkIsT0FBTyxFQUFFLEdBQUk7Q0FJaEI7O0EvR2tCRCxNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RStHN0NyQixBQUFBLGtCQUFrQixBQU1iLE9BQU8sQ0FBQztJQW1CRCxPQUFPLEVBQUUsQ0FBRTtHQUVsQjs7O0FBM0JMLEFBNEJJLGtCQTVCYyxDQTRCZCxFQUFFLENBQUM7RUFDQyxnQkFBZ0IsRXBINEJSLE9BQU87RW9IM0JmLEtBQUssRXBIcEJMLElBQUk7RW9IcUJKLFVBQVUsRUFBQyxNQUFPO0VBQ2xCLE9BQU8sRUFBQyxLQUFNO0VBQ2QsYUFBYSxFQUFDLENBQUU7RUFDaEIsY0FBYyxFQUFFLFNBQVU7RUFDMUIsVUFBVSxFQUFDLElBQUs7RUFDaEIsU0FBUyxFQUFFLElBQUs7RUFDaEIsT0FBTyxFQUFFLEdBQUk7Q0FDaEI7O0FBdENMLEFBdUNJLGtCQXZDYyxDQXVDZCxvQkFBb0IsQ0FBQztFQUNqQixRQUFRLEVBQUUsUUFBUztFQUNuQixPQUFPLEVBQUUsV0FBWTtDQUN4Qjs7QUExQ0wsQUEyQ0ksa0JBM0NjLENBMkNkLEVBQUUsQ0FBQztFQUNDLE1BQU0sRUFBQyxDQUFFO0VBQ1QsV0FBVyxFQUFDLElBQUs7RUFDakIsT0FBTyxFQUFDLENBQUU7Q0FDYjs7QUEvQ0wsQUFnREksa0JBaERjLENBZ0RkLEVBQUUsQ0FBQztFQUNDLGFBQWEsRUFBQyxJQUFLO0NBQ3RCOztBQUlMLEFBQUEsa0JBQWtCLENBQUM7RUFDZixVQUFVLEVBQUMsTUFBTztFQUNsQixjQUFjLEVBQUMsSUFBSztDQUl2Qjs7QUFORCxBQUdJLGtCQUhjLENBR2QsRUFBRSxDQUFDO0U5QzFCSCxnQkFBZ0IsRXRFMkJGLE9BQU87RXNFMUJyQixPQUFPLEVBQUMsWUFBYTtFQUNyQixLQUFLLEVBQUMsS0FBTTtFQUNaLFdBQVcsRUFBRSxJQUFLO0VBQ2xCLGNBQWMsRUFBRSxJQUFLO0VBQ3JCLFNBQVMsRUFBRSxJQUFLO0VBQ2hCLEtBQUssRXRFM0JELElBQUk7RXNFNEJSLFFBQVEsRUFBRSxRQUFTO0VBQ25CLFVBQVUsRUFBRSxNQUFPO0VBQ25CLEdBQUcsRUFBQyxDQUFFO0VBQ04sa0NBQWtDLEVBQUUsSUFBSztFQUN6QyxpQ0FBaUMsRUFBRSxJQUFLO0VBQ3hDLDhCQUE4QixFQUFFLElBQUs7RUFDckMsNkJBQTZCLEVBQUUsSUFBSztFQUNwQywwQkFBMEIsRUFBRSxJQUFLO0VBQ2pDLHlCQUF5QixFQUFFLElBQUs7RUFDaEMsY0FBYyxFQUFFLFNBQVU7RUFDMUIsV0FBVyxFQUFFLFVBQVc7RUE0QnhCLFFBQVEsRUFBRSxRQUFTO0VBQ25CLElBQUksRUFBRSxHQUFJO0VBQ1YsU0FBUyxFQUFFLGdCQUFVO0M4Q25CcEI7O0FBTEwsQUFHSSxrQkFIYyxDQUdkLEVBQUUsQTlDUEQsUUFBUSxDQUFDO0VBQ04sU0FBUyxFQUFDLElBQUs7RUFDZixXQUFXLEVBQUUsSUFBSztFQUNsQixjQUFjLEVBQUUsSUFBSztDQUN4Qjs7QThDUUwsQUFBQSxrQkFBa0IsQ0FBQztFQUNmLFdBQVcsRUFBQyxJQUFLO0VBQ2pCLGNBQWMsRUFBQyxJQUFLO0VBQ3BCLGNBQWMsRUFBRSxTQUFVO0VBQzFCLEtBQUssRXBIVE8sT0FBTztFb0hVbkIsV0FBVyxFQUFFLFVBQVc7Q0FNM0I7O0FBWEQsQUFPSSxrQkFQYyxDQU9kLFdBQVcsQ0FBQztFQUNSLFdBQVcsRUFBQyxJQUFLO0VBQ2pCLE9BQU8sRUFBRSxrQkFBbUI7Q0FDL0I7O0FBR0wsQUFBQSxrQkFBa0IsQ0FBQztFQUNmLFdBQVcsRUFBQyxJQUFLO0VBQ2pCLGNBQWMsRUFBQyxJQUFLO0VBQ3BCLFVBQVUsRUFBQyxNQUFPO0NBTXJCOztBQVRELEFBSUksa0JBSmMsQ0FJZCxFQUFFLENBQUU7RUFDQSxnQkFBZ0IsRXBIdkJSLE9BQU87RW9Id0JmLEtBQUssRXBIdkVMLElBQUk7RXNFZ0RSLE9BQU8sRUFBQyxZQUFhO0VBQ3JCLE9BQU8sRUFBRSxNQUFPO0VBQ2hCLGNBQWMsRUFBQyxTQUFVO0VBQ3pCLFNBQVMsRUFBQyxJQUFLO0M4Q3NCZDs7QUFHTCxBQUFBLGtCQUFrQixDQUFDO0VBQ2YsV0FBVyxFQUFDLElBQUs7RUFDakIsY0FBYyxFQUFDLElBQUs7RUFDcEIsVUFBVSxFQUFDLE1BQU87Q0FFckI7O0FBRUQsQUFBQSxrQkFBa0IsQ0FBQztFQUNmLGFBQWEsRUFBQyxJQUFLO0NBQ3RCOztBQy9GRCxBQUFBLGtCQUFrQixDQUFDO0VBQ2YsUUFBUSxFQUFFLFFBQVM7Q0FnSHRCOztBQWpIRCxBQUVJLGtCQUZjLENBRWQsU0FBUyxDQUFDO0VBQ04sT0FBTyxFQUFFLEdBQUk7RUFDYixRQUFRLEVBQUUsUUFBUztFQUNuQixLQUFLLEVBQUUsQ0FBRTtFQUNULE1BQU0sRUFBRSxDQUFFO0VBQ1YsV0FBVyxFQUFFLHNCQUF1QjtFQUNwQyxZQUFZLEVBQUUsc0JBQXVCO0VBQ3JDLFVBQVUsRUFBRSxJQUFJLENBQUMsS0FBSyxDckhnQnRCLElBQUk7RXNFbURSLFFBQVEsRUFBRSxRQUFTO0VBQ25CLElBQUksRUFBRSxHQUFJO0VBQ1YsU0FBUyxFQUFFLGdCQUFVO0MrQ25FcEI7O0FBWEwsQUFZSSxrQkFaYyxDQVlkLEtBQUssQ0FBQztFQUNGLEtBQUssRXJISEwsSUFBSTtFcUhJSixjQUFjLEVBQUMsSUFBSztDQUl2Qjs7QWhId0NELE1BQU0sRUFBTCxTQUFTLEVBQUUsS0FBSztFZ0gxRHJCLEFBWUksa0JBWmMsQ0FZZCxLQUFLLENBQUM7SUFJRSxVQUFVLEVBQUUsTUFBTztHQUUxQjs7O0FBbEJMLEFBbUJJLGtCQW5CYyxDQW1CZCxRQUFRLENBQUM7RUFDTCxXQUFXLEVBQUMsSUFBSztDQUNwQjs7QUFyQkwsQUF3QlEsa0JBeEJVLENBc0JkLEtBQUssQ0FFRCxFQUFFO0FBeEJWLEFBd0JRLGtCQXhCVSxDQXVCZCxNQUFNLENBQ0YsRUFBRSxDQUFDO0UvQ09QLGdCQUFnQixFdEUyQkYsT0FBTztFc0UxQnJCLE9BQU8sRUFBQyxZQUFhO0VBQ3JCLEtBQUssRUFBQyxLQUFNO0VBQ1osV0FBVyxFQUFFLElBQUs7RUFDbEIsY0FBYyxFQUFFLElBQUs7RUFDckIsU0FBUyxFQUFFLElBQUs7RUFDaEIsS0FBSyxFdEUzQkQsSUFBSTtFc0U0QlIsUUFBUSxFQUFFLFFBQVM7RUFDbkIsVUFBVSxFQUFFLE1BQU87RUFDbkIsR0FBRyxFQUFDLENBQUU7RUFDTixrQ0FBa0MsRUFBRSxJQUFLO0VBQ3pDLGlDQUFpQyxFQUFFLElBQUs7RUFDeEMsOEJBQThCLEVBQUUsSUFBSztFQUNyQyw2QkFBNkIsRUFBRSxJQUFLO0VBQ3BDLDBCQUEwQixFQUFFLElBQUs7RUFDakMseUJBQXlCLEVBQUUsSUFBSztFQUNoQyxjQUFjLEVBQUUsU0FBVTtFQUMxQixXQUFXLEVBQUUsVUFBVztFQTRCeEIsUUFBUSxFQUFFLFFBQVM7RUFDbkIsSUFBSSxFQUFFLEdBQUk7RUFDVixTQUFTLEVBQUUsZ0JBQVU7QytDcERoQjs7QUExQlQsQUF3QlEsa0JBeEJVLENBc0JkLEtBQUssQ0FFRCxFQUFFLEEvQzBCTCxRQUFRO0ErQ2xEYixBQXdCUSxrQkF4QlUsQ0F1QmQsTUFBTSxDQUNGLEVBQUUsQS9DMEJMLFFBQVEsQ0FBQztFQUNOLFNBQVMsRUFBQyxJQUFLO0VBQ2YsV0FBVyxFQUFFLElBQUs7RUFDbEIsY0FBYyxFQUFFLElBQUs7Q0FDeEI7O0ErQ3RETCxBQTRCSSxrQkE1QmMsQ0E0QmQsS0FBSyxDQUFDO0VBQ0YsZ0JBQWdCLEVySDRCUixPQUFPO0NxSGpCbEI7O0FBeENMLEFBOEJRLGtCQTlCVSxDQTRCZCxLQUFLLENBRUQsWUFBWSxDQUFDO0VBQ1QsZ0JBQWdCLEVySDJCVixPQUFPO0VxSDFCYixLQUFLLEVySHRCVCxJQUFJO0VxSHVCQSxLQUFLLEVBQUMsS0FBTTtFQUNaLGFBQWEsRUFBQyxDQUFFO0VBQ2hCLE9BQU8sRUFBQyxZQUFhO0VBQ3JCLHNCQUFzQixFQUFFLElBQUs7RUFDN0IsdUJBQXVCLEVBQUUsSUFBSztFL0N1Q3RDLFFBQVEsRUFBRSxRQUFTO0VBQ25CLElBQUksRUFBRSxHQUFJO0VBQ1YsU0FBUyxFQUFFLGdCQUFVO0MrQ3ZDaEI7O0FBdkNULEFBMENJLGtCQTFDYyxDQTBDZCxNQUFNLENBQUM7RUFDSCxnQkFBZ0IsRXJIakNoQixJQUFJO0NxSGtDUDs7QUE1Q0wsQUE4Q0Esa0JBOUNrQixDQThDbEIsUUFBUSxDQUFDO0VBQ0wsUUFBUSxFQUFDLE1BQU87RUFDaEIsUUFBUSxFQUFFLFFBQVM7RUFDbkIsZ0JBQWdCLEVySHZDWixJQUFJO0VxSHdDUixjQUFjLEVBQUMsSUFBSztFQUNwQiw4QkFBOEIsRUFBRSxJQUFLO0VBQ3JDLCtCQUErQixFQUFFLElBQUs7RUFDdEMsMEJBQTBCLEVBQUUsSUFBSztFQUNqQywyQkFBMkIsRUFBRSxJQUFLO0VBQ2xDLHNCQUFzQixFQUFFLElBQUs7RUFDN0IsdUJBQXVCLEVBQUUsSUFBSztFQUM5QixXQUFXLEVBQUMsQ0FBRTtFQUNkLFlBQVksRUFBQyxDQUFFO0NBcURsQjs7QWhIckRHLE1BQU0sRUFBTCxTQUFTLEVBQUUsS0FBSztFZ0gxRHJCLEFBOENBLGtCQTlDa0IsQ0E4Q2xCLFFBQVEsQ0FBQztJQWNELFVBQVUsRUFBQyxNQUFPO0dBbUR6Qjs7O0FBL0dELEFBOERJLGtCQTlEYyxDQThDbEIsUUFBUSxDQWdCSixJQUFJLENBQUk7RUFDSixVQUFVLEVBQUMsSUFBSztDQUNuQjs7QUFoRUwsQUFpRUksa0JBakVjLENBOENsQixRQUFRLENBbUJKLE9BQU8sQ0FBQztFQUNKLFFBQVEsRUFBRSxRQUFTO0VBQ25CLEdBQUcsRUFBQyxJQUFLO0VBQ1QsSUFBSSxFQUFDLEtBQU07RUFDWCxPQUFPLEVBQUMsWUFBYTtFQUNyQixVQUFVLEVBQUUsTUFBTztFQUNuQixLQUFLLEVBQUMsSUFBSztFQUNYLE1BQU0sRUFBRSxJQUFLO0VBQ2IsS0FBSyxFckgvREwsSUFBSTtFcUhnRUosT0FBTyxFQUFFLENBQUU7RUFDWCxTQUFTLEVBQUUsSUFBSztFQUNoQixXQUFXLEVBQUUsSUFBSztDQWNyQjs7QUExRkwsQUFpRUksa0JBakVjLENBOENsQixRQUFRLENBbUJKLE9BQU8sQUFZRixPQUFPLENBQUM7RUFDTCxRQUFRLEVBQUUsUUFBUztFQUNuQixJQUFJLEVBQUMsQ0FBRTtFQUNQLE9BQU8sRUFBQyxFQUFHO0VBQ1gsZ0JBQWdCLEVySHZCVixPQUFPO0VxSHdCYixLQUFLLEVBQUMsSUFBSztFQUNYLE1BQU0sRUFBRSxJQUFLO0VBQ2Isa0JBQWtCLEVBQUUsSUFBSztFQUN6QixxQkFBcUIsRUFBRSxJQUFLO0VBQzVCLGFBQWEsRUFBRSxJQUFLO0VBQ3BCLE9BQU8sRUFBRSxFQUFHO0NBQ2Y7O0FBeEZULEFBMkZJLGtCQTNGYyxDQThDbEIsUUFBUSxDQTZDSixNQUFNLENBQUM7RUFDSCxTQUFTLEVBQUMsSUFBSztFQUNmLEtBQUssRXJIcENHLE9BQU87RXFIcUNmLFVBQVUsRUFBRSxNQUFPO0VBQ25CLFFBQVEsRUFBRSxRQUFTO0VBQ25CLE9BQU8sRUFBQyxZQUFhO0NBSXhCOztBQXBHTCxBQWlHUSxrQkFqR1UsQ0E4Q2xCLFFBQVEsQ0E2Q0osTUFBTSxDQU1GLENBQUMsQ0FBQztFQUNFLGFBQWEsRUFBQyxDQUFFO0NBQ25COztBaEh0REwsTUFBTSxFQUFMLFNBQVMsRUFBRSxLQUFLO0VnSDdDckIsQUFzR1Esa0JBdEdVLENBOENsQixRQUFRLENBd0RBLElBQUksQ0FBQztJQUNELFFBQVEsRUFBRSxRQUFTO0lBQ25CLElBQUksRUFBRSxHQUFJO0lBQ1YsR0FBRyxFQUFFLElBQUs7SUFDVixNQUFNLEVBQUUsS0FBTTtJQUNkLEtBQUssRUFBRSxHQUFJO0lBQ1gsZ0JBQWdCLEVySDNGbEIsSUFBSTtHcUg0Rkw7OztBQzdHVCxBQUFBLEtBQUssQ0FBQztFQUNGLGdCQUFnQixFQUFDLG9FQUFHO0VBQ3BCLGlCQUFpQixFQUFFLFNBQVU7RUFDN0IsbUJBQW1CLEVBQUUsVUFBVztDQStGbkM7O0FBbEdELEFBSUksS0FKQyxDQUlELFVBQVUsQ0FBQztFQUNQLFdBQVcsRUFBRSxJQUFLO0NBQ3JCOztBQU5MLEFBUVEsS0FSSCxDQU9ELGlCQUFpQixDQUNiLENBQUMsQ0FBQztFQUNFLFFBQVEsRUFBRSxRQUFTO0VBQ25CLE9BQU8sRUFBQyxZQUFhO0VBQ3JCLE1BQU0sRUFBQyxHQUFHLENBQUMsS0FBSyxDdEgrQ1YsT0FBTztFc0g5Q2IsZ0JBQWdCLEV0SEZwQixJQUFJO0VzSEdBLE9BQU8sRUFBQyxNQUFPO0VBQ2YsY0FBYyxFQUFFLFNBQVU7RUFDMUIsS0FBSyxFdEgyQ0MsT0FBTztFc0gxQ2IsV0FBVyxFQUFFLElBQUs7RUFDbEIsV0FBVyxFQUFDLElBQUs7RUFDakIsU0FBUyxFQUFFLElBQUs7RUFDaEIsY0FBYyxFQUFFLEdBQUk7RUFDcEIsYUFBYSxFQUFDLElBQUs7RUFDbkIsUUFBUSxFQUFFLE1BQU87Q0FzQnBCOztBQTNDVCxBQVFRLEtBUkgsQ0FPRCxpQkFBaUIsQ0FDYixDQUFDLEFBY0ksTUFBTSxDQUFDO0VBQ0osR0FBRyxFQUFDLENBQUU7RUFDTixPQUFPLEVBQUMsS0FBTTtFQUNkLE1BQU0sRUFBQyxJQUFLO0VBQ1osS0FBSyxFQUFDLElBQUs7RUFDWCxRQUFRLEVBQUUsUUFBUztFQUNuQixLQUFLLEVBQUMsQ0FBRTtFQUNSLFdBQVcsRUFBQyxHQUFHLENBQUMsS0FBSyxDdEg2Qm5CLE9BQU87RXNINUJULE9BQU8sRUFBQyxFQUFHO0NBQ2Q7O0FBL0JiLEFBUVEsS0FSSCxDQU9ELGlCQUFpQixDQUNiLENBQUMsQUF3QkksT0FBTyxDQUFDO0VBQ0wsUUFBUSxFQUFFLFFBQVM7RUFDbkIsS0FBSyxFQUFDLEdBQUk7RUFDVixHQUFHLEVBQUMsR0FBSTtFQUNSLE9BQU8sRUFBRSxPQUFRO0VBQ2pCLFdBQVcsRUFBRSxXQUFZO0VBQ3pCLFdBQVcsRUFBQyxNQUFPO0NBQ3RCOztBQXZDYixBQVFRLEtBUkgsQ0FPRCxpQkFBaUIsQ0FDYixDQUFDLEFBZ0NJLE1BQU0sQ0FBQztFQUNKLEtBQUssRXRIZ0JMLE9BQU87Q3NIZlY7O0FBMUNiLEFBOENRLEtBOUNILENBNkNELEtBQUssQ0FDRCxvQkFBb0IsQ0FBRTtFQUNsQixNQUFNLEVBQUMsQ0FBRTtDQVVaOztBQXpEVCxBQWdEWSxLQWhEUCxDQTZDRCxLQUFLLENBQ0Qsb0JBQW9CLENBRWhCLEVBQUUsQ0FBQztFQUNDLE1BQU0sRUFBRSxHQUFHLENBQUMsS0FBSyxDdEhRakIsT0FBTztDc0hQVjs7QUFsRGIsQUFtRGEsS0FuRFIsQ0E2Q0QsS0FBSyxDQUNELG9CQUFvQixDQUtmLE9BQU8sQ0FBQztFQUNMLEtBQUssRUFBRSxJQUFLO0VBQ1osTUFBTSxFQUFFLElBQUs7RUFDYixNQUFNLEVBQUMsR0FBSTtFQUNYLGdCQUFnQixFdEhFaEIsT0FBTztDc0hEVjs7QUF4RGIsQUE0REksS0E1REMsQ0E0REQsVUFBVSxDQUFDO0VBQ1AsUUFBUSxFQUFFLFFBQVM7RUFDbkIsR0FBRyxFQUFDLEdBQUk7RUFDUixPQUFPLEVBQUMsS0FBTTtFQUNkLGdCQUFnQixFdEh0RGhCLElBQUk7RXNIdURKLEtBQUssRXRIUEssT0FBTztFc0hRakIsS0FBSyxFQUFDLElBQUs7RUFDWCxNQUFNLEVBQUMsSUFBSztFQUNaLGtCQUFrQixFQUFFLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxtQkFBSTtFQUN6QyxlQUFlLEVBQUUsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLG1CQUFJO0VBQ3RDLFVBQVUsRUFBRSxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsbUJBQUk7Q0EyQm5DOztBQWpHTCxBQTRESSxLQTVEQyxDQTRERCxVQUFVLEFBV0wsT0FBTyxDQUFDO0VBQ0wsUUFBUSxFQUFDLFFBQVM7RUFDbEIsT0FBTyxFQUFFLE9BQVE7RUFDakIsV0FBVyxFQUFFLFdBQVk7RUFDekIsSUFBSSxFQUFDLElBQUs7RUFDVixHQUFHLEVBQUMsSUFBSztDQUNYOztBQTdFVixBQTRESSxLQTVEQyxDQTRERCxVQUFVLEFBa0JKLEtBQUssQ0FBQztFQUNILElBQUksRUFBQyxFQUFHO0NBUVg7O0FqSDFDTixNQUFNLEVBQUwsU0FBUyxFQUFFLEtBQUs7RWlIN0NyQixBQTRESSxLQTVEQyxDQTRERCxVQUFVLEFBa0JKLEtBQUssQ0FBQztJQUdBLElBQUksRUFBQyxHQUFJO0dBTWY7OztBQXZGVixBQTRESSxLQTVEQyxDQTRERCxVQUFVLEFBa0JKLEtBQUssQUFNRCxPQUFPLENBQUM7RUFDTCxPQUFPLEVBQUUsT0FBUTtDQUNuQjs7QUF0RmYsQUE0REksS0E1REMsQ0E0REQsVUFBVSxBQTRCSixNQUFNLENBQUM7RUFDSixLQUFLLEVBQUMsRUFBRztDQU9aOztBakhuRE4sTUFBTSxFQUFMLFNBQVMsRUFBRSxLQUFLO0VpSDdDckIsQUE0REksS0E1REMsQ0E0REQsVUFBVSxBQTRCSixNQUFNLENBQUM7SUFHQSxLQUFLLEVBQUMsR0FBSTtHQUtqQjs7O0FBaEdWLEFBNERJLEtBNURDLENBNERELFVBQVUsQUE0QkosTUFBTSxBQUtGLE9BQU8sQ0FBQztFQUNMLE9BQU8sRUFBRSxPQUFRO0NBQ25COztBdEhlZixBQUFBLElBQUksQ0FBQztFQUNELE1BQU0sRUFBQyxDQUFFO0VBQ1QsYUFBYSxFQUFFLENBQUU7RUFDakIsY0FBYyxFQUFFLFNBQVU7RUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQSxVQUFVO0VBQ2pDLE9BQU8sRUFBRSxpQkFBa0I7RUFDM0IsV0FBVyxFQUFDLGlCQUFrQjtFQUM5QixTQUFTLEVBQUMsVUFBVztDQUN4Qjs7QUFFRCxBQUFBLFdBQVcsQ0FBQztFQUNSLGdCQUFnQixFQS9ERixPQUFPO0VBZ0VyQixRQUFRLEVBQUUsUUFBUztFQUNuQixhQUFhLEVBQUMsSUFBSztFQUNuQixPQUFPLEVBQUMsWUFBYTtDQWV4Qjs7QUFuQkQsQUFBQSxXQUFXLEFBS04sTUFBTSxDQUFDO0VBQ0osV0FBVyxFQUFFLFdBQVk7RUFDekIsUUFBUSxFQUFFLFFBQVM7RUFDbkIsR0FBRyxFQUFFLEdBQUk7RUFDVCxLQUFLLEVBQUUsSUFBSztFQUNaLE9BQU8sRUFBRSxPQUFRO0VBQ2pCLFNBQVMsRUFBRSxJQUFLO0NBQ25COztBQVpMLEFBQUEsV0FBVyxBQWFOLE9BQU8sQ0FBQztFQUNMLE9BQU8sRUFBRSxpQkFBa0I7Q0FJOUI7O0FBbEJMLEFBQUEsV0FBVyxBQWFOLE9BQU8sQUFFSCxNQUFNLENBQUM7RUFDSixPQUFPLEVBQUMsRUFBRztDQUNkOztBQUlULEFBQUEsSUFBSSxDQUFDO0VBQ0EsV0FBVyxFQUFFLHdCQUF5QjtFQUN0QyxTQUFTLEVBQUMsSUFBSztFQUNmLFdBQVcsRUFBQyxJQUFLO0NBQ3JCOztBQUVEOzs7Ozs7Ozs7OztFQVdFO0FBR0YsQUFBQSxlQUFlLENBQUE7RUFDWCxRQUFRLEVBQUMsTUFBTztFQUNoQixjQUFjLEVBQUMsTUFBTztFQUN0QixRQUFRLEVBQUMsUUFBUztFQUNsQixNQUFNLEVBQUMsQ0FBRTtDQUNaOztBQUNELEFBQWdCLGVBQUQsQ0FBQyxNQUFNLENBQUE7RUFDbEIsSUFBSSxFQUFDLENBQUU7RUFDUCxHQUFHLEVBQUMsQ0FBRTtFQUNOLE1BQU0sRUFBQyxJQUFLO0VBQ1osS0FBSyxFQUFDLElBQUs7RUFDWCxRQUFRLEVBQUMsUUFBUztDQUNyQjs7QUFHRCxBQUFBLE1BQU0sQUFDRCxPQUFPLENBQUM7RUFDTCxXQUFXLEVBQUMsSUFBSztFQUNqQixjQUFjLEVBQUMsSUFBSztFQUNwQixVQUFVLEVBQUMsTUFBTztFQUNsQixLQUFLLEVBM0tMLElBQUk7RUE0S0osU0FBUyxFQUFDLElBQUs7RUFDZixnQkFBZ0IsRUE3SE4sT0FBTztDQThIcEI7O0FBUkwsQUFTSSxNQVRFLENBU0YsQ0FBQyxDQUFDO0VBQ0UsS0FBSyxFQWhMTCxJQUFJO0VBaUxKLGVBQWUsRUFBRSxJQUFLO0NBS3pCOztBQWhCTCxBQVNJLE1BVEUsQ0FTRixDQUFDLEFBR0ksTUFBTSxDQUFDO0VBQ0osS0FBSyxFQWhJRCxPQUFPO0VBaUlYLGVBQWUsRUFBRSxJQUFLO0NBQ3pCOztBQWZULEFBaUJJLE1BakJFLENBaUJGLHFCQUFxQixDQUFDO0VBQ2xCLFNBQVMsRUFBQyxJQUFLO0NBQ2xCOztBQUdMLEFBQUEsV0FBVyxDQUFDO0VBQ1IsTUFBTSxFQUFFLGVBQWdCO0VBQ3hCLE9BQU8sRUFBRSxRQUFTO0VBQ2xCLFVBQVUsRUFBRSxJQUFLO0VBQ2pCLE9BQU8sRUFBRSxZQUFhO0NBSXpCOztBQVJELEFBQUEsV0FBVyxBQUtOLE1BQU0sQ0FBQztFQUNKLGVBQWUsRUFBRSxJQUFLO0NBQ3pCIiwibmFtZXMiOltdfQ== */
