@charset "UTF-8";
/*!
 * Bootstrap v3.3.7 (http://getbootstrap.com)
 * Copyright 2011-2016 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

a {
  background-color: transparent;
}

a:active,
a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 40px;
}

hr {
  box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

.container {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.container:before, .container:after {
  content: " ";
  display: table;
}

.container:after {
  clear: both;
}

@media (min-width: 768px) {
  .container {
    width: 668px;
  }
}

@media (min-width: 992px) {
  .container {
    width: 882px;
  }
}

@media (min-width: 1440px) {
  .container {
    width: 1230px;
  }
}

.container-fluid {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.container-fluid:before, .container-fluid:after {
  content: " ";
  display: table;
}

.container-fluid:after {
  clear: both;
}

.row {
  margin-left: -15px;
  margin-right: -15px;
}

.row:before, .row:after {
  content: " ";
  display: table;
}

.row:after {
  clear: both;
}

.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12, .col-xs-13, .col-sm-13, .col-md-13, .col-lg-13, .col-xs-14, .col-sm-14, .col-md-14, .col-lg-14, .col-xs-15, .col-sm-15, .col-md-15, .col-lg-15, .col-xs-16, .col-sm-16, .col-md-16, .col-lg-16, .col-xs-17, .col-sm-17, .col-md-17, .col-lg-17, .col-xs-18, .col-sm-18, .col-md-18, .col-lg-18, .col-xs-19, .col-sm-19, .col-md-19, .col-lg-19, .col-xs-20, .col-sm-20, .col-md-20, .col-lg-20, .col-xs-21, .col-sm-21, .col-md-21, .col-lg-21, .col-xs-22, .col-sm-22, .col-md-22, .col-lg-22, .col-xs-23, .col-sm-23, .col-md-23, .col-lg-23, .col-xs-24, .col-sm-24, .col-md-24, .col-lg-24 {
  position: relative;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

.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-xs-13, .col-xs-14, .col-xs-15, .col-xs-16, .col-xs-17, .col-xs-18, .col-xs-19, .col-xs-20, .col-xs-21, .col-xs-22, .col-xs-23, .col-xs-24 {
  float: left;
}

.col-xs-1 {
  width: 4.16667%;
}

.col-xs-2 {
  width: 8.33333%;
}

.col-xs-3 {
  width: 12.5%;
}

.col-xs-4 {
  width: 16.66667%;
}

.col-xs-5 {
  width: 20.83333%;
}

.col-xs-6 {
  width: 25%;
}

.col-xs-7 {
  width: 29.16667%;
}

.col-xs-8 {
  width: 33.33333%;
}

.col-xs-9 {
  width: 37.5%;
}

.col-xs-10 {
  width: 41.66667%;
}

.col-xs-11 {
  width: 45.83333%;
}

.col-xs-12 {
  width: 50%;
}

.col-xs-13 {
  width: 54.16667%;
}

.col-xs-14 {
  width: 58.33333%;
}

.col-xs-15 {
  width: 62.5%;
}

.col-xs-16 {
  width: 66.66667%;
}

.col-xs-17 {
  width: 70.83333%;
}

.col-xs-18 {
  width: 75%;
}

.col-xs-19 {
  width: 79.16667%;
}

.col-xs-20 {
  width: 83.33333%;
}

.col-xs-21 {
  width: 87.5%;
}

.col-xs-22 {
  width: 91.66667%;
}

.col-xs-23 {
  width: 95.83333%;
}

.col-xs-24 {
  width: 100%;
}

.col-xs-pull-0 {
  right: auto;
}

.col-xs-pull-1 {
  right: 4.16667%;
}

.col-xs-pull-2 {
  right: 8.33333%;
}

.col-xs-pull-3 {
  right: 12.5%;
}

.col-xs-pull-4 {
  right: 16.66667%;
}

.col-xs-pull-5 {
  right: 20.83333%;
}

.col-xs-pull-6 {
  right: 25%;
}

.col-xs-pull-7 {
  right: 29.16667%;
}

.col-xs-pull-8 {
  right: 33.33333%;
}

.col-xs-pull-9 {
  right: 37.5%;
}

.col-xs-pull-10 {
  right: 41.66667%;
}

.col-xs-pull-11 {
  right: 45.83333%;
}

.col-xs-pull-12 {
  right: 50%;
}

.col-xs-pull-13 {
  right: 54.16667%;
}

.col-xs-pull-14 {
  right: 58.33333%;
}

.col-xs-pull-15 {
  right: 62.5%;
}

.col-xs-pull-16 {
  right: 66.66667%;
}

.col-xs-pull-17 {
  right: 70.83333%;
}

.col-xs-pull-18 {
  right: 75%;
}

.col-xs-pull-19 {
  right: 79.16667%;
}

.col-xs-pull-20 {
  right: 83.33333%;
}

.col-xs-pull-21 {
  right: 87.5%;
}

.col-xs-pull-22 {
  right: 91.66667%;
}

.col-xs-pull-23 {
  right: 95.83333%;
}

.col-xs-pull-24 {
  right: 100%;
}

.col-xs-push-0 {
  left: auto;
}

.col-xs-push-1 {
  left: 4.16667%;
}

.col-xs-push-2 {
  left: 8.33333%;
}

.col-xs-push-3 {
  left: 12.5%;
}

.col-xs-push-4 {
  left: 16.66667%;
}

.col-xs-push-5 {
  left: 20.83333%;
}

.col-xs-push-6 {
  left: 25%;
}

.col-xs-push-7 {
  left: 29.16667%;
}

.col-xs-push-8 {
  left: 33.33333%;
}

.col-xs-push-9 {
  left: 37.5%;
}

.col-xs-push-10 {
  left: 41.66667%;
}

.col-xs-push-11 {
  left: 45.83333%;
}

.col-xs-push-12 {
  left: 50%;
}

.col-xs-push-13 {
  left: 54.16667%;
}

.col-xs-push-14 {
  left: 58.33333%;
}

.col-xs-push-15 {
  left: 62.5%;
}

.col-xs-push-16 {
  left: 66.66667%;
}

.col-xs-push-17 {
  left: 70.83333%;
}

.col-xs-push-18 {
  left: 75%;
}

.col-xs-push-19 {
  left: 79.16667%;
}

.col-xs-push-20 {
  left: 83.33333%;
}

.col-xs-push-21 {
  left: 87.5%;
}

.col-xs-push-22 {
  left: 91.66667%;
}

.col-xs-push-23 {
  left: 95.83333%;
}

.col-xs-push-24 {
  left: 100%;
}

.col-xs-offset-0 {
  margin-left: 0%;
}

.col-xs-offset-1 {
  margin-left: 4.16667%;
}

.col-xs-offset-2 {
  margin-left: 8.33333%;
}

.col-xs-offset-3 {
  margin-left: 12.5%;
}

.col-xs-offset-4 {
  margin-left: 16.66667%;
}

.col-xs-offset-5 {
  margin-left: 20.83333%;
}

.col-xs-offset-6 {
  margin-left: 25%;
}

.col-xs-offset-7 {
  margin-left: 29.16667%;
}

.col-xs-offset-8 {
  margin-left: 33.33333%;
}

.col-xs-offset-9 {
  margin-left: 37.5%;
}

.col-xs-offset-10 {
  margin-left: 41.66667%;
}

.col-xs-offset-11 {
  margin-left: 45.83333%;
}

.col-xs-offset-12 {
  margin-left: 50%;
}

.col-xs-offset-13 {
  margin-left: 54.16667%;
}

.col-xs-offset-14 {
  margin-left: 58.33333%;
}

.col-xs-offset-15 {
  margin-left: 62.5%;
}

.col-xs-offset-16 {
  margin-left: 66.66667%;
}

.col-xs-offset-17 {
  margin-left: 70.83333%;
}

.col-xs-offset-18 {
  margin-left: 75%;
}

.col-xs-offset-19 {
  margin-left: 79.16667%;
}

.col-xs-offset-20 {
  margin-left: 83.33333%;
}

.col-xs-offset-21 {
  margin-left: 87.5%;
}

.col-xs-offset-22 {
  margin-left: 91.66667%;
}

.col-xs-offset-23 {
  margin-left: 95.83333%;
}

.col-xs-offset-24 {
  margin-left: 100%;
}

@media (min-width: 768px) {
  .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-sm-13, .col-sm-14, .col-sm-15, .col-sm-16, .col-sm-17, .col-sm-18, .col-sm-19, .col-sm-20, .col-sm-21, .col-sm-22, .col-sm-23, .col-sm-24 {
    float: left;
  }
  .col-sm-1 {
    width: 4.16667%;
  }
  .col-sm-2 {
    width: 8.33333%;
  }
  .col-sm-3 {
    width: 12.5%;
  }
  .col-sm-4 {
    width: 16.66667%;
  }
  .col-sm-5 {
    width: 20.83333%;
  }
  .col-sm-6 {
    width: 25%;
  }
  .col-sm-7 {
    width: 29.16667%;
  }
  .col-sm-8 {
    width: 33.33333%;
  }
  .col-sm-9 {
    width: 37.5%;
  }
  .col-sm-10 {
    width: 41.66667%;
  }
  .col-sm-11 {
    width: 45.83333%;
  }
  .col-sm-12 {
    width: 50%;
  }
  .col-sm-13 {
    width: 54.16667%;
  }
  .col-sm-14 {
    width: 58.33333%;
  }
  .col-sm-15 {
    width: 62.5%;
  }
  .col-sm-16 {
    width: 66.66667%;
  }
  .col-sm-17 {
    width: 70.83333%;
  }
  .col-sm-18 {
    width: 75%;
  }
  .col-sm-19 {
    width: 79.16667%;
  }
  .col-sm-20 {
    width: 83.33333%;
  }
  .col-sm-21 {
    width: 87.5%;
  }
  .col-sm-22 {
    width: 91.66667%;
  }
  .col-sm-23 {
    width: 95.83333%;
  }
  .col-sm-24 {
    width: 100%;
  }
  .col-sm-pull-0 {
    right: auto;
  }
  .col-sm-pull-1 {
    right: 4.16667%;
  }
  .col-sm-pull-2 {
    right: 8.33333%;
  }
  .col-sm-pull-3 {
    right: 12.5%;
  }
  .col-sm-pull-4 {
    right: 16.66667%;
  }
  .col-sm-pull-5 {
    right: 20.83333%;
  }
  .col-sm-pull-6 {
    right: 25%;
  }
  .col-sm-pull-7 {
    right: 29.16667%;
  }
  .col-sm-pull-8 {
    right: 33.33333%;
  }
  .col-sm-pull-9 {
    right: 37.5%;
  }
  .col-sm-pull-10 {
    right: 41.66667%;
  }
  .col-sm-pull-11 {
    right: 45.83333%;
  }
  .col-sm-pull-12 {
    right: 50%;
  }
  .col-sm-pull-13 {
    right: 54.16667%;
  }
  .col-sm-pull-14 {
    right: 58.33333%;
  }
  .col-sm-pull-15 {
    right: 62.5%;
  }
  .col-sm-pull-16 {
    right: 66.66667%;
  }
  .col-sm-pull-17 {
    right: 70.83333%;
  }
  .col-sm-pull-18 {
    right: 75%;
  }
  .col-sm-pull-19 {
    right: 79.16667%;
  }
  .col-sm-pull-20 {
    right: 83.33333%;
  }
  .col-sm-pull-21 {
    right: 87.5%;
  }
  .col-sm-pull-22 {
    right: 91.66667%;
  }
  .col-sm-pull-23 {
    right: 95.83333%;
  }
  .col-sm-pull-24 {
    right: 100%;
  }
  .col-sm-push-0 {
    left: auto;
  }
  .col-sm-push-1 {
    left: 4.16667%;
  }
  .col-sm-push-2 {
    left: 8.33333%;
  }
  .col-sm-push-3 {
    left: 12.5%;
  }
  .col-sm-push-4 {
    left: 16.66667%;
  }
  .col-sm-push-5 {
    left: 20.83333%;
  }
  .col-sm-push-6 {
    left: 25%;
  }
  .col-sm-push-7 {
    left: 29.16667%;
  }
  .col-sm-push-8 {
    left: 33.33333%;
  }
  .col-sm-push-9 {
    left: 37.5%;
  }
  .col-sm-push-10 {
    left: 41.66667%;
  }
  .col-sm-push-11 {
    left: 45.83333%;
  }
  .col-sm-push-12 {
    left: 50%;
  }
  .col-sm-push-13 {
    left: 54.16667%;
  }
  .col-sm-push-14 {
    left: 58.33333%;
  }
  .col-sm-push-15 {
    left: 62.5%;
  }
  .col-sm-push-16 {
    left: 66.66667%;
  }
  .col-sm-push-17 {
    left: 70.83333%;
  }
  .col-sm-push-18 {
    left: 75%;
  }
  .col-sm-push-19 {
    left: 79.16667%;
  }
  .col-sm-push-20 {
    left: 83.33333%;
  }
  .col-sm-push-21 {
    left: 87.5%;
  }
  .col-sm-push-22 {
    left: 91.66667%;
  }
  .col-sm-push-23 {
    left: 95.83333%;
  }
  .col-sm-push-24 {
    left: 100%;
  }
  .col-sm-offset-0 {
    margin-left: 0%;
  }
  .col-sm-offset-1 {
    margin-left: 4.16667%;
  }
  .col-sm-offset-2 {
    margin-left: 8.33333%;
  }
  .col-sm-offset-3 {
    margin-left: 12.5%;
  }
  .col-sm-offset-4 {
    margin-left: 16.66667%;
  }
  .col-sm-offset-5 {
    margin-left: 20.83333%;
  }
  .col-sm-offset-6 {
    margin-left: 25%;
  }
  .col-sm-offset-7 {
    margin-left: 29.16667%;
  }
  .col-sm-offset-8 {
    margin-left: 33.33333%;
  }
  .col-sm-offset-9 {
    margin-left: 37.5%;
  }
  .col-sm-offset-10 {
    margin-left: 41.66667%;
  }
  .col-sm-offset-11 {
    margin-left: 45.83333%;
  }
  .col-sm-offset-12 {
    margin-left: 50%;
  }
  .col-sm-offset-13 {
    margin-left: 54.16667%;
  }
  .col-sm-offset-14 {
    margin-left: 58.33333%;
  }
  .col-sm-offset-15 {
    margin-left: 62.5%;
  }
  .col-sm-offset-16 {
    margin-left: 66.66667%;
  }
  .col-sm-offset-17 {
    margin-left: 70.83333%;
  }
  .col-sm-offset-18 {
    margin-left: 75%;
  }
  .col-sm-offset-19 {
    margin-left: 79.16667%;
  }
  .col-sm-offset-20 {
    margin-left: 83.33333%;
  }
  .col-sm-offset-21 {
    margin-left: 87.5%;
  }
  .col-sm-offset-22 {
    margin-left: 91.66667%;
  }
  .col-sm-offset-23 {
    margin-left: 95.83333%;
  }
  .col-sm-offset-24 {
    margin-left: 100%;
  }
}

@media (min-width: 992px) {
  .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-md-13, .col-md-14, .col-md-15, .col-md-16, .col-md-17, .col-md-18, .col-md-19, .col-md-20, .col-md-21, .col-md-22, .col-md-23, .col-md-24 {
    float: left;
  }
  .col-md-1 {
    width: 4.16667%;
  }
  .col-md-2 {
    width: 8.33333%;
  }
  .col-md-3 {
    width: 12.5%;
  }
  .col-md-4 {
    width: 16.66667%;
  }
  .col-md-5 {
    width: 20.83333%;
  }
  .col-md-6 {
    width: 25%;
  }
  .col-md-7 {
    width: 29.16667%;
  }
  .col-md-8 {
    width: 33.33333%;
  }
  .col-md-9 {
    width: 37.5%;
  }
  .col-md-10 {
    width: 41.66667%;
  }
  .col-md-11 {
    width: 45.83333%;
  }
  .col-md-12 {
    width: 50%;
  }
  .col-md-13 {
    width: 54.16667%;
  }
  .col-md-14 {
    width: 58.33333%;
  }
  .col-md-15 {
    width: 62.5%;
  }
  .col-md-16 {
    width: 66.66667%;
  }
  .col-md-17 {
    width: 70.83333%;
  }
  .col-md-18 {
    width: 75%;
  }
  .col-md-19 {
    width: 79.16667%;
  }
  .col-md-20 {
    width: 83.33333%;
  }
  .col-md-21 {
    width: 87.5%;
  }
  .col-md-22 {
    width: 91.66667%;
  }
  .col-md-23 {
    width: 95.83333%;
  }
  .col-md-24 {
    width: 100%;
  }
  .col-md-pull-0 {
    right: auto;
  }
  .col-md-pull-1 {
    right: 4.16667%;
  }
  .col-md-pull-2 {
    right: 8.33333%;
  }
  .col-md-pull-3 {
    right: 12.5%;
  }
  .col-md-pull-4 {
    right: 16.66667%;
  }
  .col-md-pull-5 {
    right: 20.83333%;
  }
  .col-md-pull-6 {
    right: 25%;
  }
  .col-md-pull-7 {
    right: 29.16667%;
  }
  .col-md-pull-8 {
    right: 33.33333%;
  }
  .col-md-pull-9 {
    right: 37.5%;
  }
  .col-md-pull-10 {
    right: 41.66667%;
  }
  .col-md-pull-11 {
    right: 45.83333%;
  }
  .col-md-pull-12 {
    right: 50%;
  }
  .col-md-pull-13 {
    right: 54.16667%;
  }
  .col-md-pull-14 {
    right: 58.33333%;
  }
  .col-md-pull-15 {
    right: 62.5%;
  }
  .col-md-pull-16 {
    right: 66.66667%;
  }
  .col-md-pull-17 {
    right: 70.83333%;
  }
  .col-md-pull-18 {
    right: 75%;
  }
  .col-md-pull-19 {
    right: 79.16667%;
  }
  .col-md-pull-20 {
    right: 83.33333%;
  }
  .col-md-pull-21 {
    right: 87.5%;
  }
  .col-md-pull-22 {
    right: 91.66667%;
  }
  .col-md-pull-23 {
    right: 95.83333%;
  }
  .col-md-pull-24 {
    right: 100%;
  }
  .col-md-push-0 {
    left: auto;
  }
  .col-md-push-1 {
    left: 4.16667%;
  }
  .col-md-push-2 {
    left: 8.33333%;
  }
  .col-md-push-3 {
    left: 12.5%;
  }
  .col-md-push-4 {
    left: 16.66667%;
  }
  .col-md-push-5 {
    left: 20.83333%;
  }
  .col-md-push-6 {
    left: 25%;
  }
  .col-md-push-7 {
    left: 29.16667%;
  }
  .col-md-push-8 {
    left: 33.33333%;
  }
  .col-md-push-9 {
    left: 37.5%;
  }
  .col-md-push-10 {
    left: 41.66667%;
  }
  .col-md-push-11 {
    left: 45.83333%;
  }
  .col-md-push-12 {
    left: 50%;
  }
  .col-md-push-13 {
    left: 54.16667%;
  }
  .col-md-push-14 {
    left: 58.33333%;
  }
  .col-md-push-15 {
    left: 62.5%;
  }
  .col-md-push-16 {
    left: 66.66667%;
  }
  .col-md-push-17 {
    left: 70.83333%;
  }
  .col-md-push-18 {
    left: 75%;
  }
  .col-md-push-19 {
    left: 79.16667%;
  }
  .col-md-push-20 {
    left: 83.33333%;
  }
  .col-md-push-21 {
    left: 87.5%;
  }
  .col-md-push-22 {
    left: 91.66667%;
  }
  .col-md-push-23 {
    left: 95.83333%;
  }
  .col-md-push-24 {
    left: 100%;
  }
  .col-md-offset-0 {
    margin-left: 0%;
  }
  .col-md-offset-1 {
    margin-left: 4.16667%;
  }
  .col-md-offset-2 {
    margin-left: 8.33333%;
  }
  .col-md-offset-3 {
    margin-left: 12.5%;
  }
  .col-md-offset-4 {
    margin-left: 16.66667%;
  }
  .col-md-offset-5 {
    margin-left: 20.83333%;
  }
  .col-md-offset-6 {
    margin-left: 25%;
  }
  .col-md-offset-7 {
    margin-left: 29.16667%;
  }
  .col-md-offset-8 {
    margin-left: 33.33333%;
  }
  .col-md-offset-9 {
    margin-left: 37.5%;
  }
  .col-md-offset-10 {
    margin-left: 41.66667%;
  }
  .col-md-offset-11 {
    margin-left: 45.83333%;
  }
  .col-md-offset-12 {
    margin-left: 50%;
  }
  .col-md-offset-13 {
    margin-left: 54.16667%;
  }
  .col-md-offset-14 {
    margin-left: 58.33333%;
  }
  .col-md-offset-15 {
    margin-left: 62.5%;
  }
  .col-md-offset-16 {
    margin-left: 66.66667%;
  }
  .col-md-offset-17 {
    margin-left: 70.83333%;
  }
  .col-md-offset-18 {
    margin-left: 75%;
  }
  .col-md-offset-19 {
    margin-left: 79.16667%;
  }
  .col-md-offset-20 {
    margin-left: 83.33333%;
  }
  .col-md-offset-21 {
    margin-left: 87.5%;
  }
  .col-md-offset-22 {
    margin-left: 91.66667%;
  }
  .col-md-offset-23 {
    margin-left: 95.83333%;
  }
  .col-md-offset-24 {
    margin-left: 100%;
  }
}

@media (min-width: 1440px) {
  .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-lg-13, .col-lg-14, .col-lg-15, .col-lg-16, .col-lg-17, .col-lg-18, .col-lg-19, .col-lg-20, .col-lg-21, .col-lg-22, .col-lg-23, .col-lg-24 {
    float: left;
  }
  .col-lg-1 {
    width: 4.16667%;
  }
  .col-lg-2 {
    width: 8.33333%;
  }
  .col-lg-3 {
    width: 12.5%;
  }
  .col-lg-4 {
    width: 16.66667%;
  }
  .col-lg-5 {
    width: 20.83333%;
  }
  .col-lg-6 {
    width: 25%;
  }
  .col-lg-7 {
    width: 29.16667%;
  }
  .col-lg-8 {
    width: 33.33333%;
  }
  .col-lg-9 {
    width: 37.5%;
  }
  .col-lg-10 {
    width: 41.66667%;
  }
  .col-lg-11 {
    width: 45.83333%;
  }
  .col-lg-12 {
    width: 50%;
  }
  .col-lg-13 {
    width: 54.16667%;
  }
  .col-lg-14 {
    width: 58.33333%;
  }
  .col-lg-15 {
    width: 62.5%;
  }
  .col-lg-16 {
    width: 66.66667%;
  }
  .col-lg-17 {
    width: 70.83333%;
  }
  .col-lg-18 {
    width: 75%;
  }
  .col-lg-19 {
    width: 79.16667%;
  }
  .col-lg-20 {
    width: 83.33333%;
  }
  .col-lg-21 {
    width: 87.5%;
  }
  .col-lg-22 {
    width: 91.66667%;
  }
  .col-lg-23 {
    width: 95.83333%;
  }
  .col-lg-24 {
    width: 100%;
  }
  .col-lg-pull-0 {
    right: auto;
  }
  .col-lg-pull-1 {
    right: 4.16667%;
  }
  .col-lg-pull-2 {
    right: 8.33333%;
  }
  .col-lg-pull-3 {
    right: 12.5%;
  }
  .col-lg-pull-4 {
    right: 16.66667%;
  }
  .col-lg-pull-5 {
    right: 20.83333%;
  }
  .col-lg-pull-6 {
    right: 25%;
  }
  .col-lg-pull-7 {
    right: 29.16667%;
  }
  .col-lg-pull-8 {
    right: 33.33333%;
  }
  .col-lg-pull-9 {
    right: 37.5%;
  }
  .col-lg-pull-10 {
    right: 41.66667%;
  }
  .col-lg-pull-11 {
    right: 45.83333%;
  }
  .col-lg-pull-12 {
    right: 50%;
  }
  .col-lg-pull-13 {
    right: 54.16667%;
  }
  .col-lg-pull-14 {
    right: 58.33333%;
  }
  .col-lg-pull-15 {
    right: 62.5%;
  }
  .col-lg-pull-16 {
    right: 66.66667%;
  }
  .col-lg-pull-17 {
    right: 70.83333%;
  }
  .col-lg-pull-18 {
    right: 75%;
  }
  .col-lg-pull-19 {
    right: 79.16667%;
  }
  .col-lg-pull-20 {
    right: 83.33333%;
  }
  .col-lg-pull-21 {
    right: 87.5%;
  }
  .col-lg-pull-22 {
    right: 91.66667%;
  }
  .col-lg-pull-23 {
    right: 95.83333%;
  }
  .col-lg-pull-24 {
    right: 100%;
  }
  .col-lg-push-0 {
    left: auto;
  }
  .col-lg-push-1 {
    left: 4.16667%;
  }
  .col-lg-push-2 {
    left: 8.33333%;
  }
  .col-lg-push-3 {
    left: 12.5%;
  }
  .col-lg-push-4 {
    left: 16.66667%;
  }
  .col-lg-push-5 {
    left: 20.83333%;
  }
  .col-lg-push-6 {
    left: 25%;
  }
  .col-lg-push-7 {
    left: 29.16667%;
  }
  .col-lg-push-8 {
    left: 33.33333%;
  }
  .col-lg-push-9 {
    left: 37.5%;
  }
  .col-lg-push-10 {
    left: 41.66667%;
  }
  .col-lg-push-11 {
    left: 45.83333%;
  }
  .col-lg-push-12 {
    left: 50%;
  }
  .col-lg-push-13 {
    left: 54.16667%;
  }
  .col-lg-push-14 {
    left: 58.33333%;
  }
  .col-lg-push-15 {
    left: 62.5%;
  }
  .col-lg-push-16 {
    left: 66.66667%;
  }
  .col-lg-push-17 {
    left: 70.83333%;
  }
  .col-lg-push-18 {
    left: 75%;
  }
  .col-lg-push-19 {
    left: 79.16667%;
  }
  .col-lg-push-20 {
    left: 83.33333%;
  }
  .col-lg-push-21 {
    left: 87.5%;
  }
  .col-lg-push-22 {
    left: 91.66667%;
  }
  .col-lg-push-23 {
    left: 95.83333%;
  }
  .col-lg-push-24 {
    left: 100%;
  }
  .col-lg-offset-0 {
    margin-left: 0%;
  }
  .col-lg-offset-1 {
    margin-left: 4.16667%;
  }
  .col-lg-offset-2 {
    margin-left: 8.33333%;
  }
  .col-lg-offset-3 {
    margin-left: 12.5%;
  }
  .col-lg-offset-4 {
    margin-left: 16.66667%;
  }
  .col-lg-offset-5 {
    margin-left: 20.83333%;
  }
  .col-lg-offset-6 {
    margin-left: 25%;
  }
  .col-lg-offset-7 {
    margin-left: 29.16667%;
  }
  .col-lg-offset-8 {
    margin-left: 33.33333%;
  }
  .col-lg-offset-9 {
    margin-left: 37.5%;
  }
  .col-lg-offset-10 {
    margin-left: 41.66667%;
  }
  .col-lg-offset-11 {
    margin-left: 45.83333%;
  }
  .col-lg-offset-12 {
    margin-left: 50%;
  }
  .col-lg-offset-13 {
    margin-left: 54.16667%;
  }
  .col-lg-offset-14 {
    margin-left: 58.33333%;
  }
  .col-lg-offset-15 {
    margin-left: 62.5%;
  }
  .col-lg-offset-16 {
    margin-left: 66.66667%;
  }
  .col-lg-offset-17 {
    margin-left: 70.83333%;
  }
  .col-lg-offset-18 {
    margin-left: 75%;
  }
  .col-lg-offset-19 {
    margin-left: 79.16667%;
  }
  .col-lg-offset-20 {
    margin-left: 83.33333%;
  }
  .col-lg-offset-21 {
    margin-left: 87.5%;
  }
  .col-lg-offset-22 {
    margin-left: 91.66667%;
  }
  .col-lg-offset-23 {
    margin-left: 95.83333%;
  }
  .col-lg-offset-24 {
    margin-left: 100%;
  }
}

fieldset {
  padding: 0;
  margin: 0;
  border: 0;
  min-width: 0;
}

legend {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: 20px;
  font-size: 21px;
  line-height: inherit;
  color: #333333;
  border: 0;
  border-bottom: 1px solid #e5e5e5;
}

label {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 5px;
  font-weight: bold;
}

input[type="search"] {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

input[type="radio"],
input[type="checkbox"] {
  margin: 4px 0 0;
  margin-top: 1px \9;
  line-height: normal;
}

input[type="file"] {
  display: block;
}

input[type="range"] {
  display: block;
  width: 100%;
}

select[multiple],
select[size] {
  height: auto;
}

input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

output {
  display: block;
  padding-top: 7px;
  font-size: 14px;
  line-height: 1.42857;
  color: #555555;
}

.form-control {
  display: block;
  width: 100%;
  height: 34px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857;
  color: #555555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}

.form-control:focus {
  border-color: #66afe9;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
}

.form-control::-moz-placeholder {
  color: #999;
  opacity: 1;
}

.form-control:-ms-input-placeholder {
  color: #999;
}

.form-control::-webkit-input-placeholder {
  color: #999;
}

.form-control::-ms-expand {
  border: 0;
  background-color: transparent;
}

.form-control[disabled], .form-control[readonly],
fieldset[disabled] .form-control {
  background-color: #eeeeee;
  opacity: 1;
}

.form-control[disabled],
fieldset[disabled] .form-control {
  cursor: not-allowed;
}

textarea.form-control {
  height: auto;
}

input[type="search"] {
  -webkit-appearance: none;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  input[type="date"].form-control,
  input[type="time"].form-control,
  input[type="datetime-local"].form-control,
  input[type="month"].form-control {
    line-height: 34px;
  }
  input[type="date"].input-sm, .input-group-sm > input.form-control[type="date"],
  .input-group-sm > input.input-group-addon[type="date"],
  .input-group-sm > .input-group-btn > input.btn[type="date"],
  .input-group-sm input[type="date"],
  input[type="time"].input-sm,
  .input-group-sm > input.form-control[type="time"],
  .input-group-sm > input.input-group-addon[type="time"],
  .input-group-sm > .input-group-btn > input.btn[type="time"],
  .input-group-sm
  input[type="time"],
  input[type="datetime-local"].input-sm,
  .input-group-sm > input.form-control[type="datetime-local"],
  .input-group-sm > input.input-group-addon[type="datetime-local"],
  .input-group-sm > .input-group-btn > input.btn[type="datetime-local"],
  .input-group-sm
  input[type="datetime-local"],
  input[type="month"].input-sm,
  .input-group-sm > input.form-control[type="month"],
  .input-group-sm > input.input-group-addon[type="month"],
  .input-group-sm > .input-group-btn > input.btn[type="month"],
  .input-group-sm
  input[type="month"] {
    line-height: 30px;
  }
  input[type="date"].input-lg, .input-group-lg > input.form-control[type="date"],
  .input-group-lg > input.input-group-addon[type="date"],
  .input-group-lg > .input-group-btn > input.btn[type="date"],
  .input-group-lg input[type="date"],
  input[type="time"].input-lg,
  .input-group-lg > input.form-control[type="time"],
  .input-group-lg > input.input-group-addon[type="time"],
  .input-group-lg > .input-group-btn > input.btn[type="time"],
  .input-group-lg
  input[type="time"],
  input[type="datetime-local"].input-lg,
  .input-group-lg > input.form-control[type="datetime-local"],
  .input-group-lg > input.input-group-addon[type="datetime-local"],
  .input-group-lg > .input-group-btn > input.btn[type="datetime-local"],
  .input-group-lg
  input[type="datetime-local"],
  input[type="month"].input-lg,
  .input-group-lg > input.form-control[type="month"],
  .input-group-lg > input.input-group-addon[type="month"],
  .input-group-lg > .input-group-btn > input.btn[type="month"],
  .input-group-lg
  input[type="month"] {
    line-height: 46px;
  }
}

.form-group {
  margin-bottom: 15px;
}

.radio,
.checkbox {
  position: relative;
  display: block;
  margin-top: 10px;
  margin-bottom: 10px;
}

.radio label,
.checkbox label {
  min-height: 20px;
  padding-left: 20px;
  margin-bottom: 0;
  font-weight: normal;
  cursor: pointer;
}

.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
  position: absolute;
  margin-left: -20px;
  margin-top: 4px \9;
}

.radio + .radio,
.checkbox + .checkbox {
  margin-top: -5px;
}

.radio-inline,
.checkbox-inline {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  margin-bottom: 0;
  vertical-align: middle;
  font-weight: normal;
  cursor: pointer;
}

.radio-inline + .radio-inline,
.checkbox-inline + .checkbox-inline {
  margin-top: 0;
  margin-left: 10px;
}

input[type="radio"][disabled], input[type="radio"].disabled,
fieldset[disabled] input[type="radio"],
input[type="checkbox"][disabled],
input[type="checkbox"].disabled,
fieldset[disabled]
input[type="checkbox"] {
  cursor: not-allowed;
}

.radio-inline.disabled,
fieldset[disabled] .radio-inline,
.checkbox-inline.disabled,
fieldset[disabled]
.checkbox-inline {
  cursor: not-allowed;
}

.radio.disabled label,
fieldset[disabled] .radio label,
.checkbox.disabled label,
fieldset[disabled]
.checkbox label {
  cursor: not-allowed;
}

.form-control-static {
  padding-top: 7px;
  padding-bottom: 7px;
  margin-bottom: 0;
  min-height: 34px;
}

.form-control-static.input-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, .form-control-static.input-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 {
  padding-left: 0;
  padding-right: 0;
}

.input-sm, .input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}

select.input-sm, .input-group-sm > select.form-control,
.input-group-sm > select.input-group-addon,
.input-group-sm > .input-group-btn > select.btn {
  height: 30px;
  line-height: 30px;
}

textarea.input-sm, .input-group-sm > textarea.form-control,
.input-group-sm > textarea.input-group-addon,
.input-group-sm > .input-group-btn > textarea.btn,
select[multiple].input-sm,
.input-group-sm > select.form-control[multiple],
.input-group-sm > select.input-group-addon[multiple],
.input-group-sm > .input-group-btn > select.btn[multiple] {
  height: auto;
}

.form-group-sm .form-control {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}

.form-group-sm select.form-control {
  height: 30px;
  line-height: 30px;
}

.form-group-sm textarea.form-control,
.form-group-sm select[multiple].form-control {
  height: auto;
}

.form-group-sm .form-control-static {
  height: 30px;
  min-height: 32px;
  padding: 6px 10px;
  font-size: 12px;
  line-height: 1.5;
}

.input-lg, .input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px;
}

select.input-lg, .input-group-lg > select.form-control,
.input-group-lg > select.input-group-addon,
.input-group-lg > .input-group-btn > select.btn {
  height: 46px;
  line-height: 46px;
}

textarea.input-lg, .input-group-lg > textarea.form-control,
.input-group-lg > textarea.input-group-addon,
.input-group-lg > .input-group-btn > textarea.btn,
select[multiple].input-lg,
.input-group-lg > select.form-control[multiple],
.input-group-lg > select.input-group-addon[multiple],
.input-group-lg > .input-group-btn > select.btn[multiple] {
  height: auto;
}

.form-group-lg .form-control {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px;
}

.form-group-lg select.form-control {
  height: 46px;
  line-height: 46px;
}

.form-group-lg textarea.form-control,
.form-group-lg select[multiple].form-control {
  height: auto;
}

.form-group-lg .form-control-static {
  height: 46px;
  min-height: 38px;
  padding: 11px 16px;
  font-size: 18px;
  line-height: 1.33333;
}

.has-feedback {
  position: relative;
}

.has-feedback .form-control {
  padding-right: 42.5px;
}

.form-control-feedback {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  display: block;
  width: 34px;
  height: 34px;
  line-height: 34px;
  text-align: center;
  pointer-events: none;
}

.input-lg + .form-control-feedback, .input-group-lg > .form-control + .form-control-feedback, .input-group-lg > .input-group-addon + .form-control-feedback, .input-group-lg > .input-group-btn > .btn + .form-control-feedback,
.input-group-lg + .form-control-feedback,
.form-group-lg .form-control + .form-control-feedback {
  width: 46px;
  height: 46px;
  line-height: 46px;
}

.input-sm + .form-control-feedback, .input-group-sm > .form-control + .form-control-feedback, .input-group-sm > .input-group-addon + .form-control-feedback, .input-group-sm > .input-group-btn > .btn + .form-control-feedback,
.input-group-sm + .form-control-feedback,
.form-group-sm .form-control + .form-control-feedback {
  width: 30px;
  height: 30px;
  line-height: 30px;
}

.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline,
.has-success.radio label,
.has-success.checkbox label,
.has-success.radio-inline label,
.has-success.checkbox-inline label {
  color: #3c763d;
}

.has-success .form-control {
  border-color: #3c763d;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}

.has-success .form-control:focus {
  border-color: #2b542c;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
}

.has-success .input-group-addon {
  color: #3c763d;
  border-color: #3c763d;
  background-color: #dff0d8;
}

.has-success .form-control-feedback {
  color: #3c763d;
}

.has-warning .help-block,
.has-warning .control-label,
.has-warning .radio,
.has-warning .checkbox,
.has-warning .radio-inline,
.has-warning .checkbox-inline,
.has-warning.radio label,
.has-warning.checkbox label,
.has-warning.radio-inline label,
.has-warning.checkbox-inline label {
  color: #8a6d3b;
}

.has-warning .form-control {
  border-color: #8a6d3b;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}

.has-warning .form-control:focus {
  border-color: #66512c;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
}

.has-warning .input-group-addon {
  color: #8a6d3b;
  border-color: #8a6d3b;
  background-color: #fcf8e3;
}

.has-warning .form-control-feedback {
  color: #8a6d3b;
}

.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline,
.has-error.radio label,
.has-error.checkbox label,
.has-error.radio-inline label,
.has-error.checkbox-inline label {
  color: #a94442;
}

.has-error .form-control {
  border-color: #a94442;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}

.has-error .form-control:focus {
  border-color: #843534;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
}

.has-error .input-group-addon {
  color: #a94442;
  border-color: #a94442;
  background-color: #f2dede;
}

.has-error .form-control-feedback {
  color: #a94442;
}

.has-feedback label ~ .form-control-feedback {
  top: 25px;
}

.has-feedback label.sr-only ~ .form-control-feedback {
  top: 0;
}

.help-block {
  display: block;
  margin-top: 5px;
  margin-bottom: 10px;
  color: #737373;
}

@media (min-width: 768px) {
  .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;
    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 .control-label {
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .radio,
  .form-inline .checkbox {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .radio label,
  .form-inline .checkbox label {
    padding-left: 0;
  }
  .form-inline .radio input[type="radio"],
  .form-inline .checkbox input[type="checkbox"] {
    position: relative;
    margin-left: 0;
  }
  .form-inline .has-feedback .form-control-feedback {
    top: 0;
  }
}

.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 7px;
}

.form-horizontal .radio,
.form-horizontal .checkbox {
  min-height: 27px;
}

.form-horizontal .form-group {
  margin-left: -15px;
  margin-right: -15px;
}

.form-horizontal .form-group:before, .form-horizontal .form-group:after {
  content: " ";
  display: table;
}

.form-horizontal .form-group:after {
  clear: both;
}

@media (min-width: 768px) {
  .form-horizontal .control-label {
    text-align: right;
    margin-bottom: 0;
    padding-top: 7px;
  }
}

.form-horizontal .has-feedback .form-control-feedback {
  right: 15px;
}

@media (min-width: 768px) {
  .form-horizontal .form-group-lg .control-label {
    padding-top: 11px;
    font-size: 18px;
  }
}

@media (min-width: 768px) {
  .form-horizontal .form-group-sm .control-label {
    padding-top: 6px;
    font-size: 12px;
  }
}

.btn {
  display: inline-block;
  margin-bottom: 0;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
  touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  white-space: nowrap;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857;
  border-radius: 4px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.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:hover, .btn:focus, .btn.focus {
  color: #333;
  text-decoration: none;
}

.btn:active, .btn.active {
  outline: 0;
  background-image: none;
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn.disabled, .btn[disabled],
fieldset[disabled] .btn {
  cursor: not-allowed;
  opacity: 0.65;
  filter: alpha(opacity=65);
  -webkit-box-shadow: none;
  box-shadow: none;
}

a.btn.disabled,
fieldset[disabled] a.btn {
  pointer-events: none;
}

.btn-default {
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}

.btn-default:focus, .btn-default.focus {
  color: #333;
  background-color: #e6e6e6;
  border-color: #8c8c8c;
}

.btn-default:hover {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}

.btn-default:active, .btn-default.active,
.open > .btn-default.dropdown-toggle {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}

.btn-default:active:hover, .btn-default:active:focus, .btn-default:active.focus, .btn-default.active:hover, .btn-default.active:focus, .btn-default.active.focus,
.open > .btn-default.dropdown-toggle:hover,
.open > .btn-default.dropdown-toggle:focus,
.open > .btn-default.dropdown-toggle.focus {
  color: #333;
  background-color: #d4d4d4;
  border-color: #8c8c8c;
}

.btn-default:active, .btn-default.active,
.open > .btn-default.dropdown-toggle {
  background-image: none;
}

.btn-default.disabled:hover, .btn-default.disabled:focus, .btn-default.disabled.focus, .btn-default[disabled]:hover, .btn-default[disabled]:focus, .btn-default[disabled].focus,
fieldset[disabled] .btn-default:hover,
fieldset[disabled] .btn-default:focus,
fieldset[disabled] .btn-default.focus {
  background-color: #fff;
  border-color: #ccc;
}

.btn-default .badge {
  color: #fff;
  background-color: #333;
}

.btn-primary {
  color: #fff;
  background-color: #337ab7;
  border-color: #2e6da4;
}

.btn-primary:focus, .btn-primary.focus {
  color: #fff;
  background-color: #286090;
  border-color: #122b40;
}

.btn-primary:hover {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}

.btn-primary:active, .btn-primary.active,
.open > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}

.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: #204d74;
  border-color: #122b40;
}

.btn-primary:active, .btn-primary.active,
.open > .btn-primary.dropdown-toggle {
  background-image: none;
}

.btn-primary.disabled:hover, .btn-primary.disabled:focus, .btn-primary.disabled.focus, .btn-primary[disabled]:hover, .btn-primary[disabled]:focus, .btn-primary[disabled].focus,
fieldset[disabled] .btn-primary:hover,
fieldset[disabled] .btn-primary:focus,
fieldset[disabled] .btn-primary.focus {
  background-color: #337ab7;
  border-color: #2e6da4;
}

.btn-primary .badge {
  color: #337ab7;
  background-color: #fff;
}

.btn-success {
  color: #fff;
  background-color: #5cb85c;
  border-color: #4cae4c;
}

.btn-success:focus, .btn-success.focus {
  color: #fff;
  background-color: #449d44;
  border-color: #255625;
}

.btn-success:hover {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}

.btn-success:active, .btn-success.active,
.open > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}

.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: #255625;
}

.btn-success:active, .btn-success.active,
.open > .btn-success.dropdown-toggle {
  background-image: none;
}

.btn-success.disabled:hover, .btn-success.disabled:focus, .btn-success.disabled.focus, .btn-success[disabled]:hover, .btn-success[disabled]:focus, .btn-success[disabled].focus,
fieldset[disabled] .btn-success:hover,
fieldset[disabled] .btn-success:focus,
fieldset[disabled] .btn-success.focus {
  background-color: #5cb85c;
  border-color: #4cae4c;
}

.btn-success .badge {
  color: #5cb85c;
  background-color: #fff;
}

.btn-info {
  color: #fff;
  background-color: #5bc0de;
  border-color: #46b8da;
}

.btn-info:focus, .btn-info.focus {
  color: #fff;
  background-color: #31b0d5;
  border-color: #1b6d85;
}

.btn-info:hover {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}

.btn-info:active, .btn-info.active,
.open > .btn-info.dropdown-toggle {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}

.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: #1b6d85;
}

.btn-info:active, .btn-info.active,
.open > .btn-info.dropdown-toggle {
  background-image: none;
}

.btn-info.disabled:hover, .btn-info.disabled:focus, .btn-info.disabled.focus, .btn-info[disabled]:hover, .btn-info[disabled]:focus, .btn-info[disabled].focus,
fieldset[disabled] .btn-info:hover,
fieldset[disabled] .btn-info:focus,
fieldset[disabled] .btn-info.focus {
  background-color: #5bc0de;
  border-color: #46b8da;
}

.btn-info .badge {
  color: #5bc0de;
  background-color: #fff;
}

.btn-warning {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #eea236;
}

.btn-warning:focus, .btn-warning.focus {
  color: #fff;
  background-color: #ec971f;
  border-color: #985f0d;
}

.btn-warning:hover {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}

.btn-warning:active, .btn-warning.active,
.open > .btn-warning.dropdown-toggle {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}

.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: #985f0d;
}

.btn-warning:active, .btn-warning.active,
.open > .btn-warning.dropdown-toggle {
  background-image: none;
}

.btn-warning.disabled:hover, .btn-warning.disabled:focus, .btn-warning.disabled.focus, .btn-warning[disabled]:hover, .btn-warning[disabled]:focus, .btn-warning[disabled].focus,
fieldset[disabled] .btn-warning:hover,
fieldset[disabled] .btn-warning:focus,
fieldset[disabled] .btn-warning.focus {
  background-color: #f0ad4e;
  border-color: #eea236;
}

.btn-warning .badge {
  color: #f0ad4e;
  background-color: #fff;
}

.btn-danger {
  color: #fff;
  background-color: #d9534f;
  border-color: #d43f3a;
}

.btn-danger:focus, .btn-danger.focus {
  color: #fff;
  background-color: #c9302c;
  border-color: #761c19;
}

.btn-danger:hover {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}

.btn-danger:active, .btn-danger.active,
.open > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}

.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: #ac2925;
  border-color: #761c19;
}

.btn-danger:active, .btn-danger.active,
.open > .btn-danger.dropdown-toggle {
  background-image: none;
}

.btn-danger.disabled:hover, .btn-danger.disabled:focus, .btn-danger.disabled.focus, .btn-danger[disabled]:hover, .btn-danger[disabled]:focus, .btn-danger[disabled].focus,
fieldset[disabled] .btn-danger:hover,
fieldset[disabled] .btn-danger:focus,
fieldset[disabled] .btn-danger.focus {
  background-color: #d9534f;
  border-color: #d43f3a;
}

.btn-danger .badge {
  color: #d9534f;
  background-color: #fff;
}

.btn-link {
  color: #337ab7;
  font-weight: normal;
  border-radius: 0;
}

.btn-link, .btn-link:active, .btn-link.active, .btn-link[disabled],
fieldset[disabled] .btn-link {
  background-color: transparent;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.btn-link, .btn-link:hover, .btn-link:focus, .btn-link:active {
  border-color: transparent;
}

.btn-link:hover, .btn-link:focus {
  color: #23527c;
  text-decoration: underline;
  background-color: transparent;
}

.btn-link[disabled]:hover, .btn-link[disabled]:focus,
fieldset[disabled] .btn-link:hover,
fieldset[disabled] .btn-link:focus {
  color: #777777;
  text-decoration: none;
}

.btn-lg, .btn-group-lg > .btn {
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px;
}

.btn-sm, .btn-group-sm > .btn {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}

.btn-xs, .btn-group-xs > .btn {
  padding: 1px 5px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}

.btn-block {
  display: block;
  width: 100%;
}

.btn-block + .btn-block {
  margin-top: 5px;
}

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%;
}

.caret {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 2px;
  vertical-align: middle;
  border-top: 4px dashed;
  border-top: 4px solid \9;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent;
}

.dropup,
.dropdown {
  position: relative;
}

.dropdown-toggle:focus {
  outline: 0;
}

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 160px;
  padding: 5px 0;
  margin: 2px 0 0;
  list-style: none;
  font-size: 14px;
  text-align: left;
  background-color: #fff;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 4px;
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  background-clip: padding-box;
}

.dropdown-menu.pull-right {
  right: 0;
  left: auto;
}

.dropdown-menu .divider {
  height: 1px;
  margin: 9px 0;
  overflow: hidden;
  background-color: #e5e5e5;
}

.dropdown-menu > li > a {
  display: block;
  padding: 3px 20px;
  clear: both;
  font-weight: normal;
  line-height: 1.42857;
  color: #333333;
  white-space: nowrap;
}

.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus {
  text-decoration: none;
  color: #262626;
  background-color: #f5f5f5;
}

.dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown-menu > .active > a:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  background-color: #337ab7;
}

.dropdown-menu > .disabled > a, .dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus {
  color: #777777;
}

.dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus {
  text-decoration: none;
  background-color: transparent;
  background-image: none;
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
  cursor: not-allowed;
}

.open > .dropdown-menu {
  display: block;
}

.open > a {
  outline: 0;
}

.dropdown-menu-right {
  left: auto;
  right: 0;
}

.dropdown-menu-left {
  left: 0;
  right: auto;
}

.dropdown-header {
  display: block;
  padding: 3px 20px;
  font-size: 12px;
  line-height: 1.42857;
  color: #777777;
  white-space: nowrap;
}

.dropdown-backdrop {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  z-index: 990;
}

.pull-right > .dropdown-menu {
  right: 0;
  left: auto;
}

.dropup .caret,
.navbar-fixed-bottom .dropdown .caret {
  border-top: 0;
  border-bottom: 4px dashed;
  border-bottom: 4px solid \9;
  content: "";
}

.dropup .dropdown-menu,
.navbar-fixed-bottom .dropdown .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-bottom: 2px;
}

@media (min-width: 768px) {
  .navbar-right .dropdown-menu {
    right: 0;
    left: auto;
  }
  .navbar-right .dropdown-menu-left {
    left: 0;
    right: auto;
  }
}

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-block;
  vertical-align: middle;
}

.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  float: left;
}

.btn-group > .btn:hover, .btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
.btn-group-vertical > .btn:hover,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  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: -5px;
}

.btn-toolbar:before, .btn-toolbar:after {
  content: " ";
  display: table;
}

.btn-toolbar:after {
  clear: both;
}

.btn-toolbar .btn,
.btn-toolbar .btn-group,
.btn-toolbar .input-group {
  float: left;
}

.btn-toolbar > .btn,
.btn-toolbar > .btn-group,
.btn-toolbar > .input-group {
  margin-left: 5px;
}

.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-group > .btn + .dropdown-toggle {
  padding-left: 8px;
  padding-right: 8px;
}

.btn-group > .btn-lg + .dropdown-toggle, .btn-group-lg.btn-group > .btn + .dropdown-toggle {
  padding-left: 12px;
  padding-right: 12px;
}

.btn-group.open .dropdown-toggle {
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-group.open .dropdown-toggle.btn-link {
  -webkit-box-shadow: none;
  box-shadow: none;
}

.btn .caret {
  margin-left: 0;
}

.btn-lg .caret, .btn-group-lg > .btn .caret {
  border-width: 5px 5px 0;
  border-bottom-width: 0;
}

.dropup .btn-lg .caret, .dropup .btn-group-lg > .btn .caret {
  border-width: 0 5px 5px;
}

.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:before, .btn-group-vertical > .btn-group:after {
  content: " ";
  display: table;
}

.btn-group-vertical > .btn-group:after {
  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-top-right-radius: 4px;
  border-top-left-radius: 4px;
  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;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
}

.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;
}

.btn-group-justified {
  display: table;
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
}

.btn-group-justified > .btn,
.btn-group-justified > .btn-group {
  float: none;
  display: table-cell;
  width: 1%;
}

.btn-group-justified > .btn-group .btn {
  width: 100%;
}

.btn-group-justified > .btn-group .dropdown-menu {
  left: auto;
}

[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;
  display: table;
  border-collapse: separate;
}

.input-group[class*="col-"] {
  float: none;
  padding-left: 0;
  padding-right: 0;
}

.input-group .form-control {
  position: relative;
  z-index: 2;
  float: left;
  width: 100%;
  margin-bottom: 0;
}

.input-group .form-control:focus {
  z-index: 3;
}

.input-group-addon,
.input-group-btn,
.input-group .form-control {
  display: table-cell;
}

.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 {
  width: 1%;
  white-space: nowrap;
  vertical-align: middle;
}

.input-group-addon {
  padding: 6px 12px;
  font-size: 14px;
  font-weight: normal;
  line-height: 1;
  color: #555555;
  text-align: center;
  background-color: #eeeeee;
  border: 1px solid #ccc;
  border-radius: 4px;
}

.input-group-addon.input-sm,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .input-group-addon.btn {
  padding: 5px 10px;
  font-size: 12px;
  border-radius: 3px;
}

.input-group-addon.input-lg,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .input-group-addon.btn {
  padding: 10px 16px;
  font-size: 18px;
  border-radius: 6px;
}

.input-group-addon input[type="radio"],
.input-group-addon input[type="checkbox"] {
  margin-top: 0;
}

.input-group .form-control:first-child,
.input-group-addon:first-child,
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group > .btn,
.input-group-btn:first-child > .dropdown-toggle,
.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}

.input-group-addon:first-child {
  border-right: 0;
}

.input-group .form-control:last-child,
.input-group-addon:last-child,
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group > .btn,
.input-group-btn:last-child > .dropdown-toggle,
.input-group-btn:first-child > .btn:not(:first-child),
.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}

.input-group-addon:last-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:hover, .input-group-btn > .btn:focus, .input-group-btn > .btn:active {
  z-index: 2;
}

.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group {
  margin-right: -1px;
}

.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group {
  z-index: 2;
  margin-left: -1px;
}

.modal-open {
  overflow: hidden;
}

.modal {
  display: none;
  overflow: hidden;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1050;
  -webkit-overflow-scrolling: touch;
  outline: 0;
}

.modal.fade .modal-dialog {
  -webkit-transform: translate(0, -25%);
  -ms-transform: translate(0, -25%);
  -o-transform: translate(0, -25%);
  transform: translate(0, -25%);
  -webkit-transition: -webkit-transform 0.3s ease-out;
  -moz-transition: -moz-transform 0.3s ease-out;
  -o-transition: -o-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
}

.modal.in .modal-dialog {
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0);
}

.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}

.modal-dialog {
  position: relative;
  width: auto;
  margin: 10px;
}

.modal-content {
  position: relative;
  background-color: #fff;
  border: 1px solid #999;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  background-clip: padding-box;
  outline: 0;
}

.modal-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  background-color: #000;
}

.modal-backdrop.fade {
  opacity: 0;
  filter: alpha(opacity=0);
}

.modal-backdrop.in {
  opacity: 0.5;
  filter: alpha(opacity=50);
}

.modal-header {
  padding: 15px;
  border-bottom: 1px solid #e5e5e5;
}

.modal-header:before, .modal-header:after {
  content: " ";
  display: table;
}

.modal-header:after {
  clear: both;
}

.modal-header .close {
  margin-top: -2px;
}

.modal-title {
  margin: 0;
  line-height: 1.42857;
}

.modal-body {
  position: relative;
  padding: 15px;
}

.modal-footer {
  padding: 15px;
  text-align: right;
  border-top: 1px solid #e5e5e5;
}

.modal-footer:before, .modal-footer:after {
  content: " ";
  display: table;
}

.modal-footer:after {
  clear: both;
}

.modal-footer .btn + .btn {
  margin-left: 5px;
  margin-bottom: 0;
}

.modal-footer .btn-group .btn + .btn {
  margin-left: -1px;
}

.modal-footer .btn-block + .btn-block {
  margin-left: 0;
}

.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}

@media (min-width: 768px) {
  .modal-dialog {
    width: 600px;
    margin: 30px auto;
  }
  .modal-content {
    -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
  }
  .modal-sm {
    width: 300px;
  }
}

@media (min-width: 992px) {
  .modal-lg {
    width: 900px;
  }
}

.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  letter-spacing: normal;
  line-break: auto;
  line-height: 1.42857;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  white-space: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  font-size: 12px;
  opacity: 0;
  filter: alpha(opacity=0);
}

.tooltip.in {
  opacity: 0.9;
  filter: alpha(opacity=90);
}

.tooltip.top {
  margin-top: -3px;
  padding: 5px 0;
}

.tooltip.right {
  margin-left: 3px;
  padding: 0 5px;
}

.tooltip.bottom {
  margin-top: 3px;
  padding: 5px 0;
}

.tooltip.left {
  margin-left: -3px;
  padding: 0 5px;
}

.tooltip-inner {
  max-width: 200px;
  padding: 3px 8px;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 4px;
}

.tooltip-arrow {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}

.tooltip.top .tooltip-arrow {
  bottom: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}

.tooltip.top-left .tooltip-arrow {
  bottom: 0;
  right: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}

.tooltip.top-right .tooltip-arrow {
  bottom: 0;
  left: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}

.tooltip.right .tooltip-arrow {
  top: 50%;
  left: 0;
  margin-top: -5px;
  border-width: 5px 5px 5px 0;
  border-right-color: #000;
}

.tooltip.left .tooltip-arrow {
  top: 50%;
  right: 0;
  margin-top: -5px;
  border-width: 5px 0 5px 5px;
  border-left-color: #000;
}

.tooltip.bottom .tooltip-arrow {
  top: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}

.tooltip.bottom-left .tooltip-arrow {
  top: 0;
  right: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}

.tooltip.bottom-right .tooltip-arrow {
  top: 0;
  left: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}

.clearfix:before, .clearfix:after {
  content: " ";
  display: table;
}

.clearfix:after {
  clear: both;
}

.center-block {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.pull-right {
  float: right !important;
}

.pull-left {
  float: left !important;
}

.hide {
  display: none !important;
}

.show {
  display: block !important;
}

.invisible {
  visibility: hidden;
}

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.hidden {
  display: none !important;
}

.affix {
  position: fixed;
}

@-ms-viewport {
  width: device-width;
}

.visible-xs {
  display: none !important;
}

.visible-sm {
  display: none !important;
}

.visible-md {
  display: none !important;
}

.visible-lg {
  display: none !important;
}

.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important;
}

@media (max-width: 767px) {
  .visible-xs {
    display: block !important;
  }
  table.visible-xs {
    display: table !important;
  }
  tr.visible-xs {
    display: table-row !important;
  }
  th.visible-xs,
  td.visible-xs {
    display: table-cell !important;
  }
}

@media (max-width: 767px) {
  .visible-xs-block {
    display: block !important;
  }
}

@media (max-width: 767px) {
  .visible-xs-inline {
    display: inline !important;
  }
}

@media (max-width: 767px) {
  .visible-xs-inline-block {
    display: inline-block !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm {
    display: block !important;
  }
  table.visible-sm {
    display: table !important;
  }
  tr.visible-sm {
    display: table-row !important;
  }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-block {
    display: block !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline {
    display: inline !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline-block {
    display: inline-block !important;
  }
}

@media (min-width: 992px) and (max-width: 1439px) {
  .visible-md {
    display: block !important;
  }
  table.visible-md {
    display: table !important;
  }
  tr.visible-md {
    display: table-row !important;
  }
  th.visible-md,
  td.visible-md {
    display: table-cell !important;
  }
}

@media (min-width: 992px) and (max-width: 1439px) {
  .visible-md-block {
    display: block !important;
  }
}

@media (min-width: 992px) and (max-width: 1439px) {
  .visible-md-inline {
    display: inline !important;
  }
}

@media (min-width: 992px) and (max-width: 1439px) {
  .visible-md-inline-block {
    display: inline-block !important;
  }
}

@media (min-width: 1440px) {
  .visible-lg {
    display: block !important;
  }
  table.visible-lg {
    display: table !important;
  }
  tr.visible-lg {
    display: table-row !important;
  }
  th.visible-lg,
  td.visible-lg {
    display: table-cell !important;
  }
}

@media (min-width: 1440px) {
  .visible-lg-block {
    display: block !important;
  }
}

@media (min-width: 1440px) {
  .visible-lg-inline {
    display: inline !important;
  }
}

@media (min-width: 1440px) {
  .visible-lg-inline-block {
    display: inline-block !important;
  }
}

@media (max-width: 767px) {
  .hidden-xs {
    display: none !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important;
  }
}

@media (min-width: 992px) and (max-width: 1439px) {
  .hidden-md {
    display: none !important;
  }
}

@media (min-width: 1440px) {
  .hidden-lg {
    display: none !important;
  }
}

.visible-print {
  display: none !important;
}

@media print {
  .visible-print {
    display: block !important;
  }
  table.visible-print {
    display: table !important;
  }
  tr.visible-print {
    display: table-row !important;
  }
  th.visible-print,
  td.visible-print {
    display: table-cell !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;
  }
}

/* ==========================================================================
   & reset
   ========================================================================== */
ul,
h1,
h2,
h3,
h4,
p {
  margin: 0;
  padding: 0;
}

h1,
h2,
h3,
h4 {
  font-weight: inherit;
}

*, *:before, *:after {
  background-repeat: no-repeat;
}

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

input,
button,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  text-transform: inherit;
}

img {
  vertical-align: middle;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

button:focus,
[type="text"]:focus,
[type="password"]:focus {
  outline: 0;
}

/* ==========================================================================
   & base
   ========================================================================== */
html {
  font-size: 62.5%;
  /* 16px > 10px (base 10) */
}

@media (max-width: 1439px) {
  html {
    font-size: 56.3%;
    /* 16px > 9px (base 9) */
  }
}

body {
  font-family: "Apercu", Arial, sans-serif;
  font-size: 1.5rem;
  line-height: 1.3;
  color: #000;
  background-color: #FFF;
  position: relative;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

@media (max-width: 767px) {
  body {
    font-size: 1.77778rem;
  }
}

body:before {
  display: none;
  content: "screen-xxs";
}

@media (min-width: 480px) {
  body:before {
    content: "screen-xs";
  }
}

@media (min-width: 768px) {
  body:before {
    content: "screen-sm";
  }
}

@media (min-width: 992px) {
  body:before {
    content: "screen-md";
  }
}

@media (min-width: 1440px) {
  body:before {
    content: "screen-lg";
  }
}

body:after {
  display: none;
  content: "mobile";
}

@media (min-width: 768px) {
  body:after {
    content: "desktop";
  }
}

@media (min-width: 768px) {
  body.page-ddv {
    background-image: url(../images/background/ddv/1920x2308.jpg);
    background-size: contain;
  }
  body.page-ddv.page-ddv-light {
    background-size: cover;
  }
}

body.overflow-hidden {
  overflow: hidden;
}

ul {
  list-style: none;
}

img {
  max-width: 100%;
  height: auto;
}

a {
  text-decoration: none;
  color: inherit;
}

a:focus {
  outline: 0;
}

button {
  border: none;
  background-color: transparent;
  padding: 0;
}

button:focus {
  outline: 0;
}

p {
  margin: 1rem 0 0;
}

p:first-child {
  margin-top: 0;
}

.row.remove-gutter {
  margin-left: 0;
  margin-right: 0;
}

.row.remove-gutter > * {
  padding-left: 0;
  padding-right: 0;
}

.row.gutter-5 {
  margin-left: -5px;
  margin-right: -5px;
}

.row.gutter-5 > * {
  padding-left: 5px;
  padding-right: 5px;
}

.row.gutter-30 {
  margin-left: -30px;
  margin-right: -30px;
}

.row.gutter-30 > * {
  padding-left: 30px;
  padding-right: 30px;
}

.row.is-flex {
  display: flex;
  flex-wrap: wrap;
}

.row-flex {
  margin-left: 0;
  margin-right: 0;
}

@media (min-width: 768px) {
  .row-flex {
    display: flex;
  }
}

.row-flex > * {
  padding-left: 0;
  padding-right: 0;
  float: none;
  flex: 1 1 auto;
  overflow: hidden;
}

.row-table {
  display: table;
  width: 100%;
  table-layout: fixed;
}

.row-table > * {
  display: table-cell;
  vertical-align: top;
}

.tab-content > .tab-pane {
  display: none;
}

.tab-content > .active {
  display: block;
}

.overflow-hidden {
  overflow: hidden;
}

.block {
  display: block;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

.text-center {
  text-align: center;
}

.text-justify {
  text-align: justify;
}

.text-nowrap {
  white-space: nowrap;
}

.text-lowercase {
  text-transform: lowercase;
}

.text-uppercase {
  text-transform: uppercase;
}

.text-capitalize {
  text-transform: capitalize;
}

@media (min-width: 1086px) and (max-width: 1399px) {
  .container {
    width: 970px;
  }
}

@media (max-width: 480px) {
  .col-xxs-full,
  .col-xxs-24 {
    width: 100%;
    float: none;
  }
}

@media (max-width: 480px) {
  .col-xxs-12 {
    width: 50%;
  }
}

.col-xs-fifth,
.col-sm-fifth,
.col-md-fifth,
.col-lg-fifth {
  position: relative;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
  float: left;
}

.col-xs-fifth {
  width: 20%;
}

@media (min-width: 768px) {
  .col-sm-fifth {
    width: 20%;
  }
}

@media (min-width: 992px) {
  .col-md-fifth {
    width: 20%;
  }
}

@media (min-width: 1440px) {
  .col-lg-fifth {
    width: 20%;
  }
}

.js-readmore-content {
  display: none;
}

.js-text-overflow {
  overflow: hidden;
}

.no-js .lazyload {
  display: none;
}

.show-titles h1 {
  outline: 3px dashed red;
  background-color: rgba(255, 0, 0, 0.1);
}

.show-titles h2 {
  outline: 3px dashed blue;
  background-color: rgba(0, 0, 255, 0.1);
}

.show-titles h3 {
  outline: 3px dashed green;
  background-color: rgba(0, 128, 0, 0.1);
}

.show-titles h4 {
  outline: 3px dashed orange;
  background-color: rgba(255, 165, 0, 0.1);
}

@media (min-width: 1440px) {
  .auto-clear .col-lg-1:nth-child(24n+1) {
    clear: left;
  }
  .auto-clear .col-lg-2:nth-child(12n+1) {
    clear: left;
  }
  .auto-clear .col-lg-3:nth-child(8n+1) {
    clear: left;
  }
  .auto-clear .col-lg-4:nth-child(6n+1) {
    clear: left;
  }
  .auto-clear .col-lg-6:nth-child(4n+1) {
    clear: left;
  }
  .auto-clear .col-lg-8:nth-child(3n+1) {
    clear: left;
  }
  .auto-clear .col-lg-12:nth-child(2n+1) {
    clear: left;
  }
}

@media (min-width: 992px) and (max-width: 1439px) {
  .auto-clear .col-md-1:nth-child(24n+1) {
    clear: left;
  }
  .auto-clear .col-md-2:nth-child(12n+1) {
    clear: left;
  }
  .auto-clear .col-md-3:nth-child(8n+1) {
    clear: left;
  }
  .auto-clear .col-md-4:nth-child(6n+1) {
    clear: left;
  }
  .auto-clear .col-md-6:nth-child(4n+1) {
    clear: left;
  }
  .auto-clear .col-md-8:nth-child(3n+1) {
    clear: left;
  }
  .auto-clear .col-md-12:nth-child(2n+1) {
    clear: left;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .auto-clear .col-sm-1:nth-child(24n+1) {
    clear: left;
  }
  .auto-clear .col-sm-2:nth-child(12n+1) {
    clear: left;
  }
  .auto-clear .col-sm-3:nth-child(8n+1) {
    clear: left;
  }
  .auto-clear .col-sm-4:nth-child(6n+1) {
    clear: left;
  }
  .auto-clear .col-sm-6:nth-child(4n+1) {
    clear: left;
  }
  .auto-clear .col-sm-8:nth-child(3n+1) {
    clear: left;
  }
  .auto-clear .col-sm-12:nth-child(2n+1) {
    clear: left;
  }
}

@media (max-width: 767px) {
  .auto-clear .col-xs-1:nth-child(24n+1) {
    clear: left;
  }
  .auto-clear .col-xs-2:nth-child(12n+1) {
    clear: left;
  }
  .auto-clear .col-xs-3:nth-child(8n+1) {
    clear: left;
  }
  .auto-clear .col-xs-4:nth-child(6n+1) {
    clear: left;
  }
  .auto-clear .col-xs-6:nth-child(4n+1) {
    clear: left;
  }
  .auto-clear .col-xs-8:nth-child(3n+1) {
    clear: left;
  }
  .auto-clear .col-xs-12:nth-child(2n+1) {
    clear: left;
  }
}

.style-inherit {
  font-size: inherit;
  font-weight: inherit;
  color: inherit;
}

/* ==========================================================================
   & typography
   ========================================================================== */
@font-face {
  font-family: "iconfont";
  src: url("../font/iconfont.woff2") format("woff2"), url("../font/iconfont.woff") format("woff");
}

@font-face {
  font-family: 'Apercu';
  src: url("../font/apercu-light.woff2") format("woff2"), url("../font/apercu-light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: 'Apercu';
  src: url("../font/apercu-regular.woff2") format("woff2"), url("../font/apercu-regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: 'Apercu';
  src: url("../font/apercu-italic.woff2") format("woff2"), url("../font/apercu-italic.woff") format("woff");
  font-weight: 400;
  font-style: italic;
}

@font-face {
  font-family: 'Apercu';
  src: url("../font/apercu-bold.woff2") format("woff2"), url("../font/apercu-bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
}

@font-face {
  font-family: 'Apercu';
  src: url("../font/apercu-medium.woff2") format("woff2"), url("../font/apercu-medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: 'Spectral';
  src: url("../font/Spectral-Regular.woff2") format("woff2"), url("../font/Spectral-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: 'Spectral';
  src: url("../font/Spectral-Italic.woff2") format("woff2"), url("../font/Spectral-Italic.woff") format("woff");
  font-weight: 400;
  font-style: italic;
}

@font-face {
  font-family: 'Spectral';
  src: url("../font/Spectral-LightItalic.woff2") format("woff2"), url("../font/Spectral-LightItalic.woff") format("woff");
  font-weight: 300;
  font-style: italic;
}

.icon-agenda:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-assistance:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-avion:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-carnet:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-carte:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-casque:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-check:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-close:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-conciergerie:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-datepicker:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-devise:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-facebook:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-fleche-bouton:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-fleche-nav:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-fleche-select:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-fooding:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-google-plus:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-gps:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-guillemet-ferme:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-guillemet-ouvert:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-home:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-horaire:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-instagram:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-likeafriend:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-linkedin:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-liste:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-mail:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-miles:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-pinterest:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-scroll:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-select:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-share:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-slider-left:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-slider-right:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-star-half:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-star:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-tchat:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-tel:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-twitter:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-user:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-wifi:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-youtube:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-co2:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

/* ==========================================================================
   & buttons
   ========================================================================== */
.button {
  display: inline-block;
  font-weight: 700;
  text-align: center;
  vertical-align: middle;
  text-transform: uppercase;
  padding: 2rem 3rem;
  background-color: #0082ad;
  color: #FFF;
  transition: background-color .3s ease-out;
}

@media (max-width: 480px) {
  .button {
    display: block;
    width: 100%;
  }
}

.button.full-width {
  width: 100%;
}

.button.smaller {
  padding-top: 0;
  padding-bottom: 0;
  height: 5rem;
  line-height: 5rem;
}

.button:hover {
  background-color: #2695b9;
}

/* Wobble Horizontal */
.wobble-horizontal {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}

@keyframes vdm-wobble-horizontal {
  8.325% {
    transform: translateX(8px);
  }
  16.65% {
    transform: translateX(-6px);
  }
  24.975% {
    transform: translateX(4px);
  }
  33.3% {
    transform: translateX(-2px);
  }
  41.625% {
    transform: translateX(1px);
  }
  50% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(0);
  }
}

.wobble-horizontal-animated .wobble-horizontal {
  animation-name: vdm-wobble-horizontal;
  animation-duration: 2s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}

/* Wobble vertical */
.wobble-vertical {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  animation-name: vdm-wobble-vertical;
  animation-duration: 2s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
}

@keyframes vdm-wobble-vertical {
  8.325% {
    transform: translateY(8px);
  }
  16.65% {
    transform: translateY(-6px);
  }
  24.975% {
    transform: translateY(4px);
  }
  33.3% {
    transform: translateY(-2px);
  }
  41.625% {
    transform: translateY(1px);
  }
  50% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(0);
  }
}

/* Bounce To Right */
.bounce-to-right {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  transition-property: color, border-color;
  transition-duration: 0.5s;
}

.bounce-to-right:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #339bbd;
  transform: scaleX(0);
  transform-origin: 0 50%;
  transition-property: transform;
  transition-duration: 0.5s;
  transition-timing-function: ease-out;
}

.bounce-to-right:hover, .bounce-to-right:focus, .bounce-to-right:active {
  color: #FFF;
  border-color: #339bbd;
}

.bounce-to-right:hover:before, .bounce-to-right:focus:before, .bounce-to-right:active:before {
  transform: scaleX(1);
  transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
}

.button-alpha {
  display: inline-block;
  font-weight: 700;
  text-align: center;
  vertical-align: middle;
  text-transform: uppercase;
  padding: 2rem 3rem;
  border: 1px solid currentColor;
  transition: background-color .3s ease-out;
}

@media (max-width: 480px) {
  .button-alpha {
    display: block;
    width: 100%;
  }
}

.button-alpha.full-width {
  width: 100%;
}

.button-alpha.smaller {
  padding-top: 0;
  padding-bottom: 0;
  height: 5rem;
  line-height: 5rem;
}

.button-alpha:hover {
  box-shadow: 0px 0px 0px 1px inset;
  background-color: rgba(255, 255, 255, 0.1);
}

.button-alpha.bounce-to-right {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  transition-property: color, border-color;
  transition-duration: 0.5s;
}

.button-alpha.bounce-to-right:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(138, 138, 138, 0.5);
  transform: scaleX(0);
  transform-origin: 0 50%;
  transition-property: transform;
  transition-duration: 0.5s;
  transition-timing-function: ease-out;
}

.button-alpha.bounce-to-right:hover, .button-alpha.bounce-to-right:focus, .button-alpha.bounce-to-right:active {
  color: #FFF;
  border-color: rgba(138, 138, 138, 0.5);
}

.button-alpha.bounce-to-right:hover:before, .button-alpha.bounce-to-right:focus:before, .button-alpha.bounce-to-right:active:before {
  transform: scaleX(1);
  transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
}

.button-beta {
  padding-left: 2rem;
  padding-right: 2rem;
  display: inline-block;
  height: 5rem;
  line-height: 5rem;
  font-size: 1.4rem;
  font-weight: 500;
  text-transform: uppercase;
  background-color: #FFF;
}

* + .button-beta__icon {
  margin-left: 1rem;
}

.sr-only + .button-beta__icon {
  margin-left: 0;
}

.button-beta__icon:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.button-beta__icon:before {
  font-size: 2rem;
  vertical-align: middle;
}

.button-menu {
  display: inline-block;
  font-weight: 700;
  text-align: center;
  vertical-align: middle;
  text-transform: uppercase;
  padding: 1.5rem 3rem;
  border: 3px solid #feac94;
}

@media (max-width: 480px) {
  .button-menu {
    display: block;
    width: 100%;
  }
}

.button-menu.full-width {
  width: 100%;
}

.button-menu.smaller {
  padding-top: 0;
  padding-bottom: 0;
  height: 5rem;
  line-height: 5rem;
}

.link {
  font-weight: 700;
  text-decoration: underline;
}

.link-alpha {
  text-decoration: underline;
  color: #0082ad;
}

.link-beta {
  font-weight: 700;
  text-decoration: underline;
  letter-spacing: .2rem;
  color: #0082ad;
  text-transform: uppercase;
  font-size: 2rem;
}

.link-arrow {
  display: inline-block;
  overflow: hidden;
  white-space: nowrap;
  color: #0082ad;
  text-transform: uppercase;
  font-weight: 700;
}

.link-arrow span {
  display: inline-block;
}

.link-arrow span:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.no-touch .link-arrow span {
  transition: transform .2s ease-out;
  transform: translateX(calc(-100% + 21px));
}

.no-touch .link-arrow span:hover {
  transform: translateX(0);
}

.link-arrow span:after {
  margin-left: 4px;
  vertical-align: middle;
  font-size: 2rem;
}

/* ==========================================================================
   & forms
   ========================================================================== */
label {
  cursor: pointer;
}

label.error {
  display: block;
  font-style: italic;
  color: #dc3545;
  font-weight: 400;
  margin-top: 0.5rem;
  font-size: 1.5rem;
  padding-left: 16px;
}

.fieldset {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.fieldset + .fieldset {
  border-top: 1px solid #dbdde3;
}

.form-label {
  font-weight: 400;
  font-size: 1.77778rem;
}

.form-label .smaller {
  font-size: 0.7em;
  display: inline-block;
}

.form-horizontal .control-label {
  font-weight: 400;
  text-align: left;
  padding-top: 14px;
}

.form-info {
  display: block;
  margin-top: 0.5rem;
  padding-left: 16px;
  font-size: 0.85em;
  font-style: italic;
}

.form-control {
  font-size: 16px;
  padding: 10px 16px;
  height: 46px;
  line-height: 1.33333;
  color: #000;
  border-color: #e2e3e3;
  box-shadow: none;
}

.form-control::-webkit-input-placeholder {
  color: #000;
}

.form-control::-moz-placeholder {
  color: #000;
}

.form-control:-ms-input-placeholder {
  color: #000;
}

.form-control:-moz-placeholder {
  color: #000;
}

.form-control:focus {
  outline: none;
  border-color: #0082ad;
  box-shadow: none;
}

.form-control:focus::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.2);
}

.form-control:focus::-moz-placeholder {
  color: rgba(0, 0, 0, 0.2);
}

.form-control:focus:-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.2);
}

.form-control:focus:-moz-placeholder {
  color: rgba(0, 0, 0, 0.2);
}

.form-control.input-validation-error {
  border-color: #dc3545 !important;
}

.error .form-control {
  border-color: #dc3545;
}

.success .form-control {
  border-color: #28a745;
}

.bs-searchbox .form-control {
  padding: 6px;
  height: auto;
}

.field-validation-error {
  display: block;
  font-style: italic;
  color: #dc3545;
  font-weight: 400;
  margin-top: 0.5rem;
  font-size: 1.5rem;
  padding-left: 16px;
}

.validationSummaryError {
  color: #dc3545;
  margin-bottom: 2rem;
}

.validationSummaryError span {
  display: block;
  margin-bottom: 5px;
}

.validationSummaryError ul li {
  text-indent: 0.8em;
  position: relative;
}

.validationSummaryError ul li:before {
  content: "";
  display: block;
  width: 0.3em;
  height: 0.3em;
  border-radius: 50%;
  position: absolute;
  background-color: #000;
  background-color: currentColor;
  top: 0.5em;
}

.validation-summary-valid {
  color: #ff4d42;
  display: none;
}

.form-counter {
  font-size: 1.2rem;
}

.form-control-alpha {
  padding: 1.2rem 2rem;
  height: 5rem;
  font-size: 1.4rem;
  border: none;
  font-weight: 500;
  text-transform: uppercase;
  width: 100%;
  background-color: #FFF;
  border-radius: 0;
}

.form-control-alpha::-webkit-input-placeholder {
  color: #000;
  font-size: 1.4rem;
  line-height: 1.8;
}

.form-control-alpha::-moz-placeholder {
  color: #000;
  font-size: 1.4rem;
  line-height: 1.8;
}

.form-control-alpha:-ms-input-placeholder {
  color: #000;
  font-size: 1.4rem;
  line-height: 1.8;
}

.form-control-alpha:-moz-placeholder {
  color: #000;
  font-size: 1.4rem;
  line-height: 1.8;
}

.touch .form-control-alpha {
  font-size: 1.77778rem;
}

@media (max-width: 767px) {
  .form-context [class^='col-'] + [class^='col-'] {
    margin-top: 2rem;
  }
}

.form-context .row + .row {
  margin-top: 2rem;
}

.date-picker {
  -webkit-appearance: none;
  position: relative;
  background-image: url("../images/icon/datepicker.svg");
  background-position: calc(100% - 10px) 50%;
  background-size: 3rem;
  padding-right: 5rem;
}

input[type="date"].form-control.date-picker {
  line-height: 1.33333;
}

.radio-group {
  display: inline-block;
}

.radio-group + .radio-group {
  margin-left: 1rem;
}

input[type=radio].radio {
  display: none;
}

input[type=radio].radio ~ label {
  position: relative;
  padding-left: 3rem;
  vertical-align: top;
  line-height: 2.4rem;
  cursor: pointer;
}

input[type=radio].radio ~ label:before, input[type=radio].radio ~ label:after {
  content: '';
  display: block;
  position: absolute;
  border-radius: 50%;
}

input[type=radio].radio ~ label:before {
  cursor: pointer;
  top: 2px;
  left: 0;
  height: 20px;
  width: 20px;
  border: 1px solid #e2e3e3;
}

input[type=radio].radio ~ label:after {
  top: 6px;
  left: 4px;
  height: 12px;
  width: 12px;
  line-height: 1rem;
}

input[type=radio].radio.right-side ~ label {
  padding-left: 0;
  padding-right: 3rem;
}

input[type=radio].radio.right-side ~ label:before {
  left: auto;
  right: 0;
}

input[type=radio].radio.right-side ~ label:after {
  left: auto;
  right: 4px;
}

input[type=radio].radio:checked ~ label:after {
  background-color: #0082ad;
}

input[type=radio].radio-alpha {
  display: none;
}

input[type=radio].radio-alpha ~ label {
  font-size: 16px;
  padding: 10px 16px;
  height: 46px;
  line-height: 1.33333;
  display: inline-block;
  border: 1px solid #e2e3e3;
  border-radius: 4px;
  min-width: 7rem;
  text-align: center;
}

input[type=radio].radio-alpha:checked ~ label {
  background-color: #0082ad;
  color: #FFF;
}

input[type=checkbox].checkbox {
  display: none;
}

input[type=checkbox].checkbox ~ label {
  position: relative;
  padding-left: 3rem;
  vertical-align: top;
  line-height: 2.4rem;
  cursor: pointer;
}

input[type=checkbox].checkbox ~ label:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

input[type=checkbox].checkbox ~ label:before, input[type=checkbox].checkbox ~ label:after {
  display: block;
  position: absolute;
  top: 2px;
  left: 0;
  height: 20px;
  width: 20px;
}

input[type=checkbox].checkbox ~ label:before {
  content: '';
  cursor: pointer;
  border: 2px solid #0082ad;
}

input[type=checkbox].checkbox ~ label:after {
  text-align: center;
  font-size: 1.2rem;
  color: transparent;
  line-height: 22px;
}

s input[type=checkbox].checkbox.right-side ~ label {
  padding-left: 0;
  padding-right: 3rem;
}

s input[type=checkbox].checkbox.right-side ~ label:before {
  left: auto;
  right: 0;
}

s input[type=checkbox].checkbox.right-side ~ label:after {
  left: auto;
  right: 0;
}

input[type=checkbox].checkbox:checked ~ label:after {
  color: #0082ad;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.input-group-addon {
  background-color: #FFF;
  border-color: #e2e3e3;
  font-size: 2rem;
  cursor: pointer;
}

textarea {
  resize: vertical;
}

.form-section + .form-section {
  margin-top: 4rem;
}

.form-section__header {
  display: table;
  width: 100%;
  border-bottom: 1px solid #dbdde3;
  margin-bottom: 2rem;
}

@media (max-width: 767px) {
  .form-section__header {
    display: block;
  }
}

.form-section__header-title {
  display: table-cell;
  font-size: 3rem;
  font-weight: 700;
  color: #0082ad;
}

@media (max-width: 767px) {
  .form-section__header-title {
    display: block;
  }
}

.form-section__header-text {
  display: table-cell;
  text-align: right;
}

@media (max-width: 767px) {
  .form-section__header-text {
    text-align: left;
    display: block;
    margin-bottom: 1rem;
  }
}

.form-section__subtitle {
  margin-top: 4rem;
  margin-bottom: 2rem;
  font-weight: 700;
  font-size: 2.2rem;
}

.box-search {
  background-color: #FFF;
  display: inline-block;
  padding: 0.5rem;
}

.box-search__form-group {
  display: inline-block;
  vertical-align: middle;
  padding-left: 1rem;
  padding-right: 1rem;
  position: relative;
  text-align: left;
}

@media (min-width: 768px) {
  .box-search__form-group + .box-search__form-group:before {
    content: "";
    position: absolute;
    display: block;
    background-color: #000;
    width: 1px;
    height: 100%;
    top: 0;
    left: -2px;
  }
}

@media (max-width: 767px) {
  .box-search__form-group {
    display: block;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
}

.box-search__label {
  display: block;
  text-align: left;
  color: #8a8a8a;
  font-weight: 500;
  font-size: 1.6rem;
}

@media (max-width: 767px) {
  .box-search__submit {
    width: 100%;
  }
}

.intl-tel-input {
  width: 100%;
}

/* ==========================================================================
   & common
   ========================================================================== */
.h2 {
  display: block;
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.1;
  margin-bottom: 0.5rem;
}

@media (max-width: 767px) {
  .h2 {
    font-size: 3.33333rem;
  }
}

.h2-alpha {
  display: block;
  font-size: 4rem;
  font-weight: 300;
  line-height: 1.1;
}

@media (max-width: 767px) {
  .h2-alpha {
    font-size: 2.77778rem;
  }
}

.subtitle {
  font-family: "Spectral", serif;
  font-size: 2rem;
  font-style: italic;
  margin-bottom: 1rem;
}

@media (max-width: 991px) {
  .subtitle {
    font-size: 1.55556rem;
  }
}

.header-box {
  text-align: center;
  margin-bottom: 3rem;
}

.actions {
  text-align: center;
  margin-top: 4rem;
}

.noMarginTop {
  margin-top: 0;
}

.text-alpha {
  color: #0082ad;
  text-transform: uppercase;
  border-left: 5px solid #0082ad;
  padding-left: 1.5rem;
  line-height: 1.6;
}

.pager {
  display: inline-block;
}

.pager:before, .pager:after {
  content: " ";
  display: table;
}

.pager:after {
  clear: both;
}

.pager > li {
  float: left;
  position: relative;
  text-align: center;
}

.pager > li + li:before {
  content: "";
  position: absolute;
  display: block;
  background-color: #000;
  width: 2px;
  height: 1.5rem;
  top: 48%;
  transform: translateY(-50%);
}

.pager > li a {
  padding-left: 0.7rem;
  padding-right: 0.7rem;
  font-size: 2rem;
  font-weight: 500;
}

.pager > li a:hover, .pager > li a.active {
  color: #0082ad;
}

.page-mag .pager > li a:hover, .page-mag .pager > li a.active {
  color: #feac94;
}

.bullet-list li {
  text-indent: 0.8em;
  position: relative;
}

.bullet-list li:before {
  content: "";
  display: block;
  width: 0.3em;
  height: 0.3em;
  border-radius: 50%;
  position: absolute;
  background-color: #000;
  background-color: currentColor;
  top: 0.5em;
}

/* ==========================================================================
   & box
   ========================================================================== */
.box-confiez-nous {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media (max-width: 991px) {
  .box-confiez-nous__list {
    margin-left: 5em;
    margin-right: 5em;
  }
}

@media (max-width: 480px) {
  .box-confiez-nous__list {
    margin-left: -1.5rem;
    margin-right: -1.5rem;
  }
}

.box-confiez-nous__list .slick-arrow {
  top: 2.6rem;
}

.page-ddv-light .box-confiez-nous {
  display: none;
}

.box-confiez-item {
  text-align: center;
  padding-left: 3rem;
  padding-right: 3rem;
}

.box-confiez-item__index {
  position: relative;
  background-color: #0082ad;
  color: #FFF;
  width: 5rem;
  height: 5rem;
  display: inline-block;
  border-radius: 50%;
  font-size: 2rem;
  padding: 2px;
  text-align: center;
  font-weight: bold;
  font-size: 2.6rem;
  line-height: 4.5rem;
  margin-bottom: 3rem;
}

.box-confiez-item__index:before {
  content: "";
  position: absolute;
  background-color: #FFF;
  display: block;
  height: 3px;
  width: calc(100% + 2rem);
  margin-left: -1rem;
  margin-right: -1rem;
  left: 0;
  top: 50%;
  z-index: -1;
}

.box-confiez-item__index-inner {
  width: 100%;
  height: 100%;
  display: block;
  border-radius: 50%;
  border: 1px dotted #FFF;
}

@media (min-width: 768px) {
  .box-confiez-item__index-inner {
    background-color: #FFF;
    transform: scale(2);
    transition: all 0.5s ease-out;
  }
  .index-2 .box-confiez-item__index-inner {
    transition-delay: 0.5s;
  }
  .index-3 .box-confiez-item__index-inner {
    transition-delay: 1s;
  }
  .confiez-nous-is-animated .box-confiez-item__index-inner {
    transform: scale(1);
    background-color: transparent;
  }
}

.box-confiez-item__title {
  font-size: 1.8rem;
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: .2rem;
}

@media (min-width: 768px) {
  .box-confiez-item__title {
    transform: translateY(3rem);
    opacity: 0;
    transition: all 0.5s ease-out;
  }
  .index-1 .box-confiez-item__title {
    transition-delay: 0.1s;
  }
  .index-2 .box-confiez-item__title {
    transition-delay: 0.6s;
  }
  .index-3 .box-confiez-item__title {
    transition-delay: 1.1s;
  }
  .confiez-nous-is-animated .box-confiez-item__title {
    transform: translateY(0);
    opacity: 1;
  }
}

.box-confiez-item__text {
  margin-left: auto;
  margin-right: auto;
  max-width: 28rem;
}

@media (min-width: 768px) {
  .box-confiez-item__text {
    transform: translateY(3rem);
    opacity: 0;
    transition: all 0.5s ease-out;
  }
  .index-1 .box-confiez-item__text {
    transition-delay: 0.2s;
  }
  .index-2 .box-confiez-item__text {
    transition-delay: 0.7s;
  }
  .index-3 .box-confiez-item__text {
    transition-delay: 1.2s;
  }
  .confiez-nous-is-animated .box-confiez-item__text {
    transform: translateY(0);
    opacity: 1;
  }
}

.box-confiez-item:first-child .box-confiez-item__index:after {
  content: '';
  display: block;
  width: 499rem;
  height: 0;
  border-top: 1px dotted #000;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: -2;
}

.box-confiez-item:last-child .box-confiez-item__index {
  position: relative;
}

.box-confiez-item:last-child .box-confiez-item__index:after {
  content: '';
  display: block;
  width: 499rem;
  height: 0;
  border-top: 3px solid #FFF;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: -2;
}

.box-newsletter {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #424242;
  color: #FFF;
  text-align: center;
  font-size: 2.7rem;
}

.page-ddv-light .box-newsletter {
  display: none;
}

.page-ddv-confirmation .box-newsletter {
  display: block;
}

.box-newsletter__label {
  cursor: pointer;
}

@media (max-width: 991px) {
  .box-newsletter__label {
    text-align: left;
    display: block;
  }
}

.box-newsletter__input {
  margin-left: 1rem;
  margin-right: 1rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  color: #feac94;
  border: none;
  background-color: transparent;
  -webkit-appearance: none;
  min-width: 30rem;
  text-align: left;
  box-shadow: none;
  transition: all .3s ease-out;
}

@media (max-width: 991px) {
  .box-newsletter__input {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
    display: block;
    text-align: left;
    margin-left: 0;
    padding-left: 0;
    width: 100%;
  }
}

.box-newsletter__input::-webkit-input-placeholder {
  color: #feac94;
  text-align: center;
}

@media (max-width: 991px) {
  .box-newsletter__input::-webkit-input-placeholder {
    text-align: left;
  }
}

.box-newsletter__input::-moz-placeholder {
  color: #feac94;
  text-align: center;
}

@media (max-width: 991px) {
  .box-newsletter__input::-moz-placeholder {
    text-align: left;
  }
}

.box-newsletter__input:-ms-input-placeholder {
  color: #feac94;
  text-align: center;
}

@media (max-width: 991px) {
  .box-newsletter__input:-ms-input-placeholder {
    text-align: left;
  }
}

.box-newsletter__input:-moz-placeholder {
  color: #feac94;
  text-align: center;
}

@media (max-width: 991px) {
  .box-newsletter__input:-moz-placeholder {
    text-align: left;
  }
}

.box-newsletter__input:focus {
  outline: none;
  background-color: rgba(254, 172, 148, 0.05);
}

.box-newsletter__input:focus::-webkit-input-placeholder {
  color: rgba(254, 172, 148, 0.2);
}

.box-newsletter__input:focus::-moz-placeholder {
  color: rgba(254, 172, 148, 0.2);
}

.box-newsletter__input:focus:-ms-input-placeholder {
  color: rgba(254, 172, 148, 0.2);
}

.box-newsletter__input:focus:-moz-placeholder {
  color: rgba(254, 172, 148, 0.2);
}

.box-newsletter__input:hover {
  background-color: rgba(254, 172, 148, 0.05);
}

.box-newsletter__submit {
  text-decoration: underline;
  padding: 0;
}

@media (max-width: 991px) {
  .box-newsletter__submit {
    display: block;
    text-align: left;
  }
}

.box-sur-carte {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-intro {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-intro__title {
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
  letter-spacing: .1rem;
  margin-bottom: 3rem;
}

@media (max-width: 767px) {
  .box-intro__title {
    font-size: 2rem;
  }
}

.box-intro__col-visual {
  flex-shrink: 0;
}

@media (min-width: 768px) {
  .box-intro__col-visual {
    margin-right: 3rem;
    max-width: 10rem;
  }
}

@media (min-width: 992px) {
  .box-intro__col-visual {
    max-width: 17rem;
  }
}

.box-intro__visual {
  display: block;
  border-radius: 50%;
}

@media (max-width: 767px) {
  .box-intro__visual {
    display: none;
  }
}

.box-intro__text {
  line-height: 1.5;
}

.box-intro__actions {
  margin-top: 2rem;
}

@media (min-width: 992px) {
  .box-intro__actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
}

.box-intro__contact {
  margin-right: 1rem;
}

@media (max-width: 767px) {
  .box-intro__contact {
    display: none;
  }
}

@media (max-width: 991px) {
  .box-intro__contact {
    margin-bottom: 1rem;
  }
}

.box-intro__tel {
  font-weight: 700;
  font-size: 2rem;
}

@media (min-width: 992px) {
  .box-intro__tel {
    display: block;
  }
}

.box-intro__btn {
  white-space: nowrap;
}

.box-intro__btn + .box-intro__btn {
  margin-left: 1rem;
}

#box-intro .box-intro__col-content .js-readmore--expanded div.js-readmore-content,
#box-infos-pays .js-readmore--expanded div.js-readmore-content {
  display: inline !important;
}

.page-guide-pays .box-infos-pays__text a,
.page-envie-pays .box-intro__text a,
.page-pays-regions .box-intro__text a,
.page-pays-tag .box-intro__text a {
  font-weight: 500;
  text-decoration: underline;
}

.box-mini-intro {
  padding-top: 4rem;
  padding-bottom: 4rem;
  text-align: center;
}

.box-mini-intro__text {
  margin-left: auto;
  margin-right: auto;
  max-width: 80rem;
  line-height: 1.5;
}

.box-mini-intro__text > p + p {
  margin-top: 2rem;
}

.header-box + .box-mini-intro__text {
  margin-top: 3rem;
}

.box-carnet-voyage {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

.box-carnet-voyage__list {
  margin-left: -1.7rem;
  margin-right: -1.7rem;
  display: none;
}

@media (min-width: 768px) {
  .box-carnet-voyage__list {
    margin-left: 6rem;
    margin-right: 6rem;
  }
}

@media (min-width: 768px) {
  .box-carnet-voyage .slick-arrow {
    top: 25%;
  }
}

@media (min-width: 992px) {
  .box-carnet-voyage .slick-arrow {
    top: 30%;
  }
}

@media (min-width: 1440px) {
  .box-carnet-voyage .slick-arrow {
    top: 35%;
  }
}

.box-carnet-voyage-item {
  padding-left: 3rem;
  padding-right: 3rem;
}

.box-carnet-voyage-item__visual {
  margin-bottom: 1rem;
}

.box-carnet-voyage-item__chapo {
  font-size: 1.3rem;
  text-transform: uppercase;
  font-weight: 400;
  padding-left: 1.5rem;
  position: relative;
}

.box-carnet-voyage-item__chapo:before {
  content: "";
  width: 8px;
  height: 1px;
  background-color: #000;
  display: block;
  position: absolute;
  left: 0;
  top: 7px;
}

.box-carnet-voyage-item__title {
  font-size: 2rem;
  margin-bottom: 1rem;
  font-weight: 700;
}

.box-carnet-voyage-item__text {
  margin-bottom: 1rem;
}

.box-monde-service {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-monde-service .slick-dots {
  bottom: 2rem;
}

@media (min-width: 768px) {
  .box-monde-service .header-box {
    display: none;
  }
}

.box-monde-service-item {
  display: block;
  background-color: #dbdde3;
  position: relative;
  color: #FFF;
}

@media (min-width: 768px) {
  .no-touch .box-monde-service-item {
    overflow: hidden;
  }
  .no-touch .box-monde-service-item img {
    transition: transform .3s ease-out;
  }
  .no-touch .box-monde-service-item:hover img {
    transform: scale(1.1);
  }
}

@media (min-width: 768px) {
  .box-monde-service-item {
    margin-bottom: 1rem;
  }
}

.box-monde-service-item:after {
  content: "";
  display: block;
  padding-bottom: 100%;
}

@media (min-width: 768px) {
  .box-monde-service-item.double-width:after {
    padding-bottom: calc(50% - .5rem);
  }
}

.box-monde-service-item.double-height:after {
  padding-bottom: calc(200% + 1rem);
}

.box-monde-service-item.pink {
  background-color: #feac94;
  transition: background-color .3s ease-out;
}

.box-monde-service-item.pink:hover {
  background-color: #99a4b1;
}

.box-monde-service-item.grey {
  background-color: #99a4b1;
  transition: background-color .3s ease-out;
}

.box-monde-service-item.grey:hover {
  background-color: #feac94;
}

.box-monde-service-item.type-1 {
  background-color: #feac94;
  color: #feac94;
}

.box-monde-service-item.type-2 {
  text-align: center;
}

.box-monde-service-item__inner {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.type-1 .box-monde-service-item__inner {
  padding: 1rem;
  background-color: #feac94;
}

.type-2 .box-monde-service-item__inner:before {
  content: "";
  background-color: #000;
  opacity: .15;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
}

.type-3 .box-monde-service-item__inner {
  padding: 2rem;
}

@media (min-width: 768px) and (max-width: 991px) {
  .type-3 .box-monde-service-item__inner {
    padding: 1.5rem;
  }
}

.type-1 .box-monde-service-item__content {
  height: 100%;
  background-color: #FFF;
  padding: 1rem 1.4rem;
}

.type-2 .box-monde-service-item__content {
  padding-left: 1rem;
  padding-right: 1rem;
  position: absolute;
  width: 100%;
  z-index: 1;
  top: calc(50% - 2rem);
}

.type-1 .box-monde-service-item__title {
  font-size: 3.8rem;
  line-height: 1.2;
}

@media (min-width: 768px) and (max-width: 991px) {
  .type-1 .box-monde-service-item__title {
    font-size: 2.8rem;
  }
}

.type-2 .box-monde-service-item__title {
  font-size: 3rem;
  line-height: 1;
}

@media (min-width: 768px) and (max-width: 991px) {
  .type-2 .box-monde-service-item__title {
    font-size: 2rem;
  }
}

@media (max-width: 767px) {
  .type-2 .box-monde-service-item__title {
    font-size: 2rem;
  }
}

.type-3 .box-monde-service-item__title {
  font-size: 2.4rem;
  line-height: 1.1;
}

@media (min-width: 768px) and (max-width: 991px) {
  .type-3 .box-monde-service-item__title {
    font-size: 2rem;
  }
}

.box-monde-service-item__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

@media (min-width: 768px) and (max-width: 991px) {
  .type-3 .box-monde-service-item__text {
    font-size: 1.1rem;
  }
}

.box-monde-service-item__link {
  font-size: 1.4rem;
}

@media (min-width: 768px) and (max-width: 991px) {
  .box-monde-service-item__link {
    font-size: 1.2rem;
  }
}

.box-monde-envies {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

.box-monde-envies__list {
  margin-left: -1.7rem;
  margin-right: -1.7rem;
  display: none;
}

@media (min-width: 768px) {
  .box-monde-envies__list {
    margin-left: 6rem;
    margin-right: 6rem;
  }
}

.box-monde-envies__list .slick-arrow {
  top: calc(50% - 20px);
}

.box-monde-envie {
  text-align: center;
  padding-left: 1rem;
  padding-right: 1rem;
}

.box-monde-envie__text {
  font-size: 1.5rem;
  font-weight: 400;
  margin-top: 1rem;
}

.box-monde-envie__link:hover {
  text-decoration: underline;
}

.box-monde-imagination {
  padding-top: 4rem;
  padding-bottom: 4rem;
  padding-bottom: 0;
}

.box-monde-imagination-item {
  margin-left: auto;
  margin-right: auto;
  max-width: 50rem;
  margin-bottom: 4rem;
}

@media (min-width: 768px) {
  .no-touch .box-monde-imagination-item {
    overflow: hidden;
  }
  .no-touch .box-monde-imagination-item img {
    transition: transform .3s ease-out;
  }
  .no-touch .box-monde-imagination-item:hover img {
    transform: scale(1.1);
  }
}

@media (min-width: 768px) {
  .box-monde-imagination-item {
    text-align: center;
  }
}

.box-monde-imagination-item__link {
  display: block;
}

.box-monde-imagination-item__visual-container {
  position: relative;
  margin-bottom: 1rem;
}

.box-monde-imagination-item__visual-container:after {
  content: "";
  display: block;
  padding-bottom: 100%;
}

.box-monde-imagination-item__visual-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

.box-monde-imagination-item__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-monde-imagination-item__title {
  font-size: 2rem;
  margin-bottom: 1rem;
  font-weight: 700;
}

.box-monde-imagination-item__text {
  margin-bottom: 1rem;
}

.box-monde-imagination-item__conditions {
  color: #0082ad;
  letter-spacing: .1rem;
  text-transform: uppercase;
}

.box-nouveaux-voyages {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media (max-width: 767px) {
  .box-nouveaux-voyages {
    background-color: #f6f6f6;
  }
}

@media (min-width: 768px) {
  .box-nouveaux-voyages .container {
    width: 100% !important;
    padding: 0 !important;
  }
}

@media (max-width: 767px) {
  .box-nouveaux-voyages__list {
    margin-left: -1.7rem;
    margin-right: -1.7rem;
  }
}

@media (min-width: 768px) {
  .box-nouveaux-voyages .slick-arrow {
    height: 6rem;
    width: 6rem;
    z-index: 1;
    background-color: #FFF;
  }
  .box-nouveaux-voyages .slick-arrow:before {
    opacity: 1;
    font-size: 4rem;
    margin-top: 0.2rem;
  }
}

@media (min-width: 768px) {
  .box-nouveaux-voyages .slick-prev {
    left: calc(33.33%);
    transform: translate(-50%, -50%);
  }
}

@media (min-width: 768px) {
  .box-nouveaux-voyages .slick-next {
    right: calc(33.33%);
    transform: translate(50%, -50%);
  }
}

@media (max-width: 767px) {
  .box-nouveaux-voyages-item {
    margin-bottom: 1rem;
  }
}

@media (min-width: 768px) {
  .box-nouveaux-voyages-item {
    position: relative;
  }
}

.box-nouveaux-voyages-item__link {
  display: block;
  position: relative;
}

@media (min-width: 768px) {
  .box-nouveaux-voyages-item__link {
    pointer-events: none;
  }
  .box-nouveaux-voyages-item__link:before {
    content: "";
    opacity: 0.5;
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
    top: 75%;
    left: 0;
    transition: all .3s;
  }
}

.box-nouveaux-voyages-item__visual-container {
  position: relative;
}

@media (max-width: 767px) {
  .box-nouveaux-voyages-item__visual-container {
    margin-bottom: 2rem;
  }
}

.box-nouveaux-voyages-item__visual-container:after {
  content: "";
  display: block;
  padding-bottom: 60.20408%;
}

.box-nouveaux-voyages-item__visual-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

.box-nouveaux-voyages-item__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

@media (max-width: 767px) {
  .box-nouveaux-voyages-item__content {
    margin-left: auto;
    margin-right: auto;
    padding-left: 1.7rem;
    padding-right: 1.7rem;
    max-width: 50rem;
  }
}

@media (min-width: 768px) {
  .box-nouveaux-voyages-item__content {
    opacity: 0;
    position: absolute;
    z-index: 1;
    top: 77%;
    left: 0;
    transition: all .3s;
    color: #FFF;
    text-align: center;
    padding: 1.5% 4rem;
    width: 100%;
  }
}

.box-nouveaux-voyages-item__chapo {
  color: #0082ad;
  letter-spacing: .1rem;
  text-transform: uppercase;
  font-weight: 400;
  margin-bottom: 0.5rem;
  font-size: inherit;
  max-height: 1.2em;
}

@media (min-width: 768px) {
  .box-nouveaux-voyages-item__chapo {
    margin-left: auto;
    margin-right: auto;
    max-width: 30rem;
    color: inherit;
    font-size: 1.1rem;
  }
}

@media (min-width: 992px) {
  .box-nouveaux-voyages-item__chapo {
    font-size: 1.2rem;
  }
}

.box-nouveaux-voyages-item__chapo span {
  font-size: inherit !important;
  font-family: inherit !important;
}

.box-nouveaux-voyages-item__title {
  font-size: 2rem;
  margin-bottom: 2rem;
  font-weight: 700;
}

@media (min-width: 768px) {
  .box-nouveaux-voyages-item__title {
    max-height: 1.4em;
    margin-left: auto;
    margin-right: auto;
    max-width: 30rem;
    font-size: 1.5rem;
  }
}

@media (min-width: 992px) {
  .box-nouveaux-voyages-item__title {
    font-size: 2rem;
  }
}

.box-nouveaux-voyages-item__title span {
  font-size: inherit !important;
  font-family: inherit !important;
}

.box-nouveaux-voyages-item__text {
  margin-bottom: 1rem;
  max-height: 3.8em;
}

@media (min-width: 768px) {
  .box-nouveaux-voyages-item__text {
    margin-left: auto;
    margin-right: auto;
    max-width: 30rem;
    opacity: 0;
    transition: opacity .3s;
  }
}

@media (max-width: 768px) {
  .box-nouveaux-voyages-item__text {
    max-height: initial;
  }
}

.box-nouveaux-voyages-item__text span {
  font-size: inherit !important;
  font-family: inherit !important;
}

.box-nouveaux-voyages-item__text-link {
  margin-top: 4rem;
}

@media (min-width: 768px) {
  .box-nouveaux-voyages-item__text-link {
    margin-left: auto;
    margin-right: auto;
    max-width: 30rem;
    opacity: 0;
    transition: opacity .3s;
  }
}

.box-nouveaux-voyages-item__conditions {
  color: #0082ad;
  letter-spacing: .1rem;
  text-transform: uppercase;
}

@media (min-width: 768px) {
  .box-nouveaux-voyages-item.slick-active .box-nouveaux-voyages-item__content {
    opacity: 1;
  }
  .box-nouveaux-voyages-item.slick-active .box-nouveaux-voyages-item__link {
    pointer-events: auto;
  }
  .box-nouveaux-voyages-item.slick-active .box-nouveaux-voyages-item__link:before {
    background-color: #000;
  }
  .box-nouveaux-voyages-item.slick-active:hover .box-nouveaux-voyages-item__content {
    top: 15%;
  }
  .box-nouveaux-voyages-item.slick-active:hover .box-nouveaux-voyages-item__link:before {
    top: 0;
  }
  .box-nouveaux-voyages-item.slick-active:hover .box-nouveaux-voyages-item__text,
  .box-nouveaux-voyages-item.slick-active:hover .box-nouveaux-voyages-item__text-link {
    opacity: 1;
  }
}

.box-actualite {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-actualite__link {
  display: block;
  position: relative;
}

.box-actualite__visual {
  width: 100%;
}

.box-actualite__inner:before {
  content: "";
  background-color: #000;
  opacity: .15;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-actualite__content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 3rem;
  overflow: hidden;
}

.box-actualite__title {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 1rem;
}

@media (min-width: 375px) {
  .box-actualite__title {
    font-size: 2.5rem;
  }
}

@media (min-width: 480px) {
  .box-actualite__title {
    font-size: 2.5rem;
  }
}

@media (min-width: 992px) {
  .box-actualite__title {
    font-size: 3.6rem;
    width: 36rem;
  }
}

.box-actualite__subtitle {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.2;
  color: #FFF;
  margin-bottom: 2rem;
}

@media (min-width: 375px) {
  .box-actualite__subtitle {
    font-size: 2.5rem;
  }
}

@media (min-width: 480px) {
  .box-actualite__subtitle {
    font-size: 2.5rem;
    margin-bottom: 4rem;
  }
}

@media (min-width: 992px) {
  .box-actualite__subtitle {
    font-size: 3.6rem;
    margin-bottom: 2rem;
    width: 36rem;
  }
}

.box-actualite__text {
  font-size: 1.2rem;
  width: 25rem;
  margin-bottom: 1rem;
}

@media (max-width: 767px) {
  .box-actualite__text {
    max-width: 60%;
  }
}

@media (min-width: 375px) {
  .box-actualite__text {
    font-size: 1.3rem;
  }
}

.box-actualite__btn {
  font-weight: 700;
  text-decoration: underline;
}

@media (min-width: 992px) {
  .box-actualite__btn {
    display: inline-block;
    font-weight: 700;
    text-align: center;
    vertical-align: middle;
    text-transform: uppercase;
    padding: 2rem 3rem;
    border: 1px solid #000;
    text-decoration: none;
  }
}

@media (min-width: 992px) and (max-width: 480px) {
  .box-actualite__btn {
    display: block;
    width: 100%;
  }
}

@media (min-width: 992px) {
  .box-actualite__btn.full-width {
    width: 100%;
  }
  .box-actualite__btn.smaller {
    padding-top: 0;
    padding-bottom: 0;
    height: 5rem;
    line-height: 5rem;
  }
}

@media (max-width: 767px) {
  .box-actualite__btn {
    font-size: 1.4rem;
  }
}

.box-plus-loin {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

.box-plus-loin-item {
  display: block;
  background-color: #dbdde3;
  position: relative;
  margin-bottom: 3.33333rem;
}

@media (min-width: 768px) {
  .no-touch .box-plus-loin-item {
    overflow: hidden;
  }
  .no-touch .box-plus-loin-item img {
    transition: transform .3s ease-out;
  }
  .no-touch .box-plus-loin-item:hover img {
    transform: scale(1.1);
  }
}

@media (max-width: 991px) {
  .box-plus-loin-item {
    margin-bottom: 1.66667rem;
  }
}

.box-plus-loin-item:after {
  content: "";
  display: block;
  padding-bottom: 77.77778%;
}

@media (min-width: 768px) {
  .box-plus-loin-item.double-width:after {
    padding-bottom: calc((38.88889%) - 1.4rem);
  }
}

@media (min-width: 768px) {
  .box-plus-loin-item.double-height:after {
    padding-bottom: calc((155.55556%) + 30px);
  }
}

.box-plus-loin-item:hover .box-plus-loin-item__title {
  text-decoration: underline;
}

.box-plus-loin-item__inner {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.box-plus-loin-item__inner:before {
  content: "";
  background-color: #000;
  opacity: .15;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
}

.box-plus-loin-item__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-plus-loin-item__content {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 2rem;
  z-index: 1;
}

.box-plus-loin-item__rubrique {
  font-size: 1.4rem;
  font-weight: 500;
  background-color: #FFF;
  display: inline-block;
  padding: 0.8rem 1.2rem;
  text-transform: uppercase;
}

.box-plus-loin-item__title {
  font-size: 2.8rem;
  max-height: 5.55556rem;
  line-height: 1;
  font-weight: bold;
  color: #FFF;
  overflow: hidden;
}

h3.box-plus-loin-item__title {
  margin-top: 1rem;
}

.box-plus-loin .js-carousel-brochure .box-brochure-item {
  padding: 0;
}

.box-plus-loin .js-carousel-brochure .box-plus-loin-item__content {
  bottom: 20px;
}

.box-plus-loin .js-carousel-brochure ul.slick-dots {
  bottom: 40px;
}

.box-plus-loin .js-carousel-brochure ul.slick-dots li {
  margin: 0 2px;
}

@media (min-width: 1440px) {
  .box-plus-loin .js-carousel-brochure a.box-plus-loin-item {
    height: 622px;
  }
}

.box-services {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-services__title {
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
  letter-spacing: .1rem;
  margin-bottom: 3rem;
}

@media (max-width: 767px) {
  .box-services__title {
    font-size: 2rem;
  }
}

.box-services__list {
  display: none;
  margin-left: 6rem;
  margin-right: 6rem;
}

.box-services .slick-arrow {
  top: 25%;
}

.box-service {
  text-align: center;
}

.box-service__icon {
  color: #0082ad;
  font-size: 7rem;
  height: 10rem;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
}

.box-service__icon:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@keyframes vdm-icon-pop {
  50% {
    transform: translate(-50%, -50%) scale(1.3);
  }
}

.box-service__icon:hover:before, .box-service__icon:focus:before, .box-service__icon:active:before {
  animation-name: vdm-icon-pop;
  animation-duration: 0.3s;
  animation-timing-function: linear;
  animation-iteration-count: 1;
}

.box-service__icon.icon-miles {
  font-size: 8.5rem;
}

.box-service__text {
  text-transform: uppercase;
  font-size: 1.4rem;
  letter-spacing: .2rem;
  padding-left: 2rem;
  padding-right: 2rem;
}

.box-idees-voyages {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media (max-width: 767px) {
  .box-intro + .box-idees-voyages {
    padding-top: 0;
  }
}

.box-idee {
  margin-bottom: 4rem;
}

.box-idee.intoMap {
  margin-bottom: 0;
  max-width: 25rem;
  font-family: "Apercu", Arial, sans-serif;
  text-align: left;
}

.box-idee__visual-container {
  position: relative;
  margin-bottom: 1rem;
}

.box-idee__visual-container:after {
  content: "";
  display: block;
  padding-bottom: 66.57609%;
}

.box-idee__visual-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

.box-idee__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: relative;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  margin-bottom: 2rem;
}

.intoMap .box-idee__visual {
  max-width: 100%;
}

.box-idee__chapo {
  color: #0082ad;
  letter-spacing: .1rem;
  text-transform: uppercase;
  font-weight: 400;
  margin-bottom: 1rem;
  font-size: inherit;
}

.box-idee__title {
  font-size: 2rem;
  margin-bottom: 1rem;
  font-weight: 700;
  line-height: 1.2;
}

.box-idee__link:hover .box-idee__title {
  text-decoration: underline;
}

.box-idee__text {
  margin-bottom: 1rem;
}

.box-idee__conditions {
  color: #0082ad;
  letter-spacing: .1rem;
  text-transform: uppercase;
}

@media (max-width: 1440px) {
  body.page-pays #box-idees-voyages .js-carousel-idees-voyages .col-lg-8 {
    min-height: 530px;
  }
}

.box-regions {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

@media (min-width: 768px) {
  .box-regions__row {
    display: flex;
  }
}

.box-regions__row > * {
  float: none;
  flex: 1 1 auto;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
}

.box-regions__visual {
  max-height: 450px;
}

@media (max-width: 767px) {
  .box-regions__visual {
    display: none;
  }
}

.box-regions__list {
  font-size: 2rem;
  padding-left: 2rem;
}

@media (max-width: 767px) {
  .box-regions__list {
    display: block;
    column-count: 2;
    max-width: 40rem;
    margin: auto;
    font-size: 1.88889rem;
  }
}

.box-regions__item {
  position: relative;
  margin-bottom: 1rem;
}

@media (max-width: 767px) {
  .box-regions__item {
    padding-left: 2rem;
  }
  .box-regions__item:before {
    content: "";
    width: 0.7rem;
    height: 0.7rem;
    background-color: #000;
    position: absolute;
    top: 1.2rem;
    left: 0;
    border-radius: 50%;
  }
}

.box-regions__item > a {
  position: relative;
}

.box-regions__item > a:hover {
  color: #0082ad;
  text-decoration: underline;
}

@media (min-width: 768px) {
  .box-regions__item > a:hover:before {
    font-family: "iconfont";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    text-decoration: none;
    text-transform: none;
    content: "";
  }
}

.box-regions__item > a:hover:before {
  position: absolute;
  left: -2rem;
  font-size: 2rem;
  top: 0.3rem;
  color: #000;
}

.box-envies {
  padding-top: 4rem;
  padding-bottom: 4rem;
  text-align: center;
}

.box-envies .slick-arrow {
  top: calc(50% - 3rem);
}

.box-envies .slick-slider {
  margin-left: 6rem;
  margin-right: 6rem;
}

.box-envies__button {
  position: relative;
  text-transform: uppercase;
}

.box-envies__button:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-envies__button:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.box-envies__button:after {
  display: inline-block;
  vertical-align: middle;
  margin-left: 0.5rem;
  margin-top: -0.2rem;
  transform: rotate(90deg);
  font-size: 1.2rem;
}

.js-readmore--expanded .box-envies__button:after {
  transform: rotate(-90deg);
  margin-left: 1rem;
  margin-top: -0.3rem;
}

.box-envie {
  margin-bottom: 4rem;
}

.box-envie__text {
  text-align: center;
  font-size: 1.8rem;
  height: 4.6rem;
  overflow: hidden;
  font-weight: 400;
  margin-top: 1rem;
}

.box-envie__link {
  display: block;
}

.box-envie__link:hover .box-envie__text {
  text-decoration: underline;
}

.box-envie__visual-container {
  position: relative;
  margin-bottom: 1rem;
}

.box-envie__visual-container:after {
  content: "";
  display: block;
  padding-bottom: 100%;
}

.box-envie__visual-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

.box-envie__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-temoignage {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
  text-align: center;
}

.box-temoignage__title {
  color: #0082ad;
  margin-bottom: 2.5rem;
}

.box-temoignage__note {
  margin-bottom: 1.5rem;
}

.box-temoignage__note .icon {
  position: relative;
}

.box-temoignage__note .icon:before {
  position: relative;
  z-index: 1;
}

.box-temoignage__note .icon-star-half:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-temoignage__note .icon-star-half:after {
  position: absolute;
  color: currentColor;
  opacity: 0.15;
  left: 0;
}

.box-temoignage__note .icon-star-off {
  opacity: 0.15;
}

.box-temoignage__note .icon-star-off:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-temoignage__text {
  font-size: 2.5rem;
  line-height: 1.6;
  font-style: italic;
  margin: 0 auto;
  max-width: 75rem;
}

@media (max-width: 767px) {
  .box-temoignage__text {
    font-size: 1.77778rem;
  }
}

.box-temoignage__link {
  font-size: 1.5rem;
  font-style: normal;
}

.box-temoignage__dots:before {
  content: "\2026";
}

.js-readmore--expanded .box-temoignage__dots.hidable {
  display: none;
}

.box-temoignage__ldquo:before {
  content: "\201C";
}

.box-temoignage__rdquo:before {
  content: "\201D";
}

.js-readmore--expanded .box-temoignage__rdquo.hidable {
  display: none;
}

.box-guide {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-guide__btn-wrapper {
  display: inline-block;
}

@media (max-width: 480px) {
  .box-guide__btn-wrapper {
    display: block;
  }
}

@media (min-width: 480px) {
  .box-guide__btn-wrapper + .box-guide__btn-wrapper {
    margin-left: 1rem;
  }
}

@media (min-width: 768px) {
  .box-guide__btn-wrapper + .box-guide__btn-wrapper {
    margin-left: 5rem;
  }
}

@media (max-width: 480px) {
  .box-guide__btn-wrapper + .box-guide__btn-wrapper {
    margin-top: 2rem;
  }
}

.box-mieux-preparer {
  padding-top: 2rem;
  padding-bottom: 2rem;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  margin-top: 2rem;
}

.box-mieux-preparer__button {
  font-size: 2rem;
  font-weight: 700;
  display: block;
  width: 100%;
  text-align: left;
  padding-left: 2rem;
}

.box-mieux-preparer__button:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-mieux-preparer__button:before {
  display: inline-block;
  font-size: 1.5rem;
  margin-left: -1.5rem;
  margin-right: 1rem;
  transition: transform .2s;
}

@media (max-width: 767px) {
  .box-mieux-preparer__button:before {
    font-size: 1.11111rem;
    margin-left: -1.2rem;
  }
}

.js-readmore--expanded .box-mieux-preparer__button:before {
  transform: rotate(90deg);
}

.box-mieux-preparer__content {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.box-mieux-preparer__content h3 {
  margin-top: 2rem;
  margin-bottom: 1rem;
}

.box-mieux-preparer__content h3:first-child {
  margin-top: 0;
}

.box-mieux-preparer__text a {
  font-weight: 500;
  text-decoration: underline;
}

.box-idees-associees {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #dbdde3;
  color: #000;
  text-align: center;
}

.box-idees-associees__title {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 2rem;
}

.box-idees-associees__content a:hover {
  text-decoration: underline;
}

.page-idees-associees #box-plan-du-site {
  background: #f6f6f6;
  padding-bottom: 4rem;
  padding-top: 4rem;
}

.page-idees-associees #box-plan-du-site h2 {
  padding: 3rem 0 1rem;
}

.page-idees-associees #box-plan-du-site li {
  margin-bottom: 1rem;
}

.box-vous-aimerez {
  background-color: #f6f6f6;
  /*&__carousel-wrapper {
    position:relative;
    @media (min-width: $screen-sm) {
	  &:before {
	     content: "";
	     position: absolute;
	     top: -5rem;
	     right: -5rem;
	     width: 11rem;
	     height: 11rem;
	     display: block;
	     background-image: url(../images/centpourcent.png);
	     background-size: contain;
	     z-index: 1;
	   }
     }
  }*/
}

.box-vous-aimerez__carousel .slick-prev {
  left: 1.5rem;
  z-index: 1;
}

.box-vous-aimerez__carousel .slick-next {
  right: 1.5rem;
}

.box-vous-aimerez__carousel .slick-arrow:before {
  opacity: 1;
  color: #FFF;
  text-shadow: 0 0 2px #000;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.5;
}

.box-vous-aimerez__carousel .slick-dots {
  bottom: 2rem;
}

.no-touch .box-vous-aimerez__carousel.show-arrow-on-hover .slick-arrow {
  display: none !important;
}

.no-touch .box-vous-aimerez__carousel.show-arrow-on-hover:hover .slick-arrow {
  display: inline-block !important;
}

@media (min-width: 768px) {
  .box-vous-aimerez__content {
    padding-top: 3rem;
    padding-bottom: 2rem;
  }
}

.box-vous-aimerez__title {
  font-weight: 700;
  margin-bottom: 1rem;
  font-size: 1.8rem;
}

@media (max-width: 767px) {
  .box-vous-aimerez__title {
    margin-left: -1.66667rem;
    margin-right: -1.66667rem;
    background-color: #0082ad;
    color: #FFF;
    font-weight: 700;
    text-transform: uppercase;
    text-align: center;
    padding: 1rem 3rem;
  }
}

@media (max-width: 767px) {
  .box-vous-aimerez__title {
    margin-bottom: 1rem;
  }
}

@media (max-width: 992px) {
  .box-vous-aimerez__list {
    margin-bottom: 1rem;
  }
}

@media (min-width: 1440px) {
  .box-vous-aimerez__list {
    margin-bottom: 3rem;
  }
}

@media (max-width: 767px) {
  .box-vous-aimerez__list {
    padding-bottom: 2rem;
  }
}

.box-vous-aimerez__item {
  margin-top: 1rem;
}

@media (max-width: 767px) {
  .box-vous-aimerez__item {
    position: relative;
    padding-left: 2rem;
  }
  .box-vous-aimerez__item:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.5rem;
    display: block;
    width: 1rem;
    height: 1rem;
    border-radius: 50%;
    background-color: #0082ad;
  }
}

@media (max-width: 992px) {
  .box-vous-aimerez__actions {
    margin-top: 1rem;
    margin-bottom: 2rem;
  }
}

@media (min-width: 1440px) {
  .box-vous-aimerez__actions {
    margin-top: 2.5rem;
  }
}

@media (max-width: 991px) {
  .box-vous-aimerez__actions {
    display: none;
  }
}

.box-vous-aimerez__btn {
  padding-left: 2rem;
  padding-right: 2rem;
  margin-top: 1rem;
  margin-right: 1rem;
}

.box-vous-aimerez__visual-wrapper {
  position: relative;
}

.box-vous-aimerez__visual-wrapper:after {
  content: "";
  display: block;
  padding-bottom: 67%;
}

.slick-initialized .box-vous-aimerez__visual {
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-vous-aimerez__legende {
  position: absolute;
  bottom: 0;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  color: #FFF;
  text-align: center;
  font-size: 1.3rem;
  opacity: 0;
  transition: opacity .6s ease-out;
  padding: 0.2rem 1.5rem;
  cursor: pointer;
}

.legende-is-showed .box-vous-aimerez__legende {
  opacity: 1;
}

.box-vous-aimerez__legende:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-vous-aimerez__legende:before {
  position: absolute;
  top: 4px;
  right: 4px;
  font-size: 1rem;
  opacity: 0.7;
}

.box-vous-aimerez__legende:hover:before {
  opacity: 1;
}

.box-itineraire {
  padding-top: 4rem;
  padding-bottom: 4rem;
  text-align: center;
}

.box-itineraire__map {
  display: block;
  width: 100%;
  background-size: contain;
}

.box-itineraire__map:before {
  content: "";
  display: block;
  padding-top: 48%;
}

@media (max-width: 767px) {
  .box-itineraire__map:before {
    padding-top: 100%;
  }
}

.box-itineraire__list {
  padding-top: 4rem;
}

.box-etape {
  position: relative;
}

@media (min-width: 768px) {
  .box-etape {
    margin-left: 13rem;
    margin-right: 13rem;
  }
}

@media (min-width: 992px) {
  .box-etape {
    margin-left: 20rem;
    margin-right: 20rem;
  }
}

.box-etape:before {
  content: "";
  position: absolute;
  height: 100%;
  top: 0;
  width: 4px;
  transform: translateX(-50%);
  background: radial-gradient(circle, #0082ad 0.8px, transparent 1.8px);
  background-size: 4px 8px;
}

@media (min-width: 768px) {
  .box-etape:before {
    left: -10rem;
    top: 5rem;
  }
}

@media (max-width: 767px) {
  .box-etape:before {
    z-index: -1;
  }
}

.box-etape + .box-etape {
  padding-top: 4rem;
}

.box-etape__header {
  position: relative;
}

@media (max-width: 767px) {
  .box-etape__header {
    background-color: #FFF;
  }
}

.box-etape__icon {
  width: 2rem;
  height: 2rem;
  background-color: #0082ad;
  border-radius: 50%;
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 768px) {
  .box-etape__icon {
    width: 7rem;
    height: 7rem;
    position: absolute;
    left: -10rem;
    top: 50%;
    transform: translate(-50%, -50%);
    border: 1.5rem solid #FFF;
  }
}

@media (max-width: 767px) {
  .box-etape__icon {
    margin-bottom: 1rem;
  }
}

.box-etape__chapo {
  font-size: 1.8rem;
  text-transform: uppercase;
  color: #0082ad;
}

.box-etape__title {
  font-size: 1.8rem;
  text-transform: uppercase;
  font-weight: 700;
}

.box-etape__text {
  text-align: justify;
  font-size: 1.8rem;
}

@media (max-width: 767px) {
  .box-etape__text {
    background-color: #FFF;
    margin-top: 0;
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
}

.box-etape.depart .box-etape__icon, .box-etape.arrive .box-etape__icon {
  background-color: #FFF;
  border-radius: 0;
  width: 9rem;
  height: 9rem;
}

@media (max-width: 767px) {
  .box-etape.depart .box-etape__icon, .box-etape.arrive .box-etape__icon {
    width: 7rem;
    height: 6rem;
    padding-top: 1rem;
  }
}

.box-etape.depart .box-etape__icon:after, .box-etape.arrive .box-etape__icon:after {
  content: "";
  display: block;
  height: 2px;
  background-color: #0082ad;
  width: 100%;
  bottom: 0;
}

@media (min-width: 768px) {
  .box-etape.depart .box-etape__icon:after, .box-etape.arrive .box-etape__icon:after {
    position: absolute;
  }
}

.box-etape.depart .box-etape__icon-inner, .box-etape.arrive .box-etape__icon-inner {
  position: relative;
  font-size: 6rem;
  color: #0082ad;
  width: 100%;
  height: 100%;
}

.box-etape.depart .box-etape__icon-inner:before, .box-etape.arrive .box-etape__icon-inner:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-etape.depart .box-etape__icon-inner:before, .box-etape.arrive .box-etape__icon-inner:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media (min-width: 768px) {
  .box-etape.arrive:before {
    height: 0;
  }
}

.box-etape.arrive .box-etape__icon-inner {
  transform-origin: center center;
  transform: rotate(40deg);
}

.box-a-la-carte {
  padding-top: 4rem;
  padding-bottom: 4rem;
  text-align: center;
}

.box-a-la-carte__list {
  padding-top: 4rem;
}

.box-a-la-carte-item {
  position: relative;
}

@media (min-width: 768px) {
  .box-a-la-carte-item {
    margin-left: 13rem;
    margin-right: 13rem;
  }
}

@media (min-width: 992px) {
  .box-a-la-carte-item {
    margin-left: 20rem;
    margin-right: 20rem;
  }
}

.box-a-la-carte-item + .box-a-la-carte-item {
  padding-top: 4rem;
}

.box-a-la-carte-item__title {
  font-size: 1.8rem;
  text-transform: uppercase;
  font-weight: 700;
}

.box-a-la-carte-item__text {
  text-align: justify;
  font-size: 1.8rem;
}

@media (max-width: 767px) {
  .box-a-la-carte-item__text {
    background-color: #FFF;
    margin-top: 0;
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
}

.box-budget {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

.box-budget__title {
  color: #0082ad;
}

.box-budget__content {
  font-size: 1.6rem;
}

@media (min-width: 992px) {
  .box-budget__content {
    margin-left: 20rem;
    margin-right: 20rem;
  }
}

.box-budget__content-title {
  font-weight: 700;
}

.box-prix-comprend {
  padding-top: 2rem;
  padding-bottom: 2rem;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  margin-top: 2rem;
}

.box-prix-comprend__button {
  font-size: 2rem;
  font-weight: 700;
  display: block;
  width: 100%;
  text-align: left;
  padding-left: 2rem;
}

.box-prix-comprend__button:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-prix-comprend__button:before {
  display: inline-block;
  font-size: 1.5rem;
  margin-left: -1.5rem;
  margin-right: 1rem;
  transition: transform .2s;
}

@media (max-width: 767px) {
  .box-prix-comprend__button:before {
    font-size: 1.11111rem;
    margin-left: -1.2rem;
  }
}

.js-readmore--expanded .box-prix-comprend__button:before {
  transform: rotate(90deg);
}

.box-prix-comprend__content {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.box-nos-experts {
  padding-top: 4rem;
  padding-bottom: 4rem;
  text-align: center;
}

.page-conseillers-interview .box-nos-experts, .box-nos-experts.greyBg {
  background-color: #f6f6f6;
}

.box-nos-experts__visual {
  display: inline-block;
  border-radius: 50%;
  margin-bottom: 2rem;
  max-width: 17.5rem;
}

.box-nos-experts__text {
  margin-left: auto;
  margin-right: auto;
  max-width: 80rem;
  margin-top: 3rem;
  line-height: 1.5;
}

.box-nos-experts__list {
  margin-left: auto;
  margin-right: auto;
  max-width: 100rem;
}

@media (min-width: 768px) {
  .box-nos-experts__list {
    display: table;
  }
}

@media (min-width: 768px) {
  .box-nos-experts__item {
    display: table-cell;
    table-layout: fixed;
    min-width: 20rem;
  }
}

@media (max-width: 767px) {
  .box-nos-experts__item {
    text-align: left;
    display: block;
    width: 100%;
    border-top: 1px solid #424242;
  }
}

@media (max-width: 767px) {
  .box-nos-experts__actions {
    margin-top: 0;
  }
}

.box-expert__icon {
  color: #0082ad;
  font-size: 6rem;
  width: 6rem;
  height: 6rem;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
}

.box-expert__icon:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@keyframes vdm-icon-pop {
  50% {
    transform: translate(-50%, -50%) scale(1.3);
  }
}

.box-expert__icon:hover:before, .box-expert__icon:focus:before, .box-expert__icon:active:before {
  animation-name: vdm-icon-pop;
  animation-duration: 0.3s;
  animation-timing-function: linear;
  animation-iteration-count: 1;
}

@media (max-width: 767px) {
  .box-expert__icon {
    line-height: 1;
    vertical-align: middle;
    font-size: 4rem;
  }
}

.box-expert__text {
  font-weight: 700;
  font-size: 1.8rem;
  margin-top: 0;
}

@media (max-width: 767px) {
  .box-expert__text {
    display: inline-block;
  }
}

.box-expert__link {
  display: inline-block;
}

@media (max-width: 767px) {
  .box-expert__link {
    display: block;
  }
}

.box-contact {
  position: fixed;
  bottom: 0;
  left: 0;
  background-color: #FFF;
  width: 100%;
  border-top: 1px solid #000;
  z-index: 3;
}

.box-contact:before, .box-contact:after {
  content: " ";
  display: table;
}

.box-contact:after {
  clear: both;
}

@media (max-width: 767px) {
  .box-contact {
    z-index: 1000;
  }
}

@media (min-width: 768px) {
  .box-contact {
    padding-left: 2rem;
  }
}

.box-contact__title {
  float: left;
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 4.88889rem;
}

@media (max-width: 767px) {
  .box-contact__title {
    display: none;
  }
}

.box-contact__list {
  float: right;
}

@media (max-width: 767px) {
  .box-contact__list {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
  }
}

@media (max-width: 767px) {
  .box-contact__link {
    display: block;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    order: 1;
    background-color: #0082ad;
    color: #fff;
    display: inline-block;
    font-weight: 700;
    padding: 1.5rem 1rem;
    text-align: center;
    text-transform: uppercase;
    transition: background-color .3s ease-out;
    vertical-align: middle;
    width: 100%;
  }
}

@media (min-width: 768px) {
  .box-contact__link {
    margin-right: 2rem;
  }
}

.box-contact__icon {
  color: #0082ad;
  font-size: 3rem;
  width: 3rem;
  height: 3rem;
  display: inline-block;
  position: relative;
  vertical-align: middle;
}

.box-contact__icon:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media (min-width: 768px) {
  .box-contact__icon {
    margin-right: 0.5rem;
  }
}

@media (max-width: 767px) {
  .box-contact__icon {
    color: #FFF;
    margin-top: -1rem;
    padding: 0 2rem;
  }
}

.box-contact__text {
  font-weight: 700;
  font-size: 1.4rem;
}

@media (max-width: 767px) {
  .box-contact__text {
    display: inline-block;
    font-weight: 400;
    font-size: 2.2rem;
  }
}

.box-contact__btn {
  padding: 1.5rem 1rem;
}

@media (max-width: 767px) {
  .box-contact__btn {
    padding-top: 1.8rem;
    padding-bottom: 1.8rem;
    display: none;
  }
}

/*Exception page produit*/
@media (max-width: 767px) {
  body.page-produit .box-contact__btn {
    display: block;
  }
}

@media (max-width: 767px) {
  body.page-produit .box-contact__icon {
    color: #0082ad;
    height: auto;
    margin: auto;
  }
}

@media (max-width: 767px) {
  body.page-produit .box-contact__text {
    display: none;
  }
}

@media (max-width: 767px) {
  body.page-produit .box-contact__link {
    background: #fff;
    width: auto;
  }
}

.nav-recherche {
  display: flex;
  align-items: center;
  background-color: #FFF;
  width: 100%;
  min-height: 5.88889rem;
  border-bottom: 1px solid #dbdde3;
}

@media (max-width: 767px) {
  .nav-recherche {
    background-color: transparent;
    z-index: auto;
    border-bottom: none;
  }
}

@media (min-width: 992px) {
  .sticky-nav-is-fixed .nav-recherche {
    padding-right: 5.55556rem;
  }
}

.nav-recherche__filters-toggle {
  color: #FFF;
  text-transform: uppercase;
  position: relative;
  padding: 0 2rem 0 0;
  position: relative;
}

@media (min-width: 768px) {
  .nav-recherche__filters-toggle {
    display: none;
  }
}

.nav-recherche__filters-toggle:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.nav-recherche__filters-toggle:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.nav-recherche__filters-toggle:after {
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -0.5rem;
  font-size: 1rem;
  margin-left: 0.5rem;
  transform: rotate(-90deg);
  width: 1rem;
  height: 1rem;
  vertical-align: middle;
}

.recherche-filters-is-opened .nav-recherche__filters-toggle:after {
  transform: rotate(90deg);
}

.nav-recherche__filters-content {
  padding-left: 1.5rem;
}

@media (max-width: 767px) {
  .nav-recherche__filters-content {
    padding-left: 2rem;
    padding-right: 2rem;
    display: block;
    position: absolute;
    left: 0;
    top: 100%;
    width: 100%;
    z-index: 1;
    min-height: 100rem;
    background-color: #f6f6f6;
    padding-top: 0.5rem;
  }
}

@media (min-width: 768px) {
  .nav-recherche__filters-list {
    display: flex;
  }
  .sticky-nav-is-fixed .nav-recherche__filters-list {
    width: calc(55% - 30px);
  }
}

@media (max-width: 767px) and (orientation: landscape) {
  .nav-recherche__filters-list:before, .nav-recherche__filters-list:after {
    content: " ";
    display: table;
  }
  .nav-recherche__filters-list:after {
    clear: both;
  }
}

.nav-recherche__filters-item {
  padding-top: 0.8rem;
  padding-bottom: 0.8rem;
  position: relative;
}

@media (min-width: 768px) {
  .nav-recherche__filters-item {
    padding-top: 1rem;
    padding-bottom: 1rem;
    padding-right: 1rem;
  }
  .nav-recherche__filters-item + .nav-recherche__filters-item {
    padding-left: 1.3rem;
  }
  .nav-recherche__filters-item + .nav-recherche__filters-item:before {
    content: "";
    position: absolute;
    display: block;
    background-color: #dbdde3;
    width: 1px;
    height: 2.5rem;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
  }
}

@media (max-width: 767px) and (orientation: landscape) {
  .nav-recherche__filters-item {
    width: 50%;
    float: left;
  }
  .nav-recherche__filters-item:nth-of-type(odd) {
    padding-right: 0.5rem;
  }
  .nav-recherche__filters-item:nth-of-type(even) {
    padding-left: 0.5rem;
  }
}

.nav-recherche__filters-label {
  font-weight: bold;
  text-transform: uppercase;
  display: block;
  margin: 0 0 0.5rem 1.2rem;
  font-size: 1.5rem;
}

@media (min-width: 768px) {
  .nav-recherche__filters-label {
    display: none;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .nav-recherche__filters-select > .dropdown-toggle {
    font-size: 1.4rem;
  }
}

.nav-recherche__filters-select.bootstrap-select:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) {
  width: auto;
}

@media (max-width: 991px) {
  .nav-recherche__filters-select.bootstrap-select:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) {
    width: 100%;
  }
}

.nav-recherche__filters-submit {
  margin-left: auto;
  margin-right: auto;
  margin-top: 1rem;
  display: block;
}

@media (min-width: 768px) {
  .nav-recherche__filters-submit {
    display: none;
  }
}

.nav-recherche__display-list {
  display: flex;
  flex-wrap: wrap;
  flex-grow: 1;
  justify-content: center;
  padding-left: 2rem;
  padding-right: 2rem;
}

@media (max-width: 991px) {
  .nav-recherche__display-list {
    justify-content: flex-start;
  }
}

@media (max-width: 767px) {
  .nav-recherche__display-list {
    justify-content: flex-end;
    padding-right: 0;
  }
}

.touch .nav-recherche__display-list {
  display: none;
}

.nav-recherche__display-item {
  display: inline-block;
}

.nav-recherche__display-item + .nav-recherche__display-item {
  margin-left: 2rem;
}

@media (min-width: 768px) and (max-width: 991px) {
  .nav-recherche__display-item + .nav-recherche__display-item {
    margin-left: 0;
  }
}

@media (max-width: 991px) {
  .nav-recherche__display-link {
    padding: 0.2rem 0.5rem;
    border-radius: 4px;
  }
}

.display-mode-liste .nav-recherche__display-link.display-liste {
  color: #0082ad;
}

@media (max-width: 991px) {
  .display-mode-liste .nav-recherche__display-link.display-liste {
    background-color: #FFF;
  }
}

.display-mode-carte .nav-recherche__display-link.display-carte {
  color: #0082ad;
}

@media (max-width: 991px) {
  .display-mode-carte .nav-recherche__display-link.display-carte {
    background-color: #FFF;
  }
}

.display-mode-hybride .nav-recherche__display-link.display-hybride {
  color: #0082ad;
}

@media (max-width: 991px) {
  .display-mode-hybride .nav-recherche__display-link.display-hybride {
    background-color: #FFF;
  }
}

@media (max-width: 767px) {
  .nav-recherche__display-link {
    color: #FFF;
  }
}

.nav-recherche__display-icon {
  position: relative;
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: middle;
}

.nav-recherche__display-icon:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.nav-recherche__display-text {
  display: inline-block;
  vertical-align: middle;
  text-transform: uppercase;
  font-weight: 700;
}

@media (min-width: 768px) {
  .box-recherche {
    padding-left: 5.55556rem;
    padding-right: 5.55556rem;
  }
}

.box-recherche__row {
  border-bottom: 1px solid #dbdde3;
}

.box-recherche__col.col-content {
  width: 55%;
}

.display-mode-carte .box-recherche__col.col-content {
  display: none;
}

.box-recherche__col.col-map {
  position: relative;
}

.display-mode-liste .box-recherche__col.col-map {
  display: none;
}

.display-mode-carte .box-recherche__col.col-map {
  width: 100%;
}

.box-recherche__filter-list {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.box-recherche__filter-item {
  display: inline-block;
}

.box-recherche__filter {
  text-transform: uppercase;
  font-weight: 700;
  font-size: 1.4rem;
  padding: 6px 12px;
  letter-spacing: .1rem;
  position: relative;
  position: relative;
}

.box-recherche__filter:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-recherche__filter:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.box-recherche__filter:after {
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -0.5rem;
  font-size: 1rem;
  margin-left: 0.5rem;
  transform: rotate(90deg);
  color: #0082ad;
  width: 1rem;
  height: 1rem;
  vertical-align: middle;
}

.box-recherche__filter.desc:after {
  transform: rotate(-90deg);
}

.box-recherche__list {
  margin-top: 1rem;
  padding: 0 2rem 2rem 2rem;
}

.box-recherche__map-wrapper {
  height: calc(100vh - 8rem);
  width: 100%;
  position: relative;
}

.box-recherche__map-wrapper.affix {
  position: fixed !important;
  top: 5.88889rem;
  transform: translate3d(0, 0, 0);
}

.display-mode-carte .box-recherche__map-wrapper {
  height: calc(75vh);
}

.box-recherche__map {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-recherche__pager {
  text-align: center;
}

.gm-style-iw-container {
  text-align: center;
}

.gm-style-iw-container > div:first-child > div {
  border-radius: 0 !important;
}

.gm-style-iw-container > div:first-child > div:first-child {
  border-top-color: transparent !important;
}

.gm-style-iw-container > div:first-child > div:nth-child(2) {
  background-color: #FFF !important;
  box-shadow: 0 0 15px 1px rgba(0, 0, 0, 0.07) !important;
  display: none !important;
}

.gm-style-iw-container > div:first-child > div:nth-child(3) {
  margin-top: 4px !important;
}

.gm-style-iw-container > div:first-child > div:nth-child(3) > div:first-child > div {
  transform: skewX(40deg) !important;
  box-shadow: 0 0 15px 1px rgba(0, 0, 0, 0.07) !important;
}

.gm-style-iw-container > div:first-child > div:nth-child(3) > div:nth-child(2) > div {
  transform: skewX(-40deg) !important;
  box-shadow: 0 0 15px 1px rgba(0, 0, 0, 0.07) !important;
}

.gm-style-iw-container > div:first-child > div:nth-child(4) {
  background-color: red !important;
  display: none !important;
}

.gm-style-iw-container .gm-style-iw {
  bottom: 0 !important;
  left: 0 !important;
  background-color: #FFF !important;
  margin-left: 15px !important;
  padding: 20px 0 10px 0 !important;
  top: auto !important;
}

.gm-style-iw-container .gm-style-iw > div:first-child {
  overflow: visible !important;
}

.gm-style-iw-container .gm-style-iw + div {
  top: 22px !important;
  right: 22px !important;
}

.gm-style-iw-container .gm-style img {
  max-width: 100%;
}

.box-infos-pays {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-infos-pays__text {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 4rem;
  max-width: 668px;
  line-height: 1.5;
}

.box-infos-pays__list {
  margin-left: auto;
  margin-right: auto;
  max-width: 80rem;
  text-align: center;
}

.box-infos-pays__list:before, .box-infos-pays__list:after {
  content: " ";
  display: table;
}

.box-infos-pays__list:after {
  clear: both;
}

.box-infos-pays__item {
  display: block;
  width: 33.333%;
  float: left;
}

@media (max-width: 767px) {
  .box-infos-pays__item {
    text-align: left;
    display: block;
    width: 100%;
    border-top: 1px solid #424242;
  }
}

.box-info-pays__link {
  display: inline-block;
}

@media (max-width: 767px) {
  .box-info-pays__link {
    display: table;
    table-layout: fixed;
    width: 100%;
  }
}

.box-info-pays__icon {
  color: #ff4d42;
  font-size: 6rem;
  width: 6rem;
  height: 6rem;
  display: inline-block;
  position: relative;
}

.box-info-pays__icon:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media (max-width: 767px) {
  .box-info-pays__icon {
    display: table-cell;
    vertical-align: middle;
    font-size: 4rem;
  }
}

.box-info-pays__title {
  font-weight: 700;
  font-size: 1.8rem;
  margin-top: 0;
  text-transform: uppercase;
}

@media (max-width: 767px) {
  .box-info-pays__title {
    display: table-cell;
    vertical-align: middle;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    width: 20rem;
  }
}

.box-info-pays__text {
  font-weight: 700;
  font-size: 1.8rem;
  margin-top: 0;
  text-transform: uppercase;
  color: #ff4d42;
}

@media (max-width: 767px) {
  .box-info-pays__text {
    display: table-cell;
    vertical-align: middle;
  }
}

.box-quand-partir {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-quand-partir__content {
  background-size: cover;
  background-position: 50% 50%;
  padding: 4rem;
  text-align: center;
}

.box-quand-partir__list {
  background-color: #FFF;
  display: inline-block;
  padding: 1rem 2rem;
}

.box-mois {
  text-align: center;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

@media (min-width: 992px) {
  .box-mois {
    padding: 2rem;
  }
}

.box-mois > .icon-star {
  color: #ff4d42;
}

.box-mois__title {
  font-weight: bold;
}

.box-bonnes-raisons {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media (max-width: 480px) {
  .box-bonnes-raisons__list {
    margin-left: 5.5rem;
    margin-right: 5.5rem;
  }
}

@media (min-width: 480px) {
  .box-bonnes-raisons__list {
    margin-left: 6em;
    margin-right: 6em;
  }
}

.box-bonne-raison {
  text-align: center;
  padding-left: 3rem;
  padding-right: 3rem;
}

.box-bonne-raison__index {
  color: #ff4d42;
  font-size: 6rem;
}

.box-utile {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-utile__content {
  background-size: cover;
  background-position: 50% 50%;
  padding: 6rem 4rem;
}

@media (max-width: 767px) {
  .box-utile__content {
    padding-top: 0rem;
    padding-bottom: 0rem;
  }
}

@media (min-width: 768px) {
  .box-utile__row {
    display: flex;
  }
}

.box-utile-item {
  margin-left: 10rem;
  margin-right: 10rem;
  background-color: #FFF;
  padding: 2rem;
  box-shadow: 10px 10px 0px 0px #ff4d42;
  height: 100%;
}

@media (max-width: 991px) {
  .box-utile-item {
    margin-left: 4rem;
    margin-right: 4rem;
  }
}

@media (max-width: 767px) {
  .box-utile-item {
    margin: 6rem 0;
  }
}

.box-utile-item__title {
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 2rem;
  font-size: 2rem;
}

.box-utile-item__list > li {
  margin-top: 0.5rem;
}

.box-utile-item__list > li > a {
  font-weight: 500;
  position: relative;
  padding-left: 1.5rem;
}

.box-utile-item__list > li > a:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-utile-item__list > li > a:before {
  color: #ff4d42;
  font-size: 1rem;
  position: absolute;
  left: 0;
  top: 0.4rem;
}

.box-utile-item__list > li > a:hover {
  color: #ff4d42;
  text-decoration: underline;
}

.box-a-decouvrir {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media (max-width: 767px) {
  .box-a-decouvrir .row > * {
    margin-top: 4rem;
  }
  .box-a-decouvrir .row > *:first-child {
    margin-top: 0;
  }
}

.box-a-decouvrir-item {
  background-size: cover;
  background-position: 50% 50%;
  display: block;
  height: 22rem;
  text-align: center;
}

.box-a-decouvrir-item:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  margin-right: -0.25em;
  /* space width */
}

.box-a-decouvrir-item__title {
  background-color: #FFF;
  display: inline-block;
  text-transform: uppercase;
  padding: 1rem 6rem;
  font-weight: 700;
  vertical-align: middle;
}

.box-voyages-pays {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-articles {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-articles__item {
  margin-left: auto;
  margin-right: auto;
  max-width: 668px;
}

.box-articles__item + .box-articles__item {
  margin-top: 4rem;
}

.box-article__number {
  font-weight: 700;
  font-size: 3rem;
  text-align: center;
  color: #0082ad;
}

.box-article__title {
  font-weight: 400;
  font-size: 3rem;
  margin-top: 0;
  text-transform: uppercase;
  text-align: center;
  margin-bottom: 2rem;
}

.box-article__text {
  text-align: justify;
  line-height: 1.5;
}

.box-article__text a {
  font-weight: 500;
  text-decoration: underline;
}

.box-article__text h2 {
  font-size: medium;
  font-weight: bold;
  margin-top: 2rem;
}

.page-article-guide .box-article ul {
  list-style: inside;
  line-height: 2;
}

.box-intro-conseillers {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-intro-conseillers__chapo {
  margin-top: 4rem;
  margin-bottom: 4rem;
  margin-left: auto;
  margin-right: auto;
  max-width: 70rem;
  font-size: 2.5rem;
  text-align: center;
}

.box-intro-conseillers__text {
  margin-left: auto;
  margin-right: auto;
  margin-top: 4rem;
  max-width: 70rem;
  line-height: 1.5;
}

.box-intro-conseillers__text > p + p {
  margin-top: 2rem;
}

.box-intro-conseillers__visual {
  margin-top: 4rem;
  margin-bottom: 4rem;
  margin-left: auto;
  margin-right: auto;
  display: block;
  width: 100%;
}

.box-conseillers {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

.box-conseillers__list {
  margin-left: -1.7rem;
  margin-right: -1.7rem;
}

@media (min-width: 768px) {
  .box-conseillers__list {
    margin-left: 6rem;
    margin-right: 6rem;
  }
}

@media (min-width: 768px) {
  .box-conseillers .slick-arrow {
    top: 25%;
  }
}

@media (min-width: 992px) {
  .box-conseillers .slick-arrow {
    top: 30%;
  }
}

@media (min-width: 1440px) {
  .box-conseillers .slick-arrow {
    top: 35%;
  }
}

.box-conseillers-item {
  padding-left: 3rem;
  padding-right: 3rem;
}

.box-conseillers-item__visual-container {
  position: relative;
  margin-bottom: 1rem;
}

.box-conseillers-item__visual-container:after {
  content: "";
  display: block;
  padding-bottom: 100%;
}

.box-conseillers-item__visual-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

.box-conseillers-item__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: relative;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-conseillers-item__chapo {
  font-size: 1.3rem;
  text-transform: uppercase;
  font-weight: 400;
  padding-left: 1.5rem;
  position: relative;
}

.box-conseillers-item__chapo:before {
  content: "";
  width: 8px;
  height: 1px;
  background-color: #000;
  display: block;
  position: absolute;
  left: 0;
  top: 7px;
}

.box-conseillers-item__title {
  font-size: 2rem;
  margin-bottom: 1rem;
  font-weight: 700;
}

.box-conseillers-item__text {
  margin-bottom: 1rem;
}

.box-interviews {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

.box-interview {
  margin-left: auto;
  margin-right: auto;
  max-width: 100rem;
}

.box-interview + .box-interview {
  margin-top: 8rem;
}

@media (min-width: 992px) {
  .box-interview__row {
    margin-left: -30px;
    margin-right: -30px;
  }
  .box-interview__row > * {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media (min-width: 1440px) {
  .box-interview__row {
    margin-left: -50px;
    margin-right: -50px;
  }
  .box-interview__row > * {
    padding-left: 50px;
    padding-right: 50px;
  }
}

@media (max-width: 767px) {
  .box-interview__visual {
    margin-bottom: 2rem;
  }
}

.box-interview__title {
  text-transform: uppercase;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.5;
  margin-bottom: 4rem;
}

.box-interview__title span {
  color: #0082ad;
}

.box-interview__question {
  font-weight: 700;
}

.box-interview__reponse {
  line-height: 1.5;
}

.box-interview__pseudo-link {
  color: #0082ad;
  font-weight: 700;
  text-decoration: underline;
}

.box-interview-detail {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-interview-detail__header {
  margin-left: auto;
  margin-right: auto;
  max-width: 70rem;
  display: table;
  width: 100%;
  margin-bottom: 2rem;
}

.box-interview-detail__header > * {
  display: table-cell;
  vertical-align: middle;
}

.box-interview-detail__header-content {
  padding-right: 2rem;
}

.box-interview-detail__header-visual {
  width: 16rem;
}

.box-interview-detail__visual {
  border-radius: 50%;
}

.box-interview-detail__header-title {
  font-size: 4rem;
}

.box-interview-detail__header-subtitle {
  color: #0082ad;
  display: block;
  font-weight: 400;
  font-size: 2.3rem;
}

.box-interview-detail__list {
  margin-left: auto;
  margin-right: auto;
  max-width: 70rem;
  margin-bottom: 6rem;
}

.box-interview-detail__title {
  text-transform: uppercase;
  font-size: 2.4rem;
  font-weight: 700;
  margin-bottom: 3rem;
}

.box-interview-detail__question {
  font-weight: 700;
  font-size: inherit;
  margin-bottom: 0.3rem;
}

.box-interview-detail__reponse {
  margin-top: 0;
  margin-bottom: 3rem;
  line-height: 1.5;
}

.box-interview-detail__coup-de-coeur {
  margin-left: auto;
  margin-right: auto;
  max-width: 70rem;
}

.box-interview-detail__subtitle {
  text-transform: uppercase;
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 3rem;
}

.box-avis {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

.box-avis__search {
  text-align: center;
  margin-bottom: 4rem;
}

.box-avis__pager {
  text-align: center;
  margin-top: 4rem;
}

.box-avis-item {
  margin-left: auto;
  margin-right: auto;
  max-width: 100rem;
}

.box-avis-item + .box-avis-item {
  margin-top: 8rem;
}

@media (min-width: 992px) {
  .box-avis-item__row {
    margin-left: -30px;
    margin-right: -30px;
  }
  .box-avis-item__row > * {
    padding-left: 30px;
    padding-right: 30px;
  }
}

.box-avis-item__visual-container {
  position: relative;
  margin-bottom: 1rem;
}

.box-avis-item__visual-container:after {
  content: "";
  display: block;
  padding-bottom: 66.66667%;
}

.box-avis-item__visual-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

.box-avis-item__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  margin-bottom: 2rem;
}

.box-avis-item__notation {
  font-size: 2.4rem;
  color: #0082ad;
  margin-bottom: 1rem;
}

.box-avis-item__pays {
  font-weight: 500;
  font-size: 3rem;
}

.box-avis-item__client {
  font-size: 1.8rem;
  margin-bottom: 2rem;
}

.box-avis-item__date {
  text-transform: uppercase;
  font-weight: 500;
  color: #0082ad;
}

.box-avis-item__text {
  line-height: 1.5;
  margin-top: 0;
}

.box-avis-item__pseudo-link {
  color: #0082ad;
  font-weight: 500;
  text-decoration: underline;
  text-transform: uppercase;
}

.box-envies-moment {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-envies-moment-item {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 3rem;
  text-align: center;
}

.box-envies-moment-item__visual {
  margin-bottom: 1rem;
}

.box-envies-moment-item__title {
  font-size: 2rem;
  font-weight: 500;
}

.box-envies-theme {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-envies-theme-item {
  display: block;
  background-color: #dbdde3;
  position: relative;
  color: #FFF;
  margin-bottom: 3rem;
  text-align: center;
}

.box-envies-theme-item:after {
  content: "";
  display: block;
  padding-bottom: 100%;
}

.box-envies-theme-item__inner {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.box-envies-theme-item__inner:before {
  content: "";
  background-color: #000;
  opacity: .15;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
}

.theme .box-envies-theme-item__inner {
  top: 2.5rem;
  left: 2.5rem;
  right: 2.5rem;
  bottom: 2.5rem;
}

.theme .box-envies-theme-item__inner:before {
  opacity: 0;
}

@media (max-width: 480px) {
  .theme .box-envies-theme-item__inner {
    top: 1rem;
    left: 1rem;
    right: 1rem;
    bottom: 1rem;
  }
}

.box-envies-theme-item__content {
  padding-left: 1rem;
  padding-right: 1rem;
  position: absolute;
  width: 100%;
  z-index: 1;
  top: calc(50%);
  transform: translateY(-50%);
}

.theme .box-envies-theme-item__content {
  background-color: #FFF;
  color: #000;
  transform: none;
  top: 0;
  bottom: 0;
  text-align: left;
  padding: 3rem;
}

@media (max-width: 480px) {
  .theme .box-envies-theme-item__content {
    padding: 1rem;
  }
}

.box-envies-theme-item__subtitle {
  text-transform: uppercase;
  font-size: 2rem;
  margin-bottom: 0.5rem;
}

@media (max-width: 991px) {
  .box-envies-theme-item__subtitle {
    font-size: 1.4rem;
  }
}

@media (min-width: 480px) and (max-width: 767px) {
  .box-envies-theme-item__subtitle {
    font-size: 1.6rem;
  }
}

.box-envies-theme-item__title {
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.1;
}

@media (max-width: 480px) {
  .box-envies-theme-item__title {
    font-size: 2rem;
  }
}

.theme .box-envies-theme-item__title {
  font-weight: 700;
  font-size: 3.6rem;
}

@media (max-width: 991px) {
  .theme .box-envies-theme-item__title {
    font-size: 2rem;
  }
}

@media (min-width: 480px) and (max-width: 767px) {
  .theme .box-envies-theme-item__title {
    font-size: 3rem;
  }
}

.box-envies-theme-item__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-envies-theme-item.theme {
  background-size: cover;
  background-position: 50% 50%;
  background-image: url(../images/background/quand-partir/702x360.jpg);
}

.box-deconnecter {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-deconnecter__inner {
  background-color: #feac94;
  position: relative;
  display: table;
  width: 100%;
  height: 50rem;
  table-layout: fixed;
}

.carousel .box-deconnecter__inner {
  background-color: #c6d8c1;
}

@media (max-width: 767px) {
  .box-deconnecter__inner {
    display: block;
    height: auto;
  }
}

.box-deconnecter__header {
  width: 50rem;
  padding: 6rem;
  display: table-cell;
  vertical-align: middle;
  color: #FFF;
  position: relative;
}

.carousel .box-deconnecter__header:before {
  content: "";
  width: 0;
  height: 0;
  border-top: 3rem solid transparent;
  border-bottom: 3rem solid transparent;
  border-left: 3rem solid #c6d8c1;
  position: absolute;
  top: 50%;
  left: 100%;
  z-index: 1;
  transform: translateY(-50%);
}

@media (max-width: 767px) {
  .carousel .box-deconnecter__header:before {
    display: none;
  }
}

@media (max-width: 991px) {
  .box-deconnecter__header {
    padding: 4rem;
    width: 40%;
  }
}

@media (max-width: 767px) {
  .box-deconnecter__header {
    display: block;
    padding: 3rem;
    width: auto;
  }
}

.box-deconnecter__actions {
  text-align: left;
}

.box-deconnecter__content {
  display: table-cell;
  vertical-align: top;
  position: relative;
}

@media (max-width: 767px) {
  .box-deconnecter__content {
    display: block;
  }
}

.box-deconnecter__list {
  height: 100%;
}

@media (min-width: 768px) {
  .box-deconnecter__list, .box-deconnecter__list.slick-slider {
    position: absolute;
    width: 100%;
  }
}

.box-deconnecter__list .slick-list,
.box-deconnecter__list .slick-track {
  height: 100%;
}

.box-deconnecter__list-visual {
  height: 100%;
}

.box-deconnecter__title {
  font-size: 3.4rem;
  font-weight: 700;
  margin-bottom: 2rem;
}

.box-deconnecter__text {
  line-height: 1.5;
  font-size: 1.6rem;
}

.box-deconnecter .slick-dots {
  bottom: 2rem;
}

.box-deconnecter-item {
  display: block;
  position: relative;
  height: 100%;
}

.box-deconnecter-item__content {
  height: 100%;
  color: #FFF;
  padding: 6rem;
  position: relative;
}

.carousel .box-deconnecter-item__content:before {
  content: "";
  background-color: #000;
  opacity: .15;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

@media (max-width: 767px) {
  .box-deconnecter-item__content {
    padding: 3rem;
    height: 25rem;
  }
}

.box-deconnecter-item__title {
  font-size: 4rem;
  position: absolute;
  z-index: 1;
  text-transform: uppercase;
  line-height: 1;
}

.box-deconnecter-item__title strong {
  font-weight: 700;
}

.box-deconnecter-item__visual {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  overflow: hidden;
  object-fit: cover;
  font-family: "object-fit: cover";
}

.box-destinations-favorites {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-destinations-favorites-item {
  display: block;
  background-color: #dbdde3;
  position: relative;
  color: #FFF;
  margin-bottom: 3rem;
  text-align: center;
}

.box-destinations-favorites-item:after {
  content: "";
  display: block;
  padding-bottom: 66.66%;
}

.box-destinations-favorites-item__inner {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.box-destinations-favorites-item__inner:before {
  content: "";
  background-color: #000;
  opacity: .15;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
}

.box-destinations-favorites-item__content {
  padding-left: 1rem;
  padding-right: 1rem;
  position: absolute;
  width: 100%;
  z-index: 1;
  top: calc(50%);
  transform: translateY(-50%);
}

.box-destinations-favorites-item__title {
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.1;
}

@media (max-width: 480px) {
  .box-destinations-favorites-item__title {
    font-size: 2rem;
  }
}

.box-destinations-favorites-item__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-saisons {
  padding-top: 4rem;
  padding-bottom: 4rem;
  margin-left: 0px;
  margin-right: 0px;
}

.box-saisons > * {
  padding-left: 0px;
  padding-right: 0px;
}

.box-saisons-item {
  display: block;
  background-color: #dbdde3;
  position: relative;
  color: #FFF;
  text-align: center;
}

.box-saisons-item:after {
  content: "";
  display: block;
  padding-bottom: 100%;
}

.box-saisons-item__inner {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.box-saisons-item__inner:before {
  content: "";
  background-color: #000;
  opacity: .15;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
}

.box-saisons-item__content {
  padding-left: 1rem;
  padding-right: 1rem;
  position: absolute;
  width: 100%;
  z-index: 1;
  top: calc(50%);
  transform: translateY(-50%);
}

.box-saisons-item__title {
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.1;
}

@media (min-width: 768px) and (max-width: 991px) {
  .box-saisons-item__title {
    font-size: 3.2rem;
  }
}

@media (max-width: 480px) {
  .box-saisons-item__title {
    font-size: 2.6rem;
  }
}

.box-saisons-item__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-onpartou {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-onpartou__link {
  display: block;
}

.box-onpartou__inner {
  position: relative;
  padding: 5rem;
}

@media (max-width: 480px) {
  .box-onpartou__inner {
    padding: 2rem;
  }
}

.box-onpartou__visual {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  overflow: hidden;
  object-fit: cover;
  font-family: "object-fit: cover";
}

.box-onpartou__content {
  position: relative;
  z-index: 1;
  background-color: #FFF;
  text-align: center;
  padding: 4rem;
  max-width: 32rem;
}

@media (max-width: 480px) {
  .box-onpartou__content {
    padding: 2rem;
  }
}

.box-onpartou__title {
  font-size: 4.4rem;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 3rem;
  /*
    @media (min-width: 375px) {
      font-size:2.5rem;
    }
    @media (min-width: $screen-xs) {
      font-size:2.5rem;
    }
    @media (min-width: $screen-md) {
      font-size:3.6rem;
    }
    */
}

.box-onpartou__text {
  font-size: 1.6rem;
  margin-bottom: 3rem;
  /*
    @media (max-width: $screen-xs-max) {
      max-width:60%;
    }
    @media (min-width: 375px) {
      font-size:1.3rem;
    }
    */
}

.box-onpartou__btn {
  width: 100%;
}

.box-idees-circuit {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-top-destinations {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

@media (min-width: 768px) {
  .no-touch .box-top-destinations__content {
    width: 41%;
    float: left;
    position: relative;
  }
}

.box-top-destinations__visual {
  border: 1.2rem solid #FFF;
  position: absolute;
  top: 0;
  left: calc(100% + 15px);
  z-index: 1;
  max-width: 45.2rem;
  display: none;
}

@media (min-width: 768px) {
  .no-touch a.active .box-top-destinations__visual {
    display: block;
  }
}

@media (min-width: 992px) {
  .box-top-destinations__visual {
    max-width: 59.5rem;
  }
}

@media (min-width: 1440px) {
  .box-top-destinations__visual {
    max-width: 68.7rem;
  }
}

.box-top-destinations__visual:before {
  content: "";
  height: 100%;
}

.box-top-destinations__title {
  margin-bottom: 2rem;
}

.box-top-destinations__list {
  column-count: 4;
}

@media (max-width: 767px) {
  .box-top-destinations__list {
    column-count: 2;
  }
}

.no-touch .box-top-destinations__list {
  column-count: 2;
}

.box-top-destinations__list > li {
  margin-bottom: 1rem;
}

.box-top-destinations__list > li > a {
  text-transform: uppercase;
}

.no-touch .box-top-destinations__list > li > a.active {
  color: #ff4d42;
}

.box-brochure {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-brochure__content {
  text-align: center;
}

.box-brochure__list {
  box-shadow: 5px 5px 5px 0px rgba(0, 0, 0, 0.2);
}

.box-brochure__list.slick-dotted.slick-slider {
  margin-bottom: 6rem;
}

.box-brochure__list .slick-dots {
  bottom: -4rem;
}

@media (min-width: 768px) and (max-width: 1439px) {
  .box-brochure__content {
    padding-top: 2rem;
  }
}

@media (min-width: 1440px) {
  .box-brochure__content {
    padding-top: 4rem;
  }
}

.box-brochure__text {
  margin-left: auto;
  margin-right: auto;
  max-width: 40rem;
}

.page-accueil .box-brochure__subtitle {
  color: #feac94;
}

.page-accueil .box-brochure__title {
  font-weight: 400;
  font-family: "Dala Moa",serif;
  text-transform: uppercase;
}

.page-accueil .box-brochure__cta {
  color: #feac94;
}

.box-dix-bonnes-raisons {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-dix-bonnes-raisons .header-box > .subtitle {
  color: #ff4d42;
}

.box-dix-bonnes-raisons__inner {
  background-size: cover;
  background-position: 50% 50%;
  padding: 4rem 1rem;
  text-align: center;
}

.box-dix-bonnes-raisons__content {
  margin-left: auto;
  margin-right: auto;
  background-color: #FFF;
  padding: 4rem 4rem 2rem 4rem;
  display: inline-block;
  text-align: left;
  max-width: 70rem;
}

@media (max-width: 480px) {
  .box-dix-bonnes-raisons__content {
    padding: 3rem 3rem 1rem 3rem;
  }
}

@media (min-width: 768px) {
  .box-dix-bonnes-raisons__list {
    column-count: 2;
    column-gap: 4rem;
  }
}

.box-dix-bonnes-raisons__list > li {
  margin-bottom: 2rem;
}

.box-services-plus {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-services-plus .header-box > .subtitle {
  color: #ff4d42;
}

.box-services-plus__list {
  padding-left: 2rem;
  padding-right: 2rem;
  text-align: center;
}

@media (max-width: 767px) {
  .box-services-plus__item {
    margin-top: 3rem;
  }
}

.box-services-plus__row {
  margin-left: -30px;
  margin-right: -30px;
}

.box-services-plus__row > * {
  padding-left: 30px;
  padding-right: 30px;
}

.box-service-plus__link {
  display: inline-block;
}

.box-service-plus__icon {
  color: #ff4d42;
  font-size: 6rem;
  width: 6rem;
  height: 6rem;
  display: inline-block;
  position: relative;
}

.box-service-plus__icon:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.box-service-plus__title {
  font-weight: 700;
  font-size: 1.8rem;
  margin-top: 0;
  text-transform: uppercase;
}

.box-service-plus__text {
  line-height: 1.5;
}

.box-offres-et-attentions {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #fff6f5;
}

.box-offres-et-attentions .header-box > .subtitle {
  color: #ff4d42;
}

.box-offres-et-attentions-item {
  margin-left: auto;
  margin-right: auto;
  max-width: 100rem;
  text-align: center;
}

.box-offres-et-attentions-item + .box-offres-et-attentions-item {
  margin-top: 4rem;
}

@media (min-width: 768px) {
  .box-offres-et-attentions-item__row {
    display: flex;
  }
}

@media (max-width: 767px) {
  .box-offres-et-attentions-item__visual {
    margin-bottom: 2rem;
  }
}

@media (min-width: 768px) {
  .box-offres-et-attentions-item__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    padding: 4rem;
  }
}

.box-offres-et-attentions-item__title {
  text-transform: uppercase;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.5;
  margin-bottom: 2rem;
  letter-spacing: 0.2rem;
}

@media (min-width: 768px) {
  .box-offres-et-attentions-item__title {
    margin-bottom: 4rem;
  }
}

.box-offres-et-attentions-item__text {
  line-height: 1.5;
}

.box-presentation-cheque {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

@media (min-width: 768px) {
  .box-presentation-cheque__row {
    display: flex;
  }
}

@media (max-width: 767px) {
  .box-presentation-cheque__col + .box-presentation-cheque__col {
    margin-top: 4rem;
  }
}

.box-presentation-cheque-item {
  background-color: #FFF;
  height: 100%;
  position: relative;
}

.box-presentation-cheque-item__inner {
  padding: 2rem 3rem 3rem 3rem;
}

@media (min-width: 768px) {
  .box-presentation-cheque-item__inner {
    padding-bottom: 9rem;
  }
}

.box-presentation-cheque-item__title {
  font-size: 3rem;
  color: #0082ad;
  font-weight: bold;
  margin-bottom: 2rem;
}

.box-presentation-cheque-item__content .title {
  font-weight: bold;
  margin-top: 2rem;
  font-size: 1.8rem;
}

.box-presentation-cheque-item__content p {
  margin-top: 0;
}

.box-presentation-cheque-item__content .link {
  color: #0082ad;
  font-weight: 400;
  display: inline-block;
  margin-top: 2rem;
}

.box-presentation-cheque-item__btn {
  width: 100%;
}

@media (min-width: 768px) {
  .box-presentation-cheque-item__btn {
    position: absolute;
    bottom: 0;
    left: 0;
  }
}

.box-comment-ca-marche {
  background-size: cover;
  background-position: 50% 50%;
  padding: 10rem 1rem;
  text-align: center;
}

@media (max-width: 767px) {
  .box-comment-ca-marche {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}

.box-comment-ca-marche__content {
  margin-left: auto;
  margin-right: auto;
  background-color: #FFF;
  padding: 5rem;
  display: inline-block;
  text-align: center;
  max-width: 70rem;
}

@media (max-width: 480px) {
  .box-comment-ca-marche__content {
    padding: 3rem 3rem 1rem 3rem;
  }
}

.box-comment-ca-marche__text {
  line-height: 1.5;
  margin-bottom: 4rem;
}

.box-comment-ca-marche__link {
  color: #0082ad;
  font-weight: 400;
}

.box-cheques-tunnel {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-cheques-tunnel__inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 80rem;
}

.box-cheques-tunnel__subtitle {
  font-size: 3rem;
  color: #0082ad;
  margin-bottom: 3rem;
  line-height: 1.1;
}

@media (max-width: 767px) {
  .box-cheques-tunnel__subtitle {
    font-size: 2.8rem;
  }
}

.box-cheques-tunnel__recap {
  max-width: 56rem;
}

.box-cheques-tunnel__cb-text {
  margin-bottom: 4rem;
  font-size: 2rem;
}

.box-cheques-tunnel__cb-list {
  margin-left: auto;
  margin-right: auto;
  max-width: 60rem;
  text-align: center;
}

.box-cheques-tunnel__cb-list img {
  width: 12rem;
}

.box-cheques-tunnel__cb-row {
  margin-left: -10px;
  margin-right: -10px;
}

.box-cheques-tunnel__cb-row > * {
  padding-left: 10px;
  padding-right: 10px;
}

.ligne-recap {
  margin-bottom: 4rem;
}

.ligne-recap__header {
  display: table;
  table-layout: fixed;
  width: 100%;
  border-bottom: 1px solid #dbdde3;
}

.ligne-recap__label {
  display: table-cell;
  font-weight: 700;
  font-size: 2rem;
  vertical-align: bottom;
}

.ligne-recap__prix {
  display: table-cell;
  font-size: 2rem;
  text-align: right;
  width: 8rem;
  vertical-align: bottom;
}

.ligne-recap__content {
  margin-top: 2rem;
  font-size: 2rem;
}

.ligne-recap__content .link {
  display: block;
  font-size: 1.6rem;
  margin-top: 1rem;
}

.box-ddv {
  margin-top: 3rem;
}

.page-ddv-light .box-ddv {
  margin-top: 1rem;
  margin-bottom: 4rem;
}

.page-ddv-light .box-ddv .actions {
  margin-top: 2rem;
}

@media (min-width: 768px) {
  .page-ddv-pays .box-ddv {
    margin-top: 0;
    position: relative;
    top: -6rem;
  }
}

@media (min-width: 992px) {
  .page-ddv-pays .box-ddv {
    top: -15rem;
  }
}

.box-ddv__inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 80rem;
  background-color: #FFF;
}

.page-ddv-light .box-ddv__inner {
  max-width: 100rem;
}

@media (min-width: 1440px) {
  .box-ddv__inner {
    max-width: 100rem;
  }
}

@media (min-width: 768px) {
  .box-ddv__inner {
    padding: 2rem;
  }
  .page-ddv-confirmation .box-ddv__inner {
    padding: 2rem 6rem 6rem 6rem;
  }
}

.box-ddv__subtitle {
  font-size: 3rem;
  color: #0082ad;
  margin-bottom: 3rem;
  line-height: 1.1;
}

@media (max-width: 767px) {
  .box-ddv__subtitle {
    font-size: 2.8rem;
  }
}

.box-ddv__text {
  margin-bottom: 2rem;
}

.box-ddv__obligatoire {
  font-size: 1.2rem;
  text-align: right;
  margin-top: 2rem;
  margin-bottom: 4rem;
}

.page-ddv-light .box-ddv__obligatoire {
  margin-bottom: 2rem;
}

@media (min-width: 768px) {
  .page-ddv-light .box-ddv__obligatoire {
    margin-top: -2rem;
  }
}

.box-ddv__mentions {
  font-size: 1.2rem;
}

.page-ddv-light .box-ddv__mentions {
  font-size: 1rem;
}

.box-ddv-mea {
  position: relative;
  text-align: center;
  color: #FFF;
  display: block;
  margin-bottom: 4rem;
}

.box-ddv-mea:before {
  content: "";
  background-color: #000;
  opacity: .2;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-ddv-mea__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  width: 100%;
  height: 36rem;
}

.box-ddv-mea__content {
  position: absolute;
  width: 100%;
  top: 50%;
  left: 0;
  z-index: 2;
  transform: translateY(-30%);
  padding-left: 2rem;
  padding-right: 2rem;
}

.box-ddv-mea__title {
  font-size: 2.5rem;
  letter-spacing: .5rem;
  font-weight: 500;
  text-transform: uppercase;
  color: #FFF;
  margin-bottom: 1.5rem;
}

@media (max-width: 480px) {
  .box-ddv-mea__title {
    font-size: 2rem;
  }
}

.box-ddv-mea__subtitle-alpha {
  font-family: "Spectral", serif;
  font-style: italic;
  font-weight: 300;
  color: #FFF;
  letter-spacing: .2rem;
  font-size: 2.2rem;
  margin-bottom: 2rem;
  text-transform: none;
  display: block;
}

@media (max-width: 767px) {
  .box-ddv-mea__subtitle-alpha {
    font-size: 2rem;
  }
}

@media (min-width: 992px) {
  .box-ddv-mea__subtitle-alpha {
    font-size: 2.8rem;
  }
}

.ddv-confirmation-header {
  text-align: center;
  margin-bottom: 2rem;
}

.ddv-confirmation-title {
  font-size: 4rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 2rem;
}

.ddv-confirmation-title__icon {
  position: relative;
  font-size: 6rem;
  height: 7rem;
}

.ddv-confirmation-title__icon:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.box-pdf {
  text-align: right;
  margin-bottom: 4rem;
}

.page-ddv-light .box-pdf {
  margin-bottom: 2rem;
}

.box-pdf__content {
  display: inline-block;
  vertical-align: bottom;
}

.box-pdf__pseudo-link {
  font-weight: 700;
  font-size: 1.8rem;
}

.box-pdf__pseudo-link:hover {
  text-decoration: underline;
}

.box-pdf__format {
  font-size: 1.2rem;
}

.box-pdf__visual {
  display: inline-block;
  width: 7rem;
  vertical-align: bottom;
}

.box-nos-agences {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-nos-agences__row {
  margin-left: -50px;
  margin-right: -50px;
}

.box-nos-agences__row > * {
  padding-left: 50px;
  padding-right: 50px;
}

@media (max-width: 1439px) {
  .box-nos-agences__row {
    margin-left: -30px;
    margin-right: -30px;
  }
  .box-nos-agences__row > * {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media (max-width: 991px) {
  .box-nos-agences__row {
    margin-left: -15px;
    margin-right: -15px;
  }
  .box-nos-agences__row > * {
    padding-left: 15px;
    padding-right: 15px;
  }
}

.box-nos-agences-item {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 3rem;
  text-align: center;
}

.box-nos-agences-item__visual {
  margin-bottom: 1rem;
}

.box-nos-agences-item__title {
  font-size: 1.7rem;
  font-weight: 700;
  text-transform: uppercase;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  position: relative;
}

.box-nos-agences-item__title:before {
  content: "";
  display: block;
  width: 1rem;
  position: absolute;
  height: 2px;
  background-color: #000;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
}

.box-service-client {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-service-client__inner {
  padding: 4rem;
  min-height: 40rem;
  background-size: cover;
  background-position: 0 0;
}

.box-service-client__title {
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 2rem;
}

@media (min-width: 992px) {
  .box-service-client__title {
    font-size: 3.6rem;
  }
}

.box-service-client__text {
  width: 35rem;
  margin-bottom: 3rem;
}

@media (max-width: 767px) {
  .box-service-client__text {
    max-width: 100%;
  }
}

.box-service-client__btn {
  font-weight: 700;
  display: inline-block;
  font-weight: 700;
  text-align: center;
  vertical-align: middle;
  text-transform: uppercase;
  padding: 2rem 3rem;
  border: 1px solid #000;
  text-decoration: none;
}

@media (max-width: 480px) {
  .box-service-client__btn {
    display: block;
    width: 100%;
  }
}

.box-service-client__btn.full-width {
  width: 100%;
}

.box-service-client__btn.smaller {
  padding-top: 0;
  padding-bottom: 0;
  height: 5rem;
  line-height: 5rem;
}

@media (max-width: 767px) {
  .box-service-client__btn {
    font-size: 1.4rem;
  }
}

.box-presse-et-technique {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media (max-width: 767px) {
  .box-presse-et-technique .row > * {
    margin-top: 4rem;
  }
  .box-presse-et-technique .row > *:first-child {
    margin-top: 0;
  }
}

.box-presse-et-technique-item {
  background-size: cover;
  background-position: 50% 50%;
  display: block;
  height: 22rem;
  text-align: center;
}

@media (min-width: 1440px) {
  .box-presse-et-technique-item {
    height: 28rem;
  }
}

.box-presse-et-technique-item:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  margin-right: -0.50em;
  /* space width */
}

.box-presse-et-technique-item__title {
  background-color: #FFF;
  display: inline-block;
  text-transform: uppercase;
  padding: 1rem 6rem;
  font-weight: 700;
  vertical-align: middle;
}

.box-presse-et-technique-item__link {
  text-decoration: underline;
  text-transform: uppercase;
}

.box-agence-acces {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-agence-acces__iframe {
  width: 100%;
  border: none;
}

.box-agence-visite {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-agence-visite__iframe {
  width: 100%;
  border: none;
}

.box-agence-evenements {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

.box-agence-evenements-item {
  margin-left: auto;
  margin-right: auto;
  max-width: 100rem;
}

.box-agence-evenements-item + .box-agence-evenements-item {
  margin-top: 8rem;
}

@media (min-width: 992px) {
  .box-agence-evenements-item__row {
    margin-left: -30px;
    margin-right: -30px;
  }
  .box-agence-evenements-item__row > * {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media (max-width: 767px) {
  .box-agence-evenements-item__visual {
    margin-bottom: 2rem;
  }
}

.box-agence-evenements-item__theme {
  text-transform: uppercase;
  font-size: 1.8rem;
  margin-bottom: 1rem;
}

.box-agence-evenements-item__titre {
  font-size: 2.6rem;
  font-weight: 700;
}

.box-agence-evenements-item__infos {
  text-transform: uppercase;
  font-weight: 500;
  color: #0082ad;
  margin-bottom: 1.5rem;
}

.box-agence-evenements-item__text {
  line-height: 1.5;
  margin-top: 0;
}

.box-presentation-mariage {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

@media (min-width: 768px) {
  .box-presentation-mariage__row {
    display: flex;
  }
}

@media (max-width: 767px) {
  .box-presentation-mariage__col + .box-presentation-mariage__col {
    margin-top: 4rem;
  }
}

.box-presentation-mariage-item {
  background-color: #FFF;
  height: 100%;
  position: relative;
}

.box-presentation-mariage-item__inner {
  padding: 2rem 3rem 3rem 3rem;
}

@media (min-width: 768px) {
  .box-presentation-mariage-item__inner.withCTA {
    padding-bottom: 9rem;
  }
}

.box-presentation-mariage-item__title {
  font-size: 3rem;
  color: #0082ad;
  font-weight: 700;
  margin-bottom: 2rem;
  line-height: 1;
}

.box-presentation-mariage-item__title span {
  font-weight: 400;
  display: block;
}

.box-presentation-mariage-item__subtitle {
  text-transform: uppercase;
  display: block;
}

.box-presentation-mariage-item__subtitle:hover {
  text-decoration: underline;
}

.box-presentation-mariage-item__content .title {
  font-weight: bold;
  margin-top: 2rem;
  font-size: 1.8rem;
}

.box-presentation-mariage-item__content p {
  margin-top: 0;
  margin-bottom: 2rem;
}

.box-presentation-mariage-item__content li {
  text-indent: 1rem;
  position: relative;
}

.box-presentation-mariage-item__content li:before {
  content: "";
  display: block;
  width: 0.3rem;
  height: 0.3rem;
  border-radius: 50%;
  position: absolute;
  background-color: #000;
  top: 0.8rem;
}

.box-presentation-mariage-item__content .link {
  color: #0082ad;
  font-weight: 400;
  display: block;
}

.box-presentation-mariage-item__btn {
  width: 100%;
}

@media (min-width: 768px) {
  .box-presentation-mariage-item__btn {
    position: absolute;
    bottom: 0;
    left: 0;
  }
}

.box-bonnes-raisons-mariage {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-bonnes-raisons-mariage__link {
  display: block;
}

.box-bonnes-raisons-mariage__row {
  margin-left: -50px;
  margin-right: -50px;
}

.box-bonnes-raisons-mariage__row > * {
  padding-left: 50px;
  padding-right: 50px;
}

.box-bonnes-raisons-mariage-item {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 3rem;
  text-align: center;
}

.box-bonnes-raisons-mariage-item__visual {
  margin-bottom: 1rem;
  border-radius: 50%;
  max-width: 18rem;
}

.box-bonnes-raisons-mariage-item__title {
  font-size: 2rem;
}

.box-avantages {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-avantages__inner {
  background-color: #feac94;
  position: relative;
  display: table;
  width: 100%;
  height: 50rem;
  table-layout: fixed;
}

@media (max-width: 767px) {
  .box-avantages__inner {
    display: block;
    height: auto;
  }
}

.box-avantages__header {
  width: 50rem;
  padding: 6rem;
  display: table-cell;
  vertical-align: middle;
  color: #FFF;
  position: relative;
}

@media (max-width: 991px) {
  .box-avantages__header {
    padding: 4rem;
    width: 40%;
  }
}

@media (max-width: 767px) {
  .box-avantages__header {
    display: block;
    padding: 3rem;
    width: auto;
  }
}

.box-avantages__actions {
  text-align: left;
}

.box-avantages__content {
  display: table-cell;
  vertical-align: top;
  position: relative;
}

@media (max-width: 767px) {
  .box-avantages__content {
    display: block;
  }
}

.box-avantages__list {
  font-size: 1.8rem;
}

.box-avantages__list li + li {
  margin-top: 2rem;
}

.box-avantages__list-visual {
  height: 100%;
}

.box-avantages__title {
  font-size: 3.4rem;
  font-weight: 700;
  margin-bottom: 2rem;
}

.box-avantages__text {
  line-height: 1.5;
  font-size: 1.8rem;
}

.box-avantages-item {
  display: block;
  position: relative;
  height: 100%;
}

.box-avantages-item__content {
  height: 100%;
  color: #FFF;
  padding: 6rem;
  position: relative;
}

@media (max-width: 767px) {
  .box-avantages-item__content {
    padding: 3rem;
    height: 25rem;
  }
}

.box-avantages-item__visual {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  overflow: hidden;
  object-fit: cover;
  font-family: "object-fit: cover";
}

.box-participation-cadeau {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-participation-cadeau__inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 80rem;
}

.box-participation-cadeau__header {
  text-align: center;
  padding-bottom: 4rem;
}

.box-participation-cadeau__header-title {
  font-size: 3.6rem;
  font-weight: 400;
  color: #0082ad;
  margin-bottom: 2rem;
  line-height: 1.1;
}

@media (max-width: 767px) {
  .box-participation-cadeau__header-title {
    font-size: 3.2rem;
  }
}

.box-participation-cadeau__header-subtitle {
  font-size: 1.4rem;
}

.box-participation-cadeau__beneficiaire {
  font-size: 1.2em;
  margin-bottom: 5rem;
}

.box-participation-cadeau__beneficiaire li + li {
  margin-top: 0.5rem;
}

.box-espace-client {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media (max-width: 767px) {
  .box-espace-client__col + .box-espace-client__col {
    margin-top: 4rem;
  }
}

.box-espace-client__footer {
  text-align: center;
  color: #0082ad;
  margin-top: 4rem;
}

.box-espace-client-item {
  background-color: #f6f6f6;
}

@media (min-width: 768px) {
  .box-espace-client-item {
    margin-top: -15rem;
  }
  .modal .box-espace-client-item {
    margin-top: 0;
  }
}

@media (min-width: 992px) {
  .box-espace-client-item {
    margin-top: -20rem;
  }
  .modal .box-espace-client-item {
    margin-top: 0;
  }
}

.box-espace-client-item__inner {
  padding: 2rem 3rem 3rem 3rem;
}

.box-espace-client-item__title {
  font-size: 3rem;
  font-weight: 700;
  margin-bottom: 2rem;
  text-transform: uppercase;
}

.box-espace-client-item__title span {
  font-weight: 400;
  display: block;
}

.box-espace-client-item__subtitle {
  font-weight: 700;
  font-size: 2.4rem;
  margin-bottom: 2rem;
}

.box-espace-client-item__text {
  margin-bottom: 2rem;
}

.box-espace-client-item__content .title {
  font-weight: bold;
  margin-top: 2rem;
  font-size: 1.8rem;
}

.box-espace-client-item__content p {
  margin-top: 0;
  margin-bottom: 2rem;
}

.box-espace-client-item__content .link-alpha {
  margin-top: 0.5rem;
}

.box-espace-client-item__btn {
  width: 100%;
}

.box-espace-client-item__link-bottom {
  text-decoration: underline;
  text-transform: uppercase;
  font-size: 1.8rem;
}

.box-espace-client-item__list li:before {
  background-color: #0082ad;
}

.box-espace-client-item__list li + li {
  margin-top: 1rem;
}

.box-envies-par-pays {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-envies-par-pays__inner {
  background-size: cover;
  background-position: 50% 50%;
  padding: 14rem 1rem 6rem 1rem;
  text-align: center;
}

@media (min-width: 1440px) {
  .box-envies-par-pays__inner {
    padding-top: 15rem;
    padding-bottom: 15rem;
  }
}

.box-envies-par-pays__content {
  margin-left: auto;
  margin-right: auto;
  display: inline-block;
}

.box-envies-par-pays__title {
  padding-left: 2rem;
  padding-right: 2rem;
  font-size: 4rem;
  letter-spacing: .5rem;
  font-weight: 500;
  text-transform: uppercase;
  color: #FFF;
  margin-bottom: 3rem;
}

@media (max-width: 767px) {
  .box-envies-par-pays__title {
    font-size: 3.33333rem;
    letter-spacing: .2rem;
  }
}

@media (min-width: 992px) {
  .box-envies-par-pays__title {
    font-size: 5rem;
  }
}

@media (min-width: 1440px) {
  .box-envies-par-pays__title {
    font-size: 6rem;
  }
}

.box-saisons {
  padding-top: 4rem;
  padding-bottom: 4rem;
  padding-bottom: 0;
}

.box-saison-item {
  margin-left: auto;
  margin-right: auto;
  margin-top: 8rem;
}

@media (max-width: 767px) {
  .box-saison-item {
    margin-top: 4rem;
  }
}

@media (min-width: 992px) {
  .box-saison-item__row {
    margin-left: -30px;
    margin-right: -30px;
  }
  .box-saison-item__row > * {
    padding-left: 30px;
    padding-right: 30px;
  }
}

.box-saison-item__visual-container {
  position: relative;
}

@media (max-width: 767px) {
  .box-saison-item__visual-container {
    margin-bottom: 2rem;
  }
}

.box-saison-item__visual-container:after {
  content: "";
  display: block;
  padding-bottom: 100%;
}

.box-saison-item__visual-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

.box-saison-item__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-saison-item__title {
  font-size: 3rem;
  font-weight: bold;
  line-height: 1.1;
  margin-bottom: 1rem;
}

.box-saison-item__text {
  line-height: 1.6;
  margin-bottom: 4rem;
  margin-top: 3rem;
}

.box-saison-item__text a {
  text-decoration: underline;
  color: #0082ad;
}

.box-saison-item__cta {
  display: inline-block;
  font-weight: 500;
  text-align: center;
  vertical-align: middle;
  text-transform: uppercase;
  padding: 1.5rem 3rem;
  border: 1px solid #0082ad;
  color: #0082ad;
  min-width: 30rem;
  font-size: 1.3rem;
  letter-spacing: 0.2rem;
  margin-top: 2rem;
}

@media (max-width: 480px) {
  .box-saison-item__cta {
    display: block;
    width: 100%;
  }
}

.box-saison-item__cta.full-width {
  width: 100%;
}

.box-saison-item__cta.smaller {
  padding-top: 0;
  padding-bottom: 0;
  height: 5rem;
  line-height: 5rem;
}

.box-saison-item__conditions {
  color: #0082ad;
  letter-spacing: .1rem;
  text-transform: uppercase;
}

.box-saison-mois {
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 992px) {
  .box-saison-mois__row {
    margin-left: -30px;
    margin-right: -30px;
  }
  .box-saison-mois__row > * {
    padding-left: 30px;
    padding-right: 30px;
  }
}

.box-saison-mois__item + .box-saison-mois__item {
  margin-top: 8rem;
}

.box-saison-mois__visual {
  display: block;
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.box-saison-mois__title {
  margin-top: 2rem;
  margin-bottom: 2rem;
  font-size: 3rem;
  font-weight: bold;
  line-height: 1.1;
  text-align: center;
}

.box-saison-mois__text {
  margin-left: auto;
  margin-right: auto;
  margin-top: 2rem;
  margin-bottom: 2rem;
  line-height: 1.5;
  text-align: justify;
}

.box-saison-mois__text a {
  text-decoration: underline;
  color: #0082ad;
}

.box-saison-mois__actions {
  text-align: center;
}

.box-saison-mois__cta {
  display: inline-block;
  font-weight: 500;
  text-align: center;
  vertical-align: middle;
  text-transform: uppercase;
  padding: 1.5rem 3rem;
  border: 1px solid #0082ad;
  color: #0082ad;
  min-width: 30rem;
  font-size: 1.3rem;
  letter-spacing: 0.2rem;
}

@media (max-width: 480px) {
  .box-saison-mois__cta {
    display: block;
    width: 100%;
  }
}

.box-saison-mois__cta.full-width {
  width: 100%;
}

.box-saison-mois__cta.smaller {
  padding-top: 0;
  padding-bottom: 0;
  height: 5rem;
  line-height: 5rem;
}

.box-nos-brochures {
  padding-top: 4rem;
  padding-bottom: 4rem;
  padding-top: 0;
}

.box-nos-brochures__row {
  margin-left: -50px;
  margin-right: -50px;
}

.box-nos-brochures__row > * {
  padding-left: 50px;
  padding-right: 50px;
}

@media (max-width: 1399px) {
  .box-nos-brochures__row {
    margin-left: -30px;
    margin-right: -30px;
  }
  .box-nos-brochures__row > * {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media (max-width: 991px) {
  .box-nos-brochures__row {
    margin-left: -15px;
    margin-right: -15px;
  }
  .box-nos-brochures__row > * {
    padding-left: 15px;
    padding-right: 15px;
  }
}

.box-nos-brochures .box-nos-brochures__row > * {
  padding-left: 15px !important;
  padding-right: 15px !important;
}

.box-nos-brochures-item {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 6rem;
  text-align: center;
}

.box-nos-brochures-item__link div {
  background: #dbdde3;
  padding: 5.5rem 0 4rem;
}

.box-nos-brochures-item__visual {
  box-shadow: 5px 5px 5px #8a8a8a;
  margin-bottom: 1rem;
}

.box-nos-brochures-item__title {
  font-size: 1.7rem;
  font-weight: 700;
  text-transform: none;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  margin-top: 2rem;
  position: relative;
}

.box-nos-brochures-item__text {
  margin-bottom: 2rem;
}

.box-nos-brochures-item__text .link-alpha {
  text-decoration: none;
}

@media (max-width: 991px) {
  .box-nos-brochures-item .button-alpha {
    font-size: 1.7rem;
    padding: 1rem;
  }
}

/*Commande*/
body.brochures .modal {
  top: auto;
  left: auto;
}

body.brochures .modal-alpha {
  padding-right: 17px;
}

@media (max-width: 480px) {
  body.brochures .modal-alpha {
    padding-right: 0;
  }
}

.box-le-fooding-item {
  padding-top: 4rem;
  padding-bottom: 4rem;
  margin: 0 1rem;
}

.box-le-fooding-item__title {
  color: #0082ad;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.5;
  margin-top: 1rem;
}

.box-le-fooding-item__subtitle {
  font-size: 3rem;
  font-weight: 700;
}

.box-le-fooding-item__lien {
  color: #0082ad;
}

.page-nos-maisons #sticky-nav-wrapper img {
  padding-top: 2rem;
}

.page-nos-maisons.sticky-nav-is-fixed .sticky-nav__item img,
.page-nos-maisons.sticky-nav-is-fixed .sticky-nav__item br {
  display: none !important;
}

.page-la-presse-en-parle .document {
  padding: 15px 0 0;
}

.box-voyage-sur-mesure-intro,
.box-voyage-sur-mesure-vip,
.box-voyage-sur-mesure-tourisme,
.box-voyage-sur-mesure-compensation,
.box-voyage-sur-mesure-histoire,
.box-voyage-sur-mesure-date {
  padding-top: 4rem;
  padding-bottom: 4rem;
  text-align: center;
}

.box-voyage-sur-mesure-intro__text,
.box-voyage-sur-mesure-vip__text,
.box-voyage-sur-mesure-tourisme__text,
.box-voyage-sur-mesure-compensation__text,
.box-voyage-sur-mesure-histoire__text,
.box-voyage-sur-mesure-date__text {
  margin-left: auto;
  margin-right: auto;
  max-width: 100rem;
  line-height: 1.5;
}

.header-box + .box-voyage-sur-mesure-intro__text, .header-box +
.box-voyage-sur-mesure-vip__text, .header-box +
.box-voyage-sur-mesure-tourisme__text, .header-box +
.box-voyage-sur-mesure-compensation__text, .header-box +
.box-voyage-sur-mesure-histoire__text, .header-box +
.box-voyage-sur-mesure-date__text {
  margin-top: 3rem;
}

.box-voyage-sur-mesure-engagements {
  background-size: cover;
  background-position: 50% 50%;
  padding: 10rem 1rem;
  text-align: center;
}

@media (max-width: 767px) {
  .box-voyage-sur-mesure-engagements {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}

.box-voyage-sur-mesure-engagements__content {
  margin-left: auto;
  margin-right: auto;
  background-color: transparent;
  color: #FFF;
  padding: 5rem;
  display: inline-block;
  text-align: center;
  max-width: 70rem;
}

@media (max-width: 480px) {
  .box-voyage-sur-mesure-engagements__content {
    padding: 3rem 3rem 1rem 3rem;
  }
}

.box-voyage-sur-mesure-engagements__text {
  line-height: 1.5;
  margin-bottom: 4rem;
}

.box-voyage-sur-mesure-engagements__link {
  color: #0082ad;
  font-weight: 400;
}

.box-voyage-sur-mesure-respect {
  background-color: #F1F1F1;
  padding-top: 4rem;
  padding-bottom: 4rem;
  text-align: center;
}

.box-voyage-sur-mesure-respect__text {
  margin-left: auto;
  margin-right: auto;
  max-width: 100rem;
  line-height: 1.5;
}

.box-voyage-sur-mesure-histoire__content {
  background-color: #FFF;
}

.box-voyage-sur-mesure-histoire__content,
.box-voyage-sur-mesure-date__content {
  margin-left: auto;
  margin-right: auto;
  padding: 5rem;
  display: inline-block;
  text-align: center;
  max-width: 100rem;
}

@media (max-width: 480px) {
  .box-voyage-sur-mesure-histoire__content,
  .box-voyage-sur-mesure-date__content {
    padding: 3rem 3rem 1rem 3rem;
  }
}

.box-voyage-sur-mesure-histoire__content p,
.box-voyage-sur-mesure-date__content p {
  text-align: justify;
}

.box-voyage-sur-mesure-histoire__content p:first-child,
.box-voyage-sur-mesure-date__content p:first-child {
  margin-top: 1rem;
}

.page-valise-ideale .box-brochure {
  padding: 10rem 0;
}

.page-valise-ideale .box-brochure a {
  background: #FFF;
  margin-bottom: 2rem;
  min-height: 270px;
  padding: 5rem 5rem;
}

.box-librairie-actus {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

@media (min-width: 768px) {
  .box-librairie-actus__list {
    margin-left: 6rem;
    margin-right: 6rem;
    display: none;
  }
}

@media (max-width: 767px) {
  .box-librairie-actus-item + .box-librairie-actus-item {
    margin-top: 4rem;
  }
}

@media (max-width: 767px) {
  .box-librairie-actus-item__visual {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 2rem;
    display: block;
  }
}

.box-librairie-actus-item__theme {
  text-transform: uppercase;
  font-size: 1.8rem;
  margin-bottom: 1rem;
}

.box-librairie-actus-item__titre {
  font-size: 2.6rem;
  font-weight: 700;
}

.box-librairie-actus-item__infos {
  text-transform: uppercase;
  font-weight: 500;
  color: #0082ad;
  margin-bottom: 1.5rem;
}

.box-librairie-actus-item__text {
  line-height: 1.5;
  margin-top: 0;
}

.box-librairie-actus-item.slick-slide {
  padding-left: 3rem;
  padding-right: 3rem;
  margin-top: 0;
}

.box-librairie-selection {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media (min-width: 992px) {
  .box-librairie-selection__row {
    margin-left: -30px;
    margin-right: -30px;
  }
  .box-librairie-selection__row > * {
    padding-left: 30px;
    padding-right: 30px;
  }
}

.box-librairie-selection-item {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 3rem;
}

@media (max-width: 767px) {
  .box-librairie-selection-item {
    margin-bottom: 4rem;
  }
}

.box-librairie-selection-item__visual {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 2rem;
  display: block;
}

.box-librairie-selection-item__title {
  text-transform: uppercase;
  font-weight: 700;
  font-size: 2.6rem;
}

.box-librairie-selection-item__author {
  font-size: 1.7rem;
  margin-bottom: 1.5rem;
}

.box-librairie-selection-item__subtitle {
  color: #0082ad;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 1.7rem;
}

.box-librairie-selection-item__text {
  margin-bottom: 0.5rem;
}

.box-librairie-selection-item__link {
  display: block;
  text-decoration: underline;
  margin-bottom: 1.5rem;
}

.box-librairie-selection-item__edition-prix {
  font-weight: 700;
}

.box-librairie-contact {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

.box-librairie-contact__iframe {
  width: 100%;
  border: none;
  margin-bottom: 2rem;
}

.box-librairie-libraires {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-librairie-libraires-item {
  margin-bottom: 3rem;
}

.box-librairie-libraires-item__title {
  font-weight: 700;
  text-align: center;
  position: relative;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
}

.box-librairie-libraires-item__title:before {
  content: "";
  display: block;
  width: 1rem;
  position: absolute;
  height: 2px;
  background-color: #000;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
}

.box-librairie-libraires-item__text {
  text-align: justify;
}

.box-valeur-ajoutee {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-valeur-ajoutee .header-box .subtitle {
  color: #0082ad;
}

.box-valeur-ajoutee-item {
  margin-left: auto;
  margin-right: auto;
  margin-top: 8rem;
  margin-bottom: 8rem;
}

@media (min-width: 768px) {
  .box-valeur-ajoutee-item__row {
    display: flex;
  }
}

@media (min-width: 992px) {
  .box-valeur-ajoutee-item__row {
    margin-left: -30px;
    margin-right: -30px;
  }
  .box-valeur-ajoutee-item__row > * {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media (min-width: 1440px) {
  .box-valeur-ajoutee-item__row {
    margin-left: -50px;
    margin-right: -50px;
  }
  .box-valeur-ajoutee-item__row > * {
    padding-left: 50px;
    padding-right: 50px;
  }
}

@media (max-width: 767px) {
  .box-valeur-ajoutee-item__visual {
    margin-bottom: 2rem;
  }
}

@media (min-width: 768px) {
  .box-valeur-ajoutee-item__visual-wrapper, .box-valeur-ajoutee-item__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
  }
}

.box-valeur-ajoutee-item__title {
  text-transform: uppercase;
  font-weight: 500;
  font-size: 2.5rem;
  line-height: 1.5;
}

@media (min-width: 768px) {
  .box-valeur-ajoutee-item__title {
    margin-bottom: 4rem;
  }
}

.box-valeur-ajoutee-item__title span {
  color: #0082ad;
}

.box-valeur-ajoutee-item__text {
  line-height: 1.5;
  margin-top: 2rem;
  margin-bottom: 1rem;
}

.box-valeur-ajoutee-item__link {
  text-transform: uppercase;
  text-decoration: underline;
  color: #0082ad;
}

.box-valeur-ajoutee-alpha {
  margin-left: auto;
  margin-right: auto;
  margin-top: 8rem;
}

@media (min-width: 768px) {
  .box-valeur-ajoutee-alpha__row {
    display: flex;
  }
}

@media (min-width: 992px) {
  .box-valeur-ajoutee-alpha__row {
    margin-left: -10rem;
    margin-right: -10rem;
  }
  .box-valeur-ajoutee-alpha__row > * {
    padding-left: 10rem;
    padding-right: 10rem;
  }
}

@media (max-width: 767px) {
  .box-valeur-ajoutee-alpha__visual {
    margin-bottom: 2rem;
  }
}

@media (min-width: 768px) {
  .box-valeur-ajoutee-alpha__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
  }
}

.box-valeur-ajoutee-alpha__title {
  text-transform: uppercase;
  font-weight: 500;
  font-size: 2.5rem;
  line-height: 1.5;
  margin-bottom: 2rem;
  letter-spacing: 0.2rem;
}

@media (min-width: 768px) {
  .box-valeur-ajoutee-alpha__title {
    margin-bottom: 4rem;
  }
}

.box-valeur-ajoutee-alpha__text {
  line-height: 1.5;
}

.box-valeur-ajoutee-alpha__link {
  display: inline-block;
  text-transform: uppercase;
  text-decoration: underline;
  color: #0082ad;
  margin-top: 1rem;
}

.box-aeroport {
  background-size: cover;
  background-position: 50% 50%;
  padding: 10rem 1rem;
  text-align: center;
}

.box-aeroport__content {
  margin-left: auto;
  margin-right: auto;
  background-color: #FFF;
  padding: 5rem;
  display: inline-block;
  text-align: center;
  max-width: 70rem;
}

@media (max-width: 480px) {
  .box-aeroport__content {
    padding: 3rem;
  }
}

.box-aeroport__list li {
  position: relative;
  padding-top: 0.4rem;
  padding-bottom: 0.4rem;
}

.box-aeroport__list li:before {
  content: "";
  display: inline-block;
  width: 0.3em;
  height: 0.3em;
  border-radius: 50%;
  background-color: #0082ad;
  top: -0.2rem;
  margin-right: 0.5rem;
  position: relative;
}

.box-aeroport__text {
  line-height: 1.5;
  margin-bottom: 4rem;
}

.box-aeroport__link {
  margin-top: 1rem;
  display: inline-block;
  text-transform: uppercase;
  text-decoration: underline;
  color: #0082ad;
}

.box-vous-accueillir {
  padding-top: 4rem;
  padding-bottom: 4rem;
  text-align: center;
  margin-bottom: 4rem;
}

.box-vous-accueillir .header-box .subtitle {
  color: #0082ad;
}

.box-vous-accueillir__index {
  margin-bottom: 2rem;
  font-family: "Dala Moa", serif;
  font-size: 12rem;
}

.box-pendant-voyage {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

.box-pendant-voyage .header-box .subtitle {
  color: #0082ad;
}

.box-pendant-voyage-mea {
  margin-top: 4rem;
  margin-bottom: 4rem;
  background-size: cover;
  background-position: 50% 50%;
  padding: 10rem 1rem;
  text-align: center;
}

.box-pendant-voyage-mea__content {
  margin-left: auto;
  margin-right: auto;
  background-color: #FFF;
  padding: 5rem;
  display: inline-block;
  text-align: center;
  max-width: 70rem;
}

@media (max-width: 480px) {
  .box-pendant-voyage-mea__content {
    padding: 3rem 3rem 1rem 3rem;
  }
}

.box-pendant-voyage-mea__title {
  text-transform: uppercase;
  font-weight: 500;
  font-size: 2.5rem;
  line-height: 1.5;
  margin-bottom: 2rem;
  letter-spacing: 0.2rem;
}

@media (min-width: 768px) {
  .box-pendant-voyage-mea__title {
    margin-bottom: 4rem;
  }
}

.box-pendant-voyage-mea__text {
  line-height: 1.5;
  margin-bottom: 4rem;
}

.box-pendant-voyage-mea__link {
  display: inline-block;
  text-transform: uppercase;
  text-decoration: underline;
  color: #0082ad;
}

.box-pendant-voyage-item {
  margin-left: auto;
  margin-right: auto;
  max-width: 100rem;
  text-align: center;
}

.box-pendant-voyage-item + .box-pendant-voyage-item {
  margin-top: 4rem;
}

@media (min-width: 768px) {
  .box-pendant-voyage-item__row {
    display: flex;
  }
}

@media (max-width: 767px) {
  .box-pendant-voyage-item__visual {
    margin-bottom: 2rem;
  }
}

@media (min-width: 768px) {
  .box-pendant-voyage-item__visual-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
  }
}

@media (min-width: 768px) {
  .box-pendant-voyage-item__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
  }
}

@media (min-width: 992px) {
  .box-pendant-voyage-item__content {
    padding: 4rem;
  }
}

.box-pendant-voyage-item__title {
  text-transform: uppercase;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.5;
  margin-bottom: 2rem;
  letter-spacing: 0.2rem;
}

@media (min-width: 768px) {
  .box-pendant-voyage-item__title {
    margin-bottom: 4rem;
  }
}

.box-pendant-voyage-item__text {
  line-height: 1.5;
}

.box-pendant-voyage-item__link {
  display: inline-block;
  text-transform: uppercase;
  text-decoration: underline;
  color: #0082ad;
  margin-top: 1rem;
}

.box-friends-item {
  margin-left: auto;
  margin-right: auto;
}

.box-friends-item + .box-friends-item {
  margin-top: 8rem;
}

@media (max-width: 767px) {
  .box-friends-item + .box-friends-item {
    margin-top: 4rem;
  }
}

@media (min-width: 992px) {
  .box-friends-item__row {
    margin-left: -30px;
    margin-right: -30px;
  }
  .box-friends-item__row > * {
    padding-left: 30px;
    padding-right: 30px;
  }
}

.box-friends-item__visual-container {
  position: relative;
}

@media (max-width: 767px) {
  .box-friends-item__visual-container {
    margin-bottom: 2rem;
  }
}

.box-friends-item__visual-container:after {
  content: "";
  display: block;
  padding-bottom: 71.42857%;
}

.box-friends-item__visual-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

.box-friends-item__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-friends-item__destination {
  font-family: "Spectral", serif;
  font-weight: 300;
  font-style: italic;
  font-size: 4rem;
  line-height: 1;
}

.box-friends-item__title {
  display: block;
  font-weight: 700;
  font-size: 4rem;
  text-transform: uppercase;
  margin-bottom: 2rem;
  line-height: 1;
}

.box-friends-item__text {
  line-height: 1.5;
  margin-top: 0;
}

.box-friends-item__text strong {
  color: #0082ad;
}

.box-friends-item__pseudo-cta {
  display: inline-block;
  font-weight: 500;
  text-align: center;
  vertical-align: middle;
  text-transform: uppercase;
  padding: 1.5rem 3rem;
  border: 1px solid #0082ad;
  color: #0082ad;
  min-width: 30rem;
  font-size: 1.3rem;
  letter-spacing: 0.2rem;
  margin-top: 2rem;
}

@media (max-width: 480px) {
  .box-friends-item__pseudo-cta {
    display: block;
    width: 100%;
  }
}

.box-friends-item__pseudo-cta.full-width {
  width: 100%;
}

.box-friends-item__pseudo-cta.smaller {
  padding-top: 0;
  padding-bottom: 0;
  height: 5rem;
  line-height: 5rem;
}

.box-concierge-mea {
  margin-top: 8rem;
  margin-bottom: 8rem;
  position: relative;
}

@media (min-width: 768px) {
  .box-concierge-mea {
    padding-top: 8rem;
    padding-bottom: 8rem;
  }
}

.box-concierge-mea__visual-wrapper {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

@media (min-width: 768px) {
  .box-concierge-mea__visual-wrapper {
    position: absolute;
  }
}

.box-concierge-mea__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  margin-bottom: 2rem;
}

@media (min-width: 768px) {
  .box-concierge-mea__visual {
    position: absolute;
  }
}

.box-concierge-mea__content {
  background-color: #FFF;
  padding: 2rem;
}

@media (min-width: 768px) {
  .box-concierge-mea__content {
    padding: 5rem;
  }
}

.box-nos-concierges {
  margin-top: 4rem;
  margin-bottom: 4rem;
  background-size: cover;
  background-position: 50% 50%;
  padding: 5rem 1rem 10rem 1rem;
  text-align: center;
}

.box-nos-concierges__content {
  margin-left: auto;
  margin-right: auto;
  background-color: #FFF;
  padding: 5rem 8rem;
  text-align: center;
  max-width: 70rem;
}

@media (max-width: 480px) {
  .box-nos-concierges__content {
    padding: 4rem 2rem;
  }
}

.box-nos-concierges__title {
  text-transform: uppercase;
  font-weight: 500;
  font-size: 2.5rem;
  line-height: 1.5;
  margin-bottom: 2rem;
  letter-spacing: 0.2rem;
  color: #FFF;
}

@media (min-width: 768px) {
  .box-nos-concierges__title {
    margin-bottom: 4rem;
  }
}

.box-nos-concierges-item__destination {
  font-family: "Spectral", serif;
  font-weight: 300;
  font-style: italic;
  font-size: 3rem;
  line-height: 1;
}

.box-nos-concierges-item__title {
  display: block;
  font-weight: 700;
  font-size: 3rem;
  text-transform: uppercase;
  margin-bottom: 2rem;
  line-height: 1;
}

.box-nous-faisons {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media (max-width: 767px) {
  .box-nous-faisons {
    padding-bottom: 0;
  }
}

@media (max-width: 767px) {
  .box-nous-faisons-item {
    margin-bottom: 4rem;
  }
}

.box-nous-faisons-item__visual-container {
  position: relative;
  margin-bottom: 1rem;
}

.box-nous-faisons-item__visual-container:after {
  content: "";
  display: block;
  padding-bottom: 66.57609%;
}

.box-nous-faisons-item__visual-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

.box-nous-faisons-item__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: relative;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  margin-bottom: 2rem;
}

.intoMap .box-nous-faisons-item__visual {
  max-width: 100%;
}

.box-nous-faisons-item__title {
  display: block;
  font-size: 3rem;
  margin-bottom: 1rem;
  font-weight: 700;
  line-height: 1.2;
}

.box-nous-faisons-item__title span {
  display: block;
  font-weight: 400;
}

.box-nous-faisons-item__text {
  line-height: 1.5;
  margin-bottom: 1rem;
}

.box-nous-faisons-item__conditions {
  color: #0082ad;
  letter-spacing: .1rem;
  text-transform: uppercase;
}

/* ==========================================================================
   & header
   ========================================================================== */
@media (min-width: 768px) {
  .header__inner {
    padding-top: 5.8rem;
  }
}

@media (min-width: 768px) {
  .header__row {
    display: flex;
  }
}

.header__col {
  width: 5.55556rem;
  position: relative;
}

@media (max-width: 767px) {
  .header__col {
    display: none;
  }
}

.header-contact {
  padding-top: 1.8rem;
  padding-bottom: 1.9rem;
  transform-origin: top;
  transform: translateX(-50%) rotate(-90deg);
  white-space: nowrap;
  position: fixed;
  top: 30rem;
  z-index: 40;
}

.header-fil {
  position: absolute;
  top: 1rem;
  left: 1rem;
  text-transform: uppercase;
  font-size: 1.2rem;
  color: #FFF;
}

@media (max-width: 767px) {
  .header-fil {
    display: none;
  }
}

.page-produit .header-fil,
.page-cheques-cadeaux-tunnel .header-fil,
.page-ddv .header-fil,
.page-mag-liste .header-fil {
  color: #000;
}

.header-social {
  position: fixed;
  top: 18rem;
  width: 5.55556rem;
  z-index: 40;
}

.header-social__link {
  position: relative;
  display: block;
  background-color: rgba(138, 138, 138, 0.9);
  color: #FFF;
  width: 100%;
  height: 5.55556rem;
  float: right;
  transition: width .2s;
  font-size: 2.2rem;
}

.header-social__link:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.header-social__link:hover {
  width: 140%;
}

.header-social__link.facebook:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.header-social__link.twitter:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.header-social__link.pinterest:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.header-social__link.linkedin:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.header-social__link.mail:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.atss {
  z-index: 1030 !important;
}

.atss .at-share-btn,
.atss a {
  width: 5.55556rem !important;
  background-color: transparent !important;
}

.atss .at-share-btn .at-icon-wrapper,
.atss a .at-icon-wrapper {
  background-color: rgba(138, 138, 138, 0.9) !important;
}

.atss .at-share-btn:focus,
.atss .at-share-btn:hover,
.atss a:focus,
.atss a:hover {
  width: 140% !important;
}

#at4-share,
#at4-soc {
  top: 18rem !important;
}

.header-produit {
  position: relative;
  text-align: center;
  flex: 1 1 0%;
  padding-top: 5rem;
  padding-bottom: 4rem;
}

@media (max-width: 767px) {
  .header-produit {
    padding-top: 6.5rem;
    text-align: left;
  }
}

@media (max-width: 991px) {
  .header-produit {
    padding-top: 6.5rem;
  }
}

.header-produit__content {
  padding-left: 1.66667rem;
  padding-right: 1.66667rem;
  padding-top: 2rem;
}

.header-produit__chapo {
  color: #0082ad;
  letter-spacing: .1rem;
  text-transform: uppercase;
  font-weight: 400;
  margin-bottom: 1rem;
  font-size: inherit;
}

.header-produit__title {
  font-size: 3rem;
  font-weight: 700;
}

@media (max-width: 767px) {
  .header-produit__title {
    line-height: 1.1;
    margin-bottom: 1rem;
  }
}

.header-produit__etapes {
  color: #99a4b1;
  font-size: 1.7rem;
  font-weight: 500;
  margin-bottom: 1.6rem;
}

.header-produit__subtitle {
  font-size: 1.8rem;
  font-weight: 500;
}

.header-cheques-tunnel {
  position: relative;
  text-align: center;
  flex: 1 1 0%;
  padding-top: 11rem;
  padding-bottom: 4rem;
}

@media (max-width: 767px) {
  .header-cheques-tunnel {
    padding-top: 6.5rem;
    text-align: left;
  }
}

@media (max-width: 991px) {
  .header-cheques-tunnel {
    padding-top: 6.5rem;
  }
}

.header-cheques-tunnel__content {
  padding-left: 1.66667rem;
  padding-right: 1.66667rem;
  padding-top: 2rem;
}

.header-cheques-tunnel__title {
  font-size: 3.6rem;
  font-weight: 400;
  color: #0082ad;
  margin-bottom: 2rem;
  line-height: 1.1;
}

@media (max-width: 767px) {
  .header-cheques-tunnel__title {
    font-size: 3.2rem;
  }
}

.header-cheques-tunnel__subtitle {
  font-size: 1.4rem;
}

.header-ddv {
  position: relative;
  text-align: center;
  flex: 1 1 0%;
  padding-top: 5rem;
}

@media (max-width: 767px) {
  .header-ddv {
    padding-top: 6.5rem;
    text-align: left;
  }
}

@media (max-width: 991px) {
  .header-ddv {
    padding-top: 6.5rem;
  }
}

.header-ddv__content {
  padding-left: 1.66667rem;
  padding-right: 1.66667rem;
  padding-top: 2rem;
}

.header-ddv__title {
  font-size: 3.6rem;
  font-weight: 400;
  color: #0082ad;
  margin-bottom: 2rem;
  line-height: 1.1;
}

@media (max-width: 767px) {
  .header-ddv__title {
    font-size: 3.2rem;
  }
}

.page-ddv-light .header-ddv__title {
  margin-bottom: 1rem;
}

.header-ddv__subtitle {
  font-size: 1.8rem;
}

.page-ddv-light .header-ddv__subtitle {
  font-size: 1.5rem;
}

.header-ddv-pays {
  position: relative;
  text-align: center;
  flex: 1 1 0%;
}

@media (max-width: 767px) {
  .header-ddv-pays {
    margin-top: 6.5rem;
  }
}

.header-ddv-pays:before {
  content: "";
  background-color: #000;
  opacity: .2;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.header-ddv-pays__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  width: 100%;
  height: 51rem;
}

@media (max-width: 991px) {
  .header-ddv-pays__visual {
    height: 34rem;
  }
}

.header-ddv-pays__content {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 2;
  transform: translateY(-50%);
  padding: 1rem;
}

.header-ddv-pays__title {
  font-size: 3.6rem;
  font-weight: 400;
  color: #FFF;
  margin-bottom: 2rem;
  line-height: 1.1;
}

@media (max-width: 767px) {
  .header-ddv-pays__title {
    font-size: 3.2rem;
  }
}

.header-ddv-pays__subtitle {
  font-size: 1.8rem;
  color: #FFF;
}

.header-ddv-produit {
  position: relative;
  flex: 1 1 0%;
  padding-top: 5rem;
}

@media (max-width: 767px) {
  .header-ddv-produit {
    padding-top: 6.5rem;
    text-align: left;
  }
}

@media (max-width: 991px) {
  .header-ddv-produit {
    padding-top: 6.5rem;
  }
}

.header-ddv-produit__content {
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.66667rem;
  padding-right: 1.66667rem;
  padding-top: 2rem;
  max-width: 80rem;
}

@media (min-width: 1440px) {
  .header-ddv-produit__content {
    max-width: 100rem;
  }
}

.header-ddv-produit_row {
  display: table;
  width: 100%;
}

.header-ddv-produit__col-content {
  display: table-cell;
  vertical-align: middle;
  width: 60%;
  padding-right: 2rem;
}

@media (max-width: 767px) {
  .header-ddv-produit__col-content {
    display: block;
    width: 100%;
    padding-right: 0;
  }
}

.header-ddv-produit__col-visual {
  display: table-cell;
  vertical-align: middle;
}

@media (max-width: 767px) {
  .header-ddv-produit__col-visual {
    display: block;
  }
}

.header-ddv-produit__title {
  font-size: 3.6rem;
  font-weight: 400;
  margin-bottom: 2rem;
  line-height: 1.1;
  font-weight: 700;
}

@media (max-width: 767px) {
  .header-ddv-produit__title {
    font-size: 3.2rem;
  }
}

.header-ddv-produit__visual-wrapper {
  position: relative;
  display: block;
}

.header-ddv-produit__visual-wrapper:before {
  content: "";
  position: absolute;
  top: -2rem;
  right: -1rem;
  width: 11rem;
  height: 11rem;
  display: block;
  background-image: url(../images/tampon.png);
  background-size: contain;
}

.header-ddv-produit__visual {
  border: 1rem solid #FFF;
}

/* ==========================================================================
   & header MEA (Mise en Avant)
   ========================================================================== */
.header-mea {
  position: relative;
  text-align: center;
  flex: 1 0 0%;
}

@media (min-width: 768px) {
  .page-accueil .header-mea {
    max-width: calc(100% - 11.11111rem);
  }
}

@media (max-width: 767px) {
  .page-resultats .header-mea {
    padding-top: 1rem;
    padding-bottom: 1rem;
    margin-top: 6.5rem;
  }
}

.header-mea:before {
  content: "";
  background-color: #000;
  opacity: .2;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

@media (max-width: 767px) {
  .page-resultats .header-mea:before {
    display: none;
  }
}

@media (min-width: 768px) {
  .page-accueil .header-mea:before {
    display: none;
  }
}

.header-mea__title-carousel {
  display: none;
}

.header-mea__title-carousel.slick-initialized {
  display: block;
}

@media (min-width: 768px) {
  .header-mea__title-wrapper-mobile {
    display: none;
  }
}

@media (max-width: 767px) {
  .header-mea__title-wrapper {
    position: absolute;
    width: 100%;
    top: 13rem;
    left: 50%;
    transform: translateX(-50%);
  }
}

.page-resultats .header-mea__title-wrapper {
  position: static;
  transform: none;
}

.header-mea__title {
  padding-left: 2rem;
  padding-right: 2rem;
  font-size: 4rem;
  letter-spacing: .5rem;
  font-weight: 500;
  text-transform: uppercase;
  color: #FFF;
}

@media (max-width: 767px) {
  .header-mea__title {
    font-size: 3.33333rem;
    letter-spacing: .2rem;
    line-height: 1.1;
  }
}

@media (min-width: 992px) {
  .header-mea__title {
    font-size: 5rem;
  }
}

@media (min-width: 1440px) {
  .header-mea__title {
    font-size: 6rem;
  }
}

.page-accueil .header-mea__title {
  font-size: 3rem;
  line-height: 1.1;
  margin-bottom: 1rem;
  letter-spacing: .3rem;
}

@media (max-width: 767px) {
  .page-accueil .header-mea__title {
    font-size: 2.77778rem;
    position: static;
    transform: none;
  }
}

@media (min-width: 992px) {
  .page-accueil .header-mea__title {
    font-size: 4rem;
  }
}

@media (max-width: 767px) {
  .page-resultats .header-mea__title {
    color: #000;
    margin-bottom: 0;
    font-size: 2rem;
    letter-spacing: .2rem;
  }
}

@media (min-width: 992px) {
  .header-mea__title br.hidden-md {
    content: "";
  }
}

@media (min-width: 1440px) {
  .header-mea__title br.hidden-lg {
    content: "";
  }
}

.header-mea__subtitle {
  font-family: "Spectral", serif;
  font-style: italic;
  font-weight: 300;
  color: #FFF;
  letter-spacing: .2rem;
  display: inline-block;
  position: relative;
  font-size: 2.2rem;
}

.header-mea__subtitle:before, .header-mea__subtitle:after {
  content: "";
  display: block;
  width: 2rem;
  height: 1px;
  background-color: currentColor;
  position: absolute;
  top: 50%;
}

.header-mea__subtitle:before {
  left: -3rem;
}

.header-mea__subtitle:after {
  right: -3rem;
}

@media (max-width: 767px) {
  .header-mea__subtitle {
    white-space: nowrap;
  }
}

@media (min-width: 992px) {
  .header-mea__subtitle {
    font-size: 2.2rem;
  }
}

@media (min-width: 1440px) {
  .header-mea__subtitle {
    font-size: 2.6rem;
  }
}

@media (max-width: 767px) {
  .page-resultats .header-mea__subtitle {
    color: #000;
    margin-top: 0;
    transform: none;
  }
}

.header-mea__subtitle-alpha {
  font-family: "Spectral", serif;
  font-style: italic;
  font-weight: 300;
  color: #FFF;
  letter-spacing: .2rem;
  font-size: 2.2rem;
  margin-top: 0;
  text-transform: none;
  display: block;
}

@media (max-width: 767px) {
  .header-mea__subtitle-alpha {
    font-size: 2rem;
  }
}

@media (min-width: 992px) {
  .header-mea__subtitle-alpha {
    font-size: 2.8rem;
  }
}

@media (max-width: 320px) {
  .header-mea__subtitle-alpha {
    margin-bottom: 2rem;
  }
}

.header-mea__text {
  color: #FFF;
  max-width: 40rem;
  margin-left: auto;
  margin-right: auto;
}

@media (max-width: 991px) {
  .header-mea__text {
    display: none;
  }
}

@media (min-width: 768px) {
  .header-mea__visual-mobile {
    display: none;
  }
}

.header-mea__visual-carousel {
  overflow: hidden;
  height: 51rem;
}

@media (max-width: 991px) {
  .header-mea__visual-carousel {
    height: 34rem;
  }
}

@media (max-width: 767px) {
  .header-mea__visual-carousel {
    display: none;
  }
}

@media (max-height: 820px) and (orientation: landscape) {
  .header-mea__visual-carousel {
    height: 42rem;
  }
}

.header-mea__visual-carousel .slick-dots {
  bottom: 1rem;
}

.header-mea__visual-wrapper {
  position: relative;
}

.header-mea__visual-wrapper:before {
  content: "";
  background-color: #000;
  opacity: .2;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

@media (max-width: 767px) {
  .page-resultats .header-mea__visual-wrapper:before {
    display: none;
  }
}

.header-mea__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  width: 100%;
  height: 51rem;
}

@media (max-width: 991px) {
  .header-mea__visual {
    height: 33.8rem;
  }
}

@media (max-height: 820px) and (orientation: landscape) {
  .header-mea__visual {
    height: 42rem;
  }
}

@media (max-width: 767px) {
  .header-mea__visual {
    margin-top: 6.5rem;
    height: 22rem;
  }
  .page-accueil .header-mea__visual,
  .page-pays-pays .header-mea__visual,
  .page-pays-regions .header-mea__visual,
  .page-envie-base .header-mea__visual {
    height: calc(100vh - 6.5rem);
  }
  .page-agence .header-mea__visual,
  .page-recherche .header-mea__visual,
  .page-home-guide .header-mea__visual,
  .page-guide-pays .header-mea__visual,
  .page-conseillers .header-mea__visual,
  .page-envies .header-mea__visual,
  .page-mag-pays .header-mea__visual,
  .page-saison .header-mea__visual,
  .page-pays-tag .header-mea__visual {
    height: 33.8rem;
  }
  .page-accueil.scrolltop .header-mea__visual {
    height: calc(100vh);
    margin-top: 0;
  }
  .page-resultats .header-mea__visual {
    display: none;
  }
}

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  .header-mea__visual {
    /* Retina-specific stuff here */
  }
}

.page-mag-form .header-mea__visual {
  height: 33.8rem;
}

@media (max-width: 991px) {
  .page-mag-form .header-mea__visual {
    height: 24rem;
  }
}

.page-mag-accueil .header-mea__visual,
.page-mag-article .header-mea__visual {
  height: 33.8rem;
}

.header-mea__link {
  text-transform: uppercase;
  color: #FFF;
  display: block;
}

.header-mea__link:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.header-mea__link:after {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  animation-name: vdm-wobble-vertical;
  animation-duration: 2s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  margin-top: 1rem;
  display: block;
}

@keyframes vdm-wobble-vertical {
  8.325% {
    transform: translateY(8px);
  }
  16.65% {
    transform: translateY(-6px);
  }
  24.975% {
    transform: translateY(4px);
  }
  33.3% {
    transform: translateY(-2px);
  }
  41.625% {
    transform: translateY(1px);
  }
  50% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(0);
  }
}

@media (min-width: 768px) {
  .header-mea__link {
    display: none;
  }
}

.page-pays .header-mea__link,
.page-envie-base .header-mea__link,
.page-envies .header-mea__link,
.page-guide-pays .header-mea__link {
  position: absolute;
  width: 100%;
  bottom: 10rem;
  left: 50%;
  transform: translateX(-50%);
}

.page-accueil .header-mea__link {
  margin-top: 6rem;
}

.header-mea__link-scroll {
  display: block;
  position: absolute;
  top: 6.5rem;
  bottom: 6.5rem;
  width: 100%;
  z-index: 1;
}

@media (min-width: 768px) {
  .header-mea__link-scroll {
    display: none;
  }
}

.header-mea__content {
  width: 100%;
}

@media (min-width: 768px) {
  .header-mea__content {
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 2;
    transform: translateY(-50%);
  }
}

.page-accueil .header-mea__content {
  position: absolute;
  top: 50%;
  transform: translateY(-30%);
  left: 0;
  z-index: 2;
}

@media (min-width: 768px) and (max-width: 991px) {
  .page-accueil .header-mea__content {
    top: calc(50% - 3em);
  }
}

@media (min-width: 992px) {
  .page-accueil .header-mea__content {
    top: calc(50% + 2rem);
  }
}

@media (max-width: 320px) {
  .page-accueil.scrolltop .header-mea__content {
    transform: translateY(-47%);
  }
}

.header-mea__content-inner {
  margin-top: 3rem;
  margin-left: 3rem;
  margin-right: 3rem;
}

@media (min-width: 768px) {
  .header-mea__content-inner {
    margin-left: auto;
    margin-right: auto;
    max-width: 32rem;
  }
}

@media (min-width: 992px) {
  .header-mea__content-inner {
    margin-top: 4rem;
  }
}

@media (max-width: 320px) {
  .header-mea__content-inner {
    margin-top: 1rem;
  }
}

.header-mea__footer {
  position: absolute;
  bottom: 4rem;
  left: 0;
  width: 100%;
}

@media (max-width: 767px) {
  .page-accueil .header-mea__footer,
  .page-pays .header-mea__footer,
  .page-envie-base .header-mea__footer {
    bottom: 10rem;
  }
  .page-conseillers .header-mea__footer {
    bottom: 2rem;
  }
}

.header-mea__search-wrapper:before, .header-mea__search-wrapper:after {
  content: " ";
  display: table;
}

.header-mea__search-wrapper:after {
  clear: both;
}

@media (min-width: 768px) {
  .header-mea__search-wrapper > .awesomplete-container {
    float: left;
    width: calc(100% - 6.5rem);
  }
}

.header-mea__search-wrapper > .awesomplete-container input {
  text-align: center;
}

@media (min-width: 768px) {
  .header-mea__search-wrapper > .awesomplete-container input {
    text-align: left;
  }
}

@media (min-width: 768px) {
  .header-mea__search-wrapper > .awesomplete-container ul {
    width: calc(100% + 6.5rem);
  }
}

@media (min-width: 768px) {
  .header-mea__search-submit {
    float: right;
  }
}

@media (max-width: 767px) {
  .header-mea__search-submit {
    background-color: #000;
    color: #FFF;
    width: 100%;
    margin-top: 1rem;
  }
}

.header-mea__search-submit-icon {
  margin-left: 0;
}

@media (max-width: 767px) {
  .header-mea__search-submit-icon {
    display: none;
  }
}

@media (min-width: 768px) {
  .header-mea__search-submit-text {
    display: none;
  }
}

.header-mea__btn {
  display: block;
  font-weight: 700;
  text-decoration: underline;
  color: #FFF;
  text-transform: uppercase;
  margin-top: 2rem;
}

.header-mea__prev, .header-mea__next {
  position: absolute;
  top: 50%;
  display: block;
  padding: 1rem;
  z-index: 2;
  color: #FFF;
  text-transform: uppercase;
}

@media (max-width: 767px) {
  .header-mea__prev, .header-mea__next {
    top: auto;
    bottom: 1rem;
    background-color: rgba(255, 255, 255, 0.2);
    border-radius: 0.8rem;
    letter-spacing: .2rem;
  }
}

@media (min-width: 768px) {
  .header-mea__prev, .header-mea__next {
    letter-spacing: .5rem;
  }
}

.header-mea__prev {
  left: 1.5rem;
}

@media (min-width: 768px) {
  .header-mea__prev {
    transform: translateX(-50%) rotate(-90deg);
    transform-origin: top;
  }
}

.header-mea__next {
  right: 1.5rem;
}

@media (min-width: 768px) {
  .header-mea__next {
    transform: translateX(50%) rotate(90deg);
    transform-origin: top;
  }
}

/* ==========================================================================
   & footer
   ========================================================================== */
.footer {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

.page-ddv-light .footer {
  display: none;
}

.page-ddv-confirmation .footer {
  display: block;
}

.footer-list {
  margin-bottom: 2rem;
}

@media (max-width: 480px) {
  .footer-list {
    font-size: 2rem;
  }
}

.footer-list__title {
  font-weight: 700;
  text-transform: uppercase;
}

.footer-list__list > li {
  margin-top: 2px;
}

.footer-list__list > li > a {
  line-height: 1;
}

.footer-list__list > li > a:hover {
  text-decoration: underline;
}

.footer-list__logo {
  display: block;
  margin-top: 1rem;
  margin-bottom: 0.5rem;
}

.social {
  text-align: center;
  margin-bottom: 4rem;
}

.social__title {
  font-size: 2.7rem;
  font-weight: 700;
  margin-bottom: 3rem;
}

.social__item {
  display: inline;
}

.social__link {
  margin-left: 1rem;
  margin-right: 1rem;
  position: relative;
  display: inline-block;
  background-color: #0082ad;
  color: #FFF;
  width: 5.6rem;
  height: 5.6rem;
  border-radius: 50%;
  font-size: 3rem;
  margin-bottom: 0.5rem;
  transition: background-color .3s ease-out;
}

.social__link:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.social__link:hover {
  background-color: #2695b9;
}

.social__link.facebook:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.social__link.google-plus:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.social__link.twitter:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.social__link.pinterest:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.social__link.instagram:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.social__link.youtube:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

/* ==========================================================================
   & navigation
   ========================================================================== */
.nav {
  display: flex;
  justify-content: space-between;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #FFF;
  z-index: 3;
  padding-left: 1rem;
}

.nav:hover {
  z-index: 4;
}

@media (min-width: 768px) {
  .scrolled .nav,
  .page-produit .nav,
  .page-cheques-cadeaux-tunnel .nav,
  .page-ddv .nav,
  .page-ddv-produit .nav,
  .page-mag .nav {
    box-shadow: 0 0 15px 1px rgba(0, 0, 0, 0.07);
  }
}

@media (min-width: 992px) {
  .nav {
    padding-left: 5.55556rem;
    padding-right: 5.55556rem;
  }
}

@media (max-width: 767px) {
  .nav {
    padding-left: 0;
    padding-right: 0;
    display: block;
    background-color: #000;
    color: #FFF;
    height: 6.5rem;
    overflow: hidden;
  }
  .page-accueil.scrolltop:not(.menu-mobile-opened):not(.contact-mobile-opened) .nav {
    position: fixed;
    background-color: transparent;
    overflow: visible;
  }
  .sticky-nav-mobile-is-fixed .nav {
    display: none;
  }
}

.nav__list {
  flex-grow: 1;
  display: flex;
  align-items: center;
}

.nav__list.left {
  justify-content: flex-start;
}

@media (max-width: 767px) {
  .nav__list.left {
    display: none;
  }
}

.nav__list.right {
  justify-content: flex-end;
  margin-left: 8rem;
}

@media (max-width: 991px) {
  .nav__list.right {
    margin-left: 5rem;
  }
}

.nav__link {
  display: block;
  padding: 2rem 1rem;
  letter-spacing: .1rem;
  text-transform: uppercase;
}

@media (max-width: 991px) {
  .nav__link {
    font-size: 1.4rem;
  }
}

@media (max-width: 767px) {
  .nav__link {
    padding: 0;
    display: inline-block;
    font-size: 2.7rem;
    width: 3rem;
  }
}

.open-menu .nav__link {
  position: relative;
  padding-right: 2.5rem;
}

.open-menu .nav__link:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.open-menu .nav__link:after {
  position: absolute;
  top: 50%;
  right: 1rem;
  margin-top: -0.5rem;
  font-size: 1rem;
  margin-left: 0.5rem;
  width: 1rem;
  height: 1rem;
  vertical-align: middle;
  transform: rotate(90deg);
  color: #0082ad;
}

.no-touch .open-menu:hover .nav__link,
.no-touch .open-menu:focus .nav__link,
.touch .open-menu.active .nav__link {
  font-weight: 700;
}

@media (max-width: 991px) {
  .nav__btn {
    font-size: 1.4rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

@media (max-width: 767px) {
  .nav__btn {
    display: none;
  }
}

.flag {
  flex-shrink: 0;
}

@media (max-width: 767px) {
  .flag {
    display: none;
  }
}

@media (min-width: 768px) {
  .account {
    position: relative;
  }
}

.account__link {
  padding: 0.5rem 2rem;
  text-align: center;
}

.account__icon {
  position: relative;
}

.account__icon:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.account__icon:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media (max-width: 767px) {
  .account__icon {
    position: absolute;
    top: 0;
    right: 1.5rem;
    height: 6.5rem;
    transition: right .2s;
  }
  .page-accueil.scrolltop:not(.menu-mobile-opened):not(.contact-mobile-opened) .account__icon {
    right: -5.5rem;
  }
}

.account .tooltip.bottom {
  display: none;
  left: -7.1rem;
  margin-top: 0;
  padding-top: 20px;
  padding-bottom: 0;
}

.account .tooltip.bottom .tooltip-arrow {
  top: 10px;
}

.account .tooltip.bottom .tooltip-inner {
  width: 18rem;
  padding-top: 0;
  padding-bottom: 0;
}

.account:hover .tooltip {
  display: block;
}

.account__item {
  padding-top: 0.8rem;
  padding-bottom: 0.8rem;
}

.account__item + .account__item {
  border-top: 1px solid rgba(255, 255, 255, 0.4);
}

.tel__link {
  font-size: 1.7rem;
  font-weight: 700;
  letter-spacing: 0;
  padding-top: 0.8rem;
  padding-bottom: 1rem;
}

@media (max-width: 767px) {
  .tel__link {
    position: relative;
    font-size: x-large;
    position: absolute;
    top: 0;
    right: 7rem;
    height: 6.5rem;
    transition: right .2s;
  }
  .tel__link:before {
    font-family: "iconfont";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    text-decoration: none;
    text-transform: none;
    content: "";
  }
  .tel__link:before {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .page-accueil.scrolltop:not(.menu-mobile-opened):not(.contact-mobile-opened) .tel__link {
    right: -3rem;
  }
  .contact-mobile-opened .tel__link:before {
    color: #000;
  }
  .contact-mobile-opened .tel__link:after {
    content: "";
    width: 4.8rem;
    height: 4.8rem;
    background: #FFF;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
    border-radius: 50%;
  }
  .tel__link span {
    display: none;
  }
}

.tel .activeHLHighLevel {
  display: inline-block;
  font-weight: 700;
  text-align: center;
  vertical-align: middle;
  text-transform: uppercase;
  padding: 2rem;
  background-color: #0082ad;
  color: #FFF;
  -webkit-transition: background-color .3s ease-out;
  transition: background-color .3s ease-out;
  white-space: nowrap;
  line-height: 1.15;
}

@media (max-width: 767px) {
  .tel .activeHLHighLevel {
    padding: initial;
    background-color: inherit;
  }
}

@media (max-width: 767px) {
  .tel .tooltip {
    display: none !important;
  }
}

.activeHLLowLevel {
  color: #0082ad;
  padding-left: 1rem;
  padding-right: 1rem;
  text-transform: uppercase;
  display: block;
  text-align: center;
}

@media (max-width: 767px) {
  .activeHLLowLevel {
    display: none;
  }
}

.logo-vdm {
  position: absolute;
  top: 2rem;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  width: 13rem;
  z-index: 1;
  transition: width .2s, top .2s;
}

@media (max-width: 767px) {
  .logo-vdm {
    top: -3.5rem;
    z-index: 0;
  }
  .page-accueil.scrolltop:not(.menu-mobile-opened):not(.contact-mobile-opened) .logo-vdm {
    top: 2rem;
    width: 13rem;
  }
}

@media (max-width: 320px) {
  .page-accueil.scrolltop:not(.menu-mobile-opened):not(.contact-mobile-opened) .logo-vdm {
    width: 10rem;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .logo-vdm {
    width: 9rem;
  }
}

@media (min-width: 768px) {
  .scrolled .logo-vdm,
  .page-produit .logo-vdm,
  .page-cheques-cadeaux-tunnel .logo-vdm,
  .page-ddv .logo-vdm,
  .page-ddv-produit .logo-vdm {
    width: 9rem;
    top: 1rem;
  }
  .logo-is-hidden .logo-vdm {
    top: -9rem;
  }
}

.menu-button {
  background: #000;
  height: 100%;
  width: 5.55556rem;
  height: 5.88889rem;
  position: relative;
  display: block;
}

@media (min-width: 768px) {
  .nav .menu-button {
    display: none;
  }
}

.menu-button.scrollTopButtonStickyNav {
  color: #FFF;
  transform: rotate(-180deg);
  position: relative;
}

.menu-button.scrollTopButtonStickyNav:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.menu-button.scrollTopButtonStickyNav:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.menu-button .nav-icon span {
  display: block;
  width: 25px;
  height: 2px;
  background-color: #FFF;
  position: absolute;
  transition: all .2s ease-in-out 0s;
  left: 50%;
  top: 50%;
  margin-left: -10px;
  margin-top: -1px;
}

.menu-button .nav-icon span:before, .menu-button .nav-icon span:after {
  content: '';
  display: block;
  width: 25px;
  height: 2px;
  background-color: #FFF;
  position: absolute;
  transition: all .2s ease-in-out 0s;
}

.menu-button .nav-icon span:before {
  top: -7px;
}

.menu-button .nav-icon span:after {
  top: 7px;
}

.menu-mobile-opened .menu-button .nav-icon span {
  background-color: transparent;
}

.menu-mobile-opened .menu-button .nav-icon span:before {
  transform: rotate(45deg);
  top: 0;
  left: 0;
}

.menu-mobile-opened .menu-button .nav-icon span:after {
  transform: rotate(-45deg);
  top: 0;
  left: 0;
}

.no-touch .open-menu:hover,
.no-touch .open-menu:focus,
.touch .open-menu.active {
  position: relative;
}

.no-touch .open-menu:hover:before,
.no-touch .open-menu:focus:before,
.touch .open-menu.active:before {
  content: "";
  width: 0;
  height: 0;
  border-left: 1.5rem solid transparent;
  border-right: 1.5rem solid transparent;
  border-bottom: 1.5rem solid #feac94;
  position: absolute;
  left: 50%;
  bottom: -1px;
  transform: translateX(-50%);
}

@media screen and (min-width: 1100px) {
  .bigScreen {
    display: block;
  }
  .lowScreen, .account .tooltip.bottom {
    display: none;
  }
}

@media screen and (max-width: 1100px) {
  .bigScreen {
    display: none;
  }
  .lowScreen {
    display: block !important;
  }
}

/* ==========================================================================
   & sticky nav
   ========================================================================== */
.sticky-nav {
  background-color: #FFF;
  position: relative;
  z-index: 3;
  width: 100%;
  padding-left: 5.55556rem;
  padding-right: 5.55556rem;
}

.sticky-nav:before, .sticky-nav:after {
  content: " ";
  display: table;
}

.sticky-nav:after {
  clear: both;
}

@media (max-width: 767px) {
  .sticky-nav {
    display: none;
  }
  .page-resultats .sticky-nav {
    padding-left: 2rem;
    padding-right: 2rem;
    position: fixed;
    left: 0;
    display: block;
    background-color: #0082ad;
    bottom: 0;
    -webkit-overflow-scrolling: touch;
    will-change: transform;
    transition: transform .2s ease-in;
    transform: translateY(0);
  }
  .page-resultats.recherche-filters-is-opened .sticky-nav {
    transition: transform .25s ease-out;
    transform: translateY(calc(-100vh + 5.55556rem));
  }
}

.sticky-nav-is-fixed .sticky-nav {
  position: fixed;
  top: 0;
  left: 0;
  padding-left: 0;
  padding-right: 0;
  z-index: 40;
}

.page-produit .sticky-nav,
.page-librairie .sticky-nav {
  padding-left: 0rem;
  padding-right: 0rem;
}

.sticky-nav__list {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.page-produit .sticky-nav__list,
.page-librairie .sticky-nav__list {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.page-produit .sticky-nav__list:before, .page-produit .sticky-nav__list:after,
.page-librairie .sticky-nav__list:before,
.page-librairie .sticky-nav__list:after {
  content: " ";
  display: table;
}

.page-produit .sticky-nav__list:after,
.page-librairie .sticky-nav__list:after {
  clear: both;
}

@media (min-width: 768px) {
  .page-produit .sticky-nav__list,
  .page-librairie .sticky-nav__list {
    width: 668px;
  }
}

@media (min-width: 992px) {
  .page-produit .sticky-nav__list,
  .page-librairie .sticky-nav__list {
    width: 882px;
  }
}

@media (min-width: 1440px) {
  .page-produit .sticky-nav__list,
  .page-librairie .sticky-nav__list {
    width: 1230px;
  }
}

.sticky-nav-is-fixed .sticky-nav__list {
  width: 100%;
  padding-left: 0;
  padding-right: 0;
}

.page-conseillers-pays .sticky-nav__list,
.page-conseillers-interview .sticky-nav__list {
  margin-left: auto;
  margin-right: auto;
  max-width: 100rem;
}

.page-cheques-cadeaux-tunnel .sticky-nav__list {
  margin-left: auto;
  margin-right: auto;
  max-width: 80rem;
}

.page-conseillers-pays.sticky-nav-is-fixed .sticky-nav__list,
.page-conseillers-interview.sticky-nav-is-fixed .sticky-nav__list,
.page-cheques-cadeaux-tunnel.sticky-nav-is-fixed .sticky-nav__list {
  max-width: none;
}

.sticky-nav__item {
  flex-grow: 1;
  text-align: center;
  vertical-align: middle;
  display: inline-block;
  line-height: 4.77778rem;
}

.sticky-nav__item + .sticky-nav__item {
  position: relative;
}

@media (min-width: 768px) {
  .sticky-nav__item + .sticky-nav__item:before {
    content: "";
    position: absolute;
    display: block;
    background-color: #000;
    width: 1px;
    height: 2.5rem;
    top: 50%;
    transform: translateY(-50%);
  }
}

.page-conseillers-interview .sticky-nav__item,
.page-cheques-cadeaux-tunnel .sticky-nav__item {
  width: 33.33%;
}

.sticky-nav__link {
  display: inline-block;
  vertical-align: middle;
  height: 4.77778rem;
  line-height: 4.77778rem;
  margin: 0.5rem;
  padding-left: 1rem;
  padding-right: 1rem;
  text-transform: uppercase;
  font-size: 1.4rem;
  letter-spacing: .2rem;
}

.sticky-nav__link.active {
  background-color: #0082ad;
  color: #FFF;
}

.sticky-nav__link > span {
  display: inline-block;
  vertical-align: middle;
  line-height: 1.1;
}

.sticky-nav__fixed-item {
  display: none;
}

@media (min-width: 768px) {
  .sticky-nav-is-fixed .sticky-nav__fixed-item {
    display: block;
  }
}

.sticky-nav__button {
  white-space: nowrap;
}

@media (max-width: 991px) {
  .sticky-nav__button {
    font-size: 1.4rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

a.sticky-nav__link.active:hover {
  color: #FFF;
}

a.sticky-nav__link:hover {
  color: #0082ad;
}

@media (max-width: 767px) {
  .sticky-nav-wrapper {
    height: 0 !important;
  }
}

@media (min-width: 768px) {
  .sticky-nav-wrapper {
    margin-bottom: 0.2rem;
  }
}

@media (min-width: 768px) {
  .sticky-nav-mobile-wrapper {
    display: none;
  }
}

.sticky-nav-mobile {
  position: relative;
  z-index: 4;
  background-color: rgba(255, 255, 255, 0.97);
}

.sticky-nav-mobile-is-fixed .sticky-nav-mobile {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
}

.sticky-nav-mobile__button {
  border-bottom: 1px solid;
  text-align: center;
  display: block;
  padding: 2rem 1rem;
  text-transform: uppercase;
  font-size: 1.8rem;
  letter-spacing: .2rem;
  width: 100%;
  font-weight: 700;
}

.sticky-nav-mobile__button-text:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.sticky-nav-mobile__button-text:after {
  vertical-align: middle;
}

.sticky-nav-mobile .sticky-nav__link {
  display: none;
  border-bottom: 1px solid #000;
  text-align: center;
}

.sticky-nav-mobile-is-opened .sticky-nav-mobile .sticky-nav__link {
  display: block;
}

/* ==========================================================================
   & menu
   ========================================================================== */
.menu {
  display: none;
  position: fixed;
  top: 5.9rem;
  left: 5.55556rem;
  right: 5.55556rem;
  z-index: 1100;
  border: 0.88889rem solid #feac94;
  background-color: #FFF;
  padding: 4rem;
  overflow: hidden;
}

.no-touch .open-menu:hover .menu,
.no-touch .open-menu:focus .menu,
.touch .open-menu.active .menu {
  display: block;
}

@media (max-width: 767px) {
  .menu {
    display: none;
  }
}

.menu__inner {
  height: 100%;
  position: relative;
}

.menu__close {
  display: none;
}

.box-menu {
  display: flex;
  height: 100%;
}

.box-menu__main {
  flex-grow: 1;
}

.box-menu__main-inner {
  overflow-x: hidden;
  overflow-y: auto;
  height: 100%;
}

.box-menu__list {
  margin-bottom: 4rem;
}

.box-menu__item {
  margin-top: 1rem;
}

@media (min-width: 1025px) {
  .box-menu__item {
    margin-top: 2rem;
  }
}

.box-menu__item:first-child {
  margin-top: 0;
}

.box-menu__item.active {
  font-weight: 700;
}

.box-menu__link {
  font-size: 3rem;
}

@media (max-width: 1024px) {
  .box-menu__link {
    font-size: 2rem;
  }
}

.box-menu__subitem.active {
  font-weight: 700;
}

.box-menu__sublink {
  color: #0082ad;
  text-transform: uppercase;
  font-size: 2rem;
}

.box-menu__sublink:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-menu__sublink:before {
  font-size: 1.6rem;
  color: #000;
}

@media (max-width: 1024px) {
  .box-menu__sublink {
    font-size: 1.4rem;
  }
  .box-menu__sublink:before {
    font-size: 1rem;
  }
}

.box-menu__tel {
  font-weight: 700;
  font-size: 1.7rem;
}

.social-menu {
  margin-top: 2rem;
  color: #8a8a8a;
}

.social-menu__title {
  font-size: 1.2rem;
  font-weight: 700;
}

@media (max-width: 767px) {
  .social-menu__title {
    font-size: 2rem;
  }
}

.social-menu__list {
  margin-top: 1rem;
}

.social-menu__item {
  display: inline-block;
}

@media (max-width: 1024px) {
  .social-menu__item + .social-menu__item {
    margin-left: 0.5rem;
  }
}

.social-menu__link {
  position: relative;
  display: block;
  font-size: 1.8rem;
  width: 2.4rem;
  height: 2.4rem;
}

.social-menu__link:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.social-menu__link:hover {
  color: #feac94;
}

@media (max-width: 767px) {
  .social-menu__link {
    font-size: 2.6rem;
    width: 4.4rem;
    height: 4.4rem;
  }
}

.social-menu__link.facebook:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.social-menu__link.google-plus:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.social-menu__link.twitter:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.social-menu__link.pinterest:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.social-menu__link.instagram:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.social-menu__link.youtube:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-list__title {
  font-size: 2.2rem;
  font-weight: 700;
  margin-bottom: 1.5rem;
}

.box-list__list > li {
  margin-top: .5rem;
}

.box-list__list > li > a {
  font-size: 1.8rem;
}

.box-list__list > li > a:hover {
  text-decoration: underline;
}

.box-destinations {
  margin-left: auto;
  margin-right: auto;
  max-width: 130rem;
}

.box-inspirations {
  margin-left: auto;
  margin-right: auto;
  max-width: 115rem;
}

@media (min-width: 992px) {
  .box-inspirations__row {
    margin-left: -3rem;
    margin-right: -3rem;
    display: flex;
  }
  .box-inspirations__row > * {
    padding-left: 3rem;
    padding-right: 3rem;
  }
  .box-inspirations__row > * + * {
    border-left: 1px solid #8a8a8a;
  }
}

.box-inspirations__list {
  margin-top: 8rem;
}

.box-inspirations__list > li + li {
  margin-top: 1rem;
}

.box-inspirations__list > li > a {
  font-weight: 700;
}

.box-inspirations__list > li > a:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-inspirations__list > li > a:before {
  display: inline-block;
  font-size: 1rem;
  margin-right: 0.5rem;
}

.box-inspirations .box-envie {
  margin-bottom: 2rem;
}

.box-inspirations .box-envie__text {
  font-size: 1.5rem;
  font-weight: 500;
}

.box-inspirations .button-menu {
  margin-bottom: 2rem;
}

.box-inspirations .box-list__title {
  margin-bottom: 0;
}

.box-a-propos {
  margin-left: auto;
  margin-right: auto;
  max-width: 117rem;
}

@media (min-width: 992px) {
  .box-a-propos__row {
    margin-left: -3rem;
    margin-right: -3rem;
  }
  .box-a-propos__row > * {
    padding-left: 3rem;
    padding-right: 3rem;
  }
}

.box-a-propos .box-envie {
  margin-bottom: 2rem;
}

.box-a-propos .box-envie__text {
  font-weight: 500;
}

.box-a-propos .actions {
  margin-top: 2rem;
}

@media (min-width: 768px) {
  .list-continent {
    columns: 4;
  }
  .list-continent > li + li {
    margin-top: 1rem;
  }
  .list-continent .list-continent__link {
    font-weight: 700;
    color: #0082ad;
    margin-bottom: 0.2rem;
    display: block;
  }
  .list-continent button.list-continent__link {
    cursor: default;
    width: 100%;
    text-align: left;
  }
  .list-continent a.list-continent__link:hover {
    text-decoration: underline;
  }
}

@media (min-width: 991px) and (max-width: 1023px) {
  .list-continent {
    columns: 5;
  }
}

@media (min-width: 1024px) and (max-width: 1439px) {
  .list-continent {
    columns: 7;
  }
}

@media (min-width: 1440px) {
  .list-continent {
    columns: 7;
  }
}

.list-pays > li > a {
  display: block;
  font-size: 1.4rem;
}

.list-pays > li > a:hover {
  text-decoration: underline;
}

.box-menu-saisons {
  color: #0082ad;
  text-transform: uppercase;
  font-weight: 700;
}

.box-menu-saisons + .box-menu-saisons {
  margin-top: 4rem;
}

@media (max-width: 991px) {
  .box-menu-saisons {
    margin-top: 2rem;
  }
}

.box-menu-saisons__title {
  font-size: 2rem;
  margin-bottom: 2rem;
  display: block;
}

.box-menu-saisons__title:hover {
  text-decoration: underline;
}

@media (max-width: 991px) {
  .box-menu-saisons__title {
    margin-bottom: 1rem;
  }
}

@media (max-width: 991px) {
  .box-menu-saisons__list {
    columns: 4;
  }
}

.box-menu-saisons__list > li:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-menu-saisons__list > li:before {
  font-size: 1rem;
  margin-right: 0.5rem;
}

.box-menu-saisons__list > li > a:hover {
  text-decoration: underline;
}

.box-commande-brochure {
  margin-top: 3rem;
  text-align: center;
}

.box-commande-brochure__text {
  margin-top: 1rem;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 1.3rem;
}

/* ==========================================================================
   & menu mobile
   ========================================================================== */
.menu-mobile {
  display: none;
}

@media (max-width: 767px) {
  .menu-mobile {
    display: block;
    position: fixed;
    top: 6.5rem;
    overflow-y: auto;
    width: 100%;
    height: 100%;
    padding-bottom: 20rem;
    background-color: #FFF;
    z-index: 1001;
    -webkit-overflow-scrolling: touch;
    will-change: transform;
    transition: transform .2s ease-in;
    transform: translateX(-100%);
  }
  .menu-mobile-opened .menu-mobile {
    transition: transform .25s ease-out;
    transform: translateX(0);
  }
  .menu-mobile__footer {
    padding-left: 2rem;
    padding-right: 2rem;
    padding-bottom: 1rem;
    position: fixed;
    width: 100%;
    bottom: 6rem;
  }
}

.menu-mobile-list {
  text-transform: uppercase;
  font-weight: 500;
  position: relative;
  z-index: 1;
  background-color: #FFF;
}

.menu-mobile-list a {
  display: block;
}

.menu-mobile-list > li > a {
  color: inherit;
  text-decoration: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  margin: 0;
  border-bottom: 1px solid #dbdde3;
  padding: 1.5rem 2rem;
  font-size: 2.4rem;
}

.menu-mobile-list > li > a.js-toggle-menu {
  transition: all .3s;
  padding-right: 5rem;
}

.menu-mobile-list > li > a.js-toggle-menu:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.menu-mobile-list > li > a.js-toggle-menu:before {
  position: absolute;
  right: 2rem;
  transition: transform .3s;
  transform: rotate(-45deg);
}

.menu-mobile-list > li > a.opened {
  background-color: #8a8a8a;
  color: #FFF;
}

.menu-mobile-list > li > a.opened + ul {
  display: block;
}

.menu-mobile-list > li > a.opened:before {
  transform: rotate(0);
}

.menu-mobile-list > li > ul {
  display: none;
}

.menu-mobile-list > li > ul > li > .js-menu-mobile-niv2 {
  color: inherit;
  text-decoration: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  margin: 0;
  border-bottom: 1px solid #dbdde3;
  padding: 1.5rem 3rem;
  font-size: 1.6rem;
  width: 100%;
  text-align: left;
}

.menu-mobile-list > li > ul > li > .js-menu-mobile-niv2.js-toggle-menu {
  transition: all .3s;
  padding-right: 5rem;
}

.menu-mobile-list > li > ul > li > .js-menu-mobile-niv2.js-toggle-menu:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.menu-mobile-list > li > ul > li > .js-menu-mobile-niv2.js-toggle-menu:before {
  position: absolute;
  right: 2.4rem;
  transition: transform .3s;
  transform: rotate(-45deg);
}

.menu-mobile-list > li > ul > li > .js-menu-mobile-niv2.opened {
  background-color: #d1d1d1;
}

.menu-mobile-list > li > ul > li > .js-menu-mobile-niv2.opened + ul {
  display: block;
}

.menu-mobile-list > li > ul > li > .js-menu-mobile-niv2.opened:before {
  transform: rotate(0);
}

.menu-mobile-list > li > ul > li > ul {
  display: none;
}

.menu-mobile-list > li > ul > li > ul > li > .js-menu-mobile-niv3 {
  color: inherit;
  text-decoration: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  margin: 0;
  border-bottom: 1px solid #dbdde3;
  padding: 1.5rem 5rem 1.5rem 4rem;
  font-size: 1.6rem;
}

.menu-mobile-list > li > ul > li > ul.opened {
  display: block;
}

/* ==========================================================================
   & contact
   ========================================================================== */
.contact {
  display: block;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1100;
  background-color: #f6f6f6;
  border-bottom: 1px solid #dbdde3;
  padding: 5rem 2rem;
  text-align: center;
  overflow: hidden;
  transition: 0.4s ease-in;
  transform: translateY(-120%);
  border: 0.88889rem solid #feac94;
  margin: 4rem auto;
}

@media (min-width: 768px) {
  .contact {
    max-width: 90rem;
    max-height: 74rem;
  }
}

@media (min-width: 992px) {
  .contact {
    max-width: 110rem;
    max-height: 75rem;
  }
}

.contact-opened .contact {
  transition: 0.5s ease-out;
  transform: translateY(0);
}

.contact__inner {
  height: 100%;
  position: relative;
}

.contact__close {
  position: relative;
  line-height: 1;
  width: 2rem;
  height: 2rem;
  font-size: 2rem;
  padding: 0;
  position: absolute;
  top: -2rem;
  left: 2rem;
}

.contact__close:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.contact__close:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media (min-width: 1025px) {
  .contact__close {
    width: 2.5rem;
    height: 2.5rem;
    font-size: 2.5rem;
  }
}

.contact__close span {
  display: none;
}

.contact__section {
  margin-top: 3rem;
}

.contact__title {
  font-size: 4.4rem;
  text-align: left;
  font-weight: normal;
  margin-bottom: 4rem;
  line-height: 1.2;
  display: inline-block;
}

.contact__actions {
  margin-top: 4rem;
  margin-bottom: 4rem;
}

.contact__list {
  margin-left: auto;
  margin-right: auto;
  max-width: 60rem;
  margin-bottom: 4rem;
}

.contact__list:before, .contact__list:after {
  content: " ";
  display: table;
}

.contact__list:after {
  clear: both;
}

.contact__item {
  display: block;
  width: 50%;
  float: left;
}

.contact__tab-content {
  overflow: auto;
  height: calc(100vh - 24rem);
}

.menu-contact {
  font-size: 2rem;
  margin-bottom: 4rem;
}

.menu-contact__item {
  display: inline-block;
}

.menu-contact__item.active {
  font-weight: 700;
}

.menu-contact__item.active .menu-contact__link {
  text-decoration: underline;
}

.menu-contact__item + .menu-contact__item {
  margin-left: 4rem;
}

.contact .container {
  max-width: 882px;
}

.contact-accueil__links {
  margin-left: auto;
  margin-right: auto;
  max-width: 60rem;
}

.contact-accueil__link {
  font-size: 2rem;
}

.contact-accueil__link:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.contact-accueil__link:before {
  display: inline-block;
  font-size: 1.5rem;
  position: relative;
  top: 0.2rem;
}

.contact-pays__inner {
  margin-left: auto;
  margin-right: auto;
}

.contact-pays__text {
  font-size: 3.5rem;
  margin-bottom: 4rem;
  text-align: left;
}

.contact-pays__list {
  text-align: left;
  font-size: 1.4rem;
  column-count: 3;
  column-gap: 12rem;
}

@media (max-width: 991px) {
  .contact-pays__list {
    column-gap: 4rem;
  }
}

.contact-pays__list li:before, .contact-pays__list li:after {
  content: " ";
  display: table;
}

.contact-pays__list li:after {
  clear: both;
}

.contact-pays__list li + li {
  margin-top: 0.2rem;
}

.contact-pays__list .value {
  font-weight: 700;
  float: right;
  width: 10rem;
}

.contact-agences__inner {
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.contact-agences__list {
  margin-top: 2rem;
  text-align: left;
}

.contact-agences__list li {
  min-height: 85px;
}

.contact-agences__list li + li {
  margin-top: 2rem;
}

.contact-agences__list .text {
  font-weight: 700;
}

.contact-item__icon {
  color: #feac94;
  font-size: 6rem;
  width: 6rem;
  height: 6rem;
  display: inline-block;
  position: relative;
}

.contact-item__icon:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media (max-width: 767px) {
  .contact-item__icon {
    display: inline-block;
    line-height: 1;
    vertical-align: middle;
    font-size: 4rem;
  }
}

.contact-item__text {
  text-transform: uppercase;
  font-size: 1.8rem;
  margin-top: 0;
}

@media (max-width: 767px) {
  .contact-item__text {
    display: inline-block;
  }
}

.contact-item__link {
  display: inline-block;
}

@media (max-width: 767px) {
  .contact-item__link {
    display: block;
  }
}

/* ==========================================================================
   & contact mobile
   ========================================================================== */
.contact-mobile {
  display: none;
}

@media (max-width: 767px) {
  .contact-mobile {
    display: block;
    position: fixed;
    top: 6.5rem;
    overflow-y: auto;
    width: 100%;
    height: 100%;
    padding-bottom: 20rem;
    background-color: #FFF;
    z-index: 1001;
    -webkit-overflow-scrolling: touch;
    will-change: transform;
    transition: transform .2s ease-in;
    transform: translateX(100%);
  }
  .contact-mobile-opened .contact-mobile {
    transition: transform .25s ease-out;
    transform: translateX(0);
  }
  .contact-mobile__footer {
    padding-left: 2rem;
    padding-right: 2rem;
    padding-bottom: 1rem;
    position: fixed;
    width: 100%;
    bottom: 0;
  }
}

.contact-mobile-list {
  text-transform: uppercase;
  font-weight: 500;
  position: relative;
  z-index: 1;
  background-color: #FFF;
}

.contact-mobile-list a {
  display: block;
}

.contact-mobile-list > li > a {
  color: inherit;
  text-decoration: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  margin: 0;
  border-bottom: 1px solid #dbdde3;
  padding: 1.5rem 2rem;
  font-size: 2.4rem;
  overflow: hidden;
}

.contact-mobile-list > li > a .value {
  float: right;
  color: #0082ad;
}

.contact-mobile-list > li > a.js-toggle-menu {
  transition: all .3s;
  padding-right: 5rem;
}

.contact-mobile-list > li > a.js-toggle-menu:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.contact-mobile-list > li > a.js-toggle-menu:before {
  position: absolute;
  right: 2rem;
  transition: transform .3s;
  transform: rotate(-45deg);
}

.contact-mobile-list > li > a.opened {
  background-color: #8a8a8a;
  color: #FFF;
}

.contact-mobile-list > li > a.opened + ul {
  display: block;
}

.contact-mobile-list > li > a.opened:before {
  transform: rotate(0);
}

.contact-mobile-list > li > ul {
  display: none;
}

.contact-mobile-list > li > ul > li > .contact-mobile-niv2 {
  color: inherit;
  text-decoration: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  margin: 0;
  border-bottom: 1px solid #dbdde3;
  padding: 1.5rem 3rem;
  font-size: 1.6rem;
  width: 100%;
  text-align: left;
}

.contact-mobile-list > li > ul > li > .contact-mobile-niv2 .value {
  float: right;
  color: #0082ad;
}

.scrollTopButton {
  position: fixed;
  z-index: 400;
  bottom: 8rem;
  right: 3rem;
  background-color: rgba(138, 138, 138, 0.8);
  transform: translateX(-50%);
  opacity: 0;
  white-space: nowrap;
  padding: 15px;
  border-radius: 30px;
  line-height: 1;
  transform: rotate(-180deg);
  transition: opacity .6s ease-out, background-color .3s ease-out;
}

.scrollTopButton:hover {
  background-color: rgba(156, 156, 156, 0.8);
}

.scrollTopButton:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.scrollTopButton:before {
  position: relative;
  top: 0.2rem;
}

.scrollTopButton, .scrollTopButton:hover, .scrollTopButton:focus, .scrollTopButton:active {
  color: #FFF;
  text-decoration: none;
}

.scrolltop-button-is-showed .scrollTopButton {
  opacity: 1;
}

@media (max-width: 767px) {
  .page-mag .scrollTopButton {
    right: auto;
    left: 3rem;
  }
}

/* ==========================================================================
   & nav univers 
   ========================================================================== */
@media (max-width: 767px) {
  .nav-univers {
    position: relative;
  }
  .nav-univers:before {
    content: "";
    width: 100%;
    height: 2px;
    background-color: #000;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
  }
  .nav-univers-mobile-is-fixed .nav-univers {
    position: fixed;
    z-index: 1;
    top: 6.5rem;
    right: 0;
    left: 0;
    background-color: #FFF;
  }
}

@media (max-width: 767px) {
  .nav-univers__inner {
    overflow-x: auto;
    overflow-y: hidden;
  }
}

@media (min-width: 768px) {
  .nav-univers__inner {
    padding-left: 5.55556rem;
    padding-right: 5.55556rem;
  }
}

@media (max-width: 767px) {
  .nav-univers__list {
    white-space: nowrap;
  }
}

@media (min-width: 768px) {
  .nav-univers__list {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}

.nav-univers__item {
  flex-grow: 1;
  text-align: center;
  vertical-align: middle;
  display: inline-block;
}

@media (min-width: 768px) {
  .nav-univers__item {
    position: relative;
  }
}

@media (min-width: 768px) {
  .nav-univers__item + .nav-univers__item:before {
    content: "";
    position: absolute;
    display: block;
    background-color: #000;
    width: 1px;
    height: 2.5rem;
    top: 50%;
    transform: translateY(-50%);
  }
}

.no-touch .nav-univers__item:hover .nav-univers__link, .no-touch .nav-univers__item:focus .nav-univers__link {
  color: #0082ad;
}

.nav-univers__item .dropdown-backdrop {
  display: none;
}

.nav-univers__link {
  display: inline-block;
  vertical-align: middle;
  height: 4.77778rem;
  line-height: 4.77778rem;
  padding-left: 1rem;
  padding-right: 1rem;
  text-transform: uppercase;
  font-size: 1.4rem;
  letter-spacing: .2rem;
}

@media (max-width: 767px) {
  .nav-univers__link {
    height: 5.55556rem;
    line-height: 5.55556rem;
    font-size: 1.6rem;
  }
}

@media (min-width: 768px) {
  .nav-univers__link {
    margin: 0.5rem;
  }
}

.nav-univers__link > span {
  display: inline-block;
  vertical-align: middle;
  line-height: 1.1;
}

.with-sousnav .nav-univers__link {
  position: relative;
  padding-right: 2.5rem;
}

.with-sousnav .nav-univers__link:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.with-sousnav .nav-univers__link:after {
  position: absolute;
  top: 50%;
  right: 1rem;
  font-size: 1rem;
  width: 1rem;
  height: 1rem;
  vertical-align: middle;
  transform: rotate(90deg) translateX(-50%);
  line-height: normal;
  margin-top: -0.2rem;
}

.home .nav-univers__link span:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.home .nav-univers__link span:before {
  vertical-align: middle;
  margin-right: 0.5rem;
  font-size: 0.84em;
  position: relative;
  top: -0.1em;
}

.active .nav-univers__link {
  font-weight: 700;
}

@media (max-width: 767px) {
  .active .nav-univers__link {
    position: relative;
  }
  .active .nav-univers__link:before {
    content: "";
    display: block;
    height: 4px;
    background-color: #000;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
  }
}

.touch .open .nav-univers__link {
  color: #0082ad;
}

@media (min-width: 768px) and (max-width: 1100px) {
  .mois .nav-univers__link .long {
    display: none;
  }
}

.nav-univers__close {
  position: absolute;
  top: 0;
  right: 0;
  width: 4rem;
  height: 4rem;
  line-height: 4rem;
  font-size: 4rem;
  color: #0082ad;
}

.no-touch .nav-univers__close {
  display: none;
}

.nav-univers-mobile-wrapper {
  height: 5.55556rem;
}

.sousnav-univers {
  display: none;
  position: absolute;
  border: 2px solid #0082ad;
  background-color: #FFF;
  overflow: hidden;
  line-height: normal;
  box-shadow: 0 0 15px 1px rgba(0, 0, 0, 0.07);
  text-align: left;
  z-index: 995;
}

@media (max-width: 767px) {
  .sousnav-univers {
    left: 2rem;
    right: 2rem;
    margin-top: -2px;
    border-width: 3px;
    white-space: normal;
  }
}

@media (min-width: 768px) {
  .sousnav-univers {
    margin-top: -1rem;
    min-width: 100%;
    white-space: nowrap;
  }
}

.touch .sousnav-univers {
  max-height: calc(100vh - 18rem);
  overflow-y: auto;
}

.sousnav-univers__link {
  display: block;
  padding: 1rem;
}

.no-touch .sousnav-univers__link:hover {
  background-color: #f5f5f5;
}

.touch .sousnav-univers__link {
  padding-right: 3rem;
}

.no-touch .nav-univers__item:hover .sousnav-univers, .no-touch
.nav-univers__item:focus .sousnav-univers {
  display: block;
}

.touch .open .sousnav-univers {
  display: block;
}

/* ==========================================================================
   & Print
   ========================================================================== */
@media print {
  .no-print, .no-print * {
    display: none !important;
  }
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

.slick-slide:focus {
  outline: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
  margin-right: auto;
  margin-left: auto;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* Slider */
.slick-loading .slick-list {
  background: #fff url("../images/ajax-loader.gif") center center no-repeat;
}

/* Icons */
@font-face {
  font-family: "slick";
  src: url("../font/slick.eot");
  src: url("../font/slick.eot?#iefix") format("embedded-opentype"), url("../font/slick.woff") format("woff"), url("../font/slick.ttf") format("truetype"), url("../font/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal;
}

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 3rem;
  width: 3rem;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}

.slick-prev:before,
.slick-next:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.slick-prev:focus,
.slick-next:focus {
  outline: none;
}

.slick-prev:focus:before,
.slick-next:focus:before {
  opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}

.slick-prev:before,
.slick-next:before {
  font-family: "slick";
  font-size: 6rem;
  line-height: 1;
  color: black;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.no-touch .slick-prev:hover,
.no-touch .slick-next:hover {
  outline: none;
}

.no-touch .slick-prev:hover:before,
.no-touch .slick-next:hover:before {
  opacity: 1;
}

.no-touch .slick-prev:hover.slick-disabled,
.no-touch .slick-next:hover.slick-disabled {
  cursor: default;
}

.no-touch .slick-prev:hover.slick-disabled:before,
.no-touch .slick-next:hover.slick-disabled:before {
  opacity: 0.25;
}

.slick-prev {
  left: -5rem;
}

.slick-prev:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

[dir="rtl"] .slick-prev {
  left: auto;
  right: -5rem;
}

[dir="rtl"] .slick-prev:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.slick-next {
  right: -5rem;
}

.slick-next:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

[dir="rtl"] .slick-next {
  left: -5rem;
  right: auto;
}

[dir="rtl"] .slick-next:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 0;
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}

.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}

.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}

.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "•";
  width: 20px;
  height: 20px;
  font-family: "slick";
  font-size: 10px;
  line-height: 20px;
  text-align: center;
  color: #eee;
  opacity: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
  color: #111;
  opacity: 1;
}

.awesomplete {
  display: block;
  position: relative;
}

.awesomplete [hidden] {
  display: none;
}

.awesomplete .visually-hidden {
  position: absolute;
  clip: rect(0, 0, 0, 0);
}

.awesomplete > input {
  display: block;
}

.awesomplete > ul {
  position: absolute;
  left: 0;
  z-index: 1;
  min-width: 100%;
  box-sizing: border-box;
  list-style: none;
  padding: 0;
  margin: .2em 0 0;
  background: #FFF;
  text-shadow: none;
  box-shadow: 0px 0px 1px 0px rgba(0, 0, 0, 0.2);
}

.awesomplete > ul:empty {
  display: none;
}

.awesomplete > ul > li {
  position: relative;
  padding: .5em .7em;
  cursor: pointer;
  text-align: left;
  font-size: 1.8rem;
}

.awesomplete > ul > li:hover, .awesomplete > ul > li[aria-selected="true"] {
  background: #f6f6f6;
}

@media (min-width: 768px) {
  .awesomplete > ul > li {
    padding: .2em .5em;
  }
}

.awesomplete mark {
  color: #0082ad;
  font-weight: bold;
  background-color: transparent;
}

select.bs-select-hidden,
select.selectpicker {
  display: none !important;
}

.bootstrap-select {
  width: 220px \0;
  /*IE9 and below*/
}

.bootstrap-select > .dropdown-toggle {
  width: 100%;
  padding-right: 25px;
  z-index: 1;
}

.bootstrap-select > .dropdown-toggle.bs-placeholder, .bootstrap-select > .dropdown-toggle.bs-placeholder:hover, .bootstrap-select > .dropdown-toggle.bs-placeholder:focus, .bootstrap-select > .dropdown-toggle.bs-placeholder:active {
  color: #999;
}

.bootstrap-select > select {
  position: absolute !important;
  bottom: 0;
  left: 50%;
  display: block !important;
  width: 0.5px !important;
  height: 100% !important;
  padding: 0 !important;
  opacity: 0 !important;
  border: none;
}

.bootstrap-select > select.mobile-device {
  top: 0;
  left: 0;
  display: block !important;
  width: 100% !important;
  z-index: 2;
}

.has-error .bootstrap-select .dropdown-toggle,
.error .bootstrap-select .dropdown-toggle {
  border-color: #b94a48;
}

.bootstrap-select.fit-width {
  width: auto !important;
}

.bootstrap-select:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) {
  width: 220px;
}

.bootstrap-select .dropdown-toggle:focus {
  outline: thin dotted #333333 !important;
  outline: 5px auto -webkit-focus-ring-color !important;
  outline-offset: -2px;
}

.bootstrap-select.form-control {
  margin-bottom: 0;
  padding: 0;
  border: none;
}

.bootstrap-select.form-control:not([class*="col-"]) {
  width: 100%;
}

.bootstrap-select.form-control.input-group-btn {
  z-index: auto;
}

.bootstrap-select.form-control.input-group-btn:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}

.bootstrap-select.btn-group:not(.input-group-btn), .bootstrap-select.btn-group[class*="col-"] {
  float: none;
  display: inline-block;
  margin-left: 0;
}

.bootstrap-select.btn-group.dropdown-menu-right, .bootstrap-select.btn-group[class*="col-"].dropdown-menu-right,
.row .bootstrap-select.btn-group[class*="col-"].dropdown-menu-right {
  float: right;
}

.form-inline .bootstrap-select.btn-group,
.form-horizontal .bootstrap-select.btn-group,
.form-group .bootstrap-select.btn-group {
  margin-bottom: 0;
}

.form-group-lg .bootstrap-select.btn-group.form-control,
.form-group-sm .bootstrap-select.btn-group.form-control {
  padding: 0;
}

.form-group-lg .bootstrap-select.btn-group.form-control .dropdown-toggle,
.form-group-sm .bootstrap-select.btn-group.form-control .dropdown-toggle {
  height: 100%;
  font-size: inherit;
  line-height: inherit;
  border-radius: inherit;
}

.form-inline .bootstrap-select.btn-group .form-control {
  width: 100%;
}

.bootstrap-select.btn-group.disabled,
.bootstrap-select.btn-group > .disabled {
  cursor: not-allowed;
}

.bootstrap-select.btn-group.disabled:focus,
.bootstrap-select.btn-group > .disabled:focus {
  outline: none !important;
}

.bootstrap-select.btn-group.bs-container {
  position: absolute;
  height: 0 !important;
  padding: 0 !important;
}

.bootstrap-select.btn-group.bs-container .dropdown-menu {
  z-index: 1060;
}

.bootstrap-select.btn-group .dropdown-toggle .filter-option {
  display: inline-block;
  overflow: hidden;
  width: 100%;
  text-align: left;
}

.bootstrap-select.btn-group .dropdown-toggle .caret {
  position: absolute;
  top: 50%;
  right: 12px;
  margin-top: -2px;
  vertical-align: middle;
}

.bootstrap-select.btn-group[class*="col-"] .dropdown-toggle {
  width: 100%;
}

.bootstrap-select.btn-group .dropdown-menu {
  min-width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.bootstrap-select.btn-group .dropdown-menu.inner {
  position: static;
  float: none;
  border: 0;
  padding: 0;
  margin: 0;
  border-radius: 0;
  box-shadow: none;
}

.bootstrap-select.btn-group .dropdown-menu li {
  position: relative;
}

.bootstrap-select.btn-group .dropdown-menu li.active small {
  color: #fff;
}

.bootstrap-select.btn-group .dropdown-menu li.disabled a {
  cursor: not-allowed;
}

.bootstrap-select.btn-group .dropdown-menu li a {
  cursor: pointer;
  user-select: none;
}

.bootstrap-select.btn-group .dropdown-menu li a.opt {
  position: relative;
  padding-left: 2.25em;
}

.bootstrap-select.btn-group .dropdown-menu li a span.check-mark {
  display: none;
}

.bootstrap-select.btn-group .dropdown-menu li a span.text {
  display: inline-block;
}

.bootstrap-select.btn-group .dropdown-menu li small {
  padding-left: 0.5em;
}

.bootstrap-select.btn-group .dropdown-menu .notify {
  position: absolute;
  bottom: 5px;
  width: 96%;
  margin: 0 2%;
  min-height: 26px;
  padding: 3px 5px;
  background: whitesmoke;
  border: 1px solid #e3e3e3;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
  pointer-events: none;
  opacity: 0.9;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.bootstrap-select.btn-group .no-results {
  padding: 3px;
  background: #f5f5f5;
  margin: 0 5px;
  white-space: nowrap;
}

.bootstrap-select.btn-group.fit-width .dropdown-toggle .filter-option {
  position: static;
}

.bootstrap-select.btn-group.fit-width .dropdown-toggle .caret {
  position: static;
  top: auto;
  margin-top: -1px;
}

.bootstrap-select.btn-group.show-tick .dropdown-menu li.selected a span.check-mark {
  position: absolute;
  display: inline-block;
  right: 15px;
  margin-top: 5px;
}

.bootstrap-select.btn-group.show-tick .dropdown-menu li a span.text {
  margin-right: 34px;
}

.bootstrap-select.show-menu-arrow.open > .dropdown-toggle {
  z-index: 1061;
}

.bootstrap-select.show-menu-arrow .dropdown-toggle:before {
  content: '';
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-bottom: 7px solid rgba(204, 204, 204, 0.2);
  position: absolute;
  bottom: -4px;
  left: 9px;
  display: none;
}

.bootstrap-select.show-menu-arrow .dropdown-toggle:after {
  content: '';
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 6px solid white;
  position: absolute;
  bottom: -4px;
  left: 10px;
  display: none;
}

.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle:before {
  bottom: auto;
  top: -3px;
  border-top: 7px solid rgba(204, 204, 204, 0.2);
  border-bottom: 0;
}

.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle:after {
  bottom: auto;
  top: -3px;
  border-top: 6px solid white;
  border-bottom: 0;
}

.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle:before {
  right: 12px;
  left: auto;
}

.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle:after {
  right: 13px;
  left: auto;
}

.bootstrap-select.show-menu-arrow.open > .dropdown-toggle:before, .bootstrap-select.show-menu-arrow.open > .dropdown-toggle:after {
  display: block;
}

.bs-searchbox,
.bs-actionsbox,
.bs-donebutton {
  padding: 4px 8px;
}

.bs-actionsbox {
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.bs-actionsbox .btn-group button {
  width: 50%;
}

.bs-donebutton {
  float: left;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.bs-donebutton .btn-group button {
  width: 100%;
}

.bs-searchbox + .bs-actionsbox {
  padding: 0 8px 4px;
}

.bs-searchbox .form-control {
  margin-bottom: 0;
  width: 100%;
  float: none;
}

/*!
 * Datepicker for Bootstrap v1.7.1 (https://github.com/uxsolutions/bootstrap-datepicker)
 *
 * Licensed under the Apache License v2.0 (http://www.apache.org/licenses/LICENSE-2.0)
 */
.datepicker {
  border-radius: 4px;
  direction: ltr;
}

.datepicker-inline {
  width: 220px;
}

.datepicker-rtl {
  direction: rtl;
}

.datepicker-rtl.dropdown-menu {
  left: auto;
}

.datepicker-rtl table tr td span {
  float: right;
}

.datepicker-dropdown {
  top: 0;
  left: 0;
  padding: 4px;
}

.datepicker-dropdown:before {
  content: '';
  display: inline-block;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-bottom: 7px solid rgba(0, 0, 0, 0.15);
  border-top: 0;
  border-bottom-color: rgba(0, 0, 0, 0.2);
  position: absolute;
}

.datepicker-dropdown:after {
  content: '';
  display: inline-block;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 6px solid #fff;
  border-top: 0;
  position: absolute;
}

.datepicker-dropdown.datepicker-orient-left:before {
  left: 6px;
}

.datepicker-dropdown.datepicker-orient-left:after {
  left: 7px;
}

.datepicker-dropdown.datepicker-orient-right:before {
  right: 6px;
}

.datepicker-dropdown.datepicker-orient-right:after {
  right: 7px;
}

.datepicker-dropdown.datepicker-orient-bottom:before {
  top: -7px;
}

.datepicker-dropdown.datepicker-orient-bottom:after {
  top: -6px;
}

.datepicker-dropdown.datepicker-orient-top:before {
  bottom: -7px;
  border-bottom: 0;
  border-top: 7px solid rgba(0, 0, 0, 0.15);
}

.datepicker-dropdown.datepicker-orient-top:after {
  bottom: -6px;
  border-bottom: 0;
  border-top: 6px solid #fff;
}

.datepicker table {
  margin: 0;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.datepicker table tr td,
.datepicker table tr th {
  text-align: center;
  width: 30px;
  height: 30px;
  border-radius: 4px;
  border: none;
}

.table-striped .datepicker table tr td,
.table-striped .datepicker table tr th {
  background-color: transparent;
}

.datepicker table tr td.old,
.datepicker table tr td.new {
  color: #777777;
}

.datepicker table tr td.day:hover,
.datepicker table tr td.focused {
  background: #eeeeee;
  cursor: pointer;
}

.datepicker table tr td.disabled,
.datepicker table tr td.disabled:hover {
  background: none;
  color: #777777;
  cursor: default;
}

.datepicker table tr td.highlighted {
  color: #000;
  background-color: #d9edf7;
  border-color: #85c5e5;
  border-radius: 0;
}

.datepicker table tr td.highlighted:focus,
.datepicker table tr td.highlighted.focus {
  color: #000;
  background-color: #afd9ee;
  border-color: #298fc2;
}

.datepicker table tr td.highlighted:hover {
  color: #000;
  background-color: #afd9ee;
  border-color: #52addb;
}

.datepicker table tr td.highlighted:active,
.datepicker table tr td.highlighted.active {
  color: #000;
  background-color: #afd9ee;
  border-color: #52addb;
}

.datepicker table tr td.highlighted:active:hover,
.datepicker table tr td.highlighted.active:hover,
.datepicker table tr td.highlighted:active:focus,
.datepicker table tr td.highlighted.active:focus,
.datepicker table tr td.highlighted:active.focus,
.datepicker table tr td.highlighted.active.focus {
  color: #000;
  background-color: #91cbe8;
  border-color: #298fc2;
}

.datepicker table tr td.highlighted.disabled:hover,
.datepicker table tr td.highlighted[disabled]:hover,
fieldset[disabled] .datepicker table tr td.highlighted:hover,
.datepicker table tr td.highlighted.disabled:focus,
.datepicker table tr td.highlighted[disabled]:focus,
fieldset[disabled] .datepicker table tr td.highlighted:focus,
.datepicker table tr td.highlighted.disabled.focus,
.datepicker table tr td.highlighted[disabled].focus,
fieldset[disabled] .datepicker table tr td.highlighted.focus {
  background-color: #d9edf7;
  border-color: #85c5e5;
}

.datepicker table tr td.highlighted.focused {
  background: #afd9ee;
}

.datepicker table tr td.highlighted.disabled,
.datepicker table tr td.highlighted.disabled:active {
  background: #d9edf7;
  color: #777777;
}

.datepicker table tr td.today {
  color: #000;
  background-color: #ffdb99;
  border-color: #ffb733;
}

.datepicker table tr td.today:focus,
.datepicker table tr td.today.focus {
  color: #000;
  background-color: #ffc966;
  border-color: #b37400;
}

.datepicker table tr td.today:hover {
  color: #000;
  background-color: #ffc966;
  border-color: #f59e00;
}

.datepicker table tr td.today:active,
.datepicker table tr td.today.active {
  color: #000;
  background-color: #ffc966;
  border-color: #f59e00;
}

.datepicker table tr td.today:active:hover,
.datepicker table tr td.today.active:hover,
.datepicker table tr td.today:active:focus,
.datepicker table tr td.today.active:focus,
.datepicker table tr td.today:active.focus,
.datepicker table tr td.today.active.focus {
  color: #000;
  background-color: #ffbc42;
  border-color: #b37400;
}

.datepicker table tr td.today.disabled:hover,
.datepicker table tr td.today[disabled]:hover,
fieldset[disabled] .datepicker table tr td.today:hover,
.datepicker table tr td.today.disabled:focus,
.datepicker table tr td.today[disabled]:focus,
fieldset[disabled] .datepicker table tr td.today:focus,
.datepicker table tr td.today.disabled.focus,
.datepicker table tr td.today[disabled].focus,
fieldset[disabled] .datepicker table tr td.today.focus {
  background-color: #ffdb99;
  border-color: #ffb733;
}

.datepicker table tr td.today.focused {
  background: #ffc966;
}

.datepicker table tr td.today.disabled,
.datepicker table tr td.today.disabled:active {
  background: #ffdb99;
  color: #777777;
}

.datepicker table tr td.range {
  color: #000;
  background-color: #eeeeee;
  border-color: #bbbbbb;
  border-radius: 0;
}

.datepicker table tr td.range:focus,
.datepicker table tr td.range.focus {
  color: #000;
  background-color: #d5d5d5;
  border-color: #7c7c7c;
}

.datepicker table tr td.range:hover {
  color: #000;
  background-color: #d5d5d5;
  border-color: #9d9d9d;
}

.datepicker table tr td.range:active,
.datepicker table tr td.range.active {
  color: #000;
  background-color: #d5d5d5;
  border-color: #9d9d9d;
}

.datepicker table tr td.range:active:hover,
.datepicker table tr td.range.active:hover,
.datepicker table tr td.range:active:focus,
.datepicker table tr td.range.active:focus,
.datepicker table tr td.range:active.focus,
.datepicker table tr td.range.active.focus {
  color: #000;
  background-color: #c3c3c3;
  border-color: #7c7c7c;
}

.datepicker table tr td.range.disabled:hover,
.datepicker table tr td.range[disabled]:hover,
fieldset[disabled] .datepicker table tr td.range:hover,
.datepicker table tr td.range.disabled:focus,
.datepicker table tr td.range[disabled]:focus,
fieldset[disabled] .datepicker table tr td.range:focus,
.datepicker table tr td.range.disabled.focus,
.datepicker table tr td.range[disabled].focus,
fieldset[disabled] .datepicker table tr td.range.focus {
  background-color: #eeeeee;
  border-color: #bbbbbb;
}

.datepicker table tr td.range.focused {
  background: #d5d5d5;
}

.datepicker table tr td.range.disabled,
.datepicker table tr td.range.disabled:active {
  background: #eeeeee;
  color: #777777;
}

.datepicker table tr td.range.highlighted {
  color: #000;
  background-color: #e4eef3;
  border-color: #9dc1d3;
}

.datepicker table tr td.range.highlighted:focus,
.datepicker table tr td.range.highlighted.focus {
  color: #000;
  background-color: #c1d7e3;
  border-color: #4b88a6;
}

.datepicker table tr td.range.highlighted:hover {
  color: #000;
  background-color: #c1d7e3;
  border-color: #73a6c0;
}

.datepicker table tr td.range.highlighted:active,
.datepicker table tr td.range.highlighted.active {
  color: #000;
  background-color: #c1d7e3;
  border-color: #73a6c0;
}

.datepicker table tr td.range.highlighted:active:hover,
.datepicker table tr td.range.highlighted.active:hover,
.datepicker table tr td.range.highlighted:active:focus,
.datepicker table tr td.range.highlighted.active:focus,
.datepicker table tr td.range.highlighted:active.focus,
.datepicker table tr td.range.highlighted.active.focus {
  color: #000;
  background-color: #a8c8d8;
  border-color: #4b88a6;
}

.datepicker table tr td.range.highlighted.disabled:hover,
.datepicker table tr td.range.highlighted[disabled]:hover,
fieldset[disabled] .datepicker table tr td.range.highlighted:hover,
.datepicker table tr td.range.highlighted.disabled:focus,
.datepicker table tr td.range.highlighted[disabled]:focus,
fieldset[disabled] .datepicker table tr td.range.highlighted:focus,
.datepicker table tr td.range.highlighted.disabled.focus,
.datepicker table tr td.range.highlighted[disabled].focus,
fieldset[disabled] .datepicker table tr td.range.highlighted.focus {
  background-color: #e4eef3;
  border-color: #9dc1d3;
}

.datepicker table tr td.range.highlighted.focused {
  background: #c1d7e3;
}

.datepicker table tr td.range.highlighted.disabled,
.datepicker table tr td.range.highlighted.disabled:active {
  background: #e4eef3;
  color: #777777;
}

.datepicker table tr td.range.today {
  color: #000;
  background-color: #f7ca77;
  border-color: #f1a417;
}

.datepicker table tr td.range.today:focus,
.datepicker table tr td.range.today.focus {
  color: #000;
  background-color: #f4b747;
  border-color: #815608;
}

.datepicker table tr td.range.today:hover {
  color: #000;
  background-color: #f4b747;
  border-color: #bf800c;
}

.datepicker table tr td.range.today:active,
.datepicker table tr td.range.today.active {
  color: #000;
  background-color: #f4b747;
  border-color: #bf800c;
}

.datepicker table tr td.range.today:active:hover,
.datepicker table tr td.range.today.active:hover,
.datepicker table tr td.range.today:active:focus,
.datepicker table tr td.range.today.active:focus,
.datepicker table tr td.range.today:active.focus,
.datepicker table tr td.range.today.active.focus {
  color: #000;
  background-color: #f2aa25;
  border-color: #815608;
}

.datepicker table tr td.range.today.disabled:hover,
.datepicker table tr td.range.today[disabled]:hover,
fieldset[disabled] .datepicker table tr td.range.today:hover,
.datepicker table tr td.range.today.disabled:focus,
.datepicker table tr td.range.today[disabled]:focus,
fieldset[disabled] .datepicker table tr td.range.today:focus,
.datepicker table tr td.range.today.disabled.focus,
.datepicker table tr td.range.today[disabled].focus,
fieldset[disabled] .datepicker table tr td.range.today.focus {
  background-color: #f7ca77;
  border-color: #f1a417;
}

.datepicker table tr td.range.today.disabled,
.datepicker table tr td.range.today.disabled:active {
  background: #f7ca77;
  color: #777777;
}

.datepicker table tr td.selected,
.datepicker table tr td.selected.highlighted {
  color: #fff;
  background-color: #777777;
  border-color: #555555;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}

.datepicker table tr td.selected:focus,
.datepicker table tr td.selected.highlighted:focus,
.datepicker table tr td.selected.focus,
.datepicker table tr td.selected.highlighted.focus {
  color: #fff;
  background-color: #5e5e5e;
  border-color: #161616;
}

.datepicker table tr td.selected:hover,
.datepicker table tr td.selected.highlighted:hover {
  color: #fff;
  background-color: #5e5e5e;
  border-color: #373737;
}

.datepicker table tr td.selected:active,
.datepicker table tr td.selected.highlighted:active,
.datepicker table tr td.selected.active,
.datepicker table tr td.selected.highlighted.active {
  color: #fff;
  background-color: #5e5e5e;
  border-color: #373737;
}

.datepicker table tr td.selected:active:hover,
.datepicker table tr td.selected.highlighted:active:hover,
.datepicker table tr td.selected.active:hover,
.datepicker table tr td.selected.highlighted.active:hover,
.datepicker table tr td.selected:active:focus,
.datepicker table tr td.selected.highlighted:active:focus,
.datepicker table tr td.selected.active:focus,
.datepicker table tr td.selected.highlighted.active:focus,
.datepicker table tr td.selected:active.focus,
.datepicker table tr td.selected.highlighted:active.focus,
.datepicker table tr td.selected.active.focus,
.datepicker table tr td.selected.highlighted.active.focus {
  color: #fff;
  background-color: #4c4c4c;
  border-color: #161616;
}

.datepicker table tr td.selected.disabled:hover,
.datepicker table tr td.selected.highlighted.disabled:hover,
.datepicker table tr td.selected[disabled]:hover,
.datepicker table tr td.selected.highlighted[disabled]:hover,
fieldset[disabled] .datepicker table tr td.selected:hover,
fieldset[disabled] .datepicker table tr td.selected.highlighted:hover,
.datepicker table tr td.selected.disabled:focus,
.datepicker table tr td.selected.highlighted.disabled:focus,
.datepicker table tr td.selected[disabled]:focus,
.datepicker table tr td.selected.highlighted[disabled]:focus,
fieldset[disabled] .datepicker table tr td.selected:focus,
fieldset[disabled] .datepicker table tr td.selected.highlighted:focus,
.datepicker table tr td.selected.disabled.focus,
.datepicker table tr td.selected.highlighted.disabled.focus,
.datepicker table tr td.selected[disabled].focus,
.datepicker table tr td.selected.highlighted[disabled].focus,
fieldset[disabled] .datepicker table tr td.selected.focus,
fieldset[disabled] .datepicker table tr td.selected.highlighted.focus {
  background-color: #777777;
  border-color: #555555;
}

.datepicker table tr td.active,
.datepicker table tr td.active.highlighted {
  color: #fff;
  background-color: #337ab7;
  border-color: #2e6da4;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}

.datepicker table tr td.active:focus,
.datepicker table tr td.active.highlighted:focus,
.datepicker table tr td.active.focus,
.datepicker table tr td.active.highlighted.focus {
  color: #fff;
  background-color: #286090;
  border-color: #122b40;
}

.datepicker table tr td.active:hover,
.datepicker table tr td.active.highlighted:hover {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}

.datepicker table tr td.active:active,
.datepicker table tr td.active.highlighted:active,
.datepicker table tr td.active.active,
.datepicker table tr td.active.highlighted.active {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}

.datepicker table tr td.active:active:hover,
.datepicker table tr td.active.highlighted:active:hover,
.datepicker table tr td.active.active:hover,
.datepicker table tr td.active.highlighted.active:hover,
.datepicker table tr td.active:active:focus,
.datepicker table tr td.active.highlighted:active:focus,
.datepicker table tr td.active.active:focus,
.datepicker table tr td.active.highlighted.active:focus,
.datepicker table tr td.active:active.focus,
.datepicker table tr td.active.highlighted:active.focus,
.datepicker table tr td.active.active.focus,
.datepicker table tr td.active.highlighted.active.focus {
  color: #fff;
  background-color: #204d74;
  border-color: #122b40;
}

.datepicker table tr td.active.disabled:hover,
.datepicker table tr td.active.highlighted.disabled:hover,
.datepicker table tr td.active[disabled]:hover,
.datepicker table tr td.active.highlighted[disabled]:hover,
fieldset[disabled] .datepicker table tr td.active:hover,
fieldset[disabled] .datepicker table tr td.active.highlighted:hover,
.datepicker table tr td.active.disabled:focus,
.datepicker table tr td.active.highlighted.disabled:focus,
.datepicker table tr td.active[disabled]:focus,
.datepicker table tr td.active.highlighted[disabled]:focus,
fieldset[disabled] .datepicker table tr td.active:focus,
fieldset[disabled] .datepicker table tr td.active.highlighted:focus,
.datepicker table tr td.active.disabled.focus,
.datepicker table tr td.active.highlighted.disabled.focus,
.datepicker table tr td.active[disabled].focus,
.datepicker table tr td.active.highlighted[disabled].focus,
fieldset[disabled] .datepicker table tr td.active.focus,
fieldset[disabled] .datepicker table tr td.active.highlighted.focus {
  background-color: #337ab7;
  border-color: #2e6da4;
}

.datepicker table tr td span {
  display: block;
  width: 23%;
  height: 54px;
  line-height: 54px;
  float: left;
  margin: 1%;
  cursor: pointer;
  border-radius: 4px;
}

.datepicker table tr td span:hover,
.datepicker table tr td span.focused {
  background: #eeeeee;
}

.datepicker table tr td span.disabled,
.datepicker table tr td span.disabled:hover {
  background: none;
  color: #777777;
  cursor: default;
}

.datepicker table tr td span.active,
.datepicker table tr td span.active:hover,
.datepicker table tr td span.active.disabled,
.datepicker table tr td span.active.disabled:hover {
  color: #fff;
  background-color: #337ab7;
  border-color: #2e6da4;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}

.datepicker table tr td span.active:focus,
.datepicker table tr td span.active:hover:focus,
.datepicker table tr td span.active.disabled:focus,
.datepicker table tr td span.active.disabled:hover:focus,
.datepicker table tr td span.active.focus,
.datepicker table tr td span.active:hover.focus,
.datepicker table tr td span.active.disabled.focus,
.datepicker table tr td span.active.disabled:hover.focus {
  color: #fff;
  background-color: #286090;
  border-color: #122b40;
}

.datepicker table tr td span.active:hover,
.datepicker table tr td span.active:hover:hover,
.datepicker table tr td span.active.disabled:hover,
.datepicker table tr td span.active.disabled:hover:hover {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}

.datepicker table tr td span.active:active,
.datepicker table tr td span.active:hover:active,
.datepicker table tr td span.active.disabled:active,
.datepicker table tr td span.active.disabled:hover:active,
.datepicker table tr td span.active.active,
.datepicker table tr td span.active:hover.active,
.datepicker table tr td span.active.disabled.active,
.datepicker table tr td span.active.disabled:hover.active {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}

.datepicker table tr td span.active:active:hover,
.datepicker table tr td span.active:hover:active:hover,
.datepicker table tr td span.active.disabled:active:hover,
.datepicker table tr td span.active.disabled:hover:active:hover,
.datepicker table tr td span.active.active:hover,
.datepicker table tr td span.active:hover.active:hover,
.datepicker table tr td span.active.disabled.active:hover,
.datepicker table tr td span.active.disabled:hover.active:hover,
.datepicker table tr td span.active:active:focus,
.datepicker table tr td span.active:hover:active:focus,
.datepicker table tr td span.active.disabled:active:focus,
.datepicker table tr td span.active.disabled:hover:active:focus,
.datepicker table tr td span.active.active:focus,
.datepicker table tr td span.active:hover.active:focus,
.datepicker table tr td span.active.disabled.active:focus,
.datepicker table tr td span.active.disabled:hover.active:focus,
.datepicker table tr td span.active:active.focus,
.datepicker table tr td span.active:hover:active.focus,
.datepicker table tr td span.active.disabled:active.focus,
.datepicker table tr td span.active.disabled:hover:active.focus,
.datepicker table tr td span.active.active.focus,
.datepicker table tr td span.active:hover.active.focus,
.datepicker table tr td span.active.disabled.active.focus,
.datepicker table tr td span.active.disabled:hover.active.focus {
  color: #fff;
  background-color: #204d74;
  border-color: #122b40;
}

.datepicker table tr td span.active.disabled:hover,
.datepicker table tr td span.active:hover.disabled:hover,
.datepicker table tr td span.active.disabled.disabled:hover,
.datepicker table tr td span.active.disabled:hover.disabled:hover,
.datepicker table tr td span.active[disabled]:hover,
.datepicker table tr td span.active:hover[disabled]:hover,
.datepicker table tr td span.active.disabled[disabled]:hover,
.datepicker table tr td span.active.disabled:hover[disabled]:hover,
fieldset[disabled] .datepicker table tr td span.active:hover,
fieldset[disabled] .datepicker table tr td span.active:hover:hover,
fieldset[disabled] .datepicker table tr td span.active.disabled:hover,
fieldset[disabled] .datepicker table tr td span.active.disabled:hover:hover,
.datepicker table tr td span.active.disabled:focus,
.datepicker table tr td span.active:hover.disabled:focus,
.datepicker table tr td span.active.disabled.disabled:focus,
.datepicker table tr td span.active.disabled:hover.disabled:focus,
.datepicker table tr td span.active[disabled]:focus,
.datepicker table tr td span.active:hover[disabled]:focus,
.datepicker table tr td span.active.disabled[disabled]:focus,
.datepicker table tr td span.active.disabled:hover[disabled]:focus,
fieldset[disabled] .datepicker table tr td span.active:focus,
fieldset[disabled] .datepicker table tr td span.active:hover:focus,
fieldset[disabled] .datepicker table tr td span.active.disabled:focus,
fieldset[disabled] .datepicker table tr td span.active.disabled:hover:focus,
.datepicker table tr td span.active.disabled.focus,
.datepicker table tr td span.active:hover.disabled.focus,
.datepicker table tr td span.active.disabled.disabled.focus,
.datepicker table tr td span.active.disabled:hover.disabled.focus,
.datepicker table tr td span.active[disabled].focus,
.datepicker table tr td span.active:hover[disabled].focus,
.datepicker table tr td span.active.disabled[disabled].focus,
.datepicker table tr td span.active.disabled:hover[disabled].focus,
fieldset[disabled] .datepicker table tr td span.active.focus,
fieldset[disabled] .datepicker table tr td span.active:hover.focus,
fieldset[disabled] .datepicker table tr td span.active.disabled.focus,
fieldset[disabled] .datepicker table tr td span.active.disabled:hover.focus {
  background-color: #337ab7;
  border-color: #2e6da4;
}

.datepicker table tr td span.old,
.datepicker table tr td span.new {
  color: #777777;
}

.datepicker .datepicker-switch {
  width: 145px;
}

.datepicker .datepicker-switch,
.datepicker .prev,
.datepicker .next,
.datepicker tfoot tr th {
  cursor: pointer;
}

.datepicker .datepicker-switch:hover,
.datepicker .prev:hover,
.datepicker .next:hover,
.datepicker tfoot tr th:hover {
  background: #eeeeee;
}

.datepicker .prev.disabled,
.datepicker .next.disabled {
  visibility: hidden;
}

.datepicker .cw {
  font-size: 10px;
  width: 12px;
  padding: 0 2px 0 5px;
  vertical-align: middle;
}

.input-group.date .input-group-addon {
  cursor: pointer;
}

.input-daterange {
  width: 100%;
}

.input-daterange input {
  text-align: center;
}

.input-daterange input:first-child {
  border-radius: 3px 0 0 3px;
}

.input-daterange input:last-child {
  border-radius: 0 3px 3px 0;
}

.input-daterange .input-group-addon {
  width: auto;
  min-width: 16px;
  padding: 4px 5px;
  line-height: 1.42857143;
  text-shadow: 0 1px 0 #fff;
  border-width: 1px 0;
  margin-left: -5px;
  margin-right: -5px;
}

/*# sourceMappingURL=bootstrap-datepicker3.css.map */
/* ==========================================================================
   & surchage bootstrap modal.css
   ========================================================================== */
.modal .close {
  position: absolute;
  position: relative;
  line-height: 1;
  width: 2rem;
  height: 2rem;
  font-size: 2rem;
  padding: 0;
  position: absolute;
  top: 1.3rem;
  right: 1rem;
}

.modal .close:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.modal .close:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.modal .close span {
  display: none;
}

@media (min-width: 768px) {
  .modal-alpha .modal-dialog {
    width: 40rem;
  }
}

.modal-alpha .modal-content {
  border-radius: 0;
  border: 0.88889rem solid #feac94;
}

.modal-alpha .modal-title {
  color: #feac94;
  text-align: center;
  padding-left: 2rem;
  padding-right: 2rem;
  text-transform: uppercase;
  font-size: 2rem;
  font-weight: 700;
}

.modal-alpha .modal-header {
  padding: 3rem 1rem 1rem 1rem;
  border: none;
}

.modal-alpha .modal-body {
  text-align: center;
  padding: 1rem 1rem 3rem 1rem;
}

.modal-alpha .modal-commande {
  background-color: #fff;
  border-radius: 0;
  border: 0.88889rem solid #0082ad;
  padding: 2rem 2rem 0;
  text-align: left;
}

.modal-commande .modal-title {
  color: #000000;
  text-align: left;
}

.modal-commande .modal-body {
  text-align: left !important;
}

.modal-commande .button {
  margin-top: 2rem;
}

@media (min-width: 768px) {
  .modal-se-connecter .modal-dialog {
    width: 47rem;
  }
}

@media (min-width: 768px) {
  .modal-password-oublie .modal-dialog {
    width: 47rem;
  }
}

/* ==========================================================================
   & surchage bootstrap tooltip
   ========================================================================== */
.tooltip {
  font-family: "Apercu", Arial, sans-serif;
  font-size: 1.5rem;
}

.tooltip.in {
  opacity: 1;
  filter: alpha(opacity=100);
}

.tooltip.top {
  margin-top: -3px;
  padding: 10px 0;
}

.tooltip.right {
  margin-left: 3px;
  padding: 0 10px;
}

.tooltip.bottom {
  margin-top: 3px;
  padding: 10px 0;
}

.tooltip.left {
  margin-left: -3px;
  padding: 0 10px;
}

.tooltip-inner {
  padding: 1rem 2rem;
  background-color: #feac94;
  border-radius: 0;
  max-width: 28rem;
}

.tooltip.top .tooltip-arrow {
  bottom: 0;
  left: 50%;
  margin-left: -10px;
  border-width: 10px 10px 0;
  border-top-color: #feac94;
}

.tooltip.top-left .tooltip-arrow {
  bottom: 0;
  right: 10px;
  margin-bottom: -10px;
  border-width: 10px 10px 0;
  border-top-color: #feac94;
}

.tooltip.top-right .tooltip-arrow {
  bottom: 0;
  left: 10px;
  margin-bottom: -10px;
  border-width: 10px 10px 0;
  border-top-color: #feac94;
}

.tooltip.right .tooltip-arrow {
  top: 50%;
  left: 0;
  margin-top: -10px;
  border-width: 10px 10px 10px 0;
  border-right-color: #feac94;
}

.tooltip.left .tooltip-arrow {
  top: 50%;
  right: 0;
  margin-top: -10px;
  border-width: 10px 0 10px 10px;
  border-left-color: #feac94;
}

.tooltip.bottom .tooltip-arrow {
  top: 0;
  left: 50%;
  margin-left: -10px;
  border-width: 0 10px 10px;
  border-bottom-color: #feac94;
}

.tooltip.bottom-left .tooltip-arrow {
  top: 0;
  right: 10px;
  margin-top: -10px;
  border-width: 0 10px 10px;
  border-bottom-color: #feac94;
}

.tooltip.bottom-right .tooltip-arrow {
  top: 0;
  left: 10px;
  margin-top: -10px;
  border-width: 0 10px 10px;
  border-bottom-color: #feac94;
}

/* ==========================================================================
   & surchage bootstrap-select.css
   ========================================================================== */
.bootstrap-select.btn-group .dropdown-toggle {
  color: #000;
  background-color: #FFF;
  border-color: #e2e3e3;
  box-shadow: none;
  font-size: inherit;
  padding: 10px 35px 10px 16px;
}

.bootstrap-select.btn-group .dropdown-toggle:focus, .bootstrap-select.btn-group .dropdown-toggle.focus {
  color: #000;
  background-color: #FFF;
  border-color: #e2e3e3;
}

.bootstrap-select.btn-group .dropdown-toggle:hover {
  color: #000;
  background-color: #FFF;
  border-color: #e2e3e3;
}

.bootstrap-select.btn-group .dropdown-toggle:active, .bootstrap-select.btn-group .dropdown-toggle.active,
.open > .bootstrap-select.btn-group .dropdown-toggle.dropdown-toggle {
  color: #000;
  background-color: #FFF;
  border-color: #e2e3e3;
}

.bootstrap-select.btn-group .dropdown-toggle:active:hover, .bootstrap-select.btn-group .dropdown-toggle:active:focus, .bootstrap-select.btn-group .dropdown-toggle:active.focus, .bootstrap-select.btn-group .dropdown-toggle.active:hover, .bootstrap-select.btn-group .dropdown-toggle.active:focus, .bootstrap-select.btn-group .dropdown-toggle.active.focus,
.open > .bootstrap-select.btn-group .dropdown-toggle.dropdown-toggle:hover,
.open > .bootstrap-select.btn-group .dropdown-toggle.dropdown-toggle:focus,
.open > .bootstrap-select.btn-group .dropdown-toggle.dropdown-toggle.focus {
  color: #000;
  background-color: #FFF;
  border-color: #e2e3e3;
}

.bootstrap-select.btn-group .dropdown-toggle:active, .bootstrap-select.btn-group .dropdown-toggle.active,
.open > .bootstrap-select.btn-group .dropdown-toggle.dropdown-toggle {
  background-image: none;
}

.bootstrap-select.btn-group .dropdown-toggle.disabled:hover, .bootstrap-select.btn-group .dropdown-toggle.disabled:focus, .bootstrap-select.btn-group .dropdown-toggle.disabled.focus, .bootstrap-select.btn-group .dropdown-toggle[disabled]:hover, .bootstrap-select.btn-group .dropdown-toggle[disabled]:focus, .bootstrap-select.btn-group .dropdown-toggle[disabled].focus,
fieldset[disabled] .bootstrap-select.btn-group .dropdown-toggle:hover,
fieldset[disabled] .bootstrap-select.btn-group .dropdown-toggle:focus,
fieldset[disabled] .bootstrap-select.btn-group .dropdown-toggle.focus {
  background-color: #FFF;
  border-color: #e2e3e3;
}

.bootstrap-select.btn-group .dropdown-toggle .badge {
  color: #FFF;
  background-color: #000;
}

.bootstrap-select.btn-group .dropdown-toggle:focus {
  outline: none !important;
}

.bootstrap-select.btn-group .dropdown-toggle .caret {
  color: #0082ad;
  right: 0;
  position: relative;
  background-image: none;
  border: none;
}

.bootstrap-select.btn-group .dropdown-toggle .caret:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.bootstrap-select.btn-group .dropdown-toggle .caret:before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.error .bootstrap-select.btn-group .dropdown-toggle {
  border-color: #dc3545;
}

.success .bootstrap-select.btn-group .dropdown-toggle {
  border-color: #28a745;
}

.bootstrap-select.btn-group .dropdown-menu {
  box-shadow: 0 0 15px 1px rgba(0, 0, 0, 0.07);
  padding: 0;
  font-size: inherit;
  border-color: #e2e3e3;
}

.bootstrap-select.btn-group .dropdown-menu > li > a {
  padding: 8px 16px;
}

@media (max-width: 991px) {
  .bootstrap-select.btn-group .dropdown-menu > li > a {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
}

.bootstrap-select.btn-group.open .dropdown-toggle {
  border-color: #0082ad;
}

@media (max-width: 767px) {
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) {
    width: 100%;
    min-width: 15rem;
  }
}

@media (min-width: 768px) {
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) {
    width: auto;
  }
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle {
    color: #000;
    background-color: transparent;
    border-color: transparent;
    border: none;
    border-radius: 0;
    padding-left: 0;
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 23px;
  }
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle:focus, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.focus {
    color: #000;
    background-color: transparent;
    border-color: transparent;
  }
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle:hover {
    color: #000;
    background-color: transparent;
    border-color: transparent;
  }
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle:active, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.active,
  .open > .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.dropdown-toggle {
    color: #000;
    background-color: transparent;
    border-color: transparent;
  }
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle:active:hover, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle:active:focus, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle:active.focus, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.active:hover, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.active:focus, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.active.focus,
  .open > .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.dropdown-toggle:hover,
  .open > .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.dropdown-toggle:focus,
  .open > .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.dropdown-toggle.focus {
    color: #000;
    background-color: transparent;
    border-color: transparent;
  }
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle:active, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.active,
  .open > .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.dropdown-toggle {
    background-image: none;
  }
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.disabled:hover, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.disabled:focus, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.disabled.focus, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle[disabled]:hover, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle[disabled]:focus, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle[disabled].focus,
  fieldset[disabled] .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle:hover,
  fieldset[disabled] .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle:focus,
  fieldset[disabled] .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.focus {
    background-color: transparent;
    border-color: transparent;
  }
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle .badge {
    color: transparent;
    background-color: #000;
  }
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle .filter-option {
    font-weight: 500;
  }
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-menu {
    border-radius: 0;
    margin-left: -0.5rem;
    -webkit-overflow-scrolling: touch;
  }
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-menu > li > a {
    padding-left: 1.3rem;
  }
}

/* ==========================================================================
   & surchage bootstrap datepicker
   ========================================================================== */
.datepicker {
  border-radius: 0;
}

.datepicker table tr td,
.datepicker table tr th {
  border-radius: 0;
  width: 3.5rem;
  height: 3rem;
  text-align: center;
}

.datepicker table tr th.dow {
  color: #0082ad;
  font-weight: 600;
}

.datepicker table tr td.active:active, .datepicker table tr td.active.highlighted:active, .datepicker table tr td.active.active, .datepicker table tr td.active.highlighted.active, .datepicker table tr td.active:active:hover, .datepicker table tr td.active.highlighted:active:hover, .datepicker table tr td.active.active:hover, .datepicker table tr td.active.highlighted.active:hover, .datepicker table tr td.active:active:focus, .datepicker table tr td.active.highlighted:active:focus, .datepicker table tr td.active.active:focus, .datepicker table tr td.active.highlighted.active:focus, .datepicker table tr td.active:active.focus, .datepicker table tr td.active.highlighted:active.focus, .datepicker table tr td.active.active.focus, .datepicker table tr td.active.highlighted.active.focus {
  background-color: #0082ad;
  color: #FFF;
  text-shadow: none;
}

.datepicker table tr td.selected, .datepicker table tr td.selected.highlighted, .datepicker table tr td.range {
  background-color: #f6f6f6;
  border-color: #f6f6f6;
}

.datepicker table tr td.day:hover,
.datepicker table tr td.focused {
  cursor: pointer;
}

.datepicker table tr td.old,
.datepicker table tr td.new {
  color: rgba(0, 0, 0, 0.3);
}

.datepicker table tr td.today {
  font-weight: bold;
  background-color: #FFF;
}

.datepicker table tr td.disabled,
.datepicker table tr td.disabled:hover {
  color: rgba(0, 0, 0, 0.2);
  background-color: transparent;
  pointer-events: none;
}

.datepicker table tr td span {
  border-radius: 0;
  height: 4.4rem;
  line-height: 4.4rem;
}

.datepicker table tr td span.active, .datepicker table tr td span.active:hover, .datepicker table tr td span.active.disabled, .datepicker table tr td span.active.disabled:hover, .datepicker table tr td span.active:active, .datepicker table tr td span.active:hover:active, .datepicker table tr td span.active.disabled:active, .datepicker table tr td span.active.disabled:hover:active, .datepicker table tr td span.active.active, .datepicker table tr td span.active:hover.active, .datepicker table tr td span.active:hover.active:hover, .datepicker table tr td span.active.active:hover, .datepicker table tr td span.active.disabled.active, .datepicker table tr td span.active.disabled:hover.active {
  text-shadow: none;
  border: none;
  background-color: #0082ad;
}

.datepicker table tr td span:hover,
.datepicker table tr td span.focused {
  cursor: pointer;
}

.datepicker table tr td span.disabled,
.datepicker table tr td span.disabled:hover {
  color: rgba(0, 0, 0, 0.2);
  background-color: transparent;
  pointer-events: none;
}

.datepicker .datepicker-days {
  display: block;
}

.datepicker.datepicker-inline {
  display: inline-block;
}

.datepicker-dropdown {
  padding-left: 0;
  padding-right: 0;
}

#CybotCookiebotDialogBody {
  max-width: 100%!important;
  padding: 25px 40px!important; 
}

#CybotCookiebotDialogPoweredbyLink {
  display: none!important;
}

#CybotCookiebotDialogBodyButtonDecline {
  display: inline-block!important;
}

#CybotCookiebotDialogBodyContent {
  padding: 0!important;
}

@media screen and (max-width:720px) {
  #CybotCookiebotDialogBodyButtons {
	margin: 0 0 6px 0!important;
	padding-left: 0!important;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL19ib290c3RyYXAuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9fdmFyaWFibGVzLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvX21peGlucy5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9faGlkZS10ZXh0LnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19vcGFjaXR5LnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19pbWFnZS5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fbGFiZWxzLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19yZXNldC1maWx0ZXIuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc2l6ZS5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fcmVzcG9uc2l2ZS12aXNpYmlsaXR5LnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19zaXplLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL190YWItZm9jdXMuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX3RleHQtZW1waGFzaXMuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX3RleHQtb3ZlcmZsb3cuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX3ZlbmRvci1wcmVmaXhlcy5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fYWxlcnRzLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19idXR0b25zLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19wYW5lbHMuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX2xpc3QtZ3JvdXAuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19mb3Jtcy5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fcHJvZ3Jlc3MtYmFyLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL190YWJsZS1yb3cuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX2JhY2tncm91bmQtdmFyaWFudC5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fY2VudGVyLWJsb2NrLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19uYXYtdmVydGljYWwtYWxpZ24uc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX2dyaWQtZnJhbWV3b3JrLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19ncmlkLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvX25vcm1hbGl6ZS5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL19ncmlkLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvX2Zvcm1zLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvX2J1dHRvbnMuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9fZHJvcGRvd25zLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvX2J1dHRvbi1ncm91cHMuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9faW5wdXQtZ3JvdXBzLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvX21vZGFscy5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL190b29sdGlwLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvX3V0aWxpdGllcy5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL19yZXNwb25zaXZlLXV0aWxpdGllcy5zY3NzIiwiYWJzdHJhY3RzL192YXJpYWJsZXMuc2NzcyIsImFic3RyYWN0cy9fZnVuY3Rpb25zLnNjc3MiLCJhYnN0cmFjdHMvbWl4aW5zL19taXhpbnMuc2NzcyIsImFic3RyYWN0cy9taXhpbnMvX2J1dHRvbnMuc2NzcyIsImJhc2UvX3Jlc2V0LnNjc3MiLCJiYXNlL19iYXNlLnNjc3MiLCJiYXNlL190eXBvZ3JhcGh5LnNjc3MiLCJjb21wb25lbnRzL19pY29uZm9udC5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwiY29tcG9uZW50cy9fZm9ybXMuc2NzcyIsImNvbXBvbmVudHMvX2NvbW1vbi5zY3NzIiwiY29tcG9uZW50cy9fYm94LnNjc3MiLCJjb21wb25lbnRzL19jb25maWV6LW5vdXMuc2NzcyIsImNvbXBvbmVudHMvX25ld3NsZXR0ZXIuc2NzcyIsImNvbXBvbmVudHMvX3N1ci1jYXJ0ZS5zY3NzIiwiY29tcG9uZW50cy9faW50cm8uc2NzcyIsImNvbXBvbmVudHMvX21pbmktaW50cm8uc2NzcyIsImNvbXBvbmVudHMvX2Nhcm5ldC12b3lhZ2Uuc2NzcyIsImNvbXBvbmVudHMvX21vbmRlLXNlcnZpY2Uuc2NzcyIsImNvbXBvbmVudHMvX21vbmRlLWVudmllcy5zY3NzIiwiY29tcG9uZW50cy9fbW9uZGUtaW1hZ2luYXRpb24uc2NzcyIsImNvbXBvbmVudHMvX25vdXZlYXV4LXZveWFnZXMuc2NzcyIsImNvbXBvbmVudHMvX2FjdHVhbGl0ZS5zY3NzIiwiY29tcG9uZW50cy9fcGx1cy1sb2luLnNjc3MiLCJjb21wb25lbnRzL19zZXJ2aWNlcy5zY3NzIiwiY29tcG9uZW50cy9faWRlZXMtdm95YWdlcy5zY3NzIiwiY29tcG9uZW50cy9fcmVnaW9ucy5zY3NzIiwiY29tcG9uZW50cy9fZW52aWVzLnNjc3MiLCJjb21wb25lbnRzL190ZW1vaWduYWdlLnNjc3MiLCJjb21wb25lbnRzL19ndWlkZS5zY3NzIiwiY29tcG9uZW50cy9fbWlldXgtcHJlcGFyZXIuc2NzcyIsImNvbXBvbmVudHMvX2lkZWVzLWFzc29jaWVlcy5zY3NzIiwiY29tcG9uZW50cy9fdm91cy1haW1lcmV6LnNjc3MiLCJjb21wb25lbnRzL19pdGluZXJhaXJlLnNjc3MiLCJjb21wb25lbnRzL19hLWxhLWNhcnRlLnNjc3MiLCJjb21wb25lbnRzL19idWRnZXQuc2NzcyIsImNvbXBvbmVudHMvX25vcy1leHBlcnRzLnNjc3MiLCJjb21wb25lbnRzL19jb250YWN0LnNjc3MiLCJjb21wb25lbnRzL19yZWNoZXJjaGUuc2NzcyIsImNvbXBvbmVudHMvX2luZm9zLXBheXMuc2NzcyIsImNvbXBvbmVudHMvX3F1YW5kLXBhcnRpci5zY3NzIiwiY29tcG9uZW50cy9fYm9ubmVzLXJhaXNvbnMuc2NzcyIsImNvbXBvbmVudHMvX3V0aWxlLnNjc3MiLCJjb21wb25lbnRzL19hLWRlY291dnJpci5zY3NzIiwiY29tcG9uZW50cy9fdm95YWdlcy1wYXlzLnNjc3MiLCJjb21wb25lbnRzL19hcnRpY2xlcy5zY3NzIiwiY29tcG9uZW50cy9faW50cm8tY29uc2VpbGxlcnMuc2NzcyIsImNvbXBvbmVudHMvX2NvbnNlaWxsZXJzLnNjc3MiLCJjb21wb25lbnRzL19pbnRlcnZpZXdzLnNjc3MiLCJjb21wb25lbnRzL19pbnRlcnZpZXctZGV0YWlsLnNjc3MiLCJjb21wb25lbnRzL19hdmlzLnNjc3MiLCJjb21wb25lbnRzL19lbnZpZXMtbW9tZW50LnNjc3MiLCJjb21wb25lbnRzL19lbnZpZXMtdGhlbWUuc2NzcyIsImNvbXBvbmVudHMvX2RlY29ubmVjdGVyLnNjc3MiLCJjb21wb25lbnRzL19kZXN0aW5hdGlvbnMtZmF2b3JpdGVzLnNjc3MiLCJjb21wb25lbnRzL19zYWlzb25zLnNjc3MiLCJjb21wb25lbnRzL19vbnBhcnRvdS5zY3NzIiwiY29tcG9uZW50cy9faWRlZXMtY2lyY3VpdC5zY3NzIiwiY29tcG9uZW50cy9fdG9wLWRlc3RpbmF0aW9ucy5zY3NzIiwiY29tcG9uZW50cy9fYnJvY2h1cmUuc2NzcyIsImNvbXBvbmVudHMvX2RpeC1ib25uZXMtcmFpc29ucy5zY3NzIiwiY29tcG9uZW50cy9fc2VydmljZXMtcGx1cy5zY3NzIiwiY29tcG9uZW50cy9fb2ZmcmVzLWV0LWF0dGVudGlvbnMuc2NzcyIsImNvbXBvbmVudHMvX3ByZXNlbnRhdGlvbi1jaGVxdWVzLnNjc3MiLCJjb21wb25lbnRzL19jb21tZW50LWNhLW1hcmNoZS5zY3NzIiwiY29tcG9uZW50cy9fY2hlcXVlcy10dW5uZWwuc2NzcyIsImNvbXBvbmVudHMvX2Rkdi5zY3NzIiwiY29tcG9uZW50cy9fbm9zLWFnZW5jZXMuc2NzcyIsImNvbXBvbmVudHMvX3NlcnZpY2UtY2xpZW50LnNjc3MiLCJjb21wb25lbnRzL19wcmVzc2UtZXQtdGVjaG5pcXVlLnNjc3MiLCJjb21wb25lbnRzL19hZ2VuY2UtYWNjZXMuc2NzcyIsImNvbXBvbmVudHMvX2FnZW5jZS12aXNpdGUuc2NzcyIsImNvbXBvbmVudHMvX2FnZW5jZS1ldmVuZW1lbnRzLnNjc3MiLCJjb21wb25lbnRzL19wcmVzZW50YXRpb24tbWFyaWFnZS5zY3NzIiwiY29tcG9uZW50cy9fYm9ubmVzLXJhaXNvbnMtbWFyaWFnZS5zY3NzIiwiY29tcG9uZW50cy9fYXZhbnRhZ2VzLnNjc3MiLCJjb21wb25lbnRzL19wYXJ0aWNpcGF0aW9uLWNhZGVhdS5zY3NzIiwiY29tcG9uZW50cy9fZXNwYWNlLWNsaWVudC5zY3NzIiwiY29tcG9uZW50cy9fZW52aWVzLXBhci1wYXlzLnNjc3MiLCJjb21wb25lbnRzL19zYWlzb24uc2NzcyIsImNvbXBvbmVudHMvX25vcy1icm9jaHVyZXMuc2NzcyIsImNvbXBvbmVudHMvX2xlLWZvb2Rpbmcuc2NzcyIsImNvbXBvbmVudHMvX25vcy1tYWlzb25zLnNjc3MiLCJjb21wb25lbnRzL19sYS1wcmVzc2UtZW4tcGFybGUuc2NzcyIsImNvbXBvbmVudHMvX3ZveWFnZS1zdXItbWVzdXJlLnNjc3MiLCJjb21wb25lbnRzL192YWxpc2UtaWRlYWxlLnNjc3MiLCJjb21wb25lbnRzL19saWJyYWlyaWUuc2NzcyIsImNvbXBvbmVudHMvX3ZhbGV1ci1ham91dGVlLnNjc3MiLCJjb21wb25lbnRzL19mcmllbmRzLnNjc3MiLCJjb21wb25lbnRzL19jb25jaWVyZ2VyaWUuc2NzcyIsImNvbXBvbmVudHMvX25vdXMtZmFpc29ucy5zY3NzIiwibGF5b3V0L19oZWFkZXIuc2NzcyIsImxheW91dC9faGVhZGVyLW1lYS5zY3NzIiwibGF5b3V0L19mb290ZXIuc2NzcyIsImxheW91dC9fbmF2LnNjc3MiLCJsYXlvdXQvX3N0aWNreS1uYXYuc2NzcyIsImxheW91dC9fbWVudS5zY3NzIiwibGF5b3V0L19tZW51LW1vYmlsZS5zY3NzIiwibGF5b3V0L19jb250YWN0LnNjc3MiLCJsYXlvdXQvX2NvbnRhY3QtbW9iaWxlLnNjc3MiLCJsYXlvdXQvX3Njcm9sbHRvcC5zY3NzIiwibGF5b3V0L19uYXYtdW5pdmVycy5zY3NzIiwibGF5b3V0L19wcmludC5zY3NzIiwidmVuZG9ycy9zbGljay9fc2xpY2suc2NzcyIsInZlbmRvcnMvc2xpY2svX3NsaWNrLXRoZW1lLnNjc3MiLCJ2ZW5kb3JzL2F3ZXNvbXBsZXRlL19hd2Vzb21wbGV0ZS5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAtc2VsZWN0L19ib290c3RyYXAtc2VsZWN0LnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC1zZWxlY3QvX3ZhcmlhYmxlcy5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAtZGF0ZXBpY2tlci9ib290c3RyYXAtZGF0ZXBpY2tlcjMuY3NzIiwidmVuZG9ycy1leHRlbnNpb25zL2Jvb3RzdHJhcC9fbW9kYWwuc2NzcyIsInZlbmRvcnMtZXh0ZW5zaW9ucy9ib290c3RyYXAvX3Rvb2x0aXAuc2NzcyIsInZlbmRvcnMtZXh0ZW5zaW9ucy9ib290c3RyYXAtc2VsZWN0L19ib290c3RyYXAtc2VsZWN0LnNjc3MiLCJ2ZW5kb3JzLWV4dGVuc2lvbnMvYm9vdHN0cmFwLWRhdGVwaWNrZXIvX2Jvb3RzdHJhcC1kYXRlcGlja2VyLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCAndmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwJztcclxuXHJcblxyXG5AaW1wb3J0ICdhYnN0cmFjdHMvdmFyaWFibGVzJztcclxuQGltcG9ydCAnYWJzdHJhY3RzL2Z1bmN0aW9ucyc7XHJcbkBpbXBvcnQgJ2Fic3RyYWN0cy9taXhpbnMvbWl4aW5zJztcclxuQGltcG9ydCAnYWJzdHJhY3RzL21peGlucy9idXR0b25zJztcclxuXHJcbkBpbXBvcnQgJ2Jhc2UvcmVzZXQnO1xyXG5AaW1wb3J0ICdiYXNlL2Jhc2UnO1xyXG5AaW1wb3J0ICdiYXNlL3R5cG9ncmFwaHknO1xyXG5cclxuQGltcG9ydCAnY29tcG9uZW50cy9pY29uZm9udCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9ucyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm9ybXMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2NvbW1vbic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYm94JztcclxuXHJcbkBpbXBvcnQgJ2xheW91dC9oZWFkZXInO1xyXG5AaW1wb3J0ICdsYXlvdXQvaGVhZGVyLW1lYSc7XHJcbkBpbXBvcnQgJ2xheW91dC9mb290ZXInO1xyXG5AaW1wb3J0ICdsYXlvdXQvbmF2JztcclxuQGltcG9ydCAnbGF5b3V0L3N0aWNreS1uYXYnO1xyXG5AaW1wb3J0ICdsYXlvdXQvbWVudSc7XHJcbkBpbXBvcnQgJ2xheW91dC9tZW51LW1vYmlsZSc7XHJcbkBpbXBvcnQgJ2xheW91dC9jb250YWN0JztcclxuQGltcG9ydCAnbGF5b3V0L2NvbnRhY3QtbW9iaWxlJztcclxuQGltcG9ydCAnbGF5b3V0L3Njcm9sbHRvcCc7XHJcbkBpbXBvcnQgJ2xheW91dC9uYXYtdW5pdmVycyc7XHJcbkBpbXBvcnQgJ2xheW91dC9wcmludCc7XHJcblxyXG5AaW1wb3J0ICd2ZW5kb3JzL3NsaWNrL3NsaWNrJztcclxuQGltcG9ydCAndmVuZG9ycy9zbGljay9zbGljay10aGVtZSc7XHJcbkBpbXBvcnQgJ3ZlbmRvcnMvYXdlc29tcGxldGUvYXdlc29tcGxldGUnO1xyXG5AaW1wb3J0ICd2ZW5kb3JzL2Jvb3RzdHJhcC1zZWxlY3QvYm9vdHN0cmFwLXNlbGVjdCc7XHJcbkBpbXBvcnQgJ3ZlbmRvcnMvYm9vdHN0cmFwLWRhdGVwaWNrZXIvYm9vdHN0cmFwLWRhdGVwaWNrZXIzJztcclxuXHJcblxyXG5AaW1wb3J0ICd2ZW5kb3JzLWV4dGVuc2lvbnMvYm9vdHN0cmFwL21vZGFsJztcclxuQGltcG9ydCAndmVuZG9ycy1leHRlbnNpb25zL2Jvb3RzdHJhcC90b29sdGlwJztcclxuQGltcG9ydCAndmVuZG9ycy1leHRlbnNpb25zL2Jvb3RzdHJhcC1zZWxlY3QvYm9vdHN0cmFwLXNlbGVjdCc7XHJcbkBpbXBvcnQgJ3ZlbmRvcnMtZXh0ZW5zaW9ucy9ib290c3RyYXAtZGF0ZXBpY2tlci9ib290c3RyYXAtZGF0ZXBpY2tlcic7XHJcbiIsIi8qIVxyXG4gKiBCb290c3RyYXAgdjMuMy43IChodHRwOi8vZ2V0Ym9vdHN0cmFwLmNvbSlcclxuICogQ29weXJpZ2h0IDIwMTEtMjAxNiBUd2l0dGVyLCBJbmMuXHJcbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFzdGVyL0xJQ0VOU0UpXHJcbiAqL1xyXG5cclxuLy8gQ29yZSB2YXJpYWJsZXMgYW5kIG1peGluc1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL3ZhcmlhYmxlc1wiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL21peGluc1wiO1xyXG5cclxuLy8gUmVzZXQgYW5kIGRlcGVuZGVuY2llc1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL25vcm1hbGl6ZVwiO1xyXG4vL0BpbXBvcnQgXCJib290c3RyYXAvcHJpbnRcIjtcclxuLy9AaW1wb3J0IFwiYm9vdHN0cmFwL2dseXBoaWNvbnNcIjtcclxuXHJcbi8vIENvcmUgQ1NTXHJcbi8vQGltcG9ydCBcImJvb3RzdHJhcC9zY2FmZm9sZGluZ1wiO1xyXG4vL0BpbXBvcnQgXCJib290c3RyYXAvdHlwZVwiO1xyXG4vL0BpbXBvcnQgXCJib290c3RyYXAvY29kZVwiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL2dyaWRcIjtcclxuLy9AaW1wb3J0IFwiYm9vdHN0cmFwL3RhYmxlc1wiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL2Zvcm1zXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvYnV0dG9uc1wiO1xyXG5cclxuLy8gQ29tcG9uZW50c1xyXG4vL0BpbXBvcnQgXCJib290c3RyYXAvY29tcG9uZW50LWFuaW1hdGlvbnNcIjtcclxuQGltcG9ydCBcImJvb3RzdHJhcC9kcm9wZG93bnNcIjtcclxuQGltcG9ydCBcImJvb3RzdHJhcC9idXR0b24tZ3JvdXBzXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvaW5wdXQtZ3JvdXBzXCI7XHJcbi8vQGltcG9ydCBcImJvb3RzdHJhcC9uYXZzXCI7XHJcbi8vQGltcG9ydCBcImJvb3RzdHJhcC9uYXZiYXJcIjtcclxuLy9AaW1wb3J0IFwiYm9vdHN0cmFwL2JyZWFkY3J1bWJzXCI7XHJcbi8vQGltcG9ydCBcImJvb3RzdHJhcC9wYWdpbmF0aW9uXCI7XHJcbi8vQGltcG9ydCBcImJvb3RzdHJhcC9wYWdlclwiO1xyXG4vL0BpbXBvcnQgXCJib290c3RyYXAvbGFiZWxzXCI7XHJcbi8vQGltcG9ydCBcImJvb3RzdHJhcC9iYWRnZXNcIjtcclxuLy9AaW1wb3J0IFwiYm9vdHN0cmFwL2p1bWJvdHJvblwiO1xyXG4vL0BpbXBvcnQgXCJib290c3RyYXAvdGh1bWJuYWlsc1wiO1xyXG4vL0BpbXBvcnQgXCJib290c3RyYXAvYWxlcnRzXCI7XHJcbi8vQGltcG9ydCBcImJvb3RzdHJhcC9wcm9ncmVzcy1iYXJzXCI7XHJcbi8vQGltcG9ydCBcImJvb3RzdHJhcC9tZWRpYVwiO1xyXG4vL0BpbXBvcnQgXCJib290c3RyYXAvbGlzdC1ncm91cFwiO1xyXG4vL0BpbXBvcnQgXCJib290c3RyYXAvcGFuZWxzXCI7XHJcbi8vQGltcG9ydCBcImJvb3RzdHJhcC9yZXNwb25zaXZlLWVtYmVkXCI7XHJcbi8vQGltcG9ydCBcImJvb3RzdHJhcC93ZWxsc1wiO1xyXG4vL0BpbXBvcnQgXCJib290c3RyYXAvY2xvc2VcIjtcclxuXHJcbi8vIENvbXBvbmVudHMgdy8gSmF2YVNjcmlwdFxyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL21vZGFsc1wiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL3Rvb2x0aXBcIjtcclxuLy9AaW1wb3J0IFwiYm9vdHN0cmFwL3BvcG92ZXJzXCI7XHJcbi8vQGltcG9ydCBcImJvb3RzdHJhcC9jYXJvdXNlbFwiO1xyXG5cclxuLy8gVXRpbGl0eSBjbGFzc2VzXHJcbkBpbXBvcnQgXCJib290c3RyYXAvdXRpbGl0aWVzXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvcmVzcG9uc2l2ZS11dGlsaXRpZXNcIjtcclxuIiwiJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlcjogZmFsc2UgIWRlZmF1bHQ7XHJcbi8vXHJcbi8vIFZhcmlhYmxlc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vPT0gQ29sb3JzXHJcbi8vXHJcbi8vIyMgR3JheSBhbmQgYnJhbmQgY29sb3JzIGZvciB1c2UgYWNyb3NzIEJvb3RzdHJhcC5cclxuXHJcbiRncmF5LWJhc2U6ICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xyXG4kZ3JheS1kYXJrZXI6ICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAxMy41JSkgIWRlZmF1bHQ7IC8vICMyMjJcclxuJGdyYXktZGFyazogICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMjAlKSAhZGVmYXVsdDsgICAvLyAjMzMzXHJcbiRncmF5OiAgICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDMzLjUlKSAhZGVmYXVsdDsgLy8gIzU1NVxyXG4kZ3JheS1saWdodDogICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCA0Ni43JSkgIWRlZmF1bHQ7IC8vICM3NzdcclxuJGdyYXktbGlnaHRlcjogICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgOTMuNSUpICFkZWZhdWx0OyAvLyAjZWVlXHJcblxyXG4kYnJhbmQtcHJpbWFyeTogICAgICAgICBkYXJrZW4oIzQyOGJjYSwgNi41JSkgIWRlZmF1bHQ7IC8vICMzMzdhYjdcclxuJGJyYW5kLXN1Y2Nlc3M6ICAgICAgICAgIzVjYjg1YyAhZGVmYXVsdDtcclxuJGJyYW5kLWluZm86ICAgICAgICAgICAgIzViYzBkZSAhZGVmYXVsdDtcclxuJGJyYW5kLXdhcm5pbmc6ICAgICAgICAgI2YwYWQ0ZSAhZGVmYXVsdDtcclxuJGJyYW5kLWRhbmdlcjogICAgICAgICAgI2Q5NTM0ZiAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IFNjYWZmb2xkaW5nXHJcbi8vXHJcbi8vIyMgU2V0dGluZ3MgZm9yIHNvbWUgb2YgdGhlIG1vc3QgZ2xvYmFsIHN0eWxlcy5cclxuXHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgYDxib2R5PmAuXHJcbiRib2R5LWJnOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbi8vKiogR2xvYmFsIHRleHQgY29sb3Igb24gYDxib2R5PmAuXHJcbiR0ZXh0LWNvbG9yOiAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIEdsb2JhbCB0ZXh0dWFsIGxpbmsgY29sb3IuXHJcbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xyXG4vLyoqIExpbmsgaG92ZXIgY29sb3Igc2V0IHZpYSBgZGFya2VuKClgIGZ1bmN0aW9uLlxyXG4kbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XHJcbi8vKiogTGluayBob3ZlciBkZWNvcmF0aW9uLlxyXG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBUeXBvZ3JhcGh5XHJcbi8vXHJcbi8vIyMgRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXHJcblxyXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcclxuJGZvbnQtZmFtaWx5LXNlcmlmOiAgICAgICBHZW9yZ2lhLCBcIlRpbWVzIE5ldyBSb21hblwiLCBUaW1lcywgc2VyaWYgIWRlZmF1bHQ7XHJcbi8vKiogRGVmYXVsdCBtb25vc3BhY2UgZm9udHMgZm9yIGA8Y29kZT5gLCBgPGtiZD5gLCBhbmQgYDxwcmU+YC5cclxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XHJcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XHJcblxyXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgIDE0cHggIWRlZmF1bHQ7XHJcbiRmb250LXNpemUtbGFyZ2U6ICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkpICFkZWZhdWx0OyAvLyB+MThweFxyXG4kZm9udC1zaXplLXNtYWxsOiAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDAuODUpKSAhZGVmYXVsdDsgLy8gfjEycHhcclxuXHJcbiRmb250LXNpemUtaDE6ICAgICAgICAgICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDIuNikpICFkZWZhdWx0OyAvLyB+MzZweFxyXG4kZm9udC1zaXplLWgyOiAgICAgICAgICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAyLjE1KSkgIWRlZmF1bHQ7IC8vIH4zMHB4XHJcbiRmb250LXNpemUtaDM6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS43KSkgIWRlZmF1bHQ7IC8vIH4yNHB4XHJcbiRmb250LXNpemUtaDQ6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkpICFkZWZhdWx0OyAvLyB+MThweFxyXG4kZm9udC1zaXplLWg1OiAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcclxuJGZvbnQtc2l6ZS1oNjogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAwLjg1KSkgIWRlZmF1bHQ7IC8vIH4xMnB4XHJcblxyXG4vLyoqIFVuaXQtbGVzcyBgbGluZS1oZWlnaHRgIGZvciB1c2UgaW4gY29tcG9uZW50cyBsaWtlIGJ1dHRvbnMuXHJcbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgMS40Mjg1NzE0MjkgIWRlZmF1bHQ7IC8vIDIwLzE0XHJcbi8vKiogQ29tcHV0ZWQgXCJsaW5lLWhlaWdodFwiIChgZm9udC1zaXplYCAqIGBsaW5lLWhlaWdodGApIGZvciB1c2Ugd2l0aCBgbWFyZ2luYCwgYHBhZGRpbmdgLCBldGMuXHJcbiRsaW5lLWhlaWdodC1jb21wdXRlZDogICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlKSkgIWRlZmF1bHQ7IC8vIH4yMHB4XHJcblxyXG4vLyoqIEJ5IGRlZmF1bHQsIHRoaXMgaW5oZXJpdHMgZnJvbSB0aGUgYDxib2R5PmAuXHJcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgaW5oZXJpdCAhZGVmYXVsdDtcclxuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICA1MDAgIWRlZmF1bHQ7XHJcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgMS4xICFkZWZhdWx0O1xyXG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBJY29ub2dyYXBoeVxyXG4vL1xyXG4vLyMjIFNwZWNpZnkgY3VzdG9tIGxvY2F0aW9uIGFuZCBmaWxlbmFtZSBvZiB0aGUgaW5jbHVkZWQgR2x5cGhpY29ucyBpY29uIGZvbnQuIFVzZWZ1bCBmb3IgdGhvc2UgaW5jbHVkaW5nIEJvb3RzdHJhcCB2aWEgQm93ZXIuXHJcblxyXG4vLyoqIExvYWQgZm9udHMgZnJvbSB0aGlzIGRpcmVjdG9yeS5cclxuXHJcbi8vIFtjb252ZXJ0ZXJdIElmICRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIgaWYgdXNlZCwgcHJvdmlkZSBwYXRoIHJlbGF0aXZlIHRvIHRoZSBhc3NldHMgbG9hZCBwYXRoLlxyXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGJlY2F1c2Ugc29tZSBhc3NldCBoZWxwZXJzLCBzdWNoIGFzIFNwcm9ja2V0cywgZG8gbm90IHdvcmsgd2l0aCBmaWxlLXJlbGF0aXZlIHBhdGhzLlxyXG4kaWNvbi1mb250LXBhdGg6IGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIFwiYm9vdHN0cmFwL1wiLCBcIi4uL2ZvbnRzL2Jvb3RzdHJhcC9cIikgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIEZpbGUgbmFtZSBmb3IgYWxsIGZvbnQgZmlsZXMuXHJcbiRpY29uLWZvbnQtbmFtZTogICAgICAgICAgXCJnbHlwaGljb25zLWhhbGZsaW5ncy1yZWd1bGFyXCIgIWRlZmF1bHQ7XHJcbi8vKiogRWxlbWVudCBJRCB3aXRoaW4gU1ZHIGljb24gZmlsZS5cclxuJGljb24tZm9udC1zdmctaWQ6ICAgICAgICBcImdseXBoaWNvbnNfaGFsZmxpbmdzcmVndWxhclwiICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gQ29tcG9uZW50c1xyXG4vL1xyXG4vLyMjIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS4gVmFsdWVzIGJhc2VkIG9uIDE0cHggdGV4dCBhbmQgMS40MjggbGluZS1oZWlnaHQgKH4yMHB4IHRvIHN0YXJ0KS5cclxuXHJcbiRwYWRkaW5nLWJhc2UtdmVydGljYWw6ICAgICA2cHggIWRlZmF1bHQ7XHJcbiRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDogICAxMnB4ICFkZWZhdWx0O1xyXG5cclxuJHBhZGRpbmctbGFyZ2UtdmVydGljYWw6ICAgIDEwcHggIWRlZmF1bHQ7XHJcbiRwYWRkaW5nLWxhcmdlLWhvcml6b250YWw6ICAxNnB4ICFkZWZhdWx0O1xyXG5cclxuJHBhZGRpbmctc21hbGwtdmVydGljYWw6ICAgIDVweCAhZGVmYXVsdDtcclxuJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDogIDEwcHggIWRlZmF1bHQ7XHJcblxyXG4kcGFkZGluZy14cy12ZXJ0aWNhbDogICAgICAgMXB4ICFkZWZhdWx0O1xyXG4kcGFkZGluZy14cy1ob3Jpem9udGFsOiAgICAgNXB4ICFkZWZhdWx0O1xyXG5cclxuJGxpbmUtaGVpZ2h0LWxhcmdlOiAgICAgICAgIDEuMzMzMzMzMyAhZGVmYXVsdDsgLy8gZXh0cmEgZGVjaW1hbHMgZm9yIFdpbiA4LjEgQ2hyb21lXHJcbiRsaW5lLWhlaWdodC1zbWFsbDogICAgICAgICAxLjUgIWRlZmF1bHQ7XHJcblxyXG4kYm9yZGVyLXJhZGl1cy1iYXNlOiAgICAgICAgNHB4ICFkZWZhdWx0O1xyXG4kYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgNnB4ICFkZWZhdWx0O1xyXG4kYm9yZGVyLXJhZGl1cy1zbWFsbDogICAgICAgM3B4ICFkZWZhdWx0O1xyXG5cclxuLy8qKiBHbG9iYWwgY29sb3IgZm9yIGFjdGl2ZSBpdGVtcyAoZS5nLiwgbmF2cyBvciBkcm9wZG93bnMpLlxyXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgI2ZmZiAhZGVmYXVsdDtcclxuLy8qKiBHbG9iYWwgYmFja2dyb3VuZCBjb2xvciBmb3IgYWN0aXZlIGl0ZW1zIChlLmcuLCBuYXZzIG9yIGRyb3Bkb3ducykuXHJcbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcclxuXHJcbi8vKiogV2lkdGggb2YgdGhlIGBib3JkZXJgIGZvciBnZW5lcmF0aW5nIGNhcmV0cyB0aGF0IGluZGljYXRlIGRyb3Bkb3ducy5cclxuJGNhcmV0LXdpZHRoLWJhc2U6ICAgICAgICAgIDRweCAhZGVmYXVsdDtcclxuLy8qKiBDYXJldHMgaW5jcmVhc2Ugc2xpZ2h0bHkgaW4gc2l6ZSBmb3IgbGFyZ2VyIGNvbXBvbmVudHMuXHJcbiRjYXJldC13aWR0aC1sYXJnZTogICAgICAgICA1cHggIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBUYWJsZXNcclxuLy9cclxuLy8jIyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXHJcblxyXG4vLyoqIFBhZGRpbmcgZm9yIGA8dGg+YHMgYW5kIGA8dGQ+YHMuXHJcbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgICAgOHB4ICFkZWZhdWx0O1xyXG4vLyoqIFBhZGRpbmcgZm9yIGNlbGxzIGluIGAudGFibGUtY29uZGVuc2VkYC5cclxuJHRhYmxlLWNvbmRlbnNlZC1jZWxsLXBhZGRpbmc6ICA1cHggIWRlZmF1bHQ7XHJcblxyXG4vLyoqIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBhbGwgdGFibGVzLlxyXG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xyXG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1zdHJpcGVkYC5cclxuJHRhYmxlLWJnLWFjY2VudDogICAgICAgICAgICAgICAjZjlmOWY5ICFkZWZhdWx0O1xyXG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1ob3ZlcmAuXHJcbiR0YWJsZS1iZy1ob3ZlcjogICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcclxuJHRhYmxlLWJnLWFjdGl2ZTogICAgICAgICAgICAgICAkdGFibGUtYmctaG92ZXIgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGFibGUgYW5kIGNlbGwgYm9yZGVycy5cclxuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gQnV0dG9uc1xyXG4vL1xyXG4vLyMjIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgY29sb3IuXHJcblxyXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBub3JtYWwgIWRlZmF1bHQ7XHJcblxyXG4kYnRuLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICAjMzMzICFkZWZhdWx0O1xyXG4kYnRuLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kYnRuLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xyXG5cclxuJGJ0bi1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJGJ0bi1wcmltYXJ5LWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XHJcbiRidG4tcHJpbWFyeS1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXByaW1hcnktYmcsIDUlKSAhZGVmYXVsdDtcclxuXHJcbiRidG4tc3VjY2Vzcy1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRidG4tc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xyXG4kYnRuLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1zdWNjZXNzLWJnLCA1JSkgIWRlZmF1bHQ7XHJcblxyXG4kYnRuLWluZm8tY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kYnRuLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcclxuJGJ0bi1pbmZvLWJvcmRlcjogICAgICAgICAgICAgICAgZGFya2VuKCRidG4taW5mby1iZywgNSUpICFkZWZhdWx0O1xyXG5cclxuJGJ0bi13YXJuaW5nLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJGJ0bi13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XHJcbiRidG4td2FybmluZy1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXdhcm5pbmctYmcsIDUlKSAhZGVmYXVsdDtcclxuXHJcbiRidG4tZGFuZ2VyLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRidG4tZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XHJcbiRidG4tZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbigkYnRuLWRhbmdlci1iZywgNSUpICFkZWZhdWx0O1xyXG5cclxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XHJcblxyXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXHJcbiRidG4tYm9yZGVyLXJhZGl1cy1iYXNlOiAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XHJcbiRidG4tYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlICFkZWZhdWx0O1xyXG4kYnRuLWJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbWFsbCAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IEZvcm1zXHJcbi8vXHJcbi8vIyNcclxuXHJcbi8vKiogYDxpbnB1dD5gIGJhY2tncm91bmQgY29sb3JcclxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuLy8qKiBgPGlucHV0IGRpc2FibGVkPmAgYmFja2dyb3VuZCBjb2xvclxyXG4kaW5wdXQtYmctZGlzYWJsZWQ6ICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xyXG5cclxuLy8qKiBUZXh0IGNvbG9yIGZvciBgPGlucHV0PmBzXHJcbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xyXG4vLyoqIGA8aW5wdXQ+YCBib3JkZXIgY29sb3JcclxuJGlucHV0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcclxuXHJcbi8vIFRPRE86IFJlbmFtZSBgJGlucHV0LWJvcmRlci1yYWRpdXNgIHRvIGAkaW5wdXQtYm9yZGVyLXJhZGl1cy1iYXNlYCBpbiB2NFxyXG4vLyoqIERlZmF1bHQgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcclxuLy8gVGhpcyBoYXMgbm8gZWZmZWN0IG9uIGA8c2VsZWN0PmBzIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiBgPHNlbGVjdD5gcyBpbiBDU1MuXHJcbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XHJcbi8vKiogTGFyZ2UgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcclxuJGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgJGJvcmRlci1yYWRpdXMtbGFyZ2UgIWRlZmF1bHQ7XHJcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcclxuJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgaW5wdXRzIG9uIGZvY3VzXHJcbiRpbnB1dC1ib3JkZXItZm9jdXM6ICAgICAgICAgICAgICM2NmFmZTkgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIFBsYWNlaG9sZGVyIHRleHQgY29sb3JcclxuJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOiAgICAgICAgIzk5OSAhZGVmYXVsdDtcclxuXHJcbi8vKiogRGVmYXVsdCBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XHJcbiRpbnB1dC1oZWlnaHQtYmFzZTogICAgICAgICAgICAgICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XHJcbi8vKiogTGFyZ2UgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxyXG4kaW5wdXQtaGVpZ2h0LWxhcmdlOiAgICAgICAgICAgICAoY2VpbCgkZm9udC1zaXplLWxhcmdlICogJGxpbmUtaGVpZ2h0LWxhcmdlKSArICgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XHJcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxyXG4kaW5wdXQtaGVpZ2h0LXNtYWxsOiAgICAgICAgICAgICAoZmxvb3IoJGZvbnQtc2l6ZS1zbWFsbCAqICRsaW5lLWhlaWdodC1zbWFsbCkgKyAoJHBhZGRpbmctc21hbGwtdmVydGljYWwgKiAyKSArIDIpICFkZWZhdWx0O1xyXG5cclxuLy8qKiBgLmZvcm0tZ3JvdXBgIG1hcmdpblxyXG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAxNXB4ICFkZWZhdWx0O1xyXG5cclxuJGxlZ2VuZC1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcclxuJGxlZ2VuZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2U1ZTVlNSAhZGVmYXVsdDtcclxuXHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcclxuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcclxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXHJcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXIgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIERpc2FibGVkIGN1cnNvciBmb3IgZm9ybSBjb250cm9scyBhbmQgYnV0dG9ucy5cclxuJGN1cnNvci1kaXNhYmxlZDogICAgICAgICAgICAgICAgbm90LWFsbG93ZWQgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBEcm9wZG93bnNcclxuLy9cclxuLy8jIyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXHJcblxyXG4vLyoqIEJhY2tncm91bmQgZm9yIHRoZSBkcm9wZG93biBtZW51LlxyXG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAuXHJcbiRkcm9wZG93bi1ib3JkZXI6ICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjE1KSAhZGVmYXVsdDtcclxuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgICoqZm9yIElFOCoqLlxyXG4kZHJvcGRvd24tZmFsbGJhY2stYm9yZGVyOiAgICAgICAjY2NjICFkZWZhdWx0O1xyXG4vLyoqIERpdmlkZXIgY29sb3IgZm9yIGJldHdlZW4gZHJvcGRvd24gaXRlbXMuXHJcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIERyb3Bkb3duIGxpbmsgdGV4dCBjb2xvci5cclxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcclxuLy8qKiBIb3ZlciBjb2xvciBmb3IgZHJvcGRvd24gbGlua3MuXHJcbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgIGRhcmtlbigkZ3JheS1kYXJrLCA1JSkgIWRlZmF1bHQ7XHJcbi8vKiogSG92ZXIgYmFja2dyb3VuZCBmb3IgZHJvcGRvd24gbGlua3MuXHJcbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gdGV4dCBjb2xvci5cclxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XHJcbi8vKiogQWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbSBiYWNrZ3JvdW5kIGNvbG9yLlxyXG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcclxuXHJcbi8vKiogRGlzYWJsZWQgZHJvcGRvd24gbWVudSBpdGVtIGJhY2tncm91bmQgY29sb3IuXHJcbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG5cclxuLy8qKiBUZXh0IGNvbG9yIGZvciBoZWFkZXJzIHdpdGhpbiBkcm9wZG93biBtZW51cy5cclxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIERlcHJlY2F0ZWQgYCRkcm9wZG93bi1jYXJldC1jb2xvcmAgYXMgb2YgdjMuMS4wXHJcbiRkcm9wZG93bi1jYXJldC1jb2xvcjogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8tLSBaLWluZGV4IG1hc3RlciBsaXN0XHJcbi8vXHJcbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xyXG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXHJcbi8vXHJcbi8vIE5vdGU6IFRoZXNlIHZhcmlhYmxlcyBhcmUgbm90IGdlbmVyYXRlZCBpbnRvIHRoZSBDdXN0b21pemVyLlxyXG5cclxuJHppbmRleC1uYXZiYXI6ICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcclxuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgMTAwMCAhZGVmYXVsdDtcclxuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcclxuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcclxuJHppbmRleC1uYXZiYXItZml4ZWQ6ICAgICAgMTAzMCAhZGVmYXVsdDtcclxuJHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kOiAgMTA0MCAhZGVmYXVsdDtcclxuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IE1lZGlhIHF1ZXJpZXMgYnJlYWtwb2ludHNcclxuLy9cclxuLy8jIyBEZWZpbmUgdGhlIGJyZWFrcG9pbnRzIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLCBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxyXG5cclxuLy8gRXh0cmEgc21hbGwgc2NyZWVuIC8gcGhvbmVcclxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXhzYCBhcyBvZiB2My4wLjFcclxuJHNjcmVlbi14czogICAgICAgICAgICAgICAgICA0ODBweCAhZGVmYXVsdDtcclxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXhzLW1pbmAgYXMgb2YgdjMuMi4wXHJcbiRzY3JlZW4teHMtbWluOiAgICAgICAgICAgICAgJHNjcmVlbi14cyAhZGVmYXVsdDtcclxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXBob25lYCBhcyBvZiB2My4wLjFcclxuJHNjcmVlbi1waG9uZTogICAgICAgICAgICAgICAkc2NyZWVuLXhzLW1pbiAhZGVmYXVsdDtcclxuXHJcbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxyXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tc21gIGFzIG9mIHYzLjAuMVxyXG4kc2NyZWVuLXNtOiAgICAgICAgICAgICAgICAgIDc2OHB4ICFkZWZhdWx0O1xyXG4kc2NyZWVuLXNtLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tc20gIWRlZmF1bHQ7XHJcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi10YWJsZXRgIGFzIG9mIHYzLjAuMVxyXG4kc2NyZWVuLXRhYmxldDogICAgICAgICAgICAgICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xyXG5cclxuLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3BcclxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLW1kYCBhcyBvZiB2My4wLjFcclxuJHNjcmVlbi1tZDogICAgICAgICAgICAgICAgICA5OTJweCAhZGVmYXVsdDtcclxuJHNjcmVlbi1tZC1taW46ICAgICAgICAgICAgICAkc2NyZWVuLW1kICFkZWZhdWx0O1xyXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tZGVza3RvcGAgYXMgb2YgdjMuMC4xXHJcbiRzY3JlZW4tZGVza3RvcDogICAgICAgICAgICAgJHNjcmVlbi1tZC1taW4gIWRlZmF1bHQ7XHJcblxyXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3BcclxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWxnYCBhcyBvZiB2My4wLjFcclxuJHNjcmVlbi1sZzogICAgICAgICAgICAgICAgICAxNDQwcHggIWRlZmF1bHQ7IFxyXG4kc2NyZWVuLWxnLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tbGcgIWRlZmF1bHQ7XHJcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZy1kZXNrdG9wYCBhcyBvZiB2My4wLjFcclxuJHNjcmVlbi1sZy1kZXNrdG9wOiAgICAgICAgICAkc2NyZWVuLWxnLW1pbiAhZGVmYXVsdDtcclxuXHJcbi8vIFNvIG1lZGlhIHF1ZXJpZXMgZG9uJ3Qgb3ZlcmxhcCB3aGVuIHJlcXVpcmVkLCBwcm92aWRlIGEgbWF4aW11bVxyXG4kc2NyZWVuLXhzLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLXNtLW1pbiAtIDEpICFkZWZhdWx0O1xyXG4kc2NyZWVuLXNtLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLW1kLW1pbiAtIDEpICFkZWZhdWx0O1xyXG4kc2NyZWVuLW1kLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLWxnLW1pbiAtIDEpICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gR3JpZCBzeXN0ZW1cclxuLy9cclxuLy8jIyBEZWZpbmUgeW91ciBjdXN0b20gcmVzcG9uc2l2ZSBncmlkLlxyXG5cclxuLy8qKiBOdW1iZXIgb2YgY29sdW1ucyBpbiB0aGUgZ3JpZC5cclxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgIDI0ICFkZWZhdWx0O1xyXG4vLyoqIFBhZGRpbmcgYmV0d2VlbiBjb2x1bW5zLiBHZXRzIGRpdmlkZWQgaW4gaGFsZiBmb3IgdGhlIGxlZnQgYW5kIHJpZ2h0LlxyXG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgMzBweCAhZGVmYXVsdDtcclxuLy8gTmF2YmFyIGNvbGxhcHNlXHJcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWNvbWVzIHVuY29sbGFwc2VkLlxyXG4kZ3JpZC1mbG9hdC1icmVha3BvaW50OiAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XHJcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWdpbnMgY29sbGFwc2luZy5cclxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXg6ICgkZ3JpZC1mbG9hdC1icmVha3BvaW50IC0gMSkgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBDb250YWluZXIgc2l6ZXNcclxuLy9cclxuLy8jIyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxyXG5cclxuLy8gU21hbGwgc2NyZWVuIC8gdGFibGV0XHJcbiRjb250YWluZXItdGFibGV0OiAgICAgICAgICAgICAoNjM4cHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xyXG4vLyoqIEZvciBgJHNjcmVlbi1zbS1taW5gIGFuZCB1cC5cclxuJGNvbnRhaW5lci1zbTogICAgICAgICAgICAgICAgICRjb250YWluZXItdGFibGV0ICFkZWZhdWx0O1xyXG5cclxuLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3BcclxuJGNvbnRhaW5lci1kZXNrdG9wOiAgICAgICAgICAgICg4NTJweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XHJcbi8vKiogRm9yIGAkc2NyZWVuLW1kLW1pbmAgYW5kIHVwLlxyXG4kY29udGFpbmVyLW1kOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1kZXNrdG9wICFkZWZhdWx0O1xyXG5cclxuLy8gTGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wXHJcbiRjb250YWluZXItbGFyZ2UtZGVza3RvcDogICAgICAoMTIwMHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcclxuLy8qKiBGb3IgYCRzY3JlZW4tbGctbWluYCBhbmQgdXAuXHJcbiRjb250YWluZXItbGc6ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLWxhcmdlLWRlc2t0b3AgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBOYXZiYXJcclxuLy9cclxuLy8jI1xyXG5cclxuLy8gQmFzaWNzIG9mIGEgbmF2YmFyXHJcbiRuYXZiYXItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgNTBweCAhZGVmYXVsdDtcclxuJG5hdmJhci1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAkbGluZS1oZWlnaHQtY29tcHV0ZWQgIWRlZmF1bHQ7XHJcbiRuYXZiYXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcclxuJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICBmbG9vcigoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpICFkZWZhdWx0O1xyXG4kbmF2YmFyLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICgoJG5hdmJhci1oZWlnaHQgLSAkbGluZS1oZWlnaHQtY29tcHV0ZWQpIC8gMikgIWRlZmF1bHQ7XHJcbiRuYXZiYXItY29sbGFwc2UtbWF4LWhlaWdodDogICAgICAgMzQwcHggIWRlZmF1bHQ7XHJcblxyXG4kbmF2YmFyLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgI2Y4ZjhmOCAhZGVmYXVsdDtcclxuJG5hdmJhci1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJnLCA2LjUlKSAhZGVmYXVsdDtcclxuXHJcbi8vIE5hdmJhciBsaW5rc1xyXG4kbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIzc3NyAhZGVmYXVsdDtcclxuJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcclxuJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICM1NTUgIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJnLCA2LjUlKSAhZGVmYXVsdDtcclxuJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcclxuXHJcbi8vIE5hdmJhciBicmFuZCBsYWJlbFxyXG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3IgIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yLCAxMCUpICFkZWZhdWx0O1xyXG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XHJcblxyXG4vLyBOYXZiYXIgdG9nZ2xlXHJcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xyXG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWljb24tYmFyLWJnOiAgICAgICAgIzg4OCAhZGVmYXVsdDtcclxuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ib3JkZXItY29sb3I6ICAgICAgICNkZGQgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PT0gSW52ZXJ0ZWQgbmF2YmFyXHJcbi8vIFJlc2V0IGludmVydGVkIG5hdmJhciBiYXNpY3NcclxuJG5hdmJhci1pbnZlcnNlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWxpZ2h0LCAxNSUpICFkZWZhdWx0O1xyXG4kbmF2YmFyLWludmVyc2UtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICMyMjIgIWRlZmF1bHQ7XHJcbiRuYXZiYXItaW52ZXJzZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcclxuXHJcbi8vIEludmVydGVkIG5hdmJhciBsaW5rc1xyXG4kbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktbGlnaHQsIDE1JSkgIWRlZmF1bHQ7XHJcbiRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcclxuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcclxuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1pbnZlcnNlLWJnLCAxMCUpICFkZWZhdWx0O1xyXG4kbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICM0NDQgIWRlZmF1bHQ7XHJcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XHJcblxyXG4vLyBJbnZlcnRlZCBuYXZiYXIgYnJhbmQgbGFiZWxcclxuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvciAhZGVmYXVsdDtcclxuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xyXG5cclxuLy8gSW52ZXJ0ZWQgbmF2YmFyIHRvZ2dsZVxyXG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlLWhvdmVyLWJnOiAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XHJcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaWNvbi1iYXItYmc6ICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ib3JkZXItY29sb3I6ICAgICAgICAjMzMzICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gTmF2c1xyXG4vL1xyXG4vLyMjXHJcblxyXG4vLz09PSBTaGFyZWQgbmF2IHN0eWxlc1xyXG4kbmF2LWxpbmstcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcclxuJG5hdi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xyXG5cclxuJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcclxuJG5hdi1kaXNhYmxlZC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcclxuXHJcbi8vPT0gVGFic1xyXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XHJcblxyXG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XHJcblxyXG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xyXG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xyXG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgICNkZGQgIWRlZmF1bHQ7XHJcblxyXG4kbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XHJcbiRuYXYtdGFicy1qdXN0aWZpZWQtYWN0aXZlLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XHJcblxyXG4vLz09IFBpbGxzXHJcbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcclxuJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcclxuJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IFBhZ2luYXRpb25cclxuLy9cclxuLy8jI1xyXG5cclxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XHJcblxyXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyOiAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcclxuXHJcbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xyXG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcclxuXHJcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXI6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gUGFnZXJcclxuLy9cclxuLy8jI1xyXG5cclxuJHBhZ2VyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYmcgIWRlZmF1bHQ7XHJcbiRwYWdlci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWJvcmRlciAhZGVmYXVsdDtcclxuJHBhZ2VyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcclxuXHJcbiRwYWdlci1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWhvdmVyLWJnICFkZWZhdWx0O1xyXG5cclxuJHBhZ2VyLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xyXG4kcGFnZXItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XHJcblxyXG4kcGFnZXItZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IEp1bWJvdHJvblxyXG4vL1xyXG4vLyMjXHJcblxyXG4kanVtYm90cm9uLXBhZGRpbmc6ICAgICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xyXG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xyXG4kanVtYm90cm9uLWJnOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xyXG4kanVtYm90cm9uLWhlYWRpbmctY29sb3I6ICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xyXG4kanVtYm90cm9uLWZvbnQtc2l6ZTogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjUpKSAhZGVmYXVsdDtcclxuJGp1bWJvdHJvbi1oZWFkaW5nLWZvbnQtc2l6ZTogICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogNC41KSkgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBGb3JtIHN0YXRlcyBhbmQgYWxlcnRzXHJcbi8vXHJcbi8vIyMgRGVmaW5lIGNvbG9ycyBmb3IgZm9ybSBmZWVkYmFjayBzdGF0ZXMgYW5kLCBieSBkZWZhdWx0LCBhbGVydHMuXHJcblxyXG4kc3RhdGUtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAgICAjM2M3NjNkICFkZWZhdWx0O1xyXG4kc3RhdGUtc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAjZGZmMGQ4ICFkZWZhdWx0O1xyXG4kc3RhdGUtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtc3VjY2Vzcy1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xyXG5cclxuJHN0YXRlLWluZm8tdGV4dDogICAgICAgICAgICAgICAgIzMxNzA4ZiAhZGVmYXVsdDtcclxuJHN0YXRlLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgI2Q5ZWRmNyAhZGVmYXVsdDtcclxuJHN0YXRlLWluZm8tYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLWluZm8tYmcsIC0xMCksIDclKSAhZGVmYXVsdDtcclxuXHJcbiRzdGF0ZS13YXJuaW5nLXRleHQ6ICAgICAgICAgICAgICM4YTZkM2IgIWRlZmF1bHQ7XHJcbiRzdGF0ZS13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICNmY2Y4ZTMgIWRlZmF1bHQ7XHJcbiRzdGF0ZS13YXJuaW5nLWJvcmRlcjogICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS13YXJuaW5nLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XHJcblxyXG4kc3RhdGUtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAgICAjYTk0NDQyICFkZWZhdWx0O1xyXG4kc3RhdGUtZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAjZjJkZWRlICFkZWZhdWx0O1xyXG4kc3RhdGUtZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtZGFuZ2VyLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBUb29sdGlwc1xyXG4vL1xyXG4vLyMjXHJcblxyXG4vLyoqIFRvb2x0aXAgbWF4IHdpZHRoXHJcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xyXG4vLyoqIFRvb2x0aXAgdGV4dCBjb2xvclxyXG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4vLyoqIFRvb2x0aXAgYmFja2dyb3VuZCBjb2xvclxyXG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xyXG4kdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgICAgICAuOSAhZGVmYXVsdDtcclxuXHJcbi8vKiogVG9vbHRpcCBhcnJvdyB3aWR0aFxyXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICA1cHggIWRlZmF1bHQ7XHJcbi8vKiogVG9vbHRpcCBhcnJvdyBjb2xvclxyXG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IFBvcG92ZXJzXHJcbi8vXHJcbi8vIyNcclxuXHJcbi8vKiogUG9wb3ZlciBib2R5IGJhY2tncm91bmQgY29sb3JcclxuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4vLyoqIFBvcG92ZXIgbWF4aW11bSB3aWR0aFxyXG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xyXG4vLyoqIFBvcG92ZXIgYm9yZGVyIGNvbG9yXHJcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMikgIWRlZmF1bHQ7XHJcbi8vKiogUG9wb3ZlciBmYWxsYmFjayBib3JkZXIgY29sb3JcclxuJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAjY2NjICFkZWZhdWx0O1xyXG5cclxuLy8qKiBQb3BvdmVyIHRpdGxlIGJhY2tncm91bmQgY29sb3JcclxuJHBvcG92ZXItdGl0bGUtYmc6ICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJHBvcG92ZXItYmcsIDMlKSAhZGVmYXVsdDtcclxuXHJcbi8vKiogUG9wb3ZlciBhcnJvdyB3aWR0aFxyXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XHJcbi8vKiogUG9wb3ZlciBhcnJvdyBjb2xvclxyXG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xyXG5cclxuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IHdpZHRoXHJcbiRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoOiAgICAgICAgICAgKCRwb3BvdmVyLWFycm93LXdpZHRoICsgMSkgIWRlZmF1bHQ7XHJcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyBjb2xvclxyXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICAgIGZhZGVfaW4oJHBvcG92ZXItYm9yZGVyLWNvbG9yLCAwLjA1KSAhZGVmYXVsdDtcclxuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IGZhbGxiYWNrIGNvbG9yXHJcbiRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOiAgZGFya2VuKCRwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvciwgMjAlKSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IExhYmVsc1xyXG4vL1xyXG4vLyMjXHJcblxyXG4vLyoqIERlZmF1bHQgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxyXG4kbGFiZWwtZGVmYXVsdC1iZzogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcclxuLy8qKiBQcmltYXJ5IGxhYmVsIGJhY2tncm91bmQgY29sb3JcclxuJGxhYmVsLXByaW1hcnktYmc6ICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XHJcbi8vKiogU3VjY2VzcyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXHJcbiRsYWJlbC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xyXG4vLyoqIEluZm8gbGFiZWwgYmFja2dyb3VuZCBjb2xvclxyXG4kbGFiZWwtaW5mby1iZzogICAgICAgICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcclxuLy8qKiBXYXJuaW5nIGxhYmVsIGJhY2tncm91bmQgY29sb3JcclxuJGxhYmVsLXdhcm5pbmctYmc6ICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XHJcbi8vKiogRGFuZ2VyIGxhYmVsIGJhY2tncm91bmQgY29sb3JcclxuJGxhYmVsLWRhbmdlci1iZzogICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcclxuXHJcbi8vKiogRGVmYXVsdCBsYWJlbCB0ZXh0IGNvbG9yXHJcbiRsYWJlbC1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbi8vKiogRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIGEgbGlua2VkIGxhYmVsXHJcbiRsYWJlbC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICNmZmYgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBNb2RhbHNcclxuLy9cclxuLy8jI1xyXG5cclxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcclxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgMTVweCAhZGVmYXVsdDtcclxuXHJcbi8vKiogUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCB0aXRsZVxyXG4kbW9kYWwtdGl0bGUtcGFkZGluZzogICAgICAgICAxNXB4ICFkZWZhdWx0O1xyXG4vLyoqIE1vZGFsIHRpdGxlIGxpbmUtaGVpZ2h0XHJcbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xyXG5cclxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIG1vZGFsIGNvbnRlbnQgYXJlYVxyXG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbi8vKiogTW9kYWwgY29udGVudCBib3JkZXIgY29sb3JcclxuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4yKSAhZGVmYXVsdDtcclxuLy8qKiBNb2RhbCBjb250ZW50IGJvcmRlciBjb2xvciAqKmZvciBJRTgqKlxyXG4kbW9kYWwtY29udGVudC1mYWxsYmFjay1ib3JkZXItY29sb3I6ICAgICAgICAgICM5OTkgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIE1vZGFsIGJhY2tkcm9wIGJhY2tncm91bmQgY29sb3JcclxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcclxuLy8qKiBNb2RhbCBiYWNrZHJvcCBvcGFjaXR5XHJcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgIC41ICFkZWZhdWx0O1xyXG4vLyoqIE1vZGFsIGhlYWRlciBib3JkZXIgY29sb3JcclxuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgI2U1ZTVlNSAhZGVmYXVsdDtcclxuLy8qKiBNb2RhbCBmb290ZXIgYm9yZGVyIGNvbG9yXHJcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xyXG5cclxuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgOTAwcHggIWRlZmF1bHQ7XHJcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgIDYwMHB4ICFkZWZhdWx0O1xyXG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IEFsZXJ0c1xyXG4vL1xyXG4vLyMjIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxyXG5cclxuJGFsZXJ0LXBhZGRpbmc6ICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcclxuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcclxuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgYm9sZCAhZGVmYXVsdDtcclxuXHJcbiRhbGVydC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLWJnICFkZWZhdWx0O1xyXG4kYWxlcnQtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0ICFkZWZhdWx0O1xyXG4kYWxlcnQtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XHJcblxyXG4kYWxlcnQtaW5mby1iZzogICAgICAgICAgICAgICAkc3RhdGUtaW5mby1iZyAhZGVmYXVsdDtcclxuJGFsZXJ0LWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcclxuJGFsZXJ0LWluZm8tYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWluZm8tYm9yZGVyICFkZWZhdWx0O1xyXG5cclxuJGFsZXJ0LXdhcm5pbmctYmc6ICAgICAgICAgICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XHJcbiRhbGVydC13YXJuaW5nLXRleHQ6ICAgICAgICAgICRzdGF0ZS13YXJuaW5nLXRleHQgIWRlZmF1bHQ7XHJcbiRhbGVydC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlciAhZGVmYXVsdDtcclxuXHJcbiRhbGVydC1kYW5nZXItYmc6ICAgICAgICAgICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XHJcbiRhbGVydC1kYW5nZXItdGV4dDogICAgICAgICAgICRzdGF0ZS1kYW5nZXItdGV4dCAhZGVmYXVsdDtcclxuJGFsZXJ0LWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBQcm9ncmVzcyBiYXJzXHJcbi8vXHJcbi8vIyNcclxuXHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgd2hvbGUgcHJvZ3Jlc3MgY29tcG9uZW50XHJcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XHJcbi8vKiogUHJvZ3Jlc3MgYmFyIHRleHQgY29sb3JcclxuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuLy8qKiBWYXJpYWJsZSBmb3Igc2V0dGluZyByb3VuZGVkIGNvcm5lcnMgb24gcHJvZ3Jlc3MgYmFyLlxyXG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xyXG5cclxuLy8qKiBEZWZhdWx0IHByb2dyZXNzIGJhciBjb2xvclxyXG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcclxuLy8qKiBTdWNjZXNzIHByb2dyZXNzIGJhciBjb2xvclxyXG4kcHJvZ3Jlc3MtYmFyLXN1Y2Nlc3MtYmc6ICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcclxuLy8qKiBXYXJuaW5nIHByb2dyZXNzIGJhciBjb2xvclxyXG4kcHJvZ3Jlc3MtYmFyLXdhcm5pbmctYmc6ICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcclxuLy8qKiBEYW5nZXIgcHJvZ3Jlc3MgYmFyIGNvbG9yXHJcbiRwcm9ncmVzcy1iYXItZGFuZ2VyLWJnOiAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XHJcbi8vKiogSW5mbyBwcm9ncmVzcyBiYXIgY29sb3JcclxuJHByb2dyZXNzLWJhci1pbmZvLWJnOiAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBMaXN0IGdyb3VwXHJcbi8vXHJcbi8vIyNcclxuXHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvbiBgLmxpc3QtZ3JvdXAtaXRlbWBcclxuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4vLyoqIGAubGlzdC1ncm91cC1pdGVtYCBib3JkZXIgY29sb3JcclxuJGxpc3QtZ3JvdXAtYm9yZGVyOiAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xyXG4vLyoqIExpc3QgZ3JvdXAgYm9yZGVyIHJhZGl1c1xyXG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2Ygc2luZ2xlIGxpc3QgaXRlbXMgb24gaG92ZXJcclxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xyXG4vLyoqIFRleHQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcclxuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcclxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGl0ZW1zXHJcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XHJcbi8vKiogQm9yZGVyIGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGVsZW1lbnRzXHJcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXI6ICAgICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xyXG4vLyoqIFRleHQgY29sb3IgZm9yIGNvbnRlbnQgd2l0aGluIGFjdGl2ZSBsaXN0IGl0ZW1zXHJcbiRsaXN0LWdyb3VwLWFjdGl2ZS10ZXh0LWNvbG9yOiAgbGlnaHRlbigkbGlzdC1ncm91cC1hY3RpdmUtYmcsIDQwJSkgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIFRleHQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xyXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcclxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIGRpc2FibGVkIGxpc3QgaXRlbXNcclxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcclxuLy8qKiBUZXh0IGNvbG9yIGZvciBjb250ZW50IHdpdGhpbiBkaXNhYmxlZCBsaXN0IGl0ZW1zXHJcbiRsaXN0LWdyb3VwLWRpc2FibGVkLXRleHQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yICFkZWZhdWx0O1xyXG5cclxuJGxpc3QtZ3JvdXAtbGluay1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xyXG4kbGlzdC1ncm91cC1saW5rLWhvdmVyLWNvbG9yOiAgICRsaXN0LWdyb3VwLWxpbmstY29sb3IgIWRlZmF1bHQ7XHJcbiRsaXN0LWdyb3VwLWxpbmstaGVhZGluZy1jb2xvcjogIzMzMyAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IFBhbmVsc1xyXG4vL1xyXG4vLyMjXHJcblxyXG4kcGFuZWwtYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kcGFuZWwtYm9keS1wYWRkaW5nOiAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xyXG4kcGFuZWwtaGVhZGluZy1wYWRkaW5nOiAgICAgICAxMHB4IDE1cHggIWRlZmF1bHQ7XHJcbiRwYW5lbC1mb290ZXItcGFkZGluZzogICAgICAgICRwYW5lbC1oZWFkaW5nLXBhZGRpbmcgIWRlZmF1bHQ7XHJcbiRwYW5lbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgZWxlbWVudHMgd2l0aGluIHBhbmVsc1xyXG4kcGFuZWwtaW5uZXItYm9yZGVyOiAgICAgICAgICAjZGRkICFkZWZhdWx0O1xyXG4kcGFuZWwtZm9vdGVyLWJnOiAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xyXG5cclxuJHBhbmVsLWRlZmF1bHQtdGV4dDogICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcclxuJHBhbmVsLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgI2RkZCAhZGVmYXVsdDtcclxuJHBhbmVsLWRlZmF1bHQtaGVhZGluZy1iZzogICAgI2Y1ZjVmNSAhZGVmYXVsdDtcclxuXHJcbiRwYW5lbC1wcmltYXJ5LXRleHQ6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRwYW5lbC1wcmltYXJ5LWJvcmRlcjogICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xyXG4kcGFuZWwtcHJpbWFyeS1oZWFkaW5nLWJnOiAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcclxuXHJcbiRwYW5lbC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XHJcbiRwYW5lbC1zdWNjZXNzLWJvcmRlcjogICAgICAgICRzdGF0ZS1zdWNjZXNzLWJvcmRlciAhZGVmYXVsdDtcclxuJHBhbmVsLXN1Y2Nlc3MtaGVhZGluZy1iZzogICAgJHN0YXRlLXN1Y2Nlc3MtYmcgIWRlZmF1bHQ7XHJcblxyXG4kcGFuZWwtaW5mby10ZXh0OiAgICAgICAgICAgICAkc3RhdGUtaW5mby10ZXh0ICFkZWZhdWx0O1xyXG4kcGFuZWwtaW5mby1ib3JkZXI6ICAgICAgICAgICAkc3RhdGUtaW5mby1ib3JkZXIgIWRlZmF1bHQ7XHJcbiRwYW5lbC1pbmZvLWhlYWRpbmctYmc6ICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xyXG5cclxuJHBhbmVsLXdhcm5pbmctdGV4dDogICAgICAgICAgJHN0YXRlLXdhcm5pbmctdGV4dCAhZGVmYXVsdDtcclxuJHBhbmVsLXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xyXG4kcGFuZWwtd2FybmluZy1oZWFkaW5nLWJnOiAgICAkc3RhdGUtd2FybmluZy1iZyAhZGVmYXVsdDtcclxuXHJcbiRwYW5lbC1kYW5nZXItdGV4dDogICAgICAgICAgICRzdGF0ZS1kYW5nZXItdGV4dCAhZGVmYXVsdDtcclxuJHBhbmVsLWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XHJcbiRwYW5lbC1kYW5nZXItaGVhZGluZy1iZzogICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBUaHVtYm5haWxzXHJcbi8vXHJcbi8vIyNcclxuXHJcbi8vKiogUGFkZGluZyBhcm91bmQgdGhlIHRodW1ibmFpbCBpbWFnZVxyXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICA0cHggIWRlZmF1bHQ7XHJcbi8vKiogVGh1bWJuYWlsIGJhY2tncm91bmQgY29sb3JcclxuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XHJcbi8vKiogVGh1bWJuYWlsIGJvcmRlciBjb2xvclxyXG4kdGh1bWJuYWlsLWJvcmRlcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xyXG4vLyoqIFRodW1ibmFpbCBib3JkZXIgcmFkaXVzXHJcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIEN1c3RvbSB0ZXh0IGNvbG9yIGZvciB0aHVtYm5haWwgY2FwdGlvbnNcclxuJHRodW1ibmFpbC1jYXB0aW9uLWNvbG9yOiAgICAgJHRleHQtY29sb3IgIWRlZmF1bHQ7XHJcbi8vKiogUGFkZGluZyBhcm91bmQgdGhlIHRodW1ibmFpbCBjYXB0aW9uXHJcbiR0aHVtYm5haWwtY2FwdGlvbi1wYWRkaW5nOiAgIDlweCAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IFdlbGxzXHJcbi8vXHJcbi8vIyNcclxuXHJcbiR3ZWxsLWJnOiAgICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XHJcbiR3ZWxsLWJvcmRlcjogICAgICAgICAgICAgICAgIGRhcmtlbigkd2VsbC1iZywgNyUpICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gQmFkZ2VzXHJcbi8vXHJcbi8vIyNcclxuXHJcbiRiYWRnZS1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbi8vKiogTGlua2VkIGJhZGdlIHRleHQgY29sb3Igb24gaG92ZXJcclxuJGJhZGdlLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJGJhZGdlLWJnOiAgICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIEJhZGdlIHRleHQgY29sb3IgaW4gYWN0aXZlIG5hdiBsaW5rXHJcbiRiYWRnZS1hY3RpdmUtY29sb3I6ICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xyXG4vLyoqIEJhZGdlIGJhY2tncm91bmQgY29sb3IgaW4gYWN0aXZlIG5hdiBsaW5rXHJcbiRiYWRnZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcblxyXG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICBib2xkICFkZWZhdWx0O1xyXG4kYmFkZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAxICFkZWZhdWx0O1xyXG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAxMHB4ICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gQnJlYWRjcnVtYnNcclxuLy9cclxuLy8jI1xyXG5cclxuJGJyZWFkY3J1bWItcGFkZGluZy12ZXJ0aWNhbDogICA4cHggIWRlZmF1bHQ7XHJcbiRicmVhZGNydW1iLXBhZGRpbmctaG9yaXpvbnRhbDogMTVweCAhZGVmYXVsdDtcclxuLy8qKiBCcmVhZGNydW1iIGJhY2tncm91bmQgY29sb3JcclxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xyXG4vLyoqIEJyZWFkY3J1bWIgdGV4dCBjb2xvclxyXG4kYnJlYWRjcnVtYi1jb2xvcjogICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XHJcbi8vKiogVGV4dCBjb2xvciBvZiBjdXJyZW50IHBhZ2UgaW4gdGhlIGJyZWFkY3J1bWJcclxuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcclxuLy8qKiBUZXh0dWFsIHNlcGFyYXRvciBmb3IgYmV0d2VlbiBicmVhZGNydW1iIGVsZW1lbnRzXHJcbiRicmVhZGNydW1iLXNlcGFyYXRvcjogICAgICAgICAgXCIvXCIgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBDYXJvdXNlbFxyXG4vL1xyXG4vLyMjXHJcblxyXG4kY2Fyb3VzZWwtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjYpICFkZWZhdWx0O1xyXG5cclxuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XHJcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgICAuNSAhZGVmYXVsdDtcclxuJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgIDIwcHggIWRlZmF1bHQ7XHJcblxyXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJGNhcm91c2VsLWluZGljYXRvci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcblxyXG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IENsb3NlXHJcbi8vXHJcbi8vIyNcclxuXHJcbiRjbG9zZS1mb250LXdlaWdodDogICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XHJcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XHJcbiRjbG9zZS10ZXh0LXNoYWRvdzogICAgICAgICAgIDAgMXB4IDAgI2ZmZiAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IENvZGVcclxuLy9cclxuLy8jI1xyXG5cclxuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgI2M3MjU0ZSAhZGVmYXVsdDtcclxuJGNvZGUtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y5ZjJmNCAhZGVmYXVsdDtcclxuXHJcbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XHJcblxyXG4kcHJlLWJnOiAgICAgICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xyXG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xyXG4kcHJlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xyXG4kcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDogICAzNDBweCAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IFR5cGVcclxuLy9cclxuLy8jI1xyXG5cclxuLy8qKiBIb3Jpem9udGFsIG9mZnNldCBmb3IgZm9ybXMgYW5kIGxpc3RzLlxyXG4kY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsOiAxODBweCAhZGVmYXVsdDtcclxuLy8qKiBUZXh0IG11dGVkIGNvbG9yXHJcbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG4vLyoqIEFiYnJldmlhdGlvbnMgYW5kIGFjcm9ueW1zIGJvcmRlciBjb2xvclxyXG4kYWJici1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcclxuLy8qKiBIZWFkaW5ncyBzbWFsbCBjb2xvclxyXG4kaGVhZGluZ3Mtc21hbGwtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcclxuLy8qKiBCbG9ja3F1b3RlIHNtYWxsIGNvbG9yXHJcbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG4vLyoqIEJsb2NrcXVvdGUgZm9udCBzaXplXHJcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgICAgICgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSAhZGVmYXVsdDtcclxuLy8qKiBCbG9ja3F1b3RlIGJvcmRlciBjb2xvclxyXG4kYmxvY2txdW90ZS1ib3JkZXItY29sb3I6ICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xyXG4vLyoqIFBhZ2UgaGVhZGVyIGJvcmRlciBjb2xvclxyXG4kcGFnZS1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xyXG4vLyoqIFdpZHRoIG9mIGhvcml6b250YWwgZGVzY3JpcHRpb24gbGlzdCB0aXRsZXNcclxuJGRsLWhvcml6b250YWwtb2Zmc2V0OiAgICAgICAgJGNvbXBvbmVudC1vZmZzZXQtaG9yaXpvbnRhbCAhZGVmYXVsdDtcclxuLy8qKiBQb2ludCBhdCB3aGljaCAuZGwtaG9yaXpvbnRhbCBiZWNvbWVzIGhvcml6b250YWxcclxuJGRsLWhvcml6b250YWwtYnJlYWtwb2ludDogICAgJGdyaWQtZmxvYXQtYnJlYWtwb2ludCAhZGVmYXVsdDtcclxuLy8qKiBIb3Jpem9udGFsIGxpbmUgY29sb3IuXHJcbiRoci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XHJcbiIsIi8vIE1peGluc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gVXRpbGl0aWVzXHJcbkBpbXBvcnQgXCJtaXhpbnMvaGlkZS10ZXh0XCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvb3BhY2l0eVwiO1xyXG5AaW1wb3J0IFwibWl4aW5zL2ltYWdlXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvbGFiZWxzXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtZmlsdGVyXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvcmVzaXplXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvcmVzcG9uc2l2ZS12aXNpYmlsaXR5XCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvc2l6ZVwiO1xyXG5AaW1wb3J0IFwibWl4aW5zL3RhYi1mb2N1c1wiO1xyXG5AaW1wb3J0IFwibWl4aW5zL3Jlc2V0LXRleHRcIjtcclxuQGltcG9ydCBcIm1peGlucy90ZXh0LWVtcGhhc2lzXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC1vdmVyZmxvd1wiO1xyXG5AaW1wb3J0IFwibWl4aW5zL3ZlbmRvci1wcmVmaXhlc1wiO1xyXG5cclxuLy8gQ29tcG9uZW50c1xyXG5AaW1wb3J0IFwibWl4aW5zL2FsZXJ0c1wiO1xyXG5AaW1wb3J0IFwibWl4aW5zL2J1dHRvbnNcIjtcclxuQGltcG9ydCBcIm1peGlucy9wYW5lbHNcIjtcclxuQGltcG9ydCBcIm1peGlucy9wYWdpbmF0aW9uXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvbGlzdC1ncm91cFwiO1xyXG5AaW1wb3J0IFwibWl4aW5zL25hdi1kaXZpZGVyXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvZm9ybXNcIjtcclxuQGltcG9ydCBcIm1peGlucy9wcm9ncmVzcy1iYXJcIjtcclxuQGltcG9ydCBcIm1peGlucy90YWJsZS1yb3dcIjtcclxuXHJcbi8vIFNraW5zXHJcbkBpbXBvcnQgXCJtaXhpbnMvYmFja2dyb3VuZC12YXJpYW50XCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvYm9yZGVyLXJhZGl1c1wiO1xyXG5AaW1wb3J0IFwibWl4aW5zL2dyYWRpZW50c1wiO1xyXG5cclxuLy8gTGF5b3V0XHJcbkBpbXBvcnQgXCJtaXhpbnMvY2xlYXJmaXhcIjtcclxuQGltcG9ydCBcIm1peGlucy9jZW50ZXItYmxvY2tcIjtcclxuQGltcG9ydCBcIm1peGlucy9uYXYtdmVydGljYWwtYWxpZ25cIjtcclxuQGltcG9ydCBcIm1peGlucy9ncmlkLWZyYW1ld29ya1wiO1xyXG5AaW1wb3J0IFwibWl4aW5zL2dyaWRcIjtcclxuIiwiLy8gQ1NTIGltYWdlIHJlcGxhY2VtZW50XHJcbi8vXHJcbi8vIEhlYWRzIHVwISB2MyBsYXVuY2hlZCB3aXRoIG9ubHkgYC5oaWRlLXRleHQoKWAsIGJ1dCBwZXIgb3VyIHBhdHRlcm4gZm9yXHJcbi8vIG1peGlucyBiZWluZyByZXVzZWQgYXMgY2xhc3NlcyB3aXRoIHRoZSBzYW1lIG5hbWUsIHRoaXMgZG9lc24ndCBob2xkIHVwLiBBc1xyXG4vLyBvZiB2My4wLjEgd2UgaGF2ZSBhZGRlZCBgLnRleHQtaGlkZSgpYCBhbmQgZGVwcmVjYXRlZCBgLmhpZGUtdGV4dCgpYC5cclxuLy9cclxuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9jb21taXQvYWEwMzk2ZWFlNzU3XHJcblxyXG4vLyBEZXByZWNhdGVkIGFzIG9mIHYzLjAuMSAoaGFzIGJlZW4gcmVtb3ZlZCBpbiB2NClcclxuQG1peGluIGhpZGUtdGV4dCgpIHtcclxuICBmb250OiAwLzAgYTtcclxuICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyOiAwO1xyXG59XHJcblxyXG4vLyBOZXcgbWl4aW4gdG8gdXNlIGFzIG9mIHYzLjAuMVxyXG5AbWl4aW4gdGV4dC1oaWRlKCkge1xyXG4gIEBpbmNsdWRlIGhpZGUtdGV4dDtcclxufVxyXG4iLCIvLyBPcGFjaXR5XHJcblxyXG5AbWl4aW4gb3BhY2l0eSgkb3BhY2l0eSkge1xyXG4gIG9wYWNpdHk6ICRvcGFjaXR5O1xyXG4gIC8vIElFOCBmaWx0ZXJcclxuICAkb3BhY2l0eS1pZTogKCRvcGFjaXR5ICogMTAwKTtcclxuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9JG9wYWNpdHktaWUpO1xyXG59XHJcbiIsIi8vIEltYWdlIE1peGluc1xyXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2VcclxuLy8gLSBSZXRpbmEgaW1hZ2VcclxuXHJcblxyXG4vLyBSZXNwb25zaXZlIGltYWdlXHJcbi8vXHJcbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXHJcbkBtaXhpbiBpbWctcmVzcG9uc2l2ZSgkZGlzcGxheTogYmxvY2spIHtcclxuICBkaXNwbGF5OiAkZGlzcGxheTtcclxuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XHJcbiAgaGVpZ2h0OiBhdXRvOyAvLyBQYXJ0IDI6IFNjYWxlIHRoZSBoZWlnaHQgYWNjb3JkaW5nIHRvIHRoZSB3aWR0aCwgb3RoZXJ3aXNlIHlvdSBnZXQgc3RyZXRjaGluZ1xyXG59XHJcblxyXG5cclxuLy8gUmV0aW5hIGltYWdlXHJcbi8vXHJcbi8vIFNob3J0IHJldGluYSBtaXhpbiBmb3Igc2V0dGluZyBiYWNrZ3JvdW5kLWltYWdlIGFuZCAtc2l6ZS4gTm90ZSB0aGF0IHRoZVxyXG4vLyBzcGVsbGluZyBvZiBgbWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvYCBpcyBpbnRlbnRpb25hbC5cclxuQG1peGluIGltZy1yZXRpbmEoJGZpbGUtMXgsICRmaWxlLTJ4LCAkd2lkdGgtMXgsICRoZWlnaHQtMXgpIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1pbWFnZS1wYXRoKFwiI3skZmlsZS0xeH1cIiksIFwiI3skZmlsZS0xeH1cIikpO1xyXG5cclxuICBAbWVkaWFcclxuICBvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksXHJcbiAgb25seSBzY3JlZW4gYW5kICggICBtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxyXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyLzEpLFxyXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAgICBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcclxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgICAgICAgICBtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSxcclxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgICAgICAgICBtaW4tcmVzb2x1dGlvbjogMmRwcHgpIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWltYWdlLXBhdGgoXCIjeyRmaWxlLTJ4fVwiKSwgXCIjeyRmaWxlLTJ4fVwiKSk7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICR3aWR0aC0xeCAkaGVpZ2h0LTF4O1xyXG4gIH1cclxufVxyXG4iLCIvLyBMYWJlbHNcclxuXHJcbkBtaXhpbiBsYWJlbC12YXJpYW50KCRjb2xvcikge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxuXHJcbiAgJltocmVmXSB7XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIFJlc2V0IGZpbHRlcnMgZm9yIElFXHJcbi8vXHJcbi8vIFdoZW4geW91IG5lZWQgdG8gcmVtb3ZlIGEgZ3JhZGllbnQgYmFja2dyb3VuZCwgZG8gbm90IGZvcmdldCB0byB1c2UgdGhpcyB0byByZXNldFxyXG4vLyB0aGUgSUUgZmlsdGVyIGZvciBJRTkgYW5kIGJlbG93LlxyXG5cclxuQG1peGluIHJlc2V0LWZpbHRlcigpIHtcclxuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChlbmFibGVkID0gZmFsc2UpO1xyXG59XHJcbiIsIi8vIFJlc2l6ZSBhbnl0aGluZ1xyXG5cclxuQG1peGluIHJlc2l6YWJsZSgkZGlyZWN0aW9uKSB7XHJcbiAgcmVzaXplOiAkZGlyZWN0aW9uOyAvLyBPcHRpb25zOiBob3Jpem9udGFsLCB2ZXJ0aWNhbCwgYm90aFxyXG4gIG92ZXJmbG93OiBhdXRvOyAvLyBQZXIgQ1NTMyBVSSwgYHJlc2l6ZWAgb25seSBhcHBsaWVzIHdoZW4gYG92ZXJmbG93YCBpc24ndCBgdmlzaWJsZWBcclxufVxyXG4iLCIvLyBSZXNwb25zaXZlIHV0aWxpdGllc1xyXG5cclxuLy9cclxuLy8gTW9yZSBlYXNpbHkgaW5jbHVkZSBhbGwgdGhlIHN0YXRlcyBmb3IgcmVzcG9uc2l2ZS11dGlsaXRpZXMubGVzcy5cclxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXHJcbkBtaXhpbiByZXNwb25zaXZlLXZpc2liaWxpdHkoJHBhcmVudCkge1xyXG4gICN7JHBhcmVudH0ge1xyXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbiAgdGFibGUjeyRwYXJlbnR9ICB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cclxuICB0ciN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cclxuICB0aCN7JHBhcmVudH0sXHJcbiAgdGQjeyRwYXJlbnR9ICAgICB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxyXG59XHJcblxyXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcclxuQG1peGluIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCRwYXJlbnQpIHtcclxuICAjeyRwYXJlbnR9IHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuIiwiLy8gU2l6aW5nIHNob3J0Y3V0c1xyXG5cclxuQG1peGluIHNpemUoJHdpZHRoLCAkaGVpZ2h0KSB7XHJcbiAgd2lkdGg6ICR3aWR0aDtcclxuICBoZWlnaHQ6ICRoZWlnaHQ7XHJcbn1cclxuXHJcbkBtaXhpbiBzcXVhcmUoJHNpemUpIHtcclxuICBAaW5jbHVkZSBzaXplKCRzaXplLCAkc2l6ZSk7XHJcbn1cclxuIiwiLy8gV2ViS2l0LXN0eWxlIGZvY3VzXHJcblxyXG5AbWl4aW4gdGFiLWZvY3VzKCkge1xyXG4gIC8vIFdlYktpdC1zcGVjaWZpYy4gT3RoZXIgYnJvd3NlcnMgd2lsbCBrZWVwIHRoZWlyIGRlZmF1bHQgb3V0bGluZSBzdHlsZS5cclxuICAvLyAoSW5pdGlhbGx5IHRyaWVkIHRvIGFsc28gZm9yY2UgZGVmYXVsdCB2aWEgYG91dGxpbmU6IGluaXRpYWxgLFxyXG4gIC8vIGJ1dCB0aGF0IHNlZW1zIHRvIGVycm9uZW91c2x5IHJlbW92ZSB0aGUgb3V0bGluZSBpbiBGaXJlZm94IGFsdG9nZXRoZXIuKVxyXG4gIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtcclxuICBvdXRsaW5lLW9mZnNldDogLTJweDtcclxufVxyXG4iLCJAbWl4aW4gcmVzZXQtdGV4dCgpIHtcclxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XHJcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUuXHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcclxuICBsaW5lLWJyZWFrOiBhdXRvO1xyXG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcclxuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXHJcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIHRleHQtc2hhZG93OiBub25lO1xyXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XHJcbiAgd29yZC1icmVhazogbm9ybWFsO1xyXG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xyXG4gIHdvcmQtd3JhcDogbm9ybWFsO1xyXG59XHJcbiIsIi8vIFR5cG9ncmFwaHlcclxuXHJcbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xyXG5AbWl4aW4gdGV4dC1lbXBoYXNpcy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xyXG4gICN7JHBhcmVudH0ge1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuICB9XHJcbiAgYSN7JHBhcmVudH06aG92ZXIsXHJcbiAgYSN7JHBhcmVudH06Zm9jdXMge1xyXG4gICAgY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XHJcbiAgfVxyXG59XHJcbiIsIi8vIFRleHQgb3ZlcmZsb3dcclxuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xyXG5cclxuQG1peGluIHRleHQtb3ZlcmZsb3coKSB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcbiIsIi8vIFZlbmRvciBQcmVmaXhlc1xyXG4vL1xyXG4vLyBBbGwgdmVuZG9yIG1peGlucyBhcmUgZGVwcmVjYXRlZCBhcyBvZiB2My4yLjAgZHVlIHRvIHRoZSBpbnRyb2R1Y3Rpb24gb2ZcclxuLy8gQXV0b3ByZWZpeGVyIGluIG91ciBHcnVudGZpbGUuIFRoZXkgaGF2ZSBiZWVuIHJlbW92ZWQgaW4gdjQuXHJcblxyXG4vLyAtIEFuaW1hdGlvbnNcclxuLy8gLSBCYWNrZmFjZSB2aXNpYmlsaXR5XHJcbi8vIC0gQm94IHNoYWRvd1xyXG4vLyAtIEJveCBzaXppbmdcclxuLy8gLSBDb250ZW50IGNvbHVtbnNcclxuLy8gLSBIeXBoZW5zXHJcbi8vIC0gUGxhY2Vob2xkZXIgdGV4dFxyXG4vLyAtIFRyYW5zZm9ybWF0aW9uc1xyXG4vLyAtIFRyYW5zaXRpb25zXHJcbi8vIC0gVXNlciBTZWxlY3RcclxuXHJcblxyXG4vLyBBbmltYXRpb25zXHJcbkBtaXhpbiBhbmltYXRpb24oJGFuaW1hdGlvbikge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xyXG4gICAgICAgLW8tYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xyXG4gICAgICAgICAgYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xyXG59XHJcbkBtaXhpbiBhbmltYXRpb24tbmFtZSgkbmFtZSkge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ICRuYW1lO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6ICRuYW1lO1xyXG59XHJcbkBtaXhpbiBhbmltYXRpb24tZHVyYXRpb24oJGR1cmF0aW9uKSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcclxuICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xyXG59XHJcbkBtaXhpbiBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uKCR0aW1pbmctZnVuY3Rpb24pIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XHJcbiAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xyXG59XHJcbkBtaXhpbiBhbmltYXRpb24tZGVsYXkoJGRlbGF5KSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6ICRkZWxheTtcclxuICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogJGRlbGF5O1xyXG59XHJcbkBtaXhpbiBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50KCRpdGVyYXRpb24tY291bnQpIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6ICRpdGVyYXRpb24tY291bnQ7XHJcbiAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkaXRlcmF0aW9uLWNvdW50O1xyXG59XHJcbkBtaXhpbiBhbmltYXRpb24tZGlyZWN0aW9uKCRkaXJlY3Rpb24pIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246ICRkaXJlY3Rpb247XHJcbiAgICAgICAgICBhbmltYXRpb24tZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xyXG59XHJcbkBtaXhpbiBhbmltYXRpb24tZmlsbC1tb2RlKCRmaWxsLW1vZGUpIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XHJcbiAgICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiAkZmlsbC1tb2RlO1xyXG59XHJcblxyXG4vLyBCYWNrZmFjZSB2aXNpYmlsaXR5XHJcbi8vIFByZXZlbnQgYnJvd3NlcnMgZnJvbSBmbGlja2VyaW5nIHdoZW4gdXNpbmcgQ1NTIDNEIHRyYW5zZm9ybXMuXHJcbi8vIERlZmF1bHQgdmFsdWUgaXMgYHZpc2libGVgLCBidXQgY2FuIGJlIGNoYW5nZWQgdG8gYGhpZGRlbmBcclxuXHJcbkBtaXhpbiBiYWNrZmFjZS12aXNpYmlsaXR5KCR2aXNpYmlsaXR5KSB7XHJcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcclxuICAgICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xyXG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XHJcbn1cclxuXHJcbi8vIERyb3Agc2hhZG93c1xyXG4vL1xyXG4vLyBOb3RlOiBEZXByZWNhdGVkIGAuYm94LXNoYWRvdygpYCBhcyBvZiB2My4xLjAgc2luY2UgYWxsIG9mIEJvb3RzdHJhcCdzXHJcbi8vIHN1cHBvcnRlZCBicm93c2VycyB0aGF0IGhhdmUgYm94IHNoYWRvdyBjYXBhYmlsaXRpZXMgbm93IHN1cHBvcnQgaXQuXHJcblxyXG5AbWl4aW4gYm94LXNoYWRvdygkc2hhZG93Li4uKSB7XHJcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAkc2hhZG93OyAvLyBpT1MgPDQuMyAmIEFuZHJvaWQgPDQuMVxyXG4gICAgICAgICAgYm94LXNoYWRvdzogJHNoYWRvdztcclxufVxyXG5cclxuLy8gQm94IHNpemluZ1xyXG5AbWl4aW4gYm94LXNpemluZygkYm94bW9kZWwpIHtcclxuICAtd2Via2l0LWJveC1zaXppbmc6ICRib3htb2RlbDtcclxuICAgICAtbW96LWJveC1zaXppbmc6ICRib3htb2RlbDtcclxuICAgICAgICAgIGJveC1zaXppbmc6ICRib3htb2RlbDtcclxufVxyXG5cclxuLy8gQ1NTMyBDb250ZW50IENvbHVtbnNcclxuQG1peGluIGNvbnRlbnQtY29sdW1ucygkY29sdW1uLWNvdW50LCAkY29sdW1uLWdhcDogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XHJcbiAgLXdlYmtpdC1jb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XHJcbiAgICAgLW1vei1jb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XHJcbiAgICAgICAgICBjb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XHJcbiAgLXdlYmtpdC1jb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcclxuICAgICAtbW96LWNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xyXG4gICAgICAgICAgY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XHJcbn1cclxuXHJcbi8vIE9wdGlvbmFsIGh5cGhlbmF0aW9uXHJcbkBtaXhpbiBoeXBoZW5zKCRtb2RlOiBhdXRvKSB7XHJcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xyXG4gIC13ZWJraXQtaHlwaGVuczogJG1vZGU7XHJcbiAgICAgLW1vei1oeXBoZW5zOiAkbW9kZTtcclxuICAgICAgLW1zLWh5cGhlbnM6ICRtb2RlOyAvLyBJRTEwK1xyXG4gICAgICAgLW8taHlwaGVuczogJG1vZGU7XHJcbiAgICAgICAgICBoeXBoZW5zOiAkbW9kZTtcclxufVxyXG5cclxuLy8gUGxhY2Vob2xkZXIgdGV4dFxyXG5AbWl4aW4gcGxhY2Vob2xkZXIoJGNvbG9yOiAkaW5wdXQtY29sb3ItcGxhY2Vob2xkZXIpIHtcclxuICAvLyBGaXJlZm94XHJcbiAgJjo6LW1vei1wbGFjZWhvbGRlciB7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgb3BhY2l0eTogMTsgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjZcclxuICB9XHJcbiAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyBjb2xvcjogJGNvbG9yOyB9IC8vIEludGVybmV0IEV4cGxvcmVyIDEwK1xyXG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgIHsgY29sb3I6ICRjb2xvcjsgfSAvLyBTYWZhcmkgYW5kIENocm9tZVxyXG59XHJcblxyXG4vLyBUcmFuc2Zvcm1hdGlvbnNcclxuQG1peGluIHNjYWxlKCRyYXRpby4uLikge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pOyAvLyBJRTkgb25seVxyXG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xyXG59XHJcblxyXG5AbWl4aW4gc2NhbGVYKCRyYXRpbykge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7IC8vIElFOSBvbmx5XHJcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcclxufVxyXG5AbWl4aW4gc2NhbGVZKCRyYXRpbykge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7IC8vIElFOSBvbmx5XHJcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcclxufVxyXG5AbWl4aW4gc2tldygkeCwgJHkpIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTsgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvNDg4NTsgSUU5K1xyXG4gICAgICAgLW8tdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xyXG59XHJcbkBtaXhpbiB0cmFuc2xhdGUoJHgsICR5KSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTsgLy8gSUU5IG9ubHlcclxuICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xyXG59XHJcbkBtaXhpbiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KTtcclxufVxyXG5AbWl4aW4gcm90YXRlKCRkZWdyZWVzKSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7IC8vIElFOSBvbmx5XHJcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XHJcbn1cclxuQG1peGluIHJvdGF0ZVgoJGRlZ3JlZXMpIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxyXG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XHJcbn1cclxuQG1peGluIHJvdGF0ZVkoJGRlZ3JlZXMpIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxyXG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XHJcbn1cclxuQG1peGluIHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkge1xyXG4gIC13ZWJraXQtcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcclxuICAgICAtbW96LXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XHJcbiAgICAgICAgICBwZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xyXG59XHJcbkBtaXhpbiBwZXJzcGVjdGl2ZS1vcmlnaW4oJHBlcnNwZWN0aXZlKSB7XHJcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcclxuICAgICAtbW96LXBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xyXG4gICAgICAgICAgcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XHJcbn1cclxuQG1peGluIHRyYW5zZm9ybS1vcmlnaW4oJG9yaWdpbikge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcclxuICAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XHJcbiAgICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luOyAvLyBJRTkgb25seVxyXG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcclxufVxyXG5cclxuXHJcbi8vIFRyYW5zaXRpb25zXHJcblxyXG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XHJcbiAgICAgICAtby10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcclxuICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xyXG59XHJcbkBtaXhpbiB0cmFuc2l0aW9uLXByb3BlcnR5KCR0cmFuc2l0aW9uLXByb3BlcnR5Li4uKSB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAkdHJhbnNpdGlvbi1wcm9wZXJ0eTtcclxuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6ICR0cmFuc2l0aW9uLXByb3BlcnR5O1xyXG59XHJcbkBtaXhpbiB0cmFuc2l0aW9uLWRlbGF5KCR0cmFuc2l0aW9uLWRlbGF5KSB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcclxuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6ICR0cmFuc2l0aW9uLWRlbGF5O1xyXG59XHJcbkBtaXhpbiB0cmFuc2l0aW9uLWR1cmF0aW9uKCR0cmFuc2l0aW9uLWR1cmF0aW9uLi4uKSB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcclxuICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xyXG59XHJcbkBtaXhpbiB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbigkdGltaW5nLWZ1bmN0aW9uKSB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcclxuICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xyXG59XHJcbkBtaXhpbiB0cmFuc2l0aW9uLXRyYW5zZm9ybSgkdHJhbnNpdGlvbi4uLikge1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gJHRyYW5zaXRpb247XHJcbiAgICAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcclxuICAgICAgIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcclxuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcclxufVxyXG5cclxuXHJcbi8vIFVzZXIgc2VsZWN0XHJcbi8vIEZvciBzZWxlY3RpbmcgdGV4dCBvbiB0aGUgcGFnZVxyXG5cclxuQG1peGluIHVzZXItc2VsZWN0KCRzZWxlY3QpIHtcclxuICAtd2Via2l0LXVzZXItc2VsZWN0OiAkc2VsZWN0O1xyXG4gICAgIC1tb3otdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XHJcbiAgICAgIC1tcy11c2VyLXNlbGVjdDogJHNlbGVjdDsgLy8gSUUxMCtcclxuICAgICAgICAgIHVzZXItc2VsZWN0OiAkc2VsZWN0O1xyXG59XHJcbiIsIi8vIEFsZXJ0c1xyXG5cclxuQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICR0ZXh0LWNvbG9yKSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XHJcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xyXG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcclxuXHJcbiAgaHIge1xyXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRib3JkZXIsIDUlKTtcclxuICB9XHJcbiAgLmFsZXJ0LWxpbmsge1xyXG4gICAgY29sb3I6IGRhcmtlbigkdGV4dC1jb2xvciwgMTAlKTtcclxuICB9XHJcbn1cclxuIiwiLy8gQnV0dG9uIHZhcmlhbnRzXHJcbi8vXHJcbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcclxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXHJcblxyXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGNvbG9yLCAkYmFja2dyb3VuZCwgJGJvcmRlcikge1xyXG4gIGNvbG9yOiAkY29sb3I7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XHJcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xyXG5cclxuICAmOmZvY3VzLFxyXG4gICYuZm9jdXMge1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcclxuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAyNSUpO1xyXG4gIH1cclxuICAmOmhvdmVyIHtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMTIlKTtcclxuICB9XHJcbiAgJjphY3RpdmUsXHJcbiAgJi5hY3RpdmUsXHJcbiAgLm9wZW4gPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDEyJSk7XHJcblxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMsXHJcbiAgICAmLmZvY3VzIHtcclxuICAgICAgY29sb3I6ICRjb2xvcjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxNyUpO1xyXG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMjUlKTtcclxuICAgIH1cclxuICB9XHJcbiAgJjphY3RpdmUsXHJcbiAgJi5hY3RpdmUsXHJcbiAgLm9wZW4gPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG4gIH1cclxuICAmLmRpc2FibGVkLFxyXG4gICZbZGlzYWJsZWRdLFxyXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJi5mb2N1cyB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xyXG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmJhZGdlIHtcclxuICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxuICB9XHJcbn1cclxuXHJcbi8vIEJ1dHRvbiBzaXplc1xyXG5AbWl4aW4gYnV0dG9uLXNpemUoJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcclxuICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcclxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xyXG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xyXG59XHJcbiIsIi8vIFBhbmVsc1xyXG5cclxuQG1peGluIHBhbmVsLXZhcmlhbnQoJGJvcmRlciwgJGhlYWRpbmctdGV4dC1jb2xvciwgJGhlYWRpbmctYmctY29sb3IsICRoZWFkaW5nLWJvcmRlcikge1xyXG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcclxuXHJcbiAgJiA+IC5wYW5lbC1oZWFkaW5nIHtcclxuICAgIGNvbG9yOiAkaGVhZGluZy10ZXh0LWNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRpbmctYmctY29sb3I7XHJcbiAgICBib3JkZXItY29sb3I6ICRoZWFkaW5nLWJvcmRlcjtcclxuXHJcbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcclxuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJvcmRlcjtcclxuICAgIH1cclxuICAgIC5iYWRnZSB7XHJcbiAgICAgIGNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRpbmctdGV4dC1jb2xvcjtcclxuICAgIH1cclxuICB9XHJcbiAgJiA+IC5wYW5lbC1mb290ZXIge1xyXG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XHJcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRib3JkZXI7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIFBhZ2luYXRpb25cclxuXHJcbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcclxuICA+IGxpIHtcclxuICAgID4gYSxcclxuICAgID4gc3BhbiB7XHJcbiAgICAgIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XHJcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcclxuICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcclxuICAgIH1cclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICA+IGEsXHJcbiAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgPiBhLFxyXG4gICAgICA+IHNwYW4ge1xyXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIExpc3QgR3JvdXBzXHJcblxyXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGNvbG9yKSB7XHJcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xyXG5cclxuICAgIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJiwgYnV0dG9uJiB0byBhLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0sIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9XHJcbiAgfVxyXG5cclxuICBhLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0sXHJcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuXHJcbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xyXG4gICAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xyXG4gICAgfVxyXG4gICAgJi5hY3RpdmUsXHJcbiAgICAmLmFjdGl2ZTpob3ZlcixcclxuICAgICYuYWN0aXZlOmZvY3VzIHtcclxuICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIEhvcml6b250YWwgZGl2aWRlcnNcclxuLy9cclxuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIGRyb3Bkb3ducyBhbmQgbmF2IGxpc3RzXHJcblxyXG5AbWl4aW4gbmF2LWRpdmlkZXIoJGNvbG9yOiAjZTVlNWU1KSB7XHJcbiAgaGVpZ2h0OiAxcHg7XHJcbiAgbWFyZ2luOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpIC0gMSkgMDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxufVxyXG4iLCIvLyBGb3JtIHZhbGlkYXRpb24gc3RhdGVzXHJcbi8vXHJcbi8vIFVzZWQgaW4gZm9ybXMubGVzcyB0byBnZW5lcmF0ZSB0aGUgZm9ybSB2YWxpZGF0aW9uIENTUyBmb3Igd2FybmluZ3MsIGVycm9ycyxcclxuLy8gYW5kIHN1Y2Nlc3Nlcy5cclxuXHJcbkBtaXhpbiBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkdGV4dC1jb2xvcjogIzU1NSwgJGJvcmRlci1jb2xvcjogI2NjYywgJGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjUpIHtcclxuICAvLyBDb2xvciB0aGUgbGFiZWwgYW5kIGhlbHAgdGV4dFxyXG4gIC5oZWxwLWJsb2NrLFxyXG4gIC5jb250cm9sLWxhYmVsLFxyXG4gIC5yYWRpbyxcclxuICAuY2hlY2tib3gsXHJcbiAgLnJhZGlvLWlubGluZSxcclxuICAuY2hlY2tib3gtaW5saW5lLFxyXG4gICYucmFkaW8gbGFiZWwsXHJcbiAgJi5jaGVja2JveCBsYWJlbCxcclxuICAmLnJhZGlvLWlubGluZSBsYWJlbCxcclxuICAmLmNoZWNrYm94LWlubGluZSBsYWJlbCAge1xyXG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gIH1cclxuICAvLyBTZXQgdGhlIGJvcmRlciBhbmQgYm94IHNoYWRvdyBvbiBzcGVjaWZpYyBpbnB1dHMgdG8gbWF0Y2hcclxuICAuZm9ybS1jb250cm9sIHtcclxuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcclxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSkpOyAvLyBSZWRlY2xhcmUgc28gdHJhbnNpdGlvbnMgd29ya1xyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXItY29sb3IsIDEwJSk7XHJcbiAgICAgICRzaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLCAwIDAgNnB4IGxpZ2h0ZW4oJGJvcmRlci1jb2xvciwgMjAlKTtcclxuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkc2hhZG93KTtcclxuICAgIH1cclxuICB9XHJcbiAgLy8gU2V0IHZhbGlkYXRpb24gc3RhdGVzIGFsc28gZm9yIGFkZG9uc1xyXG4gIC5pbnB1dC1ncm91cC1hZGRvbiB7XHJcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XHJcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcclxuICB9XHJcbiAgLy8gT3B0aW9uYWwgZmVlZGJhY2sgaWNvblxyXG4gIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xyXG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEZvcm0gY29udHJvbCBmb2N1cyBzdGF0ZVxyXG4vL1xyXG4vLyBHZW5lcmF0ZSBhIGN1c3RvbWl6ZWQgZm9jdXMgc3RhdGUgYW5kIGZvciBhbnkgaW5wdXQgd2l0aCB0aGUgc3BlY2lmaWVkIGNvbG9yLFxyXG4vLyB3aGljaCBkZWZhdWx0cyB0byB0aGUgYCRpbnB1dC1ib3JkZXItZm9jdXNgIHZhcmlhYmxlLlxyXG4vL1xyXG4vLyBXZSBoaWdobHkgZW5jb3VyYWdlIHlvdSB0byBub3QgY3VzdG9taXplIHRoZSBkZWZhdWx0IHZhbHVlLCBidXQgaW5zdGVhZCB1c2VcclxuLy8gdGhpcyB0byB0d2VhayBjb2xvcnMgb24gYW4gYXMtbmVlZGVkIGJhc2lzLiBUaGlzIGFlc3RoZXRpYyBjaGFuZ2UgaXMgYmFzZWQgb25cclxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xyXG4vLyB1c2FiaWxpdHkgYW5kIGFjY2Vzc2liaWxpdHkgc2hvdWxkIGJlIHRha2VuIGludG8gYWNjb3VudCB3aXRoIGFueSBjaGFuZ2UuXHJcbi8vXHJcbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcclxuLy8gY29udHJhc3QgYWdhaW5zdCBhIGRhcmsgZ3JheSBiYWNrZ3JvdW5kLlxyXG5AbWl4aW4gZm9ybS1jb250cm9sLWZvY3VzKCRjb2xvcjogJGlucHV0LWJvcmRlci1mb2N1cykge1xyXG4gICRjb2xvci1yZ2JhOiByZ2JhKHJlZCgkY29sb3IpLCBncmVlbigkY29sb3IpLCBibHVlKCRjb2xvciksIC42KTtcclxuICAmOmZvY3VzIHtcclxuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xyXG4gICAgb3V0bGluZTogMDtcclxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSksIDAgMCA4cHggJGNvbG9yLXJnYmEpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xyXG4vL1xyXG4vLyBSZWxhdGl2ZSB0ZXh0IHNpemUsIHBhZGRpbmcsIGFuZCBib3JkZXItcmFkaWkgY2hhbmdlcyBmb3IgZm9ybSBjb250cm9scy4gRm9yXHJcbi8vIGhvcml6b250YWwgc2l6aW5nLCB3cmFwIGNvbnRyb2xzIGluIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy4gYDxzZWxlY3Q+YFxyXG4vLyBlbGVtZW50IGdldHMgc3BlY2lhbCBsb3ZlIGJlY2F1c2UgaXQncyBzcGVjaWFsLCBhbmQgdGhhdCdzIGEgZmFjdCFcclxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXHJcbkBtaXhpbiBpbnB1dC1zaXplKCRwYXJlbnQsICRpbnB1dC1oZWlnaHQsICRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XHJcbiAgI3skcGFyZW50fSB7XHJcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XHJcbiAgICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xyXG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcclxuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xyXG4gIH1cclxuXHJcbiAgc2VsZWN0I3skcGFyZW50fSB7XHJcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XHJcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodDtcclxuICB9XHJcblxyXG4gIHRleHRhcmVhI3skcGFyZW50fSxcclxuICBzZWxlY3RbbXVsdGlwbGVdI3skcGFyZW50fSB7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgfVxyXG59XHJcbiIsIi8vIFByb2dyZXNzIGJhcnNcclxuXHJcbkBtaXhpbiBwcm9ncmVzcy1iYXItdmFyaWFudCgkY29sb3IpIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XHJcblxyXG4gIC8vIERlcHJlY2F0ZWQgcGFyZW50IGNsYXNzIHJlcXVpcmVtZW50IGFzIG9mIHYzLjIuMFxyXG4gIC5wcm9ncmVzcy1zdHJpcGVkICYge1xyXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZDtcclxuICB9XHJcbn1cclxuIiwiLy8gVGFibGVzXHJcblxyXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCkge1xyXG4gIC8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XHJcbiAgLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cclxuICAudGFibGUgPiB0aGVhZCA+IHRyLFxyXG4gIC50YWJsZSA+IHRib2R5ID4gdHIsXHJcbiAgLnRhYmxlID4gdGZvb3QgPiB0ciB7XHJcbiAgICA+IHRkLiN7JHN0YXRlfSxcclxuICAgID4gdGguI3skc3RhdGV9LFxyXG4gICAgJi4jeyRzdGF0ZX0gPiB0ZCxcclxuICAgICYuI3skc3RhdGV9ID4gdGgge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIEhvdmVyIHN0YXRlcyBmb3IgYC50YWJsZS1ob3ZlcmBcclxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cclxuICAudGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyIHtcclxuICAgID4gdGQuI3skc3RhdGV9OmhvdmVyLFxyXG4gICAgPiB0aC4jeyRzdGF0ZX06aG92ZXIsXHJcbiAgICAmLiN7JHN0YXRlfTpob3ZlciA+IHRkLFxyXG4gICAgJjpob3ZlciA+IC4jeyRzdGF0ZX0sXHJcbiAgICAmLiN7JHN0YXRlfTpob3ZlciA+IHRoIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcclxuXHJcbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xyXG5AbWl4aW4gYmctdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcclxuICAjeyRwYXJlbnR9IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxuICB9XHJcbiAgYSN7JHBhcmVudH06aG92ZXIsXHJcbiAgYSN7JHBhcmVudH06Zm9jdXMge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcclxuICB9XHJcbn1cclxuIiwiLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xyXG5cclxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcclxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcclxuICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcclxufVxyXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XHJcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XHJcbiAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XHJcbn1cclxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcclxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcclxuICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcclxufVxyXG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcclxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xyXG4gICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XHJcbn1cclxuIiwiLy8gR3JhZGllbnRzXHJcblxyXG5cclxuXHJcbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxyXG4vL1xyXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxyXG4vLyBDb2xvciBzdG9wcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBJRTkgYW5kIGJlbG93LlxyXG5AbWl4aW4gZ3JhZGllbnQtaG9yaXpvbnRhbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gT3BlcmEgMTJcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTEpOyAvLyBJRTkgYW5kIGRvd25cclxufVxyXG5cclxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxyXG4vL1xyXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxyXG4vLyBDb2xvciBzdG9wcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBJRTkgYW5kIGJlbG93LlxyXG5AbWl4aW4gZ3JhZGllbnQtdmVydGljYWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7ICAvLyBTYWZhcmkgNS4xLTYsIENocm9tZSAxMCtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgIC8vIE9wZXJhIDEyXHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XHJcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MCk7IC8vIElFOSBhbmQgZG93blxyXG59XHJcblxyXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkZGVnOiA0NWRlZykge1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpOyAvLyBTYWZhcmkgNS4xLTYsIENocm9tZSAxMCtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gT3BlcmEgMTJcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xyXG59XHJcbkBtaXhpbiBncmFkaWVudC1ob3Jpem9udGFsLXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMGIzZWUsICRtaWQtY29sb3I6ICM3YTQzYjYsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNjMzMyNWYpIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTEpOyAvLyBJRTkgYW5kIGRvd24sIGdldHMgbm8gY29sb3Itc3RvcCBhdCBhbGwgZm9yIHByb3BlciBmYWxsYmFja1xyXG59XHJcbkBtaXhpbiBncmFkaWVudC12ZXJ0aWNhbC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAjMDBiM2VlLCAkbWlkLWNvbG9yOiAjN2E0M2I2LCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAjYzMzMjVmKSB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTApOyAvLyBJRTkgYW5kIGRvd24sIGdldHMgbm8gY29sb3Itc3RvcCBhdCBhbGwgZm9yIHByb3BlciBmYWxsYmFja1xyXG59XHJcbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAjNTU1LCAkb3V0ZXItY29sb3I6ICMzMzMpIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxufVxyXG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XHJcbn1cclxuIiwiLy8gQ2xlYXJmaXhcclxuLy9cclxuLy8gRm9yIG1vZGVybiBicm93c2Vyc1xyXG4vLyAxLiBUaGUgc3BhY2UgY29udGVudCBpcyBvbmUgd2F5IHRvIGF2b2lkIGFuIE9wZXJhIGJ1ZyB3aGVuIHRoZVxyXG4vLyAgICBjb250ZW50ZWRpdGFibGUgYXR0cmlidXRlIGlzIGluY2x1ZGVkIGFueXdoZXJlIGVsc2UgaW4gdGhlIGRvY3VtZW50LlxyXG4vLyAgICBPdGhlcndpc2UgaXQgY2F1c2VzIHNwYWNlIHRvIGFwcGVhciBhdCB0aGUgdG9wIGFuZCBib3R0b20gb2YgZWxlbWVudHNcclxuLy8gICAgdGhhdCBhcmUgY2xlYXJmaXhlZC5cclxuLy8gMi4gVGhlIHVzZSBvZiBgdGFibGVgIHJhdGhlciB0aGFuIGBibG9ja2AgaXMgb25seSBuZWNlc3NhcnkgaWYgdXNpbmdcclxuLy8gICAgYDpiZWZvcmVgIHRvIGNvbnRhaW4gdGhlIHRvcC1tYXJnaW5zIG9mIGNoaWxkIGVsZW1lbnRzLlxyXG4vL1xyXG4vLyBTb3VyY2U6IGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrL1xyXG5cclxuQG1peGluIGNsZWFyZml4KCkge1xyXG4gICY6YmVmb3JlLFxyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogXCIgXCI7IC8vIDFcclxuICAgIGRpc3BsYXk6IHRhYmxlOyAvLyAyXHJcbiAgfVxyXG4gICY6YWZ0ZXIge1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgfVxyXG59XHJcbiIsIi8vIENlbnRlci1hbGlnbiBhIGJsb2NrIGxldmVsIGVsZW1lbnRcclxuXHJcbkBtaXhpbiBjZW50ZXItYmxvY2soKSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG59XHJcbiIsIi8vIE5hdmJhciB2ZXJ0aWNhbCBhbGlnblxyXG4vL1xyXG4vLyBWZXJ0aWNhbGx5IGNlbnRlciBlbGVtZW50cyBpbiB0aGUgbmF2YmFyLlxyXG4vLyBFeGFtcGxlOiBhbiBlbGVtZW50IGhhcyBhIGhlaWdodCBvZiAzMHB4LCBzbyB3cml0ZSBvdXQgYC5uYXZiYXItdmVydGljYWwtYWxpZ24oMzBweCk7YCB0byBjYWxjdWxhdGUgdGhlIGFwcHJvcHJpYXRlIHRvcCBtYXJnaW4uXHJcblxyXG5AbWl4aW4gbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRlbGVtZW50LWhlaWdodCkge1xyXG4gIG1hcmdpbi10b3A6ICgoJG5hdmJhci1oZWlnaHQgLSAkZWxlbWVudC1oZWlnaHQpIC8gMik7XHJcbiAgbWFyZ2luLWJvdHRvbTogKCgkbmF2YmFyLWhlaWdodCAtICRlbGVtZW50LWhlaWdodCkgLyAyKTtcclxufVxyXG4iLCIvLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXHJcbi8vXHJcbi8vIFVzZWQgb25seSBieSBCb290c3RyYXAgdG8gZ2VuZXJhdGUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIGdyaWQgY2xhc3NlcyBnaXZlblxyXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxyXG5cclxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGluIExFU1MsIGJ1dCBTYXNzIHN1cHBvcnRzIHJlYWwgbG9vcHNcclxuQG1peGluIG1ha2UtZ3JpZC1jb2x1bW5zKCRpOiAxLCAkbGlzdDogXCIuY29sLXhzLSN7JGl9LCAuY29sLXNtLSN7JGl9LCAuY29sLW1kLSN7JGl9LCAuY29sLWxnLSN7JGl9XCIpIHtcclxuICBAZm9yICRpIGZyb20gKDEgKyAxKSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xyXG4gICAgJGxpc3Q6IFwiI3skbGlzdH0sIC5jb2wteHMtI3skaX0sIC5jb2wtc20tI3skaX0sIC5jb2wtbWQtI3skaX0sIC5jb2wtbGctI3skaX1cIjtcclxuICB9XHJcbiAgI3skbGlzdH0ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gY29sbGFwc2luZyB3aGVuIGVtcHR5XHJcbiAgICBtaW4taGVpZ2h0OiAxcHg7XHJcbiAgICAvLyBJbm5lciBndXR0ZXIgdmlhIHBhZGRpbmdcclxuICAgIHBhZGRpbmctbGVmdDogIGNlaWwoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKTtcclxuICAgIHBhZGRpbmctcmlnaHQ6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGluIExFU1MsIGJ1dCBTYXNzIHN1cHBvcnRzIHJlYWwgbG9vcHNcclxuQG1peGluIGZsb2F0LWdyaWQtY29sdW1ucygkY2xhc3MsICRpOiAxLCAkbGlzdDogXCIuY29sLSN7JGNsYXNzfS0jeyRpfVwiKSB7XHJcbiAgQGZvciAkaSBmcm9tICgxICsgMSkgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcclxuICAgICRsaXN0OiBcIiN7JGxpc3R9LCAuY29sLSN7JGNsYXNzfS0jeyRpfVwiO1xyXG4gIH1cclxuICAjeyRsaXN0fSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gY2FsYy1ncmlkLWNvbHVtbigkaW5kZXgsICRjbGFzcywgJHR5cGUpIHtcclxuICBAaWYgKCR0eXBlID09IHdpZHRoKSBhbmQgKCRpbmRleCA+IDApIHtcclxuICAgIC5jb2wtI3skY2xhc3N9LSN7JGluZGV4fSB7XHJcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkaW5kZXggLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpZiAoJHR5cGUgPT0gcHVzaCkgYW5kICgkaW5kZXggPiAwKSB7XHJcbiAgICAuY29sLSN7JGNsYXNzfS1wdXNoLSN7JGluZGV4fSB7XHJcbiAgICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcclxuICAgIH1cclxuICB9XHJcbiAgQGlmICgkdHlwZSA9PSBwdXNoKSBhbmQgKCRpbmRleCA9PSAwKSB7XHJcbiAgICAuY29sLSN7JGNsYXNzfS1wdXNoLTAge1xyXG4gICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgfVxyXG4gIH1cclxuICBAaWYgKCR0eXBlID09IHB1bGwpIGFuZCAoJGluZGV4ID4gMCkge1xyXG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0jeyRpbmRleH0ge1xyXG4gICAgICByaWdodDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xyXG4gICAgfVxyXG4gIH1cclxuICBAaWYgKCR0eXBlID09IHB1bGwpIGFuZCAoJGluZGV4ID09IDApIHtcclxuICAgIC5jb2wtI3skY2xhc3N9LXB1bGwtMCB7XHJcbiAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG4gIH1cclxuICBAaWYgKCR0eXBlID09IG9mZnNldCkge1xyXG4gICAgLmNvbC0jeyRjbGFzc30tb2Zmc2V0LSN7JGluZGV4fSB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkaW5kZXggLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xyXG5AbWl4aW4gbG9vcC1ncmlkLWNvbHVtbnMoJGNvbHVtbnMsICRjbGFzcywgJHR5cGUpIHtcclxuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcclxuICAgIEBpbmNsdWRlIGNhbGMtZ3JpZC1jb2x1bW4oJGksICRjbGFzcywgJHR5cGUpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIENyZWF0ZSBncmlkIGZvciBzcGVjaWZpYyBjbGFzc1xyXG5AbWl4aW4gbWFrZS1ncmlkKCRjbGFzcykge1xyXG4gIEBpbmNsdWRlIGZsb2F0LWdyaWQtY29sdW1ucygkY2xhc3MpO1xyXG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgd2lkdGgpO1xyXG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgcHVsbCk7XHJcbiAgQGluY2x1ZGUgbG9vcC1ncmlkLWNvbHVtbnMoJGdyaWQtY29sdW1ucywgJGNsYXNzLCBwdXNoKTtcclxuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIG9mZnNldCk7XHJcbn1cclxuIiwiLy8gR3JpZCBzeXN0ZW1cclxuLy9cclxuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxyXG5cclxuLy8gQ2VudGVyZWQgY29udGFpbmVyIGVsZW1lbnRcclxuQG1peGluIGNvbnRhaW5lci1maXhlZCgkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcclxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgcGFkZGluZy1sZWZ0OiAgZmxvb3IoKCRndXR0ZXIgLyAyKSk7XHJcbiAgcGFkZGluZy1yaWdodDogY2VpbCgoJGd1dHRlciAvIDIpKTtcclxuICBAaW5jbHVkZSBjbGVhcmZpeDtcclxufVxyXG5cclxuLy8gQ3JlYXRlcyBhIHdyYXBwZXIgZm9yIGEgc2VyaWVzIG9mIGNvbHVtbnNcclxuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xyXG4gIG1hcmdpbi1sZWZ0OiAgY2VpbCgoJGd1dHRlciAvIC0yKSk7XHJcbiAgbWFyZ2luLXJpZ2h0OiBmbG9vcigoJGd1dHRlciAvIC0yKSk7XHJcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbn1cclxuXHJcbi8vIEdlbmVyYXRlIHRoZSBleHRyYSBzbWFsbCBjb2x1bW5zXHJcbkBtaXhpbiBtYWtlLXhzLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGZsb2F0OiBsZWZ0O1xyXG4gIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcclxuICBtaW4taGVpZ2h0OiAxcHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcclxuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xyXG59XHJcbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcclxuICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbn1cclxuQG1peGluIG1ha2UteHMtY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcclxuICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcclxufVxyXG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xyXG4gIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcclxufVxyXG5cclxuLy8gR2VuZXJhdGUgdGhlIHNtYWxsIGNvbHVtbnNcclxuQG1peGluIG1ha2Utc20tY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbWluLWhlaWdodDogMXB4O1xyXG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XHJcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcclxuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuQG1peGluIG1ha2Utc20tY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG4gICAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbiAgfVxyXG59XHJcbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBHZW5lcmF0ZSB0aGUgbWVkaXVtIGNvbHVtbnNcclxuQG1peGluIG1ha2UtbWQtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbWluLWhlaWdodDogMXB4O1xyXG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XHJcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcclxuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuQG1peGluIG1ha2UtbWQtY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xyXG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xyXG4gICAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbiAgfVxyXG59XHJcbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XHJcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBHZW5lcmF0ZSB0aGUgbGFyZ2UgY29sdW1uc1xyXG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtaW4taGVpZ2h0OiAxcHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcclxuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbiAgfVxyXG59XHJcbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XHJcbiAgICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuQG1peGluIG1ha2UtbGctY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcclxuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4zIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xyXG5cclxuLy9cclxuLy8gMS4gU2V0IGRlZmF1bHQgZm9udCBmYW1pbHkgdG8gc2Fucy1zZXJpZi5cclxuLy8gMi4gUHJldmVudCBpT1MgYW5kIElFIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgZGV2aWNlIG9yaWVudGF0aW9uIGNoYW5nZSxcclxuLy8gICAgd2l0aG91dCBkaXNhYmxpbmcgdXNlciB6b29tLlxyXG4vL1xyXG5cclxuaHRtbCB7XHJcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8vIDFcclxuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gMlxyXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gMlxyXG59XHJcblxyXG4vL1xyXG4vLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4uXHJcbi8vXHJcblxyXG5ib2R5IHtcclxuICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbi8vIEhUTUw1IGRpc3BsYXkgZGVmaW5pdGlvbnNcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vXHJcbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXHJcbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExXHJcbi8vIGFuZCBGaXJlZm94LlxyXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxyXG4vL1xyXG5cclxuYXJ0aWNsZSxcclxuYXNpZGUsXHJcbmRldGFpbHMsXHJcbmZpZ2NhcHRpb24sXHJcbmZpZ3VyZSxcclxuZm9vdGVyLFxyXG5oZWFkZXIsXHJcbmhncm91cCxcclxubWFpbixcclxubWVudSxcclxubmF2LFxyXG5zZWN0aW9uLFxyXG5zdW1tYXJ5IHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLy9cclxuLy8gMS4gQ29ycmVjdCBgaW5saW5lLWJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDgvOS5cclxuLy8gMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxyXG4vL1xyXG5cclxuYXVkaW8sXHJcbmNhbnZhcyxcclxucHJvZ3Jlc3MsXHJcbnZpZGVvIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIDFcclxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8vIDJcclxufVxyXG5cclxuLy9cclxuLy8gUHJldmVudCBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cclxuLy8gUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cclxuLy9cclxuXHJcbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBoZWlnaHQ6IDA7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cclxuLy8gSGlkZSB0aGUgYHRlbXBsYXRlYCBlbGVtZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgRmlyZWZveCA8IDIyLlxyXG4vL1xyXG5cclxuW2hpZGRlbl0sXHJcbnRlbXBsYXRlIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vLyBMaW5rc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy9cclxuLy8gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgY29sb3IgZnJvbSBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXHJcbi8vXHJcblxyXG5hIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLy9cclxuLy8gSW1wcm92ZSByZWFkYWJpbGl0eSBvZiBmb2N1c2VkIGVsZW1lbnRzIHdoZW4gdGhleSBhcmUgYWxzbyBpbiBhblxyXG4vLyBhY3RpdmUvaG92ZXIgc3RhdGUuXHJcbi8vXHJcblxyXG5hOmFjdGl2ZSxcclxuYTpob3ZlciB7XHJcbiAgb3V0bGluZTogMDtcclxufVxyXG5cclxuLy8gVGV4dC1sZXZlbCBzZW1hbnRpY3NcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vXHJcbi8vIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIENocm9tZS5cclxuLy9cclxuXHJcbmFiYnJbdGl0bGVdIHtcclxuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkO1xyXG59XHJcblxyXG4vL1xyXG4vLyBBZGRyZXNzIHN0eWxlIHNldCB0byBgYm9sZGVyYCBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXHJcbi8vXHJcblxyXG5iLFxyXG5zdHJvbmcge1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4vL1xyXG4vLyBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXHJcbi8vXHJcblxyXG5kZm4ge1xyXG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcclxufVxyXG5cclxuLy9cclxuLy8gQWRkcmVzcyB2YXJpYWJsZSBgaDFgIGZvbnQtc2l6ZSBhbmQgbWFyZ2luIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYFxyXG4vLyBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXHJcbi8vXHJcblxyXG5oMSB7XHJcbiAgZm9udC1zaXplOiAyZW07XHJcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcclxufVxyXG5cclxuLy9cclxuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cclxuLy9cclxuXHJcbm1hcmsge1xyXG4gIGJhY2tncm91bmQ6ICNmZjA7XHJcbiAgY29sb3I6ICMwMDA7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxyXG4vL1xyXG5cclxuc21hbGwge1xyXG4gIGZvbnQtc2l6ZTogODAlO1xyXG59XHJcblxyXG4vL1xyXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXHJcbi8vXHJcblxyXG5zdWIsXHJcbnN1cCB7XHJcbiAgZm9udC1zaXplOiA3NSU7XHJcbiAgbGluZS1oZWlnaHQ6IDA7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcclxufVxyXG5cclxuc3VwIHtcclxuICB0b3A6IC0wLjVlbTtcclxufVxyXG5cclxuc3ViIHtcclxuICBib3R0b206IC0wLjI1ZW07XHJcbn1cclxuXHJcbi8vIEVtYmVkZGVkIGNvbnRlbnRcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vXHJcbi8vIFJlbW92ZSBib3JkZXIgd2hlbiBpbnNpZGUgYGFgIGVsZW1lbnQgaW4gSUUgOC85LzEwLlxyXG4vL1xyXG5cclxuaW1nIHtcclxuICBib3JkZXI6IDA7XHJcbn1cclxuXHJcbi8vXHJcbi8vIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA5LzEwLzExLlxyXG4vL1xyXG5cclxuc3ZnOm5vdCg6cm9vdCkge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi8vIEdyb3VwaW5nIGNvbnRlbnRcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vXHJcbi8vIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpLlxyXG4vL1xyXG5cclxuZmlndXJlIHtcclxuICBtYXJnaW46IDFlbSA0MHB4O1xyXG59XHJcblxyXG4vL1xyXG4vLyBBZGRyZXNzIGRpZmZlcmVuY2VzIGJldHdlZW4gRmlyZWZveCBhbmQgb3RoZXIgYnJvd3NlcnMuXHJcbi8vXHJcblxyXG5ociB7XHJcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XHJcbiAgaGVpZ2h0OiAwO1xyXG59XHJcblxyXG4vL1xyXG4vLyBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cclxuLy9cclxuXHJcbnByZSB7XHJcbiAgb3ZlcmZsb3c6IGF1dG87XHJcbn1cclxuXHJcbi8vXHJcbi8vIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cclxuLy9cclxuXHJcbmNvZGUsXHJcbmtiZCxcclxucHJlLFxyXG5zYW1wIHtcclxuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XHJcbiAgZm9udC1zaXplOiAxZW07XHJcbn1cclxuXHJcbi8vIEZvcm1zXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vL1xyXG4vLyBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxyXG4vLyBzdHlsaW5nIG9mIGBzZWxlY3RgLCB1bmxlc3MgYSBgYm9yZGVyYCBwcm9wZXJ0eSBpcyBzZXQuXHJcbi8vXHJcblxyXG4vL1xyXG4vLyAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXHJcbi8vICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxyXG4vLyAyLiBDb3JyZWN0IGZvbnQgcHJvcGVydGllcyBub3QgYmVpbmcgaW5oZXJpdGVkLlxyXG4vLyAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cclxuLy9cclxuXHJcbmJ1dHRvbixcclxuaW5wdXQsXHJcbm9wdGdyb3VwLFxyXG5zZWxlY3QsXHJcbnRleHRhcmVhIHtcclxuICBjb2xvcjogaW5oZXJpdDsgLy8gMVxyXG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDJcclxuICBtYXJnaW46IDA7IC8vIDNcclxufVxyXG5cclxuLy9cclxuLy8gQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuXHJcbi8vXHJcblxyXG5idXR0b24ge1xyXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xyXG59XHJcblxyXG4vL1xyXG4vLyBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXHJcbi8vIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXHJcbi8vIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXHJcbi8vIENvcnJlY3QgYHNlbGVjdGAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveC5cclxuLy9cclxuXHJcbmJ1dHRvbixcclxuc2VsZWN0IHtcclxuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxufVxyXG5cclxuLy9cclxuLy8gMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcclxuLy8gICAgYW5kIGB2aWRlb2AgY29udHJvbHMuXHJcbi8vIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cclxuLy8gMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcclxuLy8gICAgYGlucHV0YCBhbmQgb3RoZXJzLlxyXG4vL1xyXG5cclxuYnV0dG9uLFxyXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sIC8vIDFcclxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxyXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxyXG4gIGN1cnNvcjogcG9pbnRlcjsgLy8gM1xyXG59XHJcblxyXG4vL1xyXG4vLyBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxyXG4vL1xyXG5cclxuYnV0dG9uW2Rpc2FibGVkXSxcclxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xyXG4gIGN1cnNvcjogZGVmYXVsdDtcclxufVxyXG5cclxuLy9cclxuLy8gUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDQrLlxyXG4vL1xyXG5cclxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxyXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEFkZHJlc3MgRmlyZWZveCA0KyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cclxuLy8gdGhlIFVBIHN0eWxlc2hlZXQuXHJcbi8vXHJcblxyXG5pbnB1dCB7XHJcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcclxufVxyXG5cclxuLy9cclxuLy8gSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxyXG4vLyBGaXJlZm94J3MgaW1wbGVtZW50YXRpb24gZG9lc24ndCByZXNwZWN0IGJveC1zaXppbmcsIHBhZGRpbmcsIG9yIHdpZHRoLlxyXG4vL1xyXG4vLyAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxyXG4vLyAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxyXG4vL1xyXG5cclxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxyXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcclxuICBwYWRkaW5nOiAwOyAvLyAyXHJcbn1cclxuXHJcbi8vXHJcbi8vIEZpeCB0aGUgY3Vyc29yIHN0eWxlIGZvciBDaHJvbWUncyBpbmNyZW1lbnQvZGVjcmVtZW50IGJ1dHRvbnMuIEZvciBjZXJ0YWluXHJcbi8vIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXHJcbi8vIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cclxuLy9cclxuXHJcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXHJcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xyXG4gIGhlaWdodDogYXV0bztcclxufVxyXG5cclxuLy9cclxuLy8gMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXHJcbi8vIDIuIEFkZHJlc3MgYGJveC1zaXppbmdgIHNldCB0byBgYm9yZGVyLWJveGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXHJcbi8vXHJcblxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxyXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLzJcclxufVxyXG5cclxuLy9cclxuLy8gUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXHJcbi8vIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcclxuLy8gcGFkZGluZyAoYW5kIGB0ZXh0ZmllbGRgIGFwcGVhcmFuY2UpLlxyXG4vL1xyXG5cclxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcclxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG59XHJcblxyXG4vL1xyXG4vLyBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXHJcbi8vXHJcblxyXG5maWVsZHNldCB7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcclxuICBtYXJnaW46IDAgMnB4O1xyXG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcclxufVxyXG5cclxuLy9cclxuLy8gMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LzEwLzExLlxyXG4vLyAyLiBSZW1vdmUgcGFkZGluZyBzbyBwZW9wbGUgYXJlbid0IGNhdWdodCBvdXQgaWYgdGhleSB6ZXJvIG91dCBmaWVsZHNldHMuXHJcbi8vXHJcblxyXG5sZWdlbmQge1xyXG4gIGJvcmRlcjogMDsgLy8gMVxyXG4gIHBhZGRpbmc6IDA7IC8vIDJcclxufVxyXG5cclxuLy9cclxuLy8gUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cclxuLy9cclxuXHJcbnRleHRhcmVhIHtcclxuICBvdmVyZmxvdzogYXV0bztcclxufVxyXG5cclxuLy9cclxuLy8gRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCAoYXBwbGllZCBieSBhIHJ1bGUgYWJvdmUpLlxyXG4vLyBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cclxuLy9cclxuXHJcbm9wdGdyb3VwIHtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuLy8gVGFibGVzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vL1xyXG4vLyBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXHJcbi8vXHJcblxyXG50YWJsZSB7XHJcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcclxuICBib3JkZXItc3BhY2luZzogMDtcclxufVxyXG5cclxudGQsXHJcbnRoIHtcclxuICBwYWRkaW5nOiAwO1xyXG59XHJcbiIsIi8vXHJcbi8vIEdyaWQgc3lzdGVtXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gQ29udGFpbmVyIHdpZHRoc1xyXG4vL1xyXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXHJcblxyXG4uY29udGFpbmVyIHtcclxuICBAaW5jbHVkZSBjb250YWluZXItZml4ZWQ7XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG4gICAgd2lkdGg6ICRjb250YWluZXItc207XHJcbiAgfVxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xyXG4gICAgd2lkdGg6ICRjb250YWluZXItbWQ7XHJcbiAgfVxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xyXG4gICAgd2lkdGg6ICRjb250YWluZXItbGc7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gRmx1aWQgY29udGFpbmVyXHJcbi8vXHJcbi8vIFV0aWxpemVzIHRoZSBtaXhpbiBtZWFudCBmb3IgZml4ZWQgd2lkdGggY29udGFpbmVycywgYnV0IHdpdGhvdXQgYW55IGRlZmluZWRcclxuLy8gd2lkdGggZm9yIGZsdWlkLCBmdWxsIHdpZHRoIGxheW91dHMuXHJcblxyXG4uY29udGFpbmVyLWZsdWlkIHtcclxuICBAaW5jbHVkZSBjb250YWluZXItZml4ZWQ7XHJcbn1cclxuXHJcblxyXG4vLyBSb3dcclxuLy9cclxuLy8gUm93cyBjb250YWluIGFuZCBjbGVhciB0aGUgZmxvYXRzIG9mIHlvdXIgY29sdW1ucy5cclxuXHJcbi5yb3cge1xyXG4gIEBpbmNsdWRlIG1ha2Utcm93O1xyXG59XHJcblxyXG5cclxuLy8gQ29sdW1uc1xyXG4vL1xyXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXHJcblxyXG5AaW5jbHVkZSBtYWtlLWdyaWQtY29sdW1ucztcclxuXHJcblxyXG4vLyBFeHRyYSBzbWFsbCBncmlkXHJcbi8vXHJcbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciBleHRyYSBzbWFsbCBkZXZpY2VzIGxpa2VcclxuLy8gc21hcnRwaG9uZXMuXHJcblxyXG5AaW5jbHVkZSBtYWtlLWdyaWQoeHMpO1xyXG5cclxuXHJcbi8vIFNtYWxsIGdyaWRcclxuLy9cclxuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIHRoZSBzbWFsbCBkZXZpY2UgcmFuZ2UsIGZyb20gcGhvbmVzXHJcbi8vIHRvIHRhYmxldHMuXHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuICBAaW5jbHVkZSBtYWtlLWdyaWQoc20pO1xyXG59XHJcblxyXG5cclxuLy8gTWVkaXVtIGdyaWRcclxuLy9cclxuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIHRoZSBkZXNrdG9wIGRldmljZSByYW5nZS5cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xyXG4gIEBpbmNsdWRlIG1ha2UtZ3JpZChtZCk7XHJcbn1cclxuXHJcblxyXG4vLyBMYXJnZSBncmlkXHJcbi8vXHJcbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciB0aGUgbGFyZ2UgZGVza3RvcCBkZXZpY2UgcmFuZ2UuXHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcclxuICBAaW5jbHVkZSBtYWtlLWdyaWQobGcpO1xyXG59XHJcbiIsIi8vXHJcbi8vIEZvcm1zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gTm9ybWFsaXplIG5vbi1jb250cm9sc1xyXG4vL1xyXG4vLyBSZXN0eWxlIGFuZCBiYXNlbGluZSBub24tY29udHJvbCBmb3JtIGVsZW1lbnRzLlxyXG5cclxuZmllbGRzZXQge1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIGJvcmRlcjogMDtcclxuICAvLyBDaHJvbWUgYW5kIEZpcmVmb3ggc2V0IGEgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXHJcbiAgLy8gc28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgaXQgYmVoYXZlcyBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxyXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEyMzU5LlxyXG4gIG1pbi13aWR0aDogMDtcclxufVxyXG5cclxubGVnZW5kIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB3aWR0aDogMTAwJTtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICBmb250LXNpemU6ICgkZm9udC1zaXplLWJhc2UgKiAxLjUpO1xyXG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xyXG4gIGNvbG9yOiAkbGVnZW5kLWNvbG9yO1xyXG4gIGJvcmRlcjogMDtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxlZ2VuZC1ib3JkZXItY29sb3I7XHJcbn1cclxuXHJcbmxhYmVsIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBGb3JjZSBJRTggdG8gd3JhcCBsb25nIGNvbnRlbnQgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEzMTQxKVxyXG4gIG1hcmdpbi1ib3R0b206IDVweDtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuXHJcbi8vIE5vcm1hbGl6ZSBmb3JtIGNvbnRyb2xzXHJcbi8vXHJcbi8vIFdoaWxlIG1vc3Qgb2Ygb3VyIGZvcm0gc3R5bGVzIHJlcXVpcmUgZXh0cmEgY2xhc3Nlcywgc29tZSBiYXNpYyBub3JtYWxpemF0aW9uXHJcbi8vIGlzIHJlcXVpcmVkIHRvIGVuc3VyZSBvcHRpbXVtIGRpc3BsYXkgd2l0aCBvciB3aXRob3V0IHRob3NlIGNsYXNzZXMgdG8gYmV0dGVyXHJcbi8vIGFkZHJlc3MgYnJvd3NlciBpbmNvbnNpc3RlbmNpZXMuXHJcblxyXG4vLyBPdmVycmlkZSBjb250ZW50LWJveCBpbiBOb3JtYWxpemUgKCogaXNuJ3Qgc3BlY2lmaWMgZW5vdWdoKVxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcclxuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xyXG59XHJcblxyXG4vLyBQb3NpdGlvbiByYWRpb3MgYW5kIGNoZWNrYm94ZXMgYmV0dGVyXHJcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcclxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuICBtYXJnaW46IDRweCAwIDA7XHJcbiAgbWFyZ2luLXRvcDogMXB4IFxcOTsgLy8gSUU4LTlcclxuICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG59XHJcblxyXG5pbnB1dFt0eXBlPVwiZmlsZVwiXSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi8vIE1ha2UgcmFuZ2UgaW5wdXRzIGJlaGF2ZSBsaWtlIHRleHR1YWwgZm9ybSBjb250cm9sc1xyXG5pbnB1dFt0eXBlPVwicmFuZ2VcIl0ge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4vLyBNYWtlIG11bHRpcGxlIHNlbGVjdCBlbGVtZW50cyBoZWlnaHQgbm90IGZpeGVkXHJcbnNlbGVjdFttdWx0aXBsZV0sXHJcbnNlbGVjdFtzaXplXSB7XHJcbiAgaGVpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG4vLyBGb2N1cyBmb3IgZmlsZSwgcmFkaW8sIGFuZCBjaGVja2JveFxyXG5pbnB1dFt0eXBlPVwiZmlsZVwiXTpmb2N1cyxcclxuaW5wdXRbdHlwZT1cInJhZGlvXCJdOmZvY3VzLFxyXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zm9jdXMge1xyXG4gIEBpbmNsdWRlIHRhYi1mb2N1cztcclxufVxyXG5cclxuLy8gQWRqdXN0IG91dHB1dCBlbGVtZW50XHJcbm91dHB1dCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7XHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XHJcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xyXG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XHJcbn1cclxuXHJcblxyXG4vLyBDb21tb24gZm9ybSBjb250cm9sc1xyXG4vL1xyXG4vLyBTaGFyZWQgc2l6ZSBhbmQgdHlwZSByZXNldHMgZm9yIGZvcm0gY29udHJvbHMuIEFwcGx5IGAuZm9ybS1jb250cm9sYCB0byBhbnlcclxuLy8gb2YgdGhlIGZvbGxvd2luZyBmb3JtIGNvbnRyb2xzOlxyXG4vL1xyXG4vLyBzZWxlY3RcclxuLy8gdGV4dGFyZWFcclxuLy8gaW5wdXRbdHlwZT1cInRleHRcIl1cclxuLy8gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdXHJcbi8vIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXVxyXG4vLyBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl1cclxuLy8gaW5wdXRbdHlwZT1cImRhdGVcIl1cclxuLy8gaW5wdXRbdHlwZT1cIm1vbnRoXCJdXHJcbi8vIGlucHV0W3R5cGU9XCJ0aW1lXCJdXHJcbi8vIGlucHV0W3R5cGU9XCJ3ZWVrXCJdXHJcbi8vIGlucHV0W3R5cGU9XCJudW1iZXJcIl1cclxuLy8gaW5wdXRbdHlwZT1cImVtYWlsXCJdXHJcbi8vIGlucHV0W3R5cGU9XCJ1cmxcIl1cclxuLy8gaW5wdXRbdHlwZT1cInNlYXJjaFwiXVxyXG4vLyBpbnB1dFt0eXBlPVwidGVsXCJdXHJcbi8vIGlucHV0W3R5cGU9XCJjb2xvclwiXVxyXG5cclxuLmZvcm0tY29udHJvbCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWJhc2U7IC8vIE1ha2UgaW5wdXRzIGF0IGxlYXN0IHRoZSBoZWlnaHQgb2YgdGhlaXIgYnV0dG9uIGNvdW50ZXJwYXJ0IChiYXNlIGxpbmUtaGVpZ2h0ICsgcGFkZGluZyArIGJvcmRlcilcclxuICBwYWRkaW5nOiAkcGFkZGluZy1iYXNlLXZlcnRpY2FsICRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDtcclxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcclxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVzZXQgdW51c3VhbCBGaXJlZm94LW9uLUFuZHJvaWQgZGVmYXVsdCBzdHlsZTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MvaXNzdWVzLzIxNFxyXG4gIGJvcmRlcjogMXB4IHNvbGlkICRpbnB1dC1ib3JkZXI7XHJcbiAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXM7IC8vIE5vdGU6IFRoaXMgaGFzIG5vIGVmZmVjdCBvbiA8c2VsZWN0PnMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIDxzZWxlY3Q+cyBpbiBDU1MuXHJcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSk7XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgLjE1cywgYm94LXNoYWRvdyBlYXNlLWluLW91dCAuMTVzKTtcclxuXHJcbiAgLy8gQ3VzdG9taXplIHRoZSBgOmZvY3VzYCBzdGF0ZSB0byBpbWl0YXRlIG5hdGl2ZSBXZWJLaXQgc3R5bGVzLlxyXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC1mb2N1cztcclxuXHJcbiAgLy8gUGxhY2Vob2xkZXJcclxuICBAaW5jbHVkZSBwbGFjZWhvbGRlcjtcclxuXHJcbiAgLy8gVW5zdHlsZSB0aGUgY2FyZXQgb24gYDxzZWxlY3Q+YHMgaW4gSUUxMCsuXHJcbiAgJjo6LW1zLWV4cGFuZCB7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICB9XHJcblxyXG4gIC8vIERpc2FibGVkIGFuZCByZWFkLW9ubHkgaW5wdXRzXHJcbiAgLy9cclxuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxyXG4gIC8vIGRpc2FibGVkIGlmIHRoZSBmaWVsZHNldCBpcyBkaXNhYmxlZC4gRHVlIHRvIGltcGxlbWVudGF0aW9uIGRpZmZpY3VsdHksIHdlXHJcbiAgLy8gZG9uJ3QgaG9ub3IgdGhhdCBlZGdlIGNhc2U7IHdlIHN0eWxlIHRoZW0gYXMgZGlzYWJsZWQgYW55d2F5LlxyXG4gICZbZGlzYWJsZWRdLFxyXG4gICZbcmVhZG9ubHldLFxyXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZy1kaXNhYmxlZDtcclxuICAgIG9wYWNpdHk6IDE7IC8vIGlPUyBmaXggZm9yIHVucmVhZGFibGUgZGlzYWJsZWQgY29udGVudDsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NTVcclxuICB9XHJcblxyXG4gICZbZGlzYWJsZWRdLFxyXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcclxuICB9XHJcblxyXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCB0ZXh0YXJlYSYgdG8gdGV4dGFyZWEuZm9ybS1jb250cm9sXHJcbn1cclxuXHJcbi8vIFJlc2V0IGhlaWdodCBmb3IgYHRleHRhcmVhYHNcclxudGV4dGFyZWEuZm9ybS1jb250cm9sIHtcclxuICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcblxyXG4vLyBTZWFyY2ggaW5wdXRzIGluIGlPU1xyXG4vL1xyXG4vLyBUaGlzIG92ZXJyaWRlcyB0aGUgZXh0cmEgcm91bmRlZCBjb3JuZXJzIG9uIHNlYXJjaCBpbnB1dHMgaW4gaU9TIHNvIHRoYXQgb3VyXHJcbi8vIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxyXG4vLyBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXHJcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1ODYuXHJcblxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbn1cclxuXHJcblxyXG4vLyBTcGVjaWFsIHN0eWxlcyBmb3IgaU9TIHRlbXBvcmFsIGlucHV0c1xyXG4vL1xyXG4vLyBJbiBNb2JpbGUgU2FmYXJpLCBzZXR0aW5nIGBkaXNwbGF5OiBibG9ja2Agb24gdGVtcG9yYWwgaW5wdXRzIGNhdXNlcyB0aGVcclxuLy8gdGV4dCB3aXRoaW4gdGhlIGlucHV0IHRvIGJlY29tZSB2ZXJ0aWNhbGx5IG1pc2FsaWduZWQuIEFzIGEgd29ya2Fyb3VuZCwgd2VcclxuLy8gc2V0IGEgcGl4ZWwgbGluZS1oZWlnaHQgdGhhdCBtYXRjaGVzIHRoZSBnaXZlbiBoZWlnaHQgb2YgdGhlIGlucHV0LCBidXQgb25seVxyXG4vLyBmb3IgU2FmYXJpLiBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzOTg0OFxyXG4vL1xyXG4vLyBOb3RlIHRoYXQgYXMgb2YgOS4zLCBpT1MgZG9lc24ndCBzdXBwb3J0IGB3ZWVrYC5cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDApIHtcclxuICBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcclxuICBpbnB1dFt0eXBlPVwidGltZVwiXSxcclxuICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXHJcbiAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdIHtcclxuICAgICYuZm9ybS1jb250cm9sIHtcclxuICAgICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtYmFzZTtcclxuICAgIH1cclxuXHJcbiAgICAmLmlucHV0LXNtLFxyXG4gICAgLmlucHV0LWdyb3VwLXNtICYge1xyXG4gICAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcclxuICAgIH1cclxuXHJcbiAgICAmLmlucHV0LWxnLFxyXG4gICAgLmlucHV0LWdyb3VwLWxnICYge1xyXG4gICAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBGb3JtIGdyb3Vwc1xyXG4vL1xyXG4vLyBEZXNpZ25lZCB0byBoZWxwIHdpdGggdGhlIG9yZ2FuaXphdGlvbiBhbmQgc3BhY2luZyBvZiB2ZXJ0aWNhbCBmb3Jtcy4gRm9yXHJcbi8vIGhvcml6b250YWwgZm9ybXMsIHVzZSB0aGUgcHJlZGVmaW5lZCBncmlkIGNsYXNzZXMuXHJcblxyXG4uZm9ybS1ncm91cCB7XHJcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTtcclxufVxyXG5cclxuXHJcbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xyXG4vL1xyXG4vLyBJbmRlbnQgdGhlIGxhYmVscyB0byBwb3NpdGlvbiByYWRpb3MvY2hlY2tib3hlcyBhcyBoYW5naW5nIGNvbnRyb2xzLlxyXG5cclxuLnJhZGlvLFxyXG4uY2hlY2tib3gge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblxyXG4gIGxhYmVsIHtcclxuICAgIG1pbi1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDsgLy8gRW5zdXJlIHRoZSBpbnB1dCBkb2Vzbid0IGp1bXAgd2hlbiB0aGVyZSBpcyBubyB0ZXh0XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcbn1cclxuLnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcclxuLnJhZGlvLWlubGluZSBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXHJcbi5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXHJcbi5jaGVja2JveC1pbmxpbmUgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xyXG4gIG1hcmdpbi10b3A6IDRweCBcXDk7XHJcbn1cclxuXHJcbi5yYWRpbyArIC5yYWRpbyxcclxuLmNoZWNrYm94ICsgLmNoZWNrYm94IHtcclxuICBtYXJnaW4tdG9wOiAtNXB4OyAvLyBNb3ZlIHVwIHNpYmxpbmcgcmFkaW9zIG9yIGNoZWNrYm94ZXMgZm9yIHRpZ2h0ZXIgc3BhY2luZ1xyXG59XHJcblxyXG4vLyBSYWRpb3MgYW5kIGNoZWNrYm94ZXMgb24gc2FtZSBsaW5lXHJcbi5yYWRpby1pbmxpbmUsXHJcbi5jaGVja2JveC1pbmxpbmUge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG4ucmFkaW8taW5saW5lICsgLnJhZGlvLWlubGluZSxcclxuLmNoZWNrYm94LWlubGluZSArIC5jaGVja2JveC1pbmxpbmUge1xyXG4gIG1hcmdpbi10b3A6IDA7XHJcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7IC8vIHNwYWNlIG91dCBjb25zZWN1dGl2ZSBpbmxpbmUgY29udHJvbHNcclxufVxyXG5cclxuLy8gQXBwbHkgc2FtZSBkaXNhYmxlZCBjdXJzb3IgdHdlYWsgYXMgZm9yIGlucHV0c1xyXG4vLyBTb21lIHNwZWNpYWwgY2FyZSBpcyBuZWVkZWQgYmVjYXVzZSA8bGFiZWw+cyBkb24ndCBpbmhlcml0IHRoZWlyIHBhcmVudCdzIGBjdXJzb3JgLlxyXG4vL1xyXG4vLyBOb3RlOiBOZWl0aGVyIHJhZGlvcyBub3IgY2hlY2tib3hlcyBjYW4gYmUgcmVhZG9ubHkuXHJcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcclxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuICAmW2Rpc2FibGVkXSxcclxuICAmLmRpc2FibGVkLFxyXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcclxuICB9XHJcbn1cclxuLy8gVGhlc2UgY2xhc3NlcyBhcmUgdXNlZCBkaXJlY3RseSBvbiA8bGFiZWw+c1xyXG4ucmFkaW8taW5saW5lLFxyXG4uY2hlY2tib3gtaW5saW5lIHtcclxuICAmLmRpc2FibGVkLFxyXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcclxuICB9XHJcbn1cclxuLy8gVGhlc2UgY2xhc3NlcyBhcmUgdXNlZCBvbiBlbGVtZW50cyB3aXRoIDxsYWJlbD4gZGVzY2VuZGFudHNcclxuLnJhZGlvLFxyXG4uY2hlY2tib3gge1xyXG4gICYuZGlzYWJsZWQsXHJcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgbGFiZWwge1xyXG4gICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gU3RhdGljIGZvcm0gY29udHJvbCB0ZXh0XHJcbi8vXHJcbi8vIEFwcGx5IGNsYXNzIHRvIGEgYHBgIGVsZW1lbnQgdG8gbWFrZSBhbnkgc3RyaW5nIG9mIHRleHQgYWxpZ24gd2l0aCBsYWJlbHMgaW5cclxuLy8gYSBob3Jpem9udGFsIGZvcm0gbGF5b3V0LlxyXG5cclxuLmZvcm0tY29udHJvbC1zdGF0aWMge1xyXG4gIC8vIFNpemUgaXQgYXBwcm9wcmlhdGVseSBuZXh0IHRvIHJlYWwgZm9ybSBjb250cm9sc1xyXG4gIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpO1xyXG4gIHBhZGRpbmctYm90dG9tOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpO1xyXG4gIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBmcm9tIGBwYFxyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgbWluLWhlaWdodDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArICRmb250LXNpemUtYmFzZSk7XHJcblxyXG4gICYuaW5wdXQtbGcsXHJcbiAgJi5pbnB1dC1zbSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEZvcm0gY29udHJvbCBzaXppbmdcclxuLy9cclxuLy8gQnVpbGQgb24gYC5mb3JtLWNvbnRyb2xgIHdpdGggbW9kaWZpZXIgY2xhc3NlcyB0byBkZWNyZWFzZSBvciBpbmNyZWFzZSB0aGVcclxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cclxuLy9cclxuLy8gVGhlIGAuZm9ybS1ncm91cC0qIGZvcm0tY29udHJvbGAgdmFyaWF0aW9ucyBhcmUgc2FkbHkgZHVwbGljYXRlZCB0byBhdm9pZCB0aGVcclxuLy8gaXNzdWUgZG9jdW1lbnRlZCBpbiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE1MDc0LlxyXG5cclxuQGluY2x1ZGUgaW5wdXQtc2l6ZSgnLmlucHV0LXNtJywgJGlucHV0LWhlaWdodC1zbWFsbCwgJHBhZGRpbmctc21hbGwtdmVydGljYWwsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWwsICRmb250LXNpemUtc21hbGwsICRsaW5lLWhlaWdodC1zbWFsbCwgJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4uZm9ybS1ncm91cC1zbSB7XHJcbiAgLmZvcm0tY29udHJvbCB7XHJcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XHJcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xyXG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1zbWFsbDtcclxuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsO1xyXG4gIH1cclxuICBzZWxlY3QuZm9ybS1jb250cm9sIHtcclxuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcclxuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xyXG4gIH1cclxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXHJcbiAgc2VsZWN0W211bHRpcGxlXS5mb3JtLWNvbnRyb2wge1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gIH1cclxuICAuZm9ybS1jb250cm9sLXN0YXRpYyB7XHJcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XHJcbiAgICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJGZvbnQtc2l6ZS1zbWFsbCk7XHJcbiAgICBwYWRkaW5nOiAoJHBhZGRpbmctc21hbGwtdmVydGljYWwgKyAxKSAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xyXG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1zbWFsbDtcclxuICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGlucHV0LXNpemUoJy5pbnB1dC1sZycsICRpbnB1dC1oZWlnaHQtbGFyZ2UsICRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsLCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsLCAkZm9udC1zaXplLWxhcmdlLCAkbGluZS1oZWlnaHQtbGFyZ2UsICRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlKTtcclxuLmZvcm0tZ3JvdXAtbGcge1xyXG4gIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xyXG4gICAgcGFkZGluZzogJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcclxuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtbGFyZ2U7XHJcbiAgICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZTtcclxuICB9XHJcbiAgc2VsZWN0LmZvcm0tY29udHJvbCB7XHJcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XHJcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcclxuICB9XHJcbiAgdGV4dGFyZWEuZm9ybS1jb250cm9sLFxyXG4gIHNlbGVjdFttdWx0aXBsZV0uZm9ybS1jb250cm9sIHtcclxuICAgIGhlaWdodDogYXV0bztcclxuICB9XHJcbiAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xyXG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xyXG4gICAgbWluLWhlaWdodDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArICRmb250LXNpemUtbGFyZ2UpO1xyXG4gICAgcGFkZGluZzogKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICsgMSkgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcclxuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtbGFyZ2U7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gRm9ybSBjb250cm9sIGZlZWRiYWNrIHN0YXRlc1xyXG4vL1xyXG4vLyBBcHBseSBjb250ZXh0dWFsIGFuZCBzZW1hbnRpYyBzdGF0ZXMgdG8gaW5kaXZpZHVhbCBmb3JtIGNvbnRyb2xzLlxyXG5cclxuLmhhcy1mZWVkYmFjayB7XHJcbiAgLy8gRW5hYmxlIGFic29sdXRlIHBvc2l0aW9uaW5nXHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAvLyBFbnN1cmUgaWNvbnMgZG9uJ3Qgb3ZlcmxhcCB0ZXh0XHJcbiAgLmZvcm0tY29udHJvbCB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAoJGlucHV0LWhlaWdodC1iYXNlICogMS4yNSk7XHJcbiAgfVxyXG59XHJcbi8vIEZlZWRiYWNrIGljb24gKHJlcXVpcmVzIC5nbHlwaGljb24gY2xhc3NlcylcclxuLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMDtcclxuICByaWdodDogMDtcclxuICB6LWluZGV4OiAyOyAvLyBFbnN1cmUgaWNvbiBpcyBhYm92ZSBpbnB1dCBncm91cHNcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB3aWR0aDogJGlucHV0LWhlaWdodC1iYXNlO1xyXG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlO1xyXG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWJhc2U7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcbi5pbnB1dC1sZyArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXHJcbi5pbnB1dC1ncm91cC1sZyArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXHJcbi5mb3JtLWdyb3VwLWxnIC5mb3JtLWNvbnRyb2wgKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcclxuICB3aWR0aDogJGlucHV0LWhlaWdodC1sYXJnZTtcclxuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XHJcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XHJcbn1cclxuLmlucHV0LXNtICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayxcclxuLmlucHV0LWdyb3VwLXNtICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayxcclxuLmZvcm0tZ3JvdXAtc20gLmZvcm0tY29udHJvbCArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xyXG4gIHdpZHRoOiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xyXG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcclxuICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcclxufVxyXG5cclxuLy8gRmVlZGJhY2sgc3RhdGVzXHJcbi5oYXMtc3VjY2VzcyB7XHJcbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHN0YXRlLXN1Y2Nlc3MtdGV4dCwgJHN0YXRlLXN1Y2Nlc3MtdGV4dCwgJHN0YXRlLXN1Y2Nlc3MtYmcpO1xyXG59XHJcbi5oYXMtd2FybmluZyB7XHJcbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHN0YXRlLXdhcm5pbmctdGV4dCwgJHN0YXRlLXdhcm5pbmctdGV4dCwgJHN0YXRlLXdhcm5pbmctYmcpO1xyXG59XHJcbi5oYXMtZXJyb3Ige1xyXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCRzdGF0ZS1kYW5nZXItdGV4dCwgJHN0YXRlLWRhbmdlci10ZXh0LCAkc3RhdGUtZGFuZ2VyLWJnKTtcclxufVxyXG5cclxuLy8gUmVwb3NpdGlvbiBmZWVkYmFjayBpY29uIGlmIGlucHV0IGhhcyB2aXNpYmxlIGxhYmVsIGFib3ZlXHJcbi5oYXMtZmVlZGJhY2sgbGFiZWwge1xyXG5cclxuICAmIH4gLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XHJcbiAgICB0b3A6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyA1KTsgLy8gSGVpZ2h0IG9mIHRoZSBgbGFiZWxgIGFuZCBpdHMgbWFyZ2luXHJcbiAgfVxyXG4gICYuc3Itb25seSB+IC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xyXG4gICAgdG9wOiAwO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEhlbHAgdGV4dFxyXG4vL1xyXG4vLyBBcHBseSB0byBhbnkgZWxlbWVudCB5b3Ugd2lzaCB0byBjcmVhdGUgbGlnaHQgdGV4dCBmb3IgcGxhY2VtZW50IGltbWVkaWF0ZWx5XHJcbi8vIGJlbG93IGEgZm9ybSBjb250cm9sLiBVc2UgZm9yIGdlbmVyYWwgaGVscCwgZm9ybWF0dGluZywgb3IgaW5zdHJ1Y3Rpb25hbCB0ZXh0LlxyXG5cclxuLmhlbHAtYmxvY2sge1xyXG4gIGRpc3BsYXk6IGJsb2NrOyAvLyBhY2NvdW50IGZvciBhbnkgZWxlbWVudCB1c2luZyBoZWxwLWJsb2NrXHJcbiAgbWFyZ2luLXRvcDogNXB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgY29sb3I6IGxpZ2h0ZW4oJHRleHQtY29sb3IsIDI1JSk7IC8vIGxpZ2h0ZW4gdGhlIHRleHQgc29tZSBmb3IgY29udHJhc3RcclxufVxyXG5cclxuXHJcbi8vIElubGluZSBmb3Jtc1xyXG4vL1xyXG4vLyBNYWtlIGZvcm1zIGFwcGVhciBpbmxpbmUoLWJsb2NrKSBieSBhZGRpbmcgdGhlIGAuZm9ybS1pbmxpbmVgIGNsYXNzLiBJbmxpbmVcclxuLy8gZm9ybXMgYmVnaW4gc3RhY2tlZCBvbiBleHRyYSBzbWFsbCAobW9iaWxlKSBkZXZpY2VzIGFuZCB0aGVuIGdvIGlubGluZSB3aGVuXHJcbi8vIHZpZXdwb3J0cyByZWFjaCA8NzY4cHguXHJcbi8vXHJcbi8vIFJlcXVpcmVzIHdyYXBwaW5nIGlucHV0cyBhbmQgbGFiZWxzIHdpdGggYC5mb3JtLWdyb3VwYCBmb3IgcHJvcGVyIGRpc3BsYXkgb2ZcclxuLy8gZGVmYXVsdCBIVE1MIGZvcm0gY29udHJvbHMgYW5kIG91ciBjdXN0b20gZm9ybSBjb250cm9scyAoZS5nLiwgaW5wdXQgZ3JvdXBzKS5cclxuLy9cclxuLy8gSGVhZHMgdXAhIFRoaXMgaXMgbWl4aW4tZWQgaW50byBgLm5hdmJhci1mb3JtYCBpbiBuYXZiYXJzLmxlc3MuXHJcblxyXG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgZnJvbSBgLmZvcm0taW5saW5lYCBmb3IgbGlic2FzcyBjb21wYXRpYmlsaXR5XHJcbkBtaXhpbiBmb3JtLWlubGluZSB7XHJcblxyXG4gIC8vIEtpY2sgaW4gdGhlIGlubGluZVxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG4gICAgLy8gSW5saW5lLWJsb2NrIGFsbCB0aGUgdGhpbmdzIGZvciBcImlubGluZVwiXHJcbiAgICAuZm9ybS1ncm91cCB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBJbiBuYXZiYXItZm9ybSwgYWxsb3cgZm9sa3MgdG8gKm5vdCogdXNlIGAuZm9ybS1ncm91cGBcclxuICAgIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHdpZHRoOiBhdXRvOyAvLyBQcmV2ZW50IGxhYmVscyBmcm9tIHN0YWNraW5nIGFib3ZlIGlucHV0cyBpbiBgLmZvcm0tZ3JvdXBgXHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gTWFrZSBzdGF0aWMgY29udHJvbHMgYmVoYXZlIGxpa2UgcmVndWxhciBvbmVzXHJcbiAgICAuZm9ybS1jb250cm9sLXN0YXRpYyB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIH1cclxuXHJcbiAgICAuaW5wdXQtZ3JvdXAge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtdGFibGU7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcblxyXG4gICAgICAuaW5wdXQtZ3JvdXAtYWRkb24sXHJcbiAgICAgIC5pbnB1dC1ncm91cC1idG4sXHJcbiAgICAgIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gSW5wdXQgZ3JvdXBzIG5lZWQgdGhhdCAxMDAlIHdpZHRoIHRob3VnaFxyXG4gICAgLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbCB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5jb250cm9sLWxhYmVsIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gb24gcmFkaW9zL2NoZWNrYm94ZXMgdGhhdCB3ZXJlIHVzZWQgZm9yIHN0YWNraW5nLCBhbmRcclxuICAgIC8vIHRoZW4gdW5kbyB0aGUgZmxvYXRpbmcgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzIHRvIG1hdGNoLlxyXG4gICAgLnJhZGlvLFxyXG4gICAgLmNoZWNrYm94IHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cclxuICAgICAgbGFiZWwge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcclxuICAgIC5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFJlLW92ZXJyaWRlIHRoZSBmZWVkYmFjayBpY29uLlxyXG4gICAgLmhhcy1mZWVkYmFjayAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYXMgYEBtaXhpbiBmb3JtLWlubGluZWAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxyXG4uZm9ybS1pbmxpbmUge1xyXG4gIEBpbmNsdWRlIGZvcm0taW5saW5lO1xyXG59XHJcblxyXG5cclxuXHJcbi8vIEhvcml6b250YWwgZm9ybXNcclxuLy9cclxuLy8gSG9yaXpvbnRhbCBmb3JtcyBhcmUgYnVpbHQgb24gZ3JpZCBjbGFzc2VzIGFuZCBhbGxvdyB5b3UgdG8gY3JlYXRlIGZvcm1zIHdpdGhcclxuLy8gbGFiZWxzIG9uIHRoZSBsZWZ0IGFuZCBpbnB1dHMgb24gdGhlIHJpZ2h0LlxyXG5cclxuLmZvcm0taG9yaXpvbnRhbCB7XHJcblxyXG4gIC8vIENvbnNpc3RlbnQgdmVydGljYWwgYWxpZ25tZW50IG9mIHJhZGlvcyBhbmQgY2hlY2tib3hlc1xyXG4gIC8vXHJcbiAgLy8gTGFiZWxzIGFsc28gZ2V0IHNvbWUgcmVzZXQgc3R5bGVzLCBidXQgdGhhdCBpcyBzY29wZWQgdG8gYSBtZWRpYSBxdWVyeSBiZWxvdy5cclxuICAucmFkaW8sXHJcbiAgLmNoZWNrYm94LFxyXG4gIC5yYWRpby1pbmxpbmUsXHJcbiAgLmNoZWNrYm94LWlubGluZSB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpOyAvLyBEZWZhdWx0IHBhZGRpbmcgcGx1cyBhIGJvcmRlclxyXG4gIH1cclxuICAvLyBBY2NvdW50IGZvciBwYWRkaW5nIHdlJ3JlIGFkZGluZyB0byBlbnN1cmUgdGhlIGFsaWdubWVudCBhbmQgb2YgaGVscCB0ZXh0XHJcbiAgLy8gYW5kIG90aGVyIGNvbnRlbnQgYmVsb3cgaXRlbXNcclxuICAucmFkaW8sXHJcbiAgLmNoZWNrYm94IHtcclxuICAgIG1pbi1oZWlnaHQ6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpKTtcclxuICB9XHJcblxyXG4gIC8vIE1ha2UgZm9ybSBncm91cHMgYmVoYXZlIGxpa2Ugcm93c1xyXG4gIC5mb3JtLWdyb3VwIHtcclxuICAgIEBpbmNsdWRlIG1ha2Utcm93O1xyXG4gIH1cclxuXHJcbiAgLy8gUmVzZXQgc3BhY2luZyBhbmQgcmlnaHQgYWxpZ24gbGFiZWxzLCBidXQgc2NvcGUgdG8gbWVkaWEgcXVlcmllcyBzbyB0aGF0XHJcbiAgLy8gbGFiZWxzIG9uIG5hcnJvdyB2aWV3cG9ydHMgc3RhY2sgdGhlIHNhbWUgYXMgYSBkZWZhdWx0IGZvcm0gZXhhbXBsZS5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuICAgIC5jb250cm9sLWxhYmVsIHtcclxuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpOyAvLyBEZWZhdWx0IHBhZGRpbmcgcGx1cyBhIGJvcmRlclxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gVmFsaWRhdGlvbiBzdGF0ZXNcclxuICAvL1xyXG4gIC8vIFJlcG9zaXRpb24gdGhlIGljb24gYmVjYXVzZSBpdCdzIG5vdyB3aXRoaW4gYSBncmlkIGNvbHVtbiBhbmQgY29sdW1ucyBoYXZlXHJcbiAgLy8gYHBvc2l0aW9uOiByZWxhdGl2ZTtgIG9uIHRoZW0uIEFsc28gYWNjb3VudHMgZm9yIHRoZSBncmlkIGd1dHRlciBwYWRkaW5nLlxyXG4gIC5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XHJcbiAgICByaWdodDogZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKTtcclxuICB9XHJcblxyXG4gIC8vIEZvcm0gZ3JvdXAgc2l6ZXNcclxuICAvL1xyXG4gIC8vIFF1aWNrIHV0aWxpdHkgY2xhc3MgZm9yIGFwcGx5aW5nIGAuaW5wdXQtbGdgIGFuZCBgLmlucHV0LXNtYCBzdHlsZXMgdG8gdGhlXHJcbiAgLy8gaW5wdXRzIGFuZCBsYWJlbHMgd2l0aGluIGEgYC5mb3JtLWdyb3VwYC5cclxuICAuZm9ybS1ncm91cC1sZyB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuICAgICAgLmNvbnRyb2wtbGFiZWwge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgKyAxKTtcclxuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLmZvcm0tZ3JvdXAtc20ge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcbiAgICAgIC5jb250cm9sLWxhYmVsIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICsgMSk7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIEJ1dHRvbnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBCYXNlIHN0eWxlc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmJ0biB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIEZvciBpbnB1dC5idG5cclxuICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVzZXQgdW51c3VhbCBGaXJlZm94LW9uLUFuZHJvaWQgZGVmYXVsdCBzdHlsZTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MvaXNzdWVzLzIxNFxyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsLCAkZm9udC1zaXplLWJhc2UsICRsaW5lLWhlaWdodC1iYXNlLCAkYnRuLWJvcmRlci1yYWRpdXMtYmFzZSk7XHJcbiAgQGluY2x1ZGUgdXNlci1zZWxlY3Qobm9uZSk7XHJcblxyXG4gICYsXHJcbiAgJjphY3RpdmUsXHJcbiAgJi5hY3RpdmUge1xyXG4gICAgJjpmb2N1cyxcclxuICAgICYuZm9jdXMge1xyXG4gICAgICBAaW5jbHVkZSB0YWItZm9jdXM7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMsXHJcbiAgJi5mb2N1cyB7XHJcbiAgICBjb2xvcjogJGJ0bi1kZWZhdWx0LWNvbG9yO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIH1cclxuXHJcbiAgJjphY3RpdmUsXHJcbiAgJi5hY3RpdmUge1xyXG4gICAgb3V0bGluZTogMDtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgM3B4IDVweCByZ2JhKDAsMCwwLC4xMjUpKTtcclxuICB9XHJcblxyXG4gICYuZGlzYWJsZWQsXHJcbiAgJltkaXNhYmxlZF0sXHJcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xyXG4gICAgQGluY2x1ZGUgb3BhY2l0eSguNjUpO1xyXG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcclxuICB9XHJcblxyXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJiB0byBhLmJ0blxyXG59XHJcblxyXG5hLmJ0biB7XHJcbiAgJi5kaXNhYmxlZCxcclxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBBbHRlcm5hdGUgYnV0dG9uc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmJ0bi1kZWZhdWx0IHtcclxuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWRlZmF1bHQtY29sb3IsICRidG4tZGVmYXVsdC1iZywgJGJ0bi1kZWZhdWx0LWJvcmRlcik7XHJcbn1cclxuLmJ0bi1wcmltYXJ5IHtcclxuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXByaW1hcnktY29sb3IsICRidG4tcHJpbWFyeS1iZywgJGJ0bi1wcmltYXJ5LWJvcmRlcik7XHJcbn1cclxuLy8gU3VjY2VzcyBhcHBlYXJzIGFzIGdyZWVuXHJcbi5idG4tc3VjY2VzcyB7XHJcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1zdWNjZXNzLWNvbG9yLCAkYnRuLXN1Y2Nlc3MtYmcsICRidG4tc3VjY2Vzcy1ib3JkZXIpO1xyXG59XHJcbi8vIEluZm8gYXBwZWFycyBhcyBibHVlLWdyZWVuXHJcbi5idG4taW5mbyB7XHJcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1pbmZvLWNvbG9yLCAkYnRuLWluZm8tYmcsICRidG4taW5mby1ib3JkZXIpO1xyXG59XHJcbi8vIFdhcm5pbmcgYXBwZWFycyBhcyBvcmFuZ2VcclxuLmJ0bi13YXJuaW5nIHtcclxuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXdhcm5pbmctY29sb3IsICRidG4td2FybmluZy1iZywgJGJ0bi13YXJuaW5nLWJvcmRlcik7XHJcbn1cclxuLy8gRGFuZ2VyIGFuZCBlcnJvciBhcHBlYXIgYXMgcmVkXHJcbi5idG4tZGFuZ2VyIHtcclxuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWRhbmdlci1jb2xvciwgJGJ0bi1kYW5nZXItYmcsICRidG4tZGFuZ2VyLWJvcmRlcik7XHJcbn1cclxuXHJcblxyXG4vLyBMaW5rIGJ1dHRvbnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcclxuLmJ0bi1saW5rIHtcclxuICBjb2xvcjogJGxpbmstY29sb3I7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBib3JkZXItcmFkaXVzOiAwO1xyXG5cclxuICAmLFxyXG4gICY6YWN0aXZlLFxyXG4gICYuYWN0aXZlLFxyXG4gICZbZGlzYWJsZWRdLFxyXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcclxuICB9XHJcbiAgJixcclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMsXHJcbiAgJjphY3RpdmUge1xyXG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICB9XHJcbiAgJjpob3ZlcixcclxuICAmOmZvY3VzIHtcclxuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIH1cclxuICAmW2Rpc2FibGVkXSxcclxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGNvbG9yOiAkYnRuLWxpbmstZGlzYWJsZWQtY29sb3I7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBCdXR0b24gU2l6ZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5idG4tbGcge1xyXG4gIC8vIGxpbmUtaGVpZ2h0OiBlbnN1cmUgZXZlbi1udW1iZXJlZCBoZWlnaHQgb2YgYnV0dG9uIG5leHQgdG8gbGFyZ2UgaW5wdXRcclxuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1sYXJnZSwgJGxpbmUtaGVpZ2h0LWxhcmdlLCAkYnRuLWJvcmRlci1yYWRpdXMtbGFyZ2UpO1xyXG59XHJcbi5idG4tc20ge1xyXG4gIC8vIGxpbmUtaGVpZ2h0OiBlbnN1cmUgcHJvcGVyIGhlaWdodCBvZiBidXR0b24gbmV4dCB0byBzbWFsbCBpbnB1dFxyXG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsLCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsLCAkZm9udC1zaXplLXNtYWxsLCAkbGluZS1oZWlnaHQtc21hbGwsICRidG4tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbn1cclxuLmJ0bi14cyB7XHJcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmcteHMtdmVydGljYWwsICRwYWRkaW5nLXhzLWhvcml6b250YWwsICRmb250LXNpemUtc21hbGwsICRsaW5lLWhlaWdodC1zbWFsbCwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxufVxyXG5cclxuXHJcbi8vIEJsb2NrIGJ1dHRvblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmJ0bi1ibG9jayB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8vIFZlcnRpY2FsbHkgc3BhY2Ugb3V0IG11bHRpcGxlIGJsb2NrIGJ1dHRvbnNcclxuLmJ0bi1ibG9jayArIC5idG4tYmxvY2sge1xyXG4gIG1hcmdpbi10b3A6IDVweDtcclxufVxyXG5cclxuLy8gU3BlY2lmaWNpdHkgb3ZlcnJpZGVzXHJcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXHJcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcclxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSB7XHJcbiAgJi5idG4tYmxvY2sge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIERyb3Bkb3duIG1lbnVzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gRHJvcGRvd24gYXJyb3cvY2FyZXRcclxuLmNhcmV0IHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgd2lkdGg6IDA7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIG1hcmdpbi1sZWZ0OiAycHg7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICBib3JkZXItdG9wOiAgICRjYXJldC13aWR0aC1iYXNlIGRhc2hlZDtcclxuICBib3JkZXItdG9wOiAgICRjYXJldC13aWR0aC1iYXNlIHNvbGlkIFxcOTsgLy8gSUU4XHJcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGgtYmFzZSBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItbGVmdDogICRjYXJldC13aWR0aC1iYXNlIHNvbGlkIHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4vLyBUaGUgZHJvcGRvd24gd3JhcHBlciAoZGl2KVxyXG4uZHJvcHVwLFxyXG4uZHJvcGRvd24ge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLy8gUHJldmVudCB0aGUgZm9jdXMgb24gdGhlIGRyb3Bkb3duIHRvZ2dsZSB3aGVuIGNsb3NpbmcgZHJvcGRvd25zXHJcbi5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xyXG4gIG91dGxpbmU6IDA7XHJcbn1cclxuXHJcbi8vIFRoZSBkcm9wZG93biBtZW51ICh1bClcclxuLmRyb3Bkb3duLW1lbnUge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDEwMCU7XHJcbiAgbGVmdDogMDtcclxuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xyXG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XHJcbiAgZmxvYXQ6IGxlZnQ7XHJcbiAgbWluLXdpZHRoOiAxNjBweDtcclxuICBwYWRkaW5nOiA1cHggMDtcclxuICBtYXJnaW46IDJweCAwIDA7IC8vIG92ZXJyaWRlIGRlZmF1bHQgdWxcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEVuc3VyZXMgcHJvcGVyIGFsaWdubWVudCBpZiBwYXJlbnQgaGFzIGl0IGNoYW5nZWQgKGUuZy4sIG1vZGFsIGZvb3RlcilcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmc7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgJGRyb3Bkb3duLWZhbGxiYWNrLWJvcmRlcjsgLy8gSUU4IGZhbGxiYWNrXHJcbiAgYm9yZGVyOiAxcHggc29saWQgJGRyb3Bkb3duLWJvcmRlcjtcclxuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMCA2cHggMTJweCByZ2JhKDAsMCwwLC4xNzUpKTtcclxuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xyXG5cclxuICAvLyBBbGlnbnMgdGhlIGRyb3Bkb3duIG1lbnUgdG8gcmlnaHRcclxuICAvL1xyXG4gIC8vIERlcHJlY2F0ZWQgYXMgb2YgMy4xLjAgaW4gZmF2b3Igb2YgYC5kcm9wZG93bi1tZW51LVtkaXJdYFxyXG4gICYucHVsbC1yaWdodCB7XHJcbiAgICByaWdodDogMDtcclxuICAgIGxlZnQ6IGF1dG87XHJcbiAgfVxyXG5cclxuICAvLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gdGhlIGRyb3Bkb3duXHJcbiAgLmRpdmlkZXIge1xyXG4gICAgQGluY2x1ZGUgbmF2LWRpdmlkZXIoJGRyb3Bkb3duLWRpdmlkZXItYmcpO1xyXG4gIH1cclxuXHJcbiAgLy8gTGlua3Mgd2l0aGluIHRoZSBkcm9wZG93biBtZW51XHJcbiAgPiBsaSA+IGEge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwYWRkaW5nOiAzcHggMjBweDtcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcclxuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xyXG4gIH1cclxufVxyXG5cclxuLy8gSG92ZXIvRm9jdXMgc3RhdGVcclxuLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEge1xyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1iZztcclxuICB9XHJcbn1cclxuXHJcbi8vIEFjdGl2ZSBzdGF0ZVxyXG4uZHJvcGRvd24tbWVudSA+IC5hY3RpdmUgPiBhIHtcclxuICAmLFxyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgb3V0bGluZTogMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZztcclxuICB9XHJcbn1cclxuXHJcbi8vIERpc2FibGVkIHN0YXRlXHJcbi8vXHJcbi8vIEdyYXkgb3V0IHRleHQgYW5kIGVuc3VyZSB0aGUgaG92ZXIvZm9jdXMgc3RhdGUgcmVtYWlucyBncmF5XHJcblxyXG4uZHJvcGRvd24tbWVudSA+IC5kaXNhYmxlZCA+IGEge1xyXG4gICYsXHJcbiAgJjpob3ZlcixcclxuICAmOmZvY3VzIHtcclxuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjtcclxuICB9XHJcblxyXG4gIC8vIE51a2UgaG92ZXIvZm9jdXMgZWZmZWN0c1xyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRcclxuICAgIEBpbmNsdWRlIHJlc2V0LWZpbHRlcjtcclxuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcclxuICB9XHJcbn1cclxuXHJcbi8vIE9wZW4gc3RhdGUgZm9yIHRoZSBkcm9wZG93blxyXG4ub3BlbiB7XHJcbiAgLy8gU2hvdyB0aGUgbWVudVxyXG4gID4gLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG5cclxuICAvLyBSZW1vdmUgdGhlIG91dGxpbmUgd2hlbiA6Zm9jdXMgaXMgdHJpZ2dlcmVkXHJcbiAgPiBhIHtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNZW51IHBvc2l0aW9uaW5nXHJcbi8vXHJcbi8vIEFkZCBleHRyYSBjbGFzcyB0byBgLmRyb3Bkb3duLW1lbnVgIHRvIGZsaXAgdGhlIGFsaWdubWVudCBvZiB0aGUgZHJvcGRvd25cclxuLy8gbWVudSB3aXRoIHRoZSBwYXJlbnQuXHJcbi5kcm9wZG93bi1tZW51LXJpZ2h0IHtcclxuICBsZWZ0OiBhdXRvOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIGAuZHJvcGRvd24tbWVudWBcclxuICByaWdodDogMDtcclxufVxyXG4vLyBXaXRoIHYzLCB3ZSBlbmFibGVkIGF1dG8tZmxpcHBpbmcgaWYgeW91IGhhdmUgYSBkcm9wZG93biB3aXRoaW4gYSByaWdodFxyXG4vLyBhbGlnbmVkIG5hdiBjb21wb25lbnQuIFRvIGVuYWJsZSB0aGUgdW5kb2luZyBvZiB0aGF0LCB3ZSBwcm92aWRlIGFuIG92ZXJyaWRlXHJcbi8vIHRvIHJlc3RvcmUgdGhlIGRlZmF1bHQgZHJvcGRvd24gbWVudSBhbGlnbm1lbnQuXHJcbi8vXHJcbi8vIFRoaXMgaXMgb25seSBmb3IgbGVmdC1hbGlnbmluZyBhIGRyb3Bkb3duIG1lbnUgd2l0aGluIGEgYC5uYXZiYXItcmlnaHRgIG9yXHJcbi8vIGAucHVsbC1yaWdodGAgbmF2IGNvbXBvbmVudC5cclxuLmRyb3Bkb3duLW1lbnUtbGVmdCB7XHJcbiAgbGVmdDogMDtcclxuICByaWdodDogYXV0bztcclxufVxyXG5cclxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXHJcbi5kcm9wZG93bi1oZWFkZXIge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBhZGRpbmc6IDNweCAyMHB4O1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcclxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcbiAgY29sb3I6ICRkcm9wZG93bi1oZWFkZXItY29sb3I7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxyXG59XHJcblxyXG4vLyBCYWNrZHJvcCB0byBjYXRjaCBib2R5IGNsaWNrcyBvbiBtb2JpbGUsIGV0Yy5cclxuLmRyb3Bkb3duLWJhY2tkcm9wIHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgbGVmdDogMDtcclxuICByaWdodDogMDtcclxuICBib3R0b206IDA7XHJcbiAgdG9wOiAwO1xyXG4gIHotaW5kZXg6ICgkemluZGV4LWRyb3Bkb3duIC0gMTApO1xyXG59XHJcblxyXG4vLyBSaWdodCBhbGlnbmVkIGRyb3Bkb3duc1xyXG4ucHVsbC1yaWdodCA+IC5kcm9wZG93bi1tZW51IHtcclxuICByaWdodDogMDtcclxuICBsZWZ0OiBhdXRvO1xyXG59XHJcblxyXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcclxuLy9cclxuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LCBicm8uXHJcbi8vIFRPRE86IGFic3RyYWN0IHRoaXMgc28gdGhhdCB0aGUgbmF2YmFyIGZpeGVkIHN0eWxlcyBhcmUgbm90IHBsYWNlZCBoZXJlP1xyXG5cclxuLmRyb3B1cCxcclxuLm5hdmJhci1maXhlZC1ib3R0b20gLmRyb3Bkb3duIHtcclxuICAvLyBSZXZlcnNlIHRoZSBjYXJldFxyXG4gIC5jYXJldCB7XHJcbiAgICBib3JkZXItdG9wOiAwO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoLWJhc2UgZGFzaGVkO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoLWJhc2Ugc29saWQgXFw5OyAvLyBJRThcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgfVxyXG4gIC8vIERpZmZlcmVudCBwb3NpdGlvbmluZyBmb3IgYm90dG9tIHVwIG1lbnVcclxuICAuZHJvcGRvd24tbWVudSB7XHJcbiAgICB0b3A6IGF1dG87XHJcbiAgICBib3R0b206IDEwMCU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gQ29tcG9uZW50IGFsaWdubWVudFxyXG4vL1xyXG4vLyBSZWl0ZXJhdGUgcGVyIG5hdmJhci5sZXNzIGFuZCB0aGUgbW9kaWZpZWQgY29tcG9uZW50IGFsaWdubWVudCB0aGVyZS5cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XHJcbiAgLm5hdmJhci1yaWdodCB7XHJcbiAgICAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgIHJpZ2h0OiAwOyBsZWZ0OiBhdXRvO1xyXG4gICAgfVxyXG4gICAgLy8gTmVjZXNzYXJ5IGZvciBvdmVycmlkZXMgb2YgdGhlIGRlZmF1bHQgcmlnaHQgYWxpZ25lZCBtZW51LlxyXG4gICAgLy8gV2lsbCByZW1vdmUgY29tZSB2NCBpbiBhbGwgbGlrZWxpaG9vZC5cclxuICAgIC5kcm9wZG93bi1tZW51LWxlZnQge1xyXG4gICAgICBsZWZ0OiAwOyByaWdodDogYXV0bztcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gQnV0dG9uIGdyb3Vwc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gTWFrZSB0aGUgZGl2IGJlaGF2ZSBsaWtlIGEgYnV0dG9uXHJcbi5idG4tZ3JvdXAsXHJcbi5idG4tZ3JvdXAtdmVydGljYWwge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gbWF0Y2ggLmJ0biBhbGlnbm1lbnQgZ2l2ZW4gZm9udC1zaXplIGhhY2sgYWJvdmVcclxuICA+IC5idG4ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAvLyBCcmluZyB0aGUgXCJhY3RpdmVcIiBidXR0b24gdG8gdGhlIGZyb250XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyxcclxuICAgICY6YWN0aXZlLFxyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICB6LWluZGV4OiAyO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxyXG4uYnRuLWdyb3VwIHtcclxuICAuYnRuICsgLmJ0bixcclxuICAuYnRuICsgLmJ0bi1ncm91cCxcclxuICAuYnRuLWdyb3VwICsgLmJ0bixcclxuICAuYnRuLWdyb3VwICsgLmJ0bi1ncm91cCB7XHJcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcclxuICB9XHJcbn1cclxuXHJcbi8vIE9wdGlvbmFsOiBHcm91cCBtdWx0aXBsZSBidXR0b24gZ3JvdXBzIHRvZ2V0aGVyIGZvciBhIHRvb2xiYXJcclxuLmJ0bi10b29sYmFyIHtcclxuICBtYXJnaW4tbGVmdDogLTVweDsgLy8gT2Zmc2V0IHRoZSBmaXJzdCBjaGlsZCdzIG1hcmdpblxyXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xyXG5cclxuICAuYnRuLFxyXG4gIC5idG4tZ3JvdXAsXHJcbiAgLmlucHV0LWdyb3VwIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gIH1cclxuICA+IC5idG4sXHJcbiAgPiAuYnRuLWdyb3VwLFxyXG4gID4gLmlucHV0LWdyb3VwIHtcclxuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uYnRuLWdyb3VwID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSB7XHJcbiAgYm9yZGVyLXJhZGl1czogMDtcclxufVxyXG5cclxuLy8gU2V0IGNvcm5lcnMgaW5kaXZpZHVhbCBiZWNhdXNlIHNvbWV0aW1lcyBhIHNpbmdsZSBidXR0b24gY2FuIGJlIGluIGEgLmJ0bi1ncm91cCBhbmQgd2UgbmVlZCA6Zmlyc3QtY2hpbGQgYW5kIDpsYXN0LWNoaWxkIHRvIGJvdGggbWF0Y2hcclxuLmJ0bi1ncm91cCA+IC5idG46Zmlyc3QtY2hpbGQge1xyXG4gIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICY6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSkge1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcclxuICB9XHJcbn1cclxuLy8gTmVlZCAuZHJvcGRvd24tdG9nZ2xlIHNpbmNlIDpsYXN0LWNoaWxkIGRvZXNuJ3QgYXBwbHksIGdpdmVuIHRoYXQgYSAuZHJvcGRvd24tbWVudSBpcyB1c2VkIGltbWVkaWF0ZWx5IGFmdGVyIGl0XHJcbi5idG4tZ3JvdXAgPiAuYnRuOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXHJcbi5idG4tZ3JvdXAgPiAuZHJvcGRvd24tdG9nZ2xlOm5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XHJcbn1cclxuXHJcbi8vIEN1c3RvbSBlZGl0cyBmb3IgaW5jbHVkaW5nIGJ0bi1ncm91cHMgd2l0aGluIGJ0bi1ncm91cHMgKHVzZWZ1bCBmb3IgaW5jbHVkaW5nIGRyb3Bkb3duIGJ1dHRvbnMgd2l0aGluIGEgYnRuLWdyb3VwKVxyXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cCB7XHJcbiAgZmxvYXQ6IGxlZnQ7XHJcbn1cclxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7XHJcbn1cclxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgPiAuYnRuOmxhc3QtY2hpbGQsXHJcbiAgPiAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XHJcbiAgfVxyXG59XHJcbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOmZpcnN0LWNoaWxkIHtcclxuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XHJcbn1cclxuXHJcbi8vIE9uIGFjdGl2ZSBhbmQgb3BlbiwgZG9uJ3Qgc2hvdyBvdXRsaW5lXHJcbi5idG4tZ3JvdXAgLmRyb3Bkb3duLXRvZ2dsZTphY3RpdmUsXHJcbi5idG4tZ3JvdXAub3BlbiAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICBvdXRsaW5lOiAwO1xyXG59XHJcblxyXG5cclxuLy8gU2l6aW5nXHJcbi8vXHJcbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGJ1dHRvbiBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXIgbWFuaXB1bGF0aW9uLlxyXG5cclxuLmJ0bi1ncm91cC14cyA+IC5idG4geyBAZXh0ZW5kIC5idG4teHM7IH1cclxuLmJ0bi1ncm91cC1zbSA+IC5idG4geyBAZXh0ZW5kIC5idG4tc207IH1cclxuLmJ0bi1ncm91cC1sZyA+IC5idG4geyBAZXh0ZW5kIC5idG4tbGc7IH1cclxuXHJcblxyXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIEdpdmUgdGhlIGxpbmUgYmV0d2VlbiBidXR0b25zIHNvbWUgZGVwdGhcclxuLmJ0bi1ncm91cCA+IC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICBwYWRkaW5nLWxlZnQ6IDhweDtcclxuICBwYWRkaW5nLXJpZ2h0OiA4cHg7XHJcbn1cclxuLmJ0bi1ncm91cCA+IC5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICBwYWRkaW5nLWxlZnQ6IDEycHg7XHJcbiAgcGFkZGluZy1yaWdodDogMTJweDtcclxufVxyXG5cclxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XHJcbi8vIFJlbW92ZSB0aGUgZ3JhZGllbnQgYW5kIHNldCB0aGUgc2FtZSBpbnNldCBzaGFkb3cgYXMgdGhlIDphY3RpdmUgc3RhdGVcclxuLmJ0bi1ncm91cC5vcGVuIC5kcm9wZG93bi10b2dnbGUge1xyXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwwLDAsLjEyNSkpO1xyXG5cclxuICAvLyBTaG93IG5vIHNoYWRvdyBmb3IgYC5idG4tbGlua2Agc2luY2UgaXQgaGFzIG5vIG90aGVyIGJ1dHRvbiBzdHlsZXMuXHJcbiAgJi5idG4tbGluayB7XHJcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIFJlcG9zaXRpb24gdGhlIGNhcmV0XHJcbi5idG4gLmNhcmV0IHtcclxuICBtYXJnaW4tbGVmdDogMDtcclxufVxyXG4vLyBDYXJldHMgaW4gb3RoZXIgYnV0dG9uIHNpemVzXHJcbi5idG4tbGcgLmNhcmV0IHtcclxuICBib3JkZXItd2lkdGg6ICRjYXJldC13aWR0aC1sYXJnZSAkY2FyZXQtd2lkdGgtbGFyZ2UgMDtcclxuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xyXG59XHJcbi8vIFVwc2lkZSBkb3duIGNhcmV0cyBmb3IgLmRyb3B1cFxyXG4uZHJvcHVwIC5idG4tbGcgLmNhcmV0IHtcclxuICBib3JkZXItd2lkdGg6IDAgJGNhcmV0LXdpZHRoLWxhcmdlICRjYXJldC13aWR0aC1sYXJnZTtcclxufVxyXG5cclxuXHJcbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XHJcbiAgPiAuYnRuLFxyXG4gID4gLmJ0bi1ncm91cCxcclxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZmxvYXQ6IG5vbmU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICB9XHJcblxyXG4gIC8vIENsZWFyIGZsb2F0cyBzbyBkcm9wZG93biBtZW51cyBjYW4gYmUgcHJvcGVybHkgcGxhY2VkXHJcbiAgPiAuYnRuLWdyb3VwIHtcclxuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgPiAuYnRuIHtcclxuICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICA+IC5idG4gKyAuYnRuLFxyXG4gID4gLmJ0biArIC5idG4tZ3JvdXAsXHJcbiAgPiAuYnRuLWdyb3VwICsgLmJ0bixcclxuICA+IC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcclxuICAgIG1hcmdpbi10b3A6IC0xcHg7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuICB9XHJcbn1cclxuXHJcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIHtcclxuICAmOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICB9XHJcbiAgJjpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRidG4tYm9yZGVyLXJhZGl1cy1iYXNlKTtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xyXG4gIH1cclxuICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XHJcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkYnRuLWJvcmRlci1yYWRpdXMtYmFzZSk7XHJcbiAgfVxyXG59XHJcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcclxuICBib3JkZXItcmFkaXVzOiAwO1xyXG59XHJcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gID4gLmJ0bjpsYXN0LWNoaWxkLFxyXG4gID4gLmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcclxuICB9XHJcbn1cclxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG46Zmlyc3QtY2hpbGQge1xyXG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xyXG59XHJcblxyXG5cclxuLy8gSnVzdGlmaWVkIGJ1dHRvbiBncm91cHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmJ0bi1ncm91cC1qdXN0aWZpZWQge1xyXG4gIGRpc3BsYXk6IHRhYmxlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XHJcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcclxuICA+IC5idG4sXHJcbiAgPiAuYnRuLWdyb3VwIHtcclxuICAgIGZsb2F0OiBub25lO1xyXG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcclxuICAgIHdpZHRoOiAxJTtcclxuICB9XHJcbiAgPiAuYnRuLWdyb3VwIC5idG4ge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG5cclxuICA+IC5idG4tZ3JvdXAgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgbGVmdDogYXV0bztcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBDaGVja2JveCBhbmQgcmFkaW8gb3B0aW9uc1xyXG4vL1xyXG4vLyBJbiBvcmRlciB0byBzdXBwb3J0IHRoZSBicm93c2VyJ3MgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrLCBwb3dlcmVkIGJ5IHRoZVxyXG4vLyBgcmVxdWlyZWRgIGF0dHJpYnV0ZSwgd2UgaGF2ZSB0byBcImhpZGVcIiB0aGUgaW5wdXRzIHZpYSBgY2xpcGAuIFdlIGNhbm5vdCB1c2VcclxuLy8gYGRpc3BsYXk6IG5vbmU7YCBvciBgdmlzaWJpbGl0eTogaGlkZGVuO2AgYXMgdGhhdCBhbHNvIGhpZGVzIHRoZSBwb3BvdmVyLlxyXG4vLyBTaW1wbHkgdmlzdWFsbHkgaGlkaW5nIHRoZSBpbnB1dHMgdmlhIGBvcGFjaXR5YCB3b3VsZCBsZWF2ZSB0aGVtIGNsaWNrYWJsZSBpblxyXG4vLyBjZXJ0YWluIGNhc2VzIHdoaWNoIGlzIHByZXZlbnRlZCBieSB1c2luZyBgY2xpcGAgYW5kIGBwb2ludGVyLWV2ZW50c2AuXHJcbi8vIFRoaXMgd2F5LCB3ZSBlbnN1cmUgYSBET00gZWxlbWVudCBpcyB2aXNpYmxlIHRvIHBvc2l0aW9uIHRoZSBwb3BvdmVyIGZyb20uXHJcbi8vXHJcbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMjc5NCBhbmRcclxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTQ1NTkgZm9yIG1vcmUgaW5mb3JtYXRpb24uXHJcblxyXG5bZGF0YS10b2dnbGU9XCJidXR0b25zXCJdIHtcclxuICA+IC5idG4sXHJcbiAgPiAuYnRuLWdyb3VwID4gLmJ0biB7XHJcbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXHJcbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGNsaXA6IHJlY3QoMCwwLDAsMCk7XHJcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBJbnB1dCBncm91cHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIEJhc2Ugc3R5bGVzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLmlucHV0LWdyb3VwIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBkcm9wZG93bnNcclxuICBkaXNwbGF5OiB0YWJsZTtcclxuICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlOyAvLyBwcmV2ZW50IGlucHV0IGdyb3VwcyBmcm9tIGluaGVyaXRpbmcgYm9yZGVyIHN0eWxlcyBmcm9tIHRhYmxlIGNlbGxzIHdoZW4gcGxhY2VkIHdpdGhpbiBhIHRhYmxlXHJcblxyXG4gIC8vIFVuZG8gcGFkZGluZyBhbmQgZmxvYXQgb2YgZ3JpZCBjbGFzc2VzXHJcbiAgJltjbGFzcyo9XCJjb2wtXCJdIHtcclxuICAgIGZsb2F0OiBub25lO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgcGFkZGluZy1yaWdodDogMDtcclxuICB9XHJcblxyXG4gIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgLy8gRW5zdXJlIHRoYXQgdGhlIGlucHV0IGlzIGFsd2F5cyBhYm92ZSB0aGUgKmFwcGVuZGVkKiBhZGRvbiBidXR0b24gZm9yXHJcbiAgICAvLyBwcm9wZXIgYm9yZGVyIGNvbG9ycy5cclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDI7XHJcblxyXG4gICAgLy8gSUU5IGZ1YmFycyB0aGUgcGxhY2Vob2xkZXIgYXR0cmlidXRlIGluIHRleHQgaW5wdXRzIGFuZCB0aGUgYXJyb3dzIG9uXHJcbiAgICAvLyBzZWxlY3QgZWxlbWVudHMgaW4gaW5wdXQgZ3JvdXBzLiBUbyBmaXggaXQsIHdlIGZsb2F0IHRoZSBpbnB1dC4gRGV0YWlsczpcclxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1NjEjaXNzdWVjb21tZW50LTI4OTM2ODU1XHJcbiAgICBmbG9hdDogbGVmdDtcclxuXHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIHotaW5kZXg6IDM7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBTaXppbmcgb3B0aW9uc1xyXG4vL1xyXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBmb3JtIGNvbnRyb2wgc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyXHJcbi8vIG1hbmlwdWxhdGlvbi5cclxuXHJcbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXHJcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hZGRvbixcclxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4ge1xyXG4gIEBleHRlbmQgLmlucHV0LWxnO1xyXG59XHJcbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXHJcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hZGRvbixcclxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4ge1xyXG4gIEBleHRlbmQgLmlucHV0LXNtO1xyXG59XHJcblxyXG5cclxuLy8gRGlzcGxheSBhcyB0YWJsZS1jZWxsXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLmlucHV0LWdyb3VwLWFkZG9uLFxyXG4uaW5wdXQtZ3JvdXAtYnRuLFxyXG4uaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbCB7XHJcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcclxuXHJcbiAgJjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgfVxyXG59XHJcbi8vIEFkZG9uIGFuZCBhZGRvbiB3cmFwcGVyIGZvciBidXR0b25zXHJcbi5pbnB1dC1ncm91cC1hZGRvbixcclxuLmlucHV0LWdyb3VwLWJ0biB7XHJcbiAgd2lkdGg6IDElO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gTWF0Y2ggdGhlIGlucHV0c1xyXG59XHJcblxyXG4vLyBUZXh0IGlucHV0IGdyb3Vwc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5pbnB1dC1ncm91cC1hZGRvbiB7XHJcbiAgcGFkZGluZzogJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCAkcGFkZGluZy1iYXNlLWhvcml6b250YWw7XHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBsaW5lLWhlaWdodDogMTtcclxuICBjb2xvcjogJGlucHV0LWNvbG9yO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tYmc7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcclxuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1cztcclxuXHJcbiAgLy8gU2l6aW5nXHJcbiAgJi5pbnB1dC1zbSB7XHJcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xyXG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw7XHJcbiAgfVxyXG4gICYuaW5wdXQtbGcge1xyXG4gICAgcGFkZGluZzogJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcclxuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlO1xyXG4gIH1cclxuXHJcbiAgLy8gTnVrZSBkZWZhdWx0IG1hcmdpbnMgZnJvbSBjaGVja2JveGVzIGFuZCByYWRpb3MgdG8gdmVydGljYWxseSBjZW50ZXIgd2l0aGluLlxyXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcclxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICB9XHJcbn1cclxuXHJcbi8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xyXG4uaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbDpmaXJzdC1jaGlsZCxcclxuLmlucHV0LWdyb3VwLWFkZG9uOmZpcnN0LWNoaWxkLFxyXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bixcclxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG4tZ3JvdXAgPiAuYnRuLFxyXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmRyb3Bkb3duLXRvZ2dsZSxcclxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcclxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XHJcbiAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcclxufVxyXG4uaW5wdXQtZ3JvdXAtYWRkb246Zmlyc3QtY2hpbGQge1xyXG4gIGJvcmRlci1yaWdodDogMDtcclxufVxyXG4uaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbDpsYXN0LWNoaWxkLFxyXG4uaW5wdXQtZ3JvdXAtYWRkb246bGFzdC1jaGlsZCxcclxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bixcclxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bi1ncm91cCA+IC5idG4sXHJcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5kcm9wZG93bi10b2dnbGUsXHJcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxyXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xyXG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcclxufVxyXG4uaW5wdXQtZ3JvdXAtYWRkb246bGFzdC1jaGlsZCB7XHJcbiAgYm9yZGVyLWxlZnQ6IDA7XHJcbn1cclxuXHJcbi8vIEJ1dHRvbiBpbnB1dCBncm91cHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uaW5wdXQtZ3JvdXAtYnRuIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgLy8gSmFua2lseSBwcmV2ZW50IGlucHV0IGJ1dHRvbiBncm91cHMgZnJvbSB3cmFwcGluZyB3aXRoIGB3aGl0ZS1zcGFjZWAgYW5kXHJcbiAgLy8gYGZvbnQtc2l6ZWAgaW4gY29tYmluYXRpb24gd2l0aCBgaW5saW5lLWJsb2NrYCBvbiBidXR0b25zLlxyXG4gIGZvbnQtc2l6ZTogMDtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cclxuICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIHNwYWNpbmcsIHBvc2l0aW9uIGZvciBicmluZ2luZyBob3ZlcmVkL2ZvY3VzZWQvYWN0aXZlZFxyXG4gIC8vIGVsZW1lbnQgYWJvdmUgdGhlIHNpYmxpbmdzLlxyXG4gID4gLmJ0biB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICArIC5idG4ge1xyXG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcclxuICAgIH1cclxuICAgIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGJ1dHRvbiB0byB0aGUgZnJvbnRcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJjphY3RpdmUge1xyXG4gICAgICB6LWluZGV4OiAyO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gTmVnYXRpdmUgbWFyZ2luIHRvIG9ubHkgaGF2ZSBhIDFweCBib3JkZXIgYmV0d2VlbiB0aGUgdHdvXHJcbiAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICA+IC5idG4sXHJcbiAgICA+IC5idG4tZ3JvdXAge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xcHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gICY6bGFzdC1jaGlsZCB7XHJcbiAgICA+IC5idG4sXHJcbiAgICA+IC5idG4tZ3JvdXAge1xyXG4gICAgICB6LWluZGV4OiAyO1xyXG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gTW9kYWxzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXHJcbi8vIC5tb2RhbCAgICAgICAgICAgLSBjb250YWluZXIgdG8gc2Nyb2xsIHdpdGhpblxyXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcclxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc2hpdFxyXG5cclxuLy8gS2lsbCB0aGUgc2Nyb2xsIG9uIHRoZSBib2R5XHJcbi5tb2RhbC1vcGVuIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4vLyBDb250YWluZXIgdGhhdCB0aGUgbW9kYWwgc2Nyb2xscyB3aXRoaW5cclxuLm1vZGFsIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHRvcDogMDtcclxuICByaWdodDogMDtcclxuICBib3R0b206IDA7XHJcbiAgbGVmdDogMDtcclxuICB6LWluZGV4OiAkemluZGV4LW1vZGFsO1xyXG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcclxuXHJcbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcclxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMDk1MS5cclxuICBvdXRsaW5lOiAwO1xyXG5cclxuICAvLyBXaGVuIGZhZGluZyBpbiB0aGUgbW9kYWwsIGFuaW1hdGUgaXQgdG8gc2xpZGUgZG93blxyXG4gICYuZmFkZSAubW9kYWwtZGlhbG9nIHtcclxuICAgIEBpbmNsdWRlIHRyYW5zbGF0ZSgwLCAtMjUlKTtcclxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tdHJhbnNmb3JtKDAuM3MgZWFzZS1vdXQpO1xyXG4gIH1cclxuICAmLmluIC5tb2RhbC1kaWFsb2cgeyBAaW5jbHVkZSB0cmFuc2xhdGUoMCwgMCkgfVxyXG59XHJcbi5tb2RhbC1vcGVuIC5tb2RhbCB7XHJcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG4gIG92ZXJmbG93LXk6IGF1dG87XHJcbn1cclxuXHJcbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xyXG4ubW9kYWwtZGlhbG9nIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgd2lkdGg6IGF1dG87XHJcbiAgbWFyZ2luOiAxMHB4O1xyXG59XHJcblxyXG4vLyBBY3R1YWwgbW9kYWxcclxuLm1vZGFsLWNvbnRlbnQge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtY29udGVudC1iZztcclxuICBib3JkZXI6IDFweCBzb2xpZCAkbW9kYWwtY29udGVudC1mYWxsYmFjay1ib3JkZXItY29sb3I7IC8vb2xkIGJyb3dzZXJzIGZhbGxiYWNrIChpZTggZXRjKVxyXG4gIGJvcmRlcjogMXB4IHNvbGlkICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjtcclxuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcclxuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgM3B4IDlweCByZ2JhKDAsMCwwLC41KSk7XHJcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcclxuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxyXG4gIG91dGxpbmU6IDA7XHJcbn1cclxuXHJcbi8vIE1vZGFsIGJhY2tncm91bmRcclxuLm1vZGFsLWJhY2tkcm9wIHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIGJvdHRvbTogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWwtYmFja2dyb3VuZDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XHJcbiAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcclxuICAmLmZhZGUgeyBAaW5jbHVkZSBvcGFjaXR5KDApOyB9XHJcbiAgJi5pbiB7IEBpbmNsdWRlIG9wYWNpdHkoJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHkpOyB9XHJcbn1cclxuXHJcbi8vIE1vZGFsIGhlYWRlclxyXG4vLyBUb3Agc2VjdGlvbiBvZiB0aGUgbW9kYWwgdy8gdGl0bGUgYW5kIGRpc21pc3NcclxuLm1vZGFsLWhlYWRlciB7XHJcbiAgcGFkZGluZzogJG1vZGFsLXRpdGxlLXBhZGRpbmc7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yO1xyXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xyXG59XHJcbi8vIENsb3NlIGljb25cclxuLm1vZGFsLWhlYWRlciAuY2xvc2Uge1xyXG4gIG1hcmdpbi10b3A6IC0ycHg7XHJcbn1cclxuXHJcbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxyXG4ubW9kYWwtdGl0bGUge1xyXG4gIG1hcmdpbjogMDtcclxuICBsaW5lLWhlaWdodDogJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xyXG59XHJcblxyXG4vLyBNb2RhbCBib2R5XHJcbi8vIFdoZXJlIGFsbCBtb2RhbCBjb250ZW50IHJlc2lkZXMgKHNpYmxpbmcgb2YgLm1vZGFsLWhlYWRlciBhbmQgLm1vZGFsLWZvb3RlcilcclxuLm1vZGFsLWJvZHkge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZztcclxufVxyXG5cclxuLy8gRm9vdGVyIChmb3IgYWN0aW9ucylcclxuLm1vZGFsLWZvb3RlciB7XHJcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XHJcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IC8vIHJpZ2h0IGFsaWduIGJ1dHRvbnNcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I7XHJcbiAgQGluY2x1ZGUgY2xlYXJmaXg7IC8vIGNsZWFyIGl0IGluIGNhc2UgZm9sa3MgdXNlIC5wdWxsLSogY2xhc3NlcyBvbiBidXR0b25zXHJcblxyXG4gIC8vIFByb3Blcmx5IHNwYWNlIG91dCBidXR0b25zXHJcbiAgLmJ0biArIC5idG4ge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIGFjY291bnQgZm9yIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0gd2hpY2ggZ2V0cyB0aGUgYm90dG9tIG1hcmdpbiBsaWtlIGFsbCBvdGhlciBpbnB1dHNcclxuICB9XHJcbiAgLy8gYnV0IG92ZXJyaWRlIHRoYXQgZm9yIGJ1dHRvbiBncm91cHNcclxuICAuYnRuLWdyb3VwIC5idG4gKyAuYnRuIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xyXG4gIH1cclxuICAvLyBhbmQgb3ZlcnJpZGUgaXQgZm9yIGJsb2NrIGJ1dHRvbnMgYXMgd2VsbFxyXG4gIC5idG4tYmxvY2sgKyAuYnRuLWJsb2NrIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gIH1cclxufVxyXG5cclxuLy8gTWVhc3VyZSBzY3JvbGxiYXIgd2lkdGggZm9yIHBhZGRpbmcgYm9keSBkdXJpbmcgbW9kYWwgc2hvdy9oaWRlXHJcbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogLTk5OTlweDtcclxuICB3aWR0aDogNTBweDtcclxuICBoZWlnaHQ6IDUwcHg7XHJcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcclxufVxyXG5cclxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXHJcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG4gIC8vIEF1dG9tYXRpY2FsbHkgc2V0IG1vZGFsJ3Mgd2lkdGggZm9yIGxhcmdlciB2aWV3cG9ydHNcclxuICAubW9kYWwtZGlhbG9nIHtcclxuICAgIHdpZHRoOiAkbW9kYWwtbWQ7XHJcbiAgICBtYXJnaW46IDMwcHggYXV0bztcclxuICB9XHJcbiAgLm1vZGFsLWNvbnRlbnQge1xyXG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDVweCAxNXB4IHJnYmEoMCwwLDAsLjUpKTtcclxuICB9XHJcblxyXG4gIC8vIE1vZGFsIHNpemVzXHJcbiAgLm1vZGFsLXNtIHsgd2lkdGg6ICRtb2RhbC1zbTsgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcclxuICAubW9kYWwtbGcgeyB3aWR0aDogJG1vZGFsLWxnOyB9XHJcbn1cclxuIiwiLy9cclxuLy8gVG9vbHRpcHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBCYXNlIGNsYXNzXHJcbi50b29sdGlwIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgei1pbmRleDogJHppbmRleC10b29sdGlwO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cclxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxyXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQ7XHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xyXG5cclxuICBAaW5jbHVkZSBvcGFjaXR5KDApO1xyXG5cclxuICAmLmluICAgICB7IEBpbmNsdWRlIG9wYWNpdHkoJHRvb2x0aXAtb3BhY2l0eSk7IH1cclxuICAmLnRvcCAgICB7IG1hcmdpbi10b3A6ICAtM3B4OyBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAwOyB9XHJcbiAgJi5yaWdodCAgeyBtYXJnaW4tbGVmdDogIDNweDsgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy13aWR0aDsgfVxyXG4gICYuYm90dG9tIHsgbWFyZ2luLXRvcDogICAzcHg7IHBhZGRpbmc6ICR0b29sdGlwLWFycm93LXdpZHRoIDA7IH1cclxuICAmLmxlZnQgICB7IG1hcmdpbi1sZWZ0OiAtM3B4OyBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LXdpZHRoOyB9XHJcbn1cclxuXHJcbi8vIFdyYXBwZXIgZm9yIHRoZSB0b29sdGlwIGNvbnRlbnRcclxuLnRvb2x0aXAtaW5uZXIge1xyXG4gIG1heC13aWR0aDogJHRvb2x0aXAtbWF4LXdpZHRoO1xyXG4gIHBhZGRpbmc6IDNweCA4cHg7XHJcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iZztcclxuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG59XHJcblxyXG4vLyBBcnJvd3NcclxuLnRvb2x0aXAtYXJyb3cge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB3aWR0aDogMDtcclxuICBoZWlnaHQ6IDA7XHJcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG59XHJcbi8vIE5vdGU6IERlcHJlY2F0ZWQgLnRvcC1sZWZ0LCAudG9wLXJpZ2h0LCAuYm90dG9tLWxlZnQsIGFuZCAuYm90dG9tLXJpZ2h0IGFzIG9mIHYzLjMuMVxyXG4udG9vbHRpcCB7XHJcbiAgJi50b3AgLnRvb2x0aXAtYXJyb3cge1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcclxuICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xyXG4gIH1cclxuICAmLnRvcC1sZWZ0IC50b29sdGlwLWFycm93IHtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHJpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIG1hcmdpbi1ib3R0b206IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcclxuICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xyXG4gIH1cclxuICAmLnRvcC1yaWdodCAudG9vbHRpcC1hcnJvdyB7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBsZWZ0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIG1hcmdpbi1ib3R0b206IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcclxuICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xyXG4gIH1cclxuICAmLnJpZ2h0IC50b29sdGlwLWFycm93IHtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcclxuICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XHJcbiAgfVxyXG4gICYubGVmdCAudG9vbHRpcC1hcnJvdyB7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgbWFyZ2luLXRvcDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xyXG4gIH1cclxuICAmLmJvdHRvbSAudG9vbHRpcC1hcnJvdyB7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICBtYXJnaW4tbGVmdDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgYm9yZGVyLXdpZHRoOiAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XHJcbiAgfVxyXG4gICYuYm90dG9tLWxlZnQgLnRvb2x0aXAtYXJyb3cge1xyXG4gICAgdG9wOiAwO1xyXG4gICAgcmlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgbWFyZ2luLXRvcDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgYm9yZGVyLXdpZHRoOiAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XHJcbiAgfVxyXG4gICYuYm90dG9tLXJpZ2h0IC50b29sdGlwLWFycm93IHtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgbWFyZ2luLXRvcDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgYm9yZGVyLXdpZHRoOiAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIFV0aWxpdHkgY2xhc3Nlc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIEZsb2F0c1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uY2xlYXJmaXgge1xyXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xyXG59XHJcbi5jZW50ZXItYmxvY2sge1xyXG4gIEBpbmNsdWRlIGNlbnRlci1ibG9jaztcclxufVxyXG4ucHVsbC1yaWdodCB7XHJcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XHJcbn1cclxuLnB1bGwtbGVmdCB7XHJcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcclxufVxyXG5cclxuXHJcbi8vIFRvZ2dsaW5nIGNvbnRlbnRcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gTm90ZTogRGVwcmVjYXRlZCAuaGlkZSBpbiBmYXZvciBvZiAuaGlkZGVuIG9yIC5zci1vbmx5IChhcyBhcHByb3ByaWF0ZSkgaW4gdjMuMC4xXHJcbi5oaWRlIHtcclxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuLnNob3cge1xyXG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbn1cclxuLmludmlzaWJsZSB7XHJcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG59XHJcbi50ZXh0LWhpZGUge1xyXG4gIEBpbmNsdWRlIHRleHQtaGlkZTtcclxufVxyXG5cclxuXHJcbi8vIEhpZGUgZnJvbSBzY3JlZW5yZWFkZXJzIGFuZCBicm93c2Vyc1xyXG4vL1xyXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXHJcblxyXG4uaGlkZGVuIHtcclxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcblxyXG4vLyBGb3IgQWZmaXggcGx1Z2luXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5hZmZpeCB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG59XHJcbiIsIi8vXHJcbi8vIFJlc3BvbnNpdmU6IFV0aWxpdHkgY2xhc3Nlc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIElFMTAgaW4gV2luZG93cyAoUGhvbmUpIDhcclxuLy9cclxuLy8gU3VwcG9ydCBmb3IgcmVzcG9uc2l2ZSB2aWV3cyB2aWEgbWVkaWEgcXVlcmllcyBpcyBraW5kIG9mIGJvcmtlZCBpbiBJRTEwLCBmb3JcclxuLy8gU3VyZmFjZS9kZXNrdG9wIGluIHNwbGl0IHZpZXcgYW5kIGZvciBXaW5kb3dzIFBob25lIDguIFRoaXMgcGFydGljdWxhciBmaXhcclxuLy8gbXVzdCBiZSBhY2NvbXBhbmllZCBieSBhIHNuaXBwZXQgb2YgSmF2YVNjcmlwdCB0byBzbmlmZiB0aGUgdXNlciBhZ2VudCBhbmRcclxuLy8gYXBwbHkgc29tZSBjb25kaXRpb25hbCBDU1MgdG8gKm9ubHkqIHRoZSBTdXJmYWNlL2Rlc2t0b3AgV2luZG93cyA4LiBMb29rIGF0XHJcbi8vIG91ciBHZXR0aW5nIFN0YXJ0ZWQgcGFnZSBmb3IgbW9yZSBpbmZvcm1hdGlvbiBvbiB0aGlzIGJ1Zy5cclxuLy9cclxuLy8gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgZm9sbG93aW5nOlxyXG4vL1xyXG4vLyBJc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMDQ5N1xyXG4vLyBEb2NzOiBodHRwOi8vZ2V0Ym9vdHN0cmFwLmNvbS9nZXR0aW5nLXN0YXJ0ZWQvI3N1cHBvcnQtaWUxMC13aWR0aFxyXG4vLyBTb3VyY2U6IGh0dHA6Ly90aW1rYWRsZWMuY29tLzIwMTMvMDEvd2luZG93cy1waG9uZS04LWFuZC1kZXZpY2Utd2lkdGgvXHJcbi8vIFNvdXJjZTogaHR0cDovL3RpbWthZGxlYy5jb20vMjAxMi8xMC9pZTEwLXNuYXAtbW9kZS1hbmQtcmVzcG9uc2l2ZS1kZXNpZ24vXHJcblxyXG5AYXQtcm9vdCB7XHJcbiAgQC1tcy12aWV3cG9ydCB7XHJcbiAgICB3aWR0aDogZGV2aWNlLXdpZHRoO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIFZpc2liaWxpdHkgdXRpbGl0aWVzXHJcbi8vIE5vdGU6IERlcHJlY2F0ZWQgLnZpc2libGUteHMsIC52aXNpYmxlLXNtLCAudmlzaWJsZS1tZCwgYW5kIC52aXNpYmxlLWxnIGFzIG9mIHYzLjIuMFxyXG5cclxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLXhzJyk7XHJcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1zbScpO1xyXG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtbWQnKTtcclxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLWxnJyk7XHJcblxyXG4udmlzaWJsZS14cy1ibG9jayxcclxuLnZpc2libGUteHMtaW5saW5lLFxyXG4udmlzaWJsZS14cy1pbmxpbmUtYmxvY2ssXHJcbi52aXNpYmxlLXNtLWJsb2NrLFxyXG4udmlzaWJsZS1zbS1pbmxpbmUsXHJcbi52aXNpYmxlLXNtLWlubGluZS1ibG9jayxcclxuLnZpc2libGUtbWQtYmxvY2ssXHJcbi52aXNpYmxlLW1kLWlubGluZSxcclxuLnZpc2libGUtbWQtaW5saW5lLWJsb2NrLFxyXG4udmlzaWJsZS1sZy1ibG9jayxcclxuLnZpc2libGUtbGctaW5saW5lLFxyXG4udmlzaWJsZS1sZy1pbmxpbmUtYmxvY2sge1xyXG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS14cycpO1xyXG59XHJcbi52aXNpYmxlLXhzLWJsb2NrIHtcclxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbi52aXNpYmxlLXhzLWlubGluZSB7XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuLnZpc2libGUteHMtaW5saW5lLWJsb2NrIHtcclxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLXNtJyk7XHJcbn1cclxuLnZpc2libGUtc20tYmxvY2sge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS1zbS1pbmxpbmUge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuLnZpc2libGUtc20taW5saW5lLWJsb2NrIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtbWQnKTtcclxufVxyXG4udmlzaWJsZS1tZC1ibG9jayB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbi52aXNpYmxlLW1kLWlubGluZSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS1tZC1pbmxpbmUtYmxvY2sge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtbGcnKTtcclxufVxyXG4udmlzaWJsZS1sZy1ibG9jayB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XHJcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS1sZy1pbmxpbmUge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xyXG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbi52aXNpYmxlLWxnLWlubGluZS1ibG9jayB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXhzJyk7XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tc20nKTtcclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1tZCcpO1xyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1sZycpO1xyXG59XHJcblxyXG5cclxuLy8gUHJpbnQgdXRpbGl0aWVzXHJcbi8vXHJcbi8vIE1lZGlhIHF1ZXJpZXMgYXJlIHBsYWNlZCBvbiB0aGUgaW5zaWRlIHRvIGJlIG1peGluLWZyaWVuZGx5LlxyXG5cclxuLy8gTm90ZTogRGVwcmVjYXRlZCAudmlzaWJsZS1wcmludCBhcyBvZiB2My4yLjBcclxuXHJcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1wcmludCcpO1xyXG5cclxuQG1lZGlhIHByaW50IHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLXByaW50Jyk7XHJcbn1cclxuLnZpc2libGUtcHJpbnQtYmxvY2sge1xyXG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuXHJcbiAgQG1lZGlhIHByaW50IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbi52aXNpYmxlLXByaW50LWlubGluZSB7XHJcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICBAbWVkaWEgcHJpbnQge1xyXG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbi52aXNpYmxlLXByaW50LWlubGluZS1ibG9jayB7XHJcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICBAbWVkaWEgcHJpbnQge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgcHJpbnQge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXByaW50Jyk7XHJcbn1cclxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gdmFyaWFibGVzIGNvbW11bmVzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG5cclxuLy8gY291bGV1cnNcclxuJHdoaXRlIDogI0ZGRjtcclxuJGJsYWNrIDogIzAwMDtcclxuXHJcbiRncmV5TGlnaHQgOiAjZjZmNmY2O1xyXG4kZ3JleTogI2RiZGRlMztcclxuJGdyZXlEYXJrIDogIzhhOGE4YTtcclxuJGdyZXlWZXJ5RGFyayA6ICM0MjQyNDI7XHJcbiRncmV5Qmx1ZSA6ICM5OWE0YjE7XHJcblxyXG4kYmx1ZSA6ICMwMDgyYWQ7XHJcbiRwaW5rIDogI2ZmNGQ0MjtcclxuJHBpbmtMaWdodCA6ICNmZWFjOTQ7XHJcbiRwaW5rVmVyeUxpZ2h0IDogI2ZmZjZmNTtcclxuJGdyZWVuIDogI2M2ZDhjMTtcclxuXHJcbiRiYXNlLWNvbG9yIDogJGJsYWNrO1xyXG4kYWxwaGEtY29sb3IgOiAkYmx1ZTtcclxuJGVycm9yLWNvbG9yIDogI2RjMzU0NTtcclxuJHN1Y2Nlc3MtY29sb3IgOiAjMjhhNzQ1O1xyXG5cclxuLy8gdHlwb2dyYXBoaWVcclxuJGJhc2UtZm9udC1zaXplIDogMS41cmVtO1xyXG4kYmFzZS1saW5lLWhlaWdodCA6IDEuMztcclxuJGZvbnQtZmFtaWx5LTEgOiAnQXBlcmN1JywgQXJpYWwsIHNhbnMtc2VyaWY7XHJcbiRmb250LWZhbWlseS0yIDogJ1NwZWN0cmFsJywgc2VyaWY7XHJcbiRmb250LWZhbWlseS0zIDogJ0RhbGEgTW9hJywgc2VyaWY7XHJcbiRiYXNlLWZvbnQtZmFtaWx5IDogJGZvbnQtZmFtaWx5LTE7XHJcblxyXG4vLyBtYXJnaW5cclxuJGJhc2UtbWFyZ2luIDogNHJlbTtcclxuXHJcbi8vIHBhZGRpbmdcclxuJGJhc2UtcGFkZGluZyA6IDRyZW07XHJcblxyXG4vLyBib3ggc2hhZG93XHJcbiRib3gtc2hhZG93IDogMCAwIDE1cHggMXB4IHJnYmEoMCwgMCwgMCwgLjA3KTtcclxuXHJcbi8vIG5hdiBtb2JpbGUgaGVpZ2h0XHJcbiRuYXZNb2JpbGVIZWlnaHQgOiA2LjVyZW07XHJcblxyXG4vLyBkZXNrdG9wIG1heCBoZWlnaHRcclxuJHNjcmVlbi1tYXgtaGVpZ2h0IDogODIwcHg7IiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gZnVuY3Rpb25zXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG5cclxuXHJcbi8vIHBpeGVscyB0byByZW0gY29udmVyc2lvblxyXG5AZnVuY3Rpb24gcmVtKCRwaXhlbHMsICRib2R5Rm9udFNpemU6OSkge1xyXG4gIEByZXR1cm4gJHBpeGVscyAvICRib2R5Rm9udFNpemUgKiAxcmVtO1xyXG59XHJcblxyXG5cclxuLy8vIFNsaWdodGx5IGxpZ2h0ZW4gYSBjb2xvclxyXG4vLy8gQGFjY2VzcyBwdWJsaWNcclxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIGNvbG9yIHRvIHRpbnRcclxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGVyY2VudGFnZSAtIHBlcmNlbnRhZ2Ugb2YgYCRjb2xvcmAgaW4gcmV0dXJuZWQgY29sb3JcclxuLy8vIEByZXR1cm4ge0NvbG9yfVxyXG5AZnVuY3Rpb24gdGludCgkY29sb3IsICRwZXJjZW50YWdlKSB7XHJcbiAgQHJldHVybiBtaXgod2hpdGUsICRjb2xvciwgJHBlcmNlbnRhZ2UpO1xyXG59XHJcblxyXG4vLy8gU2xpZ2h0bHkgZGFya2VuIGEgY29sb3JcclxuLy8vIEBhY2Nlc3MgcHVibGljXHJcbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBjb2xvciB0byBzaGFkZVxyXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwZXJjZW50YWdlIC0gcGVyY2VudGFnZSBvZiBgJGNvbG9yYCBpbiByZXR1cm5lZCBjb2xvclxyXG4vLy8gQHJldHVybiB7Q29sb3J9XHJcbkBmdW5jdGlvbiBzaGFkZSgkY29sb3IsICRwZXJjZW50YWdlKSB7XHJcbiAgQHJldHVybiBtaXgoYmxhY2ssICRjb2xvciwgJHBlcmNlbnRhZ2UpO1xyXG59XHJcblxyXG5cclxuQGZ1bmN0aW9uIGljb24tY2hhcigkZmlsZW5hbWUpIHtcclxuICAgICRjaGFyOiBcIlwiO1xyXG5cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gYWdlbmRhIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMDFcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gYXZpb24ge1xyXG4gICAgICAgICRjaGFyOiBcIlxcRTAwMlwiO1xyXG4gICAgfVxyXG4gICAgQGlmICRmaWxlbmFtZSA9PSBjYXJuZXQge1xyXG4gICAgICAgICRjaGFyOiBcIlxcRTAwM1wiO1xyXG4gICAgfVxyXG4gICAgQGlmICRmaWxlbmFtZSA9PSBjYXJ0ZSB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDA0XCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IGNhc3F1ZSB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDA1XCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IGNoZWNrIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMDZcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gY2xvc2Uge1xyXG4gICAgICAgICRjaGFyOiBcIlxcRTAwN1wiO1xyXG4gICAgfVxyXG4gICAgQGlmICRmaWxlbmFtZSA9PSBjb25jaWVyZ2VyaWUge1xyXG4gICAgICAgICRjaGFyOiBcIlxcRTAwOFwiO1xyXG4gICAgfVxyXG4gICAgQGlmICRmaWxlbmFtZSA9PSBkYXRlcGlja2VyIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMDlcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gZGV2aXNlIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMEFcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gZmFjZWJvb2sge1xyXG4gICAgICAgICRjaGFyOiBcIlxcRTAwQlwiO1xyXG4gICAgfVxyXG4gICAgQGlmICRmaWxlbmFtZSA9PSBmbGVjaGUtYm91dG9uIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMENcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gZmxlY2hlLW5hdiB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDBEXCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IGZsZWNoZS1zZWxlY3Qge1xyXG4gICAgICAgICRjaGFyOiBcIlxcRTAwRVwiO1xyXG4gICAgfVxyXG4gICAgQGlmICRmaWxlbmFtZSA9PSBnb29nbGUtcGx1cyB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDBGXCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IGdwcyB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDEwXCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IGd1aWxsZW1ldC1mZXJtZSB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDExXCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IGd1aWxsZW1ldC1vdXZlcnQge1xyXG4gICAgICAgICRjaGFyOiBcIlxcRTAxMlwiO1xyXG4gICAgfVxyXG4gICAgQGlmICRmaWxlbmFtZSA9PSBob3JhaXJlIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMTNcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gaW5zdGFncmFtIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMTRcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gbGlua2VkaW4ge1xyXG4gICAgICAgICRjaGFyOiBcIlxcRTAxNVwiO1xyXG4gICAgfVxyXG4gICAgQGlmICRmaWxlbmFtZSA9PSBsaXN0ZSB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDE2XCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IG1haWwge1xyXG4gICAgICAgICRjaGFyOiBcIlxcRTAxN1wiO1xyXG4gICAgfVxyXG4gICAgQGlmICRmaWxlbmFtZSA9PSBtaWxlcyB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDE4XCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IHBpbnRlcmVzdCB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDE5XCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IHNjcm9sbCB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDFBXCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IHNlbGVjdCB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDFCXCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IHNsaWRlci1sZWZ0IHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMUNcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gc2xpZGVyLXJpZ2h0IHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMURcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gc3Rhci1oYWxmIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMUVcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gc3RhciB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDFGXCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IHRjaGF0IHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMjBcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gdGVsIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMjFcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gdHdpdHRlciB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDIyXCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IHVzZXIge1xyXG4gICAgICAgICRjaGFyOiBcIlxcRTAyM1wiO1xyXG4gICAgfVxyXG4gICAgQGlmICRmaWxlbmFtZSA9PSB3aWZpIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMjRcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0geW91dHViZSB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDI1XCI7XHJcbiAgICB9XHJcblxyXG4gICAgQHJldHVybiAkY2hhcjtcclxufSIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIG1peGluc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy8gTWFyZ2luXHJcbkBtaXhpbiBtYXJWICggJHRvcCA6ICRiYXNlLW1hcmdpbiwgJGJvdHRvbSA6ICR0b3ApIHtcclxuICAgIG1hcmdpbi10b3A6ICR0b3A7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkYm90dG9tO1xyXG59XHJcblxyXG5AbWl4aW4gbWFySCAoICRsZWZ0IDogYXV0bywgJHJpZ2h0IDogJGxlZnQpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAkbGVmdDtcclxuICAgIG1hcmdpbi1yaWdodDogJHJpZ2h0O1xyXG59XHJcblxyXG4vLyBQYWRkaW5nXHJcbkBtaXhpbiBwYWRWICggJHRvcCA6ICRiYXNlLXBhZGRpbmcsICRib3R0b20gOiAkdG9wKSB7XHJcbiAgICBwYWRkaW5nLXRvcDogJHRvcDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAkYm90dG9tO1xyXG59XHJcblxyXG5AbWl4aW4gcGFkSCAoICRsZWZ0IDogJGJhc2UtcGFkZGluZywgJHJpZ2h0IDogJGxlZnQpIHtcclxuICAgIHBhZGRpbmctbGVmdDogJGxlZnQ7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAkcmlnaHQ7XHJcbn1cclxuXHJcblxyXG5cclxuLy8gdmVydGljYWxBbGlnbkNlbnRlclxyXG5AbWl4aW4gdmVydGljYWxBbGlnbkNlbnRlciB7XHJcbiAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgJiA+ICoge1xyXG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcbiAgICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246bWlkZGxlO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBjb3ZlclxyXG5AbWl4aW4gY292ZXIoICRiZy1wb3NpdGlvbi14IDogNTAlLCAkYmctcG9zaXRpb24teSA6IDUwJSkge1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRiZy1wb3NpdGlvbi14ICRiZy1wb3NpdGlvbi15O1xyXG59XHJcblxyXG4vLyBjb250YWluXHJcbkBtaXhpbiBjb250YWluKCAkYmctcG9zaXRpb24teCA6IDUwJSwgJGJnLXBvc2l0aW9uLXkgOiA1MCUpIHtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRiZy1wb3NpdGlvbi14ICRiZy1wb3NpdGlvbi15O1xyXG59XHJcblxyXG4vLyBib3hTaGFkb3dcclxuQG1peGluIGJveFNoYWRvdyAoJGRlZmF1bHQgOiAkYm94LXNoYWRvdyApICB7XHJcbiAgICBib3gtc2hhZG93OiAkZGVmYXVsdDtcclxufVxyXG5cclxuXHJcbi8vIHBsYWNlaG9sZGVyXHJcbkBtaXhpbiBwbGFjZWhvbGRlciB7XHJcbiAgICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHsgQGNvbnRlbnQ7IH1cclxuICAgICY6Oi1tb3otcGxhY2Vob2xkZXIgeyBAY29udGVudDsgfVxyXG4gICAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyBAY29udGVudDsgfVxyXG4gICAgJjotbW96LXBsYWNlaG9sZGVyIHsgQGNvbnRlbnQ7IH1cclxufVxyXG5cclxuLy8gY3VzdG9tU2Nyb2xsYmFyXHJcbkBtaXhpbiBjdXN0b21TY3JvbGxiYXIgKCRjb2xvciA6ICNiOWI4YjgsICRiZ0NvbG9yIDogI2U1ZTVlNSApe1xyXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG4gICAgICB3aWR0aDowLjVyZW07XHJcbiAgICB9XHJcbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiZ0NvbG9yO1xyXG4gICAgfVxyXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIGNlbnRlckljb25cclxuQG1peGluIGNlbnRlckljb24oJHBhcmVudFBvc2l0aW9uIDogcmVsYXRpdmUsICRwc2V1ZG8gOiBiZWZvcmUpIHtcclxuICAgIHBvc2l0aW9uOiRwYXJlbnRQb3NpdGlvbjtcclxuICAgICY6I3skcHNldWRvfSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgIH1cclxufVxyXG5cclxuLy8gZmxleENlbnRlclxyXG5AbWl4aW4gZmxleENlbnRlciB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4vLyB3aXRoUHNldWRvQ2xhc3NcclxuQG1peGluIHdpdGhQc2V1ZG9DbGFzcyB7XHJcbiAgICAmLFxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMsXHJcbiAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vLyBjb2xvckhvdmVyRm9jdXNcclxuQG1peGluIGNvbG9ySG92ZXJGb2N1cygkY29sb3I6aW5oZXJpdCkge1xyXG4gICAgJixcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjokY29sb3I7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIGJsb2NrTW9iaWxlXHJcbkBtaXhpbiBibG9ja01vYmlsZSAoJHRvcCA6IDFyZW0sICRib3R0b20gOiAkdG9wKSB7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgbWFyZ2luLXRvcDokdG9wO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206JGJvdHRvbTtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6YXV0bztcclxuICAgICAgICBtYXJnaW4tbGVmdDphdXRvO1xyXG4gICAgICAgIGZsb2F0Om5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vLyB0ZXh0IG92ZXJmbG93XHJcbkBtaXhpbiB0ZXh0T3ZlcmZsb3cgKCRkZWZhdWx0OjEuNXJlbSkge1xyXG4gICAgbWF4LWhlaWdodDogJGRlZmF1bHQ7XHJcbiAgICBvdmVyZmxvdzpoaWRkZW47XHJcbn1cclxuXHJcbi8vIFpvb20gdmlzdWFsIG9uIGhvdmVyXHJcbkBtaXhpbiB6b29tVmlzdWFsT25Ib3ZlciB7XHJcbiAgLm5vLXRvdWNoICYge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICBpbWcge1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQ7XHJcbiAgICAgIH1cclxuICAgICAgJjpob3ZlciBpbWcge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gQW5pbWF0aW9uIGRlIGxhIGZsZWNoZSBsaXJlIHVuIGFydGljbGVcclxuQG1peGluIGFuaW1SZWFkTW9yZUFycm93IHtcclxuICAubm8tdG91Y2ggJiB7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgLmxpbmstYXJyb3cge1xyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuXHJcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vXHJcbi8vIENTUyBhcnJvd1xyXG4vL1xyXG4vLyBAcGFyYW0gZGlyZWN0aW9uICAgICAgIDogIHVwLCBkb3duLCBsZWZ0LCByaWdodFxyXG4vLyBAcGFyYW0gd2lkdGggICAgICAgICAgIDogIHB4LCBlbVxyXG4vLyBAcGFyYW0gaGVpZ2h0ICAgICAgICAgIDogIHB4LCBlbVxyXG4vLyBAcGFyYW0gY29sb3IgICAgICAgICAgIDogIGhleCwgcmdiXHJcbi8vXHJcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG5AbWl4aW4gYXJyb3coJGRpcmVjdGlvbjogdXAsICR3aWR0aDogMXJlbSwgJGhlaWdodDogMXJlbSwgJGNvbG9yOiBudWxsKSB7XHJcbiAgICB3aWR0aDogMDtcclxuICAgIGhlaWdodDogMDtcclxuXHJcbiAgICAvLyBSaWdodFxyXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gcmlnaHQge1xyXG4gICAgICAgIGJvcmRlci10b3A6ICR3aWR0aC8yIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206ICR3aWR0aC8yIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgICBAaWYgJGNvbG9yID09IG51bGwge1xyXG4gICAgICAgICAgICBib3JkZXItbGVmdDogJGhlaWdodCBzb2xpZDtcclxuICAgICAgICB9IEBlbHNlIHtcclxuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6ICRoZWlnaHQgc29saWQgJGNvbG9yO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIExlZnRcclxuICAgIEBpZiAkZGlyZWN0aW9uID09IGxlZnQge1xyXG4gICAgICAgIGJvcmRlci10b3A6ICR3aWR0aC8yIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206ICR3aWR0aC8yIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIEBpZiAkY29sb3IgPT0gbnVsbCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogJGhlaWdodCBzb2xpZDtcclxuICAgICAgICB9IEBlbHNlIHtcclxuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAkaGVpZ2h0IHNvbGlkICRjb2xvcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvLyBVcFxyXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gdXAge1xyXG4gICAgICAgIGJvcmRlci1sZWZ0OiAkd2lkdGgvMiBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICBib3JkZXItcmlnaHQ6ICR3aWR0aC8yIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIEBpZiAkY29sb3IgPT0gbnVsbCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206ICRoZWlnaHQgc29saWQ7XHJcbiAgICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206ICRoZWlnaHQgc29saWQgJGNvbG9yO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIERvd25cclxuICAgIEBpZiAkZGlyZWN0aW9uID09IGRvd24ge1xyXG4gICAgICAgIGJvcmRlci1sZWZ0OiAkd2lkdGgvMiBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICBib3JkZXItcmlnaHQ6ICR3aWR0aC8yIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIEBpZiAkY29sb3IgPT0gbnVsbCB7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6ICRoZWlnaHQgc29saWQ7XHJcbiAgICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6ICRoZWlnaHQgc29saWQgJGNvbG9yO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG4vLyAgVGhpcyBtaXhpbiBjYW4gYmUgdXNlZCB0byBzZXQgdGhlIG9iamVjdC1maXQ6XHJcbi8vICBAaW5jbHVkZSBvYmplY3QtZml0KGNvbnRhaW4pO1xyXG4vLyAgb3Igb2JqZWN0LWZpdCBhbmQgb2JqZWN0LXBvc2l0aW9uOlxyXG4vLyAgQGluY2x1ZGUgb2JqZWN0LWZpdChjb3ZlciwgdG9wKTtcclxuLy9cclxuQG1peGluIG9iamVjdC1maXQoJGZpdDogY292ZXIsICRwb3NpdGlvbjogbnVsbCl7XHJcbiAgLW8tb2JqZWN0LWZpdDogJGZpdDtcclxuICAgICBvYmplY3QtZml0OiAkZml0O1xyXG4gIEBpZiAkcG9zaXRpb24ge1xyXG4gICAgLW8tb2JqZWN0LXBvc2l0aW9uOiAkcG9zaXRpb247XHJcbiAgICAgICBvYmplY3QtcG9zaXRpb246ICRwb3NpdGlvbjtcclxuICAgIGZvbnQtZmFtaWx5OiAnb2JqZWN0LWZpdDogI3skZml0fTsgb2JqZWN0LXBvc2l0aW9uOiAjeyRwb3NpdGlvbn0nO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdvYmplY3QtZml0OiAjeyRmaXR9JztcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBndXR0ZXJcclxuQG1peGluIGd1dHRlcigkZ3V0dGVyIDogMTVweCkge1xyXG4gIEBpbmNsdWRlIG1hckgoLSRndXR0ZXIpO1xyXG4gICYgPiAqIHsgQGluY2x1ZGUgcGFkSCgkZ3V0dGVyKTt9XHJcbn1cclxuXHJcblxyXG4vLyBwb3VyIHN1cnNoYXJnZXIgbGVzIGJvdXRvbnMgYm9vdHN0cmFwXHJcbkBtaXhpbiBidXR0b24tdmFyaWFudC1leHRlbnNpb24oJGNvbG9yLCAkYmFja2dyb3VuZCwgJGJvcmRlcikge1xyXG4gIGNvbG9yOiAkY29sb3I7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XHJcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xyXG5cclxuICAmOmZvY3VzLFxyXG4gICYuZm9jdXMge1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcclxuICB9XHJcbiAgJjpob3ZlciB7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xyXG4gIH1cclxuICAmOmFjdGl2ZSxcclxuICAmLmFjdGl2ZSxcclxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XHJcblxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMsXHJcbiAgICAmLmZvY3VzIHtcclxuICAgICAgY29sb3I6ICRjb2xvcjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XHJcbiAgICB9XHJcbiAgfVxyXG4gICY6YWN0aXZlLFxyXG4gICYuYWN0aXZlLFxyXG4gIC5vcGVuID4gJi5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICB9XHJcbiAgJi5kaXNhYmxlZCxcclxuICAmW2Rpc2FibGVkXSxcclxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyxcclxuICAgICYuZm9jdXMge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5iYWRnZSB7XHJcbiAgICBjb2xvcjogJGJhY2tncm91bmQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuQG1peGluIGFuaW1hdGlvbi1oYWNrcyB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XHJcbiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApO1xyXG59XHJcblxyXG4vLyBJY29uIFBvcFxyXG5AbWl4aW4gaWNvblBvcCB7XHJcbiAgQGtleWZyYW1lcyB2ZG0taWNvbi1wb3Age1xyXG4gICAgNTAlIHtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMS4zKTtcclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYW5pbWF0aW9uLWhhY2tzKCk7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyxcclxuICAmOmFjdGl2ZSB7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGFuaW1hdGlvbi1uYW1lOiB2ZG0taWNvbi1wb3A7XHJcbiAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4zcztcclxuICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xyXG4gICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbkBtaXhpbiBidWxsZXRMaXN0IHtcclxuICBsaSB7XHJcbiAgICB0ZXh0LWluZGVudDogMC44ZW07XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB3aWR0aDogMC4zZW07XHJcbiAgICAgIGhlaWdodDogMC4zZW07XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFzZS1jb2xvcjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xyXG4gICAgICB0b3A6IDAuNWVtO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGdlbmVyaWNCb3gge1xyXG4gIEBpbmNsdWRlIHBhZFY7IFxyXG59XHJcbiBcclxuXHJcbkBtaXhpbiBpY29uLXN0eWxlcyB7XHJcbiAgICBmb250LWZhbWlseTogXCJpY29uZm9udFwiO1xyXG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAvLyBzcGVhazogbm9uZTsgLy8gb25seSBuZWNlc3NhcnkgaWYgbm90IHVzaW5nIHRoZSBwcml2YXRlIHVuaWNvZGUgcmFuZ2UgKGZpcnN0R2x5cGggb3B0aW9uKVxyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gaWNvbigkZmlsZW5hbWUsICRpbnNlcnQ6IGJlZm9yZSwgJGV4dGVuZDogZmFsc2UpIHtcclxuICAgICY6I3skaW5zZXJ0fSB7XHJcbiAgICAgICAgQGlmICRleHRlbmQge1xyXG4gICAgICAgICAgICBAZXh0ZW5kICVpY29uO1xyXG4gICAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBpY29uLXN0eWxlcztcclxuICAgICAgICB9XHJcbiAgICAgICAgY29udGVudDogaWNvbi1jaGFyKCRmaWxlbmFtZSk7XHJcbiAgICB9XHJcbn0iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBtaXhpbnMgYnV0dG9uc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuQG1peGluIGdlbmVyaWNCdXR0b24oJHBhZFYgOiAycmVtLCAkcGFkSCA6IDNyZW0sICRmb250V2VpZ2h0OjcwMCkge1xyXG4gIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gIGZvbnQtd2VpZ2h0OiRmb250V2VpZ2h0O1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgcGFkZGluZzokcGFkViAkcGFkSDtcclxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cykge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG4gIH1cclxuICAmLmZ1bGwtd2lkdGgge1xyXG4gICAgd2lkdGg6MTAwJTtcclxuICB9XHJcbiAgJi5zbWFsbGVyIHtcclxuICAgIEBpbmNsdWRlIHBhZFYoMCk7XHJcbiAgICBoZWlnaHQ6NXJlbTtcclxuICAgIGxpbmUtaGVpZ2h0OjVyZW07XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gYnRuIHtcclxuICBAaW5jbHVkZSBnZW5lcmljQnV0dG9uO1xyXG4gIGJhY2tncm91bmQtY29sb3I6JGFscGhhLWNvbG9yO1xyXG4gIGNvbG9yOiR3aGl0ZTtcclxufVxyXG5cclxuQG1peGluIGxpbmsge1xyXG4gIGZvbnQtd2VpZ2h0OjcwMDtcclxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxufVxyXG5cclxuQG1peGluIGxpbmstYWxwaGEge1xyXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gIGNvbG9yOiRhbHBoYS1jb2xvcjtcclxufVxyXG5cclxuQG1peGluIHdvYmJsZS1ob3Jpem9udGFsIHtcclxuICAkZGl2aWRlciA6IDI7XHJcbiAgQGtleWZyYW1lcyB2ZG0td29iYmxlLWhvcml6b250YWwge1xyXG4gICAgI3sxNi42NSAvICRkaXZpZGVyfSUge1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoOHB4KTtcclxuICAgIH1cclxuICAgICN7MzMuMyAvICRkaXZpZGVyfSUge1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCk7XHJcbiAgICB9XHJcbiAgICAjezQ5Ljk1IC8gJGRpdmlkZXJ9JSB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpO1xyXG4gICAgfVxyXG4gICAgI3s2Ni42IC8gJGRpdmlkZXJ9JSB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KTtcclxuICAgIH1cclxuICAgICN7ODMuMjUgLyAkZGl2aWRlcn0lIHtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDFweCk7XHJcbiAgICB9XHJcbiAgICA1MCUge1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICB9XHJcbiAgICAxMDAlIHtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBhbmltYXRpb24taGFja3MoKTtcclxuICAud29iYmxlLWhvcml6b250YWwtYW5pbWF0ZWQgJiB7XHJcbiAgICBhbmltYXRpb24tbmFtZTogdmRtLXdvYmJsZS1ob3Jpem9udGFsO1xyXG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAycztcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiB3b2JibGUtdmVydGljYWwge1xyXG4gICRkaXZpZGVyIDogMjtcclxuICBAa2V5ZnJhbWVzIHZkbS13b2JibGUtdmVydGljYWwge1xyXG4gICAgI3sxNi42NSAvICRkaXZpZGVyfSUge1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTtcclxuICAgIH1cclxuICAgICN7MzMuMyAvICRkaXZpZGVyfSUge1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7XHJcbiAgICB9XHJcbiAgICAjezQ5Ljk1IC8gJGRpdmlkZXJ9JSB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0cHgpO1xyXG4gICAgfVxyXG4gICAgI3s2Ni42IC8gJGRpdmlkZXJ9JSB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcclxuICAgIH1cclxuICAgICN7ODMuMjUgLyAkZGl2aWRlcn0lIHtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7XHJcbiAgICB9XHJcbiAgICA1MCUge1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICB9XHJcbiAgICAxMDAlIHtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBhbmltYXRpb24taGFja3MoKTtcclxuICBhbmltYXRpb24tbmFtZTogdmRtLXdvYmJsZS12ZXJ0aWNhbDtcclxuICBhbmltYXRpb24tZHVyYXRpb246IDJzO1xyXG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xyXG59XHJcbkBtaXhpbiBib3VuY2UtdG8tcmlnaHQgKCRiZ0NvbG9yQWN0aXZlIDogdGludCgkYmx1ZSwgMjAlKSwgJGNvbG9yQWN0aXZlIDogJHdoaXRlKSB7XHJcbiAgQGluY2x1ZGUgYW5pbWF0aW9uLWhhY2tzKCk7XHJcblxyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvciwgYm9yZGVyLWNvbG9yO1xyXG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7XHJcblxyXG4gICY6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB6LWluZGV4OiAtMTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6JGJnQ29sb3JBY3RpdmUgO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDUwJTtcclxuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7XHJcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgfVxyXG5cclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMsXHJcbiAgJjphY3RpdmUge1xyXG4gICAgY29sb3I6JGNvbG9yQWN0aXZlO1xyXG4gICAgYm9yZGVyLWNvbG9yOiRiZ0NvbG9yQWN0aXZlO1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcclxuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUyLCAxLjY0LCAwLjM3LCAwLjY2KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBidG5BbHBoYSB7XHJcbiAgQGluY2x1ZGUgZ2VuZXJpY0J1dHRvbjtcclxuICBib3JkZXI6MXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcclxuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcyBlYXNlLW91dDtcclxuICAmOmhvdmVyIHtcclxuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCBpbnNldDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgkd2hpdGUsIC4xKTtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBidG5CZXRhIHtcclxuICBAaW5jbHVkZSBwYWRIKDJyZW0pO1xyXG4gIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gIGhlaWdodDogNXJlbTtcclxuICBsaW5lLWhlaWdodDo1cmVtO1xyXG4gIGZvbnQtc2l6ZTogMS40cmVtO1xyXG4gIGZvbnQtd2VpZ2h0OjUwMDtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xyXG4gICogKyAmX19pY29uIHtcclxuICAgIG1hcmdpbi1sZWZ0OjFyZW07XHJcbiAgfVxyXG4gIC5zci1vbmx5ICsgJl9faWNvbiB7XHJcbiAgICBtYXJnaW4tbGVmdDowO1xyXG4gIH1cclxuICAmX19pY29uIHtcclxuICAgIEBpbmNsdWRlIGljb24oZmxlY2hlLWJvdXRvbik7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGZvbnQtc2l6ZToycmVtO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGJ0bk1lbnUge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCdXR0b24oMS41cmVtKTtcclxuICBib3JkZXI6M3B4IHNvbGlkICRwaW5rTGlnaHQ7XHJcbn1cclxuXHJcbkBtaXhpbiBidG5GcmllbmQge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCdXR0b24oJHBhZFYgOiAxLjVyZW0sICRmb250V2VpZ2h0OjUwMCk7XHJcbiAgYm9yZGVyOjFweCBzb2xpZCAkYWxwaGEtY29sb3I7XHJcbiAgY29sb3I6JGFscGhhLWNvbG9yO1xyXG4gIG1pbi13aWR0aDozMHJlbTtcclxuICBmb250LXNpemU6MS4zcmVtO1xyXG4gIGxldHRlci1zcGFjaW5nOiAwLjJyZW07XHJcbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICAmIHJlc2V0XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG51bCxcclxuaDEsXHJcbmgyLFxyXG5oMyxcclxuaDQsXHJcbnAge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxufVxyXG5cclxuaDEsXHJcbmgyLFxyXG5oMyxcclxuaDQge1xyXG4gIGZvbnQtd2VpZ2h0OmluaGVyaXQ7XHJcbn1cclxuXHJcbioge1xyXG4gICAgJixcclxuICAgICY6YmVmb3JlLFxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8vIFJlc2V0IHRoZSBib3gtc2l6aW5nXHJcbioge1xyXG4gIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcbn1cclxuKjpiZWZvcmUsXHJcbio6YWZ0ZXIge1xyXG4gIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcbn1cclxuXHJcblxyXG4vLyBSZXNldCBmb250cyBmb3IgcmVsZXZhbnQgZWxlbWVudHNcclxuaW5wdXQsXHJcbmJ1dHRvbixcclxuc2VsZWN0LFxyXG50ZXh0YXJlYSB7XHJcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XHJcbiAgZm9udC1zaXplOiBpbmhlcml0O1xyXG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xyXG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xyXG59XHJcblxyXG5cclxuLy8gSW1hZ2VzXHJcbmltZyB7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxufVxyXG5cclxuLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcclxuLy9cclxuLy8gU2VlOiBodHRwOi8vYTExeXByb2plY3QuY29tL3Bvc3RzL2hvdy10by1oaWRlLWNvbnRlbnRcclxuXHJcbi5zci1vbmx5IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgd2lkdGg6IDFweDtcclxuICBoZWlnaHQ6IDFweDtcclxuICBtYXJnaW46IC0xcHg7XHJcbiAgcGFkZGluZzogMDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIGNsaXA6IHJlY3QoMCwwLDAsMCk7XHJcbiAgYm9yZGVyOiAwO1xyXG59XHJcblxyXG5idXR0b246Zm9jdXMsXHJcblt0eXBlPVwidGV4dFwiXTpmb2N1cyxcclxuW3R5cGU9XCJwYXNzd29yZFwiXTpmb2N1cyB7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgICYgYmFzZVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuaHRtbCB7XHJcbiAgICBmb250LXNpemU6IDYyLjUlOyAvKiAxNnB4ID4gMTBweCAoYmFzZSAxMCkgKi9cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xyXG4gICAgICBmb250LXNpemU6IDU2LjMlOyAvKiAxNnB4ID4gOXB4IChiYXNlIDkpICovXHJcbiAgICB9XHJcbn1cclxuYm9keSB7XHJcbiAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5O1xyXG4gIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplO1xyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgZm9udC1zaXplOnJlbSgxNik7XHJcbiAgfVxyXG4gIGxpbmUtaGVpZ2h0IDogJGJhc2UtbGluZS1oZWlnaHQ7XHJcbiAgY29sb3I6ICRiYXNlLWNvbG9yO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICY6YmVmb3JlIHtcclxuICAgIGRpc3BsYXk6bm9uZTtcclxuICAgIGNvbnRlbnQ6IFwic2NyZWVuLXh4c1wiO1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHMpIHtcclxuICAgICAgY29udGVudDogXCJzY3JlZW4teHNcIjtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIGNvbnRlbnQ6IFwic2NyZWVuLXNtXCI7XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xyXG4gICAgICBjb250ZW50OiBcInNjcmVlbi1tZFwiO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGcpIHtcclxuICAgICAgY29udGVudDogXCJzY3JlZW4tbGdcIjtcclxuICAgIH1cclxuICB9XHJcbiAgJjphZnRlciB7XHJcbiAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICBjb250ZW50OiBcIm1vYmlsZVwiO1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgY29udGVudDogXCJkZXNrdG9wXCI7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYucGFnZS1kZHYge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTp1cmwoLi4vaW1hZ2VzL2JhY2tncm91bmQvZGR2LzE5MjB4MjMwOC5qcGcpO1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtcclxuICAgICAgJi5wYWdlLWRkdi1saWdodCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOmNvdmVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYub3ZlcmZsb3ctaGlkZGVuIHtcclxuICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICB9XHJcbn1cclxuXHJcbnVsIHsgbGlzdC1zdHlsZTogbm9uZTsgfVxyXG5cclxuaW1nIHtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogYXV0bztcclxufVxyXG5cclxuYSB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICAgIG91dGxpbmU6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbmJ1dHRvbiB7XHJcbiAgICBib3JkZXI6bm9uZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgcGFkZGluZzowO1xyXG4gICAgJjpmb2N1c3tcclxuICAgICAgICBvdXRsaW5lOiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG5wIHtcclxuICAgIG1hcmdpbjogMXJlbSAwIDA7XHJcbiAgICAmOmZpcnN0LWNoaWxkIHsgbWFyZ2luLXRvcDogMDsgfVxyXG59XHJcblxyXG4ucm93IHtcclxuICAmLnJlbW92ZS1ndXR0ZXIge1xyXG4gICAgQGluY2x1ZGUgZ3V0dGVyKDApO1xyXG4gIH1cclxuICAmLmd1dHRlci01IHtcclxuICAgIEBpbmNsdWRlIGd1dHRlcig1cHgpO1xyXG4gIH1cclxuICAmLmd1dHRlci0zMCB7XHJcbiAgICBAaW5jbHVkZSBndXR0ZXIoMzBweCk7XHJcbiAgfVxyXG4gICYuaXMtZmxleCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gIH1cclxufVxyXG5cclxuLnJvdy1mbGV4IHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgZGlzcGxheTpmbGV4O1xyXG4gIH1cclxuICBtYXJnaW4tbGVmdDowO1xyXG4gIG1hcmdpbi1yaWdodDowO1xyXG4gICYgPiAqIHtcclxuICAgIHBhZGRpbmctbGVmdDowO1xyXG4gICAgcGFkZGluZy1yaWdodDowO1xyXG4gICAgZmxvYXQ6IG5vbmU7XHJcbiAgICBmbGV4OiAxIDEgYXV0bztcclxuICAgIG92ZXJmbG93OmhpZGRlbjsgLy8gSUUxMSBidWdcclxuICB9XHJcbn1cclxuXHJcbi5yb3ctdGFibGUge1xyXG4gIGRpc3BsYXk6dGFibGU7XHJcbiAgd2lkdGg6MTAwJTtcclxuICB0YWJsZS1sYXlvdXQ6Zml4ZWQ7XHJcbiAgPiAqIHtcclxuICAgIGRpc3BsYXk6dGFibGUtY2VsbDtcclxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLnRhYi1jb250ZW50IHtcclxuICA+IC50YWItcGFuZSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuICA+IC5hY3RpdmUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG59XHJcblxyXG4ub3ZlcmZsb3ctaGlkZGVuIHtvdmVyZmxvdzpoaWRkZW47fVxyXG4uYmxvY2sgeyBkaXNwbGF5OmJsb2NrO31cclxuLy8gQWxpZ25tZW50XHJcbi50ZXh0LWxlZnQgICAgICAgICAgIHsgdGV4dC1hbGlnbjogbGVmdDsgfVxyXG4udGV4dC1yaWdodCAgICAgICAgICB7IHRleHQtYWxpZ246IHJpZ2h0OyB9XHJcbi50ZXh0LWNlbnRlciAgICAgICAgIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XHJcbi50ZXh0LWp1c3RpZnkgICAgICAgIHsgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxyXG4udGV4dC1ub3dyYXAgICAgICAgICB7IHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cclxuXHJcbi8vIFRyYW5zZm9ybWF0aW9uXHJcbi50ZXh0LWxvd2VyY2FzZSAgICAgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTsgfVxyXG4udGV4dC11cHBlcmNhc2UgICAgICB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cclxuLnRleHQtY2FwaXRhbGl6ZSAgICAgeyB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxyXG5cclxuXHJcblxyXG4uY29udGFpbmVyIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogMTA4NnB4KSBhbmQgKG1heC13aWR0aDoxMzk5cHgpIHtcclxuICAgICB3aWR0aDogOTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGg7XHJcbiAgfVxyXG59XHJcblxyXG4uY29sLXh4cy1mdWxsLFxyXG4uY29sLXh4cy0yNCB7XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMpIHtcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgICBmbG9hdDpub25lO1xyXG4gIH1cclxufVxyXG5cclxuLmNvbC14eHMtMTIge1xyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzKSB7XHJcbiAgICB3aWR0aDo1MCU7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBjb2xvbm5lcyBxdWludGUgXHJcbi5jb2wteHMtZmlmdGgsXHJcbi5jb2wtc20tZmlmdGgsXHJcbi5jb2wtbWQtZmlmdGgsXHJcbi5jb2wtbGctZmlmdGgge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtaW4taGVpZ2h0OiAxcHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAgY2VpbCgoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpO1xyXG4gIHBhZGRpbmctcmlnaHQ6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XHJcbiAgZmxvYXQ6bGVmdDtcclxufVxyXG5cclxuLmNvbC14cy1maWZ0aCB7XHJcbiAgd2lkdGg6MjAlO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG4gIC5jb2wtc20tZmlmdGgge1xyXG4gICAgd2lkdGg6MjAlO1xyXG4gIH1cclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcclxuICAuY29sLW1kLWZpZnRoIHtcclxuICAgIHdpZHRoOjIwJTtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XHJcbiAgLmNvbC1sZy1maWZ0aCB7XHJcbiAgICB3aWR0aDoyMCU7XHJcbiAgfVxyXG59XHJcblxyXG4uanMtcmVhZG1vcmUtY29udGVudCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4uanMtdGV4dC1vdmVyZmxvdyB7XHJcbiAgb3ZlcmZsb3c6aGlkZGVuO1xyXG59XHJcblxyXG4ubm8tanMge1xyXG4gIC5sYXp5bG9hZCB7XHJcbiAgICBkaXNwbGF5Om5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLnNob3ctdGl0bGVzIHtcclxuICAkc2hvd1RpdGxlU3R5bGUgOiBkYXNoZWQ7XHJcbiAgJHNob3dUaXRsZVdpZHRoIDogM3B4O1xyXG4gIGgxIHtcclxuICAgIG91dGxpbmUgOiAkc2hvd1RpdGxlV2lkdGggJHNob3dUaXRsZVN0eWxlIHJlZDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6cmdiYShyZWQsMC4xKTtcclxuICB9XHJcbiAgaDIge1xyXG4gICAgb3V0bGluZSA6ICRzaG93VGl0bGVXaWR0aCAkc2hvd1RpdGxlU3R5bGUgYmx1ZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6cmdiYShibHVlLDAuMSk7XHJcbiAgfVxyXG4gIGgzIHtcclxuICAgIG91dGxpbmUgOiAkc2hvd1RpdGxlV2lkdGggJHNob3dUaXRsZVN0eWxlIGdyZWVuO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKGdyZWVuLDAuMSk7XHJcbiAgfVxyXG4gIGg0IHtcclxuICAgIG91dGxpbmUgOiAkc2hvd1RpdGxlV2lkdGggJHNob3dUaXRsZVN0eWxlIG9yYW5nZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6cmdiYShvcmFuZ2UsMC4xKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBjb2xzIGF1dG8tY2xlYXJcclxuQG1lZGlhIChtaW4td2lkdGg6JHNjcmVlbi1sZyl7XHJcbiAgLmF1dG8tY2xlYXIge1xyXG4gICAgLmNvbC1sZy0xOm50aC1jaGlsZCgyNG4rMSl7Y2xlYXI6bGVmdDt9XHJcbiAgICAuY29sLWxnLTI6bnRoLWNoaWxkKDEybisxKXtjbGVhcjpsZWZ0O31cclxuICAgIC5jb2wtbGctMzpudGgtY2hpbGQoOG4rMSl7Y2xlYXI6bGVmdDt9XHJcbiAgICAuY29sLWxnLTQ6bnRoLWNoaWxkKDZuKzEpe2NsZWFyOmxlZnQ7fVxyXG4gICAgLmNvbC1sZy02Om50aC1jaGlsZCg0bisxKXtjbGVhcjpsZWZ0O31cclxuICAgIC5jb2wtbGctODpudGgtY2hpbGQoM24rMSl7Y2xlYXI6bGVmdDt9XHJcbiAgICAuY29sLWxnLTEyOm50aC1jaGlsZCgybisxKXtjbGVhcjpsZWZ0O31cclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6JHNjcmVlbi1tZCkgYW5kIChtYXgtd2lkdGg6JHNjcmVlbi1tZC1tYXgpe1xyXG4gIC5hdXRvLWNsZWFyIHtcclxuICAgIC5jb2wtbWQtMTpudGgtY2hpbGQoMjRuKzEpe2NsZWFyOmxlZnQ7fVxyXG4gICAgLmNvbC1tZC0yOm50aC1jaGlsZCgxMm4rMSl7Y2xlYXI6bGVmdDt9XHJcbiAgICAuY29sLW1kLTM6bnRoLWNoaWxkKDhuKzEpe2NsZWFyOmxlZnQ7fVxyXG4gICAgLmNvbC1tZC00Om50aC1jaGlsZCg2bisxKXtjbGVhcjpsZWZ0O31cclxuICAgIC5jb2wtbWQtNjpudGgtY2hpbGQoNG4rMSl7Y2xlYXI6bGVmdDt9XHJcbiAgICAuY29sLW1kLTg6bnRoLWNoaWxkKDNuKzEpe2NsZWFyOmxlZnQ7fVxyXG4gICAgLmNvbC1tZC0xMjpudGgtY2hpbGQoMm4rMSl7Y2xlYXI6bGVmdDt9XHJcbiAgfVxyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiRzY3JlZW4tc20pIGFuZCAobWF4LXdpZHRoOiRzY3JlZW4tc20tbWF4KXtcclxuICAuYXV0by1jbGVhciB7XHJcbiAgICAuY29sLXNtLTE6bnRoLWNoaWxkKDI0bisxKXtjbGVhcjpsZWZ0O31cclxuICAgIC5jb2wtc20tMjpudGgtY2hpbGQoMTJuKzEpe2NsZWFyOmxlZnQ7fVxyXG4gICAgLmNvbC1zbS0zOm50aC1jaGlsZCg4bisxKXtjbGVhcjpsZWZ0O31cclxuICAgIC5jb2wtc20tNDpudGgtY2hpbGQoNm4rMSl7Y2xlYXI6bGVmdDt9XHJcbiAgICAuY29sLXNtLTY6bnRoLWNoaWxkKDRuKzEpe2NsZWFyOmxlZnQ7fVxyXG4gICAgLmNvbC1zbS04Om50aC1jaGlsZCgzbisxKXtjbGVhcjpsZWZ0O31cclxuICAgIC5jb2wtc20tMTI6bnRoLWNoaWxkKDJuKzEpe2NsZWFyOmxlZnQ7fVxyXG4gIH1cclxufVxyXG5AbWVkaWEgKG1heC13aWR0aDokc2NyZWVuLXhzLW1heCl7XHJcbiAgLmF1dG8tY2xlYXIge1xyXG4gICAgLmNvbC14cy0xOm50aC1jaGlsZCgyNG4rMSl7Y2xlYXI6bGVmdDt9XHJcbiAgICAuY29sLXhzLTI6bnRoLWNoaWxkKDEybisxKXtjbGVhcjpsZWZ0O31cclxuICAgIC5jb2wteHMtMzpudGgtY2hpbGQoOG4rMSl7Y2xlYXI6bGVmdDt9XHJcbiAgICAuY29sLXhzLTQ6bnRoLWNoaWxkKDZuKzEpe2NsZWFyOmxlZnQ7fVxyXG4gICAgLmNvbC14cy02Om50aC1jaGlsZCg0bisxKXtjbGVhcjpsZWZ0O31cclxuICAgIC5jb2wteHMtODpudGgtY2hpbGQoM24rMSl7Y2xlYXI6bGVmdDt9XHJcbiAgICAuY29sLXhzLTEyOm50aC1jaGlsZCgybisxKXtjbGVhcjpsZWZ0O31cclxuICB9XHJcbn1cclxuXHJcblxyXG5cclxuLnN0eWxlLWluaGVyaXQge1xyXG4gIGZvbnQtc2l6ZTppbmhlcml0O1xyXG4gIGZvbnQtd2VpZ2h0OmluaGVyaXQ7XHJcbiAgY29sb3I6aW5oZXJpdDtcclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICAmIHR5cG9ncmFwaHlcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcblxyXG4kZm9udFBhdGggOiAnLi4vZm9udC8nO1xyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgICAkbmFtZSA6ICdpY29uZm9udCc7XHJcbiAgICBmb250LWZhbWlseTogXCJpY29uZm9udFwiO1xyXG4gICAgc3JjOiAgdXJsKCcjeyRmb250UGF0aH0jeyRuYW1lfS53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgICAgICAgIHVybCgnI3skZm9udFBhdGh9I3skbmFtZX0ud29mZicpIGZvcm1hdCgnd29mZicpO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgICRuYW1lIDogJ2FwZXJjdS1saWdodCc7XHJcbiAgICBmb250LWZhbWlseTogJ0FwZXJjdSc7XHJcbiAgICBzcmM6ICB1cmwoJyN7JGZvbnRQYXRofSN7JG5hbWV9LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICAgICAgdXJsKCcjeyRmb250UGF0aH0jeyRuYW1lfS53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XHJcbiAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgICRuYW1lIDogJ2FwZXJjdS1yZWd1bGFyJztcclxuICAgIGZvbnQtZmFtaWx5OiAnQXBlcmN1JztcclxuICAgIHNyYzogIHVybCgnI3skZm9udFBhdGh9I3skbmFtZX0ud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICAgICAgICB1cmwoJyN7JGZvbnRQYXRofSN7JG5hbWV9LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgJG5hbWUgOiAnYXBlcmN1LWl0YWxpYyc7XHJcbiAgICBmb250LWZhbWlseTogJ0FwZXJjdSc7XHJcbiAgICBzcmM6ICB1cmwoJyN7JGZvbnRQYXRofSN7JG5hbWV9LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICAgICAgdXJsKCcjeyRmb250UGF0aH0jeyRuYW1lfS53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgICRuYW1lIDogJ2FwZXJjdS1ib2xkJztcclxuICAgIGZvbnQtZmFtaWx5OiAnQXBlcmN1JztcclxuICAgIHNyYzogIHVybCgnI3skZm9udFBhdGh9I3skbmFtZX0ud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICAgICAgICB1cmwoJyN7JGZvbnRQYXRofSN7JG5hbWV9LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgJG5hbWUgOiAnYXBlcmN1LW1lZGl1bSc7XHJcbiAgICBmb250LWZhbWlseTogJ0FwZXJjdSc7XHJcbiAgICBzcmM6ICB1cmwoJyN7JGZvbnRQYXRofSN7JG5hbWV9LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICAgICAgdXJsKCcjeyRmb250UGF0aH0jeyRuYW1lfS53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgICRuYW1lIDogJ1NwZWN0cmFsLVJlZ3VsYXInO1xyXG4gICAgZm9udC1mYW1pbHk6ICdTcGVjdHJhbCc7XHJcbiAgICBzcmM6ICB1cmwoJyN7JGZvbnRQYXRofSN7JG5hbWV9LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICAgICAgdXJsKCcjeyRmb250UGF0aH0jeyRuYW1lfS53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgICRuYW1lIDogJ1NwZWN0cmFsLUl0YWxpYyc7XHJcbiAgICBmb250LWZhbWlseTogJ1NwZWN0cmFsJztcclxuICAgIHNyYzogIHVybCgnI3skZm9udFBhdGh9I3skbmFtZX0ud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICAgICAgICB1cmwoJyN7JGZvbnRQYXRofSN7JG5hbWV9LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgJG5hbWUgOiAnU3BlY3RyYWwtTGlnaHRJdGFsaWMnO1xyXG4gICAgZm9udC1mYW1pbHk6ICdTcGVjdHJhbCc7XHJcbiAgICBzcmM6ICB1cmwoJyN7JGZvbnRQYXRofSN7JG5hbWV9LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICAgICAgdXJsKCcjeyRmb250UGF0aH0jeyRuYW1lfS53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XHJcbiAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xyXG59IiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gaWNvbmZvbnQgdGVtcGxhdGVcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcblxyXG5AbWl4aW4gaWNvbi1zdHlsZXMge1xyXG4gICAgZm9udC1mYW1pbHk6IFwiaWNvbmZvbnRcIjtcclxuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgLy8gc3BlYWs6IG5vbmU7IC8vIG9ubHkgbmVjZXNzYXJ5IGlmIG5vdCB1c2luZyB0aGUgcHJpdmF0ZSB1bmljb2RlIHJhbmdlIChmaXJzdEdseXBoIG9wdGlvbilcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG59XHJcblxyXG4laWNvbiB7XHJcbiAgICBAaW5jbHVkZSBpY29uLXN0eWxlcztcclxufVxyXG5cclxuQGZ1bmN0aW9uIGljb24tY2hhcigkZmlsZW5hbWUpIHtcclxuICAgICRjaGFyOiBcIlwiO1xyXG5cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gYWdlbmRhIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMDFcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gYXNzaXN0YW5jZSB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDAyXCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IGF2aW9uIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMDNcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gY2FybmV0IHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMDRcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gY2FydGUge1xyXG4gICAgICAgICRjaGFyOiBcIlxcRTAwNVwiO1xyXG4gICAgfVxyXG4gICAgQGlmICRmaWxlbmFtZSA9PSBjYXNxdWUge1xyXG4gICAgICAgICRjaGFyOiBcIlxcRTAwNlwiO1xyXG4gICAgfVxyXG4gICAgQGlmICRmaWxlbmFtZSA9PSBjaGVjayB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDA3XCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IGNsb3NlIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMDhcIjtcclxuICAgIH1cclxuXHRcdEBpZiAkZmlsZW5hbWUgPT0gY28yIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMDlcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gY29uY2llcmdlcmllIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMEFcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gZGF0ZXBpY2tlciB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDBCXCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IGRldmlzZSB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDBDXCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IGZhY2Vib29rIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMERcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gZmxlY2hlLWJvdXRvbiB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDBFXCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IGZsZWNoZS1uYXYge1xyXG4gICAgICAgICRjaGFyOiBcIlxcRTAwRlwiO1xyXG4gICAgfVxyXG4gICAgQGlmICRmaWxlbmFtZSA9PSBmbGVjaGUtc2VsZWN0IHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMTBcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gZm9vZGluZyB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDExXCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IGdvb2dsZS1wbHVzIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMTJcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gZ3BzIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMTNcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gZ3VpbGxlbWV0LWZlcm1lIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMTRcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gZ3VpbGxlbWV0LW91dmVydCB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDE1XCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IGhvbWUge1xyXG4gICAgICAgICRjaGFyOiBcIlxcRTAxNlwiO1xyXG4gICAgfVxyXG4gICAgQGlmICRmaWxlbmFtZSA9PSBob3JhaXJlIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMTdcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gaW5zdGFncmFtIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMThcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gbGlrZWFmcmllbmQge1xyXG4gICAgICAgICRjaGFyOiBcIlxcRTAxOVwiO1xyXG4gICAgfVxyXG4gICAgQGlmICRmaWxlbmFtZSA9PSBsaW5rZWRpbiB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDFBXCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IGxpc3RlIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMUJcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gbWFpbCB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDFDXCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IG1pbGVzIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMURcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gcGludGVyZXN0IHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMUVcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gc2Nyb2xsIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMUZcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gc2VsZWN0IHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMjBcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gc2hhcmUge1xyXG4gICAgICAgICRjaGFyOiBcIlxcRTAyMVwiO1xyXG4gICAgfVxyXG4gICAgQGlmICRmaWxlbmFtZSA9PSBzbGlkZXItbGVmdCB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDIyXCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IHNsaWRlci1yaWdodCB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDIzXCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IHN0YXItaGFsZiB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDI0XCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IHN0YXIge1xyXG4gICAgICAgICRjaGFyOiBcIlxcRTAyNVwiO1xyXG4gICAgfVxyXG4gICAgQGlmICRmaWxlbmFtZSA9PSB0Y2hhdCB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDI2XCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IHRlbCB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDI3XCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IHR3aXR0ZXIge1xyXG4gICAgICAgICRjaGFyOiBcIlxcRTAyOFwiO1xyXG4gICAgfVxyXG4gICAgQGlmICRmaWxlbmFtZSA9PSB1c2VyIHtcclxuICAgICAgICAkY2hhcjogXCJcXEUwMjlcIjtcclxuICAgIH1cclxuICAgIEBpZiAkZmlsZW5hbWUgPT0gd2lmaSB7XHJcbiAgICAgICAgJGNoYXI6IFwiXFxFMDJBXCI7XHJcbiAgICB9XHJcbiAgICBAaWYgJGZpbGVuYW1lID09IHlvdXR1YmUge1xyXG4gICAgICAgICRjaGFyOiBcIlxcRTAyQlwiO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBAcmV0dXJuICRjaGFyO1xyXG59XHJcblxyXG5AbWl4aW4gaWNvbigkZmlsZW5hbWUsICRpbnNlcnQ6IGJlZm9yZSwgJGV4dGVuZDogZmFsc2UpIHtcclxuICAgICY6I3skaW5zZXJ0fSB7XHJcbiAgICAgICAgQGlmICRleHRlbmQge1xyXG4gICAgICAgICAgICBAZXh0ZW5kICVpY29uO1xyXG4gICAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBpY29uLXN0eWxlcztcclxuICAgICAgICB9XHJcbiAgICAgICAgY29udGVudDogaWNvbi1jaGFyKCRmaWxlbmFtZSk7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4uaWNvbi1hZ2VuZGEge1xyXG4gICAgQGluY2x1ZGUgaWNvbihhZ2VuZGEpO1xyXG59XHJcbi5pY29uLWFzc2lzdGFuY2Uge1xyXG4gICAgQGluY2x1ZGUgaWNvbihhc3Npc3RhbmNlKTtcclxufVxyXG4uaWNvbi1hdmlvbiB7XHJcbiAgICBAaW5jbHVkZSBpY29uKGF2aW9uKTtcclxufVxyXG4uaWNvbi1jYXJuZXQge1xyXG4gICAgQGluY2x1ZGUgaWNvbihjYXJuZXQpO1xyXG59XHJcbi5pY29uLWNhcnRlIHtcclxuICAgIEBpbmNsdWRlIGljb24oY2FydGUpO1xyXG59XHJcbi5pY29uLWNhc3F1ZSB7XHJcbiAgICBAaW5jbHVkZSBpY29uKGNhc3F1ZSk7XHJcbn1cclxuLmljb24tY2hlY2sge1xyXG4gICAgQGluY2x1ZGUgaWNvbihjaGVjayk7XHJcbn1cclxuLmljb24tY2xvc2Uge1xyXG4gICAgQGluY2x1ZGUgaWNvbihjbG9zZSk7XHJcbn1cclxuLmljb24tY29uY2llcmdlcmllIHtcclxuICAgIEBpbmNsdWRlIGljb24oY29uY2llcmdlcmllKTtcclxufVxyXG4uaWNvbi1kYXRlcGlja2VyIHtcclxuICAgIEBpbmNsdWRlIGljb24oZGF0ZXBpY2tlcik7XHJcbn1cclxuLmljb24tZGV2aXNlIHtcclxuICAgIEBpbmNsdWRlIGljb24oZGV2aXNlKTtcclxufVxyXG4uaWNvbi1mYWNlYm9vayB7XHJcbiAgICBAaW5jbHVkZSBpY29uKGZhY2Vib29rKTtcclxufVxyXG4uaWNvbi1mbGVjaGUtYm91dG9uIHtcclxuICAgIEBpbmNsdWRlIGljb24oZmxlY2hlLWJvdXRvbik7XHJcbn1cclxuLmljb24tZmxlY2hlLW5hdiB7XHJcbiAgICBAaW5jbHVkZSBpY29uKGZsZWNoZS1uYXYpO1xyXG59XHJcbi5pY29uLWZsZWNoZS1zZWxlY3Qge1xyXG4gICAgQGluY2x1ZGUgaWNvbihmbGVjaGUtc2VsZWN0KTtcclxufVxyXG4uaWNvbi1mb29kaW5nIHtcclxuICAgIEBpbmNsdWRlIGljb24oZm9vZGluZyk7XHJcbn1cclxuLmljb24tZ29vZ2xlLXBsdXMge1xyXG4gICAgQGluY2x1ZGUgaWNvbihnb29nbGUtcGx1cyk7XHJcbn1cclxuLmljb24tZ3BzIHtcclxuICAgIEBpbmNsdWRlIGljb24oZ3BzKTtcclxufVxyXG4uaWNvbi1ndWlsbGVtZXQtZmVybWUge1xyXG4gICAgQGluY2x1ZGUgaWNvbihndWlsbGVtZXQtZmVybWUpO1xyXG59XHJcbi5pY29uLWd1aWxsZW1ldC1vdXZlcnQge1xyXG4gICAgQGluY2x1ZGUgaWNvbihndWlsbGVtZXQtb3V2ZXJ0KTtcclxufVxyXG4uaWNvbi1ob21lIHtcclxuICAgIEBpbmNsdWRlIGljb24oaG9tZSk7XHJcbn1cclxuLmljb24taG9yYWlyZSB7XHJcbiAgICBAaW5jbHVkZSBpY29uKGhvcmFpcmUpO1xyXG59XHJcbi5pY29uLWluc3RhZ3JhbSB7XHJcbiAgICBAaW5jbHVkZSBpY29uKGluc3RhZ3JhbSk7XHJcbn1cclxuLmljb24tbGlrZWFmcmllbmQge1xyXG4gICAgQGluY2x1ZGUgaWNvbihsaWtlYWZyaWVuZCk7XHJcbn1cclxuLmljb24tbGlua2VkaW4ge1xyXG4gICAgQGluY2x1ZGUgaWNvbihsaW5rZWRpbik7XHJcbn1cclxuLmljb24tbGlzdGUge1xyXG4gICAgQGluY2x1ZGUgaWNvbihsaXN0ZSk7XHJcbn1cclxuLmljb24tbWFpbCB7XHJcbiAgICBAaW5jbHVkZSBpY29uKG1haWwpO1xyXG59XHJcbi5pY29uLW1pbGVzIHtcclxuICAgIEBpbmNsdWRlIGljb24obWlsZXMpO1xyXG59XHJcbi5pY29uLXBpbnRlcmVzdCB7XHJcbiAgICBAaW5jbHVkZSBpY29uKHBpbnRlcmVzdCk7XHJcbn1cclxuLmljb24tc2Nyb2xsIHtcclxuICAgIEBpbmNsdWRlIGljb24oc2Nyb2xsKTtcclxufVxyXG4uaWNvbi1zZWxlY3Qge1xyXG4gICAgQGluY2x1ZGUgaWNvbihzZWxlY3QpO1xyXG59XHJcbi5pY29uLXNoYXJlIHtcclxuICAgIEBpbmNsdWRlIGljb24oc2hhcmUpO1xyXG59XHJcbi5pY29uLXNsaWRlci1sZWZ0IHtcclxuICAgIEBpbmNsdWRlIGljb24oc2xpZGVyLWxlZnQpO1xyXG59XHJcbi5pY29uLXNsaWRlci1yaWdodCB7XHJcbiAgICBAaW5jbHVkZSBpY29uKHNsaWRlci1yaWdodCk7XHJcbn1cclxuLmljb24tc3Rhci1oYWxmIHtcclxuICAgIEBpbmNsdWRlIGljb24oc3Rhci1oYWxmKTtcclxufVxyXG4uaWNvbi1zdGFyIHtcclxuICAgIEBpbmNsdWRlIGljb24oc3Rhcik7XHJcbn1cclxuLmljb24tdGNoYXQge1xyXG4gICAgQGluY2x1ZGUgaWNvbih0Y2hhdCk7XHJcbn1cclxuLmljb24tdGVsIHtcclxuICAgIEBpbmNsdWRlIGljb24odGVsKTtcclxufVxyXG4uaWNvbi10d2l0dGVyIHtcclxuICAgIEBpbmNsdWRlIGljb24odHdpdHRlcik7XHJcbn1cclxuLmljb24tdXNlciB7XHJcbiAgICBAaW5jbHVkZSBpY29uKHVzZXIpO1xyXG59XHJcbi5pY29uLXdpZmkge1xyXG4gICAgQGluY2x1ZGUgaWNvbih3aWZpKTtcclxufVxyXG4uaWNvbi15b3V0dWJlIHtcclxuICAgIEBpbmNsdWRlIGljb24oeW91dHViZSk7XHJcbn1cclxuLmljb24tY28ye1xyXG5cdEBpbmNsdWRlIGljb24oY28yKTtcclxufVxyXG5cclxuXHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgICYgYnV0dG9uc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmJ1dHRvbiB7XHJcbiAgQGluY2x1ZGUgYnRuO1xyXG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjNzIGVhc2Utb3V0O1xyXG4gICY6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjp0aW50KCRibHVlLCAxNSUpXHJcbiAgfVxyXG59XHJcblxyXG4vKiBXb2JibGUgSG9yaXpvbnRhbCAqL1xyXG4ud29iYmxlLWhvcml6b250YWwge1xyXG4gIEBpbmNsdWRlIHdvYmJsZS1ob3Jpem9udGFsO1xyXG59XHJcblxyXG4vKiBXb2JibGUgdmVydGljYWwgKi9cclxuLndvYmJsZS12ZXJ0aWNhbCB7XHJcbiAgQGluY2x1ZGUgd29iYmxlLXZlcnRpY2FsO1xyXG59XHJcblxyXG5cclxuLyogQm91bmNlIFRvIFJpZ2h0ICovXHJcbi5ib3VuY2UtdG8tcmlnaHQge1xyXG4gIEBpbmNsdWRlIGJvdW5jZS10by1yaWdodDtcclxufVxyXG5cclxuXHJcbi5idXR0b24tYWxwaGEge1xyXG4gIEBpbmNsdWRlIGJ0bkFscGhhO1xyXG4gICYuYm91bmNlLXRvLXJpZ2h0IHtcclxuICAgIEBpbmNsdWRlIGJvdW5jZS10by1yaWdodChyZ2JhKCRncmV5RGFyaywuNSkpO1xyXG4gIH1cclxufVxyXG5cclxuLmJ1dHRvbi1iZXRhIHtcclxuICBAaW5jbHVkZSBidG5CZXRhO1xyXG59XHJcblxyXG4uYnV0dG9uLW1lbnUge1xyXG4gIEBpbmNsdWRlIGJ0bk1lbnU7XHJcbn1cclxuXHJcbi5saW5rIHtcclxuICBAaW5jbHVkZSBsaW5rO1xyXG59XHJcblxyXG4ubGluay1hbHBoYSB7XHJcbiAgQGluY2x1ZGUgbGluay1hbHBoYTtcclxufVxyXG5cclxuLmxpbmstYmV0YSB7XHJcbiAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gIGxldHRlci1zcGFjaW5nOiAuMnJlbTtcclxuICBjb2xvcjokYWxwaGEtY29sb3I7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBmb250LXNpemU6MnJlbTtcclxufVxyXG5cclxuLmxpbmstYXJyb3cge1xyXG4gIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gIG92ZXJmbG93OmhpZGRlbjtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIGNvbG9yOiRhbHBoYS1jb2xvcjtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgc3BhbiB7XHJcbiAgICBAaW5jbHVkZSBpY29uKGZsZWNoZS1ib3V0b24sIGFmdGVyKTtcclxuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgLm5vLXRvdWNoICYge1xyXG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzIGVhc2Utb3V0O1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygtMTAwJSArIDIxcHgpKTsgLy8gMTZweCBlZ2FsZSBsYSBsYXJnZXVyIGRlIGxhIGZsZWNoZVxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBtYXJnaW4tbGVmdDo0cHg7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgIGZvbnQtc2l6ZToycmVtO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICAmIGZvcm1zXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4kZm9ybS1ib3JkZXItY29sb3I6ICNlMmUzZTM7XHJcbiRmb3JtLWxpbmUtaGVpZ2h0IDogMS4zMzMzMzMzO1xyXG5cclxuQG1peGluIHRleHRFcnJvciB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgZm9udC1zdHlsZTppdGFsaWM7XHJcbiAgY29sb3I6JGVycm9yLWNvbG9yO1xyXG4gIGZvbnQtd2VpZ2h0OjQwMDtcclxuICBtYXJnaW4tdG9wOjAuNXJlbTtcclxuICBmb250LXNpemU6IDEuNXJlbTtcclxuICBwYWRkaW5nLWxlZnQ6MTZweDtcclxufVxyXG5cclxuXHJcbmxhYmVsIHtcclxuICBjdXJzb3I6cG9pbnRlcjtcclxuICAmLmVycm9yIHtcclxuICAgIEBpbmNsdWRlIHRleHRFcnJvcjtcclxuICB9XHJcbn1cclxuXHJcbi5maWVsZHNldCB7XHJcbiAgQGluY2x1ZGUgcGFkVigycmVtKTtcclxuICAmICsgJiB7XHJcbiAgICBib3JkZXItdG9wOjFweCBzb2xpZCAkZ3JleTtcclxuICB9XHJcbn1cclxuXHJcbi5mb3JtLWxhYmVsIHtcclxuICBmb250LXdlaWdodDo0MDA7XHJcbiAgZm9udC1zaXplOnJlbSgxNik7XHJcbiAgLnNtYWxsZXIge1xyXG4gICAgZm9udC1zaXplOjAuN2VtO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIH1cclxufVxyXG5cclxuLmZvcm0taG9yaXpvbnRhbCB7XHJcbiAgLmNvbnRyb2wtbGFiZWwge1xyXG4gICAgZm9udC13ZWlnaHQ6NDAwO1xyXG4gICAgdGV4dC1hbGlnbjpsZWZ0O1xyXG4gICAgcGFkZGluZy10b3A6IDE0cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uZm9ybS1pbmZvIHtcclxuICBkaXNwbGF5OmJsb2NrO1xyXG4gIG1hcmdpbi10b3A6MC41cmVtO1xyXG4gIHBhZGRpbmctbGVmdDoxNnB4O1xyXG4gIGZvbnQtc2l6ZTowLjg1ZW07XHJcbiAgZm9udC1zdHlsZTppdGFsaWM7XHJcbn1cclxuXHJcbkBtaXhpbiBmb3JtQ29udHJvbCB7XHJcbiAgZm9udC1zaXplOjE2cHg7XHJcbiAgcGFkZGluZzogMTBweCAxNnB4O1xyXG4gIGhlaWdodDogNDZweDtcclxuICBsaW5lLWhlaWdodDogJGZvcm0tbGluZS1oZWlnaHQ7XHJcbn1cclxuXHJcbi5mb3JtLWNvbnRyb2wge1xyXG4gIEBpbmNsdWRlIGZvcm1Db250cm9sO1xyXG4gIGNvbG9yOiRiYXNlLWNvbG9yO1xyXG4gIGJvcmRlci1jb2xvcjokZm9ybS1ib3JkZXItY29sb3I7XHJcbiAgYm94LXNoYWRvdzpub25lO1xyXG4gIEBpbmNsdWRlIHBsYWNlaG9sZGVye1xyXG4gICAgY29sb3I6JGJhc2UtY29sb3I7XHJcbiAgfVxyXG4gICY6Zm9jdXMge1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIGJvcmRlci1jb2xvcjokYmx1ZTtcclxuICAgIGJveC1zaGFkb3c6bm9uZTtcclxuICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVyIHtcclxuICAgICAgY29sb3I6cmdiYSgkYmFzZS1jb2xvciwuMilcclxuICAgIH1cclxuICB9XHJcbiAgJi5pbnB1dC12YWxpZGF0aW9uLWVycm9yIHtcclxuICAgIGJvcmRlci1jb2xvcjokZXJyb3ItY29sb3IhaW1wb3J0YW50O1xyXG4gIH1cclxuICAuZXJyb3IgJiB7XHJcbiAgICBib3JkZXItY29sb3I6JGVycm9yLWNvbG9yO1xyXG4gIH1cclxuICAuc3VjY2VzcyAmIHtcclxuICAgIGJvcmRlci1jb2xvcjokc3VjY2Vzcy1jb2xvcjtcclxuICB9XHJcbiAgLmJzLXNlYXJjaGJveCAmIHtcclxuICAgIHBhZGRpbmc6NnB4O1xyXG4gICAgaGVpZ2h0OmF1dG87XHJcbiAgfVxyXG59XHJcblxyXG4uZmllbGQtdmFsaWRhdGlvbi1lcnJvciB7XHJcbiAgQGluY2x1ZGUgdGV4dEVycm9yO1xyXG59XHJcblxyXG4udmFsaWRhdGlvblN1bW1hcnlFcnJvciB7XHJcbiAgY29sb3I6JGVycm9yLWNvbG9yO1xyXG4gIG1hcmdpbi1ib3R0b206MnJlbTtcclxuICBzcGFuIHtcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICBtYXJnaW4tYm90dG9tOjVweDtcclxuICB9XHJcbiAgdWwge1xyXG4gICAgQGluY2x1ZGUgYnVsbGV0TGlzdDtcclxuICB9XHJcbn1cclxuXHJcbi52YWxpZGF0aW9uLXN1bW1hcnktdmFsaWQge1xyXG5cdGNvbG9yOiNmZjRkNDI7XHJcbiAgICBkaXNwbGF5Om5vbmU7XHJcbn1cclxuXHJcblxyXG4uZm9ybS1jb3VudGVyIHtcclxuICBmb250LXNpemU6MS4ycmVtO1xyXG59XHJcblxyXG4uZm9ybS1jb250cm9sLWFscGhhIHtcclxuICBwYWRkaW5nOjEuMnJlbSAycmVtO1xyXG4gIGhlaWdodDogNXJlbTtcclxuICBmb250LXNpemU6IDEuNHJlbTtcclxuICBib3JkZXI6IG5vbmU7XHJcbiAgZm9udC13ZWlnaHQ6NTAwO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XHJcbiAgYm9yZGVyLXJhZGl1czowO1xyXG4gIEBpbmNsdWRlIHBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiAkYmFzZS1jb2xvcjtcclxuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xyXG4gICAgbGluZS1oZWlnaHQ6MS44O1xyXG4gIH1cclxuICAudG91Y2ggJntcclxuICAgIGZvbnQtc2l6ZTpyZW0oMTYpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi5mb3JtLWNvbnRleHQge1xyXG4gIFtjbGFzc149J2NvbC0nXSArIFtjbGFzc149J2NvbC0nXSB7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgbWFyZ2luLXRvcDogMnJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgLnJvdyArIC5yb3cge1xyXG4gICAgbWFyZ2luLXRvcDogMnJlbTtcclxuICB9XHJcbn1cclxuXHJcbi8vIHR5cGUgZGF0ZVxyXG4uZGF0ZS1waWNrZXIge1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICBiYWNrZ3JvdW5kLWltYWdlOnVybCgnLi4vaW1hZ2VzL2ljb24vZGF0ZXBpY2tlci5zdmcnKTtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDEwMCUgLSAxMHB4KSA1MCU7XHJcbiAgYmFja2dyb3VuZC1zaXplOiAzcmVtO1xyXG4gIHBhZGRpbmctcmlnaHQ6IDVyZW07XHJcblxyXG59XHJcbmlucHV0W3R5cGU9XCJkYXRlXCJdLmZvcm0tY29udHJvbC5kYXRlLXBpY2tlcntcclxuICBsaW5lLWhlaWdodDokZm9ybS1saW5lLWhlaWdodDtcclxufVxyXG5cclxuLy8gdHlwZSByYWRpb1xyXG4ucmFkaW8tZ3JvdXAge1xyXG4gIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICYgKyAmIHtcclxuICAgIG1hcmdpbi1sZWZ0OjFyZW07XHJcbiAgfVxyXG59XHJcblxyXG5cclxuaW5wdXRbdHlwZT1yYWRpb10ucmFkaW8ge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgfiBsYWJlbCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgbGluZS1oZWlnaHQ6IDIuNHJlbTtcclxuICAgIGN1cnNvcjpwb2ludGVyO1xyXG4gICAgJjpiZWZvcmUsXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6NTAlO1xyXG4gICAgfVxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgIHRvcDogMnB4O1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZm9ybS1ib3JkZXItY29sb3I7XHJcbiAgICB9XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgdG9wOiA2cHg7XHJcbiAgICAgIGxlZnQ6IDRweDtcclxuICAgICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgICB3aWR0aDogMTJweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDFyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICYucmlnaHQtc2lkZSB7XHJcbiAgICB+IGxhYmVsIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgbGVmdDogYXV0bztcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgfVxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgIHJpZ2h0OiA0cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJjpjaGVja2VkIHtcclxuICAgIH4gbGFiZWwge1xyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWxwaGEtY29sb3I7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9cmFkaW9dLnJhZGlvLWFscGhhIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIH4gbGFiZWwge1xyXG4gICAgQGluY2x1ZGUgZm9ybUNvbnRyb2w7XHJcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICRmb3JtLWJvcmRlci1jb2xvcjtcclxuICAgIGJvcmRlci1yYWRpdXM6NHB4O1xyXG4gICAgbWluLXdpZHRoOjdyZW07XHJcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICB9XHJcbiAgJjpjaGVja2VkIHtcclxuICAgIH4gbGFiZWwge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWxwaGEtY29sb3I7XHJcbiAgICAgIGNvbG9yOiR3aGl0ZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLy8gY2hlY2tib3hcclxuaW5wdXRbdHlwZT1jaGVja2JveF0uY2hlY2tib3gge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgfiBsYWJlbCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgbGluZS1oZWlnaHQ6IDIuNHJlbTtcclxuICAgIGN1cnNvcjpwb2ludGVyO1xyXG4gICAgQGluY2x1ZGUgaWNvbihjaGVjaywgYWZ0ZXIpO1xyXG4gICAgJjpiZWZvcmUsXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAycHg7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICB9XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRhbHBoYS1jb2xvcjtcclxuICAgIH1cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xyXG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xyXG4gICAgfVxyXG4gIH1zXHJcbiAgJi5yaWdodC1zaWRlIHtcclxuICAgIH4gbGFiZWwge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICB9XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJjpjaGVja2VkIHtcclxuICAgIH4gbGFiZWwge1xyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb2xvcjogJGFscGhhLWNvbG9yO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gdHlwZSBudW1iZXJcclxuaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxyXG5pbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICBtYXJnaW46IDA7XHJcbn1cclxuLmlucHV0LWdyb3VwLWFkZG9uIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcclxuICBib3JkZXItY29sb3I6ICRmb3JtLWJvcmRlci1jb2xvcjtcclxuICBmb250LXNpemU6MnJlbTtcclxuICBjdXJzb3I6cG9pbnRlcjtcclxufVxyXG5cclxuLy8gdGV4dGFyZWFcclxudGV4dGFyZWEge1xyXG4gIHJlc2l6ZTogdmVydGljYWw7XHJcbn1cclxuXHJcblxyXG4vLyBmb3JtIHNlY3Rpb25cclxuLmZvcm0tc2VjdGlvbiB7XHJcbiAgJiArICYge1xyXG4gICAgbWFyZ2luLXRvcDo0cmVtO1xyXG4gIH1cclxuICAmX19oZWFkZXIge1xyXG4gICAgZGlzcGxheTp0YWJsZTtcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JleTtcclxuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcclxuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2hlYWRlci10aXRsZSB7XHJcbiAgICBkaXNwbGF5OnRhYmxlLWNlbGw7XHJcbiAgICBmb250LXNpemU6M3JlbTtcclxuICAgIGZvbnQtd2VpZ2h0OjcwMDtcclxuICAgIGNvbG9yOiRibHVlO1xyXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgIH1cclxuICB9XHJcbiAgJl9faGVhZGVyLXRleHQge1xyXG4gICAgZGlzcGxheTp0YWJsZS1jZWxsO1xyXG4gICAgdGV4dC1hbGlnbjpyaWdodDtcclxuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIHRleHQtYWxpZ246bGVmdDtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19zdWJ0aXRsZSB7XHJcbiAgICBAaW5jbHVkZSBtYXJWKDRyZW0sIDJyZW0pO1xyXG4gICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgZm9udC1zaXplOjIuMnJlbTtcclxuICB9XHJcbn1cclxuXHJcbi8vIGJveCBzZWN0aW9uXHJcbi5ib3gtc2VhcmNoIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcclxuICBkaXNwbGF5OmlubGluZS1ibG9jaztcclxuICBwYWRkaW5nOjAuNXJlbTtcclxuICAmX19mb3JtLWdyb3VwIHtcclxuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIEBpbmNsdWRlIHBhZEgoMXJlbSk7XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAmICsgJjpiZWZvcmUge1xyXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICAgIGNvbnRlbnQ6XCJcIjtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRiYXNlLWNvbG9yO1xyXG4gICAgICAgIHdpZHRoOjFweDtcclxuICAgICAgICBoZWlnaHQ6MTAwJTtcclxuICAgICAgICB0b3A6MDtcclxuICAgICAgICBsZWZ0Oi0ycHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBAaW5jbHVkZSBwYWRWKDAuNXJlbSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2xhYmVsIHtcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XHJcbiAgICBjb2xvcjokZ3JleURhcms7XHJcbiAgICBmb250LXdlaWdodDo1MDA7XHJcbiAgICBmb250LXNpemU6MS42cmVtO1xyXG4gIH1cclxuICAmX19zdWJtaXQge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLmludGwtdGVsLWlucHV0IHtcclxuICB3aWR0aDoxMDAlO1xyXG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgJiBjb21tb25cclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5oMiB7XHJcbiAgZGlzcGxheTpibG9jaztcclxuICBmb250LXNpemU6NHJlbTtcclxuICBmb250LXdlaWdodDo3MDA7XHJcbiAgbGluZS1oZWlnaHQ6MS4xO1xyXG4gIG1hcmdpbi1ib3R0b206MC41cmVtO1xyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgZm9udC1zaXplOnJlbSgzMCk7XHJcbiAgfVxyXG59XHJcblxyXG4uaDItYWxwaGEge1xyXG4gIGRpc3BsYXk6YmxvY2s7XHJcbiAgZm9udC1zaXplOjRyZW07XHJcbiAgZm9udC13ZWlnaHQ6MzAwO1xyXG4gIGxpbmUtaGVpZ2h0OjEuMTtcclxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgIGZvbnQtc2l6ZTpyZW0oMjUpO1xyXG4gIH1cclxufVxyXG5cclxuLnN1YnRpdGxlIHtcclxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LTI7XHJcbiAgZm9udC1zaXplOjJyZW07XHJcbiAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gIG1hcmdpbi1ib3R0b206MXJlbTtcclxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgIGZvbnQtc2l6ZTpyZW0oMTQpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi5oZWFkZXItYm94IHtcclxuICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICBtYXJnaW4tYm90dG9tOjNyZW07XHJcbn1cclxuXHJcbi5hY3Rpb25zIHtcclxuICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICBtYXJnaW4tdG9wOiRiYXNlLW1hcmdpbjtcclxufVxyXG5cclxuLm5vTWFyZ2luVG9wIHtcclxuICBtYXJnaW4tdG9wOjA7XHJcbn1cclxuXHJcbi50ZXh0LWFscGhhIHtcclxuICBjb2xvcjokYWxwaGEtY29sb3I7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBib3JkZXItbGVmdDo1cHggc29saWQgJGFscGhhLWNvbG9yO1xyXG4gIHBhZGRpbmctbGVmdDoxLjVyZW07XHJcbiAgbGluZS1oZWlnaHQ6IDEuNjtcclxufVxyXG5cclxuLnBhZ2VyIHtcclxuICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICBkaXNwbGF5OmlubGluZS1ibG9jaztcclxuICAmID4gbGkge1xyXG4gICAgZmxvYXQ6bGVmdDtcclxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICAmICsgbGkge1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDpcIlwiO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJhc2UtY29sb3I7XHJcbiAgICAgICAgd2lkdGg6MnB4O1xyXG4gICAgICAgIGhlaWdodDoxLjVyZW07XHJcbiAgICAgICAgdG9wOjQ4JTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGEge1xyXG4gICAgICBAaW5jbHVkZSBwYWRIKDAuN3JlbSk7XHJcbiAgICAgIGZvbnQtc2l6ZToycmVtO1xyXG4gICAgICBmb250LXdlaWdodDo1MDA7XHJcbiAgICAgICY6aG92ZXIsXHJcbiAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICBjb2xvcjokYmx1ZTtcclxuICAgICAgICAucGFnZS1tYWcgJntcclxuICAgICAgICAgIGNvbG9yOiRwaW5rTGlnaHQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLmJ1bGxldC1saXN0IHtcclxuICBAaW5jbHVkZSBidWxsZXRMaXN0OyBcclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICAmIGJveFxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuXHJcbi8vIGNvbW11blxyXG5AaW1wb3J0ICdjb21wb25lbnRzL2NvbmZpZXotbm91cyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbmV3c2xldHRlcic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3VyLWNhcnRlJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9pbnRybyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWluaS1pbnRybyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FybmV0LXZveWFnZSc7XHJcblxyXG4vLyBzcGVjaWZpcXVlIGFjY3VlaWxcclxuQGltcG9ydCAnY29tcG9uZW50cy9tb25kZS1zZXJ2aWNlJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9tb25kZS1lbnZpZXMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL21vbmRlLWltYWdpbmF0aW9uJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9ub3V2ZWF1eC12b3lhZ2VzJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9hY3R1YWxpdGUnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3BsdXMtbG9pbic7XHJcblxyXG4vLyBzcGVjaWZpcXVlIHBheXNcclxuQGltcG9ydCAnY29tcG9uZW50cy9zZXJ2aWNlcyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvaWRlZXMtdm95YWdlcyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmVnaW9ucyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZW52aWVzJztcclxuQGltcG9ydCAnY29tcG9uZW50cy90ZW1vaWduYWdlJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9ndWlkZSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWlldXgtcHJlcGFyZXInO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2lkZWVzLWFzc29jaWVlcyc7XHJcblxyXG4vLyBzcGVjaWZpcXVlIHByb2R1aXRcclxuQGltcG9ydCAnY29tcG9uZW50cy92b3VzLWFpbWVyZXonO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2l0aW5lcmFpcmUnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2EtbGEtY2FydGUnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2J1ZGdldCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbm9zLWV4cGVydHMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2NvbnRhY3QnO1xyXG5cclxuLy8gc3BlY2lmaXF1ZSByZXN1bHRhdHNcclxuQGltcG9ydCAnY29tcG9uZW50cy9yZWNoZXJjaGUnO1xyXG5cclxuLy8gc3BlY2lmaXF1ZSBndWlkZVxyXG5AaW1wb3J0ICdjb21wb25lbnRzL2luZm9zLXBheXMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3F1YW5kLXBhcnRpcic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYm9ubmVzLXJhaXNvbnMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3V0aWxlJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9hLWRlY291dnJpcic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdm95YWdlcy1wYXlzJztcclxuXHJcbi8vIHNwZWNpZmlxdWUgZ3VpZGUgYXJ0aWNsZVxyXG5AaW1wb3J0ICdjb21wb25lbnRzL2FydGljbGVzJztcclxuXHJcbi8vIHNwZWNpZmlxdWUgY29uc2VpbGxlcnNcclxuQGltcG9ydCAnY29tcG9uZW50cy9pbnRyby1jb25zZWlsbGVycyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY29uc2VpbGxlcnMnO1xyXG5cclxuLy8gc3BlY2lmaXF1ZSBjb25zZWlsbGVycyBwYXlzXHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvaW50ZXJ2aWV3cyc7XHJcblxyXG4vLyBzcGVjaWZpcXVlIGNvbnNlaWxsZXJzIGludGVydmlld1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2ludGVydmlldy1kZXRhaWwnO1xyXG5cclxuLy8gc3BlY2lmaXF1ZSBhdmlzIGNsaWVudHNcclxuQGltcG9ydCAnY29tcG9uZW50cy9hdmlzJztcclxuXHJcbi8vIHNwZWNpZmlxdWUgZW52aWVzXHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZW52aWVzLW1vbWVudCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZW52aWVzLXRoZW1lJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9kZWNvbm5lY3Rlcic7XHJcbi8vQGltcG9ydCAnY29tcG9uZW50cy9ub3Mtb3JpZW50ZXVycyc7XHJcblxyXG4vLyBzcGVjaWZpcXVlIHJlY2hlcmNoZVxyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Rlc3RpbmF0aW9ucy1mYXZvcml0ZXMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3NhaXNvbnMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL29ucGFydG91JztcclxuXHJcbi8vIHNwZWNpZmlxdWUgY2lyY3VpdFxyXG5AaW1wb3J0ICdjb21wb25lbnRzL2lkZWVzLWNpcmN1aXQnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3RvcC1kZXN0aW5hdGlvbnMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Jyb2NodXJlJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9kaXgtYm9ubmVzLXJhaXNvbnMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3NlcnZpY2VzLXBsdXMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL29mZnJlcy1ldC1hdHRlbnRpb25zJztcclxuXHJcbi8vIHNwZWNpZmlxdWUgY2hlcXVlcyBjYWRlYXV4XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcHJlc2VudGF0aW9uLWNoZXF1ZXMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2NvbW1lbnQtY2EtbWFyY2hlJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9jaGVxdWVzLXR1bm5lbCc7XHJcblxyXG4vLyBzcGVjaWZpcXVlIEREVlxyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Rkdic7XHJcblxyXG4vLyBzcGVjaWZpcXVlIGFnZW5jZVxyXG5AaW1wb3J0ICdjb21wb25lbnRzL25vcy1hZ2VuY2VzJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9zZXJ2aWNlLWNsaWVudCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcHJlc3NlLWV0LXRlY2huaXF1ZSc7XHJcblxyXG4vLyBzcGVjaWZpcXVlIGFnZW5jZSBkZXRhaWxcclxuQGltcG9ydCAnY29tcG9uZW50cy9hZ2VuY2UtYWNjZXMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2FnZW5jZS12aXNpdGUnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2FnZW5jZS1ldmVuZW1lbnRzJztcclxuXHJcbi8vIHNwZWNpZmlxdWUgbGlzdGUgbWFyaWFnZVxyXG5AaW1wb3J0ICdjb21wb25lbnRzL3ByZXNlbnRhdGlvbi1tYXJpYWdlJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9ib25uZXMtcmFpc29ucy1tYXJpYWdlJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9hdmFudGFnZXMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3BhcnRpY2lwYXRpb24tY2FkZWF1JztcclxuXHJcbi8vIHNwZWNpZmlxdWUgZXNwYWNlIGNsaWVudFxyXG5AaW1wb3J0ICdjb21wb25lbnRzL2VzcGFjZS1jbGllbnQnO1xyXG5cclxuLy8gc3BlY2lmaXF1ZSBlbnZpZVxyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Vudmllcy1wYXItcGF5cyc7XHJcblxyXG4vLyBzcGVjaWZpcXVlIHNhaXNvbnNcclxuQGltcG9ydCAnY29tcG9uZW50cy9zYWlzb24nO1xyXG5cclxuLy8gc3BlY2lmaXF1ZSBicm9jaHVyZXNcclxuQGltcG9ydCAnY29tcG9uZW50cy9ub3MtYnJvY2h1cmVzJztcclxuXHJcbi8vIHNwZWNpZmlxdWUgZXNwcml0LXZveWFnZXVyc1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2xlLWZvb2RpbmcnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL25vcy1tYWlzb25zJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9sYS1wcmVzc2UtZW4tcGFybGUnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3ZveWFnZS1zdXItbWVzdXJlJztcclxuXHJcblxyXG4vLyBzcGVjaWZpcXVlIHZhbGlzZSBpZMOpYWxlXHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdmFsaXNlLWlkZWFsZSc7XHJcblxyXG4vLyBzcGVjaWZpcXVlIGxpYnJhaXJpZVxyXG5AaW1wb3J0ICdjb21wb25lbnRzL2xpYnJhaXJpZSc7XHJcblxyXG4vLyBzcGVjaWZpcXVlIHZhbGV1ciBham91dGVlXHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdmFsZXVyLWFqb3V0ZWUnO1xyXG5cclxuLy8gc3BlY2lmaXF1ZSBsaWtlIGEgZnJpZW5kXHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZnJpZW5kcyc7XHJcblxyXG4vLyBzcGVjaWZpcXVlIGNvbmNpZXJnZXJpZVxyXG5AaW1wb3J0ICdjb21wb25lbnRzL2NvbmNpZXJnZXJpZSc7XHJcblxyXG4vLyBzcGVjaWZpcXVlIGNlIHF1ZSBub3VzIGZhaXNvbnNcclxuQGltcG9ydCAnY29tcG9uZW50cy9ub3VzLWZhaXNvbnMnOyIsIi5ib3gtY29uZmllei1ub3VzIHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG4gICZfX2xpc3Qge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6JHNjcmVlbi1zbS1tYXggKSB7XHJcbiAgICAgIEBpbmNsdWRlIG1hckgoNWVtKTtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzKSB7XHJcbiAgICAgIEBpbmNsdWRlIG1hckgoLTEuNXJlbSk7XHJcbiAgICB9XHJcbiAgICAuc2xpY2stYXJyb3cge1xyXG4gICAgICB0b3A6IDIuNnJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgLnBhZ2UtZGR2LWxpZ2h0ICYge1xyXG4gICAgZGlzcGxheTpub25lO1xyXG4gIH1cclxufVxyXG4uYm94LWNvbmZpZXotaXRlbSB7XHJcbiAgJGIgOiAmO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBAaW5jbHVkZSBwYWRIKDNyZW0pO1xyXG4gICZfX2luZGV4IHtcclxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFscGhhLWNvbG9yO1xyXG4gICAgY29sb3I6JHdoaXRlO1xyXG4gICAgd2lkdGg6NXJlbTtcclxuICAgIGhlaWdodDo1cmVtO1xyXG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICBib3JkZXItcmFkaXVzOjUwJTtcclxuICAgIGZvbnQtc2l6ZToycmVtO1xyXG4gICAgcGFkZGluZzoycHg7XHJcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XHJcbiAgICBmb250LXNpemU6Mi42cmVtO1xyXG4gICAgbGluZS1oZWlnaHQ6NC41cmVtO1xyXG4gICAgbWFyZ2luLWJvdHRvbTozcmVtO1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OlwiXCI7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgaGVpZ2h0OjNweDtcclxuICAgICAgd2lkdGg6Y2FsYygxMDAlICsgMnJlbSk7XHJcbiAgICAgIEBpbmNsdWRlIG1hckgoLTFyZW0pO1xyXG4gICAgICBsZWZ0OjA7XHJcbiAgICAgIHRvcDo1MCU7XHJcbiAgICAgIHotaW5kZXg6LTE7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2luZGV4LWlubmVyIHtcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgICBoZWlnaHQ6MTAwJTtcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICBib3JkZXItcmFkaXVzOjUwJTtcclxuICAgIGJvcmRlcjoxcHggZG90dGVkICR3aGl0ZTtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiRzY3JlZW4tc20gKSB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xyXG4gICAgICB0cmFuc2Zvcm06c2NhbGUoMik7XHJcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2Utb3V0O1xyXG4gICAgICAuaW5kZXgtMiAme1xyXG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuNXM7XHJcbiAgICAgIH1cclxuICAgICAgLmluZGV4LTMgJntcclxuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAxcztcclxuICAgICAgfVxyXG4gICAgICAuY29uZmllei1ub3VzLWlzLWFuaW1hdGVkICYge1xyXG4gICAgICAgIHRyYW5zZm9ybTpzY2FsZSgxKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuICB9XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC1zaXplOjEuOHJlbTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IC4ycmVtO1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6JHNjcmVlbi1zbSApIHtcclxuICAgICAgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoM3JlbSk7XHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2Utb3V0O1xyXG4gICAgICAuaW5kZXgtMSAme1xyXG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XHJcbiAgICAgIH1cclxuICAgICAgLmluZGV4LTIgJntcclxuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjZzO1xyXG4gICAgICB9XHJcbiAgICAgIC5pbmRleC0zICZ7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMS4xcztcclxuICAgICAgfVxyXG4gICAgICAuY29uZmllei1ub3VzLWlzLWFuaW1hdGVkICYge1xyXG4gICAgICAgIHRyYW5zZm9ybTp0cmFuc2xhdGVZKDApO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJl9fdGV4dCB7XHJcbiAgICBAaW5jbHVkZSBtYXJIKGF1dG8pO1xyXG4gICAgbWF4LXdpZHRoOjI4cmVtO1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6JHNjcmVlbi1zbSApIHtcclxuICAgICAgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoM3JlbSk7XHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2Utb3V0O1xyXG4gICAgICAuaW5kZXgtMSAme1xyXG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMnM7XHJcbiAgICAgIH1cclxuICAgICAgLmluZGV4LTIgJntcclxuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjdzO1xyXG4gICAgICB9XHJcbiAgICAgIC5pbmRleC0zICZ7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMS4ycztcclxuICAgICAgfVxyXG4gICAgICAuY29uZmllei1ub3VzLWlzLWFuaW1hdGVkICYge1xyXG4gICAgICAgIHRyYW5zZm9ybTp0cmFuc2xhdGVZKDApO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gIH1cclxuICAmOmZpcnN0LWNoaWxkIHtcclxuICAgIC5ib3gtY29uZmllei1pdGVtX19pbmRleCB7XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICB3aWR0aDo0OTlyZW07XHJcbiAgICAgICAgaGVpZ2h0OjA7XHJcbiAgICAgICAgYm9yZGVyLXRvcDoxcHggZG90dGVkICRibGFjaztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOjUwJTtcclxuICAgICAgICBsZWZ0OjUwJTtcclxuICAgICAgICB6LWluZGV4Oi0yO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICY6bGFzdC1jaGlsZCB7XHJcbiAgICAuYm94LWNvbmZpZXotaXRlbV9faW5kZXgge1xyXG4gICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDonJztcclxuICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgIHdpZHRoOjQ5OXJlbTtcclxuICAgICAgICBoZWlnaHQ6MDtcclxuICAgICAgICBib3JkZXItdG9wOjNweCBzb2xpZCAkd2hpdGU7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDo1MCU7XHJcbiAgICAgICAgbGVmdDo1MCU7XHJcbiAgICAgICAgei1pbmRleDotMjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIuYm94LW5ld3NsZXR0ZXIge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjokZ3JleVZlcnlEYXJrO1xyXG4gIGNvbG9yOiR3aGl0ZTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgZm9udC1zaXplOjIuN3JlbTtcclxuICAucGFnZS1kZHYtbGlnaHQgJiB7XHJcbiAgICBkaXNwbGF5Om5vbmU7XHJcbiAgfVxyXG4gIC5wYWdlLWRkdi1jb25maXJtYXRpb24gJiB7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gIH1cclxuICAmX19sYWJlbCB7XHJcbiAgICBjdXJzb3I6cG9pbnRlcjtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xyXG4gICAgICB0ZXh0LWFsaWduOmxlZnQ7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2lucHV0IHtcclxuICAgIEBpbmNsdWRlIG1hckgoMXJlbSk7XHJcbiAgICBAaW5jbHVkZSBwYWRIKDAuNXJlbSk7XHJcbiAgICBjb2xvcjokcGlua0xpZ2h0O1xyXG4gICAgYm9yZGVyOm5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgbWluLXdpZHRoOjMwcmVtO1xyXG4gICAgdGV4dC1hbGlnbjpsZWZ0O1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1vdXQ7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgICAgQGluY2x1ZGUgbWFyVigwLjVyZW0pO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICB0ZXh0LWFsaWduOmxlZnQ7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OjA7XHJcbiAgICAgIHBhZGRpbmctbGVmdDowO1xyXG4gICAgICB3aWR0aDoxMDAlO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgcGxhY2Vob2xkZXJ7XHJcbiAgICAgIGNvbG9yOiRwaW5rTGlnaHQ7XHJcbiAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgICAgICB0ZXh0LWFsaWduOmxlZnQ7XHJcbiAgICAgIH1cclxuICAgIH07XHJcbiAgICAmOmZvY3VzIHtcclxuXHJcbiAgICAgIG91dGxpbmU6bm9uZTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKCRwaW5rTGlnaHQsLjA1KTtcclxuICAgICAgQGluY2x1ZGUgcGxhY2Vob2xkZXIge1xyXG4gICAgICAgIGNvbG9yOnJnYmEoJHBpbmtMaWdodCwuMilcclxuICAgICAgfTtcclxuICAgIH1cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoJHBpbmtMaWdodCwuMDUpO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19zdWJtaXQge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICBwYWRkaW5nOjA7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgdGV4dC1hbGlnbjpsZWZ0O1xyXG4gICAgfVxyXG4gIH1cclxufSIsIi5ib3gtc3VyLWNhcnRlIHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG59IiwiLmJveC1pbnRybyB7XHJcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcclxuICAmX190aXRsZSB7XHJcbiAgICBmb250LXNpemU6Mi40cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLjFyZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOjNyZW07XHJcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBmb250LXNpemU6cmVtKDE4KTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fY29sLXZpc3VhbCB7XHJcbiAgICBmbGV4LXNocmluazogMDtcclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDNyZW07XHJcbiAgICAgIG1heC13aWR0aDogMTByZW07XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xyXG4gICAgICBtYXgtd2lkdGg6IDE3cmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX192aXN1YWwge1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3RleHQge1xyXG4gICAgbGluZS1oZWlnaHQ6MS41O1xyXG4gIH1cclxuICAmX19hY3Rpb25zIHtcclxuICAgIG1hcmdpbi10b3A6MnJlbTtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XHJcbiAgICAgIGRpc3BsYXk6ZmxleDtcclxuICAgICAgYWxpZ24taXRlbXMgOiBjZW50ZXI7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fY29udGFjdCB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX190ZWwge1xyXG4gICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgZm9udC1zaXplOiAycmVtO1xyXG4gICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2J0biB7XHJcbiAgICAmICsgJiB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0IDogMXJlbTtcclxuICAgIH1cclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgfVxyXG59XHJcblxyXG4jYm94LWludHJvIC5ib3gtaW50cm9fX2NvbC1jb250ZW50IC5qcy1yZWFkbW9yZS0tZXhwYW5kZWQgZGl2LmpzLXJlYWRtb3JlLWNvbnRlbnQsIFxyXG4jYm94LWluZm9zLXBheXMgLmpzLXJlYWRtb3JlLS1leHBhbmRlZCBkaXYuanMtcmVhZG1vcmUtY29udGVudHtcclxuXHRkaXNwbGF5OmlubGluZSFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5wYWdlLWd1aWRlLXBheXMgLmJveC1pbmZvcy1wYXlzX190ZXh0IGEsIFxyXG4ucGFnZS1lbnZpZS1wYXlzIC5ib3gtaW50cm9fX3RleHQgYSwgXHJcbi5wYWdlLXBheXMtcmVnaW9ucyAuYm94LWludHJvX190ZXh0IGEsXHJcbi5wYWdlLXBheXMtdGFnIC5ib3gtaW50cm9fX3RleHQgYSB7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbn0iLCIuYm94LW1pbmktaW50cm8ge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICZfX3RleHQge1xyXG4gICAgQGluY2x1ZGUgbWFySDtcclxuICAgIG1heC13aWR0aDo4MHJlbTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgICA+IHAgKyBwIHtcclxuICAgICAgICBtYXJnaW4tdG9wOjJyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5oZWFkZXItYm94ICsgJl9fdGV4dCB7XHJcbiAgICBtYXJnaW4tdG9wOiAzcmVtO1xyXG4gIH1cclxufVxyXG4iLCIuYm94LWNhcm5ldC12b3lhZ2Uge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjokZ3JleUxpZ2h0O1xyXG4gICZfX2xpc3Qge1xyXG4gICAgQGluY2x1ZGUgbWFySCgtMS43cmVtKTtcclxuICAgIGRpc3BsYXk6bm9uZTtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKXtcclxuICAgICAgQGluY2x1ZGUgbWFySCg2cmVtKTtcclxuICAgIH1cclxuICB9XHJcbiAgLnNsaWNrLWFycm93IHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKXtcclxuICAgICAgdG9wOiAyNSU7XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCl7XHJcbiAgICAgIHRvcDogMzAlO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGcpe1xyXG4gICAgICB0b3A6IDM1JTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLmJveC1jYXJuZXQtdm95YWdlLWl0ZW0ge1xyXG4gIEBpbmNsdWRlIHBhZEgoM3JlbSk7XHJcbiAgJl9fdmlzdWFsIHtcclxuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcclxuICB9XHJcbiAgJl9fY2hhcG8ge1xyXG4gICAgZm9udC1zaXplOiAxLjNyZW07XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6XCJcIjtcclxuICAgICAgd2lkdGg6OHB4O1xyXG4gICAgICBoZWlnaHQ6MXB4O1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRiYXNlLWNvbG9yO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGxlZnQ6MDtcclxuICAgICAgdG9wOjdweDtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC1zaXplOjJyZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gIH1cclxuICAmX190ZXh0IHtcclxuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcclxuICB9XHJcbn0iLCIuYm94LW1vbmRlLXNlcnZpY2Uge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgLnNsaWNrLWRvdHMge1xyXG4gICAgYm90dG9tOjJyZW07XHJcbiAgfVxyXG4gIC5oZWFkZXItYm94IHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKXtcclxuICAgICAgZGlzcGxheTpub25lXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5ib3gtbW9uZGUtc2VydmljZS1pdGVtIHtcclxuICBAaW5jbHVkZSB6b29tVmlzdWFsT25Ib3ZlcjtcclxuICBkaXNwbGF5OmJsb2NrO1xyXG4gIGJhY2tncm91bmQtY29sb3I6JGdyZXk7XHJcbiAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgY29sb3I6JHdoaXRlO1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKXtcclxuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcclxuICB9XHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OlwiXCI7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgcGFkZGluZy1ib3R0b206MTAwJTtcclxuICB9XHJcbiAgJi5kb3VibGUtd2lkdGgge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pe1xyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTpjYWxjKDUwJSAtIC41cmVtKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLmRvdWJsZS1oZWlnaHQge1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOmNhbGMoMjAwJSArIDFyZW0pO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLnBpbmsge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjokcGlua0xpZ2h0O1xyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuM3MgZWFzZS1vdXQ7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JleUJsdWU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuZ3JleSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmV5Qmx1ZTtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjNzIGVhc2Utb3V0O1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHBpbmtMaWdodDtcclxuICAgIH1cclxuICB9XHJcbiAgJi50eXBlLTEge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjokcGlua0xpZ2h0O1xyXG4gICAgY29sb3I6JHBpbmtMaWdodDtcclxuICB9XHJcbiAgJi50eXBlLTIge1xyXG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgfVxyXG4gICYudHlwZS0zIHtcclxuICB9XHJcbiAgJl9faW5uZXIge1xyXG4gICAgXHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICAudHlwZS0xICYge1xyXG4gICAgICBwYWRkaW5nOjFyZW07XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHBpbmtMaWdodDtcclxuICAgIH1cclxuICAgIC50eXBlLTIgJiB7XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OlwiXCI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XHJcbiAgICAgICAgb3BhY2l0eTouMTU7XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICBoZWlnaHQ6MTAwJTtcclxuICAgICAgICB0b3A6MDtcclxuICAgICAgICBsZWZ0OjA7XHJcbiAgICAgICAgei1pbmRleDoxO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAudHlwZS0zICYge1xyXG4gICAgICBwYWRkaW5nOjJyZW07XHJcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpe1xyXG4gICAgICAgIHBhZGRpbmc6MS41cmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2NvbnRlbnQge1xyXG4gICAgLnR5cGUtMSAmIHtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcclxuICAgICAgcGFkZGluZzoxcmVtIDEuNHJlbTtcclxuICAgIH1cclxuICAgIC50eXBlLTIgJiB7XHJcbiAgICAgIEBpbmNsdWRlIHBhZEgoMXJlbSk7XHJcbiAgICAgIHBvc2l0aW9uIDogYWJzb2x1dGU7XHJcbiAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgIHotaW5kZXg6MTtcclxuICAgICAgdG9wOmNhbGMoNTAlIC0gMnJlbSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3RpdGxlIHtcclxuICAgIC50eXBlLTEgJiB7XHJcbiAgICAgIGZvbnQtc2l6ZTozLjhyZW07XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpe1xyXG4gICAgICAgIGZvbnQtc2l6ZToyLjhyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC50eXBlLTIgJiB7XHJcbiAgICAgIGZvbnQtc2l6ZTozcmVtO1xyXG4gICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCl7XHJcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xyXG4gICAgICB9XHJcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCl7XHJcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAudHlwZS0zICYge1xyXG4gICAgICBmb250LXNpemU6Mi40cmVtO1xyXG4gICAgICBsaW5lLWhlaWdodDogMS4xO1xyXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KXtcclxuICAgICAgICBmb250LXNpemU6MnJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmX192aXN1YWwge1xyXG4gICAgQGluY2x1ZGUgb2JqZWN0LWZpdChjb3Zlcik7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgfVxyXG4gICZfX3RleHQge1xyXG4gICAgLnR5cGUtMyAmIHtcclxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCl7XHJcbiAgICAgICAgZm9udC1zaXplOjEuMXJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnR5cGUtMiAme1xyXG5cclxuICAgIH1cclxuICB9XHJcbiAgJl9fbGluayB7XHJcbiAgICBmb250LXNpemU6MS40cmVtO1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCl7XHJcbiAgICAgIGZvbnQtc2l6ZToxLjJyZW07XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5ib3gtbW9uZGUtZW52aWVzIHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG4gIGJhY2tncm91bmQtY29sb3I6JGdyZXlMaWdodDtcclxuICAmX19saXN0IHtcclxuICAgIEBpbmNsdWRlIG1hckgoLTEuN3JlbSk7XHJcbiAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSl7XHJcbiAgICAgIEBpbmNsdWRlIG1hckgoNnJlbSk7XHJcbiAgICB9XHJcbiAgICAuc2xpY2stYXJyb3cge1xyXG4gICAgICB0b3A6Y2FsYyg1MCUgLSAyMHB4KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5ib3gtbW9uZGUtZW52aWUge1xyXG4gIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gIEBpbmNsdWRlIHBhZEgoMXJlbSk7XHJcbiAgJl9fdGV4dCB7XHJcbiAgICBmb250LXNpemU6MS41cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIG1hcmdpbi10b3A6MXJlbTtcclxuICB9XHJcbiAgJl9fbGluayB7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59IiwiLmJveC1tb25kZS1pbWFnaW5hdGlvbiB7XHJcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcclxuICBwYWRkaW5nLWJvdHRvbTowO1xyXG59XHJcbi5ib3gtbW9uZGUtaW1hZ2luYXRpb24taXRlbSB7XHJcbiAgQGluY2x1ZGUgem9vbVZpc3VhbE9uSG92ZXI7XHJcbiAgQGluY2x1ZGUgbWFySChhdXRvKTtcclxuICBtYXgtd2lkdGg6cmVtKDQ1MCk7XHJcbiAgbWFyZ2luLWJvdHRvbTo0cmVtO1xyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB9XHJcbiAgJl9fbGluayB7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gIH1cclxuICAmX192aXN1YWwtY29udGFpbmVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICBtYXJnaW4tYm90dG9tOjFyZW07XHJcbiAgICAmOmFmdGVye1xyXG4gICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgcGFkZGluZy1ib3R0b206IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3Zpc3VhbC13cmFwcGVyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG4gICZfX3Zpc3VhbCB7XHJcbiAgICBAaW5jbHVkZSBvYmplY3QtZml0KGNvdmVyKTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICB9XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC1zaXplOjJyZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gIH1cclxuICAmX190ZXh0IHtcclxuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcclxuICB9XHJcbiAgJl9fY29uZGl0aW9ucyB7XHJcbiAgICBjb2xvcjokYWxwaGEtY29sb3I7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLjFyZW07XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIH1cclxufSIsIi5ib3gtbm91dmVhdXgtdm95YWdlcyB7XHJcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcclxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6JGdyZXlMaWdodDtcclxuICB9XHJcbiAgLmNvbnRhaW5lciB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICB3aWR0aDoxMDAlIWltcG9ydGFudDtcclxuICAgICAgcGFkZGluZzowIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fbGlzdCB7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgQGluY2x1ZGUgbWFySCgtMS43cmVtKTtcclxuICAgIH1cclxuICB9XHJcbiAgLnNsaWNrLWFycm93IHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIGhlaWdodDogNnJlbTtcclxuICAgICAgd2lkdGg6IDZyZW07XHJcbiAgICAgIHotaW5kZXg6MTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNHJlbTtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwLjJyZW07IC8vIGzDqWdlciBkw6ljYWxhZ2UgcG91ciBjZW50cmFnZSB2ZXJ0aWNhbCBwcsOpY2lzXHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLnNsaWNrLXByZXYge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgbGVmdDogY2FsYygzMy4zMyUpO1xyXG4gICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5zbGljay1uZXh0IHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIHJpZ2h0OiBjYWxjKDMzLjMzJSk7XHJcbiAgICAgIHRyYW5zZm9ybTp0cmFuc2xhdGUoNTAlLC01MCUpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcblxyXG4uYm94LW5vdXZlYXV4LXZveWFnZXMtaXRlbSB7XHJcbiAgJHRoaXMgOiAmO1xyXG4gICRyYXRpbyA6IHBlcmNlbnRhZ2UoMTc3IC8gMjk0KTtcclxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcclxuICB9XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gIH1cclxuICAmX19saW5rIHtcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDpcIlwiO1xyXG4gICAgICAgIG9wYWNpdHk6MC41O1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHotaW5kZXg6MTtcclxuICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgICAgIHRvcDo3NSU7XHJcbiAgICAgICAgbGVmdDowO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3M7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJl9fdmlzdWFsLWNvbnRhaW5lciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xyXG4gICAgfVxyXG4gICAgJjphZnRlcntcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiRyYXRpbztcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdmlzdWFsLXdyYXBwZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB9XHJcbiAgJl9fdmlzdWFsIHtcclxuICAgIEBpbmNsdWRlIG9iamVjdC1maXQoY292ZXIpO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gIH1cclxuICAmX19jb250ZW50IHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBAaW5jbHVkZSBtYXJIKGF1dG8pO1xyXG4gICAgICBAaW5jbHVkZSBwYWRIKDEuN3JlbSk7XHJcbiAgICAgIG1heC13aWR0aDpyZW0oNDUwKTtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIG9wYWNpdHk6MDtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgIHRvcDo3NyU7XHJcbiAgICAgIGxlZnQ6MDtcclxuICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcztcclxuICAgICAgY29sb3I6JHdoaXRlO1xyXG4gICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgICAgcGFkZGluZzoxLjUlIDRyZW07XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19jaGFwbyB7XHJcbiAgICBjb2xvcjokYWxwaGEtY29sb3I7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLjFyZW07XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIG1hcmdpbi1ib3R0b206MC41cmVtO1xyXG4gICAgZm9udC1zaXplOmluaGVyaXQ7XHJcbiAgICBtYXgtaGVpZ2h0OiAxLjJlbTtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIEBpbmNsdWRlIG1hckgoYXV0byk7XHJcbiAgICAgIG1heC13aWR0aDozMHJlbTtcclxuICAgICAgY29sb3I6aW5oZXJpdDtcclxuICAgICAgZm9udC1zaXplOjEuMXJlbTtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XHJcbiAgICAgIGZvbnQtc2l6ZToxLjJyZW07XHJcbiAgICB9XHJcbiAgICBzcGFuIHtcclxuICAgICAgZm9udC1zaXplOmluaGVyaXQhaW1wb3J0YW50O1xyXG4gICAgICBmb250LWZhbWlseTppbmhlcml0IWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC1zaXplOjJyZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgbWF4LWhlaWdodDoxLjRlbTtcclxuICAgICAgQGluY2x1ZGUgbWFySChhdXRvKTtcclxuICAgICAgbWF4LXdpZHRoOjMwcmVtO1xyXG4gICAgICBmb250LXNpemU6MS41cmVtO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcclxuICAgICAgZm9udC1zaXplOjJyZW07XHJcbiAgICB9XHJcbiAgICBzcGFuIHtcclxuICAgICAgZm9udC1zaXplOmluaGVyaXQhaW1wb3J0YW50O1xyXG4gICAgICBmb250LWZhbWlseTppbmhlcml0IWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdGV4dCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XHJcbiAgICBtYXgtaGVpZ2h0OiAzLjhlbTtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIEBpbmNsdWRlIG1hckgoYXV0byk7XHJcbiAgICAgIG1heC13aWR0aDozMHJlbTtcclxuICAgICAgb3BhY2l0eTowO1xyXG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcztcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIG1heC1oZWlnaHQ6aW5pdGlhbDtcclxuICAgIH1cclxuICAgIHNwYW4ge1xyXG4gICAgICBmb250LXNpemU6aW5oZXJpdCFpbXBvcnRhbnQ7XHJcbiAgICAgIGZvbnQtZmFtaWx5OmluaGVyaXQhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuICAmX190ZXh0LWxpbmsge1xyXG4gICAgIG1hcmdpbi10b3A6NHJlbTtcclxuXHQgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgQGluY2x1ZGUgbWFySChhdXRvKTtcclxuICAgICAgbWF4LXdpZHRoOjMwcmVtO1xyXG4gICAgICBvcGFjaXR5OjA7XHJcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19jb25kaXRpb25zIHtcclxuICAgIGNvbG9yOiRhbHBoYS1jb2xvcjtcclxuICAgIGxldHRlci1zcGFjaW5nOiAuMXJlbTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgfVxyXG4gICYuc2xpY2stYWN0aXZlIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgICN7JHRoaXN9X19jb250ZW50IHtcclxuICAgICAgICBvcGFjaXR5OjE7XHJcbiAgICAgIH1cclxuICAgICAgI3skdGhpc31fX2xpbmsge1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICAjeyR0aGlzfV9fY29udGVudCB7XHJcbiAgICAgICAgICB0b3A6MTUlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAjeyR0aGlzfV9fbGluayB7XHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIHRvcDowO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAjeyR0aGlzfV9fdGV4dCxcclxuICAgICAgICAjeyR0aGlzfV9fdGV4dC1saW5rIHtcclxuICAgICAgICAgIG9wYWNpdHk6MTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLmJveC1hY3R1YWxpdGUge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcblxyXG4gICZfX2xpbmsge1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB9XHJcbiAgJl9fdmlzdWFsIHtcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgfVxyXG4gICZfX2lubmVyIHtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDpcIlwiO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcclxuICAgICAgb3BhY2l0eTouMTU7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICBoZWlnaHQ6MTAwJTtcclxuICAgICAgdG9wOjA7XHJcbiAgICAgIGxlZnQ6MDtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fY29udGVudCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBwYWRkaW5nOjNyZW07XHJcbiAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgfVxyXG4gICZfX3RpdGxlIHtcclxuICAgIGZvbnQtc2l6ZToycmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgbGluZS1oZWlnaHQ6MS4yO1xyXG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDM3NXB4KSB7XHJcbiAgICAgIGZvbnQtc2l6ZToyLjVyZW07XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14cykge1xyXG4gICAgICBmb250LXNpemU6Mi41cmVtO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcclxuICAgICAgZm9udC1zaXplOjMuNnJlbTtcclxuICAgICAgd2lkdGg6IDM2cmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19zdWJ0aXRsZSB7XHJcbiAgICBmb250LXNpemU6MnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OjcwMDtcclxuICAgIGxpbmUtaGVpZ2h0OjEuMjtcclxuICAgIGNvbG9yOiR3aGl0ZTtcclxuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAzNzVweCkge1xyXG4gICAgICBmb250LXNpemU6Mi41cmVtO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHMpIHtcclxuICAgICAgZm9udC1zaXplOjIuNXJlbTtcclxuICAgICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcclxuICAgICAgZm9udC1zaXplOjMuNnJlbTtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuICAgICAgd2lkdGg6IDM2cmVtO1xyXG4gICAgfVxyXG5cclxuICB9XHJcbiAgJl9fdGV4dCB7XHJcbiAgICBmb250LXNpemU6MS4ycmVtO1xyXG4gICAgd2lkdGg6MjVyZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgbWF4LXdpZHRoOjYwJTtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAzNzVweCkge1xyXG4gICAgICBmb250LXNpemU6MS4zcmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19idG4ge1xyXG4gICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcclxuICAgICAgQGluY2x1ZGUgZ2VuZXJpY0J1dHRvbjtcclxuICAgICAgYm9yZGVyOjFweCBzb2xpZCAkYmFzZS1jb2xvcjtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIGZvbnQtc2l6ZToxLjRyZW1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLmJveC1wbHVzLWxvaW4ge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjokZ3JleUxpZ2h0O1xyXG59XHJcblxyXG4uYm94LXBsdXMtbG9pbi1pdGVtIHtcclxuICAkcmF0aW8gOiBwZXJjZW50YWdlKDM1MCAvIDQ1MCk7XHJcbiAgJHRoaXM6ICY7XHJcbiAgQGluY2x1ZGUgem9vbVZpc3VhbE9uSG92ZXI7XHJcbiAgZGlzcGxheTpibG9jaztcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiRncmV5O1xyXG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gIG1hcmdpbi1ib3R0b206cmVtKDMwKTtcclxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpe1xyXG4gICAgbWFyZ2luLWJvdHRvbTpyZW0oMTUpO1xyXG4gIH1cclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6XCJcIjtcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTokcmF0aW87XHJcbiAgfVxyXG4gICYuZG91YmxlLXdpZHRoIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKXtcclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206Y2FsYygoI3skcmF0aW8gLyAyfSkgLSAxLjRyZW0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuZG91YmxlLWhlaWdodCB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSl7XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOmNhbGMoKCN7JHJhdGlvICogMn0pICsgMzBweCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJjpob3ZlciB7XHJcbiAgICAjeyR0aGlzfV9fdGl0bGUge1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9faW5uZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OlwiXCI7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xyXG4gICAgICBvcGFjaXR5Oi4xNTtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgICB0b3A6MDtcclxuICAgICAgbGVmdDowO1xyXG4gICAgICB6LWluZGV4OjE7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3Zpc3VhbCB7XHJcbiAgICBAaW5jbHVkZSBvYmplY3QtZml0KGNvdmVyKTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICB9XHJcbiAgJl9fY29udGVudCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBib3R0b206MDtcclxuICAgIGxlZnQ6MDtcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgICBwYWRkaW5nOjJyZW07XHJcbiAgICB6LWluZGV4OjE7XHJcbiAgfVxyXG4gICZfX3J1YnJpcXVlIHtcclxuICAgIGZvbnQtc2l6ZToxLjRyZW07XHJcbiAgICBmb250LXdlaWdodDo1MDA7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcclxuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgcGFkZGluZzogMC44cmVtIDEuMnJlbTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgfVxyXG4gICZfX3RpdGxlIHtcclxuICAgIGZvbnQtc2l6ZToyLjhyZW07XHJcbiAgICBtYXgtaGVpZ2h0OnJlbSg1MCk7XHJcbiAgICBsaW5lLWhlaWdodDoxO1xyXG4gICAgZm9udC13ZWlnaHQ6Ym9sZDtcclxuICAgIGNvbG9yOiR3aGl0ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG59XHJcbmgzLmJveC1wbHVzLWxvaW4taXRlbSB7XHJcbiAgJl9fdGl0bGUge1xyXG5cdG1hcmdpbi10b3A6MXJlbTtcclxuICB9XHJcbn1cclxuXHJcbi5ib3gtcGx1cy1sb2luIC5qcy1jYXJvdXNlbC1icm9jaHVyZSAuYm94LWJyb2NodXJlLWl0ZW0ge3BhZGRpbmc6MDt9XHJcbi5ib3gtcGx1cy1sb2luIC5qcy1jYXJvdXNlbC1icm9jaHVyZSAuYm94LXBsdXMtbG9pbi1pdGVtX19jb250ZW50IHtib3R0b206IDIwcHg7fVxyXG4uYm94LXBsdXMtbG9pbiAuanMtY2Fyb3VzZWwtYnJvY2h1cmUgdWwuc2xpY2stZG90cyB7Ym90dG9tOiA0MHB4O31cclxuLmJveC1wbHVzLWxvaW4gLmpzLWNhcm91c2VsLWJyb2NodXJlIHVsLnNsaWNrLWRvdHMgbGkge21hcmdpbjogMCAycHg7fVxyXG5AbWVkaWEgKG1pbi13aWR0aDogMTQ0MHB4KXtcclxuLmJveC1wbHVzLWxvaW4gLmpzLWNhcm91c2VsLWJyb2NodXJlIGEuYm94LXBsdXMtbG9pbi1pdGVtIHtoZWlnaHQ6IDYyMnB4O31cclxufSIsIi5ib3gtc2VydmljZXMge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC1zaXplOjIuNHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OjcwMDtcclxuICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IC4xcmVtO1xyXG4gICAgbWFyZ2luLWJvdHRvbTozcmVtO1xyXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgZm9udC1zaXplOnJlbSgxOCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2xpc3Qge1xyXG4gICAgZGlzcGxheTpub25lO1xyXG4gICAgQGluY2x1ZGUgbWFySCg2cmVtKTtcclxuICB9XHJcbiAgLnNsaWNrLWFycm93IHtcclxuICAgIHRvcDogMjUlO1xyXG4gIH1cclxufVxyXG5cclxuLmJveC1zZXJ2aWNlIHtcclxuICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAmX19pY29uIHtcclxuICAgIGNvbG9yOiRhbHBoYS1jb2xvcjtcclxuICAgIGZvbnQtc2l6ZTo3cmVtO1xyXG4gICAgaGVpZ2h0OjEwcmVtO1xyXG4gICAgQGluY2x1ZGUgY2VudGVySWNvbjtcclxuICAgIEBpbmNsdWRlIGljb25Qb3A7XHJcbiAgICAmLmljb24tbWlsZXN7XHJcbiAgICAgIGZvbnQtc2l6ZTo4LjVyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3RleHQge1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGZvbnQtc2l6ZToxLjRyZW07XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLjJyZW07XHJcbiAgICBAaW5jbHVkZSBwYWRIKDJyZW0pO1xyXG4gIH1cclxufSIsIi5ib3gtaWRlZXMtdm95YWdlcyB7XHJcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcclxuICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgLmJveC1pbnRybyArICYge1xyXG4gICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLmJveC1pZGVlIHtcclxuICAkcmF0aW8gOiBwZXJjZW50YWdlKDQ5MCAvIDczNik7XHJcbiAgbWFyZ2luLWJvdHRvbTo0cmVtO1xyXG4gICRiOiAmO1xyXG4gICYuaW50b01hcCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOjA7XHJcbiAgICBtYXgtd2lkdGg6IDI1cmVtO1xyXG4gICAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5O1xyXG4gICAgdGV4dC1hbGlnbjpsZWZ0O1xyXG4gIH1cclxuICAmX192aXN1YWwtY29udGFpbmVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcclxuICAgICY6YWZ0ZXJ7XHJcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTokcmF0aW87XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3Zpc3VhbC13cmFwcGVyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG4gICZfX3Zpc3VhbCB7XHJcbiAgICBAaW5jbHVkZSBvYmplY3QtZml0KGNvdmVyKTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcclxuICAgIC5pbnRvTWFwICYge1xyXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2NoYXBvIHtcclxuICAgIGNvbG9yOiRhbHBoYS1jb2xvcjtcclxuICAgIGxldHRlci1zcGFjaW5nOiAuMXJlbTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xyXG4gICAgZm9udC1zaXplOmluaGVyaXQ7XHJcbiAgfVxyXG4gICZfX3RpdGxlIHtcclxuICAgIGZvbnQtc2l6ZToycmVtO1xyXG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIGxpbmUtaGVpZ2h0OjEuMjtcclxuICAgICN7JGJ9X19saW5rOmhvdmVyICYge1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX190ZXh0IHtcclxuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcclxuICB9XHJcbiAgJl9fY29uZGl0aW9ucyB7XHJcbiAgICBjb2xvcjokYWxwaGEtY29sb3I7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLjFyZW07XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcclxuICAgIGJvZHkucGFnZS1wYXlzICNib3gtaWRlZXMtdm95YWdlcyAuanMtY2Fyb3VzZWwtaWRlZXMtdm95YWdlcyAuY29sLWxnLTgge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDUzMHB4O1xyXG4gICAgfVxyXG59IiwiLmJveC1yZWdpb25zIHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG4gIGJhY2tncm91bmQtY29sb3I6JGdyZXlMaWdodDtcclxuICAmX19yb3cge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgZGlzcGxheTpmbGV4O1xyXG4gICAgfVxyXG4gICAgJiA+ICoge1xyXG4gICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgZmxleDogMSAxIGF1dG87XHJcbiAgICAgIG92ZXJmbG93OmhpZGRlbjsgLy8gSUUxMSBidWdcclxuICAgICAgZGlzcGxheTpmbGV4O1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX192aXN1YWwge1xyXG4gICAgbWF4LWhlaWdodDo0NTBweDtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2xpc3Qge1xyXG4gICAgZm9udC1zaXplOjJyZW07XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XHJcbiAgICBcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjb2x1bW4tY291bnQ6IDI7XHJcbiAgICAgIG1heC13aWR0aDogNDByZW07XHJcbiAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgZm9udC1zaXplOnJlbSgxNyk7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2l0ZW0ge1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAycmVtO1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDpcIlwiO1xyXG4gICAgICAgIHdpZHRoOiAwLjdyZW07XHJcbiAgICAgICAgaGVpZ2h0OiAwLjdyZW07XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhc2UtY29sb3I7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMS4ycmVtO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICA+IGEge1xyXG4gICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGljb24oZmxlY2hlLW5hdik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbG9yOiRhbHBoYS1jb2xvcjtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIGxlZnQ6IC0ycmVtO1xyXG4gICAgICAgICAgZm9udC1zaXplOiAycmVtO1xyXG4gICAgICAgICAgdG9wOiAwLjNyZW07XHJcbiAgICAgICAgICBjb2xvcjokYmFzZS1jb2xvcjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLmJveC1lbnZpZXMge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIC5zbGljay1hcnJvdyB7XHJcbiAgICB0b3A6IGNhbGMoNTAlIC0gM3JlbSk7XHJcbiAgfVxyXG4gIC5zbGljay1zbGlkZXIge1xyXG4gICAgQGluY2x1ZGUgbWFySCg2cmVtKTtcclxuICB9XHJcbiAgJl9fYnV0dG9uIHtcclxuICAgIEBpbmNsdWRlIGljb24oZmxlY2hlLW5hdiwgYWZ0ZXIpO1xyXG4gICAgQGluY2x1ZGUgY2VudGVySWNvbjtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICBtYXJnaW4tbGVmdDowLjVyZW07XHJcbiAgICAgIG1hcmdpbi10b3A6IC0wLjJyZW07XHJcbiAgICAgIHRyYW5zZm9ybTpyb3RhdGUoOTBkZWcpO1xyXG4gICAgICBmb250LXNpemU6IDEuMnJlbTtcclxuICAgICAgLmpzLXJlYWRtb3JlLS1leHBhbmRlZCAmIHtcclxuICAgICAgICB0cmFuc2Zvcm06cm90YXRlKC05MGRlZyk7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6MXJlbTtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtMC4zcmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5ib3gtZW52aWUge1xyXG4gICR0aGlzOiAmO1xyXG4gIG1hcmdpbi1ib3R0b206NHJlbTtcclxuICAmX190ZXh0IHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGZvbnQtc2l6ZToxLjhyZW07XHJcbiAgICBoZWlnaHQ6IDQuNnJlbTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBmb250LXdlaWdodDo0MDA7XHJcbiAgICBtYXJnaW4tdG9wOjFyZW07XHJcbiAgfVxyXG4gICZfX2xpbmsge1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgICY6aG92ZXIgI3skdGhpc31fX3RleHR7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX192aXN1YWwtY29udGFpbmVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICBtYXJnaW4tYm90dG9tOjFyZW07XHJcbiAgICAmOmFmdGVye1xyXG4gICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgcGFkZGluZy1ib3R0b206IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3Zpc3VhbC13cmFwcGVyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG4gICZfX3Zpc3VhbCB7XHJcbiAgICBAaW5jbHVkZSBvYmplY3QtZml0KGNvdmVyKTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICB9XHJcbn1cclxuIiwiLmJveC10ZW1vaWduYWdlIHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG4gIGJhY2tncm91bmQtY29sb3I6JGdyZXlMaWdodDtcclxuICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAmX190aXRsZSB7XHJcbiAgICBjb2xvcjokYWxwaGEtY29sb3I7XHJcbiAgICBtYXJnaW4tYm90dG9tOjIuNXJlbTtcclxuICB9XHJcbiAgJl9fc3VidGl0bGUge1xyXG4gIFxyXG4gIH1cclxuICAmX19ub3RlIHtcclxuICAgIG1hcmdpbi1ib3R0b206MS41cmVtO1xyXG4gICAgJG9wYWNpdHktc3Rhci1vZmYgOiAwLjE1O1xyXG4gICAgLmljb24ge1xyXG4gICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6MTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmljb24tc3Rhci1oYWxmIHtcclxuICAgICAgQGluY2x1ZGUgaWNvbihzdGFyLGFmdGVyKTtcclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgY29sb3I6IGN1cnJlbnRDb2xvcjtcclxuICAgICAgICBvcGFjaXR5OiAkb3BhY2l0eS1zdGFyLW9mZjtcclxuICAgICAgICBsZWZ0OjA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5pY29uLXN0YXItb2ZmIHtcclxuICAgICAgQGluY2x1ZGUgaWNvbihzdGFyKTtcclxuICAgICAgb3BhY2l0eTogJG9wYWNpdHktc3Rhci1vZmY7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3RleHQge1xyXG4gICAgZm9udC1zaXplOjIuNXJlbTtcclxuICAgIGxpbmUtaGVpZ2h0OjEuNjtcclxuICAgIGZvbnQtc3R5bGU6aXRhbGljO1xyXG4gICAgbWFyZ2luOjAgYXV0bztcclxuICAgIG1heC13aWR0aDo3NXJlbTtcclxuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIGZvbnQtc2l6ZTpyZW0oMTYpO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19saW5rIHtcclxuICAgIGZvbnQtc2l6ZToxLjVyZW07XHJcbiAgICBmb250LXN0eWxlOm5vcm1hbDtcclxuICB9XHJcbiAgJl9fZG90cyB7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6XCJcXDIwMjZcIjtcclxuICAgIH1cclxuICAgIC5qcy1yZWFkbW9yZS0tZXhwYW5kZWQgJi5oaWRhYmxlIHtcclxuICAgICAgZGlzcGxheTpub25lO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19sZHF1byB7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6XCJcXDIwMUNcIjtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fcmRxdW8ge1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OlwiXFwyMDFEXCI7XHJcbiAgICB9XHJcbiAgICAuanMtcmVhZG1vcmUtLWV4cGFuZGVkICYuaGlkYWJsZSB7XHJcbiAgICAgIGRpc3BsYXk6bm9uZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vcDpiZWZvcmUgeyBjb250ZW50OlwiXFwyMDFFXCI7IiwiLmJveC1ndWlkZSB7XHJcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcclxuICAmX19hY3Rpb25zIHtcclxuICB9XHJcbiAgJl9fYnRuLXdyYXBwZXIge1xyXG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cykge1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgfVxyXG4gICAgJiArICYge1xyXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14cykge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OjFyZW07XHJcbiAgICAgIH1cclxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDo1cmVtO1xyXG4gICAgICB9XHJcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzKSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDoycmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5ib3gtbWlldXgtcHJlcGFyZXIge1xyXG4gIEBpbmNsdWRlIHBhZFYoMnJlbSk7XHJcbiAgYm9yZGVyLXRvcDoxcHggc29saWQgJGJhc2UtY29sb3I7XHJcbiAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGJhc2UtY29sb3I7XHJcbiAgbWFyZ2luLXRvcDoycmVtO1xyXG4gICZfX2J1dHRvbiB7XHJcbiAgICBAaW5jbHVkZSBpY29uKGZsZWNoZS1uYXYpO1xyXG4gICAgZm9udC1zaXplOjJyZW07XHJcbiAgICBmb250LXdlaWdodDo3MDA7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XHJcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgfVxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcclxuICAgICAgZm9udC1zaXplOjEuNXJlbTtcclxuICAgICAgbWFyZ2luLWxlZnQ6IC0xLjVyZW07XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcclxuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycztcclxuICAgICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgICBmb250LXNpemU6cmVtKDEwKTtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xLjJyZW07XHJcbiAgICAgIH1cclxuICAgICAgLmpzLXJlYWRtb3JlLS1leHBhbmRlZCAmIHtcclxuICAgICAgICB0cmFuc2Zvcm06cm90YXRlKDkwZGVnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmX19jb250ZW50IHtcclxuICAgIEBpbmNsdWRlIHBhZFYoMnJlbSk7XHJcbiAgfVxyXG4gICZfX2NvbnRlbnQgaDMge1xyXG4gICAgbWFyZ2luLXRvcDogMnJlbTtcclxuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgbWFyZ2luLXRvcDowO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX190ZXh0IHtcclxuICAgIGEge1xyXG4gICAgICBmb250LXdlaWdodDo1MDA7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgfVxyXG4gIH1cclxufSIsIi5ib3gtaWRlZXMtYXNzb2NpZWVzIHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG4gIGJhY2tncm91bmQtY29sb3I6JGdyZXk7XHJcbiAgY29sb3I6JGJsYWNrO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAmX190aXRsZSB7XHJcbiAgICBmb250LXNpemU6MnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OjcwMDtcclxuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcclxuICB9XHJcbiAgJl9fY29udGVudCB7XHJcbiAgICBhIHtcclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5wYWdlLWlkZWVzLWFzc29jaWVlcyAjYm94LXBsYW4tZHUtc2l0ZVxyXG57XHJcbiAgYmFja2dyb3VuZDogI2Y2ZjZmNjsgXHJcbiAgcGFkZGluZy1ib3R0b206IDRyZW07XHJcbiAgcGFkZGluZy10b3A6IDRyZW07IFxyXG59XHJcbi5wYWdlLWlkZWVzLWFzc29jaWVlcyAjYm94LXBsYW4tZHUtc2l0ZSBoMlxyXG57XHJcbiAgcGFkZGluZzogM3JlbSAwIDFyZW07XHJcbn1cclxuLnBhZ2UtaWRlZXMtYXNzb2NpZWVzICNib3gtcGxhbi1kdS1zaXRlIGxpXHJcbntcclxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG59IiwiLmJveC12b3VzLWFpbWVyZXoge1xyXG4gIGJhY2tncm91bmQtY29sb3I6JGdyZXlMaWdodDtcclxuICAvKiZfX2Nhcm91c2VsLXdyYXBwZXIge1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG5cdCAgJjpiZWZvcmUge1xyXG5cdCAgICAgY29udGVudDogXCJcIjtcclxuXHQgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHQgICAgIHRvcDogLTVyZW07XHJcblx0ICAgICByaWdodDogLTVyZW07XHJcblx0ICAgICB3aWR0aDogMTFyZW07XHJcblx0ICAgICBoZWlnaHQ6IDExcmVtO1xyXG5cdCAgICAgZGlzcGxheTogYmxvY2s7XHJcblx0ICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2NlbnRwb3VyY2VudC5wbmcpO1xyXG5cdCAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG5cdCAgICAgei1pbmRleDogMTtcclxuXHQgICB9XHJcbiAgICAgfVxyXG4gIH0qL1xyXG4gICZfX2Nhcm91c2VsIHtcclxuICAgIC5zbGljay1wcmV2IHtcclxuICAgICAgbGVmdCA6IDEuNXJlbTtcclxuICAgICAgei1pbmRleDoxO1xyXG4gICAgfVxyXG4gICAgLnNsaWNrLW5leHQge1xyXG4gICAgICByaWdodCA6IDEuNXJlbTtcclxuICAgIH1cclxuICAgIC5zbGljay1hcnJvdyB7XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBvcGFjaXR5OjE7XHJcbiAgICAgICAgY29sb3I6JHdoaXRlO1xyXG4gICAgICAgIHRleHQtc2hhZG93OiAwIDAgMnB4ICRibGFjaztcclxuXHRcdGZvbnQtc2l6ZTogM3JlbTtcclxuXHRcdGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6MS41O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuc2xpY2stZG90cyB7XHJcbiAgICAgIGJvdHRvbToycmVtO1xyXG4gICAgfVxyXG4gICAgJi5zaG93LWFycm93LW9uLWhvdmVyIHtcclxuICAgICAgLnNsaWNrLWFycm93IHtcclxuICAgICAgICAubm8tdG91Y2ggJiB7XHJcbiAgICAgICAgICBkaXNwbGF5Om5vbmUhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5zaG93LWFycm93LW9uLWhvdmVyOmhvdmVyIHtcclxuICAgICAgLnNsaWNrLWFycm93IHtcclxuICAgICAgICAubm8tdG91Y2ggJiB7XHJcbiAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jayFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2NvbnRlbnQge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgcGFkZGluZy10b3A6M3JlbTtcclxuICAgICAgcGFkZGluZy1ib3R0b206MnJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xyXG4gICAgZm9udC1zaXplOiAxLjhyZW07XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgQGluY2x1ZGUgbWFySChyZW0oLTE1KSk7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGFscGhhLWNvbG9yO1xyXG4gICAgICBjb2xvcjokd2hpdGU7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICAgIHBhZGRpbmc6MXJlbSAzcmVtO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2xpc3Qge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGcpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTozcmVtO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOjJyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2l0ZW0ge1xyXG4gICAgbWFyZ2luLXRvcDoxcmVtO1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6MnJlbTtcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6XCJcIjtcclxuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHRvcDogMC41cmVtO1xyXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgd2lkdGg6MXJlbTtcclxuICAgICAgICBoZWlnaHQ6MXJlbTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOjUwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibHVlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2FjdGlvbnMge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQpIHtcclxuICAgICAgbWFyZ2luLXRvcDoxcmVtO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOjJyZW07XHJcbiAgICB9XHRcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnKSB7XHJcbiAgICAgIG1hcmdpbi10b3A6Mi41cmVtO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgICAgIGRpc3BsYXk6bm9uZTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fYnRuIHtcclxuICAgIEBpbmNsdWRlIHBhZEgoMnJlbSk7XHJcbiAgICBtYXJnaW4tdG9wOjFyZW07XHJcbiAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcclxuICB9XHJcbiAgJl9fdmlzdWFsLXdyYXBwZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6XCJcIjtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgcGFkZGluZy1ib3R0b206NjclO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX192aXN1YWwge1xyXG4gICAgLnNsaWNrLWluaXRpYWxpemVkICZ7XHJcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICBmb250LWZhbWlseTogXCJvYmplY3QtZml0OiBjb3ZlclwiO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fbGVnZW5kZSB7XHJcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgIGJvdHRvbTowO1xyXG4gICAgd2lkdGg6MTAwJTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgkYmxhY2ssMC41KTtcclxuICAgIGNvbG9yOiR3aGl0ZTtcclxuICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gICAgZm9udC1zaXplOiAxLjNyZW07XHJcblx0b3BhY2l0eTowO1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNnMgZWFzZS1vdXQ7XHJcbiAgICBwYWRkaW5nOjAuMnJlbSAxLjVyZW07XHJcbiAgICBjdXJzb3I6cG9pbnRlcjtcclxuICAgIC5sZWdlbmRlLWlzLXNob3dlZCAme1xyXG4gICAgICBvcGFjaXR5OjE7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBpY29uKGNsb3NlKTtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDo0cHg7XHJcbiAgICAgIHJpZ2h0OjRweDtcclxuICAgICAgZm9udC1zaXplOjFyZW07XHJcbiAgICAgIG9wYWNpdHk6IDAuNztcclxuICAgIH1cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIuYm94LWl0aW5lcmFpcmUge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICZfX21hcCB7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgd2lkdGg6MTAwJTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTpjb250YWluO1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OlwiXCI7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIHBhZGRpbmctdG9wOjQ4JTtcclxuICAgICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDoxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2xpc3Qge1xyXG4gICAgcGFkZGluZy10b3A6NHJlbTtcclxuICB9XHJcbn1cclxuLmJveC1ldGFwZSB7XHJcbiAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgQGluY2x1ZGUgbWFySCgxM3JlbSk7XHJcbiAgfVxyXG4gIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcclxuICAgIEBpbmNsdWRlIG1hckgoMjByZW0pO1xyXG4gIH1cclxuICAmOmJlZm9yZSB7XHJcbiAgICBjb250ZW50OlwiXCI7XHJcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgIGhlaWdodDoxMDAlO1xyXG4gICAgdG9wOjA7XHJcbiAgICB3aWR0aDo0cHg7XHJcbiAgICB0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTtcclxuICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRibHVlIDAuOHB4LCB0cmFuc3BhcmVudCAxLjhweCk7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDRweCA4cHg7XHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIGxlZnQ6LTEwcmVtO1xyXG4gICAgICB0b3A6NXJlbTtcclxuICAgIH1cclxuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIHotaW5kZXg6LTE7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYgKyAmIHtcclxuICAgIHBhZGRpbmctdG9wOjRyZW07XHJcbiAgfVxyXG4gICZfX2hlYWRlciB7XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19pY29uIHtcclxuICAgIHdpZHRoOjJyZW07XHJcbiAgICBoZWlnaHQ6MnJlbTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6JGJsdWU7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBAaW5jbHVkZSBtYXJIKGF1dG8pO1xyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICB3aWR0aDo3cmVtO1xyXG4gICAgICBoZWlnaHQ6N3JlbTtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIGxlZnQ6LTEwcmVtO1xyXG4gICAgICB0b3A6NTAlO1xyXG4gICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7XHJcbiAgICAgIGJvcmRlcjoxLjVyZW0gc29saWQgJHdoaXRlO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtXHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2NoYXBvIHtcclxuICAgIGZvbnQtc2l6ZToxLjhyZW07XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgY29sb3I6JGJsdWU7XHJcbiAgfVxyXG4gICZfX3RpdGxlIHtcclxuICAgIGZvbnQtc2l6ZToxLjhyZW07XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gIH1cclxuICAmX190ZXh0IHtcclxuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XHJcbiAgICBmb250LXNpemU6MS44cmVtO1xyXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XHJcbiAgICAgIG1hcmdpbi10b3A6MDtcclxuICAgICAgcGFkZGluZy10b3A6MnJlbTtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDJyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuZGVwYXJ0LFxyXG4gICYuYXJyaXZlIHtcclxuICAgIC5ib3gtZXRhcGVfX2ljb24ge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcclxuICAgICAgYm9yZGVyLXJhZGl1czowO1xyXG4gICAgICB3aWR0aDo5cmVtO1xyXG4gICAgICBoZWlnaHQ6OXJlbTtcclxuICAgICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgICB3aWR0aDogN3JlbTtcclxuICAgICAgICBoZWlnaHQ6IDZyZW07XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XHJcbiAgICAgIH1cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDpcIlwiO1xyXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgaGVpZ2h0OjJweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibHVlO1xyXG4gICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgYm90dG9tOjA7XHJcbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuYm94LWV0YXBlX19pY29uLWlubmVyIHtcclxuICAgICAgQGluY2x1ZGUgaWNvbihhdmlvbik7XHJcbiAgICAgIEBpbmNsdWRlIGNlbnRlckljb247XHJcbiAgICAgIGZvbnQtc2l6ZTo2cmVtO1xyXG4gICAgICBjb2xvcjokYmx1ZTtcclxuICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuYXJyaXZlIHtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICAgIGhlaWdodDowO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuYm94LWV0YXBlX19pY29uLWlubmVyIHtcclxuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcclxuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDBkZWcpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIuYm94LWEtbGEtY2FydGUge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICZfX2xpc3Qge1xyXG4gICAgcGFkZGluZy10b3A6NHJlbTtcclxuICB9XHJcbn1cclxuLmJveC1hLWxhLWNhcnRlLWl0ZW0ge1xyXG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgIEBpbmNsdWRlIG1hckgoMTNyZW0pO1xyXG4gIH1cclxuICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XHJcbiAgICBAaW5jbHVkZSBtYXJIKDIwcmVtKTtcclxuICB9XHJcbiAgJiArICYge1xyXG4gICAgcGFkZGluZy10b3A6NHJlbTtcclxuICB9XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC1zaXplOjEuOHJlbTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBmb250LXdlaWdodDo3MDA7XHJcbiAgfVxyXG4gICZfX3RleHQge1xyXG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTtcclxuICAgIGZvbnQtc2l6ZToxLjhyZW07XHJcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcclxuICAgICAgbWFyZ2luLXRvcDowO1xyXG4gICAgICBwYWRkaW5nLXRvcDoycmVtO1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcclxuICAgIH1cclxuICB9XHJcbn0iLCIuYm94LWJ1ZGdldCB7XHJcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiRncmV5TGlnaHQ7XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgY29sb3I6JGJsdWU7XHJcbiAgfVxyXG4gICZfX2NvbnRlbnQge1xyXG4gICAgZm9udC1zaXplOjEuNnJlbTtcclxuICAgIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcclxuICAgICAgQGluY2x1ZGUgbWFySCgyMHJlbSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2NvbnRlbnQtdGl0bGUge1xyXG4gICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gIH1cclxufVxyXG4uYm94LXByaXgtY29tcHJlbmQge1xyXG4gIEBpbmNsdWRlIHBhZFYoMnJlbSk7XHJcbiAgYm9yZGVyLXRvcDoxcHggc29saWQgJGJhc2UtY29sb3I7XHJcbiAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGJhc2UtY29sb3I7XHJcbiAgbWFyZ2luLXRvcDoycmVtO1xyXG4gICZfX2J1dHRvbiB7XHJcbiAgICBAaW5jbHVkZSBpY29uKGZsZWNoZS1uYXYpO1xyXG4gICAgZm9udC1zaXplOjJyZW07XHJcbiAgICBmb250LXdlaWdodDo3MDA7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XHJcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgfVxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcclxuICAgICAgZm9udC1zaXplOjEuNXJlbTtcclxuICAgICAgbWFyZ2luLWxlZnQ6IC0xLjVyZW07XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcclxuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycztcclxuICAgICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgICBmb250LXNpemU6cmVtKDEwKTtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xLjJyZW07XHJcbiAgICAgIH1cclxuICAgICAgLmpzLXJlYWRtb3JlLS1leHBhbmRlZCAmIHtcclxuICAgICAgICB0cmFuc2Zvcm06cm90YXRlKDkwZGVnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmX19jb250ZW50IHtcclxuICAgIEBpbmNsdWRlIHBhZFYoMnJlbSk7XHJcbiAgfVxyXG59XHJcbiIsIi5ib3gtbm9zLWV4cGVydHMge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgLnBhZ2UtY29uc2VpbGxlcnMtaW50ZXJ2aWV3ICYsXHJcbiAgJi5ncmV5Qmcge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjokZ3JleUxpZ2h0O1xyXG4gIH1cclxuICAmX192aXN1YWwge1xyXG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XHJcbiAgICBtYXgtd2lkdGg6IDE3LjVyZW07XHJcbiAgfVxyXG4gICZfX3RleHQge1xyXG4gICAgQGluY2x1ZGUgbWFySDtcclxuICAgIG1heC13aWR0aDo4MHJlbTtcclxuICAgIG1hcmdpbi10b3A6IDNyZW07XHJcbiAgICBsaW5lLWhlaWdodDoxLjU7XHJcbiAgfVxyXG4gICZfX2xpc3Qge1xyXG4gICAgQGluY2x1ZGUgbWFySDtcclxuICAgIG1heC13aWR0aDoxMDByZW07XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9faXRlbSB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG4gICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xyXG4gICAgICBtaW4td2lkdGg6IDIwcmVtO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIHRleHQtYWxpZ246bGVmdDtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgYm9yZGVyLXRvcDoxcHggc29saWQgJGdyZXlWZXJ5RGFyaztcclxuICAgIH1cclxuICB9XHJcbiAgJl9fYWN0aW9ucyB7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgbWFyZ2luLXRvcDowO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmJveC1leHBlcnQge1xyXG4gICZfX2ljb24ge1xyXG4gICAgY29sb3I6JGJsdWU7XHJcbiAgICBmb250LXNpemU6NnJlbTtcclxuICAgIHdpZHRoOjZyZW07XHJcbiAgICBoZWlnaHQ6NnJlbTtcclxuICAgIEBpbmNsdWRlIGNlbnRlckljb247XHJcbiAgICBAaW5jbHVkZSBpY29uUG9wO1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OjE7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgIGZvbnQtc2l6ZTo0cmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX190ZXh0IHtcclxuICAgIGZvbnQtd2VpZ2h0OjcwMDtcclxuICAgIGZvbnQtc2l6ZToxLjhyZW07XHJcbiAgICBtYXJnaW4tdG9wOjA7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2xpbmsge1xyXG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLmJveC1jb250YWN0IHtcclxuICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICBwb3NpdGlvbjpmaXhlZDtcclxuICBib3R0b206MDtcclxuICBsZWZ0OjA7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XHJcbiAgd2lkdGg6MTAwJTtcclxuICBib3JkZXItdG9wOjFweCBzb2xpZCAkYmxhY2s7XHJcbiAgei1pbmRleDozO1xyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgei1pbmRleDoxMDAwO1xyXG4gIH1cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgcGFkZGluZy1sZWZ0OjJyZW07XHJcbiAgfVxyXG4gICZfX3RpdGxlIHtcclxuICAgIGZsb2F0OmxlZnQ7XHJcbiAgICBmb250LXdlaWdodDo3MDA7XHJcbiAgICBmb250LXNpemU6MS42cmVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IHJlbSg0NCk7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgZGlzcGxheTpub25lO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19saXN0IHtcclxuICAgIGZsb2F0OnJpZ2h0O1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xyXG4gICAgICB3aWR0aDoxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19saW5rIHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBAaW5jbHVkZSBwYWRIKDEuNXJlbSk7XHJcbiAgICAgIG9yZGVyOiAxO1xyXG5cdCAgXHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjMDA4MmFkO1xyXG5cdFx0Y29sb3I6ICNmZmY7XHRcclxuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdGZvbnQtd2VpZ2h0OiA3MDA7XHJcblx0XHRwYWRkaW5nOiAxLjVyZW0gMXJlbTtcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcyBlYXNlLW91dDtcdFx0XHJcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cdFx0d2lkdGg6MTAwJTtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDoycmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19pY29uIHtcclxuICAgIGNvbG9yOiRibHVlO1xyXG4gICAgZm9udC1zaXplOjNyZW07XHJcbiAgICB3aWR0aDozcmVtO1xyXG4gICAgaGVpZ2h0OjNyZW07XHJcbiAgICBkaXNwbGF5IDppbmxpbmUtYmxvY2s7XHJcbiAgICBAaW5jbHVkZSBjZW50ZXJJY29uO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICAgbWFyZ2luLXJpZ2h0OjAuNXJlbTtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG5cdFx0Y29sb3I6ICNGRkY7XHJcblx0XHRtYXJnaW4tdG9wOiAtMXJlbTtcclxuXHRcdHBhZGRpbmc6MCAycmVtO1xyXG5cdH1cclxuICB9XHJcbiAgJl9fdGV4dCB7XHJcbiAgICBmb250LXdlaWdodDo3MDA7XHJcbiAgICBmb250LXNpemU6MS40cmVtO1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRmb250LXdlaWdodDogNDAwO1xyXG5cdFx0Zm9udC1zaXplOiAyLjJyZW07XHJcbiAgICAgIH1cclxuICB9XHJcbiAgJl9fYnRuIHtcclxuICAgIHBhZGRpbmc6MS41cmVtIDFyZW07XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgQGluY2x1ZGUgcGFkVigxLjhyZW0pO1xyXG5cdFx0ZGlzcGxheTpub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8qRXhjZXB0aW9uIHBhZ2UgcHJvZHVpdCovXHJcbmJvZHkucGFnZS1wcm9kdWl0IC5ib3gtY29udGFjdCB7XHJcbiAgJl9fYnRuIHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG5cdFx0ZGlzcGxheTpibG9jaztcclxuICAgIH1cclxuICB9XHJcbiAgJl9faWNvbiB7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuXHRcdGNvbG9yOiMwMDgyYWQ7IGhlaWdodDogYXV0bzsgbWFyZ2luOmF1dG87IFxyXG4gICAgfVxyXG4gIH1cclxuICAmX190ZXh0IHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG5cdFx0ZGlzcGxheTpub25lO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19saW5rIHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG5cdFx0YmFja2dyb3VuZDojZmZmOyB3aWR0aDphdXRvO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn0iLCIubmF2LXJlY2hlcmNoZSB7XHJcbiAgZGlzcGxheTpmbGV4O1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XHJcbiAgLy9wb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAvL3otaW5kZXg6MztcclxuICB3aWR0aDogMTAwJTtcclxuICBtaW4taGVpZ2h0OiByZW0oNTMpO1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JleTtcclxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XHJcbiAgICB6LWluZGV4OmF1dG87XHJcbiAgICBib3JkZXItYm90dG9tOm5vbmU7XHJcbiAgfVxyXG4gIC5zdGlja3ktbmF2LWlzLWZpeGVkICYge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcclxuICAgICAgcGFkZGluZy1yaWdodDpyZW0oNTApO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19maWx0ZXJzLXRvZ2dsZSB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICB9XHJcbiAgICBjb2xvcjokd2hpdGU7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgIHBhZGRpbmc6IDAgMnJlbSAwIDA7XHJcbiAgICBAaW5jbHVkZSBpY29uKGZsZWNoZS1uYXYsIGFmdGVyKTtcclxuICAgIEBpbmNsdWRlIGNlbnRlckljb247XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDo1MCU7XHJcbiAgICAgIHJpZ2h0OjA7XHJcbiAgICAgIG1hcmdpbi10b3A6LTAuNXJlbTtcclxuICAgICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xyXG4gICAgICB0cmFuc2Zvcm06cm90YXRlKC05MGRlZyk7XHJcbiAgICAgIHdpZHRoOjFyZW07XHJcbiAgICAgIGhlaWdodDoxcmVtO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAucmVjaGVyY2hlLWZpbHRlcnMtaXMtb3BlbmVkICYge1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmX19maWx0ZXJzLWNvbnRlbnQge1xyXG4gICAgcGFkZGluZy1sZWZ0OjEuNXJlbTtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBAaW5jbHVkZSBwYWRIKDJyZW0pO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgbGVmdDowO1xyXG4gICAgICB0b3A6IDEwMCU7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB6LWluZGV4OjE7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMHJlbTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JleUxpZ2h0O1xyXG4gICAgICBwYWRkaW5nLXRvcDowLjVyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2ZpbHRlcnMtbGlzdCB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAuc3RpY2t5LW5hdi1pcy1maXhlZCAmIHtcclxuICAgICAgICB3aWR0aDogY2FsYyg1NSUgLSAzMHB4KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUgKSB7XHJcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19maWx0ZXJzLWl0ZW0ge1xyXG4gICAgQGluY2x1ZGUgcGFkVigwLjhyZW0pO1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICBAaW5jbHVkZSBwYWRWKDFyZW0pO1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OjFyZW07XHJcbiAgICAgICYgKyAmIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6MS4zcmVtO1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGNvbnRlbnQ6XCJcIjtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmV5O1xyXG4gICAgICAgICAgd2lkdGg6MXB4O1xyXG4gICAgICAgICAgaGVpZ2h0OjIuNXJlbTtcclxuICAgICAgICAgIHRvcDo1MCU7XHJcbiAgICAgICAgICBsZWZ0OjA7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSApIHtcclxuICAgICAgd2lkdGg6NTAlO1xyXG4gICAgICBmbG9hdDpsZWZ0O1xyXG4gICAgICAmOm50aC1vZi10eXBlKG9kZCkge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6MC41cmVtO1xyXG4gICAgICB9XHJcbiAgICAgICY6bnRoLW9mLXR5cGUoZXZlbikge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDowLjVyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJl9fZmlsdGVycy1sYWJlbCB7XHJcbiAgICBmb250LXdlaWdodDpib2xkO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIG1hcmdpbjowIDAgMC41cmVtIDEuMnJlbTtcclxuICAgIGZvbnQtc2l6ZToxLjVyZW07XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2ZpbHRlcnMtc2VsZWN0IHtcclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgICAgID4gLmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgICAgICAgZm9udC1zaXplOjEuNHJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5ib290c3RyYXAtc2VsZWN0Om5vdChbY2xhc3MqPVwiY29sLVwiXSk6bm90KFtjbGFzcyo9XCJmb3JtLWNvbnRyb2xcIl0pOm5vdCguaW5wdXQtZ3JvdXAtYnRuKSB7XHJcbiAgICAgIHdpZHRoOmF1dG87XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgICAgJi5ib290c3RyYXAtc2VsZWN0Om5vdChbY2xhc3MqPVwiY29sLVwiXSk6bm90KFtjbGFzcyo9XCJmb3JtLWNvbnRyb2xcIl0pOm5vdCguaW5wdXQtZ3JvdXAtYnRuKSB7XHJcbiAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmX19maWx0ZXJzLXN1Ym1pdCB7XHJcbiAgICBAaW5jbHVkZSBtYXJIO1xyXG4gICAgbWFyZ2luLXRvcDoxcmVtO1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIGRpc3BsYXk6bm9uZTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fZGlzcGxheS1saXN0IHtcclxuICAgIGRpc3BsYXk6ZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGZsZXgtZ3JvdzoxO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBAaW5jbHVkZSBwYWRIKDJyZW0pO1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OjA7XHJcbiAgICB9XHJcbiAgICAudG91Y2ggJiB7XHJcbiAgICAgIGRpc3BsYXk6bm9uZTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fZGlzcGxheS1pdGVtIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICYgKyAmIHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDJyZW07XHJcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmX19kaXNwbGF5LWxpbmsge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgICAgIHBhZGRpbmc6MC4ycmVtIDAuNXJlbTtcclxuICAgICAgYm9yZGVyLXJhZGl1czo0cHg7XHJcbiAgICB9XHJcbiAgICAmLmRpc3BsYXktbGlzdGUge1xyXG4gICAgICAuZGlzcGxheS1tb2RlLWxpc3RlICZ7XHJcbiAgICAgICAgY29sb3I6JGJsdWU7XHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYuZGlzcGxheS1jYXJ0ZSB7XHJcbiAgICAgIC5kaXNwbGF5LW1vZGUtY2FydGUgJntcclxuICAgICAgICBjb2xvcjokYmx1ZTtcclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5kaXNwbGF5LWh5YnJpZGUge1xyXG4gICAgICAuZGlzcGxheS1tb2RlLWh5YnJpZGUgJntcclxuICAgICAgICBjb2xvcjokYmx1ZTtcclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIGNvbG9yOiR3aGl0ZTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fZGlzcGxheS1pY29uIHtcclxuICAgIEBpbmNsdWRlIGNlbnRlckljb247XHJcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcclxuICAgIHdpZHRoOiAycmVtO1xyXG4gICAgaGVpZ2h0OiAycmVtO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICB9XHJcbiAgJl9fZGlzcGxheS10ZXh0IHtcclxuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcclxuICAgIGZvbnQtd2VpZ2h0OjcwMDtcclxuICB9XHJcbn1cclxuXHJcbi5ib3gtcmVjaGVyY2hlIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDokc2NyZWVuLXNtKSB7XHJcbiAgICBAaW5jbHVkZSBwYWRIKHJlbSg1MCkpO1xyXG4gIH1cclxuICAmX19yb3cge1xyXG4gICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyZXk7XHJcbiAgfVxyXG4gICZfX2NvbCB7XHJcbiAgICAmLmNvbC1jb250ZW50IHtcclxuICAgICAgd2lkdGg6NTUlO1xyXG4gICAgICAuZGlzcGxheS1tb2RlLWNhcnRlICZ7XHJcbiAgICAgICAgZGlzcGxheTpub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmNvbC1tYXAge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIC5kaXNwbGF5LW1vZGUtbGlzdGUgJntcclxuICAgICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICAgIH1cclxuICAgICAgLmRpc3BsYXktbW9kZS1jYXJ0ZSAmIHtcclxuICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2ZpbHRlci1saXN0IHtcclxuICAgIEBpbmNsdWRlIG1hclYoMXJlbSk7XHJcbiAgfVxyXG4gICZfX2ZpbHRlci1pdGVtIHtcclxuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gIH1cclxuICAmX19maWx0ZXIge1xyXG4gICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xyXG4gICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgZm9udC1zaXplOjEuNHJlbTtcclxuICAgIHBhZGRpbmc6NnB4IDEycHg7XHJcbiAgICBsZXR0ZXItc3BhY2luZyA6IC4xcmVtO1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICBAaW5jbHVkZSBpY29uKGZsZWNoZS1uYXYsIGFmdGVyKTtcclxuICAgIEBpbmNsdWRlIGNlbnRlckljb247XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDo1MCU7XHJcbiAgICAgIHJpZ2h0OjA7XHJcbiAgICAgIG1hcmdpbi10b3A6LTAuNXJlbTtcclxuICAgICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xyXG4gICAgICB0cmFuc2Zvcm06cm90YXRlKDkwZGVnKTtcclxuICAgICAgY29sb3I6JGJsdWU7XHJcbiAgICAgIHdpZHRoOjFyZW07XHJcbiAgICAgIGhlaWdodDoxcmVtO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgfVxyXG4gICAgJi5kZXNjIHtcclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmX19saXN0IHtcclxuICAgIG1hcmdpbi10b3A6MXJlbTtcclxuICAgIHBhZGRpbmc6MCAycmVtIDJyZW0gMnJlbTtcclxuICB9XHJcbiAgJl9fbWFwLXdyYXBwZXIge1xyXG4gICAgaGVpZ2h0OmNhbGMoMTAwdmggLSA4cmVtKTtcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICYuYWZmaXgge1xyXG4gICAgICBwb3NpdGlvbjpmaXhlZCFpbXBvcnRhbnQ7XHJcbiAgICAgIHRvcDpyZW0oNTMpO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcclxuICAgIH1cclxuICAgIC5kaXNwbGF5LW1vZGUtY2FydGUgJiB7XHJcbiAgICAgIGhlaWdodDpjYWxjKDc1dmgpO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19tYXAge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gIH1cclxuICAmX19wYWdlciB7XHJcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICB9XHJcbn1cclxuXHJcblxyXG4uZ20tc3R5bGUtaXctY29udGFpbmVyIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgLy8gQmFja2dyb3VuZFxyXG4gID4gZGl2OmZpcnN0LWNoaWxkIHtcclxuICAgID4gZGl2IHtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgLy8gQXJyb3cgc2hhZG93XHJcbiAgICA+IGRpdjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IC8vIERpc2FibGVcclxuICAgIH1cclxuICAgIC8vIEJveCBzaGFkb3dcclxuICAgID4gZGl2Om50aC1jaGlsZCgyKSB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgICBib3gtc2hhZG93OiAkYm94LXNoYWRvdyAhaW1wb3J0YW50O1xyXG4gICAgICBkaXNwbGF5Om5vbmUhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgLy8gQXJyb3cgaW1hZ2VcclxuICAgID4gZGl2Om50aC1jaGlsZCgzKSB7XHJcbiAgICAgIG1hcmdpbi10b3A6NHB4IWltcG9ydGFudDtcclxuICAgICAgPiBkaXY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgID4gZGl2IHtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2tld1goNDBkZWcpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBib3gtc2hhZG93OiAkYm94LXNoYWRvdyAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICA+IGRpdjpudGgtY2hpbGQoMikge1xyXG4gICAgICAgID4gZGl2IHtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2tld1goLTQwZGVnKSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgYm94LXNoYWRvdzogJGJveC1zaGFkb3cgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIGJhY2tncm91bmQgRElWXHJcbiAgICA+IGRpdjpudGgtY2hpbGQoNCkge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOnJlZCFpbXBvcnRhbnQ7XHJcbiAgICAgIGRpc3BsYXk6bm9uZSFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5nbS1zdHlsZS1pdyB7XHJcbiAgICBib3R0b206IDAgIWltcG9ydGFudDtcclxuICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSFpbXBvcnRhbnQ7XHJcbiAgICBtYXJnaW4tbGVmdDoxNXB4IWltcG9ydGFudDtcclxuICAgIHBhZGRpbmc6MjBweCAwIDEwcHggMCFpbXBvcnRhbnQ7XHJcbiAgICB0b3A6YXV0byFpbXBvcnRhbnQ7XHJcbiAgICA+IGRpdjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vIGNsb3NlIGJ1dHRvblxyXG4gIC5nbS1zdHlsZS1pdyArIGRpdiB7XHJcbiAgICB0b3A6MjJweCFpbXBvcnRhbnQ7XHJcbiAgICByaWdodDoyMnB4IWltcG9ydGFudDtcclxuICB9XHJcbiAgLmdtLXN0eWxle1xyXG4gICAgaW1nIHtcclxuICAgICAgbWF4LXdpZHRoOjEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG59IiwiLmJveC1pbmZvcy1wYXlzIHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG4gICZfX3RleHQge1xyXG4gICAgQGluY2x1ZGUgbWFySDtcclxuICAgIG1hcmdpbi1ib3R0b206NHJlbTtcclxuICAgIG1heC13aWR0aDokY29udGFpbmVyLXNtO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICB9XHJcbiAgJl9fbGlzdCB7XHJcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICAgIEBpbmNsdWRlIG1hckgoYXV0byk7XHJcbiAgICBtYXgtd2lkdGg6ODByZW07XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG4gICZfX2l0ZW0ge1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIHdpZHRoOjMzLjMzMyU7XHJcbiAgICBmbG9hdDpsZWZ0O1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIHRleHQtYWxpZ246bGVmdDtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgYm9yZGVyLXRvcDoxcHggc29saWQgJGdyZXlWZXJ5RGFyaztcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5ib3gtaW5mby1wYXlzIHtcclxuICAmX19saW5rIHtcclxuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIGRpc3BsYXk6dGFibGU7XHJcbiAgICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XHJcbiAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2ljb24ge1xyXG4gICAgY29sb3I6JHBpbms7XHJcbiAgICBmb250LXNpemU6NnJlbTtcclxuICAgIHdpZHRoOjZyZW07XHJcbiAgICBoZWlnaHQ6NnJlbTtcclxuICAgIGRpc3BsYXkgOmlubGluZS1ibG9jaztcclxuICAgIEBpbmNsdWRlIGNlbnRlckljb247XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgZGlzcGxheTp0YWJsZS1jZWxsO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICBmb250LXNpemU6NHJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgZm9udC1zaXplOjEuOHJlbTtcclxuICAgIG1hcmdpbi10b3A6MDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgZGlzcGxheTp0YWJsZS1jZWxsO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICBAaW5jbHVkZSBwYWRIKDAuNXJlbSk7XHJcbiAgICAgIHdpZHRoOjIwcmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX190ZXh0IHtcclxuICAgIGZvbnQtd2VpZ2h0OjcwMDtcclxuICAgIGZvbnQtc2l6ZToxLjhyZW07XHJcbiAgICBtYXJnaW4tdG9wOjA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgY29sb3I6JHBpbms7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgZGlzcGxheTp0YWJsZS1jZWxsO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgfVxyXG4gIH1cclxufSIsIi5ib3gtcXVhbmQtcGFydGlyIHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG4gICZfX2NvbnRlbnQge1xyXG4gICAgQGluY2x1ZGUgY292ZXI7XHJcbiAgICBwYWRkaW5nOjRyZW07XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG4gICZfX2xpc3Qge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XHJcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcclxuICAgIHBhZGRpbmc6IDFyZW0gMnJlbTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4uYm94LW1vaXMge1xyXG4gIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gIEBpbmNsdWRlIHBhZFYoMXJlbSk7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcclxuICAgIHBhZGRpbmc6MnJlbTtcclxuICB9XHJcbiAgPiAuaWNvbi1zdGFyIHtcclxuICAgIGNvbG9yOiRwaW5rO1xyXG4gIH1cclxuICAmX190aXRsZSB7XHJcbiAgICBmb250LXdlaWdodDpib2xkO1xyXG4gIH1cclxufVxyXG4iLCIuYm94LWJvbm5lcy1yYWlzb25zIHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG4gICZfX2xpc3Qge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMpIHtcclxuICAgICAgQGluY2x1ZGUgbWFySCg1LjVyZW0pO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHMpIHtcclxuICAgICAgIEBpbmNsdWRlIG1hckgoNmVtKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5ib3gtYm9ubmUtcmFpc29uIHtcclxuICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICBAaW5jbHVkZSBwYWRIKDNyZW0pO1xyXG4gICZfX2luZGV4IHtcclxuICAgIGNvbG9yOiRwaW5rO1xyXG4gICAgZm9udC1zaXplOjZyZW07XHJcbiAgfVxyXG59IiwiLmJveC11dGlsZSB7XHJcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcclxuICAmX19jb250ZW50IHtcclxuICAgIEBpbmNsdWRlIGNvdmVyO1xyXG4gICAgcGFkZGluZzo2cmVtIDRyZW07XHJcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBAaW5jbHVkZSBwYWRWKDByZW0pO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19yb3cge1xyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICBkaXNwbGF5OmZsZXg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uYm94LXV0aWxlLWl0ZW0ge1xyXG4gIEBpbmNsdWRlIG1hckgoMTByZW0pO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICBwYWRkaW5nOiAycmVtO1xyXG4gIGJveC1zaGFkb3c6IDEwcHggMTBweCAwcHggMHB4ICRwaW5rO1xyXG4gIGhlaWdodDoxMDAlO1xyXG4gIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgICBAaW5jbHVkZSBtYXJIKDRyZW0pO1xyXG4gIH1cclxuICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgbWFyZ2luOjZyZW0gMDtcclxuICB9XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xyXG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xyXG4gICAgZm9udC1zaXplOjJyZW07XHJcbiAgfVxyXG4gICZfX2xpc3Qge1xyXG4gICAgPiBsaSB7XHJcbiAgICAgIG1hcmdpbi10b3A6MC41cmVtO1xyXG4gICAgICA+IGEge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OjUwMDtcclxuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcclxuICAgICAgICBAaW5jbHVkZSBpY29uKGZsZWNoZS1uYXYpO1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGNvbG9yOiRwaW5rO1xyXG4gICAgICAgICAgZm9udC1zaXplOjFyZW07XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICB0b3A6IDAuNHJlbTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBjb2xvcjogJHBpbms7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIuYm94LWEtZGVjb3V2cmlyIHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG4gIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAucm93IHtcclxuICAgICAgJiA+ICoge1xyXG4gICAgICAgIG1hcmdpbi10b3A6NHJlbTtcclxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgIG1hcmdpbi10b3A6MDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5ib3gtYS1kZWNvdXZyaXItaXRlbSB7XHJcbiAgQGluY2x1ZGUgY292ZXI7XHJcbiAgZGlzcGxheTpibG9jaztcclxuICBoZWlnaHQ6MjJyZW07XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICY6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIG1hcmdpbi1yaWdodDogLTAuMjVlbTsgLyogc3BhY2Ugd2lkdGggKi9cclxuICB9XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgcGFkZGluZzoxcmVtIDZyZW07XHJcbiAgICBmb250LXdlaWdodDo3MDA7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gIH1cclxufVxyXG4iLCIuYm94LXZveWFnZXMtcGF5cyB7XHJcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcclxufSIsIi5ib3gtYXJ0aWNsZXMge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgJl9faXRlbSB7XHJcbiAgICBAaW5jbHVkZSBtYXJIO1xyXG4gICAgbWF4LXdpZHRoOiRjb250YWluZXItc207XHJcblxyXG4gICAgJiArICYge1xyXG4gICAgICBtYXJnaW4tdG9wOjRyZW07XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uYm94LWFydGljbGUge1xyXG4gICZfX251bWJlciB7XHJcbiAgICBmb250LXdlaWdodDo3MDA7XHJcbiAgICBmb250LXNpemU6M3JlbTtcclxuICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gICAgY29sb3I6JGFscGhhLWNvbG9yO1xyXG4gIH1cclxuICAmX190aXRsZSB7XHJcbiAgICBmb250LXdlaWdodDo0MDA7XHJcbiAgICBmb250LXNpemU6M3JlbTtcclxuICAgIG1hcmdpbi10b3A6MDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcclxuICB9XHJcbiAgJl9fdGV4dCB7XHJcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICB9XHJcbiAgJl9fdGV4dCBhe1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gIH1cclxuICAmX190ZXh0IGgye1xyXG4gICAgZm9udC1zaXplOiBtZWRpdW07XHJcblx0Zm9udC13ZWlnaHQ6Ym9sZDtcclxuXHRtYXJnaW4tdG9wOjJyZW07XHJcbiAgfVxyXG59XHJcblxyXG4ucGFnZS1hcnRpY2xlLWd1aWRlIC5ib3gtYXJ0aWNsZSB1bCB7XHJcbiAgICBsaXN0LXN0eWxlOiBpbnNpZGU7XHJcblx0bGluZS1oZWlnaHQ6IDI7XHJcbn0iLCIuYm94LWludHJvLWNvbnNlaWxsZXJzIHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG4gICZfX2NoYXBvIHtcclxuICAgIEBpbmNsdWRlIG1hclY7XHJcbiAgICBAaW5jbHVkZSBtYXJIO1xyXG4gICAgbWF4LXdpZHRoOjcwcmVtO1xyXG4gICAgZm9udC1zaXplOjIuNXJlbTtcclxuICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gIH1cclxuICAmX190ZXh0IHtcclxuICAgIEBpbmNsdWRlIG1hckg7XHJcbiAgICBtYXJnaW4tdG9wOjRyZW07XHJcbiAgICBtYXgtd2lkdGg6NzByZW07XHJcbiAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgPiBwICsgcHtcclxuICAgICAgbWFyZ2luLXRvcDoycmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX192aXN1YWwge1xyXG4gICAgQGluY2x1ZGUgbWFyVjtcclxuICAgIEBpbmNsdWRlIG1hckg7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG59XHJcbiIsIi5ib3gtY29uc2VpbGxlcnMge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjokZ3JleUxpZ2h0O1xyXG4gICZfX2xpc3Qge1xyXG4gICAgQGluY2x1ZGUgbWFySCgtMS43cmVtKTtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKXtcclxuICAgICAgQGluY2x1ZGUgbWFySCg2cmVtKTtcclxuICAgIH1cclxuICB9XHJcbiAgLnNsaWNrLWFycm93IHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKXtcclxuICAgICAgdG9wOiAyNSU7XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCl7XHJcbiAgICAgIHRvcDogMzAlO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGcpe1xyXG4gICAgICB0b3A6IDM1JTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLmJveC1jb25zZWlsbGVycy1pdGVtIHtcclxuICBAaW5jbHVkZSBwYWRIKDNyZW0pO1xyXG4gICZfX3Zpc3VhbC1jb250YWluZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xyXG4gICAgJjphZnRlcntcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOjEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3Zpc3VhbC13cmFwcGVyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG4gICZfX3Zpc3VhbCB7XHJcbiAgICBAaW5jbHVkZSBvYmplY3QtZml0KGNvdmVyKTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICB9XHJcbiAgJl9fY2hhcG8ge1xyXG4gICAgZm9udC1zaXplOiAxLjNyZW07XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6XCJcIjtcclxuICAgICAgd2lkdGg6OHB4O1xyXG4gICAgICBoZWlnaHQ6MXB4O1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRiYXNlLWNvbG9yO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGxlZnQ6MDtcclxuICAgICAgdG9wOjdweDtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC1zaXplOjJyZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gIH1cclxuICAmX190ZXh0IHtcclxuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcclxuICB9XHJcbn0iLCIuYm94LWludGVydmlld3Mge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjokZ3JleUxpZ2h0O1xyXG5cclxufVxyXG5cclxuLmJveC1pbnRlcnZpZXcge1xyXG4gIEBpbmNsdWRlIG1hckg7XHJcbiAgbWF4LXdpZHRoOiAxMDByZW07XHJcbiAgJiArICYge1xyXG4gICAgbWFyZ2luLXRvcDo4cmVtO1xyXG4gIH1cclxuICAmX19yb3cge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcclxuICAgICAgQGluY2x1ZGUgZ3V0dGVyKDMwcHgpO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGcpIHtcclxuICAgICAgQGluY2x1ZGUgZ3V0dGVyKDUwcHgpO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX192aXN1YWwge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBmb250LXNpemU6IDJyZW07XHJcbiAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xyXG4gICAgc3BhbiB7XHJcbiAgICAgIGNvbG9yOiRibHVlO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19xdWVzdGlvbiB7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gIH1cclxuICAmX19yZXBvbnNlIHtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgfVxyXG4gICZfX3BzZXVkby1saW5rIHtcclxuICAgIGNvbG9yOiRibHVlO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gIH1cclxufVxyXG4iLCIuYm94LWludGVydmlldy1kZXRhaWwge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgJl9faGVhZGVyIHtcclxuICAgIEBpbmNsdWRlIG1hckg7XHJcbiAgICBtYXgtd2lkdGg6IDcwcmVtO1xyXG4gICAgZGlzcGxheTp0YWJsZTtcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgPiAqIHtcclxuICAgICAgZGlzcGxheTp0YWJsZS1jZWxsO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgfVxyXG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xyXG4gIH1cclxuICAmX19oZWFkZXItY29udGVudCB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OjJyZW07XHJcbiAgfVxyXG4gICZfX2hlYWRlci12aXN1YWwge1xyXG4gICAgd2lkdGg6MTZyZW07XHJcbiAgfVxyXG4gICZfX3Zpc3VhbCB7XHJcbiAgICBib3JkZXItcmFkaXVzOjUwJTtcclxuICB9XHJcbiAgJl9faGVhZGVyLXRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTo0cmVtO1xyXG4gIH1cclxuICAmX19oZWFkZXItc3VidGl0bGUge1xyXG4gICAgY29sb3I6JGJsdWU7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgZm9udC13ZWlnaHQ6NDAwO1xyXG4gICAgZm9udC1zaXplOjIuM3JlbTtcclxuICB9XHJcbiAgJl9fbGlzdCB7XHJcbiAgICBAaW5jbHVkZSBtYXJIO1xyXG4gICAgbWF4LXdpZHRoOiA3MHJlbTtcclxuICAgIG1hcmdpbi1ib3R0b206NnJlbTtcclxuICB9XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGZvbnQtc2l6ZTogMi40cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIG1hcmdpbi1ib3R0b206IDNyZW07XHJcbiAgfVxyXG4gICZfX3F1ZXN0aW9uIHtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwLjNyZW07XHJcbiAgfVxyXG4gICZfX3JlcG9uc2Uge1xyXG4gICAgbWFyZ2luLXRvcDowO1xyXG4gICAgbWFyZ2luLWJvdHRvbTozcmVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICB9XHJcbiAgJl9fY291cC1kZS1jb2V1ciB7XHJcbiAgICBAaW5jbHVkZSBtYXJIO1xyXG4gICAgbWF4LXdpZHRoOiA3MHJlbTtcclxuICB9XHJcbiAgJl9fc3VidGl0bGUge1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIG1hcmdpbi1ib3R0b206IDNyZW07XHJcbiAgfVxyXG59XHJcbiIsIi5ib3gtYXZpcyB7XHJcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiRncmV5TGlnaHQ7XHJcbiAgJl9fc2VhcmNoIHtcclxuICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xyXG4gIH1cclxuICAmX19wYWdlciB7XHJcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgIG1hcmdpbi10b3A6NHJlbTtcclxuICB9XHJcbn1cclxuXHJcbi5ib3gtYXZpcy1pdGVtIHtcclxuICAkcmF0aW8gOiBwZXJjZW50YWdlKDMwMCAvIDQ1MCk7XHJcbiAgQGluY2x1ZGUgbWFySDtcclxuICBtYXgtd2lkdGg6IDEwMHJlbTtcclxuICAmICsgJiB7XHJcbiAgICBtYXJnaW4tdG9wOjhyZW07XHJcbiAgfVxyXG4gICZfX3JvdyB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xyXG4gICAgICBAaW5jbHVkZSBndXR0ZXIoMzBweCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3Zpc3VhbC1jb250YWluZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xyXG4gICAgJjphZnRlcntcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiRyYXRpbztcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdmlzdWFsLXdyYXBwZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB9XHJcbiAgJl9fdmlzdWFsIHtcclxuICAgIEBpbmNsdWRlIG9iamVjdC1maXQoY292ZXIpO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xyXG4gIH1cclxuXHJcbiAgJl9fbm90YXRpb24ge1xyXG4gICAgZm9udC1zaXplOjIuNHJlbTtcclxuICAgIGNvbG9yOiRibHVlO1xyXG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xyXG4gIH1cclxuICAmX19wYXlzIHtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBmb250LXNpemU6IDNyZW07XHJcbiAgfVxyXG4gICZfX2NsaWVudCB7XHJcbiAgICBmb250LXNpemU6IDEuOHJlbTtcclxuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XHJcbiAgfVxyXG4gICZfX2RhdGUge1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBjb2xvcjokYmx1ZTtcclxuICB9XHJcbiAgJl9fdGV4dCB7XHJcbiAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgbWFyZ2luLXRvcDowO1xyXG5cclxuICB9XHJcbiAgJl9fcHNldWRvLWxpbmsge1xyXG4gICAgY29sb3I6JGJsdWU7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIH1cclxufVxyXG4iLCIuYm94LWVudmllcy1tb21lbnQge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbn1cclxuLmJveC1lbnZpZXMtbW9tZW50LWl0ZW0ge1xyXG4gIEBpbmNsdWRlIG1hckg7XHJcbiAgbWFyZ2luLWJvdHRvbTozcmVtO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAmX192aXN1YWwge1xyXG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xyXG4gIH1cclxuICAmX190aXRsZSB7XHJcbiAgICBmb250LXNpemU6MnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgfVxyXG59XHJcbiIsIi5ib3gtZW52aWVzLXRoZW1lIHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG59XHJcbi5ib3gtZW52aWVzLXRoZW1lLWl0ZW0ge1xyXG4gIGRpc3BsYXk6YmxvY2s7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjokZ3JleTtcclxuICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICBjb2xvcjokd2hpdGU7XHJcbiAgbWFyZ2luLWJvdHRvbTozcmVtO1xyXG4gIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDpcIlwiO1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIHBhZGRpbmctYm90dG9tOjEwMCU7XHJcbiAgfVxyXG4gICZfX2lubmVyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDpcIlwiO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcclxuICAgICAgb3BhY2l0eTouMTU7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICBoZWlnaHQ6MTAwJTtcclxuICAgICAgdG9wOjA7XHJcbiAgICAgIGxlZnQ6MDtcclxuICAgICAgei1pbmRleDoxO1xyXG4gICAgfVxyXG4gICAgLnRoZW1lICYge1xyXG4gICAgICB0b3A6IDIuNXJlbTtcclxuICAgICAgbGVmdDogMi41cmVtO1xyXG4gICAgICByaWdodDogMi41cmVtO1xyXG4gICAgICBib3R0b206IDIuNXJlbTtcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIG9wYWNpdHk6MDtcclxuICAgICAgfVxyXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cykge1xyXG4gICAgICAgIHRvcDogMXJlbTtcclxuICAgICAgICBsZWZ0OiAxcmVtO1xyXG4gICAgICAgIHJpZ2h0OiAxcmVtO1xyXG4gICAgICAgIGJvdHRvbTogMXJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmX19jb250ZW50IHtcclxuICAgIEBpbmNsdWRlIHBhZEgoMXJlbSk7XHJcbiAgICBwb3NpdGlvbiA6IGFic29sdXRlO1xyXG4gICAgd2lkdGg6MTAwJTtcclxuICAgIHotaW5kZXg6MTtcclxuICAgIHRvcDpjYWxjKDUwJSk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAudGhlbWUgJntcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XHJcbiAgICAgIGNvbG9yOiRiYXNlLWNvbG9yO1xyXG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIHRvcDowO1xyXG4gICAgICBib3R0b206MDtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgcGFkZGluZzozcmVtO1xyXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cykge1xyXG4gICAgICAgIHBhZGRpbmc6MXJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmX19zdWJ0aXRsZSB7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC1zaXplOjJyZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOjAuNXJlbTtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xyXG4gICAgICBmb250LXNpemU6IDEuNHJlbTtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXhzKSBhbmQgIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KXtcclxuICAgICAgZm9udC1zaXplOjEuNnJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC1zaXplOjMuMnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OjUwMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cykge1xyXG4gICAgICBmb250LXNpemU6IDJyZW07XHJcbiAgICB9XHJcbiAgICAudGhlbWUgJiB7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcclxuICAgICAgZm9udC1zaXplOjMuNnJlbTtcclxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xyXG4gICAgICB9XHJcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXhzKSBhbmQgIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KXtcclxuICAgICAgICBmb250LXNpemU6M3JlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmX192aXN1YWwge1xyXG4gICAgQGluY2x1ZGUgb2JqZWN0LWZpdChjb3Zlcik7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgfVxyXG4gICYudGhlbWUge1xyXG4gICAgQGluY2x1ZGUgY292ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2JhY2tncm91bmQvcXVhbmQtcGFydGlyLzcwMngzNjAuanBnKTtcclxuICB9XHJcbn1cclxuXHJcbiIsIi5ib3gtZGVjb25uZWN0ZXIge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgJl9faW5uZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjokcGlua0xpZ2h0O1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OnRhYmxlO1xyXG4gICAgd2lkdGg6MTAwJTtcclxuICAgIGhlaWdodDo1MHJlbTtcclxuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XHJcbiAgICAuY2Fyb3VzZWwgJntcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JlZW47XHJcbiAgICB9XHJcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBoZWlnaHQ6YXV0bztcclxuICAgIH1cclxuICB9XHJcbiAgJl9faGVhZGVyIHtcclxuICAgIHdpZHRoOjUwcmVtO1xyXG4gICAgcGFkZGluZzo2cmVtO1xyXG4gICAgZGlzcGxheTp0YWJsZS1jZWxsO1xyXG4gICAgdmVydGljYWwtYWxpZ246bWlkZGxlO1xyXG4gICAgY29sb3I6JHdoaXRlO1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAuY2Fyb3VzZWwgJntcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6XCJcIjtcclxuICAgICAgICBAaW5jbHVkZSBhcnJvdygkZGlyZWN0aW9uOiByaWdodCwgJHdpZHRoOiA2cmVtLCAkaGVpZ2h0OiAzcmVtLCAkY29sb3I6ICRncmVlbik7XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOjUwJTtcclxuICAgICAgICBsZWZ0OjEwMCU7XHJcbiAgICAgICAgei1pbmRleDoxO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICAgICAgZGlzcGxheTpub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgICAgcGFkZGluZzo0cmVtO1xyXG4gICAgICB3aWR0aDo0MCU7XHJcbiAgICB9XHJcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBwYWRkaW5nOjNyZW07XHJcbiAgICAgIHdpZHRoOmF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2FjdGlvbnMge1xyXG4gICAgdGV4dC1hbGlnbjpsZWZ0O1xyXG4gIH1cclxuICAmX19jb250ZW50IHtcclxuICAgIGRpc3BsYXk6dGFibGUtY2VsbDtcclxuICAgIHZlcnRpY2FsLWFsaWduOnRvcDtcclxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgIH1cclxuICB9XHJcbiAgJl9fbGlzdCB7XHJcbiAgICBoZWlnaHQ6MTAwJTtcclxuICAgIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgJixcclxuICAgICAgJi5zbGljay1zbGlkZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5zbGljay1saXN0LFxyXG4gICAgLnNsaWNrLXRyYWNrIHtcclxuICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2xpc3QtdmlzdWFsIHtcclxuICAgIGhlaWdodDoxMDAlO1xyXG4gIH1cclxuICAmX190aXRsZSB7XHJcbiAgICBmb250LXNpemU6My40cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xyXG4gIH1cclxuICAmX190ZXh0IHtcclxuICAgIGxpbmUtaGVpZ2h0OjEuNTtcclxuICAgIGZvbnQtc2l6ZToxLjZyZW07XHJcbiAgfVxyXG4gIC5zbGljay1kb3RzIHtcclxuICAgIGJvdHRvbToycmVtO1xyXG4gIH1cclxufVxyXG5cclxuLmJveC1kZWNvbm5lY3Rlci1pdGVtIHtcclxuICBkaXNwbGF5OmJsb2NrO1xyXG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gIGhlaWdodDoxMDAlO1xyXG4gICZfX2NvbnRlbnQge1xyXG4gICAgaGVpZ2h0OjEwMCU7XHJcbiAgICBjb2xvcjokd2hpdGU7XHJcbiAgICBwYWRkaW5nOjZyZW07XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgIC5jYXJvdXNlbCAme1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XHJcbiAgICAgICAgb3BhY2l0eTogLjE1O1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIHBhZGRpbmc6M3JlbTtcclxuICAgICAgaGVpZ2h0OjI1cmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX190aXRsZSB7XHJcbiAgICBmb250LXNpemU6NHJlbTtcclxuICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIHN0cm9uZyB7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdmlzdWFsIHtcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgICBoZWlnaHQ6MTAwJTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICByaWdodDowO1xyXG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICBmb250LWZhbWlseTogXCJvYmplY3QtZml0OiBjb3ZlclwiO1xyXG4gIH1cclxufVxyXG4iLCIuYm94LWRlc3RpbmF0aW9ucy1mYXZvcml0ZXMge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbn1cclxuLmJveC1kZXN0aW5hdGlvbnMtZmF2b3JpdGVzLWl0ZW0ge1xyXG4gIGRpc3BsYXk6YmxvY2s7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjokZ3JleTtcclxuICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICBjb2xvcjokd2hpdGU7XHJcbiAgbWFyZ2luLWJvdHRvbTozcmVtO1xyXG4gIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDpcIlwiO1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIHBhZGRpbmctYm90dG9tOjY2LjY2JTtcclxuICB9XHJcbiAgJl9faW5uZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OlwiXCI7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xyXG4gICAgICBvcGFjaXR5Oi4xNTtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgICB0b3A6MDtcclxuICAgICAgbGVmdDowO1xyXG4gICAgICB6LWluZGV4OjE7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2NvbnRlbnQge1xyXG4gICAgQGluY2x1ZGUgcGFkSCgxcmVtKTtcclxuICAgIHBvc2l0aW9uIDogYWJzb2x1dGU7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG4gICAgei1pbmRleDoxO1xyXG4gICAgdG9wOmNhbGMoNTAlKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICB9XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC1zaXplOjMuMnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OjUwMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cykge1xyXG4gICAgICBmb250LXNpemU6IDJyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3Zpc3VhbCB7XHJcbiAgICBAaW5jbHVkZSBvYmplY3QtZml0KGNvdmVyKTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICB9XHJcbn1cclxuXHJcbiIsIi5ib3gtc2Fpc29ucyB7XHJcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcclxuICBAaW5jbHVkZSBndXR0ZXIoMHB4KTtcclxufVxyXG4uYm94LXNhaXNvbnMtaXRlbSB7XHJcbiAgZGlzcGxheTpibG9jaztcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiRncmV5O1xyXG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gIGNvbG9yOiR3aGl0ZTtcclxuICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6XCJcIjtcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICBwYWRkaW5nLWJvdHRvbToxMDAlO1xyXG4gIH1cclxuICAmX19pbm5lciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6XCJcIjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XHJcbiAgICAgIG9wYWNpdHk6LjE1O1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICAgIHRvcDowO1xyXG4gICAgICBsZWZ0OjA7XHJcbiAgICAgIHotaW5kZXg6MTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fY29udGVudCB7XHJcbiAgICBAaW5jbHVkZSBwYWRIKDFyZW0pO1xyXG4gICAgcG9zaXRpb24gOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgICB6LWluZGV4OjE7XHJcbiAgICB0b3A6Y2FsYyg1MCUpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIH1cclxuICAmX190aXRsZSB7XHJcbiAgICBmb250LXNpemU6NHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OjcwMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgICAgIGZvbnQtc2l6ZTozLjJyZW07XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cykge1xyXG4gICAgICBmb250LXNpemU6IDIuNnJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdmlzdWFsIHtcclxuICAgIEBpbmNsdWRlIG9iamVjdC1maXQoY292ZXIpO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gIH1cclxufVxyXG5cclxuIiwiLmJveC1vbnBhcnRvdSB7XHJcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcclxuICAmX19saW5rIHtcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgfVxyXG4gICZfX2lubmVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmc6NXJlbTtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzKSB7XHJcbiAgICAgIHBhZGRpbmc6MnJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdmlzdWFsIHtcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgICBoZWlnaHQ6MTAwJTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICByaWdodDowO1xyXG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICBmb250LWZhbWlseTogXCJvYmplY3QtZml0OiBjb3ZlclwiO1xyXG4gIH1cclxuICAmX19jb250ZW50IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6MTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xyXG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICBwYWRkaW5nOjRyZW07XHJcbiAgICBtYXgtd2lkdGg6MzJyZW07XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cykge1xyXG4gICAgICBwYWRkaW5nOjJyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3RpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTo0LjRyZW07XHJcbiAgICBmb250LXdlaWdodDo3MDA7XHJcbiAgICBsaW5lLWhlaWdodDoxLjI7XHJcbiAgICBtYXJnaW4tYm90dG9tOjNyZW07XHJcbiAgICAvKlxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDM3NXB4KSB7XHJcbiAgICAgIGZvbnQtc2l6ZToyLjVyZW07XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14cykge1xyXG4gICAgICBmb250LXNpemU6Mi41cmVtO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcclxuICAgICAgZm9udC1zaXplOjMuNnJlbTtcclxuICAgIH1cclxuICAgICovXHJcbiAgfVxyXG4gICZfX3RleHQge1xyXG4gICAgZm9udC1zaXplOjEuNnJlbTtcclxuICAgIG1hcmdpbi1ib3R0b206M3JlbTtcclxuICAgIC8qXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgbWF4LXdpZHRoOjYwJTtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAzNzVweCkge1xyXG4gICAgICBmb250LXNpemU6MS4zcmVtO1xyXG4gICAgfVxyXG4gICAgKi9cclxuICB9XHJcbiAgJl9fYnRuIHtcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgfVxyXG59XHJcbiIsIi5ib3gtaWRlZXMtY2lyY3VpdCB7XHJcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcclxufVxyXG4iLCIuYm94LXRvcC1kZXN0aW5hdGlvbnMge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjokZ3JleUxpZ2h0O1xyXG4gICZfX2NvbnRlbnQge1xyXG4gICAgLm5vLXRvdWNoICYge1xyXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICAgIHdpZHRoOjQxJTtcclxuICAgICAgICBmbG9hdDpsZWZ0O1xyXG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3Zpc3VhbCB7XHJcbiAgICBib3JkZXI6MS4ycmVtIHNvbGlkICR3aGl0ZTtcclxuICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgdG9wOjA7XHJcbiAgICBsZWZ0OmNhbGMoMTAwJSArIDE1cHgpO1xyXG4gICAgei1pbmRleDoxO1xyXG4gICAgbWF4LXdpZHRoOiA0NS4ycmVtO1xyXG4gICAgZGlzcGxheTpub25lO1xyXG4gICAgYS5hY3RpdmUgJiB7XHJcbiAgICAgIC5uby10b3VjaCAmIHtcclxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XHJcbiAgICAgIG1heC13aWR0aDogNTkuNXJlbTtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnKSB7XHJcbiAgICAgIG1heC13aWR0aDogNjguN3JlbTtcclxuICAgIH1cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDpcIlwiO1xyXG4gICAgICBoZWlnaHQ6MTAwJTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xyXG4gIH1cclxuICAmX19saXN0IHtcclxuICAgIGNvbHVtbi1jb3VudDogNDtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBjb2x1bW4tY291bnQ6IDI7XHJcbiAgICB9XHJcbiAgICAubm8tdG91Y2ggJiB7XHJcbiAgICAgIGNvbHVtbi1jb3VudDogMjtcclxuICAgIH1cclxuICAgID4gbGkge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4gICAgICA+IGEge1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgLm5vLXRvdWNoICYge1xyXG4gICAgICAgICAgICBjb2xvcjokcGluaztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLmJveC1icm9jaHVyZSB7XHJcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcclxuICAmX19jb250ZW50IHtcclxuICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gIH1cclxuICAmX19saXN0IHtcclxuICAgIGJveC1zaGFkb3c6IDVweCA1cHggNXB4IDBweCByZ2JhKCRibGFjaywgMC4yKTtcclxuICAgICYuc2xpY2stZG90dGVkLnNsaWNrLXNsaWRlciB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206NnJlbTtcclxuICAgIH1cclxuICAgIC5zbGljay1kb3RzIHtcclxuICAgICAgYm90dG9tOi00cmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19jb250ZW50IHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDE0MzlweCkge1xyXG4gICAgICBwYWRkaW5nLXRvcDoycmVtO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGcpIHtcclxuICAgICAgcGFkZGluZy10b3A6NHJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdGV4dCB7XHJcbiAgICBAaW5jbHVkZSBtYXJIO1xyXG4gICAgbWF4LXdpZHRoOjQwcmVtO1xyXG4gIH1cclxufVxyXG5cclxuLnBhZ2UtYWNjdWVpbCAuYm94LWJyb2NodXJlIHtcclxuXHQmX19zdWJ0aXRsZSB7XHJcbiAgICBjb2xvcjogI2ZlYWM5NDtcclxuICB9XHJcblx0Jl9fdGl0bGUge1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIGZvbnQtZmFtaWx5OiBcIkRhbGEgTW9hXCIsc2VyaWY7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIH1cclxuXHJcblx0Jl9fY3RhIHtcclxuICAgIGNvbG9yOiAjZmVhYzk0O1xyXG4gIH1cclxufSIsIi5ib3gtZGl4LWJvbm5lcy1yYWlzb25zIHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG4gIC5oZWFkZXItYm94IHtcclxuICAgID4gLnN1YnRpdGxlIHtcclxuICAgICAgY29sb3I6JHBpbms7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2lubmVyIHtcclxuICAgIEBpbmNsdWRlIGNvdmVyO1xyXG4gICAgcGFkZGluZzo0cmVtIDFyZW07XHJcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICB9XHJcbiAgJl9fY29udGVudCB7XHJcbiAgICBAaW5jbHVkZSBtYXJIO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XHJcbiAgICBwYWRkaW5nOjRyZW0gNHJlbSAycmVtIDRyZW07XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XHJcbiAgICBtYXgtd2lkdGg6NzByZW07XHJcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzKSB7XHJcbiAgICAgIHBhZGRpbmc6M3JlbSAzcmVtIDFyZW0gM3JlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fbGlzdCB7XHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIGNvbHVtbi1jb3VudDogMjtcclxuICAgICAgY29sdW1uLWdhcCA6IDRyZW07XHJcbiAgICB9XHJcbiAgICA+IGxpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLmJveC1zZXJ2aWNlcy1wbHVzIHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG4gIC5oZWFkZXItYm94IHtcclxuICAgID4gLnN1YnRpdGxlIHtcclxuICAgICAgY29sb3I6JHBpbms7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2xpc3Qge1xyXG4gICAgQGluY2x1ZGUgcGFkSCgycmVtKTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB9XHJcbiAgJl9faXRlbSB7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgbWFyZ2luLXRvcDozcmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19yb3cge1xyXG4gICAgQGluY2x1ZGUgZ3V0dGVyKDMwcHgpO1xyXG4gIH1cclxufVxyXG5cclxuLmJveC1zZXJ2aWNlLXBsdXMge1xyXG4gICZfX2xpbmsge1xyXG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgfVxyXG4gICZfX2ljb24ge1xyXG4gICAgY29sb3I6JHBpbms7XHJcbiAgICBmb250LXNpemU6NnJlbTtcclxuICAgIHdpZHRoOjZyZW07XHJcbiAgICBoZWlnaHQ6NnJlbTtcclxuICAgIGRpc3BsYXkgOmlubGluZS1ibG9jaztcclxuICAgIEBpbmNsdWRlIGNlbnRlckljb247XHJcbiAgfVxyXG4gICZfX3RpdGxlIHtcclxuICAgIGZvbnQtd2VpZ2h0OjcwMDtcclxuICAgIGZvbnQtc2l6ZToxLjhyZW07XHJcbiAgICBtYXJnaW4tdG9wOjA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIH1cclxuICAmX190ZXh0IHtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgfVxyXG5cclxufVxyXG4iLCIuYm94LW9mZnJlcy1ldC1hdHRlbnRpb25zIHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG4gIGJhY2tncm91bmQtY29sb3I6JHBpbmtWZXJ5TGlnaHQ7XHJcbiAgLmhlYWRlci1ib3gge1xyXG4gICAgPiAuc3VidGl0bGUge1xyXG4gICAgICBjb2xvcjokcGluaztcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5ib3gtb2ZmcmVzLWV0LWF0dGVudGlvbnMtaXRlbSB7XHJcbiAgQGluY2x1ZGUgbWFySDtcclxuICBtYXgtd2lkdGg6IDEwMHJlbTtcclxuICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAmICsgJiB7XHJcbiAgICBtYXJnaW4tdG9wOjRyZW07XHJcbiAgfVxyXG4gICZfX3JvdyB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICBkaXNwbGF5OmZsZXg7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3Zpc3VhbCB7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19jb250ZW50IHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICBoZWlnaHQ6MTAwJTtcclxuICAgICAgcGFkZGluZzo0cmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX190aXRsZSB7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIGZvbnQtc2l6ZTogMnJlbTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMnJlbTtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206NHJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdGV4dCB7XHJcbiAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gIH1cclxufVxyXG4iLCIuYm94LXByZXNlbnRhdGlvbi1jaGVxdWUge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXlMaWdodDtcclxuICAmX19yb3cge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pe1xyXG4gICAgICBkaXNwbGF5OmZsZXg7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2NvbCB7XHJcbiAgICAmICsgJiB7XHJcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCl7XHJcbiAgICAgICAgbWFyZ2luLXRvcDo0cmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5ib3gtcHJlc2VudGF0aW9uLWNoZXF1ZS1pdGVtIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcclxuICBoZWlnaHQ6MTAwJTtcclxuICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAmX19pbm5lciB7XHJcbiAgICBwYWRkaW5nOjJyZW0gM3JlbSAzcmVtIDNyZW07XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSl7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOjlyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3RpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTozcmVtO1xyXG4gICAgY29sb3I6JGJsdWU7XHJcbiAgICBmb250LXdlaWdodDpib2xkO1xyXG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xyXG4gIH1cclxuICAmX19jb250ZW50IHtcclxuICAgIC50aXRsZSB7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XHJcbiAgICAgIG1hcmdpbi10b3A6MnJlbTtcclxuICAgICAgZm9udC1zaXplOjEuOHJlbTtcclxuICAgIH1cclxuICAgIHAge1xyXG4gICAgICBtYXJnaW4tdG9wOjA7XHJcbiAgICB9XHJcbiAgICAubGluayB7XHJcbiAgICAgIGNvbG9yOiRibHVlO1xyXG4gICAgICBmb250LXdlaWdodDo0MDA7XHJcbiAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgICBtYXJnaW4tdG9wOjJyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2J0biB7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pe1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgYm90dG9tOjA7XHJcbiAgICAgIGxlZnQ6MDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLmJveC1jb21tZW50LWNhLW1hcmNoZSB7XHJcbiAgQGluY2x1ZGUgY292ZXI7XHJcbiAgcGFkZGluZzoxMHJlbSAxcmVtO1xyXG4gIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICBAaW5jbHVkZSBwYWRWO1xyXG4gIH1cclxuICAmX19jb250ZW50IHtcclxuICAgIEBpbmNsdWRlIG1hckg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcclxuICAgIHBhZGRpbmc6NXJlbTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gICAgbWF4LXdpZHRoOjcwcmVtO1xyXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cykge1xyXG4gICAgICBwYWRkaW5nOjNyZW0gM3JlbSAxcmVtIDNyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3RleHQge1xyXG4gICAgbGluZS1oZWlnaHQ6MS41O1xyXG4gICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xyXG4gIH1cclxuICAmX19saW5rIHtcclxuICAgIGNvbG9yOiRibHVlO1xyXG4gICAgZm9udC13ZWlnaHQ6NDAwO1xyXG4gIH1cclxufVxyXG4iLCIuYm94LWNoZXF1ZXMtdHVubmVsIHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG4gICZfX2lubmVyIHtcclxuICAgIEBpbmNsdWRlIG1hckg7XHJcbiAgICBtYXgtd2lkdGg6ODByZW07XHJcbiAgfVxyXG4gICZfX3N1YnRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTozcmVtO1xyXG4gICAgY29sb3I6JGJsdWU7XHJcbiAgICBtYXJnaW4tYm90dG9tOjNyZW07XHJcbiAgICBsaW5lLWhlaWdodDoxLjE7XHJcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBmb250LXNpemU6Mi44cmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19yZWNhcCB7XHJcbiAgICBtYXgtd2lkdGg6NTZyZW07XHJcbiAgfVxyXG4gICZfX2NiLXRleHQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xyXG4gICAgZm9udC1zaXplOjJyZW07XHJcbiAgfVxyXG4gICZfX2NiLWxpc3Qge1xyXG4gICAgQGluY2x1ZGUgbWFySDtcclxuICAgIG1heC13aWR0aDo2MHJlbTtcclxuICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gICAgaW1nIHtcclxuICAgICAgd2lkdGg6MTJyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2NiLXJvdyB7XHJcbiAgICBAaW5jbHVkZSBndXR0ZXIoMTBweCk7XHJcbiAgfVxyXG59XHJcblxyXG4ubGlnbmUtcmVjYXAge1xyXG4gIG1hcmdpbi1ib3R0b206NHJlbTtcclxuICAmX19oZWFkZXIge1xyXG4gICAgZGlzcGxheTp0YWJsZTtcclxuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG4gICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyZXk7XHJcbiAgfVxyXG4gICZfX2xhYmVsIHtcclxuICAgIGRpc3BsYXk6dGFibGUtY2VsbDtcclxuICAgIGZvbnQtd2VpZ2h0OjcwMDtcclxuICAgIGZvbnQtc2l6ZToycmVtO1xyXG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcclxuICB9XHJcbiAgJl9fcHJpeCB7XHJcbiAgICBkaXNwbGF5OnRhYmxlLWNlbGw7XHJcbiAgICBmb250LXNpemU6MnJlbTtcclxuICAgIHRleHQtYWxpZ246cmlnaHQ7XHJcbiAgICB3aWR0aDo4cmVtO1xyXG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcclxuICB9XHJcbiAgJl9fY29udGVudCB7XHJcbiAgICBtYXJnaW4tdG9wOjJyZW07XHJcbiAgICBmb250LXNpemU6MnJlbTtcclxuICAgIC5saW5rIHtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgZm9udC1zaXplOjEuNnJlbTtcclxuICAgICAgbWFyZ2luLXRvcDoxcmVtO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIuYm94LWRkdiB7XHJcbiAgbWFyZ2luLXRvcDozcmVtO1xyXG4gIC5wYWdlLWRkdi1saWdodCAmIHtcclxuICAgIG1hcmdpbi10b3A6MXJlbTtcclxuICAgIG1hcmdpbi1ib3R0b206NHJlbTtcclxuICAgIC5hY3Rpb25zIHtcclxuICAgICAgbWFyZ2luLXRvcDoycmVtO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnBhZ2UtZGR2LXBheXMgJiB7XHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIG1hcmdpbi10b3A6MDtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB0b3A6IC02cmVtO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xyXG4gICAgICB0b3A6IC0xNXJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9faW5uZXIge1xyXG4gICAgQGluY2x1ZGUgbWFySDtcclxuICAgIG1heC13aWR0aDo4MHJlbTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xyXG4gICAgLnBhZ2UtZGR2LWxpZ2h0ICZ7XHJcbiAgICAgIG1heC13aWR0aDoxMDByZW07XHJcbiAgICB9XHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLWxnKSB7XHJcbiAgICAgIG1heC13aWR0aDoxMDByZW07XHJcbiAgICB9XHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIHBhZGRpbmc6MnJlbTtcclxuICAgICAgLnBhZ2UtZGR2LWNvbmZpcm1hdGlvbiAmIHtcclxuICAgICAgICBwYWRkaW5nOjJyZW0gNnJlbSA2cmVtIDZyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJl9fc3VidGl0bGUge1xyXG4gICAgZm9udC1zaXplOjNyZW07XHJcbiAgICBjb2xvcjokYmx1ZTtcclxuICAgIG1hcmdpbi1ib3R0b206M3JlbTtcclxuICAgIGxpbmUtaGVpZ2h0OjEuMTtcclxuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIGZvbnQtc2l6ZToyLjhyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3RleHQge1xyXG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xyXG4gIH1cclxuICAmX19vYmxpZ2F0b2lyZSB7XHJcbiAgICBmb250LXNpemU6MS4ycmVtO1xyXG4gICAgdGV4dC1hbGlnbjpyaWdodDtcclxuICAgIG1hcmdpbi10b3A6MnJlbTtcclxuICAgIG1hcmdpbi1ib3R0b206NHJlbTtcclxuICAgIC5wYWdlLWRkdi1saWdodCAmIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuICAgICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC0ycmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX21lbnRpb25zIHtcclxuICAgIGZvbnQtc2l6ZToxLjJyZW07XHJcbiAgICAucGFnZS1kZHYtbGlnaHQgJiB7XHJcbiAgICAgIGZvbnQtc2l6ZToxcmVtO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmJveC1kZHYtbWVhIHtcclxuICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICBjb2xvcjokd2hpdGU7XHJcbiAgZGlzcGxheTpibG9jaztcclxuICBtYXJnaW4tYm90dG9tOjRyZW07XHJcbiAgJjpiZWZvcmUge1xyXG4gICAgY29udGVudDpcIlwiO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XHJcbiAgICBvcGFjaXR5Oi4yO1xyXG4gICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG4gICAgaGVpZ2h0OjEwMCU7XHJcbiAgICB0b3A6MDtcclxuICAgIGxlZnQ6MDtcclxuICB9XHJcbiAgJl9fdmlzdWFsIHtcclxuICAgIEBpbmNsdWRlIG9iamVjdC1maXQoY292ZXIpO1xyXG4gICAgd2lkdGg6MTAwJTtcclxuICAgIGhlaWdodDozNnJlbTtcclxuICB9XHJcbiAgJl9fY29udGVudCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzAlKTtcclxuICAgICBAaW5jbHVkZSBwYWRIKDJyZW0pO1xyXG4gIH1cclxuICAmX190aXRsZSB7XHJcbiAgICBmb250LXNpemU6Mi41cmVtO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IC41cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6NTAwO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xyXG4gICAgY29sb3I6JHdoaXRlO1xyXG4gICAgbWFyZ2luLWJvdHRvbToxLjVyZW07XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cykge1xyXG4gICAgICBmb250LXNpemU6MnJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fc3VidGl0bGUtYWxwaGEge1xyXG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS0yO1xyXG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gICAgZm9udC13ZWlnaHQ6MzAwO1xyXG4gICAgY29sb3I6JHdoaXRlO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IC4ycmVtO1xyXG4gICAgZm9udC1zaXplOjIuMnJlbTtcclxuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIGZvbnQtc2l6ZToycmVtO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xyXG4gICAgICBmb250LXNpemU6Mi44cmVtO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uZGR2LWNvbmZpcm1hdGlvbi1oZWFkZXIge1xyXG4gIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gIG1hcmdpbi1ib3R0b206MnJlbTtcclxufVxyXG4uZGR2LWNvbmZpcm1hdGlvbi10aXRsZSB7XHJcbiAgZm9udC1zaXplOjRyZW07XHJcbiAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gIG1hcmdpbi1ib3R0b206MnJlbTtcclxuICAmX19pY29uIHtcclxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgZm9udC1zaXplOjZyZW07XHJcbiAgICBoZWlnaHQ6N3JlbTtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgICAgbGVmdDogNTAlO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5ib3gtcGRmIHtcclxuICB0ZXh0LWFsaWduOnJpZ2h0O1xyXG4gIG1hcmdpbi1ib3R0b206NHJlbTtcclxuICAucGFnZS1kZHYtbGlnaHQgJiB7XHJcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XHJcbiAgfVxyXG4gICZfX2NvbnRlbnQge1xyXG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xyXG4gIH1cclxuICAmX19wc2V1ZG8tbGluayB7XHJcbiAgICBmb250LXdlaWdodDo3MDA7XHJcbiAgICBmb250LXNpemU6MS44cmVtO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2Zvcm1hdCB7XHJcbiAgICBmb250LXNpemU6MS4ycmVtO1xyXG4gIH1cclxuICAmX192aXN1YWwge1xyXG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICB3aWR0aDo3cmVtO1xyXG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcclxuICB9XHJcbn1cclxuIiwiLmJveC1ub3MtYWdlbmNlcyB7XHJcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcclxuICAmX19yb3cge1xyXG4gICAgQGluY2x1ZGUgZ3V0dGVyKDUwcHgpO1xyXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcclxuICAgICAgQGluY2x1ZGUgZ3V0dGVyKDMwcHgpO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgICAgQGluY2x1ZGUgZ3V0dGVyKDE1cHgpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uYm94LW5vcy1hZ2VuY2VzLWl0ZW0ge1xyXG4gIEBpbmNsdWRlIG1hckg7XHJcbiAgbWFyZ2luLWJvdHRvbTozcmVtO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAmX192aXN1YWwge1xyXG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xyXG4gIH1cclxuICAmX190aXRsZSB7XHJcbiAgICBmb250LXNpemU6MS43cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBwYWRkaW5nLWJvdHRvbToxcmVtO1xyXG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6XCJcIjtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgd2lkdGg6MXJlbTtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIGhlaWdodDoycHg7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGJhc2UtY29sb3I7XHJcbiAgICAgIHRvcDoxMDAlO1xyXG4gICAgICBsZWZ0OjUwJTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIuYm94LXNlcnZpY2UtY2xpZW50IHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG4gICZfX2lubmVyIHtcclxuICAgIHBhZGRpbmc6NHJlbTtcclxuICAgIG1pbi1oZWlnaHQ6NDByZW07XHJcbiAgICBAaW5jbHVkZSBjb3ZlcigwLDApO1xyXG4gIH1cclxuICAmX19jb250ZW50IHtcclxuXHJcbiAgfVxyXG4gICZfX3RpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTozcmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgbGluZS1oZWlnaHQ6MS4yO1xyXG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcclxuICAgICAgZm9udC1zaXplOjMuNnJlbTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX3RleHQge1xyXG4gICAgd2lkdGg6MzVyZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOjNyZW07XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgbWF4LXdpZHRoOjEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2J0biB7XHJcbiAgICBmb250LXdlaWdodDo3MDA7XHJcbiAgICBAaW5jbHVkZSBnZW5lcmljQnV0dG9uO1xyXG4gICAgYm9yZGVyOjFweCBzb2xpZCAkYmFzZS1jb2xvcjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgZm9udC1zaXplOjEuNHJlbVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIuYm94LXByZXNzZS1ldC10ZWNobmlxdWUge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgIC5yb3cge1xyXG4gICAgICAmID4gKiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDo0cmVtO1xyXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDowO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmJveC1wcmVzc2UtZXQtdGVjaG5pcXVlLWl0ZW0ge1xyXG4gIEBpbmNsdWRlIGNvdmVyO1xyXG4gIGRpc3BsYXk6YmxvY2s7XHJcbiAgaGVpZ2h0OjIycmVtO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLWxnKSB7XHJcbiAgICBoZWlnaHQ6MjhyZW07XHJcbiAgfVxyXG4gICY6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIG1hcmdpbi1yaWdodDogLTAuNTBlbTsgLyogc3BhY2Ugd2lkdGggKi9cclxuICB9XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgcGFkZGluZzoxcmVtIDZyZW07XHJcbiAgICBmb250LXdlaWdodDo3MDA7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gIH1cclxuICAmX19saW5rIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICB9XHJcbn1cclxuIiwiLmJveC1hZ2VuY2UtYWNjZXMge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgJl9faWZyYW1lIHtcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgICBib3JkZXI6bm9uZTtcclxuICB9XHJcbn1cclxuIiwiLmJveC1hZ2VuY2UtdmlzaXRlIHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG4gICZfX2lmcmFtZSB7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG4gICAgYm9yZGVyOm5vbmU7XHJcbiAgfVxyXG59XHJcbiIsIi5ib3gtYWdlbmNlLWV2ZW5lbWVudHMge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjokZ3JleUxpZ2h0O1xyXG59XHJcbi5ib3gtYWdlbmNlLWV2ZW5lbWVudHMtaXRlbSB7XHJcbiAgQGluY2x1ZGUgbWFySDtcclxuICBtYXgtd2lkdGg6IDEwMHJlbTtcclxuICAmICsgJiB7XHJcbiAgICBtYXJnaW4tdG9wOjhyZW07XHJcbiAgfVxyXG4gICZfX3JvdyB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xyXG4gICAgICBAaW5jbHVkZSBndXR0ZXIoMzBweCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3Zpc3VhbCB7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX190aGVtZSB7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC1zaXplOjEuOHJlbTtcclxuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XHJcbiAgfVxyXG4gICZfX3RpdHJlIHtcclxuICAgIGZvbnQtc2l6ZTogMi42cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuXHJcbiAgfVxyXG4gICZfX2luZm9zIHtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgY29sb3I6JGJsdWU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XHJcbiAgfVxyXG4gICZfX3RleHQge1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgIG1hcmdpbi10b3A6MDtcclxuICB9XHJcbn1cclxuIiwiLmJveC1wcmVzZW50YXRpb24tbWFyaWFnZSB7XHJcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleUxpZ2h0O1xyXG4gICZfX3JvdyB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSl7XHJcbiAgICAgIGRpc3BsYXk6ZmxleDtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fY29sIHtcclxuICAgICYgKyAmIHtcclxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KXtcclxuICAgICAgICBtYXJnaW4tdG9wOjRyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLmJveC1wcmVzZW50YXRpb24tbWFyaWFnZS1pdGVtIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcclxuICBoZWlnaHQ6MTAwJTtcclxuICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAmX19pbm5lciB7XHJcbiAgICBwYWRkaW5nOjJyZW0gM3JlbSAzcmVtIDNyZW07XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSl7XHJcbiAgICAgICYud2l0aENUQSB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206OXJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmX190aXRsZSB7XHJcbiAgICBmb250LXNpemU6M3JlbTtcclxuICAgIGNvbG9yOiRibHVlO1xyXG4gICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xyXG4gICAgbGluZS1oZWlnaHQ6MTtcclxuICAgIHNwYW4ge1xyXG4gICAgICBmb250LXdlaWdodDo0MDA7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3N1YnRpdGxlIHtcclxuICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fY29udGVudCB7XHJcbiAgICAudGl0bGUge1xyXG4gICAgICBmb250LXdlaWdodDpib2xkO1xyXG4gICAgICBtYXJnaW4tdG9wOjJyZW07XHJcbiAgICAgIGZvbnQtc2l6ZToxLjhyZW07XHJcbiAgICB9XHJcbiAgICBwIHtcclxuICAgICAgbWFyZ2luLXRvcDowO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOjJyZW07XHJcbiAgICB9XHJcbiAgICB1bCB7XHJcbiAgICB9XHJcbiAgICBsaSB7XHJcbiAgICAgIHRleHQtaW5kZW50OjFyZW07XHJcbiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDpcIlwiO1xyXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgd2lkdGg6MC4zcmVtO1xyXG4gICAgICAgIGhlaWdodDowLjNyZW07XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czo1MCU7XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmFzZS1jb2xvcjtcclxuICAgICAgICB0b3A6MC44cmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAubGluayB7XHJcbiAgICAgIGNvbG9yOiRibHVlO1xyXG4gICAgICBmb250LXdlaWdodDo0MDA7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2J0biB7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pe1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgYm90dG9tOjA7XHJcbiAgICAgIGxlZnQ6MDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLmJveC1ib25uZXMtcmFpc29ucy1tYXJpYWdlIHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG4gICZfX2xpbmsge1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICB9XHJcbiAgJl9fcm93IHtcclxuICAgIEBpbmNsdWRlIGd1dHRlcig1MHB4KTtcclxuXHJcbiAgfVxyXG59XHJcbi5ib3gtYm9ubmVzLXJhaXNvbnMtbWFyaWFnZS1pdGVtIHtcclxuICBAaW5jbHVkZSBtYXJIO1xyXG4gIG1hcmdpbi1ib3R0b206M3JlbTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgJl9fdmlzdWFsIHtcclxuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcclxuICAgIGJvcmRlci1yYWRpdXM6NTAlO1xyXG4gICAgbWF4LXdpZHRoOiAxOHJlbTtcclxuICB9XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC1zaXplOjJyZW07XHJcbiAgfVxyXG59XHJcbiIsIi5ib3gtYXZhbnRhZ2VzIHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG4gICZfX2lubmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6JHBpbmtMaWdodDtcclxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTp0YWJsZTtcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgICBoZWlnaHQ6NTByZW07XHJcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xyXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgaGVpZ2h0OmF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2hlYWRlciB7XHJcbiAgICB3aWR0aDo1MHJlbTtcclxuICAgIHBhZGRpbmc6NnJlbTtcclxuICAgIGRpc3BsYXk6dGFibGUtY2VsbDtcclxuICAgIHZlcnRpY2FsLWFsaWduOm1pZGRsZTtcclxuICAgIGNvbG9yOiR3aGl0ZTtcclxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgICAgcGFkZGluZzo0cmVtO1xyXG4gICAgICB3aWR0aDo0MCU7XHJcbiAgICB9XHJcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBwYWRkaW5nOjNyZW07XHJcbiAgICAgIHdpZHRoOmF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2FjdGlvbnMge1xyXG4gICAgdGV4dC1hbGlnbjpsZWZ0O1xyXG4gIH1cclxuICAmX19jb250ZW50IHtcclxuICAgIGRpc3BsYXk6dGFibGUtY2VsbDtcclxuICAgIHZlcnRpY2FsLWFsaWduOnRvcDtcclxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgIH1cclxuICB9XHJcbiAgJl9fbGlzdCB7XHJcbiAgICBmb250LXNpemU6MS44cmVtO1xyXG4gICAgbGkgKyBsaSB7XHJcbiAgICAgIG1hcmdpbi10b3A6MnJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fbGlzdC12aXN1YWwge1xyXG4gICAgaGVpZ2h0OjEwMCU7XHJcbiAgfVxyXG4gICZfX3RpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTozLjRyZW07XHJcbiAgICBmb250LXdlaWdodDo3MDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XHJcbiAgfVxyXG4gICZfX3RleHQge1xyXG4gICAgbGluZS1oZWlnaHQ6MS41O1xyXG4gICAgZm9udC1zaXplOjEuOHJlbTtcclxuICB9XHJcbn1cclxuXHJcbi5ib3gtYXZhbnRhZ2VzLWl0ZW0ge1xyXG4gIGRpc3BsYXk6YmxvY2s7XHJcbiAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgaGVpZ2h0OjEwMCU7XHJcbiAgJl9fY29udGVudCB7XHJcbiAgICBoZWlnaHQ6MTAwJTtcclxuICAgIGNvbG9yOiR3aGl0ZTtcclxuICAgIHBhZGRpbmc6NnJlbTtcclxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgcGFkZGluZzozcmVtO1xyXG4gICAgICBoZWlnaHQ6MjVyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3Zpc3VhbCB7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG4gICAgaGVpZ2h0OjEwMCU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgcmlnaHQ6MDtcclxuICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgZm9udC1mYW1pbHk6IFwib2JqZWN0LWZpdDogY292ZXJcIjtcclxuICB9XHJcbn1cclxuIiwiLmJveC1wYXJ0aWNpcGF0aW9uLWNhZGVhdSB7XHJcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcclxuICAmX19pbm5lciB7XHJcbiAgICBAaW5jbHVkZSBtYXJIO1xyXG4gICAgbWF4LXdpZHRoOjgwcmVtO1xyXG4gIH1cclxuICAmX19oZWFkZXIge1xyXG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcclxuICB9XHJcbiAgJl9faGVhZGVyLXRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTozLjZyZW07XHJcbiAgICBmb250LXdlaWdodDo0MDA7XHJcbiAgICBjb2xvcjokYmx1ZTtcclxuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBmb250LXNpemU6My4ycmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19oZWFkZXItc3VidGl0bGUge1xyXG4gICAgZm9udC1zaXplOjEuNHJlbTtcclxuICB9XHJcbiAgJl9fYmVuZWZpY2lhaXJlIHtcclxuICAgIGZvbnQtc2l6ZToxLjJlbTtcclxuICAgIG1hcmdpbi1ib3R0b206NXJlbTtcclxuICAgIGxpICsgbGkge1xyXG4gICAgICBtYXJnaW4tdG9wOjAuNXJlbTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLmJveC1lc3BhY2UtY2xpZW50IHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG4gICZfX2NvbCB7XHJcbiAgICAmICsgJiB7XHJcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCl7XHJcbiAgICAgICAgbWFyZ2luLXRvcDo0cmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2Zvb3RlciB7XHJcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgIGNvbG9yOiRibHVlO1xyXG4gICAgbWFyZ2luLXRvcDo0cmVtO1xyXG4gIH1cclxufVxyXG4uYm94LWVzcGFjZS1jbGllbnQtaXRlbSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXlMaWdodDtcclxuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pe1xyXG4gICAgbWFyZ2luLXRvcDotMTVyZW07XHJcbiAgICAubW9kYWwgJiB7XHJcbiAgICAgIG1hcmdpbi10b3A6MDtcclxuICAgIH1cclxuICB9XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpe1xyXG4gICAgbWFyZ2luLXRvcDotMjByZW07XHJcbiAgICAubW9kYWwgJiB7XHJcbiAgICAgIG1hcmdpbi10b3A6MDtcclxuICAgIH1cclxuICB9XHJcbiAgJl9faW5uZXIge1xyXG4gICAgcGFkZGluZzoycmVtIDNyZW0gM3JlbSAzcmVtO1xyXG4gIH1cclxuICAmX190aXRsZSB7XHJcbiAgICBmb250LXNpemU6M3JlbTtcclxuICAgIGZvbnQtd2VpZ2h0OjcwMDtcclxuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBzcGFuIHtcclxuICAgICAgZm9udC13ZWlnaHQ6NDAwO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19zdWJ0aXRsZSB7XHJcbiAgICBmb250LXdlaWdodDo3MDA7XHJcbiAgICBmb250LXNpemU6Mi40cmVtO1xyXG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xyXG4gIH1cclxuICAmX190ZXh0IHtcclxuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcclxuICB9XHJcbiAgJl9fY29udGVudCB7XHJcbiAgICAudGl0bGUge1xyXG4gICAgICBmb250LXdlaWdodDpib2xkO1xyXG4gICAgICBtYXJnaW4tdG9wOjJyZW07XHJcbiAgICAgIGZvbnQtc2l6ZToxLjhyZW07XHJcbiAgICB9XHJcbiAgICBwIHtcclxuICAgICAgbWFyZ2luLXRvcDowO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOjJyZW07XHJcbiAgICB9XHJcbiAgICAubGluay1hbHBoYSB7XHJcbiAgICAgIG1hcmdpbi10b3A6MC41cmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19idG4ge1xyXG4gICAgd2lkdGg6MTAwJTtcclxuICB9XHJcbiAgJl9fbGluay1ib3R0b20ge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC1zaXplOjEuOHJlbTtcclxuICB9XHJcbiAgJl9fbGlzdCB7XHJcbiAgICBsaTpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibHVlO1xyXG4gICAgfVxyXG4gICAgbGkgKyBsaSB7XHJcbiAgICAgIG1hcmdpbi10b3A6MXJlbTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLmJveC1lbnZpZXMtcGFyLXBheXMge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgJl9faW5uZXIge1xyXG4gICAgQGluY2x1ZGUgY292ZXI7XHJcbiAgICBwYWRkaW5nOjE0cmVtIDFyZW0gNnJlbSAxcmVtO1xyXG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLWxnKSB7XHJcbiAgICAgIEBpbmNsdWRlIHBhZFYoMTVyZW0pO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19jb250ZW50IHtcclxuICAgIEBpbmNsdWRlIG1hckg7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgfVxyXG4gICZfX3RpdGxlIHtcclxuICAgIEBpbmNsdWRlIHBhZEgoMnJlbSk7XHJcbiAgICBmb250LXNpemU6NHJlbTtcclxuICAgIGxldHRlci1zcGFjaW5nOiAuNXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OjUwMDtcclxuICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcclxuICAgIGNvbG9yOiR3aGl0ZTtcclxuICAgIG1hcmdpbi1ib3R0b206M3JlbTtcclxuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIGZvbnQtc2l6ZTpyZW0oMzApO1xyXG4gICAgICBsZXR0ZXItc3BhY2luZzogLjJyZW07XHJcbiAgICB9XHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTo1cmVtO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1sZykge1xyXG4gICAgICBmb250LXNpemU6IDZyZW07XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5ib3gtc2Fpc29ucyB7XHJcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcclxuICBwYWRkaW5nLWJvdHRvbTowO1xyXG59XHJcblxyXG5cclxuLmJveC1zYWlzb24taXRlbSB7XHJcbiAgJHJhdGlvIDogcGVyY2VudGFnZSg1MDYgLyA1MDYpO1xyXG4gIEBpbmNsdWRlIG1hckg7XHJcblxyXG4gIG1hcmdpbi10b3A6OHJlbTtcclxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgIG1hcmdpbi10b3A6IDRyZW07XHJcbiAgfVxyXG4gIFxyXG4gICZfX3JvdyB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xyXG4gICAgICBAaW5jbHVkZSBndXR0ZXIoMzBweCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX192aXN1YWwtY29udGFpbmVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG4gICAgfVxyXG4gICAgJjphZnRlcntcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiRyYXRpbztcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdmlzdWFsLXdyYXBwZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB9XHJcbiAgJl9fdmlzdWFsIHtcclxuICAgIEBpbmNsdWRlIG9iamVjdC1maXQoY292ZXIpO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gIH1cclxuICAmX190aXRsZSB7XHJcbiAgICBmb250LXNpemU6IDNyZW07XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4gIH1cclxuICAmX190ZXh0IHtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XHJcbiAgICBtYXJnaW4tYm90dG9tOjRyZW07XHJcbiAgICBtYXJnaW4tdG9wOjNyZW07XHJcbiAgICBhIHtcclxuICAgICAgQGluY2x1ZGUgbGluay1hbHBoYTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fY3RhIHtcclxuICAgIEBpbmNsdWRlIGJ0bkZyaWVuZDtcclxuICAgIG1hcmdpbi10b3A6MnJlbTtcclxuICB9XHJcbiAgJl9fY29uZGl0aW9ucyB7XHJcbiAgICBjb2xvcjokYWxwaGEtY29sb3I7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLjFyZW07XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIH1cclxufVxyXG5cclxuLmJveC1zYWlzb24tbW9pcyB7XHJcbiAgJHJhdGlvIDogKDUwNiAvIDUwNikgKiAxMDA7XHJcbiAgQGluY2x1ZGUgbWFySDtcclxuICBcclxuICAmX19yb3cge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcclxuICAgICAgQGluY2x1ZGUgZ3V0dGVyKDMwcHgpO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19pdGVtIHtcclxuICAgICYgKyAmIHtcclxuICAgICAgbWFyZ2luLXRvcDo4cmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX192aXN1YWwge1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIEBpbmNsdWRlIG1hclYoMnJlbSk7XHJcbiAgfVxyXG4gICZfX3RpdGxlIHtcclxuICAgIEBpbmNsdWRlIG1hclYoMnJlbSk7XHJcbiAgICBmb250LXNpemU6IDNyZW07XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICB9XHJcbiAgJl9fdGV4dCB7XHJcbiAgICBAaW5jbHVkZSBtYXJIO1xyXG4gICAgQGluY2x1ZGUgbWFyVigycmVtKTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgICB0ZXh0LWFsaWduOmp1c3RpZnk7XHJcblxyXG4gICAgYSB7XHJcbiAgICAgIEBpbmNsdWRlIGxpbmstYWxwaGE7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2FjdGlvbnMge1xyXG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgfVxyXG4gICZfX2N0YSB7XHJcbiAgICBAaW5jbHVkZSBidG5GcmllbmQ7XHJcbiAgfVxyXG59IiwiLmJveC1ub3MtYnJvY2h1cmVzIHtcclxuICBwYWRkaW5nLXRvcDogNHJlbTtcclxuICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcclxuICBwYWRkaW5nLXRvcDogMDtcclxufVxyXG5cclxuLmJveC1ub3MtYnJvY2h1cmVzX19yb3cge1xyXG4gIG1hcmdpbi1sZWZ0OiAtNTBweDtcclxuICBtYXJnaW4tcmlnaHQ6IC01MHB4O1xyXG59XHJcblxyXG4uYm94LW5vcy1icm9jaHVyZXNfX3JvdyA+ICoge1xyXG4gIHBhZGRpbmctbGVmdDogNTBweDtcclxuICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogMTM5OXB4KSB7XHJcbiAgLmJveC1ub3MtYnJvY2h1cmVzX19yb3cge1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0zMHB4O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAtMzBweDtcclxuICB9XHJcbiAgLmJveC1ub3MtYnJvY2h1cmVzX19yb3cgPiAqIHtcclxuICAgIHBhZGRpbmctbGVmdDogMzBweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAuYm94LW5vcy1icm9jaHVyZXNfX3JvdyB7XHJcbiAgICBtYXJnaW4tbGVmdDogLTE1cHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xyXG4gIH1cclxuICAuYm94LW5vcy1icm9jaHVyZXNfX3JvdyA+ICoge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogMTVweDtcclxuICB9XHJcbn1cclxuXHJcbi5ib3gtbm9zLWJyb2NodXJlcyAuYm94LW5vcy1icm9jaHVyZXNfX3JvdyA+ICoge1xyXG4gIHBhZGRpbmctbGVmdDogMTVweCAhaW1wb3J0YW50O1xyXG4gIHBhZGRpbmctcmlnaHQ6IDE1cHggIWltcG9ydGFudDtcclxufVxyXG5cclxuLmJveC1ub3MtYnJvY2h1cmVzLWl0ZW0ge1xyXG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gIG1hcmdpbi1yaWdodDogYXV0bztcclxuICBtYXJnaW4tYm90dG9tOiA2cmVtO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLmJveC1ub3MtYnJvY2h1cmVzLWl0ZW1fX2xpbmsgZGl2IHtcclxuICBiYWNrZ3JvdW5kOiAjZGJkZGUzO1xyXG4gIHBhZGRpbmc6IDUuNXJlbSAwIDRyZW07XHJcbn1cclxuXHJcbi5ib3gtbm9zLWJyb2NodXJlcy1pdGVtX192aXN1YWwge1xyXG4gIGJveC1zaGFkb3c6IDVweCA1cHggNXB4ICM4YThhOGE7XHJcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxufVxyXG5cclxuLmJveC1ub3MtYnJvY2h1cmVzLWl0ZW1fX3RpdGxlIHtcclxuICBmb250LXNpemU6IDEuN3JlbTtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xyXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XHJcbiAgbWFyZ2luLXRvcDogMnJlbTtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5ib3gtbm9zLWJyb2NodXJlcy1pdGVtX190ZXh0IHtcclxuICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG59XHJcblxyXG4uYm94LW5vcy1icm9jaHVyZXMtaXRlbV9fdGV4dCAubGluay1hbHBoYSB7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAuYm94LW5vcy1icm9jaHVyZXMtaXRlbSAuYnV0dG9uLWFscGhhIHtcclxuICAgIGZvbnQtc2l6ZTogMS43cmVtO1xyXG4gICAgcGFkZGluZzogMXJlbTtcclxuICB9XHJcbn1cclxuXHJcbi8qQ29tbWFuZGUqL1xyXG5ib2R5LmJyb2NodXJlcyAubW9kYWwge1xyXG4gIHRvcDogYXV0bztcclxuICBsZWZ0OiBhdXRvO1xyXG59XHJcbmJvZHkuYnJvY2h1cmVzIC5tb2RhbC1hbHBoYSB7XHJcbiAgcGFkZGluZy1yaWdodDogMTdweDtcclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XHJcbiAgYm9keS5icm9jaHVyZXMgLm1vZGFsLWFscGhhIHtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgfVxyXG59IiwiLmJveC1sZS1mb29kaW5nLWl0ZW0ge1xyXG4gIHBhZGRpbmctdG9wOiA0cmVtO1xyXG4gIHBhZGRpbmctYm90dG9tOiA0cmVtO1xyXG4gIG1hcmdpbjogMCAxcmVtO1xyXG59XHJcblxyXG4uYm94LWxlLWZvb2RpbmctaXRlbV9fdGl0bGUge1xyXG4gIGNvbG9yOiAjMDA4MmFkO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICBmb250LXNpemU6IDJyZW07XHJcbiAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICBtYXJnaW4tdG9wOiAxcmVtO1xyXG59XHJcblxyXG4uYm94LWxlLWZvb2RpbmctaXRlbV9fc3VidGl0bGUge1xyXG4gIGZvbnQtc2l6ZTogM3JlbTtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG59XHJcblxyXG4uYm94LWxlLWZvb2RpbmctaXRlbV9fbGllbiB7XHJcbiAgY29sb3I6ICMwMDgyYWQ7XHJcbn0iLCIucGFnZS1ub3MtbWFpc29ucyAjc3RpY2t5LW5hdi13cmFwcGVyIGltZ1xyXG57XHJcbiAgcGFkZGluZy10b3A6IDJyZW07XHJcbn1cclxuLnBhZ2Utbm9zLW1haXNvbnMuc3RpY2t5LW5hdi1pcy1maXhlZCAuc3RpY2t5LW5hdl9faXRlbSBpbWcsIFxyXG4ucGFnZS1ub3MtbWFpc29ucy5zdGlja3ktbmF2LWlzLWZpeGVkIC5zdGlja3ktbmF2X19pdGVtIGJyXHJcbntcclxuICBkaXNwbGF5Om5vbmUgIWltcG9ydGFudDtcclxufVxyXG4iLCIucGFnZS1sYS1wcmVzc2UtZW4tcGFybGUgLmRvY3VtZW50XHJcbntcclxuICBwYWRkaW5nOiAxNXB4IDAgMDtcclxufSIsIi5ib3gtdm95YWdlLXN1ci1tZXN1cmUtaW50cm8sXHJcbi5ib3gtdm95YWdlLXN1ci1tZXN1cmUtdmlwLFxyXG4uYm94LXZveWFnZS1zdXItbWVzdXJlLXRvdXJpc21lLFxyXG4uYm94LXZveWFnZS1zdXItbWVzdXJlLWNvbXBlbnNhdGlvbixcclxuLmJveC12b3lhZ2Utc3VyLW1lc3VyZS1oaXN0b2lyZSxcclxuLmJveC12b3lhZ2Utc3VyLW1lc3VyZS1kYXRlIHtcclxuICBwYWRkaW5nLXRvcDogNHJlbTtcclxuICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5ib3gtdm95YWdlLXN1ci1tZXN1cmUtaW50cm9fX3RleHQsXHJcbi5ib3gtdm95YWdlLXN1ci1tZXN1cmUtdmlwX190ZXh0LFxyXG4uYm94LXZveWFnZS1zdXItbWVzdXJlLXRvdXJpc21lX190ZXh0LFxyXG4uYm94LXZveWFnZS1zdXItbWVzdXJlLWNvbXBlbnNhdGlvbl9fdGV4dCxcclxuLmJveC12b3lhZ2Utc3VyLW1lc3VyZS1oaXN0b2lyZV9fdGV4dCxcclxuLmJveC12b3lhZ2Utc3VyLW1lc3VyZS1kYXRlX190ZXh0IHtcclxuICBtYXJnaW4tbGVmdDogYXV0bztcclxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgbWF4LXdpZHRoOiAxMDByZW07XHJcbiAgbGluZS1oZWlnaHQ6IDEuNTtcclxufVxyXG5cclxuLmhlYWRlci1ib3ggKyAuYm94LXZveWFnZS1zdXItbWVzdXJlLWludHJvX190ZXh0LCAuaGVhZGVyLWJveCArXHJcbi5ib3gtdm95YWdlLXN1ci1tZXN1cmUtdmlwX190ZXh0LCAuaGVhZGVyLWJveCArXHJcbi5ib3gtdm95YWdlLXN1ci1tZXN1cmUtdG91cmlzbWVfX3RleHQsIC5oZWFkZXItYm94ICtcclxuLmJveC12b3lhZ2Utc3VyLW1lc3VyZS1jb21wZW5zYXRpb25fX3RleHQsIC5oZWFkZXItYm94ICtcclxuLmJveC12b3lhZ2Utc3VyLW1lc3VyZS1oaXN0b2lyZV9fdGV4dCwgLmhlYWRlci1ib3ggK1xyXG4uYm94LXZveWFnZS1zdXItbWVzdXJlLWRhdGVfX3RleHQge1xyXG4gIG1hcmdpbi10b3A6IDNyZW07XHJcbn1cclxuXHJcbi5ib3gtdm95YWdlLXN1ci1tZXN1cmUtZW5nYWdlbWVudHMge1xyXG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcclxuICBwYWRkaW5nOiAxMHJlbSAxcmVtO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgLmJveC12b3lhZ2Utc3VyLW1lc3VyZS1lbmdhZ2VtZW50cyB7XHJcbiAgICBwYWRkaW5nLXRvcDogNHJlbTtcclxuICAgIHBhZGRpbmctYm90dG9tOiA0cmVtO1xyXG4gIH1cclxufVxyXG5cclxuLmJveC12b3lhZ2Utc3VyLW1lc3VyZS1lbmdhZ2VtZW50c19fY29udGVudCB7XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGNvbG9yOiAjRkZGO1xyXG4gIHBhZGRpbmc6IDVyZW07XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBtYXgtd2lkdGg6IDcwcmVtO1xyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcclxuICAuYm94LXZveWFnZS1zdXItbWVzdXJlLWVuZ2FnZW1lbnRzX19jb250ZW50IHtcclxuICAgIHBhZGRpbmc6IDNyZW0gM3JlbSAxcmVtIDNyZW07XHJcbiAgfVxyXG59XHJcblxyXG4uYm94LXZveWFnZS1zdXItbWVzdXJlLWVuZ2FnZW1lbnRzX190ZXh0IHtcclxuICBsaW5lLWhlaWdodDogMS41O1xyXG4gIG1hcmdpbi1ib3R0b206IDRyZW07XHJcbn1cclxuXHJcbi5ib3gtdm95YWdlLXN1ci1tZXN1cmUtZW5nYWdlbWVudHNfX2xpbmsge1xyXG4gIGNvbG9yOiAjMDA4MmFkO1xyXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbn1cclxuXHJcbi5ib3gtdm95YWdlLXN1ci1tZXN1cmUtcmVzcGVjdCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YxRjFGMTtcclxuICBwYWRkaW5nLXRvcDogNHJlbTtcclxuICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5ib3gtdm95YWdlLXN1ci1tZXN1cmUtcmVzcGVjdF9fdGV4dCB7XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gIG1heC13aWR0aDogMTAwcmVtO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbn1cclxuXHJcbi5ib3gtdm95YWdlLXN1ci1tZXN1cmUtaGlzdG9pcmVfX2NvbnRlbnQge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XHJcbn1cclxuXHJcbi5ib3gtdm95YWdlLXN1ci1tZXN1cmUtaGlzdG9pcmVfX2NvbnRlbnQsXHJcbi5ib3gtdm95YWdlLXN1ci1tZXN1cmUtZGF0ZV9fY29udGVudCB7XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gIHBhZGRpbmc6IDVyZW07XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBtYXgtd2lkdGg6IDEwMHJlbTtcclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XHJcbiAgLmJveC12b3lhZ2Utc3VyLW1lc3VyZS1oaXN0b2lyZV9fY29udGVudCxcclxuICAuYm94LXZveWFnZS1zdXItbWVzdXJlLWRhdGVfX2NvbnRlbnQge1xyXG4gICAgcGFkZGluZzogM3JlbSAzcmVtIDFyZW0gM3JlbTtcclxuICB9XHJcbn1cclxuXHJcbi5ib3gtdm95YWdlLXN1ci1tZXN1cmUtaGlzdG9pcmVfX2NvbnRlbnQgcCxcclxuLmJveC12b3lhZ2Utc3VyLW1lc3VyZS1kYXRlX19jb250ZW50IHAge1xyXG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XHJcbn1cclxuXHJcbi5ib3gtdm95YWdlLXN1ci1tZXN1cmUtaGlzdG9pcmVfX2NvbnRlbnQgcDpmaXJzdC1jaGlsZCxcclxuLmJveC12b3lhZ2Utc3VyLW1lc3VyZS1kYXRlX19jb250ZW50IHA6Zmlyc3QtY2hpbGQge1xyXG4gIG1hcmdpbi10b3A6IDFyZW07XHJcbn0iLCIucGFnZS12YWxpc2UtaWRlYWxlIC5ib3gtYnJvY2h1cmVcclxuICB7XHJcbiAgICBwYWRkaW5nOiAxMHJlbSAwO1xyXG4gIH1cclxuLnBhZ2UtdmFsaXNlLWlkZWFsZSAuYm94LWJyb2NodXJlIGFcclxuICB7XHJcbiAgICBiYWNrZ3JvdW5kOiNGRkY7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG4gICAgbWluLWhlaWdodDogMjcwcHg7XHJcbiAgICBwYWRkaW5nOiA1cmVtIDVyZW07XHJcbiAgfSIsIi5ib3gtbGlicmFpcmllLWFjdHVzIHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG4gIGJhY2tncm91bmQtY29sb3I6JGdyZXlMaWdodDtcclxuICAmX19saXN0IHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKXtcclxuICAgICAgQGluY2x1ZGUgbWFySCg2cmVtKTtcclxuICAgICAgZGlzcGxheTpub25lO1xyXG4gICAgfVxyXG4gIH1cclxuICBcclxufVxyXG4uYm94LWxpYnJhaXJpZS1hY3R1cy1pdGVtIHtcclxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICYgKyAmIHtcclxuICAgICAgbWFyZ2luLXRvcDo0cmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX192aXN1YWwge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIEBpbmNsdWRlIG1hckg7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdGhlbWUge1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGZvbnQtc2l6ZToxLjhyZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4gIH1cclxuICAmX190aXRyZSB7XHJcbiAgICBmb250LXNpemU6IDIuNnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgfVxyXG4gICZfX2luZm9zIHtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgY29sb3I6JGFscGhhLWNvbG9yO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xyXG4gIH1cclxuICAmX190ZXh0IHtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgICBtYXJnaW4tdG9wOjA7XHJcbiAgfVxyXG4gICYuc2xpY2stc2xpZGUge1xyXG4gICAgQGluY2x1ZGUgcGFkSCgzcmVtKTtcclxuICAgIG1hcmdpbi10b3A6MDtcclxuICB9XHJcbn1cclxuXHJcblxyXG4uYm94LWxpYnJhaXJpZS1zZWxlY3Rpb24ge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgJl9fcm93IHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XHJcbiAgICAgIEBpbmNsdWRlIGd1dHRlcigzMHB4KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5ib3gtbGlicmFpcmllLXNlbGVjdGlvbi1pdGVtIHtcclxuICBAaW5jbHVkZSBtYXJIO1xyXG4gIG1hcmdpbi1ib3R0b206IDNyZW07XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xyXG4gIH1cclxuXHJcbiAgJl9fdmlzdWFsIHtcclxuICAgIEBpbmNsdWRlIG1hckg7XHJcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gIH1cclxuICAmX190aXRsZSB7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgZm9udC1zaXplOjIuNnJlbTtcclxuICB9XHJcbiAgJl9fYXV0aG9yIHtcclxuICAgIGZvbnQtc2l6ZToxLjdyZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOjEuNXJlbTtcclxuICB9XHJcbiAgJl9fc3VidGl0bGUge1xyXG4gICAgY29sb3I6JGFscGhhLWNvbG9yO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGZvbnQtd2VpZ2h0OjUwMDtcclxuICAgIGZvbnQtc2l6ZToxLjdyZW07XHJcbiAgfVxyXG4gICZfX3RleHQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTowLjVyZW07XHJcbiAgfVxyXG4gICZfX2xpbmsge1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgbWFyZ2luLWJvdHRvbToxLjVyZW07XHJcbiAgfVxyXG4gICZfX2VkaXRpb24tcHJpeCB7XHJcbiAgICBmb250LXdlaWdodDo3MDA7XHJcbiAgfVxyXG59XHJcblxyXG4uYm94LWxpYnJhaXJpZS1jb250YWN0IHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG4gIGJhY2tncm91bmQtY29sb3I6JGdyZXlMaWdodDtcclxuICAmX19pZnJhbWUge1xyXG4gICAgd2lkdGg6MTAwJTtcclxuICAgIGJvcmRlcjpub25lO1xyXG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xyXG4gIH1cclxufVxyXG5cclxuLmJveC1saWJyYWlyaWUtbGlicmFpcmVzIHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG59XHJcblxyXG4uYm94LWxpYnJhaXJpZS1saWJyYWlyZXMtaXRlbSB7XHJcbiAgbWFyZ2luLWJvdHRvbTozcmVtO1xyXG4gICZfX3RpdGxlIHtcclxuICAgIGZvbnQtd2VpZ2h0OjcwMDtcclxuICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nLWJvdHRvbToxcmVtO1xyXG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OlwiXCI7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIHdpZHRoOjFyZW07XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICBoZWlnaHQ6MnB4O1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRiYXNlLWNvbG9yO1xyXG4gICAgICB0b3A6MTAwJTtcclxuICAgICAgbGVmdDo1MCU7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdGV4dCB7XHJcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xyXG4gIH1cclxufSIsIi5ib3gtdmFsZXVyLWFqb3V0ZWUge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgLmhlYWRlci1ib3gge1xyXG4gICAgLnN1YnRpdGxlIHtcclxuICAgICAgY29sb3I6JGFscGhhLWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmJveC12YWxldXItYWpvdXRlZS1pdGVtIHtcclxuICBAaW5jbHVkZSBtYXJIO1xyXG4gIEBpbmNsdWRlIG1hclYoOHJlbSk7XHJcbiAgJl9fcm93IHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIGRpc3BsYXk6ZmxleDtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XHJcbiAgICAgIEBpbmNsdWRlIGd1dHRlcigzMHB4KTtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnKSB7XHJcbiAgICAgIEBpbmNsdWRlIGd1dHRlcig1MHB4KTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdmlzdWFsIHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOjJyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3Zpc3VhbC13cmFwcGVyLFxyXG4gICZfX2NvbnRlbnQge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX190aXRsZSB7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206NHJlbTtcclxuICAgIH1cclxuICAgIHNwYW4ge1xyXG4gICAgICBjb2xvcjokYmx1ZTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdGV4dCB7XHJcbiAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgbWFyZ2luLXRvcDoycmVtO1xyXG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xyXG4gIH1cclxuICAmX19saW5rIHtcclxuICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XHJcbiAgICBjb2xvcjokYWxwaGEtY29sb3I7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLmJveC12YWxldXItYWpvdXRlZS1hbHBoYSB7XHJcbiAgQGluY2x1ZGUgbWFySDtcclxuICBtYXJnaW4tdG9wOjhyZW07XHJcbiAgJl9fcm93IHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIGRpc3BsYXk6ZmxleDtcclxuICAgICAgXHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xyXG4gICAgICBAaW5jbHVkZSBndXR0ZXIoMTByZW0pO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX192aXN1YWwge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fY29udGVudCB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3RpdGxlIHtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgZm9udC1zaXplOiAyLjVyZW07XHJcbiAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuICAgIGxldHRlci1zcGFjaW5nOiAwLjJyZW07XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOjRyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3RleHQge1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICB9XHJcbiAgJl9fbGluayB7XHJcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcclxuICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XHJcbiAgICBjb2xvcjokYWxwaGEtY29sb3I7XHJcbiAgICBtYXJnaW4tdG9wOjFyZW07XHJcbiAgfVxyXG59XHJcblxyXG4uYm94LWFlcm9wb3J0IHtcclxuICBAaW5jbHVkZSBjb3ZlcjtcclxuICBwYWRkaW5nOjEwcmVtIDFyZW07XHJcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgJl9fY29udGVudCB7XHJcbiAgICBAaW5jbHVkZSBtYXJIO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XHJcbiAgICBwYWRkaW5nOjVyZW07XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgIG1heC13aWR0aDo3MHJlbTtcclxuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMpIHtcclxuICAgICAgcGFkZGluZzozcmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19saXN0IHtcclxuICAgIGxpIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBAaW5jbHVkZSBwYWRWKDAuNHJlbSk7XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB3aWR0aDogMC4zZW07XHJcbiAgICAgICAgaGVpZ2h0OiAwLjNlbTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFscGhhLWNvbG9yO1xyXG4gICAgICAgIHRvcDogLTAuMnJlbTtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJl9fdGV4dCB7XHJcbiAgICBsaW5lLWhlaWdodDoxLjU7XHJcbiAgICBtYXJnaW4tYm90dG9tOjRyZW07XHJcbiAgfVxyXG4gICZfX2xpbmsge1xyXG4gICAgbWFyZ2luLXRvcDoxcmVtO1xyXG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xyXG4gICAgY29sb3I6JGFscGhhLWNvbG9yO1xyXG4gIH1cclxufVxyXG5cclxuLmJveC12b3VzLWFjY3VlaWxsaXIge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgbWFyZ2luLWJvdHRvbTo0cmVtO1xyXG4gIC5oZWFkZXItYm94IHtcclxuICAgIC5zdWJ0aXRsZSB7XHJcbiAgICAgIGNvbG9yOiRhbHBoYS1jb2xvcjtcclxuICAgIH1cclxuICB9XHJcbiAgJl9faW5kZXgge1xyXG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xyXG4gICAgZm9udC1mYW1pbHk6JGZvbnQtZmFtaWx5LTM7XHJcbiAgICBmb250LXNpemU6MTJyZW07XHJcbiAgfVxyXG59XHJcblxyXG4uYm94LXBlbmRhbnQtdm95YWdlIHtcclxuICBAaW5jbHVkZSBnZW5lcmljQm94O1xyXG4gIGJhY2tncm91bmQtY29sb3I6JGdyZXlMaWdodDtcclxuICAuaGVhZGVyLWJveCB7XHJcbiAgICAuc3VidGl0bGUge1xyXG4gICAgICBjb2xvcjokYWxwaGEtY29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uYm94LXBlbmRhbnQtdm95YWdlLW1lYSB7XHJcbiAgQGluY2x1ZGUgbWFyVjtcclxuICBAaW5jbHVkZSBjb3ZlcjtcclxuICBwYWRkaW5nOjEwcmVtIDFyZW07XHJcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgJl9fY29udGVudCB7XHJcbiAgICBAaW5jbHVkZSBtYXJIO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XHJcbiAgICBwYWRkaW5nOjVyZW07XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgIG1heC13aWR0aDo3MHJlbTtcclxuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMpIHtcclxuICAgICAgcGFkZGluZzozcmVtIDNyZW0gMXJlbSAzcmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX190aXRsZSB7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC4ycmVtO1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX190ZXh0IHtcclxuICAgIGxpbmUtaGVpZ2h0OjEuNTtcclxuICAgIG1hcmdpbi1ib3R0b206NHJlbTtcclxuICB9XHJcbiAgJl9fbGluayB7XHJcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcclxuICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XHJcbiAgICBjb2xvcjokYWxwaGEtY29sb3I7XHJcbiAgfVxyXG59XHJcblxyXG4uYm94LXBlbmRhbnQtdm95YWdlLWl0ZW0ge1xyXG4gIEBpbmNsdWRlIG1hckg7XHJcbiAgbWF4LXdpZHRoOiAxMDByZW07XHJcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgJiArICYge1xyXG4gICAgbWFyZ2luLXRvcDo0cmVtO1xyXG4gIH1cclxuICAmX19yb3cge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgZGlzcGxheTpmbGV4O1xyXG4gICAgfVxyXG4gIH1cclxuICAmX192aXN1YWwge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdmlzdWFsLXdyYXBwZXIge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19jb250ZW50IHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICBoZWlnaHQ6MTAwJTtcclxuICAgICAgXHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xyXG4gICAgICBwYWRkaW5nOjRyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3RpdGxlIHtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgZm9udC1zaXplOiAycmVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC4ycmVtO1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX190ZXh0IHtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgfVxyXG4gICZfX2xpbmsge1xyXG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xyXG4gICAgY29sb3I6JGFscGhhLWNvbG9yO1xyXG4gICAgbWFyZ2luLXRvcDoxcmVtO1xyXG4gIH1cclxufVxyXG5cclxuIiwiLmJveC1mcmllbmRzIHtcclxufVxyXG5cclxuLmJveC1mcmllbmRzLWl0ZW0ge1xyXG4gICRyYXRpbyA6IHBlcmNlbnRhZ2UoNDAwIC8gNTYwKTtcclxuICBAaW5jbHVkZSBtYXJIO1xyXG4gICYgKyAmIHtcclxuICAgIG1hcmdpbi10b3A6OHJlbTtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBtYXJnaW4tdG9wOiA0cmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19yb3cge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcclxuICAgICAgQGluY2x1ZGUgZ3V0dGVyKDMwcHgpO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX192aXN1YWwtY29udGFpbmVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG4gICAgfVxyXG4gICAgJjphZnRlcntcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiRyYXRpbztcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdmlzdWFsLXdyYXBwZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB9XHJcbiAgJl9fdmlzdWFsIHtcclxuICAgIEBpbmNsdWRlIG9iamVjdC1maXQoY292ZXIpO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gIH1cclxuICAmX19kZXN0aW5hdGlvbiB7XHJcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LTI7XHJcbiAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgZm9udC1zdHlsZTppdGFsaWM7XHJcbiAgICBmb250LXNpemU6IDRyZW07XHJcbiAgICBsaW5lLWhlaWdodDoxO1xyXG4gIH1cclxuICAmX190aXRsZSB7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIGZvbnQtc2l6ZTogNHJlbTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG4gICAgbGluZS1oZWlnaHQ6MTtcclxuICB9XHJcbiAgJl9fdGV4dCB7XHJcbiAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgbWFyZ2luLXRvcDowO1xyXG4gICAgc3Ryb25nIHtcclxuICAgICAgY29sb3I6JGFscGhhLWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19wc2V1ZG8tY3RhIHtcclxuICAgIEBpbmNsdWRlIGJ0bkZyaWVuZDtcclxuICAgIG1hcmdpbi10b3A6MnJlbTtcclxuICB9XHJcbn1cclxuIiwiLmJveC1jb25jaWVyZ2UtbWVhIHtcclxuICBAaW5jbHVkZSBtYXJWKDhyZW0pO1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICBAaW5jbHVkZSBwYWRWKDhyZW0pO1xyXG4gIH1cclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgJl9fdmlzdWFsLXdyYXBwZXIge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgfVxyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB9XHJcbiAgJl9fdmlzdWFsIHtcclxuICAgIEBpbmNsdWRlIG9iamVjdC1maXQoY292ZXIpO1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgfVxyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xyXG4gIH1cclxuICAmX19jb250ZW50IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xyXG4gICAgcGFkZGluZzoycmVtO1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgcGFkZGluZzo1cmVtO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmJveC1ub3MtY29uY2llcmdlcyB7XHJcbiAgQGluY2x1ZGUgbWFyVjtcclxuICBAaW5jbHVkZSBjb3ZlcjtcclxuICBwYWRkaW5nOjVyZW0gMXJlbSAxMHJlbSAxcmVtO1xyXG4gIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gICZfX2NvbnRlbnQge1xyXG4gICAgQGluY2x1ZGUgbWFySDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xyXG4gICAgcGFkZGluZzo1cmVtIDhyZW07XHJcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgIG1heC13aWR0aDo3MHJlbTtcclxuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMpIHtcclxuICAgICAgcGFkZGluZzo0cmVtIDJyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3RpdGxlIHtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgZm9udC1zaXplOiAyLjVyZW07XHJcbiAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuICAgIGxldHRlci1zcGFjaW5nOiAwLjJyZW07XHJcbiAgICBjb2xvcjokd2hpdGU7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOjRyZW07XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5ib3gtbm9zLWNvbmNpZXJnZXMtaXRlbSB7XHJcbiAgJl9fZGVzdGluYXRpb24ge1xyXG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS0yO1xyXG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgIGZvbnQtc3R5bGU6aXRhbGljO1xyXG4gICAgZm9udC1zaXplOiAzcmVtO1xyXG4gICAgbGluZS1oZWlnaHQ6MTtcclxuICB9XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBmb250LXNpemU6IDNyZW07XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuICAgIGxpbmUtaGVpZ2h0OjE7XHJcbiAgfVxyXG59IiwiLmJveC1ub3VzLWZhaXNvbnMge1xyXG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XHJcbiAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgIHBhZGRpbmctYm90dG9tOjA7XHJcbiAgfVxyXG59XHJcbi5ib3gtbm91cy1mYWlzb25zLWl0ZW0ge1xyXG4gICRyYXRpbyA6IHBlcmNlbnRhZ2UoNDkwIC8gNzM2KTtcclxuICAkYjogJjtcclxuXHJcbiAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgIG1hcmdpbi1ib3R0b206NHJlbTtcclxuICB9XHJcbiAgJl9fdmlzdWFsLWNvbnRhaW5lciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XHJcbiAgICAmOmFmdGVye1xyXG4gICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgcGFkZGluZy1ib3R0b206JHJhdGlvO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX192aXN1YWwtd3JhcHBlciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIH1cclxuICAmX192aXN1YWwge1xyXG4gICAgQGluY2x1ZGUgb2JqZWN0LWZpdChjb3Zlcik7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XHJcbiAgICAuaW50b01hcCAmIHtcclxuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX190aXRsZSB7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgZm9udC1zaXplOjNyZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgbGluZS1oZWlnaHQ6MS4yO1xyXG4gICAgc3BhbiB7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3RleHQge1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcclxuICB9XHJcbiAgJl9fY29uZGl0aW9ucyB7XHJcbiAgICBjb2xvcjokYWxwaGEtY29sb3I7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLjFyZW07XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICAmIGhlYWRlclxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmhlYWRlciB7XHJcbiAgJl9faW5uZXIge1xyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICBwYWRkaW5nLXRvcDogNS44cmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19yb3cge1xyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICBkaXNwbGF5OmZsZXg7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2NvbCB7XHJcbiAgICB3aWR0aDpyZW0oNTApO1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uaGVhZGVyLWNvbnRhY3Qge1xyXG4gIEBpbmNsdWRlIHBhZFYoMS44cmVtLCAxLjlyZW0pO1xyXG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcDtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgcm90YXRlKC05MGRlZykgO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHRvcDozMHJlbTtcclxuICB6LWluZGV4OiA0MDtcclxufVxyXG5cclxuXHJcbi5oZWFkZXItZmlsIHtcclxuICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICB0b3A6MXJlbTtcclxuICBsZWZ0OjFyZW07XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBmb250LXNpemU6IDEuMnJlbTtcclxuICBjb2xvcjokd2hpdGU7XHJcbiAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgIGRpc3BsYXk6bm9uZTtcclxuICB9XHJcbiAgLnBhZ2UtcHJvZHVpdCAmLFxyXG4gIC5wYWdlLWNoZXF1ZXMtY2FkZWF1eC10dW5uZWwgJixcclxuICAucGFnZS1kZHYgJixcclxuICAucGFnZS1tYWctbGlzdGUgJntcclxuICAgIGNvbG9yOiRiYXNlLWNvbG9yO1xyXG4gIH1cclxufVxyXG5cclxuLmhlYWRlci1zb2NpYWwge1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB0b3A6MThyZW07XHJcbiAgd2lkdGg6cmVtKDUwKTtcclxuICB6LWluZGV4OiA0MDtcclxuICAmX19saW5rIHtcclxuICAgIEBpbmNsdWRlIGNlbnRlckljb247XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKCRncmV5RGFyaywuOSk7XHJcbiAgICBjb2xvcjokd2hpdGU7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG4gICAgaGVpZ2h0OnJlbSg1MCk7XHJcbiAgICBmbG9hdDpyaWdodDtcclxuICAgIHRyYW5zaXRpb246IHdpZHRoIC4ycztcclxuICAgIGZvbnQtc2l6ZToyLjJyZW07XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgd2lkdGg6MTQwJTtcclxuICAgIH1cclxuICAgICYuZmFjZWJvb2sge1xyXG4gICAgICBAaW5jbHVkZSBpY29uKGZhY2Vib29rKTtcclxuICAgIH1cclxuICAgICYudHdpdHRlciB7XHJcbiAgICAgIEBpbmNsdWRlIGljb24odHdpdHRlcik7XHJcbiAgICB9XHJcbiAgICAmLnBpbnRlcmVzdCB7XHJcbiAgICAgIEBpbmNsdWRlIGljb24ocGludGVyZXN0KTtcclxuICAgIH1cclxuICAgICYubGlua2VkaW4ge1xyXG4gICAgICBAaW5jbHVkZSBpY29uKGxpbmtlZGluKTtcclxuICAgIH1cclxuICAgICYubWFpbCB7XHJcbiAgICAgIEBpbmNsdWRlIGljb24obWFpbCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBzdXJjaGFyZ2UgcG91ciBsYSB2ZXJzaW9uIGFkZHRoaXMgOlxyXG5cclxuLmF0c3Mge1xyXG4gIHotaW5kZXg6MTAzMCFpbXBvcnRhbnQ7XHJcbiAgLmF0LXNoYXJlLWJ0bixcclxuICBhIHtcclxuICAgIHdpZHRoOnJlbSg1MCkgIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICAgIC5hdC1pY29uLXdyYXBwZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoJGdyZXlEYXJrLC45KSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuICAuYXQtc2hhcmUtYnRuOmZvY3VzLFxyXG4gIC5hdC1zaGFyZS1idG46aG92ZXIsXHJcbiAgYTpmb2N1cyxcclxuICBhOmhvdmVyIHtcclxuICAgIHdpZHRoOjE0MCUgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuI2F0NC1zaGFyZSxcclxuI2F0NC1zb2Mge1xyXG4gIHRvcDoxOHJlbSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5cclxuLmhlYWRlci1wcm9kdWl0IHtcclxuICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICBmbGV4OjEgMSAwJTtcclxuICBwYWRkaW5nLXRvcDo1cmVtO1xyXG4gIHBhZGRpbmctYm90dG9tOiA0cmVtO1xyXG4gIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICBwYWRkaW5nLXRvcDokbmF2TW9iaWxlSGVpZ2h0O1xyXG4gICAgdGV4dC1hbGlnbjpsZWZ0O1xyXG4gIH1cclxuICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xyXG4gICAgcGFkZGluZy10b3A6JG5hdk1vYmlsZUhlaWdodDtcclxuICB9XHJcblxyXG4gICZfX2NvbnRlbnQge1xyXG4gICAgQGluY2x1ZGUgcGFkSChyZW0oMTUpKTtcclxuICAgIHBhZGRpbmctdG9wOjJyZW07XHJcbiAgfVxyXG4gICZfX2NoYXBvIHtcclxuICAgIGNvbG9yOiRhbHBoYS1jb2xvcjtcclxuICAgIGxldHRlci1zcGFjaW5nOiAuMXJlbTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xyXG4gICAgZm9udC1zaXplOmluaGVyaXQ7XHJcbiAgfVxyXG4gICZfX3RpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTozcmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcclxuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19ldGFwZXMge1xyXG4gICAgY29sb3I6JGdyZXlCbHVlO1xyXG4gICAgZm9udC1zaXplOjEuN3JlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOjEuNnJlbTtcclxuICB9XHJcbiAgJl9fc3VidGl0bGUge1xyXG4gICAgZm9udC1zaXplOjEuOHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgfVxyXG59XHJcblxyXG4uaGVhZGVyLWNoZXF1ZXMtdHVubmVsIHtcclxuICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICBmbGV4OjEgMSAwJTtcclxuICBwYWRkaW5nLXRvcDoxMXJlbTtcclxuICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcclxuICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgcGFkZGluZy10b3A6JG5hdk1vYmlsZUhlaWdodDtcclxuICAgIHRleHQtYWxpZ246bGVmdDtcclxuICB9XHJcbiAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgIHBhZGRpbmctdG9wOiRuYXZNb2JpbGVIZWlnaHQ7XHJcbiAgfVxyXG4gICZfX2NvbnRlbnQge1xyXG4gICAgQGluY2x1ZGUgcGFkSChyZW0oMTUpKTtcclxuICAgIHBhZGRpbmctdG9wOjJyZW07XHJcbiAgfVxyXG4gICZfX3RpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTozLjZyZW07XHJcbiAgICBmb250LXdlaWdodDo0MDA7XHJcbiAgICBjb2xvcjokYmx1ZTtcclxuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBmb250LXNpemU6My4ycmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19zdWJ0aXRsZSB7XHJcbiAgICBmb250LXNpemU6MS40cmVtO1xyXG4gIH1cclxufVxyXG5cclxuLmhlYWRlci1kZHYge1xyXG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gIGZsZXg6MSAxIDAlO1xyXG4gIHBhZGRpbmctdG9wOjVyZW07XHJcbiAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgIHBhZGRpbmctdG9wOiRuYXZNb2JpbGVIZWlnaHQ7XHJcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XHJcbiAgfVxyXG4gIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgICBwYWRkaW5nLXRvcDokbmF2TW9iaWxlSGVpZ2h0O1xyXG4gIH1cclxuICAmX19jb250ZW50IHtcclxuICAgIEBpbmNsdWRlIHBhZEgocmVtKDE1KSk7XHJcbiAgICBwYWRkaW5nLXRvcDoycmVtO1xyXG4gIH1cclxuICAmX190aXRsZSB7XHJcbiAgICBmb250LXNpemU6My42cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6NDAwO1xyXG4gICAgY29sb3I6JGJsdWU7XHJcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XHJcbiAgICBsaW5lLWhlaWdodDogMS4xO1xyXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgZm9udC1zaXplOjMuMnJlbTtcclxuICAgIH1cclxuICAgIC5wYWdlLWRkdi1saWdodCAmIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19zdWJ0aXRsZSB7XHJcbiAgICBmb250LXNpemU6MS44cmVtO1xyXG4gICAgLnBhZ2UtZGR2LWxpZ2h0ICYge1xyXG4gICAgICBmb250LXNpemU6MS41cmVtO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmhlYWRlci1kZHYtcGF5cyB7XHJcbiAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgZmxleDoxIDEgMCU7XHJcbiAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgbWFyZ2luLXRvcDogJG5hdk1vYmlsZUhlaWdodDtcclxuICAgIH1cclxuICAmOmJlZm9yZSB7XHJcbiAgICBjb250ZW50OlwiXCI7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcclxuICAgIG9wYWNpdHk6LjI7XHJcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgICBoZWlnaHQ6MTAwJTtcclxuICAgIHRvcDowO1xyXG4gICAgbGVmdDowO1xyXG4gIH1cclxuICAmX192aXN1YWwge1xyXG4gICAgQGluY2x1ZGUgb2JqZWN0LWZpdChjb3Zlcik7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG4gICAgaGVpZ2h0OjUxcmVtO1xyXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgICAgaGVpZ2h0OjM0cmVtO1xyXG4gICAgfVxyXG5cclxuICB9XHJcbiAgJl9fY29udGVudCB7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgIHBhZGRpbmc6MXJlbTtcclxuICB9XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC1zaXplOjMuNnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OjQwMDtcclxuICAgIGNvbG9yOiR3aGl0ZTtcclxuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBmb250LXNpemU6My4ycmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19zdWJ0aXRsZSB7XHJcbiAgICBmb250LXNpemU6MS44cmVtO1xyXG4gICAgY29sb3I6JHdoaXRlO1xyXG4gIH1cclxufVxyXG5cclxuLmhlYWRlci1kZHYtcHJvZHVpdCB7XHJcbiAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgZmxleDoxIDEgMCU7XHJcbiAgcGFkZGluZy10b3A6NXJlbTtcclxuICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgcGFkZGluZy10b3A6JG5hdk1vYmlsZUhlaWdodDtcclxuICAgIHRleHQtYWxpZ246bGVmdDtcclxuICB9XHJcbiAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgIHBhZGRpbmctdG9wOiRuYXZNb2JpbGVIZWlnaHQ7XHJcbiAgfVxyXG4gICZfX2NvbnRlbnQge1xyXG4gICAgQGluY2x1ZGUgbWFySDtcclxuICAgIEBpbmNsdWRlIHBhZEgocmVtKDE1KSk7XHJcbiAgICBwYWRkaW5nLXRvcDoycmVtO1xyXG4gICAgbWF4LXdpZHRoOjgwcmVtO1xyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1sZykge1xyXG4gICAgICBtYXgtd2lkdGg6MTAwcmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX3JvdyB7XHJcbiAgICBkaXNwbGF5OnRhYmxlO1xyXG4gICAgd2lkdGg6MTAwJTtcclxuICB9XHJcbiAgJl9fY29sLWNvbnRlbnQge1xyXG4gICAgZGlzcGxheTp0YWJsZS1jZWxsO1xyXG4gICAgdmVydGljYWwtYWxpZ246bWlkZGxlO1xyXG4gICAgd2lkdGg6NjAlO1xyXG4gICAgcGFkZGluZy1yaWdodDoycmVtO1xyXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgcGFkZGluZy1yaWdodDowO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19jb2wtdmlzdWFsIHtcclxuICAgIGRpc3BsYXk6dGFibGUtY2VsbDtcclxuICAgIHZlcnRpY2FsLWFsaWduOm1pZGRsZTtcclxuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3RpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTozLjZyZW07XHJcbiAgICBmb250LXdlaWdodDo0MDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XHJcbiAgICBsaW5lLWhlaWdodDogMS4xO1xyXG4gICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgZm9udC1zaXplOjMuMnJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdmlzdWFsLXdyYXBwZXIge1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OlwiXCI7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB0b3A6LTJyZW07XHJcbiAgICAgIHJpZ2h0Oi0xcmVtO1xyXG4gICAgICB3aWR0aDoxMXJlbTtcclxuICAgICAgaGVpZ2h0OjExcmVtO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOnVybCguLi9pbWFnZXMvdGFtcG9uLnBuZyk7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTpjb250YWluO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX192aXN1YWwge1xyXG4gICAgYm9yZGVyOjFyZW0gc29saWQgJHdoaXRlO1xyXG4gIH1cclxufVxyXG5cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgJiBoZWFkZXIgTUVBIChNaXNlIGVuIEF2YW50KVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmhlYWRlci1tZWEge1xyXG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gIGZsZXg6MSAwIDAlO1xyXG4gIC5wYWdlLWFjY3VlaWwgJiB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICN7cmVtKDEwMCl9KTtcclxuICAgIH1cclxuICB9XHJcbiAgLnBhZ2UtcmVzdWx0YXRzICYge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIEBpbmNsdWRlIHBhZFYoMXJlbSk7XHJcbiAgICAgIG1hcmdpbi10b3A6JG5hdk1vYmlsZUhlaWdodDtcclxuICAgIH1cclxuICB9XHJcbiAgJjpiZWZvcmUge1xyXG4gICAgY29udGVudDpcIlwiO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XHJcbiAgICBvcGFjaXR5Oi4yO1xyXG4gICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG4gICAgaGVpZ2h0OjEwMCU7XHJcbiAgICB0b3A6MDtcclxuICAgIGxlZnQ6MDtcclxuICAgIC5wYWdlLXJlc3VsdGF0cyAmIHtcclxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgICAgZGlzcGxheTpub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAucGFnZS1hY2N1ZWlsICYge1xyXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICAgIGRpc3BsYXk6bm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmX190aXRsZS1jYXJvdXNlbCB7XHJcbiAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICAmLnNsaWNrLWluaXRpYWxpemVkIHtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdGl0bGUtd3JhcHBlci1tb2JpbGUge1xyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3RpdGxlLXdyYXBwZXIge1xyXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB0b3A6IDEzcmVtO1xyXG4gICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgIHRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgfVxyXG4gICAgLnBhZ2UtcmVzdWx0YXRzICYge1xyXG4gICAgICBwb3NpdGlvbjpzdGF0aWM7XHJcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgQGluY2x1ZGUgcGFkSCgycmVtKTtcclxuICAgIGZvbnQtc2l6ZTo0cmVtO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IC41cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6NTAwO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xyXG4gICAgY29sb3I6JHdoaXRlO1xyXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgZm9udC1zaXplOnJlbSgzMCk7XHJcbiAgICAgIGxldHRlci1zcGFjaW5nOiAuMnJlbTtcclxuICAgICAgbGluZS1oZWlnaHQ6MS4xO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xyXG4gICAgICBmb250LXNpemU6NXJlbTtcclxuICAgIH1cclxuICAgIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tbGcpIHtcclxuICAgICAgZm9udC1zaXplOjZyZW07XHJcbiAgICB9XHJcbiAgICAucGFnZS1hY2N1ZWlsICYge1xyXG4gICAgICBmb250LXNpemU6M3JlbTtcclxuICAgICAgbGluZS1oZWlnaHQ6MS4xO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XHJcbiAgICAgIGxldHRlci1zcGFjaW5nOiAuM3JlbTtcclxuICAgICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgICBmb250LXNpemU6cmVtKDI1KTtcclxuICAgICAgICBwb3NpdGlvbjpzdGF0aWM7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICB9XHJcbiAgICAgIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcclxuICAgICAgICBmb250LXNpemU6NHJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnBhZ2UtcmVzdWx0YXRzICYge1xyXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgICBjb2xvcjokYmFzZS1jb2xvcjtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XHJcbiAgICAgICAgZm9udC1zaXplOjJyZW07XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC4ycmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBiciB7XHJcbiAgICAgICYuaGlkZGVuLW1kIHtcclxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XHJcbiAgICAgICAgICBjb250ZW50OlwiXCI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICYuaGlkZGVuLWxnIHtcclxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLWxnKSB7XHJcbiAgICAgICAgICBjb250ZW50OlwiXCI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3N1YnRpdGxlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktMjtcclxuICAgIGZvbnQtc3R5bGU6aXRhbGljO1xyXG4gICAgZm9udC13ZWlnaHQ6MzAwO1xyXG4gICAgY29sb3I6JHdoaXRlO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IC4ycmVtO1xyXG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgIGZvbnQtc2l6ZToyLjJyZW07XHJcbiAgICAmOmJlZm9yZSxcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OlwiXCI7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIHdpZHRoOjJyZW07XHJcbiAgICAgIGhlaWdodDoxcHg7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6Y3VycmVudENvbG9yO1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOjUwJTtcclxuICAgIH1cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgbGVmdDotM3JlbTtcclxuICAgIH1cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICByaWdodDotM3JlbTtcclxuICAgIH1cclxuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICB9XHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XHJcbiAgICAgIGZvbnQtc2l6ZToyLjJyZW07XHJcbiAgICB9XHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLWxnKSB7XHJcbiAgICAgIGZvbnQtc2l6ZToyLjZyZW07XHJcbiAgICB9XHJcbiAgICAucGFnZS1yZXN1bHRhdHMgJiB7XHJcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICAgIGNvbG9yOiRiYXNlLWNvbG9yO1xyXG4gICAgICAgIG1hcmdpbi10b3A6MDtcclxuICAgICAgICB0cmFuc2Zvcm06bm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmX19zdWJ0aXRsZS1hbHBoYSB7XHJcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LTI7XHJcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgICBmb250LXdlaWdodDozMDA7XHJcbiAgICBjb2xvcjokd2hpdGU7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLjJyZW07XHJcbiAgICBmb250LXNpemU6Mi4ycmVtO1xyXG4gICAgbWFyZ2luLXRvcDowO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgZm9udC1zaXplOjJyZW07XHJcbiAgICB9XHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XHJcbiAgICAgIGZvbnQtc2l6ZToyLjhyZW07XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzIwcHgpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdGV4dCB7XHJcbiAgICBjb2xvcjokd2hpdGU7XHJcbiAgICBtYXgtd2lkdGg6IDQwcmVtO1xyXG4gICAgQGluY2x1ZGUgbWFySDtcclxuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgICAgIGRpc3BsYXk6bm9uZTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdmlzdWFsLW1vYmlsZSB7XHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIGRpc3BsYXk6bm9uZTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdmlzdWFsLWNhcm91c2VsIHtcclxuICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgIGhlaWdodDo1MXJlbTtcclxuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgICAgIGhlaWdodDozNHJlbTtcclxuICAgIH1cclxuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIGRpc3BsYXk6bm9uZTtcclxuICAgIH1cclxuICAgIEBtZWRpYShtYXgtaGVpZ2h0OiAkc2NyZWVuLW1heC1oZWlnaHQpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xyXG4gICAgICBoZWlnaHQ6NDJyZW07XHJcbiAgICB9XHJcbiAgICAuc2xpY2stZG90cyB7XHJcbiAgICAgIGJvdHRvbToxcmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX192aXN1YWwtd3JhcHBlciB7XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDpcIlwiO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcclxuICAgICAgb3BhY2l0eTouMjtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgICB0b3A6MDtcclxuICAgICAgbGVmdDowO1xyXG4gICAgICAucGFnZS1yZXN1bHRhdHMgJiB7XHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3Zpc3VhbCB7XHJcbiAgICBAaW5jbHVkZSBvYmplY3QtZml0KGNvdmVyKTtcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgICBoZWlnaHQ6NTFyZW07XHJcbiAgICBcclxuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgICAgIGhlaWdodDogMzMuOHJlbTtcclxuICAgIH1cclxuICAgIEBtZWRpYShtYXgtaGVpZ2h0OiAkc2NyZWVuLW1heC1oZWlnaHQpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xyXG4gICAgICBoZWlnaHQ6IDQycmVtO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgbWFyZ2luLXRvcDogJG5hdk1vYmlsZUhlaWdodDtcclxuICAgICAgaGVpZ2h0OiAyMnJlbTtcclxuICAgICAgLnBhZ2UtYWNjdWVpbCAmLFxyXG4gICAgICAucGFnZS1wYXlzLXBheXMgJixcclxuICAgICAgLnBhZ2UtcGF5cy1yZWdpb25zICYsXHJcbiAgICAgIC5wYWdlLWVudmllLWJhc2UgJiB7XHJcbiAgICAgICAgaGVpZ2h0OmNhbGMoMTAwdmggLSAjeyRuYXZNb2JpbGVIZWlnaHR9KTtcclxuICAgICAgfVxyXG4gICAgICAucGFnZS1hZ2VuY2UgJixcclxuICAgICAgLnBhZ2UtcmVjaGVyY2hlICYsXHJcbiAgICAgIC5wYWdlLWhvbWUtZ3VpZGUgJixcclxuICAgICAgLnBhZ2UtZ3VpZGUtcGF5cyAmLFxyXG4gICAgICAucGFnZS1jb25zZWlsbGVycyAmLFxyXG4gICAgICAucGFnZS1lbnZpZXMgJixcclxuICAgICAgLnBhZ2UtbWFnLXBheXMgJixcclxuICAgICAgLnBhZ2Utc2Fpc29uICYsXHJcbiAgICAgIC5wYWdlLXBheXMtdGFnICYge1xyXG4gICAgICAgIGhlaWdodDogMzMuOHJlbTtcclxuICAgICAgfVxyXG4gICAgICAucGFnZS1hY2N1ZWlsLnNjcm9sbHRvcCAmIHtcclxuICAgICAgICBoZWlnaHQ6Y2FsYygxMDB2aCk7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgfVxyXG4gICAgICAucGFnZS1yZXN1bHRhdHMgJiB7XHJcbiAgICAgICAgZGlzcGxheTpub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWFcclxuICAgICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxyXG4gICAgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpIHtcclxuICAgICAgICAvKiBSZXRpbmEtc3BlY2lmaWMgc3R1ZmYgaGVyZSAqL1xyXG4gICAgfVxyXG4gICAgLnBhZ2UtbWFnLWZvcm0gJiB7XHJcbiAgICAgIGhlaWdodDogMzMuOHJlbTtcclxuICAgICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgICAgICBoZWlnaHQ6MjRyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5wYWdlLW1hZy1hY2N1ZWlsICYsXHJcbiAgICAucGFnZS1tYWctYXJ0aWNsZSAmIHtcclxuICAgICAgaGVpZ2h0OiAzMy44cmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19saW5rIHtcclxuICAgIEBpbmNsdWRlIGljb24oc2Nyb2xsLGFmdGVyKTtcclxuICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcclxuICAgIGNvbG9yOiR3aGl0ZTtcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgQGluY2x1ZGUgd29iYmxlLXZlcnRpY2FsO1xyXG4gICAgICBtYXJnaW4tdG9wOjFyZW07XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICB9XHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIGRpc3BsYXk6bm9uZTtcclxuICAgIH1cclxuICAgIC5wYWdlLXBheXMgJixcclxuICAgIC5wYWdlLWVudmllLWJhc2UgJixcclxuICAgIC5wYWdlLWVudmllcyAmLFxyXG4gICAgLnBhZ2UtZ3VpZGUtcGF5cyAmIHtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBib3R0b206IDEwcmVtO1xyXG4gICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgIHRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgfVxyXG4gICAgLnBhZ2UtYWNjdWVpbCAme1xyXG4gICAgICBtYXJnaW4tdG9wOjZyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2xpbmstc2Nyb2xsIHtcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDYuNXJlbTtcclxuICAgIGJvdHRvbTogNi41cmVtO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2NvbnRlbnQge1xyXG4gICAgd2lkdGg6MTAwJTtcclxuICAgIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgei1pbmRleDogMjtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgfVxyXG4gICAgLnBhZ2UtYWNjdWVpbCAme1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOiA1MCU7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzAlKTtcclxuICAgICAgbGVmdDowO1xyXG4gICAgICB6LWluZGV4OjI7XHJcbiAgICAgIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tc20pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xyXG4gICAgICAgIHRvcDogY2FsYyg1MCUgLSAzZW0pO1xyXG4gICAgICB9XHJcbiAgICAgIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcclxuICAgICAgICB0b3A6IGNhbGMoNTAlICsgMnJlbSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5wYWdlLWFjY3VlaWwuc2Nyb2xsdG9wICYge1xyXG4gICAgICBAbWVkaWEobWF4LXdpZHRoOiAzMjBweCkge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDclKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmX19jb250ZW50LWlubmVyIHtcclxuICAgIG1hcmdpbi10b3A6M3JlbTtcclxuICAgIEBpbmNsdWRlIG1hckgoM3JlbSk7XHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIEBpbmNsdWRlIG1hckgoYXV0byk7XHJcbiAgICAgIG1heC13aWR0aDozMnJlbTtcclxuICAgIH1cclxuICAgIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcclxuICAgICAgbWFyZ2luLXRvcDo0cmVtO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDMyMHB4KSB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2Zvb3RlciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBib3R0b206IDRyZW07XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgd2lkdGg6MTAwJTtcclxuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIC5wYWdlLWFjY3VlaWwgJixcclxuICAgICAgLnBhZ2UtcGF5cyAmLFxyXG4gICAgICAucGFnZS1lbnZpZS1iYXNlICYge1xyXG4gICAgICAgIGJvdHRvbTogMTByZW07XHJcbiAgICAgIH1cclxuICAgICAgLnBhZ2UtY29uc2VpbGxlcnMgJiB7XHJcbiAgICAgICAgYm90dG9tOiAycmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3NlYXJjaC13cmFwcGVyIHtcclxuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgPiAuYXdlc29tcGxldGUtY29udGFpbmVyIHtcclxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgICBmbG9hdDpsZWZ0O1xyXG4gICAgICAgIHdpZHRoOmNhbGMoMTAwJSAtICN7JG5hdk1vYmlsZUhlaWdodH0pO1xyXG4gICAgICB9XHJcbiAgICAgIGlucHV0IHtcclxuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjpsZWZ0O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICB1bCB7XHJcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgICAgIHdpZHRoOmNhbGMoMTAwJSArICN7JG5hdk1vYmlsZUhlaWdodH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmX19zZWFyY2gtc3VibWl0IHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIGZsb2F0OnJpZ2h0O1xyXG5cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcclxuICAgICAgY29sb3I6JHdoaXRlO1xyXG4gICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICBtYXJnaW4tdG9wOjFyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3NlYXJjaC1zdWJtaXQtaWNvbiB7XHJcbiAgICBtYXJnaW4tbGVmdDowO1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIGRpc3BsYXk6bm9uZTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fc2VhcmNoLXN1Ym1pdC10ZXh0IHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIGRpc3BsYXk6bm9uZTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fYnRuIHtcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICBAaW5jbHVkZSBsaW5rO1xyXG4gICAgY29sb3I6JHdoaXRlO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIG1hcmdpbi10b3A6MnJlbTtcclxuXHJcbiAgfVxyXG4gICZfX3ByZXYsXHJcbiAgJl9fbmV4dCB7XHJcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgIHRvcDo1MCU7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgcGFkZGluZzoxcmVtO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIGNvbG9yOiR3aGl0ZTtcclxuICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcclxuICAgIFxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIHRvcDphdXRvO1xyXG4gICAgICBib3R0b206MXJlbTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKCR3aGl0ZSwgMC4yKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czowLjhyZW07XHJcbiAgICAgIGxldHRlci1zcGFjaW5nOiAuMnJlbTtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIGxldHRlci1zcGFjaW5nOiAuNXJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fcHJldiB7XHJcbiAgICBsZWZ0OjEuNXJlbTtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSByb3RhdGUoLTkwZGVnKTtcclxuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgfVxyXG4gICZfX25leHQge1xyXG4gICAgcmlnaHQ6MS41cmVtO1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSkgcm90YXRlKDkwZGVnKTtcclxuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgICYgZm9vdGVyXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5cclxuLmZvb3RlciB7XHJcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiRncmV5TGlnaHQ7XHJcbiAgLnBhZ2UtZGR2LWxpZ2h0ICYge1xyXG4gICAgZGlzcGxheTpub25lO1xyXG4gIH1cclxuICAucGFnZS1kZHYtY29uZmlybWF0aW9uICYge1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICB9XHJcbn1cclxuLmZvb3Rlci1saXN0IHtcclxuICBtYXJnaW4tYm90dG9tOjJyZW07XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMpIHtcclxuICAgIGZvbnQtc2l6ZToycmVtO1xyXG4gIH1cclxuICAmX190aXRsZSB7XHJcbiAgICBmb250LXdlaWdodDo3MDA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIH1cclxuICAmX19saXN0IHtcclxuICAgID4gbGkge1xyXG4gICAgICBtYXJnaW4tdG9wOjJweDtcclxuICAgICAgPiBhIHtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmX19sb2dvIHtcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICBtYXJnaW4tdG9wOjFyZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOjAuNXJlbTtcclxuICB9XHJcbn1cclxuXHJcbi5zb2NpYWwge1xyXG4gIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gIG1hcmdpbi1ib3R0b206JGJhc2UtbWFyZ2luO1xyXG4gICZfX3RpdGxlIHtcclxuICAgIGZvbnQtc2l6ZToyLjdyZW07XHJcbiAgICBmb250LXdlaWdodDo3MDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOjNyZW07XHJcbiAgfVxyXG4gICZfX2xpc3Qge1xyXG4gIH1cclxuICAmX19pdGVtIHtcclxuICAgIGRpc3BsYXk6aW5saW5lO1xyXG4gIH1cclxuICAmX19saW5rIHtcclxuICAgIEBpbmNsdWRlIG1hckgoMXJlbSk7XHJcbiAgICBAaW5jbHVkZSBjZW50ZXJJY29uO1xyXG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRhbHBoYS1jb2xvcjtcclxuICAgIGNvbG9yOiR3aGl0ZTtcclxuICAgIHdpZHRoOjUuNnJlbTtcclxuICAgIGhlaWdodDo1LjZyZW07XHJcbiAgICBib3JkZXItcmFkaXVzOjUwJTtcclxuICAgIGZvbnQtc2l6ZTozcmVtO1xyXG4gICAgbWFyZ2luLWJvdHRvbTowLjVyZW07XHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcyBlYXNlLW91dDtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRpbnQoJGJsdWUsIDE1JSlcclxuICAgIH1cclxuICAgICYuZmFjZWJvb2sge1xyXG4gICAgICBAaW5jbHVkZSBpY29uKGZhY2Vib29rKTtcclxuICAgIH1cclxuICAgICYuZ29vZ2xlLXBsdXMge1xyXG4gICAgICBAaW5jbHVkZSBpY29uKGdvb2dsZS1wbHVzKTtcclxuICAgIH1cclxuICAgICYudHdpdHRlciB7XHJcbiAgICAgIEBpbmNsdWRlIGljb24odHdpdHRlcik7XHJcbiAgICB9XHJcbiAgICAmLnBpbnRlcmVzdCB7XHJcbiAgICAgIEBpbmNsdWRlIGljb24ocGludGVyZXN0KTtcclxuICAgIH1cclxuICAgICYuaW5zdGFncmFtIHtcclxuICAgICAgQGluY2x1ZGUgaWNvbihpbnN0YWdyYW0pO1xyXG4gICAgfVxyXG4gICAgJi55b3V0dWJlIHtcclxuICAgICAgQGluY2x1ZGUgaWNvbih5b3V0dWJlKTtcclxuICAgIH1cclxuICB9XHJcbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICAmIG5hdmlnYXRpb25cclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5uYXYge1xyXG4gIGRpc3BsYXk6ZmxleDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgcG9zaXRpb246Zml4ZWQ7XHJcbiAgdG9wOjA7XHJcbiAgbGVmdDowO1xyXG4gIHdpZHRoOjEwMCU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XHJcbiAgei1pbmRleDozO1xyXG4gICY6aG92ZXIge1xyXG4gICAgei1pbmRleDo0O1xyXG4gIH1cclxuICBwYWRkaW5nLWxlZnQ6MXJlbTtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgLnNjcm9sbGVkICYsXHJcbiAgICAucGFnZS1wcm9kdWl0ICYsXHJcbiAgICAucGFnZS1jaGVxdWVzLWNhZGVhdXgtdHVubmVsICYsXHJcbiAgICAucGFnZS1kZHYgJixcclxuICAgIC5wYWdlLWRkdi1wcm9kdWl0ICYsXHJcbiAgICAucGFnZS1tYWcgJiB7XHJcbiAgICAgIGJveC1zaGFkb3c6ICRib3gtc2hhZG93O1xyXG4gICAgfVxyXG4gIH1cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xyXG4gICAgQGluY2x1ZGUgcGFkSChyZW0oNTApKTtcclxuICB9XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICBAaW5jbHVkZSBwYWRIKDApO1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xyXG4gICAgY29sb3I6JHdoaXRlO1xyXG4gICAgaGVpZ2h0OiAkbmF2TW9iaWxlSGVpZ2h0O1xyXG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgLnBhZ2UtYWNjdWVpbC5zY3JvbGx0b3A6bm90KC5tZW51LW1vYmlsZS1vcGVuZWQpOm5vdCguY29udGFjdC1tb2JpbGUtb3BlbmVkKSAmIHtcclxuICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xyXG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICAgIH1cclxuICAgIC5zdGlja3ktbmF2LW1vYmlsZS1pcy1maXhlZCAmIHtcclxuICAgICAgZGlzcGxheTpub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fbGlzdCB7XHJcbiAgICBmbGV4LWdyb3c6MTtcclxuICAgIGRpc3BsYXk6ZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAmLmxlZnQge1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICAgIGRpc3BsYXk6bm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5yaWdodCB7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cmVtO1xyXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogNXJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmX19saW5rIHtcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICBwYWRkaW5nOjJyZW0gMXJlbTtcclxuICAgIGxldHRlci1zcGFjaW5nOiAuMXJlbTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgICAgZm9udC1zaXplOjEuNHJlbTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgcGFkZGluZzowO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIGZvbnQtc2l6ZTogMi43cmVtO1xyXG4gICAgICB3aWR0aDogM3JlbTtcclxuICAgIH1cclxuICAgIC5vcGVuLW1lbnUgJiB7XHJcbiAgICAgIEBpbmNsdWRlIGljb24oZmxlY2hlLW5hdiwgYWZ0ZXIpO1xyXG4gICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgcGFkZGluZy1yaWdodDoyLjVyZW07XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDo1MCU7XHJcbiAgICAgICAgcmlnaHQ6IDFyZW07XHJcbiAgICAgICAgbWFyZ2luLXRvcDotMC41cmVtO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xyXG4gICAgICAgIHdpZHRoOjFyZW07XHJcbiAgICAgICAgaGVpZ2h0OjFyZW07XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbiAgICAgICAgY29sb3I6JGFscGhhLWNvbG9yO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAubm8tdG91Y2ggLm9wZW4tbWVudTpob3ZlciAmLFxyXG4gICAgLm5vLXRvdWNoIC5vcGVuLW1lbnU6Zm9jdXMgJixcclxuICAgIC50b3VjaCAub3Blbi1tZW51LmFjdGl2ZSAmIHtcclxuICAgICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19idG4ge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xyXG4gICAgICBAaW5jbHVkZSBwYWRIKDEuNXJlbSk7XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgZGlzcGxheTpub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmZsYWcge1xyXG4gIGZsZXgtc2hyaW5rIDowO1xyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgZGlzcGxheTpub25lO1xyXG4gIH1cclxufVxyXG5cclxuLmFjY291bnQge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICB9XHJcbiAgJl9fbGluayB7XHJcbiAgICBwYWRkaW5nOiAwLjVyZW0gMnJlbTtcclxuICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gIH1cclxuICAmX19pY29uIHtcclxuICAgIEBpbmNsdWRlIGljb24odXNlcik7XHJcbiAgICBAaW5jbHVkZSBjZW50ZXJJY29uO1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICByaWdodDogMS41cmVtO1xyXG4gICAgICBoZWlnaHQ6ICRuYXZNb2JpbGVIZWlnaHQ7XHJcbiAgICAgIHRyYW5zaXRpb246IHJpZ2h0IC4ycztcclxuICAgICAgLnBhZ2UtYWNjdWVpbC5zY3JvbGx0b3A6bm90KC5tZW51LW1vYmlsZS1vcGVuZWQpOm5vdCguY29udGFjdC1tb2JpbGUtb3BlbmVkKSAmIHtcclxuICAgICAgICByaWdodDogLTUuNXJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAudG9vbHRpcC5ib3R0b20ge1xyXG4gICAgZGlzcGxheTpub25lO1xyXG4gICAgbGVmdDogLTcuMXJlbTtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICBwYWRkaW5nLXRvcDoyMHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206MDtcclxuICAgIC50b29sdGlwLWFycm93IHtcclxuICAgICAgdG9wOjEwcHg7XHJcbiAgICB9XHJcbiAgICAudG9vbHRpcC1pbm5lciB7XHJcbiAgICAgIHdpZHRoOiAxOHJlbTtcclxuICAgICAgQGluY2x1ZGUgcGFkVigwKTtcclxuICAgIH1cclxuICB9XHJcbiAgJjpob3ZlciB7XHJcbiAgICAudG9vbHRpcCB7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2l0ZW0ge1xyXG4gICAgQGluY2x1ZGUgcGFkVigwLjhyZW0pO1xyXG4gICAgJiArICYge1xyXG4gICAgICBib3JkZXItdG9wOjFweCBzb2xpZCByZ2JhKCR3aGl0ZSwwLjQpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnRlbCB7XHJcbiAgJl9fbGluayB7XHJcbiAgICBmb250LXNpemU6IDEuN3JlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgIHBhZGRpbmctdG9wOiAwLjhyZW07XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgQGluY2x1ZGUgaWNvbih0ZWwpO1xyXG4gICAgICBAaW5jbHVkZSBjZW50ZXJJY29uO1xyXG5cdCAgZm9udC1zaXplOngtbGFyZ2U7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICByaWdodDogN3JlbTtcclxuICAgICAgaGVpZ2h0OiAkbmF2TW9iaWxlSGVpZ2h0O1xyXG4gICAgICB0cmFuc2l0aW9uOiByaWdodCAuMnM7XHJcblxyXG4gICAgICAucGFnZS1hY2N1ZWlsLnNjcm9sbHRvcDpub3QoLm1lbnUtbW9iaWxlLW9wZW5lZCk6bm90KC5jb250YWN0LW1vYmlsZS1vcGVuZWQpICYge1xyXG4gICAgICAgIHJpZ2h0OiAtM3JlbTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmNvbnRhY3QtbW9iaWxlLW9wZW5lZCAmIHtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgd2lkdGg6IDQuOHJlbTtcclxuICAgICAgICAgIGhlaWdodDogNC44cmVtO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBzcGFuIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5hY3RpdmVITEhpZ2hMZXZlbCB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBwYWRkaW5nOiAycmVtO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFscGhhLWNvbG9yO1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuM3MgZWFzZS1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcyBlYXNlLW91dDtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICBsaW5lLWhlaWdodDogMS4xNTsgXHJcbiAgfVxyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgLmFjdGl2ZUhMSGlnaExldmVsIHtcclxuICAgICAgcGFkZGluZzogaW5pdGlhbDtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC50b29sdGlwIHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5hY3RpdmVITExvd0xldmVsIHtcclxuICBjb2xvcjokYWxwaGEtY29sb3I7XHJcbiAgQGluY2x1ZGUgcGFkSCgxcmVtKTtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5sb2dvLXZkbSB7XHJcbiAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgdG9wOjJyZW07XHJcbiAgbGVmdDo1MCU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gIGRpc3BsYXk6YmxvY2s7XHJcbiAgd2lkdGg6IDEzcmVtO1xyXG4gIHotaW5kZXg6IDE7XHJcbiAgdHJhbnNpdGlvbiA6IHdpZHRoIC4ycywgdG9wIC4ycztcclxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgIHRvcDotMy41cmVtO1xyXG4gICAgei1pbmRleDogMDtcclxuICAgIC5wYWdlLWFjY3VlaWwuc2Nyb2xsdG9wOm5vdCgubWVudS1tb2JpbGUtb3BlbmVkKTpub3QoLmNvbnRhY3QtbW9iaWxlLW9wZW5lZCkgJiB7XHJcbiAgICAgIHRvcDoycmVtO1xyXG4gICAgICB3aWR0aDoxM3JlbTtcclxuICAgIH1cclxuICB9XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDMyMHB4KSB7XHJcbiAgICAucGFnZS1hY2N1ZWlsLnNjcm9sbHRvcDpub3QoLm1lbnUtbW9iaWxlLW9wZW5lZCk6bm90KC5jb250YWN0LW1vYmlsZS1vcGVuZWQpICYge1xyXG4gICAgICB3aWR0aDoxMHJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xyXG4gICAgd2lkdGg6IDlyZW07XHJcbiAgfVxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAuc2Nyb2xsZWQgJixcclxuICAgIC5wYWdlLXByb2R1aXQgJixcclxuICAgIC5wYWdlLWNoZXF1ZXMtY2FkZWF1eC10dW5uZWwgJixcclxuICAgIC5wYWdlLWRkdiAmLFxyXG4gICAgLnBhZ2UtZGR2LXByb2R1aXQgJiB7XHJcbiAgICAgIHdpZHRoOiA5cmVtO1xyXG4gICAgICB0b3A6IDFyZW07XHJcbiAgICB9XHJcbiAgICAubG9nby1pcy1oaWRkZW4gJiB7XHJcbiAgICAgIHRvcDotOXJlbTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5tZW51LWJ1dHRvbiB7XHJcbiAgYmFja2dyb3VuZDokYmFzZS1jb2xvcjtcclxuICBoZWlnaHQ6MTAwJTtcclxuICB3aWR0aDpyZW0oNTApO1xyXG4gIGhlaWdodDpyZW0oNTMpO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBkaXNwbGF5OmJsb2NrO1xyXG4gIC5uYXYgJiB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuc2Nyb2xsVG9wQnV0dG9uU3RpY2t5TmF2IHtcclxuICAgIGNvbG9yOiR3aGl0ZTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xyXG4gICAgQGluY2x1ZGUgaWNvbihmbGVjaGUtc2VsZWN0KTtcclxuICAgIEBpbmNsdWRlIGNlbnRlckljb247XHJcbiAgfVxyXG4gIC5uYXYtaWNvbiB7XHJcbiAgICBzcGFuIHtcclxuICAgICAgJHdpZHRoIDogMjVweDtcclxuICAgICAgJGhlaWdodCA6IDJweDtcclxuICAgICAgJGNvbG9yIDogJHdoaXRlO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgd2lkdGg6ICR3aWR0aDtcclxuICAgICAgaGVpZ2h0OiAkaGVpZ2h0O1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dCAwcztcclxuICAgICAgbGVmdDogNTAlO1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xyXG4gICAgICBtYXJnaW4tdG9wOiAtMXB4O1xyXG4gICAgICAmOmJlZm9yZSxcclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6ICR3aWR0aDtcclxuICAgICAgICBoZWlnaHQ6ICRoZWlnaHQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW4tb3V0IDBzO1xyXG4gICAgICB9XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICB0b3A6LTdweDtcclxuICAgICAgfVxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICB0b3A6N3B4O1xyXG4gICAgICB9XHJcbiAgICAgIC5tZW51LW1vYmlsZS1vcGVuZWQgJiB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5vcGVuLW1lbnUge1xyXG4gIC5uby10b3VjaCAmOmhvdmVyLFxyXG4gIC5uby10b3VjaCAmOmZvY3VzLFxyXG4gIC50b3VjaCAmLmFjdGl2ZSB7XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDpcIlwiO1xyXG4gICAgICBAaW5jbHVkZSBhcnJvdygkZGlyZWN0aW9uOiB1cCwgJHdpZHRoOiAzcmVtLCAkaGVpZ2h0OiAxLjVyZW0sICRjb2xvcjogJHBpbmtMaWdodCk7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgbGVmdDogNTAlO1xyXG4gICAgICBib3R0b206IC0xcHg7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTEwMHB4KXtcclxuXHQuYmlnU2NyZWVue1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdH1cclxuXHQubG93U2NyZWVuLCAuYWNjb3VudCAudG9vbHRpcC5ib3R0b217XHJcblx0ZGlzcGxheTogbm9uZTtcdFxyXG5cdH1cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTAwcHgpe1xyXG5cdC5iaWdTY3JlZW57XHJcblx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcblx0Lmxvd1NjcmVlbntcclxuXHRkaXNwbGF5OiBibG9jayFpbXBvcnRhbnQ7XHJcblx0fVxyXG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgJiBzdGlja3kgbmF2XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5cclxuLnN0aWNreS1uYXYge1xyXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xyXG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gIHotaW5kZXg6MztcclxuICB3aWR0aDogMTAwJTtcclxuICBAaW5jbHVkZSBwYWRIKHJlbSg1MCkpO1xyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgZGlzcGxheTpub25lO1xyXG4gICAgLnBhZ2UtcmVzdWx0YXRzICYge1xyXG4gICAgICBAaW5jbHVkZSBwYWRIKDJyZW0pO1xyXG4gICAgICBwb3NpdGlvbjpmaXhlZDtcclxuICAgICAgbGVmdDowO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibHVlO1xyXG4gICAgICBib3R0b206IDA7XHJcbiAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcclxuICAgICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcclxuXHJcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnMgZWFzZS1pbjtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgfVxyXG4gICAgLnBhZ2UtcmVzdWx0YXRzLnJlY2hlcmNoZS1maWx0ZXJzLWlzLW9wZW5lZCAme1xyXG5cclxuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4yNXMgZWFzZS1vdXQ7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWShjYWxjKC0xMDB2aCArICN7cmVtKDUwKX0pKTtcclxuICAgIH1cclxuICB9XHJcbiAgLnN0aWNreS1uYXYtaXMtZml4ZWQgJiB7XHJcbiAgICBwb3NpdGlvbjpmaXhlZDtcclxuICAgIHRvcDowO1xyXG4gICAgbGVmdDowO1xyXG4gICAgQGluY2x1ZGUgcGFkSCgwKTtcclxuICAgIHotaW5kZXg6NDA7XHJcbiAgfVxyXG4gIC5wYWdlLXByb2R1aXQgJixcclxuICAucGFnZS1saWJyYWlyaWUgJiB7XHJcbiAgICBAaW5jbHVkZSBwYWRIKHJlbSgwKSk7XHJcbiAgfVxyXG4gICZfX2xpc3Qge1xyXG4gICAgZGlzcGxheTpmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIC5wYWdlLXByb2R1aXQgJixcclxuICAgIC5wYWdlLWxpYnJhaXJpZSAmIHtcclxuICAgICAgQGluY2x1ZGUgY29udGFpbmVyLWZpeGVkO1xyXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICAgIHdpZHRoOiAkY29udGFpbmVyLXNtO1xyXG4gICAgICB9XHJcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XHJcbiAgICAgICAgd2lkdGg6ICRjb250YWluZXItbWQ7XHJcbiAgICAgIH1cclxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGcpIHtcclxuICAgICAgICB3aWR0aDogJGNvbnRhaW5lci1sZztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN0aWNreS1uYXYtaXMtZml4ZWQgJiB7XHJcbiAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgIEBpbmNsdWRlIHBhZEgoMCk7XHJcbiAgICB9XHJcbiAgICAucGFnZS1jb25zZWlsbGVycy1wYXlzICYsXHJcbiAgICAucGFnZS1jb25zZWlsbGVycy1pbnRlcnZpZXcgJiB7XHJcbiAgICAgIEBpbmNsdWRlIG1hckg7XHJcbiAgICAgIG1heC13aWR0aDoxMDByZW07XHJcbiAgICB9XHJcbiAgICAucGFnZS1jaGVxdWVzLWNhZGVhdXgtdHVubmVsICYge1xyXG4gICAgICBAaW5jbHVkZSBtYXJIO1xyXG4gICAgICBtYXgtd2lkdGg6ODByZW07XHJcbiAgICB9XHJcblxyXG4gICAgLnBhZ2UtY29uc2VpbGxlcnMtcGF5cy5zdGlja3ktbmF2LWlzLWZpeGVkICYsXHJcbiAgICAucGFnZS1jb25zZWlsbGVycy1pbnRlcnZpZXcuc3RpY2t5LW5hdi1pcy1maXhlZCAmLFxyXG4gICAgLnBhZ2UtY2hlcXVlcy1jYWRlYXV4LXR1bm5lbC5zdGlja3ktbmF2LWlzLWZpeGVkICYge1xyXG4gICAgICBtYXgtd2lkdGg6bm9uZTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9faXRlbSB7XHJcbiAgICBmbGV4LWdyb3c6MTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBsaW5lLWhlaWdodDpyZW0oNDMpO1xyXG4gICAgJiArICYge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgY29udGVudDpcIlwiO1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJhc2UtY29sb3I7XHJcbiAgICAgICAgICB3aWR0aDoxcHg7XHJcbiAgICAgICAgICBoZWlnaHQ6Mi41cmVtO1xyXG4gICAgICAgICAgdG9wOjUwJTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5wYWdlLWNvbnNlaWxsZXJzLWludGVydmlldyAmLFxyXG4gICAgLnBhZ2UtY2hlcXVlcy1jYWRlYXV4LXR1bm5lbCAmIHtcclxuICAgICAgd2lkdGg6MzMuMzMlO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19saW5rIHtcclxuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIGhlaWdodDpyZW0oNDMpO1xyXG4gICAgbGluZS1oZWlnaHQ6cmVtKDQzKTtcclxuICAgIG1hcmdpbjowLjVyZW07XHJcbiAgICBAaW5jbHVkZSBwYWRIKDFyZW0pXHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC1zaXplOjEuNHJlbTtcclxuICAgIGxldHRlci1zcGFjaW5nOiAuMnJlbTtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmx1ZTtcclxuICAgICAgY29sb3I6JHdoaXRlO1xyXG4gICAgfVxyXG4gICAgPiBzcGFuIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICBsaW5lLWhlaWdodDogMS4xO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fZml4ZWQtaXRlbSB7XHJcbiAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICAuc3RpY2t5LW5hdi1pcy1maXhlZCAmIHtcclxuICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2J1dHRvbiB7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xyXG4gICAgICBAaW5jbHVkZSBwYWRIKDEuNXJlbSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5hLnN0aWNreS1uYXZfX2xpbmsge1xyXG4gICYuYWN0aXZlIHtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjokd2hpdGU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICY6aG92ZXIge1xyXG4gICAgY29sb3I6JGJsdWU7XHJcbiAgfVxyXG59XHJcblxyXG4uc3RpY2t5LW5hdi13cmFwcGVyIHtcclxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgIGhlaWdodDowIWltcG9ydGFudDtcclxuICB9XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgIG1hcmdpbi1ib3R0b206MC4ycmVtO1xyXG4gIH1cclxufVxyXG5cclxuLnN0aWNreS1uYXYtbW9iaWxlLXdyYXBwZXIge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICBkaXNwbGF5Om5vbmU7XHJcbiAgfVxyXG59XHJcbi5zdGlja3ktbmF2LW1vYmlsZSB7XHJcbiAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgei1pbmRleDo0O1xyXG4gIGJhY2tncm91bmQtY29sb3I6cmdiYSgkd2hpdGUsMC45Nyk7XHJcbiAgLnN0aWNreS1uYXYtbW9iaWxlLWlzLWZpeGVkICYge1xyXG4gICAgcG9zaXRpb246Zml4ZWQ7XHJcbiAgICB0b3A6MDtcclxuICAgIGxlZnQ6MDtcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgfVxyXG4gICZfX2J1dHRvbiB7XHJcbiAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICBwYWRkaW5nOjJyZW0gMXJlbTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBmb250LXNpemU6MS44cmVtO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IC4ycmVtO1xyXG4gICAgd2lkdGg6MTAwJTtcclxuICAgIGZvbnQtd2VpZ2h0OjcwMDtcclxuICB9XHJcbiAgJl9fYnV0dG9uLXRleHQge1xyXG4gICAgQGluY2x1ZGUgaWNvbihzZWxlY3QsYWZ0ZXIpO1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5zdGlja3ktbmF2X19saW5rIHtcclxuICAgIGRpc3BsYXk6bm9uZTtcclxuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRiYXNlLWNvbG9yO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgLnN0aWNreS1uYXYtbW9iaWxlLWlzLW9wZW5lZCAmIHtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgJiBtZW51XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbiRiZWxvd0lwYWRMYW5kc2NhcGUgOiAxMDIzcHg7XHJcbiRpcGFkTGFuZHNjYXBlIDogMTAyNHB4O1xyXG4kYWJvdmVJcGFkTGFuZHNjYXBlIDogMTAyNXB4O1xyXG5cclxuXHJcbi5tZW51IHtcclxuICBkaXNwbGF5Om5vbmU7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHRvcDogNS45cmVtO1xyXG4gIGxlZnQ6IHJlbSg1MCk7XHJcbiAgcmlnaHQ6IHJlbSg1MCk7XHJcbiAgei1pbmRleDogMTEwMDtcclxuICBib3JkZXI6cmVtKDgpIHNvbGlkICRwaW5rTGlnaHQ7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XHJcbiAgcGFkZGluZzo0cmVtO1xyXG4gIG92ZXJmbG93OmhpZGRlbjtcclxuXHJcbiAgLm5vLXRvdWNoIC5vcGVuLW1lbnU6aG92ZXIgJixcclxuICAubm8tdG91Y2ggLm9wZW4tbWVudTpmb2N1cyAmLFxyXG4gIC50b3VjaCAub3Blbi1tZW51LmFjdGl2ZSAmIHtcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgfVxyXG4gICAgXHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICBkaXNwbGF5Om5vbmU7XHJcbiAgfVxyXG4gICZfX2lubmVyIHtcclxuICAgIGhlaWdodDoxMDAlO1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgfVxyXG4gICZfX2Nsb3NlIHtcclxuICAgIGRpc3BsYXk6bm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5ib3gtbWVudSB7XHJcbiAgZGlzcGxheTpmbGV4O1xyXG4gIGhlaWdodDogMTAwJTtcclxuICAmX19tYWluIHtcclxuICAgIGZsZXgtZ3JvdzoxO1xyXG4gIH1cclxuICAmX19tYWluLWlubmVyIHtcclxuICAgIG92ZXJmbG93LXg6aGlkZGVuO1xyXG4gICAgb3ZlcmZsb3cteTphdXRvO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gIH1cclxuICAmX19saXN0ICB7XHJcbiAgICBtYXJnaW4tYm90dG9tOjRyZW07XHJcbiAgfVxyXG4gICZfX2l0ZW0ge1xyXG4gICAgbWFyZ2luLXRvcDoxcmVtO1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRhYm92ZUlwYWRMYW5kc2NhcGUpIHtcclxuICAgICAgbWFyZ2luLXRvcDoycmVtO1xyXG4gICAgfVxyXG4gICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgIG1hcmdpbi10b3A6MDtcclxuICAgIH1cclxuXHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fbGluayB7XHJcbiAgICBmb250LXNpemU6M3JlbTtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkaXBhZExhbmRzY2FwZSkge1xyXG4gICAgICBmb250LXNpemU6MnJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fc3VibGlzdCB7XHJcblxyXG4gIH1cclxuICAmX19zdWJpdGVtIHtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19zdWJsaW5rIHtcclxuICAgIEBpbmNsdWRlIGljb24oZmxlY2hlLW5hdik7XHJcbiAgICBjb2xvcjokYWxwaGEtY29sb3I7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XHJcbiAgICBmb250LXNpemU6MnJlbTtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgZm9udC1zaXplOjEuNnJlbTtcclxuICAgICAgY29sb3I6JGJhc2UtY29sb3I7XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJGlwYWRMYW5kc2NhcGUpIHtcclxuICAgICAgZm9udC1zaXplOjEuNHJlbTtcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxcmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3RlbCB7XHJcbiAgICBmb250LXdlaWdodDo3MDA7XHJcbiAgICBmb250LXNpemU6MS43cmVtO1xyXG4gIH1cclxufVxyXG5cclxuLnNvY2lhbC1tZW51IHtcclxuICBtYXJnaW4tdG9wOjJyZW07XHJcbiAgY29sb3I6JGdyZXlEYXJrO1xyXG4gICZfX3RpdGxlIHtcclxuICAgIGZvbnQtc2l6ZToxLjJyZW07XHJcbiAgICBmb250LXdlaWdodDo3MDA7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgZm9udC1zaXplOjJyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2xpc3Qge1xyXG4gICAgbWFyZ2luLXRvcDoxcmVtO1xyXG4gIH1cclxuICAmX19pdGVtIHtcclxuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgJiArICYge1xyXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogJGlwYWRMYW5kc2NhcGUpIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDowLjVyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJl9fbGluayB7XHJcbiAgICBAaW5jbHVkZSBjZW50ZXJJY29uO1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIGZvbnQtc2l6ZToxLjhyZW07XHJcbiAgICB3aWR0aDoyLjRyZW07XHJcbiAgICBoZWlnaHQ6Mi40cmVtO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiRwaW5rTGlnaHQ7XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgZm9udC1zaXplOjIuNnJlbTtcclxuICAgICAgd2lkdGg6NC40cmVtO1xyXG4gICAgICBoZWlnaHQ6NC40cmVtO1xyXG4gICAgfVxyXG4gICAgJi5mYWNlYm9vayB7XHJcbiAgICAgIEBpbmNsdWRlIGljb24oZmFjZWJvb2spO1xyXG4gICAgfVxyXG4gICAgJi5nb29nbGUtcGx1cyB7XHJcbiAgICAgIEBpbmNsdWRlIGljb24oZ29vZ2xlLXBsdXMpO1xyXG4gICAgfVxyXG4gICAgJi50d2l0dGVyIHtcclxuICAgICAgQGluY2x1ZGUgaWNvbih0d2l0dGVyKTtcclxuICAgIH1cclxuICAgICYucGludGVyZXN0IHtcclxuICAgICAgQGluY2x1ZGUgaWNvbihwaW50ZXJlc3QpO1xyXG4gICAgfVxyXG4gICAgJi5pbnN0YWdyYW0ge1xyXG4gICAgICBAaW5jbHVkZSBpY29uKGluc3RhZ3JhbSk7XHJcbiAgICB9XHJcbiAgICAmLnlvdXR1YmUge1xyXG4gICAgICBAaW5jbHVkZSBpY29uKHlvdXR1YmUpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmJveC1saXN0IHtcclxuICAmX190aXRsZSB7XHJcbiAgICBmb250LXNpemU6Mi4ycmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbToxLjVyZW07XHJcbiAgfVxyXG4gICZfX2xpc3Qge1xyXG4gICAgPiBsaSB7XHJcbiAgICAgIG1hcmdpbi10b3A6LjVyZW07XHJcbiAgICAgID4gYSB7XHJcbiAgICAgICAgZm9udC1zaXplOjEuOHJlbTtcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcblxyXG4uYm94LWRlc3RpbmF0aW9ucyB7XHJcbiAgQGluY2x1ZGUgbWFySChhdXRvKTtcclxuICBtYXgtd2lkdGg6IDEzMHJlbTtcclxufVxyXG5cclxuLmJveC1pbnNwaXJhdGlvbnMge1xyXG4gIEBpbmNsdWRlIG1hckgoYXV0byk7XHJcbiAgbWF4LXdpZHRoOiAxMTVyZW07XHJcbiAgJl9fcm93IHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XHJcbiAgICAgIEBpbmNsdWRlIGd1dHRlcigzcmVtKTtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgJiA+ICogKyAqIHtcclxuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM4YThhOGE7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJl9fbGlzdCB7XHJcbiAgICBtYXJnaW4tdG9wOiA4cmVtO1xyXG4gICAgJiA+IGxpIHtcclxuICAgICAgJiArIGxpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOjFyZW07XHJcbiAgICAgIH1cclxuICAgICAgJiA+IGEge1xyXG4gICAgICAgIEBpbmNsdWRlIGljb24oZmxlY2hlLW5hdik7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5ib3gtZW52aWUge1xyXG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xyXG4gICAgJl9fdGV4dCB7XHJcbiAgICAgIGZvbnQtc2l6ZToxLjVyZW07XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5idXR0b24tbWVudSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XHJcbiAgfVxyXG4gIC5ib3gtbGlzdF9fdGl0bGUge1xyXG4gICAgbWFyZ2luLWJvdHRvbTowO1xyXG4gIH1cclxufVxyXG5cclxuLmJveC1hLXByb3BvcyB7XHJcbiAgQGluY2x1ZGUgbWFySChhdXRvKTtcclxuICBtYXgtd2lkdGg6IDExN3JlbTtcclxuICAmX19yb3cge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcclxuICAgICAgQGluY2x1ZGUgZ3V0dGVyKDNyZW0pO1xyXG4gICAgfVxyXG4gIH1cclxuICAuYm94LWVudmllIHtcclxuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcclxuICAgICZfX3RleHQge1xyXG4gICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgfVxyXG4gIH1cclxuICAuYWN0aW9ucyB7XHJcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xyXG4gIH1cclxufVxyXG5cclxuLmxpc3QtY29udGluZW50IHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgY29sdW1uczogNDtcclxuICAgID4gbGkge1xyXG4gICAgICAmICsgbGkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6MXJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmxpc3QtY29udGluZW50X19saW5rIHtcclxuICAgICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgICBjb2xvcjokYWxwaGEtY29sb3I7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206MC4ycmVtO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgfVxyXG4gICAgYnV0dG9uLmxpc3QtY29udGluZW50X19saW5rIHtcclxuICAgICAgY3Vyc29yOmRlZmF1bHQ7XHJcbiAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgIHRleHQtYWxpZ246bGVmdDtcclxuICAgIH1cclxuICAgIGEubGlzdC1jb250aW5lbnRfX2xpbmsge1xyXG4gICAgICAmOmhvdmVye1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1heCkgYW5kIChtYXgtd2lkdGg6ICRiZWxvd0lwYWRMYW5kc2NhcGUpIHtcclxuICAgIGNvbHVtbnM6IDU7XHJcbiAgfVxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkaXBhZExhbmRzY2FwZSkgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XHJcbiAgICBjb2x1bW5zOiA3O1xyXG4gIH1cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZykge1xyXG4gICAgY29sdW1uczogNztcclxuICB9XHJcbn1cclxuLmxpc3QtcGF5cyB7XHJcbiAgPiBsaSB7XHJcbiAgICA+IGEge1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBmb250LXNpemU6MS40cmVtO1xyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5ib3gtbWVudS1zYWlzb25zIHtcclxuICBjb2xvcjokYWxwaGEtY29sb3I7XHJcbiAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xyXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgJiArICYge1xyXG4gICAgbWFyZ2luLXRvcDo0cmVtO1xyXG4gIH1cclxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgIG1hcmdpbi10b3A6MnJlbTtcclxuICB9XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC1zaXplOjJyZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fbGlzdCB7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgICAgY29sdW1uczogNDtcclxuICAgIH1cclxuICAgID4gbGkge1xyXG4gICAgICBAaW5jbHVkZSBpY29uKGZsZWNoZS1uYXYpO1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogMC41cmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgPiBhIHtcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi5ib3gtY29tbWFuZGUtYnJvY2h1cmUge1xyXG4gIG1hcmdpbi10b3A6M3JlbTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgJl9fdGV4dCB7XHJcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIGZvbnQtc2l6ZToxLjNyZW07XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgICYgbWVudSBtb2JpbGVcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5tZW51LW1vYmlsZSB7XHJcbiAgZGlzcGxheTpub25lO1xyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDYuNXJlbTtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHBhZGRpbmctYm90dG9tOiAyMHJlbTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xyXG4gICAgei1pbmRleDogMTAwMTtcclxuXHJcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XHJcbiAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xyXG4gICAgXHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzIGVhc2UtaW47XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xyXG5cclxuICAgIC5tZW51LW1vYmlsZS1vcGVuZWQgJiB7XHJcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMjVzIGVhc2Utb3V0O1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICB9IFxyXG4gICAgJl9fZm9vdGVyIHtcclxuICAgICAgQGluY2x1ZGUgcGFkSCgycmVtKTtcclxuICAgICAgcGFkZGluZy1ib3R0b206MXJlbTtcclxuICAgICAgcG9zaXRpb246Zml4ZWQ7XHJcbiAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgIGJvdHRvbTogNnJlbTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiByZXNldFN0eWxlKCl7XHJcbiAgY29sb3I6IGluaGVyaXQ7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xyXG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xyXG4gIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xyXG4gIG1hcmdpbjowO1xyXG4gIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmV5O1xyXG59XHJcbi5tZW51LW1vYmlsZS1saXN0IHtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIGZvbnQtd2VpZ2h0OjUwMDtcclxuICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICB6LWluZGV4OjE7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XHJcbiAgYSB7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gIH1cclxuICA+IGxpIHtcclxuICAgID4gYSB7XHJcbiAgICAgIEBpbmNsdWRlIHJlc2V0U3R5bGUoKTtcclxuICAgICAgcGFkZGluZzoxLjVyZW0gMnJlbTtcclxuICAgICAgZm9udC1zaXplOjIuNHJlbTtcclxuXHJcbiAgICAgICYuanMtdG9nZ2xlLW1lbnUge1xyXG4gICAgICAgIEBpbmNsdWRlIGljb24oY2xvc2UpO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3M7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDo1cmVtO1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgcmlnaHQ6MnJlbTtcclxuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3M7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJi5vcGVuZWQge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyZXlEYXJrO1xyXG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcclxuICAgICAgICAmICsgdWwge1xyXG4gICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICA+IHVsIHtcclxuICAgICAgZGlzcGxheTpub25lO1xyXG4gICAgICA+IGxpIHtcclxuICAgICAgICA+IC5qcy1tZW51LW1vYmlsZS1uaXYyIHtcclxuICAgICAgICAgIEBpbmNsdWRlIHJlc2V0U3R5bGUoKTtcclxuICAgICAgICAgIHBhZGRpbmc6MS41cmVtIDNyZW07XHJcbiAgICAgICAgICBmb250LXNpemU6MS42cmVtO1xyXG4gICAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICAgIHRleHQtYWxpZ246bGVmdDtcclxuICAgICAgICAgICYuanMtdG9nZ2xlLW1lbnUge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBpY29uKGNsb3NlKTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcztcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDo1cmVtO1xyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgcmlnaHQ6Mi40cmVtO1xyXG4gICAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3M7XHJcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgJi5vcGVuZWQge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiNkMWQxZDE7XHJcbiAgICAgICAgICAgICYgKyB1bCB7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgPiB1bCB7XHJcbiAgICAgICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgPiAuanMtbWVudS1tb2JpbGUtbml2MyB7XHJcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcmVzZXRTdHlsZSgpO1xyXG4gICAgICAgICAgICAgIHBhZGRpbmc6MS41cmVtIDVyZW0gMS41cmVtIDRyZW07XHJcbiAgICAgICAgICAgICAgZm9udC1zaXplOjEuNnJlbTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgJi5vcGVuZWQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICAmIGNvbnRhY3RcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5jb250YWN0IHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiAwO1xyXG4gIGJvdHRvbTogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHotaW5kZXg6IDExMDA7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXlMaWdodDtcclxuICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JleTtcclxuICBwYWRkaW5nOjVyZW0gMnJlbTtcclxuICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICBvdmVyZmxvdzpoaWRkZW47XHJcblxyXG4gIHRyYW5zaXRpb246IDAuNHMgZWFzZS1pbjtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEyMCUpO1xyXG4gIGJvcmRlcjogMC44ODg4OXJlbSBzb2xpZCAkcGlua0xpZ2h0O1xyXG5cclxuICBtYXJnaW46IDRyZW0gYXV0bztcclxuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgIG1heC13aWR0aDo5MHJlbTtcclxuICAgIG1heC1oZWlnaHQ6NzRyZW07XHJcbiAgfVxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XHJcbiAgICBtYXgtd2lkdGg6MTEwcmVtO1xyXG4gICAgbWF4LWhlaWdodDo3NXJlbTtcclxuICB9XHJcbiBcclxuICAuY29udGFjdC1vcGVuZWQgJiB7XHJcbiAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2Utb3V0O1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgXHJcbiAgfVxyXG4gICZfX2lubmVyIHtcclxuICAgIGhlaWdodDoxMDAlO1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgfVxyXG4gICZfX2Nsb3NlIHtcclxuICAgIEBpbmNsdWRlIGljb24oY2xvc2UpO1xyXG4gICAgQGluY2x1ZGUgY2VudGVySWNvbjtcclxuICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgd2lkdGg6IDJyZW07XHJcbiAgICBoZWlnaHQ6IDJyZW07XHJcbiAgICBmb250LXNpemU6IDJyZW07XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICB0b3A6IC0ycmVtO1xyXG4gICAgbGVmdDogMnJlbTtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYWJvdmVJcGFkTGFuZHNjYXBlKSB7XHJcbiAgICAgIHdpZHRoOiAyLjVyZW07XHJcbiAgICAgIGhlaWdodDogMi41cmVtO1xyXG4gICAgICBmb250LXNpemU6IDIuNXJlbTtcclxuICAgIH1cclxuICAgIHNwYW4ge1xyXG4gICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX3NlY3Rpb24ge1xyXG4gICAgbWFyZ2luLXRvcDozcmVtO1xyXG4gIH1cclxuICAmX190aXRsZSB7XHJcbiAgICBmb250LXNpemU6NC40cmVtO1xyXG4gICAgdGV4dC1hbGlnbjpsZWZ0O1xyXG4gICAgZm9udC13ZWlnaHQ6bm9ybWFsO1xyXG4gICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB9XHJcbiAgJl9fYWN0aW9ucyB7XHJcbiAgICBAaW5jbHVkZSBtYXJWO1xyXG4gIH1cclxuICAmX19saXN0IHtcclxuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgQGluY2x1ZGUgbWFySDtcclxuICAgIG1heC13aWR0aDogNjByZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOjRyZW07XHJcbiAgfVxyXG4gICZfX2l0ZW0ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogNTAlO1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgfVxyXG4gICZfX3RhYi1jb250ZW50IHtcclxuICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjRyZW0pO1xyXG4gIH1cclxufVxyXG5cclxuLm1lbnUtY29udGFjdCB7XHJcbiAgZm9udC1zaXplOjJyZW07XHJcbiAgbWFyZ2luLWJvdHRvbTo0cmVtO1xyXG4gICZfX2l0ZW0ge1xyXG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcclxuICAgICAgLm1lbnUtY29udGFjdF9fbGluayB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJiArIC5tZW51LWNvbnRhY3RfX2l0ZW0ge1xyXG4gICAgICBtYXJnaW4tbGVmdDo0cmVtO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNvbnRhY3QgLmNvbnRhaW5lciB7XHJcbiAgbWF4LXdpZHRoOjg4MnB4O1xyXG59XHJcblxyXG4uY29udGFjdC1hY2N1ZWlsIHtcclxuICAmX19saW5rcyB7XHJcbiAgICBAaW5jbHVkZSBtYXJIO1xyXG4gICAgbWF4LXdpZHRoOiA2MHJlbTtcclxuICB9XHJcbiAgJl9fbGluayB7XHJcbiAgICBAaW5jbHVkZSBpY29uKGZsZWNoZS1uYXYpO1xyXG4gICAgZm9udC1zaXplOjJyZW07XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgICBmb250LXNpemU6MS41cmVtO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHRvcDogMC4ycmVtO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNvbnRhY3QtcGF5cyB7XHJcbiAgJl9faW5uZXIge1xyXG4gICAgQGluY2x1ZGUgbWFySDtcclxuICB9XHJcblxyXG4gICZfX3RleHQge1xyXG4gICAgZm9udC1zaXplOjMuNXJlbTtcclxuICAgIG1hcmdpbi1ib3R0b206NHJlbTtcclxuICAgIHRleHQtYWxpZ246bGVmdDtcclxuICB9XHJcbiAgJl9fbGlzdCB7XHJcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XHJcbiAgICBmb250LXNpemU6IDEuNHJlbTtcclxuICAgIGNvbHVtbi1jb3VudCA6IDM7XHJcbiAgICBjb2x1bW4tZ2FwIDogMTJyZW07XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgICAgY29sdW1uLWdhcCA6IDRyZW07XHJcbiAgICB9XHJcbiAgICBsaSB7XHJcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgICAmICsgbGkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6MC4ycmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAudmFsdWUge1xyXG4gICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgIHdpZHRoOiAxMHJlbTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jb250YWN0LWFnZW5jZXMge1xyXG4gICZfX2lubmVyIHtcclxuICAgIEBpbmNsdWRlIG1hckg7XHJcbiAgICBAaW5jbHVkZSBwYWRIKDE1cHgpO1xyXG5cclxuICB9XHJcbiAgJl9fbGlzdCB7XHJcbiAgICBtYXJnaW4tdG9wOjJyZW07XHJcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XHJcbiAgICBsaSB7XHJcbiAgICAgIG1pbi1oZWlnaHQ6ODVweDtcclxuICAgICAgJiArIGxpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOjJyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC50ZXh0IHtcclxuICAgICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNvbnRhY3QtaXRlbSB7XHJcbiAgJl9faWNvbiB7XHJcbiAgICBjb2xvcjokcGlua0xpZ2h0O1xyXG4gICAgZm9udC1zaXplOjZyZW07XHJcbiAgICB3aWR0aDo2cmVtO1xyXG4gICAgaGVpZ2h0OjZyZW07XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBAaW5jbHVkZSBjZW50ZXJJY29uO1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgICBsaW5lLWhlaWdodDoxO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICBmb250LXNpemU6NHJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fdGV4dCB7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC1zaXplOjEuOHJlbTtcclxuICAgIG1hcmdpbi10b3A6MDtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcclxuICAgIH1cclxuICB9XHJcbiAgJl9fbGluayB7XHJcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgfVxyXG4gIH1cclxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgICYgY29udGFjdCBtb2JpbGVcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5jb250YWN0LW1vYmlsZSB7XHJcbiAgZGlzcGxheTpub25lO1xyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDYuNXJlbTtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHBhZGRpbmctYm90dG9tOiAyMHJlbTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xyXG4gICAgei1pbmRleDogMTAwMTtcclxuXHJcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XHJcbiAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xyXG5cclxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnMgZWFzZS1pbjtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcclxuXHJcbiAgICAuY29udGFjdC1tb2JpbGUtb3BlbmVkICYge1xyXG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjI1cyBlYXNlLW91dDtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgfSBcclxuICAgICZfX2Zvb3RlciB7XHJcbiAgICAgIEBpbmNsdWRlIHBhZEgoMnJlbSk7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOjFyZW07XHJcbiAgICAgIHBvc2l0aW9uOmZpeGVkO1xyXG4gICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICBib3R0b206MDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiByZXNldFN0eWxlKCl7XHJcbiAgY29sb3I6IGluaGVyaXQ7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xyXG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xyXG4gIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xyXG4gIG1hcmdpbjowO1xyXG4gIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmV5O1xyXG59XHJcbi5jb250YWN0LW1vYmlsZS1saXN0IHtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIGZvbnQtd2VpZ2h0OjUwMDtcclxuICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICB6LWluZGV4OjE7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XHJcbiAgYSB7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gIH1cclxuICA+IGxpIHtcclxuICAgID4gYSB7XHJcbiAgICAgIEBpbmNsdWRlIHJlc2V0U3R5bGUoKTtcclxuICAgICAgcGFkZGluZzoxLjVyZW0gMnJlbTtcclxuICAgICAgZm9udC1zaXplOjIuNHJlbTtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgLnZhbHVlIHtcclxuICAgICAgICBmbG9hdDpyaWdodDtcclxuICAgICAgICBjb2xvcjokYWxwaGEtY29sb3I7XHJcbiAgICAgIH1cclxuICAgICAgJi5qcy10b2dnbGUtbWVudSB7XHJcbiAgICAgICAgQGluY2x1ZGUgaWNvbihjbG9zZSk7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcztcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OjVyZW07XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICByaWdodDoycmVtO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcztcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICYub3BlbmVkIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmV5RGFyaztcclxuICAgICAgICBjb2xvcjokd2hpdGU7XHJcbiAgICAgICAgJiArIHVsIHtcclxuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgPiB1bCB7XHJcbiAgICAgIGRpc3BsYXk6bm9uZTtcclxuICAgICAgPiBsaSB7XHJcbiAgICAgICAgPiAuY29udGFjdC1tb2JpbGUtbml2MiB7XHJcbiAgICAgICAgICBAaW5jbHVkZSByZXNldFN0eWxlKCk7XHJcbiAgICAgICAgICBwYWRkaW5nOjEuNXJlbSAzcmVtO1xyXG4gICAgICAgICAgZm9udC1zaXplOjEuNnJlbTtcclxuICAgICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOmxlZnQ7XHJcbiAgICAgICAgICAudGV4dCB7XHJcblxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLnZhbHVlIHtcclxuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgICAgICBjb2xvcjogJGFscGhhLWNvbG9yO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIuc2Nyb2xsVG9wQnV0dG9uIHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgei1pbmRleDogNDAwO1xyXG4gIGJvdHRvbTogOHJlbTtcclxuICByaWdodDogM3JlbTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoJGdyZXlEYXJrLC44KTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgb3BhY2l0eTogMDtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIHBhZGRpbmc6IDE1cHg7XHJcbiAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICBsaW5lLWhlaWdodDoxO1xyXG4gIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xyXG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjZzIGVhc2Utb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4zcyBlYXNlLW91dDtcclxuICAmOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSh0aW50KCRncmV5RGFyaywgMTUlKSwuOCk7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGljb24oZmxlY2hlLXNlbGVjdCk7XHJcbiAgJjpiZWZvcmUge1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICB0b3A6MC4ycmVtO1xyXG4gIH1cclxuXHJcbiAgJixcclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMsXHJcbiAgJjphY3RpdmUge1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB9XHJcblxyXG4gIC5zY3JvbGx0b3AtYnV0dG9uLWlzLXNob3dlZCAmIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG4gIC5wYWdlLW1hZyAmIHtcclxuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgICBsZWZ0OiAzcmVtO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICAmIG5hdiB1bml2ZXJzIFxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLm5hdi11bml2ZXJzIHtcclxuICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDpcIlwiO1xyXG4gICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICBoZWlnaHQ6MnB4O1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRiYXNlLWNvbG9yO1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgYm90dG9tOjA7XHJcbiAgICAgIGxlZnQ6MDtcclxuICAgICAgcmlnaHQ6MDtcclxuICAgIH1cclxuICAgIC5uYXYtdW5pdmVycy1tb2JpbGUtaXMtZml4ZWQgJiB7XHJcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgei1pbmRleDogMTtcclxuICAgICAgdG9wOiAkbmF2TW9iaWxlSGVpZ2h0O1xyXG4gICAgICByaWdodDogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgfVxyXG4gIH1cclxuICAmX19pbm5lciB7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgb3ZlcmZsb3cteDogYXV0bztcclxuICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgQGluY2x1ZGUgcGFkSChyZW0oNTApKTtcclxuICAgIH1cclxuICB9XHJcbiAgJl9fbGlzdCB7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgd2hpdGUtc3BhY2U6bm93cmFwO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgZGlzcGxheTpmbGV4O1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2l0ZW0ge1xyXG4gICAgZmxleC1ncm93OjE7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICB9XHJcbiAgICAmICsgJiB7XHJcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgY29udGVudDpcIlwiO1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJhc2UtY29sb3I7XHJcbiAgICAgICAgICB3aWR0aDoxcHg7XHJcbiAgICAgICAgICBoZWlnaHQ6Mi41cmVtO1xyXG4gICAgICAgICAgdG9wOjUwJTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgLm5vLXRvdWNoICYge1xyXG4gICAgICAgIC5uYXYtdW5pdmVyc19fbGluayB7XHJcbiAgICAgICAgICBjb2xvcjokYWxwaGEtY29sb3I7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuZHJvcGRvd24tYmFja2Ryb3Age1xyXG4gICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2xpbmsge1xyXG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgaGVpZ2h0OnJlbSg0Myk7XHJcbiAgICBsaW5lLWhlaWdodDpyZW0oNDMpO1xyXG4gICAgQGluY2x1ZGUgcGFkSCgxcmVtKVxyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGZvbnQtc2l6ZToxLjRyZW07XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLjJyZW07XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgaGVpZ2h0OnJlbSg1MCk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OnJlbSg1MCk7XHJcbiAgICAgIGZvbnQtc2l6ZToxLjZyZW07XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICBtYXJnaW46MC41cmVtO1xyXG4gICAgfVxyXG4gICAgPiBzcGFuIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICBsaW5lLWhlaWdodDogMS4xO1xyXG4gICAgfVxyXG4gICAgLndpdGgtc291c25hdiAmIHtcclxuICAgICAgQGluY2x1ZGUgaWNvbihmbGVjaGUtbmF2LCBhZnRlcik7XHJcbiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OjIuNXJlbTtcclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOjUwJTtcclxuICAgICAgICByaWdodDogMXJlbTtcclxuICAgICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICAgICAgd2lkdGg6MXJlbTtcclxuICAgICAgICBoZWlnaHQ6MXJlbTtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKSB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0Om5vcm1hbDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtMC4ycmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuaG9tZSAmIHNwYW4ge1xyXG4gICAgICBAaW5jbHVkZSBpY29uKGhvbWUpO1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcclxuICAgICAgICBmb250LXNpemU6IDAuODRlbTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdG9wOiAtMC4xZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5hY3RpdmUgJntcclxuICAgICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBjb250ZW50OlwiXCI7XHJcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgaGVpZ2h0OjRweDtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJhc2UtY29sb3I7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIGJvdHRvbTowO1xyXG4gICAgICAgICAgbGVmdDowO1xyXG4gICAgICAgICAgcmlnaHQ6MDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC50b3VjaCAub3BlbiAmIHtcclxuICAgICAgY29sb3I6JGFscGhhLWNvbG9yO1xyXG4gICAgfVxyXG4gICAgLm1vaXMgJiAubG9uZyB7XHJcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSBhbmQgKG1heC13aWR0aDogMTEwMHB4KSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmX19jbG9zZSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6MDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgd2lkdGg6IDRyZW07XHJcbiAgICBoZWlnaHQ6IDRyZW07XHJcbiAgICBsaW5lLWhlaWdodDo0cmVtO1xyXG4gICAgZm9udC1zaXplOjRyZW07XHJcbiAgICBjb2xvcjokYWxwaGEtY29sb3I7XHJcbiAgICAubm8tdG91Y2ggJiB7XHJcbiAgICAgIGRpc3BsYXk6bm9uZTtcclxuICAgIH0gXHJcbiAgfVxyXG59XHJcbi5uYXYtdW5pdmVycy1tb2JpbGUtd3JhcHBlciB7XHJcbiAgaGVpZ2h0OnJlbSg1MCk7XHJcbn1cclxuXHJcbi5zb3VzbmF2LXVuaXZlcnMge1xyXG4gIGRpc3BsYXk6bm9uZTtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgYm9yZGVyOiAycHggc29saWQgJGFscGhhLWNvbG9yO1xyXG4gIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgbGluZS1oZWlnaHQ6bm9ybWFsO1xyXG4gIEBpbmNsdWRlIGJveFNoYWRvdztcclxuICB0ZXh0LWFsaWduOmxlZnQ7XHJcbiAgei1pbmRleDogOTk1O1xyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgbGVmdDogMnJlbTtcclxuICAgIHJpZ2h0OiAycmVtO1xyXG4gICAgbWFyZ2luLXRvcDogLTJweDtcclxuICAgIGJvcmRlci13aWR0aDogM3B4O1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICB9XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgIG1hcmdpbi10b3A6LTFyZW07XHJcbiAgICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIH1cclxuICAudG91Y2ggJiB7XHJcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMThyZW0pO1xyXG4gICAgb3ZlcmZsb3cteTogYXV0bztcclxuICB9XHJcblxyXG4gICZfX2xpbmsge1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIHBhZGRpbmc6IDFyZW07XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgLm5vLXRvdWNoICYge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWJnO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAudG91Y2ggJiB7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6M3JlbTtcclxuICAgIH1cclxuICB9XHJcbiAgLm5hdi11bml2ZXJzX19pdGVtOmhvdmVyICYsXHJcbiAgLm5hdi11bml2ZXJzX19pdGVtOmZvY3VzICYge1xyXG4gICAgLm5vLXRvdWNoICYge1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgfVxyXG4gIH1cclxuICAudG91Y2ggLm9wZW4gJiB7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gIH1cclxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgICYgUHJpbnRcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcblxyXG4gIEBtZWRpYSBwcmludFxyXG57ICAgIFxyXG4gICAgLm5vLXByaW50LCAubm8tcHJpbnQgKlxyXG4gICAge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxufSIsIi8qIFNsaWRlciAqL1xyXG5cclxuLnNsaWNrLXNsaWRlciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XHJcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XHJcbiAgICB0b3VjaC1hY3Rpb246IHBhbi15O1xyXG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG4uc2xpY2stbGlzdCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICY6Zm9jdXMge1xyXG4gICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJi5kcmFnZ2luZyB7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIGN1cnNvcjogaGFuZDtcclxuICAgIH1cclxufVxyXG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcclxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG59XHJcblxyXG4uc2xpY2stdHJhY2sge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG5cclxuICAgICY6YmVmb3JlLFxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBjbGVhcjogYm90aDtcclxuICAgIH1cclxuXHJcbiAgICAuc2xpY2stbG9hZGluZyAmIHtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICB9XHJcbn1cclxuLnNsaWNrLXNsaWRlIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgbWluLWhlaWdodDogMXB4O1xyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICB9XHJcbiAgICBbZGlyPVwicnRsXCJdICYge1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgIH1cclxuICAgIGltZyB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OmF1dG87XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6YXV0bztcclxuICAgIH1cclxuICAgICYuc2xpY2stbG9hZGluZyBpbWcge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICAmLmRyYWdnaW5nIGltZyB7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWNrLWluaXRpYWxpemVkICYge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGljay1sb2FkaW5nICYge1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIH1cclxuXHJcbiAgICAuc2xpY2stdmVydGljYWwgJiB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgfVxyXG59XHJcbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLyBEZWZhdWx0IFZhcmlhYmxlc1xyXG5cclxuLy8gU2xpY2sgaWNvbiBlbnRpdHkgY29kZXMgb3V0cHV0cyB0aGUgZm9sbG93aW5nXHJcbi8vIFwiXFwyMTkwXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLihpBcIlxyXG4vLyBcIlxcMjE5MlwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oaSXCJcclxuLy8gXCJcXDIwMjJcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKAolwiXHJcblxyXG4kc2xpY2stZm9udC1wYXRoOiBcIi4uL2ZvbnQvXCIgIWRlZmF1bHQ7XHJcbiRzbGljay1mb250LWZhbWlseTogXCJzbGlja1wiICFkZWZhdWx0O1xyXG4kc2xpY2stbG9hZGVyLXBhdGg6IFwiLi4vaW1hZ2VzL1wiICFkZWZhdWx0O1xyXG4kc2xpY2stYXJyb3ctY29sb3I6IHJnYmEoMCwwLDAsMSkgIWRlZmF1bHQ7XHJcbiRzbGljay1kb3QtY29sb3I6ICNlZWUgIWRlZmF1bHQ7XHJcbiRzbGljay1kb3QtY29sb3ItYWN0aXZlOiAjMTExICFkZWZhdWx0O1xyXG4kc2xpY2stcHJldi1jaGFyYWN0ZXI6IFwiXFwyMTkwXCIgIWRlZmF1bHQ7XHJcbiRzbGljay1uZXh0LWNoYXJhY3RlcjogXCJcXDIxOTJcIiAhZGVmYXVsdDtcclxuJHNsaWNrLWRvdC1jaGFyYWN0ZXI6IFwiXFwyMDIyXCIgIWRlZmF1bHQ7XHJcbiRzbGljay1kb3Qtc2l6ZTogMTBweCAhZGVmYXVsdDtcclxuJHNsaWNrLW9wYWNpdHktZGVmYXVsdDogMC43NSAhZGVmYXVsdDtcclxuJHNsaWNrLW9wYWNpdHktb24taG92ZXI6IDEgIWRlZmF1bHQ7XHJcbiRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU6IDAuMjUgIWRlZmF1bHQ7XHJcblxyXG5AZnVuY3Rpb24gc2xpY2staW1hZ2UtdXJsKCR1cmwpIHtcclxuICAgIEBpZiBmdW5jdGlvbi1leGlzdHMoaW1hZ2UtdXJsKSB7XHJcbiAgICAgICAgQHJldHVybiBpbWFnZS11cmwoJHVybCk7XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgICAgQHJldHVybiB1cmwoJHNsaWNrLWxvYWRlci1wYXRoICsgJHVybCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBzbGljay1mb250LXVybCgkdXJsKSB7XHJcbiAgICBAaWYgZnVuY3Rpb24tZXhpc3RzKGZvbnQtdXJsKSB7XHJcbiAgICAgICAgQHJldHVybiBmb250LXVybCgkdXJsKTtcclxuICAgIH1cclxuICAgIEBlbHNlIHtcclxuICAgICAgICBAcmV0dXJuIHVybCgkc2xpY2stZm9udC1wYXRoICsgJHVybCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIFNsaWRlciAqL1xyXG5cclxuLnNsaWNrLWxpc3Qge1xyXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZiBzbGljay1pbWFnZS11cmwoXCJhamF4LWxvYWRlci5naWZcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIEljb25zICovXHJcbkBpZiAkc2xpY2stZm9udC1mYW1pbHkgPT0gXCJzbGlja1wiIHtcclxuICAgIEBmb250LWZhY2Uge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XHJcbiAgICAgICAgc3JjOiBzbGljay1mb250LXVybChcInNsaWNrLmVvdFwiKTtcclxuICAgICAgICBzcmM6IHNsaWNrLWZvbnQtdXJsKFwic2xpY2suZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2sudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLnN2ZyNzbGlja1wiKSBmb3JtYXQoXCJzdmdcIik7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIEFycm93cyAqL1xyXG5cclxuLnNsaWNrLXByZXYsXHJcbi5zbGljay1uZXh0IHtcclxuICAgQGluY2x1ZGUgY2VudGVySWNvbihhYnNvbHV0ZSk7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGhlaWdodDogM3JlbTtcclxuICAgIHdpZHRoOiAzcmVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IDBweDtcclxuICAgIGZvbnQtc2l6ZTogMHB4O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIG91dGxpbmU6IG5vbmU7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktb24taG92ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYuc2xpY2stZGlzYWJsZWQge1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkc2xpY2stZm9udC1mYW1pbHk7XHJcbiAgICAgICAgZm9udC1zaXplOiA2cmVtO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgIGNvbG9yOiAkc2xpY2stYXJyb3ctY29sb3I7XHJcbiAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktZGVmYXVsdDtcclxuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgfVxyXG59XHJcbi5uby10b3VjaCB7XHJcbiAgLnNsaWNrLXByZXYsXHJcbiAgLnNsaWNrLW5leHQge1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIG91dGxpbmU6IG5vbmU7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktb24taG92ZXI7XHJcbiAgICAgIH1cclxuICAgICAgJi5zbGljay1kaXNhYmxlZCB7XHJcbiAgICAgICAgY3Vyc29yOmRlZmF1bHQ7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiRidXR0b25PZmZzZXQgOiAtNXJlbTtcclxuLnNsaWNrLXByZXYge1xyXG4gIGxlZnQ6ICRidXR0b25PZmZzZXQ7XHJcbiAgQGluY2x1ZGUgaWNvbihzbGlkZXItbGVmdClcclxuICBbZGlyPVwicnRsXCJdICYge1xyXG4gICAgQGluY2x1ZGUgaWNvbihzbGlkZXItcmlnaHQpXHJcbiAgICBsZWZ0OiBhdXRvO1xyXG4gICAgcmlnaHQ6ICRidXR0b25PZmZzZXQ7XHJcbiAgfVxyXG59XHJcblxyXG4uc2xpY2stbmV4dCB7XHJcbiAgQGluY2x1ZGUgaWNvbihzbGlkZXItcmlnaHQpXHJcbiAgcmlnaHQ6ICRidXR0b25PZmZzZXQ7XHJcbiAgW2Rpcj1cInJ0bFwiXSAmIHtcclxuICAgIEBpbmNsdWRlIGljb24oc2xpZGVyLXJpZ2h0KVxyXG4gICAgbGVmdDogJGJ1dHRvbk9mZnNldDtcclxuICAgIHJpZ2h0OiBhdXRvO1xyXG4gIH1cclxufVxyXG5cclxuLyogRG90cyAqL1xyXG5cclxuLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxufVxyXG5cclxuLnNsaWNrLWRvdHMge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm90dG9tOiAtMjVweDtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGxpIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICB3aWR0aDogMjBweDtcclxuICAgICAgICBtYXJnaW46IDAgNXB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMHB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDBweDtcclxuICAgICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA1cHg7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICRzbGljay1kb3QtY2hhcmFjdGVyO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJHNsaWNrLWZvbnQtZmFtaWx5O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkc2xpY2stZG90LXNpemU7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcclxuICAgICAgICAgICAgY29sb3I6ICRzbGljay1kb3QtY29sb3ItYWN0aXZlO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIuYXdlc29tcGxldGUge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgW2hpZGRlbl0ge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbiAgLnZpc3VhbGx5LWhpZGRlbiB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xyXG4gIH1cclxuICA+IGlucHV0IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuICA+IHVsIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgJjplbXB0eSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgbWFyZ2luOiAuMmVtIDAgMDtcclxuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgIHRleHQtc2hhZG93OiBub25lO1xyXG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAxcHggMHB4IHJnYmEoJGJsYWNrLCAwLjIpO1xyXG4gICAgPiBsaSB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgcGFkZGluZzogLjVlbSAuN2VtO1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgIHRleHQtYWxpZ246bGVmdDtcclxuICAgICAgZm9udC1zaXplOjEuOHJlbTtcclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJlthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGdyZXlMaWdodDtcclxuICAgICAgfVxyXG4gICAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgICAgcGFkZGluZzogLjJlbSAuNWVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIG1hcmsge1xyXG4gICAgY29sb3I6JGJsdWU7XHJcbiAgICBmb250LXdlaWdodDpib2xkO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcclxuICB9XHJcbn1cclxuIiwiQGltcG9ydCBcInZhcmlhYmxlc1wiO1xyXG5cclxuLy8gTWl4aW5zXHJcbkBtaXhpbiBjdXJzb3ItZGlzYWJsZWQoKSB7XHJcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxufVxyXG5cclxuQG1peGluIGJveC1zaXppbmcoJGZtdCkge1xyXG4gIC13ZWJraXQtYm94LXNpemluZzogJGZtdDtcclxuICAgICAtbW96LWJveC1zaXppbmc6ICRmbXQ7XHJcbiAgICAgICAgICBib3gtc2l6aW5nOiAkZm10O1xyXG59XHJcblxyXG5AbWl4aW4gYm94LXNoYWRvdygkZm10KSB7XHJcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAkZm10O1xyXG4gICAgICAgICAgYm94LXNoYWRvdzogJGZtdDtcclxufVxyXG5cclxuQGZ1bmN0aW9uIGZhZGUoJGNvbG9yLCAkYW1udCkge1xyXG4gIEBpZiAkYW1udCA+IDEge1xyXG4gICAgJGFtbnQ6ICRhbW50IC8gMTAwOyAvLyBjb252ZXJ0IHRvIHBlcmNlbnRhZ2UgaWYgaW50XHJcbiAgfVxyXG4gIEByZXR1cm4gcmdiYSgkY29sb3IsICRhbW50KTtcclxufVxyXG5cclxuLy8gUnVsZXNcclxuc2VsZWN0LmJzLXNlbGVjdC1oaWRkZW4sXHJcbnNlbGVjdC5zZWxlY3RwaWNrZXIge1xyXG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmJvb3RzdHJhcC1zZWxlY3Qge1xyXG4gIHdpZHRoOiAyMjBweCBcXDA7IC8qSUU5IGFuZCBiZWxvdyovXHJcblxyXG4gIC8vIFRoZSBzZWxlY3RwaWNrZXIgYnV0dG9uXHJcbiAgPiAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcclxuICAgIHotaW5kZXg6IDE7XHJcblxyXG4gICAgJi5icy1wbGFjZWhvbGRlcixcclxuICAgICYuYnMtcGxhY2Vob2xkZXI6aG92ZXIsXHJcbiAgICAmLmJzLXBsYWNlaG9sZGVyOmZvY3VzLFxyXG4gICAgJi5icy1wbGFjZWhvbGRlcjphY3RpdmUgeyBjb2xvcjogJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOyB9XHJcbiAgfVxyXG5cclxuICA+IHNlbGVjdCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICB3aWR0aDogMC41cHggIWltcG9ydGFudDtcclxuICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG4gICAgb3BhY2l0eTogMCAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG5cclxuICAgICYubW9iaWxlLWRldmljZSB7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgei1pbmRleDogMjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIEVycm9yIGRpc3BsYXlcclxuICAuaGFzLWVycm9yICYgLmRyb3Bkb3duLXRvZ2dsZSxcclxuICAuZXJyb3IgJiAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXJlZC1lcnJvcjtcclxuICB9XHJcblxyXG4gICYuZml0LXdpZHRoIHtcclxuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAmOm5vdChbY2xhc3MqPVwiY29sLVwiXSk6bm90KFtjbGFzcyo9XCJmb3JtLWNvbnRyb2xcIl0pOm5vdCguaW5wdXQtZ3JvdXAtYnRuKSB7XHJcbiAgICB3aWR0aDogJHdpZHRoLWRlZmF1bHQ7XHJcbiAgfVxyXG5cclxuICAuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcclxuICAgIG91dGxpbmU6IHRoaW4gZG90dGVkICMzMzMzMzMgIWltcG9ydGFudDtcclxuICAgIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvciAhaW1wb3J0YW50O1xyXG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XHJcbiAgfVxyXG59XHJcblxyXG4uYm9vdHN0cmFwLXNlbGVjdC5mb3JtLWNvbnRyb2wge1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICBib3JkZXI6IG5vbmU7XHJcblxyXG4gICY6bm90KFtjbGFzcyo9XCJjb2wtXCJdKSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcblxyXG4gICYuaW5wdXQtZ3JvdXAtYnRuIHtcclxuICAgIHotaW5kZXg6IGF1dG87XHJcblxyXG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgPiAuYnRuIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBUaGUgc2VsZWN0cGlja2VyIGNvbXBvbmVudHNcclxuLmJvb3RzdHJhcC1zZWxlY3QuYnRuLWdyb3VwIHtcclxuICAmOm5vdCguaW5wdXQtZ3JvdXAtYnRuKSxcclxuICAmW2NsYXNzKj1cImNvbC1cIl0ge1xyXG4gICAgZmxvYXQ6IG5vbmU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuICB9XHJcblxyXG4gIC8vIEZvcmNlcyB0aGUgcHVsbCB0byB0aGUgcmlnaHQsIGlmIG5lY2Vzc2FyeVxyXG4gICYsXHJcbiAgJltjbGFzcyo9XCJjb2wtXCJdLFxyXG4gIC5yb3cgJltjbGFzcyo9XCJjb2wtXCJdIHtcclxuICAgICYuZHJvcGRvd24tbWVudS1yaWdodCB7XHJcbiAgICAgIGZsb2F0OiByaWdodDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5mb3JtLWlubGluZSAmLFxyXG4gIC5mb3JtLWhvcml6b250YWwgJixcclxuICAuZm9ybS1ncm91cCAmIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgfVxyXG5cclxuICAuZm9ybS1ncm91cC1sZyAmLmZvcm0tY29udHJvbCxcclxuICAuZm9ybS1ncm91cC1zbSAmLmZvcm0tY29udHJvbCB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgIC5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBTZXQgdGhlIHdpZHRoIG9mIHRoZSBsaXZlIHNlYXJjaCAoYW5kIGFueSBvdGhlciBmb3JtIGNvbnRyb2wgd2l0aGluIGFuIGlubGluZSBmb3JtKVxyXG4gIC8vIHNlZSBodHRwczovL2dpdGh1Yi5jb20vc2lsdmlvbW9yZXRvL2Jvb3RzdHJhcC1zZWxlY3QvaXNzdWVzLzY4NVxyXG4gIC5mb3JtLWlubGluZSAmIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG5cclxuICAmLmRpc2FibGVkLFxyXG4gID4gLmRpc2FibGVkIHtcclxuICAgIEBpbmNsdWRlIGN1cnNvci1kaXNhYmxlZCgpO1xyXG5cclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLmJzLWNvbnRhaW5lciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBoZWlnaHQ6IDAgIWltcG9ydGFudDtcclxuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuXHJcbiAgICAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgIHotaW5kZXg6ICR6aW5kZXgtc2VsZWN0LWRyb3Bkb3duO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gVGhlIHNlbGVjdHBpY2tlciBidXR0b25cclxuICAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgIC5maWx0ZXItb3B0aW9uIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIH1cclxuXHJcbiAgICAuY2FyZXQge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogNTAlO1xyXG4gICAgICByaWdodDogMTJweDtcclxuICAgICAgbWFyZ2luLXRvcDogLTJweDtcclxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICZbY2xhc3MqPVwiY29sLVwiXSAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgLy8gVGhlIHNlbGVjdHBpY2tlciBkcm9wZG93blxyXG4gIC5kcm9wZG93bi1tZW51IHtcclxuICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcblxyXG4gICAgJi5pbm5lciB7XHJcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICBib3JkZXI6IDA7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICBsaSB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICYuYWN0aXZlIHNtYWxsIHtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi5kaXNhYmxlZCBhIHtcclxuICAgICAgICBAaW5jbHVkZSBjdXJzb3ItZGlzYWJsZWQoKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG5cclxuICAgICAgICAmLm9wdCB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIuMjVlbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHNwYW4uY2hlY2stbWFyayB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgc3Bhbi50ZXh0IHtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHNtYWxsIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNWVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm5vdGlmeSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgYm90dG9tOiA1cHg7XHJcbiAgICAgIHdpZHRoOiA5NiU7XHJcbiAgICAgIG1hcmdpbjogMCAyJTtcclxuICAgICAgbWluLWhlaWdodDogMjZweDtcclxuICAgICAgcGFkZGluZzogM3B4IDVweDtcclxuICAgICAgYmFja2dyb3VuZDogcmdiKDI0NSwgMjQ1LCAyNDUpO1xyXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2IoMjI3LCAyMjcsIDIyNyk7XHJcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IGZhZGUocmdiKDAsIDAsIDApLCA1KSk7XHJcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICBvcGFjaXR5OiAwLjk7XHJcbiAgICAgIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubm8tcmVzdWx0cyB7XHJcbiAgICBwYWRkaW5nOiAzcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xyXG4gICAgbWFyZ2luOiAwIDVweDtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgfVxyXG5cclxuICAmLmZpdC13aWR0aCAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgIC5maWx0ZXItb3B0aW9uIHtcclxuICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgIH1cclxuXHJcbiAgICAuY2FyZXQge1xyXG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICB0b3A6IGF1dG87XHJcbiAgICAgIG1hcmdpbi10b3A6IC0xcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLnNob3ctdGljayAuZHJvcGRvd24tbWVudSBsaSB7XHJcbiAgICAmLnNlbGVjdGVkIGEgc3Bhbi5jaGVjay1tYXJrIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHJpZ2h0OiAxNXB4O1xyXG4gICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgYSBzcGFuLnRleHQge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDM0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uYm9vdHN0cmFwLXNlbGVjdC5zaG93LW1lbnUtYXJyb3cge1xyXG4gICYub3BlbiA+IC5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgei1pbmRleDogKCR6aW5kZXgtc2VsZWN0LWRyb3Bkb3duICsgMSk7XHJcbiAgfVxyXG5cclxuICAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICAgIGJvcmRlci1sZWZ0OiA3cHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgIGJvcmRlci1yaWdodDogN3B4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICBib3JkZXItYm90dG9tOiA3cHggc29saWQgJGNvbG9yLWdyZXktYXJyb3c7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgYm90dG9tOiAtNHB4O1xyXG4gICAgICBsZWZ0OiA5cHg7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICBib3JkZXItbGVmdDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICBib3JkZXItcmlnaHQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogNnB4IHNvbGlkIHdoaXRlO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGJvdHRvbTogLTRweDtcclxuICAgICAgbGVmdDogMTBweDtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuZHJvcHVwIC5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBib3R0b206IGF1dG87XHJcbiAgICAgIHRvcDogLTNweDtcclxuICAgICAgYm9yZGVyLXRvcDogN3B4IHNvbGlkICRjb2xvci1ncmV5LWFycm93O1xyXG4gICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBib3R0b206IGF1dG87XHJcbiAgICAgIHRvcDogLTNweDtcclxuICAgICAgYm9yZGVyLXRvcDogNnB4IHNvbGlkIHdoaXRlO1xyXG4gICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5wdWxsLXJpZ2h0IC5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICByaWdodDogMTJweDtcclxuICAgICAgbGVmdDogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgcmlnaHQ6IDEzcHg7XHJcbiAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLm9wZW4gPiAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgICY6YmVmb3JlLFxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmJzLXNlYXJjaGJveCxcclxuLmJzLWFjdGlvbnNib3gsXHJcbi5icy1kb25lYnV0dG9uIHtcclxuICBwYWRkaW5nOiA0cHggOHB4O1xyXG59XHJcblxyXG4uYnMtYWN0aW9uc2JveCB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcclxuXHJcbiAgJiAuYnRuLWdyb3VwIGJ1dHRvbiB7XHJcbiAgICB3aWR0aDogNTAlO1xyXG4gIH1cclxufVxyXG5cclxuLmJzLWRvbmVidXR0b24ge1xyXG4gIGZsb2F0OiBsZWZ0O1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcblxyXG4gICYgLmJ0bi1ncm91cCBidXR0b24ge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG59XHJcblxyXG4uYnMtc2VhcmNoYm94IHtcclxuICAmICsgLmJzLWFjdGlvbnNib3gge1xyXG4gICAgcGFkZGluZzogMCA4cHggNHB4O1xyXG4gIH1cclxuXHJcbiAgJiAuZm9ybS1jb250cm9sIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGZsb2F0OiBub25lO1xyXG4gIH1cclxufVxyXG4iLCIkY29sb3ItcmVkLWVycm9yOiByZ2IoMTg1LCA3NCwgNzIpICFkZWZhdWx0O1xyXG4kY29sb3ItZ3JleS1hcnJvdzogcmdiYSgyMDQsIDIwNCwgMjA0LCAwLjIpICFkZWZhdWx0O1xyXG5cclxuJHdpZHRoLWRlZmF1bHQ6IDIyMHB4ICFkZWZhdWx0OyAvLyAzIDk2MHB4LWdyaWQgY29sdW1uc1xyXG5cclxuJHppbmRleC1zZWxlY3QtZHJvcGRvd246IDEwNjAgIWRlZmF1bHQ7IC8vIG11c3QgYmUgaGlnaGVyIHRoYW4gYSBtb2RhbCBiYWNrZ3JvdW5kICgxMDUwKVxyXG5cclxuLy8qKiBQbGFjZWhvbGRlciB0ZXh0IGNvbG9yXHJcbiRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcjogIzk5OSAhZGVmYXVsdDsiLCIvKiFcclxuICogRGF0ZXBpY2tlciBmb3IgQm9vdHN0cmFwIHYxLjcuMSAoaHR0cHM6Ly9naXRodWIuY29tL3V4c29sdXRpb25zL2Jvb3RzdHJhcC1kYXRlcGlja2VyKVxyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UgdjIuMCAoaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wKVxyXG4gKi9cclxuXHJcbi5kYXRlcGlja2VyIHtcclxuICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgZGlyZWN0aW9uOiBsdHI7XHJcbn1cclxuLmRhdGVwaWNrZXItaW5saW5lIHtcclxuICB3aWR0aDogMjIwcHg7XHJcbn1cclxuLmRhdGVwaWNrZXItcnRsIHtcclxuICBkaXJlY3Rpb246IHJ0bDtcclxufVxyXG4uZGF0ZXBpY2tlci1ydGwuZHJvcGRvd24tbWVudSB7XHJcbiAgbGVmdDogYXV0bztcclxufVxyXG4uZGF0ZXBpY2tlci1ydGwgdGFibGUgdHIgdGQgc3BhbiB7XHJcbiAgZmxvYXQ6IHJpZ2h0O1xyXG59XHJcbi5kYXRlcGlja2VyLWRyb3Bkb3duIHtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxuICBwYWRkaW5nOiA0cHg7XHJcbn1cclxuLmRhdGVwaWNrZXItZHJvcGRvd246YmVmb3JlIHtcclxuICBjb250ZW50OiAnJztcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgYm9yZGVyLWxlZnQ6IDdweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItcmlnaHQ6IDdweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItYm90dG9tOiA3cHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjE1KTtcclxuICBib3JkZXItdG9wOiAwO1xyXG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbn1cclxuLmRhdGVwaWNrZXItZHJvcGRvd246YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6ICcnO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBib3JkZXItbGVmdDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1yaWdodDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1ib3R0b206IDZweCBzb2xpZCAjZmZmO1xyXG4gIGJvcmRlci10b3A6IDA7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG59XHJcbi5kYXRlcGlja2VyLWRyb3Bkb3duLmRhdGVwaWNrZXItb3JpZW50LWxlZnQ6YmVmb3JlIHtcclxuICBsZWZ0OiA2cHg7XHJcbn1cclxuLmRhdGVwaWNrZXItZHJvcGRvd24uZGF0ZXBpY2tlci1vcmllbnQtbGVmdDphZnRlciB7XHJcbiAgbGVmdDogN3B4O1xyXG59XHJcbi5kYXRlcGlja2VyLWRyb3Bkb3duLmRhdGVwaWNrZXItb3JpZW50LXJpZ2h0OmJlZm9yZSB7XHJcbiAgcmlnaHQ6IDZweDtcclxufVxyXG4uZGF0ZXBpY2tlci1kcm9wZG93bi5kYXRlcGlja2VyLW9yaWVudC1yaWdodDphZnRlciB7XHJcbiAgcmlnaHQ6IDdweDtcclxufVxyXG4uZGF0ZXBpY2tlci1kcm9wZG93bi5kYXRlcGlja2VyLW9yaWVudC1ib3R0b206YmVmb3JlIHtcclxuICB0b3A6IC03cHg7XHJcbn1cclxuLmRhdGVwaWNrZXItZHJvcGRvd24uZGF0ZXBpY2tlci1vcmllbnQtYm90dG9tOmFmdGVyIHtcclxuICB0b3A6IC02cHg7XHJcbn1cclxuLmRhdGVwaWNrZXItZHJvcGRvd24uZGF0ZXBpY2tlci1vcmllbnQtdG9wOmJlZm9yZSB7XHJcbiAgYm90dG9tOiAtN3B4O1xyXG4gIGJvcmRlci1ib3R0b206IDA7XHJcbiAgYm9yZGVyLXRvcDogN3B4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xNSk7XHJcbn1cclxuLmRhdGVwaWNrZXItZHJvcGRvd24uZGF0ZXBpY2tlci1vcmllbnQtdG9wOmFmdGVyIHtcclxuICBib3R0b206IC02cHg7XHJcbiAgYm9yZGVyLWJvdHRvbTogMDtcclxuICBib3JkZXItdG9wOiA2cHggc29saWQgI2ZmZjtcclxufVxyXG4uZGF0ZXBpY2tlciB0YWJsZSB7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcclxuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcclxuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xyXG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcclxuICB1c2VyLXNlbGVjdDogbm9uZTtcclxufVxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGgge1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB3aWR0aDogMzBweDtcclxuICBoZWlnaHQ6IDMwcHg7XHJcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gIGJvcmRlcjogbm9uZTtcclxufVxyXG4udGFibGUtc3RyaXBlZCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCxcclxuLnRhYmxlLXN0cmlwZWQgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGgge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLm9sZCxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQubmV3IHtcclxuICBjb2xvcjogIzc3Nzc3NztcclxufVxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5kYXk6aG92ZXIsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmZvY3VzZWQge1xyXG4gIGJhY2tncm91bmQ6ICNlZWVlZWU7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmRpc2FibGVkLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5kaXNhYmxlZDpob3ZlciB7XHJcbiAgYmFja2dyb3VuZDogbm9uZTtcclxuICBjb2xvcjogIzc3Nzc3NztcclxuICBjdXJzb3I6IGRlZmF1bHQ7XHJcbn1cclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuaGlnaGxpZ2h0ZWQge1xyXG4gIGNvbG9yOiAjMDAwO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNkOWVkZjc7XHJcbiAgYm9yZGVyLWNvbG9yOiAjODVjNWU1O1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7XHJcbn1cclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuaGlnaGxpZ2h0ZWQ6Zm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmhpZ2hsaWdodGVkLmZvY3VzIHtcclxuICBjb2xvcjogIzAwMDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWZkOWVlO1xyXG4gIGJvcmRlci1jb2xvcjogIzI5OGZjMjtcclxufVxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5oaWdobGlnaHRlZDpob3ZlciB7XHJcbiAgY29sb3I6ICMwMDA7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FmZDllZTtcclxuICBib3JkZXItY29sb3I6ICM1MmFkZGI7XHJcbn1cclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuaGlnaGxpZ2h0ZWQ6YWN0aXZlLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5oaWdobGlnaHRlZC5hY3RpdmUge1xyXG4gIGNvbG9yOiAjMDAwO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNhZmQ5ZWU7XHJcbiAgYm9yZGVyLWNvbG9yOiAjNTJhZGRiO1xyXG59XHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmhpZ2hsaWdodGVkOmFjdGl2ZTpob3ZlcixcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuaGlnaGxpZ2h0ZWQuYWN0aXZlOmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5oaWdobGlnaHRlZDphY3RpdmU6Zm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmhpZ2hsaWdodGVkLmFjdGl2ZTpmb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuaGlnaGxpZ2h0ZWQ6YWN0aXZlLmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5oaWdobGlnaHRlZC5hY3RpdmUuZm9jdXMge1xyXG4gIGNvbG9yOiAjMDAwO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICM5MWNiZTg7XHJcbiAgYm9yZGVyLWNvbG9yOiAjMjk4ZmMyO1xyXG59XHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmhpZ2hsaWdodGVkLmRpc2FibGVkOmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5oaWdobGlnaHRlZFtkaXNhYmxlZF06aG92ZXIsXHJcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5oaWdobGlnaHRlZDpob3ZlcixcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuaGlnaGxpZ2h0ZWQuZGlzYWJsZWQ6Zm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmhpZ2hsaWdodGVkW2Rpc2FibGVkXTpmb2N1cyxcclxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmhpZ2hsaWdodGVkOmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5oaWdobGlnaHRlZC5kaXNhYmxlZC5mb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuaGlnaGxpZ2h0ZWRbZGlzYWJsZWRdLmZvY3VzLFxyXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuaGlnaGxpZ2h0ZWQuZm9jdXMge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNkOWVkZjc7XHJcbiAgYm9yZGVyLWNvbG9yOiAjODVjNWU1O1xyXG59XHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmhpZ2hsaWdodGVkLmZvY3VzZWQge1xyXG4gIGJhY2tncm91bmQ6ICNhZmQ5ZWU7XHJcbn1cclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuaGlnaGxpZ2h0ZWQuZGlzYWJsZWQsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmhpZ2hsaWdodGVkLmRpc2FibGVkOmFjdGl2ZSB7XHJcbiAgYmFja2dyb3VuZDogI2Q5ZWRmNztcclxuICBjb2xvcjogIzc3Nzc3NztcclxufVxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheSB7XHJcbiAgY29sb3I6ICMwMDA7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZGI5OTtcclxuICBib3JkZXItY29sb3I6ICNmZmI3MzM7XHJcbn1cclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXk6Zm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmZvY3VzIHtcclxuICBjb2xvcjogIzAwMDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjOTY2O1xyXG4gIGJvcmRlci1jb2xvcjogI2IzNzQwMDtcclxufVxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheTpob3ZlciB7XHJcbiAgY29sb3I6ICMwMDA7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzk2NjtcclxuICBib3JkZXItY29sb3I6ICNmNTllMDA7XHJcbn1cclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXk6YWN0aXZlLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5hY3RpdmUge1xyXG4gIGNvbG9yOiAjMDAwO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmM5NjY7XHJcbiAgYm9yZGVyLWNvbG9yOiAjZjU5ZTAwO1xyXG59XHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5OmFjdGl2ZTpob3ZlcixcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXkuYWN0aXZlOmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheTphY3RpdmU6Zm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmFjdGl2ZTpmb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXk6YWN0aXZlLmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5hY3RpdmUuZm9jdXMge1xyXG4gIGNvbG9yOiAjMDAwO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmJjNDI7XHJcbiAgYm9yZGVyLWNvbG9yOiAjYjM3NDAwO1xyXG59XHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkOmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheVtkaXNhYmxlZF06aG92ZXIsXHJcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheTpob3ZlcixcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXkuZGlzYWJsZWQ6Zm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5W2Rpc2FibGVkXTpmb2N1cyxcclxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5OmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5kaXNhYmxlZC5mb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXlbZGlzYWJsZWRdLmZvY3VzLFxyXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXkuZm9jdXMge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmRiOTk7XHJcbiAgYm9yZGVyLWNvbG9yOiAjZmZiNzMzO1xyXG59XHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmZvY3VzZWQge1xyXG4gIGJhY2tncm91bmQ6ICNmZmM5NjY7XHJcbn1cclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXkuZGlzYWJsZWQsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkOmFjdGl2ZSB7XHJcbiAgYmFja2dyb3VuZDogI2ZmZGI5OTtcclxuICBjb2xvcjogIzc3Nzc3NztcclxufVxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZSB7XHJcbiAgY29sb3I6ICMwMDA7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZTtcclxuICBib3JkZXItY29sb3I6ICNiYmJiYmI7XHJcbiAgYm9yZGVyLXJhZGl1czogMDtcclxufVxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZTpmb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UuZm9jdXMge1xyXG4gIGNvbG9yOiAjMDAwO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNkNWQ1ZDU7XHJcbiAgYm9yZGVyLWNvbG9yOiAjN2M3YzdjO1xyXG59XHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlOmhvdmVyIHtcclxuICBjb2xvcjogIzAwMDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDVkNWQ1O1xyXG4gIGJvcmRlci1jb2xvcjogIzlkOWQ5ZDtcclxufVxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZTphY3RpdmUsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmFjdGl2ZSB7XHJcbiAgY29sb3I6ICMwMDA7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q1ZDVkNTtcclxuICBib3JkZXItY29sb3I6ICM5ZDlkOWQ7XHJcbn1cclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2U6YWN0aXZlOmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5hY3RpdmU6aG92ZXIsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlOmFjdGl2ZTpmb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UuYWN0aXZlOmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZTphY3RpdmUuZm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmFjdGl2ZS5mb2N1cyB7XHJcbiAgY29sb3I6ICMwMDA7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2MzYzNjMztcclxuICBib3JkZXItY29sb3I6ICM3YzdjN2M7XHJcbn1cclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UuZGlzYWJsZWQ6aG92ZXIsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlW2Rpc2FibGVkXTpob3ZlcixcclxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlOmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5kaXNhYmxlZDpmb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2VbZGlzYWJsZWRdOmZvY3VzLFxyXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2U6Zm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmRpc2FibGVkLmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZVtkaXNhYmxlZF0uZm9jdXMsXHJcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5mb2N1cyB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZTtcclxuICBib3JkZXItY29sb3I6ICNiYmJiYmI7XHJcbn1cclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UuZm9jdXNlZCB7XHJcbiAgYmFja2dyb3VuZDogI2Q1ZDVkNTtcclxufVxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5kaXNhYmxlZCxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UuZGlzYWJsZWQ6YWN0aXZlIHtcclxuICBiYWNrZ3JvdW5kOiAjZWVlZWVlO1xyXG4gIGNvbG9yOiAjNzc3Nzc3O1xyXG59XHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmhpZ2hsaWdodGVkIHtcclxuICBjb2xvcjogIzAwMDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlZWYzO1xyXG4gIGJvcmRlci1jb2xvcjogIzlkYzFkMztcclxufVxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5oaWdobGlnaHRlZDpmb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UuaGlnaGxpZ2h0ZWQuZm9jdXMge1xyXG4gIGNvbG9yOiAjMDAwO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNjMWQ3ZTM7XHJcbiAgYm9yZGVyLWNvbG9yOiAjNGI4OGE2O1xyXG59XHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmhpZ2hsaWdodGVkOmhvdmVyIHtcclxuICBjb2xvcjogIzAwMDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzFkN2UzO1xyXG4gIGJvcmRlci1jb2xvcjogIzczYTZjMDtcclxufVxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5oaWdobGlnaHRlZDphY3RpdmUsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmhpZ2hsaWdodGVkLmFjdGl2ZSB7XHJcbiAgY29sb3I6ICMwMDA7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2MxZDdlMztcclxuICBib3JkZXItY29sb3I6ICM3M2E2YzA7XHJcbn1cclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UuaGlnaGxpZ2h0ZWQ6YWN0aXZlOmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5oaWdobGlnaHRlZC5hY3RpdmU6aG92ZXIsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmhpZ2hsaWdodGVkOmFjdGl2ZTpmb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UuaGlnaGxpZ2h0ZWQuYWN0aXZlOmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5oaWdobGlnaHRlZDphY3RpdmUuZm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmhpZ2hsaWdodGVkLmFjdGl2ZS5mb2N1cyB7XHJcbiAgY29sb3I6ICMwMDA7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E4YzhkODtcclxuICBib3JkZXItY29sb3I6ICM0Yjg4YTY7XHJcbn1cclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UuaGlnaGxpZ2h0ZWQuZGlzYWJsZWQ6aG92ZXIsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmhpZ2hsaWdodGVkW2Rpc2FibGVkXTpob3ZlcixcclxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmhpZ2hsaWdodGVkOmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5oaWdobGlnaHRlZC5kaXNhYmxlZDpmb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UuaGlnaGxpZ2h0ZWRbZGlzYWJsZWRdOmZvY3VzLFxyXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UuaGlnaGxpZ2h0ZWQ6Zm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmhpZ2hsaWdodGVkLmRpc2FibGVkLmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5oaWdobGlnaHRlZFtkaXNhYmxlZF0uZm9jdXMsXHJcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5oaWdobGlnaHRlZC5mb2N1cyB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U0ZWVmMztcclxuICBib3JkZXItY29sb3I6ICM5ZGMxZDM7XHJcbn1cclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UuaGlnaGxpZ2h0ZWQuZm9jdXNlZCB7XHJcbiAgYmFja2dyb3VuZDogI2MxZDdlMztcclxufVxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5oaWdobGlnaHRlZC5kaXNhYmxlZCxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UuaGlnaGxpZ2h0ZWQuZGlzYWJsZWQ6YWN0aXZlIHtcclxuICBiYWNrZ3JvdW5kOiAjZTRlZWYzO1xyXG4gIGNvbG9yOiAjNzc3Nzc3O1xyXG59XHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5IHtcclxuICBjb2xvcjogIzAwMDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdjYTc3O1xyXG4gIGJvcmRlci1jb2xvcjogI2YxYTQxNztcclxufVxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheTpmb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZm9jdXMge1xyXG4gIGNvbG9yOiAjMDAwO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmNGI3NDc7XHJcbiAgYm9yZGVyLWNvbG9yOiAjODE1NjA4O1xyXG59XHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5OmhvdmVyIHtcclxuICBjb2xvcjogIzAwMDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRiNzQ3O1xyXG4gIGJvcmRlci1jb2xvcjogI2JmODAwYztcclxufVxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheTphY3RpdmUsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LmFjdGl2ZSB7XHJcbiAgY29sb3I6ICMwMDA7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0Yjc0NztcclxuICBib3JkZXItY29sb3I6ICNiZjgwMGM7XHJcbn1cclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6YWN0aXZlOmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheS5hY3RpdmU6aG92ZXIsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5OmFjdGl2ZTpmb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuYWN0aXZlOmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheTphY3RpdmUuZm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LmFjdGl2ZS5mb2N1cyB7XHJcbiAgY29sb3I6ICMwMDA7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyYWEyNTtcclxuICBib3JkZXItY29sb3I6ICM4MTU2MDg7XHJcbn1cclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQ6aG92ZXIsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5W2Rpc2FibGVkXTpob3ZlcixcclxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5OmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheS5kaXNhYmxlZDpmb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXlbZGlzYWJsZWRdOmZvY3VzLFxyXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6Zm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LmRpc2FibGVkLmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheVtkaXNhYmxlZF0uZm9jdXMsXHJcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheS5mb2N1cyB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3Y2E3NztcclxuICBib3JkZXItY29sb3I6ICNmMWE0MTc7XHJcbn1cclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LmRpc2FibGVkOmFjdGl2ZSB7XHJcbiAgYmFja2dyb3VuZDogI2Y3Y2E3NztcclxuICBjb2xvcjogIzc3Nzc3NztcclxufVxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZCxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuaGlnaGxpZ2h0ZWQge1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICM3Nzc3Nzc7XHJcbiAgYm9yZGVyLWNvbG9yOiAjNTU1NTU1O1xyXG4gIHRleHQtc2hhZG93OiAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xyXG59XHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkOmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5oaWdobGlnaHRlZDpmb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuZm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmhpZ2hsaWdodGVkLmZvY3VzIHtcclxuICBjb2xvcjogI2ZmZjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWU1ZTVlO1xyXG4gIGJvcmRlci1jb2xvcjogIzE2MTYxNjtcclxufVxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDpob3ZlcixcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuaGlnaGxpZ2h0ZWQ6aG92ZXIge1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICM1ZTVlNWU7XHJcbiAgYm9yZGVyLWNvbG9yOiAjMzczNzM3O1xyXG59XHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkOmFjdGl2ZSxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuaGlnaGxpZ2h0ZWQ6YWN0aXZlLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5hY3RpdmUsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmhpZ2hsaWdodGVkLmFjdGl2ZSB7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVlNWU1ZTtcclxuICBib3JkZXItY29sb3I6ICMzNzM3Mzc7XHJcbn1cclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQ6YWN0aXZlOmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5oaWdobGlnaHRlZDphY3RpdmU6aG92ZXIsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmFjdGl2ZTpob3ZlcixcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuaGlnaGxpZ2h0ZWQuYWN0aXZlOmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDphY3RpdmU6Zm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmhpZ2hsaWdodGVkOmFjdGl2ZTpmb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuYWN0aXZlOmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5oaWdobGlnaHRlZC5hY3RpdmU6Zm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkOmFjdGl2ZS5mb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuaGlnaGxpZ2h0ZWQ6YWN0aXZlLmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5hY3RpdmUuZm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmhpZ2hsaWdodGVkLmFjdGl2ZS5mb2N1cyB7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRjNGM0YztcclxuICBib3JkZXItY29sb3I6ICMxNjE2MTY7XHJcbn1cclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuZGlzYWJsZWQ6aG92ZXIsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmhpZ2hsaWdodGVkLmRpc2FibGVkOmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZFtkaXNhYmxlZF06aG92ZXIsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmhpZ2hsaWdodGVkW2Rpc2FibGVkXTpob3ZlcixcclxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkOmhvdmVyLFxyXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuaGlnaGxpZ2h0ZWQ6aG92ZXIsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmRpc2FibGVkOmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5oaWdobGlnaHRlZC5kaXNhYmxlZDpmb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWRbZGlzYWJsZWRdOmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5oaWdobGlnaHRlZFtkaXNhYmxlZF06Zm9jdXMsXHJcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDpmb2N1cyxcclxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmhpZ2hsaWdodGVkOmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZC5mb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuaGlnaGxpZ2h0ZWQuZGlzYWJsZWQuZm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkW2Rpc2FibGVkXS5mb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuaGlnaGxpZ2h0ZWRbZGlzYWJsZWRdLmZvY3VzLFxyXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuZm9jdXMsXHJcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5oaWdobGlnaHRlZC5mb2N1cyB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc3Nzc3NztcclxuICBib3JkZXItY29sb3I6ICM1NTU1NTU7XHJcbn1cclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuaGlnaGxpZ2h0ZWQge1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzdhYjc7XHJcbiAgYm9yZGVyLWNvbG9yOiAjMmU2ZGE0O1xyXG4gIHRleHQtc2hhZG93OiAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xyXG59XHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTpmb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmhpZ2hsaWdodGVkOmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5oaWdobGlnaHRlZC5mb2N1cyB7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI4NjA5MDtcclxuICBib3JkZXItY29sb3I6ICMxMjJiNDA7XHJcbn1cclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuaGlnaGxpZ2h0ZWQ6aG92ZXIge1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMyODYwOTA7XHJcbiAgYm9yZGVyLWNvbG9yOiAjMjA0ZDc0O1xyXG59XHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTphY3RpdmUsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5oaWdobGlnaHRlZDphY3RpdmUsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5hY3RpdmUsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5oaWdobGlnaHRlZC5hY3RpdmUge1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMyODYwOTA7XHJcbiAgYm9yZGVyLWNvbG9yOiAjMjA0ZDc0O1xyXG59XHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTphY3RpdmU6aG92ZXIsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5oaWdobGlnaHRlZDphY3RpdmU6aG92ZXIsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5hY3RpdmU6aG92ZXIsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5oaWdobGlnaHRlZC5hY3RpdmU6aG92ZXIsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTphY3RpdmU6Zm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5oaWdobGlnaHRlZDphY3RpdmU6Zm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5hY3RpdmU6Zm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5oaWdobGlnaHRlZC5hY3RpdmU6Zm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTphY3RpdmUuZm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5oaWdobGlnaHRlZDphY3RpdmUuZm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5hY3RpdmUuZm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5oaWdobGlnaHRlZC5hY3RpdmUuZm9jdXMge1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMyMDRkNzQ7XHJcbiAgYm9yZGVyLWNvbG9yOiAjMTIyYjQwO1xyXG59XHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZDpob3ZlcixcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmhpZ2hsaWdodGVkLmRpc2FibGVkOmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmVbZGlzYWJsZWRdOmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuaGlnaGxpZ2h0ZWRbZGlzYWJsZWRdOmhvdmVyLFxyXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyLFxyXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmhpZ2hsaWdodGVkOmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQ6Zm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5oaWdobGlnaHRlZC5kaXNhYmxlZDpmb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlW2Rpc2FibGVkXTpmb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmhpZ2hsaWdodGVkW2Rpc2FibGVkXTpmb2N1cyxcclxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTpmb2N1cyxcclxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5oaWdobGlnaHRlZDpmb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkLmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuaGlnaGxpZ2h0ZWQuZGlzYWJsZWQuZm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZVtkaXNhYmxlZF0uZm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5oaWdobGlnaHRlZFtkaXNhYmxlZF0uZm9jdXMsXHJcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZm9jdXMsXHJcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuaGlnaGxpZ2h0ZWQuZm9jdXMge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzdhYjc7XHJcbiAgYm9yZGVyLWNvbG9yOiAjMmU2ZGE0O1xyXG59XHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4ge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHdpZHRoOiAyMyU7XHJcbiAgaGVpZ2h0OiA1NHB4O1xyXG4gIGxpbmUtaGVpZ2h0OiA1NHB4O1xyXG4gIGZsb2F0OiBsZWZ0O1xyXG4gIG1hcmdpbjogMSU7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGJvcmRlci1yYWRpdXM6IDRweDtcclxufVxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuOmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmZvY3VzZWQge1xyXG4gIGJhY2tncm91bmQ6ICNlZWVlZWU7XHJcbn1cclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5kaXNhYmxlZCxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5kaXNhYmxlZDpob3ZlciB7XHJcbiAgYmFja2dyb3VuZDogbm9uZTtcclxuICBjb2xvcjogIzc3Nzc3NztcclxuICBjdXJzb3I6IGRlZmF1bHQ7XHJcbn1cclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZCxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIge1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzdhYjc7XHJcbiAgYm9yZGVyLWNvbG9yOiAjMmU2ZGE0O1xyXG4gIHRleHQtc2hhZG93OiAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xyXG59XHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3Zlcjpmb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6Zm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyOmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5mb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXIuZm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkLmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3Zlci5mb2N1cyB7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI4NjA5MDtcclxuICBib3JkZXItY29sb3I6ICMxMjJiNDA7XHJcbn1cclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXIsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyOmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3ZlcixcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXI6aG92ZXIge1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMyODYwOTA7XHJcbiAgYm9yZGVyLWNvbG9yOiAjMjA0ZDc0O1xyXG59XHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmFjdGl2ZSxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXI6YWN0aXZlLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDphY3RpdmUsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyOmFjdGl2ZSxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuYWN0aXZlLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3Zlci5hY3RpdmUsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkLmFjdGl2ZSxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIuYWN0aXZlIHtcclxuICBjb2xvcjogI2ZmZjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjg2MDkwO1xyXG4gIGJvcmRlci1jb2xvcjogIzIwNGQ3NDtcclxufVxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTphY3RpdmU6aG92ZXIsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyOmFjdGl2ZTpob3ZlcixcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6YWN0aXZlOmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3ZlcjphY3RpdmU6aG92ZXIsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmFjdGl2ZTpob3ZlcixcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXIuYWN0aXZlOmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZC5hY3RpdmU6aG92ZXIsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyLmFjdGl2ZTpob3ZlcixcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6YWN0aXZlOmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3ZlcjphY3RpdmU6Zm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmFjdGl2ZTpmb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXI6YWN0aXZlOmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5hY3RpdmU6Zm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyLmFjdGl2ZTpmb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQuYWN0aXZlOmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3Zlci5hY3RpdmU6Zm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmFjdGl2ZS5mb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXI6YWN0aXZlLmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDphY3RpdmUuZm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyOmFjdGl2ZS5mb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuYWN0aXZlLmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3Zlci5hY3RpdmUuZm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkLmFjdGl2ZS5mb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIuYWN0aXZlLmZvY3VzIHtcclxuICBjb2xvcjogI2ZmZjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjA0ZDc0O1xyXG4gIGJvcmRlci1jb2xvcjogIzEyMmI0MDtcclxufVxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3ZlcixcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXIuZGlzYWJsZWQ6aG92ZXIsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkLmRpc2FibGVkOmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3Zlci5kaXNhYmxlZDpob3ZlcixcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmVbZGlzYWJsZWRdOmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3ZlcltkaXNhYmxlZF06aG92ZXIsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkW2Rpc2FibGVkXTpob3ZlcixcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXJbZGlzYWJsZWRdOmhvdmVyLFxyXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXIsXHJcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3Zlcjpob3ZlcixcclxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyLFxyXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXI6aG92ZXIsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3Zlci5kaXNhYmxlZDpmb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQuZGlzYWJsZWQ6Zm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyLmRpc2FibGVkOmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZVtkaXNhYmxlZF06Zm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyW2Rpc2FibGVkXTpmb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWRbZGlzYWJsZWRdOmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3ZlcltkaXNhYmxlZF06Zm9jdXMsXHJcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpmb2N1cyxcclxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyOmZvY3VzLFxyXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6Zm9jdXMsXHJcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3Zlcjpmb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQuZm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyLmRpc2FibGVkLmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZC5kaXNhYmxlZC5mb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIuZGlzYWJsZWQuZm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlW2Rpc2FibGVkXS5mb2N1cyxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXJbZGlzYWJsZWRdLmZvY3VzLFxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZFtkaXNhYmxlZF0uZm9jdXMsXHJcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyW2Rpc2FibGVkXS5mb2N1cyxcclxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmZvY3VzLFxyXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXIuZm9jdXMsXHJcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZC5mb2N1cyxcclxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyLmZvY3VzIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzM3YWI3O1xyXG4gIGJvcmRlci1jb2xvcjogIzJlNmRhNDtcclxufVxyXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLm9sZCxcclxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5uZXcge1xyXG4gIGNvbG9yOiAjNzc3Nzc3O1xyXG59XHJcbi5kYXRlcGlja2VyIC5kYXRlcGlja2VyLXN3aXRjaCB7XHJcbiAgd2lkdGg6IDE0NXB4O1xyXG59XHJcbi5kYXRlcGlja2VyIC5kYXRlcGlja2VyLXN3aXRjaCxcclxuLmRhdGVwaWNrZXIgLnByZXYsXHJcbi5kYXRlcGlja2VyIC5uZXh0LFxyXG4uZGF0ZXBpY2tlciB0Zm9vdCB0ciB0aCB7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcbi5kYXRlcGlja2VyIC5kYXRlcGlja2VyLXN3aXRjaDpob3ZlcixcclxuLmRhdGVwaWNrZXIgLnByZXY6aG92ZXIsXHJcbi5kYXRlcGlja2VyIC5uZXh0OmhvdmVyLFxyXG4uZGF0ZXBpY2tlciB0Zm9vdCB0ciB0aDpob3ZlciB7XHJcbiAgYmFja2dyb3VuZDogI2VlZWVlZTtcclxufVxyXG4uZGF0ZXBpY2tlciAucHJldi5kaXNhYmxlZCxcclxuLmRhdGVwaWNrZXIgLm5leHQuZGlzYWJsZWQge1xyXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcclxufVxyXG4uZGF0ZXBpY2tlciAuY3cge1xyXG4gIGZvbnQtc2l6ZTogMTBweDtcclxuICB3aWR0aDogMTJweDtcclxuICBwYWRkaW5nOiAwIDJweCAwIDVweDtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcbi5pbnB1dC1ncm91cC5kYXRlIC5pbnB1dC1ncm91cC1hZGRvbiB7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcbi5pbnB1dC1kYXRlcmFuZ2Uge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcbi5pbnB1dC1kYXRlcmFuZ2UgaW5wdXQge1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG4uaW5wdXQtZGF0ZXJhbmdlIGlucHV0OmZpcnN0LWNoaWxkIHtcclxuICBib3JkZXItcmFkaXVzOiAzcHggMCAwIDNweDtcclxufVxyXG4uaW5wdXQtZGF0ZXJhbmdlIGlucHV0Omxhc3QtY2hpbGQge1xyXG4gIGJvcmRlci1yYWRpdXM6IDAgM3B4IDNweCAwO1xyXG59XHJcbi5pbnB1dC1kYXRlcmFuZ2UgLmlucHV0LWdyb3VwLWFkZG9uIHtcclxuICB3aWR0aDogYXV0bztcclxuICBtaW4td2lkdGg6IDE2cHg7XHJcbiAgcGFkZGluZzogNHB4IDVweDtcclxuICBsaW5lLWhlaWdodDogMS40Mjg1NzE0MztcclxuICB0ZXh0LXNoYWRvdzogMCAxcHggMCAjZmZmO1xyXG4gIGJvcmRlci13aWR0aDogMXB4IDA7XHJcbiAgbWFyZ2luLWxlZnQ6IC01cHg7XHJcbiAgbWFyZ2luLXJpZ2h0OiAtNXB4O1xyXG59XHJcbi8qIyBzb3VyY2VNYXBwaW5nVVJMPWJvb3RzdHJhcC1kYXRlcGlja2VyMy5jc3MubWFwICovIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgJiBzdXJjaGFnZSBib290c3RyYXAgbW9kYWwuY3NzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5cclxuLm1vZGFsIHtcclxuIC5jbG9zZSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBAaW5jbHVkZSBpY29uKGNsb3NlKTtcclxuICAgIEBpbmNsdWRlIGNlbnRlckljb247XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIHdpZHRoOiAycmVtO1xyXG4gICAgaGVpZ2h0OiAycmVtO1xyXG4gICAgZm9udC1zaXplOiAycmVtO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgdG9wOiAxLjNyZW07XHJcbiAgICByaWdodDogMXJlbTtcclxuICAgIHNwYW4ge1xyXG4gICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ubW9kYWwtYWxwaGEge1xyXG4gIC5tb2RhbC1kaWFsb2cge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgIHdpZHRoOiA0MHJlbTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5tb2RhbC1jb250ZW50IHtcclxuICAgIGJvcmRlci1yYWRpdXM6MDtcclxuICAgIGJvcmRlcjpyZW0oOCkgc29saWQgJHBpbmtMaWdodDtcclxuICB9XHJcblxyXG4gIC5tb2RhbC10aXRsZSB7XHJcbiAgICBjb2xvcjokcGlua0xpZ2h0O1xyXG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICBAaW5jbHVkZSBwYWRIKDJyZW0pO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGZvbnQtc2l6ZToycmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gIH1cclxuXHJcbiAgLm1vZGFsLWhlYWRlciB7XHJcbiAgICBwYWRkaW5nOiAzcmVtIDFyZW0gMXJlbSAxcmVtO1xyXG4gICAgYm9yZGVyOm5vbmU7XHJcblxyXG4gIH1cclxuXHJcbiAgLm1vZGFsLWJvZHkge1xyXG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiAxcmVtIDFyZW0gM3JlbSAxcmVtO1xyXG4gIH1cclxuICAubW9kYWwtY29tbWFuZGUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgIGJvcmRlci1yYWRpdXM6MDtcclxuICAgIGJvcmRlcjpyZW0oOCkgc29saWQgJGJsdWU7XHJcbiAgICBwYWRkaW5nOiAycmVtIDJyZW0gMDtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgfVxyXG59XHJcblxyXG4ubW9kYWwtY29tbWFuZGUgLm1vZGFsLXRpdGxlIHtcclxuICBjb2xvcjojMDAwMDAwO1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuLm1vZGFsLWNvbW1hbmRlIC5tb2RhbC1ib2R5IHtcclxuICB0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50O1xyXG59XHJcbi5tb2RhbC1jb21tYW5kZSAuYnV0dG9uIHtcclxuICBtYXJnaW4tdG9wOiAycmVtO1xyXG59XHJcblxyXG4ubW9kYWwtc2UtY29ubmVjdGVyIHtcclxuICAubW9kYWwtZGlhbG9nIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XHJcbiAgICAgICB3aWR0aDogNDdyZW07XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5tb2RhbC1wYXNzd29yZC1vdWJsaWUge1xyXG4gIC5tb2RhbC1kaWFsb2cge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgIHdpZHRoOiA0N3JlbTtcclxuICAgIH1cclxuICB9XHJcbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICAmIHN1cmNoYWdlIGJvb3RzdHJhcCB0b29sdGlwXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4kdG9vbHRpcC1hcnJvdy13aWR0aCA6IDEwcHg7XHJcbiR0b29sdGlwLWFycm93LWNvbG9yIDogJHBpbmtMaWdodDtcclxuJHRvb2x0aXAtb3BhY2l0eTogMTtcclxuXHJcblxyXG4udG9vbHRpcCB7XHJcbiAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5O1xyXG4gIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplO1xyXG5cclxuICAmLmluICAgICB7IEBpbmNsdWRlIG9wYWNpdHkoJHRvb2x0aXAtb3BhY2l0eSk7IH1cclxuICAmLnRvcCAgICB7IG1hcmdpbi10b3A6ICAtM3B4OyBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAwOyB9XHJcbiAgJi5yaWdodCAgeyBtYXJnaW4tbGVmdDogIDNweDsgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy13aWR0aDsgfVxyXG4gICYuYm90dG9tIHsgbWFyZ2luLXRvcDogICAzcHg7IHBhZGRpbmc6ICR0b29sdGlwLWFycm93LXdpZHRoIDA7IH1cclxuICAmLmxlZnQgICB7IG1hcmdpbi1sZWZ0OiAtM3B4OyBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LXdpZHRoOyB9XHJcbn1cclxuXHJcblxyXG4udG9vbHRpcC1pbm5lciB7XHJcbiAgcGFkZGluZzogMXJlbSAycmVtO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRwaW5rTGlnaHQ7XHJcbiAgYm9yZGVyLXJhZGl1czogMDtcclxuICBtYXgtd2lkdGg6IDI4cmVtO1xyXG59XHJcblxyXG5cclxuLnRvb2x0aXAge1xyXG4gICYudG9wIC50b29sdGlwLWFycm93IHtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIG1hcmdpbi1sZWZ0OiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcclxuICB9XHJcbiAgJi50b3AtbGVmdCAudG9vbHRpcC1hcnJvdyB7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICByaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcclxuICB9XHJcbiAgJi50b3AtcmlnaHQgLnRvb2x0aXAtYXJyb3cge1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcclxuICB9XHJcbiAgJi5yaWdodCAudG9vbHRpcC1hcnJvdyB7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XHJcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xyXG4gIH1cclxuICAmLmxlZnQgLnRvb2x0aXAtYXJyb3cge1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICByaWdodDogMDtcclxuICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcclxuICB9XHJcbiAgJi5ib3R0b20gLnRvb2x0aXAtYXJyb3cge1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci13aWR0aDogMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xyXG4gIH1cclxuICAmLmJvdHRvbS1sZWZ0IC50b29sdGlwLWFycm93IHtcclxuICAgIHRvcDogMDtcclxuICAgIHJpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci13aWR0aDogMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xyXG4gIH1cclxuICAmLmJvdHRvbS1yaWdodCAudG9vbHRpcC1hcnJvdyB7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci13aWR0aDogMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xyXG4gIH1cclxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgICYgc3VyY2hhZ2UgYm9vdHN0cmFwLXNlbGVjdC5jc3NcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcblxyXG5cclxuLmJvb3RzdHJhcC1zZWxlY3Qge1xyXG4gICYuYnRuLWdyb3VwIHtcclxuICAgIC5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudC1leHRlbnNpb24gKCRiYXNlLWNvbG9yLCAkd2hpdGUsICRmb3JtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgIGJveC1zaGFkb3c6bm9uZTtcclxuICAgICAgZm9udC1zaXplOmluaGVyaXQ7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHggMzVweCAxMHB4IDE2cHg7XHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIG91dGxpbmU6IG5vbmUhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICAgIC5jYXJldCB7XHJcbiAgICAgICAgQGluY2x1ZGUgaWNvbihmbGVjaGUtc2VsZWN0KTtcclxuICAgICAgICBjb2xvcjokYmx1ZTtcclxuICAgICAgICByaWdodDowO1xyXG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6bm9uZTtcclxuICAgICAgICBib3JkZXI6bm9uZTtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDo1MCU7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLmVycm9yICYge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjokZXJyb3ItY29sb3I7XHJcbiAgICAgIH1cclxuICAgICAgLnN1Y2Nlc3MgJiB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiRzdWNjZXNzLWNvbG9yO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgIEBpbmNsdWRlIGJveFNoYWRvdztcclxuICAgICAgcGFkZGluZzowO1xyXG4gICAgICBmb250LXNpemU6aW5oZXJpdDtcclxuICAgICAgYm9yZGVyLWNvbG9yOiRmb3JtLWJvcmRlci1jb2xvcjtcclxuICAgICAgPiBsaSB7XHJcbiAgICAgICAgPiBhIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4O1xyXG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHBhZFYoMXJlbSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLm9wZW4ge1xyXG4gICAgICAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgICAgICBib3JkZXItY29sb3I6JGJsdWU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4uYm9vdHN0cmFwLXNlbGVjdC5hbHBoYSB7XHJcbiAgJi5idG4tZ3JvdXA6bm90KFtjbGFzcyo9XCJjb2wtXCJdKTpub3QoW2NsYXNzKj1cImZvcm0tY29udHJvbFwiXSk6bm90KC5pbnB1dC1ncm91cC1idG4pIHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICBtaW4td2lkdGg6MTVyZW07XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xyXG4gICAgICB3aWR0aDphdXRvO1xyXG4gICAgICAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgICAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudC1leHRlbnNpb24gKCRiYXNlLWNvbG9yLCB0cmFuc3BhcmVudCwgdHJhbnNwYXJlbnQpO1xyXG4gICAgICAgIGJvcmRlcjpub25lO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6MDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6MDtcclxuICAgICAgICBwYWRkaW5nLXRvcDowO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOjA7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDoyM3B4O1xyXG4gICAgICAgIC5maWx0ZXItb3B0aW9uIHtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OjUwMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6MDtcclxuICAgICAgICBtYXJnaW4tbGVmdDotMC41cmVtO1xyXG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcclxuICAgICAgICA+IGxpIHtcclxuICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDoxLjNyZW07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgICYgc3VyY2hhZ2UgYm9vdHN0cmFwIGRhdGVwaWNrZXJcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcblxyXG4uZGF0ZXBpY2tlciB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgdGFibGUge1xyXG4gICAgICAgIHRyIHtcclxuICAgICAgICAgICAgdGQsXHJcbiAgICAgICAgICAgIHRoIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMy41cmVtO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzcmVtO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoIHtcclxuICAgICAgICAgICAgICAgICYuZG93IHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjokYWxwaGEtY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6NjAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICAmOmFjdGl2ZSxcclxuICAgICAgICAgICAgICAgICAgICAmLmhpZ2hsaWdodGVkOmFjdGl2ZSxcclxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSxcclxuICAgICAgICAgICAgICAgICAgICAmLmhpZ2hsaWdodGVkLmFjdGl2ZSxcclxuICAgICAgICAgICAgICAgICAgICAmOmFjdGl2ZTpob3ZlcixcclxuICAgICAgICAgICAgICAgICAgICAmLmhpZ2hsaWdodGVkOmFjdGl2ZTpob3ZlcixcclxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZTpob3ZlcixcclxuICAgICAgICAgICAgICAgICAgICAmLmhpZ2hsaWdodGVkLmFjdGl2ZTpob3ZlcixcclxuICAgICAgICAgICAgICAgICAgICAmOmFjdGl2ZTpmb2N1cyxcclxuICAgICAgICAgICAgICAgICAgICAmLmhpZ2hsaWdodGVkOmFjdGl2ZTpmb2N1cyxcclxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZTpmb2N1cyxcclxuICAgICAgICAgICAgICAgICAgICAmLmhpZ2hsaWdodGVkLmFjdGl2ZTpmb2N1cyxcclxuICAgICAgICAgICAgICAgICAgICAmOmFjdGl2ZS5mb2N1cyxcclxuICAgICAgICAgICAgICAgICAgICAmLmhpZ2hsaWdodGVkOmFjdGl2ZS5mb2N1cyxcclxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZS5mb2N1cyxcclxuICAgICAgICAgICAgICAgICAgICAmLmhpZ2hsaWdodGVkLmFjdGl2ZS5mb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJsdWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1zaGFkb3c6bm9uZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLnNlbGVjdGVkLFxyXG4gICAgICAgICAgICAgICAgJi5zZWxlY3RlZC5oaWdobGlnaHRlZCxcclxuICAgICAgICAgICAgICAgICYucmFuZ2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5TGlnaHQ7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkZ3JleUxpZ2h0O1xyXG5cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYuZGF5OmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgJi5mb2N1c2VkIHtcclxuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6cG9pbnRlcjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYub2xkLFxyXG4gICAgICAgICAgICAgICAgJi5uZXcge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiByZ2JhKCRiYXNlLWNvbG9yLC4zKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYudG9kYXkge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLmRpc2FibGVkLFxyXG4gICAgICAgICAgICAgICAgJi5kaXNhYmxlZDpob3ZlciAge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiByZ2JhKCRiYXNlLWNvbG9yLC4yKTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOm5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNC40cmVtO1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0LjRyZW07XHJcbiAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmRpc2FibGVkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmRpc2FibGVkOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFjdGl2ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlcjphY3RpdmUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYuZGlzYWJsZWQ6YWN0aXZlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmRpc2FibGVkOmhvdmVyOmFjdGl2ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIuYWN0aXZlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLmFjdGl2ZTpob3ZlcixcclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmU6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYuZGlzYWJsZWQuYWN0aXZlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmRpc2FibGVkOmhvdmVyLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXNoYWRvdzpub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmx1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICYuZm9jdXNlZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjpwb2ludGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmLmRpc2FibGVke1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiByZ2JhKCRiYXNlLWNvbG9yLC4yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czpub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmRhdGVwaWNrZXItZGF5cyB7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgIH1cclxuICAgICYuZGF0ZXBpY2tlci1pbmxpbmUge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIH1cclxuICAgICYtZHJvcGRvd24ge1xyXG4gICAgICBAaW5jbHVkZSBwYWRIKDApO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUNBQTs7OztHQUlHO0FpQ0pILDRFQUE0RTtBQVE1RSxBQUFBLElBQUksQ0FBQztFQUNILFdBQVcsRUFBRSxVQUFVO0VBQ3ZCLG9CQUFvQixFQUFFLElBQUk7RUFDMUIsd0JBQXdCLEVBQUUsSUFBSTtDQUMvQjs7QUFNRCxBQUFBLElBQUksQ0FBQztFQUNILE1BQU0sRUFBRSxDQUFDO0NBQ1Y7O0FBWUQsQUFBQSxPQUFPO0FBQ1AsS0FBSztBQUNMLE9BQU87QUFDUCxVQUFVO0FBQ1YsTUFBTTtBQUNOLE1BQU07QUFDTixNQUFNO0FBQ04sTUFBTTtBQUNOLElBQUk7QUFDSixJQUFJO0FBQ0osR0FBRztBQUNILE9BQU87QUFDUCxPQUFPLENBQUM7RUFDTixPQUFPLEVBQUUsS0FBSztDQUNmOztBQU9ELEFBQUEsS0FBSztBQUNMLE1BQU07QUFDTixRQUFRO0FBQ1IsS0FBSyxDQUFDO0VBQ0osT0FBTyxFQUFFLFlBQVk7RUFDckIsY0FBYyxFQUFFLFFBQVE7Q0FDekI7O0FBT0QsQUFBQSxLQUFLLEFBQUEs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QUFvQztDQUM1Qzs7QUFGRCxBQUFBLFNBQVMsQ0FBZ0I7RUFDdkIsS0FBSyxFQUFFLEdBQW9DO0NBQzVDOztBQUZELEFBQUEsU0FBUyxDQUFnQjtFQUN2QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxTQUFTLENBQWdCO0VBQ3ZCLEtBQUssRUFBRSxTQUFvQztDQUM1Qzs7QUFGRCxBQUFBLFNBQVMsQ0FBZ0I7RUFDdkIsS0FBSyxFQUFFLEtBQW9DO0NBQzVDOztBQUZELEFBQUEsVUFBVSxDQUFlO0VBQ3ZCLEtBQUssRUFBRSxTQUFvQztDQUM1Qzs7QUFGRCxBQUFBLFVBQVUsQ0FBZTtFQUN2QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxVQUFVLENBQWU7RUFDdkIsS0FBSyxFQUFFLEdBQW9DO0NBQzVDOztBQUZELEFBQUEsVUFBVSxDQUFlO0VBQ3ZCLEtBQUssRUFBRSxTQUFvQztDQUM1Qzs7QUFGRCxBQUFBLFVBQVUsQ0FBZTtFQUN2QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxVQUFVLENBQWU7RUFDdkIsS0FBSyxFQUFFLEtBQW9DO0NBQzVDOztBQUZELEFBQUEsVUFBVSxDQUFlO0VBQ3ZCLEtBQUssRUFBRSxTQUFvQztDQUM1Qzs7QUFGRCxBQUFBLFVBQVUsQ0FBZTtFQUN2QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxVQUFVLENBQWU7RUFDdkIsS0FBSyxFQUFFLEdBQW9DO0NBQzVDOztBQUZELEFBQUEsVUFBVSxDQUFlO0VBQ3ZCLEtBQUssRUFBRSxTQUFvQztDQUM1Qzs7QUFGRCxBQUFBLFVBQVUsQ0FBZTtFQUN2QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxVQUFVLENBQWU7RUFDdkIsS0FBSyxFQUFFLEtBQW9DO0NBQzVDOztBQUZELEFBQUEsVUFBVSxDQUFlO0VBQ3ZCLEtBQUssRUFBRSxTQUFvQztDQUM1Qzs7QUFGRCxBQUFBLFVBQVUsQ0FBZTtFQUN2QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxVQUFVLENBQWU7RUFDdkIsS0FBSyxFQUFFLElBQW9DO0NBQzVDOztBQWtCRCxBQUFBLGNBQWMsQ0FBUTtFQUNwQixLQUFLLEVBQUUsSUFBSTtDQUNaOztBQVBELEFBQUEsY0FBYyxDQUFnQjtFQUM1QixLQUFLLEVBQUUsUUFBb0M7Q0FDNUM7O0FBRkQsQUFBQSxjQUFjLENBQWdCO0VBQzVCLEtBQUssRUFBRSxRQUFvQztDQUM1Qzs7QUFGRCxBQUFBLGNBQWMsQ0FBZ0I7RUFDNUIsS0FBSyxFQUFFLEtBQW9DO0NBQzVDOztBQUZELEFBQUEsY0FBYyxDQUFnQjtFQUM1QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxjQUFjLENBQWdCO0VBQzVCLEtBQUssRUFBRSxTQUFvQztDQUM1Qzs7QUFGRCxBQUFBLGNBQWMsQ0FBZ0I7RUFDNUIsS0FBSyxFQUFFLEdBQW9DO0NBQzVDOztBQUZELEFBQUEsY0FBYyxDQUFnQjtFQUM1QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxjQUFjLENBQWdCO0VBQzVCLEtBQUssRUFBRSxTQUFvQztDQUM1Qzs7QUFGRCxBQUFBLGNBQWMsQ0FBZ0I7RUFDNUIsS0FBSyxFQUFFLEtBQW9DO0NBQzVDOztBQUZELEFBQUEsZUFBZSxDQUFlO0VBQzVCLEtBQUssRUFBRSxTQUFvQztDQUM1Qzs7QUFGRCxBQUFBLGVBQWUsQ0FBZTtFQUM1QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxlQUFlLENBQWU7RUFDNUIsS0FBSyxFQUFFLEdBQW9DO0NBQzVDOztBQUZELEFBQUEsZUFBZSxDQUFlO0VBQzVCLEtBQUssRUFBRSxTQUFvQztDQUM1Qzs7QUFGRCxBQUFBLGVBQWUsQ0FBZTtFQUM1QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxlQUFlLENBQWU7RUFDNUIsS0FBSyxFQUFFLEtBQW9DO0NBQzVDOztBQUZELEFBQUEsZUFBZSxDQUFlO0VBQzVCLEtBQUssRUFBRSxTQUFvQztDQUM1Qzs7QUFGRCxBQUFBLGVB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RkQsQUFBQSxTQUFTLENBQWdCO0lBQ3ZCLEtBQUssRUFBRSxLQUFvQztHQUM1QztFQUZELEFBQUEsVUFBVSxDQUFlO0lBQ3ZCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsVUFBVSxDQUFlO0lBQ3ZCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsVUFBVSxDQUFlO0lBQ3ZCLEtBQUssRUFBRSxHQUFvQztHQUM1QztFQUZELEFBQUEsVUFBVSxDQUFlO0lBQ3ZCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsVUFBVSxDQUFlO0lBQ3ZCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsVUFBVSxDQUFlO0lBQ3ZCLEtBQUssRUFBRSxLQUFvQztHQUM1QztFQUZELEFBQUEsVUFBVSxDQUFlO0lBQ3ZCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsVUFBVSxDQUFlO0lBQ3ZCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsVUFBVSxDQUFlO0lBQ3ZCLEtBQUssRUFBRSxHQUFvQztHQUM1QztFQUZELEFBQUEsVUFBVSxDQUFlO0lBQ3ZCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsVUFBVSxDQUFlO0lBQ3ZCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsVUFBVSxDQUFlO0lBQ3ZCLEtBQUssRUFBRSxLQUFvQztHQUM1QztFQUZELEFBQUEsVUFBVSxDQUFlO0lBQ3ZCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsVUFBVSxDQUFlO0lBQ3ZCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsVUFBVSxDQUFlO0lBQ3ZCLEtBQUssRUFBRSxJQUFvQztHQUM1QztFQWtCRCxBQUFBLGNBQWMsQ0FBUTtJQUNwQixLQUFLLEVBQUUsSUFBSTtHQUNaO0VBUEQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLEtBQUssRUFBRSxRQUFvQztHQUM1QztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixLQUFLLEVBQUUsUUFBb0M7R0FDNUM7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsS0FBSyxFQUFFLEtBQW9DO0dBQzVDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsS0FBSyxFQUFFLEdBQW9DO0dBQzVDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsS0FBSyxFQUFFLEtBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLEdBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLEtBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLEdBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLEtBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLElBQW9DO0dBQzVDO0VBUEQsQUFBQSxjQUFjLENBQVE7SUFDcEIsSUFBSSxFQUFFLElBQUk7R0FDWDtFQVBELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsUUFBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLFFBQW9DO0dBQzNDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxLQUFvQztHQUMzQztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsU0FBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxHQUFvQztHQUMzQztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsU0FBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxLQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxHQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxLQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxHQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxLQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxJQUFvQztHQUMzQztFQWtCRCxBQUFBLGdCQUFnQixDQUFnQjtJQUM5QixXQUFXLEVBQUUsRUFBb0M7R0FDbEQ7RUFGRCxBQUFBLGdCQUFnQixDQUFnQjtJQUM5QixXQUFXLEVBQUUsUUFBb0M7R0FDbEQ7RUFGRCxBQUFBLGdCQUFnQixDQUFnQjtJQUM5QixXQUFXLEVBQUUsUUFBb0M7R0FDbEQ7RUFGRCxBQUFBLGdCQUFnQixDQUFnQjtJQUM5QixXQUFXLEVBQUUsS0FBb0M7R0FDbEQ7RUFGRCxBQUFBLGdCQUFnQixDQUFnQjtJQUM5QixXQUFXLEVBQUUsU0FBb0M7R0FDbEQ7RUFGRCxBQUFBLGdCQUFnQixDQUFnQjtJQUM5QixXQUFXLEVBQUUsU0FBb0M7R0FDbEQ7RUFGRCxBQUFBLGdCQUFnQixDQUFnQjtJQUM5QixXQUFXLEVBQUUsR0FBb0M7R0FDbEQ7RUFGRCxBQUFBLGdCQUFnQixDQUFnQjtJQUM5QixXQUFXLEVBQUUsU0FBb0M7R0FDbEQ7RUFGRCxBQUFB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QzVDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixLQUFLLEVBQUUsS0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsR0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsS0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsR0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsS0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsSUFBb0M7R0FDNUM7RUFQRCxBQUFBLGNBQWMsQ0FBUTtJQUNwQixJQUFJLEVBQUUsSUFBSTtHQUNYO0VBUEQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxRQUFvQztHQUMzQztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsUUFBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLEtBQW9DO0dBQzNDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsU0FBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLEdBQW9DO0dBQzNDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsU0FBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLEtBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLEdBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLEtBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLEdBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLEtBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLElBQW9DO0dBQzNDO0VBa0JELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxFQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxRQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxRQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxLQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxTQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxTQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxHQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxTQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxTQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxLQUFvQztHQUNsRDtFQUZELEFBQUEsaUJBQWlCLENBQWU7SUFDOUIsV0FBVyxFQUFFLFNBQW9DO0dBQ2xEO0VBRkQsQUFBQSxpQkFBaUIsQ0FBZTtJQUM5QixXQUFXLEVBQUUsU0FBb0M7R0FDbEQ7RUFGRCxBQUFBLGlCQUFpQixDQUFlO0lBQzlCLFdBQVcsRUFBRSxHQUFvQztHQUNsRDtFQUZELEFBQUEsaUJBQWlCLENBQWU7SUFDOUIsV0FBVyxFQUFFLFNBQW9DO0dBQ2xEO0VBRkQsQUFBQSxpQkFBaUIsQ0FBZTtJQUM5QixXQUFXLEVBQUUsU0FBb0M7R0FDbEQ7RUFGRCxBQUFBLGlCQUFpQixDQUFlO0lBQzlCLFdBQVcsRUFBRSxLQUFvQztHQUNsRDtFQUZELEFBQUEsaUJBQWlCLENBQWU7SUFDOUIsV0FBVyxFQUFFLFNBQW9DO0dBQ2xEO0VBRkQsQUFBQSxpQkFBaUIsQ0FBZTtJQUM5QixXQUFXLEVBQUUsU0FBb0M7R0FDbEQ7RUFGRCxBQUFBLGlCQUFpQixDQUFlO0lBQzlCLFdBQVcsRUFBRSxHQUFvQztHQUNsRDtFQUZELEFBQUEsaUJBQWlCLENBQWU7SUFDOUIsV0FBVyxFQUFFLFNBQW9DO0dBQ2xEO0VBRkQsQUFBQSxpQkFBaUIsQ0FBZTtJQUM5QixXQUFXLEVBQUUsU0FBb0M7R0FDbEQ7RUFGRCxBQUFBLGlCQUFpQixDQUFlO0lBQzlCLFdBQVcsRUFBRSxLQUFvQztHQUNsRDtFQUZELEFBQUEsaUJBQWlCLENBQWU7SUFDOUIsV0FBVyxFQUFFLFNBQW9DO0dBQ2xEO0VBRkQsQUFBQSxpQkFBaUIsQ0FBZTtJQUM5QixXQUFXLEVBQUUsU0FBb0M7R0FDbEQ7RUFGRCxBQUFBLGlCQUFpQixDQUFlO0lBQzlCLFdBQVcsRUFBRSxJQUFvQztHQUNsRDs7O0FHb0JMLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtFSHZEdkIsQUFBQSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsQ0FBNVE7SUFDUCxLQUFLLEVBQUUsSUFBSTtHQUNaO0VBTUMsQUFBQSxTQUFTLENBQWdCO0lBQ3ZCLEtBQUssRUFBRSxRQUFvQztHQUM1QztFQUZELEFBQUEsU0FBUyxDQUFnQjtJQUN2QixLQUFLLEVBQUUsUUFBb0M7R0FDNUM7RUFGRCxBQUFBLFNBQVMsQ0FBZ0I7SUFDdkIsS0FBSyxFQUFFLEtBQW9DO0dBQzVDO0VBRkQsQUFBQSxTQUFTLENBQWdCO0lBQ3ZCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsU0FBUyxDQUFnQjtJQUN2QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLFNBQVMsQ0FBZ0I7SUFDdkIsS0FBSyxFQUFFLEdBQW9DO0dBQzVDO0VBRkQsQUFBQSxTQUFTLENBQWdCO0lBQ3ZCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsU0FBUyxDQUFnQjtJQUN2QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLFNBQVMsQ0FBZ0I7SUFDdkIsS0FBSyxFQUFFLEtBQW9DO0dBQzVDO0VBRkQsQUFBQSxVQUFVLENBQWU7SUFDdkIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxVQUFVLENBQWU7SUFDdkIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxVQUFVLENBQWU7SUFDdkIsS0FBSyxFQUFFLEdBQW9DO0dBQzVDO0VBRkQsQUFBQSxVQUFVLENBQWU7SUFDdkIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxVQUFVLENBQWU7SUFDdkIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxVQUFVLENBQWU7SUFDdkIsS0FBSyxFQUFFLEtBQW9DO0dBQzVDO0VBRkQsQUFBQSxVQUFVLENBQWU7SUFDdkIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxVQUFVLENBQWU7SUFDdkIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxVQUFVLENBQWU7SUFDdkIsS0FBSyxFQUFFLEdBQW9DO0dBQzVDO0VBRkQsQUFBQSxVQUFVLENBQWU7SUFDdkIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxVQUFVLENBQWU7SUFDdkIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxVQUFVLENBQWU7SUFDdkIsS0FBSyxFQUFFLEtBQW9DO0dBQzVDO0VBRkQsQUFBQSxVQUFVLENBQWU7SUFDdkIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxVQUFVLENBQWU7SUFDdkIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxVQUFVLENBQWU7SUFDdkIsS0FBSyxFQUFFLElBQW9DO0dBQzVDO0VBa0JELEFBQUEsY0FBYyxDQUFRO0lBQ3BCLEtBQUssRUFBRSxJQUFJO0dBQ1o7RUFQRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsS0FBSyxFQUFFLFFBQW9DO0dBQzVDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLEtBQUssRUFBRSxRQUFvQztHQUM1QztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixLQUFLLEVBQUUsS0FBb0M7R0FDNUM7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixLQUFLLEVBQUUsR0FBb0M7R0FDNUM7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixLQUFLLEVBQUUsS0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsR0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsS0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsR0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsS0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsSUFBb0M7R0FDNUM7RUFQRCxBQUFBLGNBQWMsQ0FBUTtJQUNwQixJQUFJLEVBQUUsSUFBSTtHQUNYO0VBUEQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxRQUFvQztHQUMzQztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsUUFBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLEtBQW9DO0dBQzNDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsU0FBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLEdBQW9DO0dBQzNDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsU0FBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLEtBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLEdBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLEtBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLEdBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLEtBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLElBQW9DO0dBQzNDO0VBa0JELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxFQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxRQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxRQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxLQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxTQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxTQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxHQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxTQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxTQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxLQUFvQztHQUNsRDtFQUZELEFBQUEsaUJBQWlCLENBQWU7SUFDOUIsV0FBVyxFQUFFLFNBQW9DO0dBQ2xEO0VBRkQsQUFBQSxpQkFBaUIsQ0FBZTtJQUM5QixXQUFXLEVBQUUsU0FBb0M7R0FDbEQ7RUFGRCxBQUFBLGlCQUFpQixDQUFlO0lBQzlCLFdBQVcsRUFBRSxHQUFvQztHQUNsRDtFQUZELEFBQUEsaUJBQWlCLENBQWU7SUFDOUIsV0FBVyxFQUFFLFNBQW9DO0dBQ2xEO0VBRkQsQUFBQSxpQkFBaUIsQ0FBZTtJQUM5QixXQUFXLEVBQUUsU0FBb0M7R0FDbEQ7RUFGRCxBQUFBLGlCQUFpQixDQUFlO0lBQzlCLFdBQVcsRUFBRSxLQUFvQztHQUNsRDtFQUZELEFBQUEsaUJBQWlCLENBQWU7SUFDOUIsV0FBVyxFQUFFLFNBQW9DO0dBQ2xEO0VBRkQsQUFBQSxpQkFBaUIsQ0FBZTtJQUM5QixXQUFXLEVBQUUsU0FBb0M7R0FDbEQ7RUFGRCxBQUFBLGlCQUFpQixDQUFlO0lBQzlCLFdBQVcsRUFBRSxHQUFvQztHQUNsRDtFQUZELEFBQUEsaUJBQWlCLENBQWU7SUFDOUIsV0FBVyxFQUFFLFNBQW9DO0dBQ2xEO0VBRkQsQUFBQSxpQkFBaUIsQ0FBZTtJQUM5QixXQUFXLEVBQUUsU0FBb0M7R0FDbEQ7RUFGRCxBQUFBLGlCQUFpQixDQUFlO0lBQzlCLFdBQVcsRUFBRSxLQUFvQztHQUNsRDtFQUZELEFBQUEsaUJBQWlCLENBQWU7SUFDOUIsV0FBVyxFQUFFLFNBQW9DO0dBQ2xEO0VBRkQsQUFBQSxpQkFBaUIsQ0FBZTtJQUM5QixXQUFXLEVBQUUsU0FBb0M7R0FDbEQ7RUFGRCxBQUFBLGlCQUFpQixDQUFlO0lBQzlCLFdBQVcsRUFBRSxJQUFvQztHQUNsRDs7O0FFMFRMLEFBQUEsUUFBUSxDRTlXQztFQUNQLE9BQU8sRUFBRSxDQUFDO0VBQ1YsTUFBTSxFQUFFLENBQUM7RUFDVCxNQUFNLEVBQUUsQ0FBQztFQUlULFNBQVMsRUFBRSxDQUFDO0NBQ2I7O0FGaVhELEFBQUEsTUFBTSxDRS9XQztFQUNMLE9BQU8sRUFBRSxLQUFLO0VBQ2QsS0FBSyxFQUFFLElBQUk7RUFDWCxPQUFPLEVBQUUsQ0FBQztFQUNWLGFBQWEsRWxDMENXLElBQTRDO0VrQ3pDcEUsU0FBUyxFQUFFLElBQXVCO0VBQ2xDLFdBQVcsRUFBRSxPQUFPO0VBQ3BCLEtBQUssRWxDZGtCLE9BQXdCO0VrQ2UvQyxNQUFNLEVBQUUsQ0FBQztFQUNULGFBQWEsRUFBRSxHQUFHLENBQUMsS0FBSyxDbENtTU8sT0FBTztDa0NsTXZDOztBQUVELEFBQUEsS0FBSyxDQUFDO0VBQ0osT0FBTyxFQUFFLFlBQVk7RUFDckIsU0FBUyxFQUFFLElBQUk7RUFDZixhQUFhLEVBQUUsR0FBRztFQUNsQixXQUFXLEVBQUUsSUFBSTtDQUNsQjs7QUYrVEQsQUFBQSxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssUUFBUSxBQUFiLEVFclRlO0VwQjRCbkIsa0JBQWtCLEVvQjNCRSxVQUFVO0VwQjRCM0IsZUFBZSxFb0I1QkUsVUFBVTtFcEI2QnRCLFVBQVUsRW9CN0JFLFVBQVU7Q0FDL0I7O0FBR0QsQUFBQSxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssT0FBTyxBQUFaO0FBQ04sS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLFVBQVUsQUFBZixFQUFpQjtFQUNyQixNQUFNLEVBQUUsT0FBTztFQUNmLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFdBQVcsRUFBRSxNQUFNO0NBQ3BCOztBQUVELEFBQUEsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLE1BQU0sQUFBWCxFQUFhO0VBQ2pCLE9BQU8sRUFBRSxLQUFLO0NBQ2Y7O0FBR0QsQUFBQSxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssT0FBTyxBQUFaLEVBQWM7RUFDbEIsT0FBTyxFQUFFLEtBQUs7RUFDZCxLQUFLLEVBQUUsSUFBSTtDQUNaOztBQUdELEFBQUEsTUFBTSxDQUFBLEFBQUEsUUFBQyxBQUFBO0FBQ1AsTUFBTSxDQUFBLEFBQUEsSUFBQyxBQUFBLEVBQU07RUFDWCxNQUFNLEVBQUUsSUFBSTtDQUNiOztBQUdELEFBQUEsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLE1BQU0sQUFBWCxDQUFZLE1BQU07QUFDeEIsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLE9BQU8sQUFBWixDQUFhLE1BQU07QUFDekIsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLFVBQVUsQUFBZixDQUFnQixNQUFNLENBQUM7RXhCdkUzQixPQUFPLEVBQUUsaUNBQWlDO0VBQzFDLGNBQWMsRUFBRSxJQUFJO0N3QndFckI7O0FBR0QsQUFBQSxNQUFNLENBQUM7RUFDTCxPQUFPLEVBQUUsS0FBSztFQUNkLFdBQVcsRUFBRSxHQUE0QjtFQUN6QyxTQUFTLEVsQ2xDZSxJQUFJO0VrQ21DNUIsV0FBVyxFbEN2QmEsT0FBVztFa0N3Qm5DLEtBQUssRWxDMUVrQixPQUEwQjtDa0MyRWxEOztBQXlCRCxBQUFBLGFBQWEsQ0FBQztFQUNaLE9BQU8sRUFBRSxLQUFLO0VBQ2QsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVsQ2lHeUIsSUFBMEQ7RWtDaEd6RixPQUFPLEVsQ3ZCbUIsR0FBRyxDQUNILElBQUk7RWtDdUI5QixTQUFTLEVsQ25FZSxJQUFJO0VrQ29FNUIsV0FBVyxFbEN4RGEsT0FBVztFa0N5RG5DLEtBQUssRWxDM0drQixPQUEwQjtFa0M0R2pELGdCQUFnQixFbENtRWUsSUFBSTtFa0NsRW5DLGdCQUFnQixFQUFFLElBQUk7RUFDdEIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENsQ3dFYyxJQUFJO0VrQ3ZFbkMsYUFBYSxFbENmYSxHQUFHO0VjekM3QixrQkFBa0IsRW9CeURFLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxvQkFBZ0I7RXBCeEQ1QyxVQUFVLEVvQndERSxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsb0JBQWdCO0VwQjREcEQsa0JBQWtCLEVvQjNERSxZQUFZLENBQUMsV0FBVyxDQUFDLEtBQUksRUFBRSxVQUFVLENBQUMsV0FBVyxDQUFDLEtBQUk7RXBCNER6RSxhQUFhLEVvQjVERSxZQUFZLENBQUMsV0FBVyxDQUFDLEtBQUksRUFBRSxVQUFVLENBQUMsV0FBVyxDQUFDLEtBQUk7RXBCNkR0RSxVQUFVLEVvQjdERSxZQUFZLENBQUMsV0FBVyxDQUFDLEtBQUksRUFBRSxVQUFVLENBQUMsV0FBVyxDQUFDLEtBQUk7Q0FnQy9FOztBQTdDRCxBYnpERSxhYXlEVyxBYnpEVixNQUFNLENBQUM7RUFDTixZQUFZLEVyQnNKaUIsT0FBTztFcUJySnBDLE9BQU8sRUFBRSxDQUFDO0VQVVosa0JBQWtCLEVPVEksS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLG9CQUFnQixFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUpsRCx3QkFBa0Q7RVBjdkQsVUFBVSxFT1ZJLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxvQkFBZ0IsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FKbEQsd0JBQWtEO0NBSzlEOztBYXFESCxBcEJYRSxhb0JXVyxBcEJYVixrQkFBa0IsQ0FBQztFQUNsQixLQUFLLEVkMkd3QixJQUFJO0VjMUdqQyxPQUFPLEVBQUUsQ0FBQztDQUNYOztBb0JRSCxBcEJQRSxhb0JPVyxBcEJQVixzQkFBc0IsQ0FBQztFQUFFLEtBQUssRWR3R0EsSUFBSTtDY3hHUTs7QW9CTzdDLEFwQk5FLGFvQk1XLEFwQk5WLDJCQUEyQixDQUFFO0VBQUUsS0FBSyxFZHVHTixJQUFJO0NjdkdjOztBb0JNbkQsQUFzQkUsYUF0QlcsQUFzQlYsWUFBWSxDQUFDO0VBQ1osTUFBTSxFQUFFLENBQUM7RUFDVCxnQkFBZ0IsRUFBRSxXQUFXO0NBQzlCOztBQXpCSCxBQWdDRSxhQWhDVyxDQWdDVixBQUFBLFFBQUMsQUFBQSxHQWhDSixhQUFhLENBaUNWLEFBQUEsUUFBQyxBQUFBO0FBQ0YsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBLEVBbENYLGFBQWEsQ0FrQ1U7RUFDbkIsZ0JBQWdCLEVsQ3JJSyxPQUEwQjtFa0NzSS9DLE9BQU8sRUFBRSxDQUFDO0NBQ1g7O0FBckNILEFBdUNFLGFBdkNXLENBdUNWLEFBQUEsUUFBQyxBQUFBO0FBQ0YsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBLEVBeENYLGFBQWEsQ0F3Q1U7RUFDbkIsTUFBTSxFbEM2RXVCLFdBQVc7Q2tDNUV6Qzs7QUFNSCxBQUFBLFFBQVEsQUFBQSxhQUFhLENBQUM7RUFDcEIsTUFBTSxFQUFFLElBQUk7Q0FDYjs7QUZnTUQsQUFBQSxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssUUFBUSxBQUFiLEVFdExlO0VBQ25CLGtCQUFrQixFQUFFLElBQUk7Q0FDekI7O0FBWUQsTUFBTSxDQUFDLE1BQU0sT0FBTyw2QkFBNkIsRUFBRSxDQUFDO0VBQ2xELEFBSUUsS0FKRyxDQUFBLEFBQUEsSUFBQyxDQUFLLE1BQU0sQUFBWCxDQUlILGFBQWE7RUFIaEIsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLE1BQU0sQUFBWCxDQUdILGFBQWE7RUFGaEIsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLGdCQUFnQixBQUFyQixDQUVILGFBQWE7RUFEaEIsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLE9BQU8sQUFBWixDQUNILGFBQWEsQ0FBQztJQUNiLFdBQVcsRWxDb0JnQixJQUEwRDtHa0NuQnRGO0VBTkgsQUFRRSxLQVJHLENBQUEsQUFBQSxJQUFDLENBQUssTUFBTSxBQUFYLENBUUgsU0FBUyxFSXBKZCxlQUFlLEdKNEliLEtBQUssQUk1SVcsYUFBYSxDSjRJeEIsQUFBQSxJQUFDLENBQUssTUFBTSxBQUFYO0VJM0lSLGVBQWUsR0oySWIsS0FBSyxBSTNJVyxrQkFBa0IsQ0oySTdCLEFBQUEsSUFBQyxDQUFLLE1BQU0sQUFBWDtFSTFJUixlQUFlLEdBQUcsZ0JBQWdCLEdKMEloQyxLQUFLLEFJMUk4QixJQUFJLENKMElsQyxBQUFBLElBQUMsQ0FBSyxNQUFNLEFBQVg7RUFTSixlQUFlLENBVGpCLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxNQUFNLEFBQVg7RUFDTixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssTUFBTSxBQUFYLENBT0gsU0FBUztFSXBKZCxlQUFlLEdKNkliLEtBQUssQUk3SVcsYUFBYSxDSjZJeEIsQUFBQSxJQUFDLENBQUssTUFBTSxBQUFYO0VJNUlSLGVBQWUsR0o0SWIsS0FBSyxBSTVJVyxrQkFBa0IsQ0o0STdCLEFBQUEsSUFBQyxDQUFLLE1BQU0sQUFBWDtFSTNJUixlQUFlLEdBQUcsZ0JBQWdCLEdKMkloQyxLQUFLLEFJM0k4QixJQUFJLENKMklsQyxBQUFBLElBQUMsQ0FBSyxNQUFNLEFBQVg7RUFRSixlQUFlO0VBUmpCLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxNQUFNLEFBQVg7RUFDTixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssZ0JBQWdCLEFBQXJCLENBTUgsU0FBUztFSXBKZCxlQUFlLEdKOEliLEtBQUssQUk5SVcsYUFBYSxDSjhJeEIsQUFBQSxJQUFDLENBQUssZ0JBQWdCLEFBQXJCO0VJN0lSLGVBQWUsR0o2SWIsS0FBSyxBSTdJVyxrQkFBa0IsQ0o2STdCLEFBQUEsSUFBQyxDQUFLLGdCQUFnQixBQUFyQjtFSTVJUixlQUFlLEdBQUcsZ0JBQWdCLEdKNEloQyxLQUFLLEFJNUk4QixJQUFJLENKNElsQyxBQUFBLElBQUMsQ0FBSyxnQkFBZ0IsQUFBckI7RUFPSixlQUFlO0VBUGpCLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxnQkFBZ0IsQUFBckI7RUFDTixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssT0FBTyxBQUFaLENBS0gsU0FBUztFSXBKZCxlQUFlLEdKK0liLEtBQUssQUkvSVcsYUFBYSxDSitJeEIsQUFBQSxJQUFDLENBQUssT0FBTyxBQUFaO0VJOUlSLGVBQWUsR0o4SWIsS0FBSyxBSTlJVyxrQkFBa0IsQ0o4STdCLEFBQUEsSUFBQyxDQUFLLE9BQU8sQUFBWjtFSTdJUixlQUFlLEdBQUcsZ0JBQWdCLEdKNkloQyxLQUFLLEFJN0k4QixJQUFJLENKNklsQyxBQUFBLElBQUMsQ0FBSyxPQUFPLEFBQVo7RUFNSixlQUFlO0VBTmpCLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxPQUFPLEFBQVosRUFNYztJQUNoQixXQUFXLEVsQ21CZ0IsSUFBa0Y7R2tDbEI5RztFQVhILEFBYUUsS0FiRyxDQUFBLEFBQUEsSUFBQyxDQUFLLE1BQU0sQUFBWCxDQWFILFNBQVMsRUk5SmQsZUFBZSxHSmlKYixLQUFLLEFJakpXLGFBQWEsQ0ppSnhCLEFBQUEsSUFBQyxDQUFLLE1BQU0sQUFBWDtFSWhKUixlQUFlLEdKZ0piLEtBQUssQUloSlcsa0JBQWtCLENKZ0o3QixBQUFBLElBQUMsQ0FBSyxNQUFNLEFBQVg7RUkvSVIsZUFBZSxHQUFHLGdCQUFnQixHSitJaEMsS0FBSyxBSS9JOEIsSUFBSSxDSitJbEMsQUFBQSxJQUFDLENBQUssTUFBTSxBQUFYO0VBY0osZUFBZSxDQWRqQixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssTUFBTSxBQUFYO0VBQ04sS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLE1BQU0sQUFBWCxDQVlILFNBQVM7RUk5SmQsZUFBZSxHSmtKYixLQUFLLEFJbEpXLGFBQWEsQ0prSnhCLEFBQUEsSUFBQyxDQUFLLE1BQU0sQUFBWDtFSWpKUixlQUFlLEdKaUpiLEtBQUssQUlqSlcsa0JBQWtCLENKaUo3QixBQUFBLElBQUMsQ0FBSyxNQUFNLEFBQVg7RUloSlIsZUFBZSxHQUFHLGdCQUFnQixHSmdKaEMsS0FBSyxBSWhKOEIsSUFBSSxDSmdKbEMsQUFBQSxJQUFDLENBQUssTUFBTSxBQUFYO0VBYUosZUFBZTtFQWJqQixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssTUFBTSxBQUFYO0VBQ04sS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLGdCQUFnQixBQUFyQixDQVdILFNBQVM7RUk5SmQsZUFBZSxHSm1KYixLQUFLLEFJbkpXLGFBQWEsQ0ptSnhCLEFBQUEsSUFBQyxDQUFLLGdCQUFnQixBQUFyQjtFSWxKUixlQUFlLEdKa0piLEtBQUssQUlsSlcsa0JBQWtCLENKa0o3QixBQUFBLElBQUMsQ0FBSyxnQkFBZ0IsQUFBckI7RUlqSlIsZUFBZSxHQUFHLGdCQUFnQixHSmlKaEMsS0FBSyxBSWpKOEIsSUFBSSxDSmlKbEMsQUFBQSxJQUFDLENBQUssZ0JBQWdCLEFBQXJCO0VBWUosZUFBZTtFQVpqQixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssZ0JBQWdCLEFBQXJCO0VBQ04sS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLE9BQU8sQUFBWixDQVVILFNBQVM7RUk5SmQsZUFBZSxHSm9KYixLQUFLLEFJcEpXLGFBQWEsQ0pvSnhCLEFBQUEsSUFBQyxDQUFLLE9BQU8sQUFBWjtFSW5KUixlQUFlLEdKbUpiLEtBQUssQUluSlcsa0JBQWtCLENKbUo3QixBQUFBLElBQUMsQ0FBSyxPQUFPLEFBQVo7RUlsSlIsZUFBZSxHQUFHLGdCQUFnQixHSmtKaEMsS0FBSyxBSWxKOEIsSUFBSSxDSmtKbEMsQUFBQSxJQUFDLENBQUssT0FBTyxBQUFaO0VBV0osZUFBZTtFQVhqQixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssT0FBTyxBQUFaLEVBV2M7SUFDaEIsV0FBVyxFbENZZ0IsSUFBaUY7R2tDWDdHOzs7QUFVTCxBQUFBLFdBQVcsQ0FBQztFQUNWLGFBQWEsRWxDS2tCLElBQUk7Q2tDSnBDOztBQU9ELEFBQUEsTUFBTTtBQUNOLFNBQVMsQ0FBQztFQUNSLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE9BQU8sRUFBRSxLQUFLO0VBQ2QsVUFBVSxFQUFFLElBQUk7RUFDaEIsYUFBYSxFQUFFLElBQUk7Q0FTcEI7O0FBZEQsQUFPRSxNQVBJLENBT0osS0FBSztBQU5QLFNBQVMsQ0FNUCxLQUFLLENBQUM7RUFDSixVQUFVLEVsQ3RLWSxJQUE0QztFa0N1S2xFLFlBQVksRUFBRSxJQUFJO0VBQ2xCLGFBQWEsRUFBRSxDQUFDO0VBQ2hCLFdBQVcsRUFBRSxNQUFNO0VBQ25CLE1BQU0sRUFBRSxPQUFPO0NBQ2hCOztBQUVILEFBQUEsTUFBTSxDQUFDLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxPQUFPLEFBQVo7QUFDYixhQUFhLENBQUMsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLE9BQU8sQUFBWjtBQUNwQixTQUFTLENBQUMsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLFVBQVUsQUFBZjtBQUNoQixnQkFBZ0IsQ0FBQyxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssVUFBVSxBQUFmLEVBQWlCO0VBQ3RDLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLFdBQVcsRUFBRSxLQUFLO0VBQ2xCLFVBQVUsRUFBRSxNQUFNO0NBQ25COztBQUVELEFBQUEsTUFBTSxHQUFHLE1BQU07QUFDZixTQUFTLEdBQUcsU0FBUyxDQUFDO0VBQ3BCLFVBQVUsRUFBRSxJQUFJO0NBQ2pCOztBQUdELEFBQUEsYUFBYTtBQUNiLGdCQUFnQixDQUFDO0VBQ2YsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLFlBQVk7RUFDckIsWUFBWSxFQUFFLElBQUk7RUFDbEIsYUFBYSxFQUFFLENBQUM7RUFDaEIsY0FBYyxFQUFFLE1BQU07RUFDdEIsV0FBVyxFQUFFLE1BQU07RUFDbkIsTUFBTSxFQUFFLE9BQU87Q0FDaEI7O0FBQ0QsQUFBQSxhQUFhLEdBQUcsYUFBYTtBQUM3QixnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztFQUNsQyxVQUFVLEVBQUUsQ0FBQztFQUNiLFdBQVcsRUFBRSxJQUFJO0NBQ2xCOztBQU1ELEFBRUUsS0FGRyxDQUFBLEFBQUEsSUFBQyxDQUFLLE9BQU8sQUFBWixFQUVILEFBQUEsUUFBQyxBQUFBLEdBRkosS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLE9BQU8sQUFBWixDQUdILFNBQVM7QUFDVixRQUFRLENBQUEsQUFBQSxRQUFDLEFBQUEsRUFKWCxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssT0FBTyxBQUFaO0FBQ04sS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLFVBQVUsQUFBZixFQUNILEFBQUEsUUFBQyxBQUFBO0FBREosS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLFVBQVUsQUFBZixDQUVILFNBQVM7QUFDVixRQUFRLENBQUEsQUFBQSxRQUFDLEFBQUE7QUFIWCxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssVUFBVSxBQUFmLEVBR2lCO0VBQ25CLE1BQU0sRWxDL0N1QixXQUFXO0NrQ2dEekM7O0FBR0gsQUFFRSxhQUZXLEFBRVYsU0FBUztBQUNWLFFBQVEsQ0FBQSxBQUFBLFFBQUMsQUFBQSxFQUhYLGFBQWE7QUFDYixnQkFBZ0IsQUFDYixTQUFTO0FBQ1YsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBO0FBRlgsZ0JBQWdCLENBRU87RUFDbkIsTUFBTSxFbEN2RHVCLFdBQVc7Q2tDd0R6Qzs7QUFHSCxBQUlJLE1BSkUsQUFFSCxTQUFTLENBRVIsS0FBSztBQURQLFFBQVEsQ0FBQSxBQUFBLFFBQUMsQUFBQSxFQUhYLE1BQU0sQ0FJRixLQUFLO0FBSFQsU0FBUyxBQUNOLFNBQVMsQ0FFUixLQUFLO0FBRFAsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBO0FBRlgsU0FBUyxDQUdMLEtBQUssQ0FBQztFQUNKLE1BQU0sRWxDaEVxQixXQUFXO0NrQ2lFdkM7O0FBVUwsQUFBQSxvQkFBb0IsQ0FBQztFQUVuQixXQUFXLEVBQUUsR0FBNEI7RUFDekMsY0FBYyxFQUFFLEdBQTRCO0VBRTVDLGFBQWEsRUFBRSxDQUFDO0VBQ2hCLFVBQVUsRUFBRSxJQUF5QztDQU90RDs7QUFiRCxBQVFFLG9CQVJrQixBQVFqQixTQUFTLEVJL1FaLGVBQWUsR0p1UWYsb0JBQW9CLEFJdlFGLGFBQWE7QUFDL0IsZUFBZSxHSnNRZixvQkFBb0IsQUl0UUYsa0JBQWtCO0FBQ3BDLGVBQWUsR0FBRyxnQkFBZ0IsR0pxUWxDLG9CQUFvQixBSXJRaUIsSUFBSSxFSnFRekMsb0JBQW9CLEFBU2pCLFNBQVMsRUkzUVosZUFBZSxHSmtRZixvQkFBb0IsQUlsUUYsYUFBYTtBQUMvQixlQUFlLEdKaVFmLG9CQUFvQixBSWpRRixrQkFBa0I7QUFDcEMsZUFBZSxHQUFHLGdCQUFnQixHSmdRbEMsb0JBQW9CLEFJaFFpQixJQUFJLENKeVE1QjtFQUNULFlBQVksRUFBRSxDQUFDO0VBQ2YsYUFBYSxFQUFFLENBQUM7Q0FDakI7O0FieFBELEFBQUEsU0FBUyxFaUJ0QlgsZUFBZSxHQUFHLGFBQWE7QUFDL0IsZUFBZSxHQUFHLGtCQUFrQjtBQUNwQyxlQUFlLEdBQUcsZ0JBQWdCLEdBQUcsSUFBSSxDakJvQjVCO0VBQ1QsTUFBTSxFckJrSnVCLElBQWtGO0VxQmpKL0csT0FBTyxFckI0QmlCLEdBQUcsQ0FDSCxJQUFJO0VxQjVCNUIsU0FBUyxFckJwQmEsSUFBOEI7RXFCcUJwRCxXQUFXLEVyQmlDYSxHQUFHO0VxQmhDM0IsYUFBYSxFckJvQ1csR0FBRztDcUJuQzVCOztBQUVELEFBQUEsTUFBTSxBQUFBLFNBQVMsRWlCOUJqQixlQUFlLEdqQjhCYixNQUFNLEFpQjlCVSxhQUFhO0FBQy9CLGVBQWUsR2pCNkJiLE1BQU0sQWlCN0JVLGtCQUFrQjtBQUNwQyxlQUFlLEdBQUcsZ0JBQWdCLEdqQjRCaEMsTUFBTSxBaUI1QjZCLElBQUksQ2pCNEJ0QjtFQUNmLE1BQU0sRXJCMEl1QixJQUFrRjtFcUJ6SS9HLFdBQVcsRXJCeUlrQixJQUFrRjtDcUJ4SWhIOztBQUVELEFBQUEsUUFBUSxBQUFBLFNBQVMsRWlCbkNuQixlQUFlLEdqQm1DYixRQUFRLEFpQm5DUSxhQUFhO0FBQy9CLGVBQWUsR2pCa0NiLFFBQVEsQWlCbENRLGtCQUFrQjtBQUNwQyxlQUFlLEdBQUcsZ0JBQWdCLEdqQmlDaEMsUUFBUSxBaUJqQzJCLElBQUk7QWpCa0N2QyxNQUFNLENBQUEsQUFBQSxRQUFDLEFBQUEsQ0FBUyxTQUFTO0FpQnBDM0IsZUFBZSxHakJvQ2IsTUFBTSxBaUJwQ1UsYUFBYSxDakJvQ3ZCLEFBQUEsUUFBQyxBQUFBO0FpQm5DVCxlQUFlLEdqQm1DYixNQUFNLEFpQm5DVSxrQkFBa0IsQ2pCbUM1QixBQUFBLFFBQUMsQUFBQTtBaUJsQ1QsZUFBZSxHQUFHLGdCQUFnQixHakJrQ2hDLE1BQU0sQWlCbEM2QixJQUFJLENqQmtDakMsQUFBQSxRQUFDLEFBQUEsRUFBb0I7RUFDekIsTUFBTSxFQUFFLElBQUk7Q0FDYjs7QWFxUEgsQUFDRSxjQURZLENBQ1osYUFBYSxDQUFDO0VBQ1osTUFBTSxFbENwSHVCLElBQWtGO0VrQ3FIL0csT0FBTyxFbEMxT2lCLEdBQUcsQ0FDSCxJQUFJO0VrQzBPNUIsU0FBUyxFbEMxUmEsSUFBOEI7RWtDMlJwRCxXQUFXLEVsQ3JPYSxHQUFHO0VrQ3NPM0IsYUFBYSxFbENsT1csR0FBRztDa0NtTzVCOztBQVBILEFBUUUsY0FSWSxDQVFaLE1BQU0sQUFBQSxhQUFhLENBQUM7RUFDbEIsTUFBTSxFbEMzSHVCLElBQWtGO0VrQzRIL0csV0FBVyxFbEM1SGtCLElBQWtGO0NrQzZIaEg7O0FBWEgsQUFZRSxjQVpZLENBWVosUUFBUSxBQUFBLGFBQWE7QUFadkIsY0FBYyxDQWFaLE1BQU0sQ0FBQSxBQUFBLFFBQUMsQUFBQSxDQUFTLGFBQWEsQ0FBQztFQUM1QixNQUFNLEVBQUUsSUFBSTtDQUNiOztBQWZILEFBZ0JFLGNBaEJZLENBZ0JaLG9CQUFvQixDQUFDO0VBQ25CLE1BQU0sRWxDbkl1QixJQUFrRjtFa0NvSS9HLFVBQVUsRUFBRSxJQUEwQztFQUN0RCxPQUFPLEVBQUUsR0FBNkIsQ2xDelBkLElBQUk7RWtDMFA1QixTQUFTLEVsQzFTYSxJQUE4QjtFa0MyU3BELFdBQVcsRWxDclBhLEdBQUc7Q2tDc1A1Qjs7QWIzUkQsQUFBQSxTQUFTLEVpQjNCWCxlQUFlLEdBQUcsYUFBYTtBQUMvQixlQUFlLEdBQUcsa0JBQWtCO0FBQ3BDLGVBQWUsR0FBRyxnQkFBZ0IsR0FBRyxJQUFJLENqQnlCNUI7RUFDVCxNQUFNLEVyQmdKdUIsSUFBaUY7RXFCL0k5RyxPQUFPLEVyQnlCaUIsSUFBSSxDQUNKLElBQUk7RXFCekI1QixTQUFTLEVyQnJCYSxJQUE4QjtFcUJzQnBELFdBQVcsRXJCZ0NhLE9BQVM7RXFCL0JqQyxhQUFhLEVyQm1DVyxHQUFHO0NxQmxDNUI7O0FBRUQsQUFBQSxNQUFNLEFBQUEsU0FBUyxFaUJuQ2pCLGVBQWUsR2pCbUNiLE1BQU0sQWlCbkNVLGFBQWE7QUFDL0IsZUFBZSxHakJrQ2IsTUFBTSxBaUJsQ1Usa0JBQWtCO0FBQ3BDLGVBQWUsR0FBRyxnQkFBZ0IsR2pCaUNoQyxNQUFNLEFpQmpDNkIsSUFBSSxDakJpQ3RCO0VBQ2YsTUFBTSxFckJ3SXVCLElBQWlGO0VxQnZJOUcsV0FBVyxFckJ1SWtCLElBQWlGO0NxQnRJL0c7O0FBRUQsQUFBQSxRQUFRLEFBQUEsU0FBUyxFaUJ4Q25CLGVBQWUsR2pCd0NiLFFBQVEsQWlCeENRLGFBQWE7QUFDL0IsZUFBZSxHakJ1Q2IsUUFBUSxBaUJ2Q1Esa0JBQWtCO0FBQ3BDLGVBQWUsR0FBRyxnQkFBZ0IsR2pCc0NoQyxRQUFRLEFpQnRDMkIsSUFBSTtBakJ1Q3ZDLE1BQU0sQ0FBQSxBQUFBLFFBQUMsQUFBQSxDQUFTLFNBQVM7QWlCekMzQixlQUFlLEdqQnlDYixNQUFNLEFpQnpDVSxhQUFhLENqQnlDdkIsQUFBQSxRQUFDLEFBQUE7QWlCeENULGVBQWUsR2pCd0NiLE1BQU0sQWlCeENVLGtCQUFrQixDakJ3QzVCLEFBQUEsUUFBQyxBQUFBO0FpQnZDVCxlQUFlLEdBQUcsZ0JBQWdCLEdqQnVDaEMsTUFBTSxBaUJ2QzZCLElBQUksQ2pCdUNqQyxBQUFBLFFBQUMsQUFBQSxFQUFvQjtFQUN6QixNQUFNLEVBQUUsSUFBSTtDQUNiOztBYStRSCxBQUNFLGNBRFksQ0FDWixhQUFhLENBQUM7RUFDWixNQUFNLEVsQ2hKdUIsSUFBaUY7RWtDaUo5RyxPQUFPLEVsQ3ZRaUIsSUFBSSxDQUNKLElBQUk7RWtDdVE1QixTQUFTLEVsQ3JUYSxJQUE4QjtFa0NzVHBELFdBQVcsRWxDaFFhLE9BQVM7RWtDaVFqQyxhQUFhLEVsQzdQVyxHQUFHO0NrQzhQNUI7O0FBUEgsQUFRRSxjQVJZLENBUVosTUFBTSxBQUFBLGFBQWEsQ0FBQztFQUNsQixNQUFNLEVsQ3ZKdUIsSUFBaUY7RWtDd0o5RyxXQUFXLEVsQ3hKa0IsSUFBaUY7Q2tDeUovRzs7QUFYSCxBQVlFLGNBWlksQ0FZWixRQUFRLEFBQUEsYUFBYTtBQVp2QixjQUFjLENBYVosTUFBTSxDQUFBLEFBQUEsUUFBQyxBQUFBLENBQVMsYUFBYSxDQUFDO0VBQzVCLE1BQU0sRUFBRSxJQUFJO0NBQ2I7O0FBZkgsQUFnQkUsY0FoQlksQ0FnQlosb0JBQW9CLENBQUM7RUFDbkIsTUFBTSxFbEMvSnVCLElBQWlGO0VrQ2dLOUcsVUFBVSxFQUFFLElBQTBDO0VBQ3RELE9BQU8sRUFBRSxJQUE2QixDbEN0UmQsSUFBSTtFa0N1UjVCLFNBQVMsRWxDclVhLElBQThCO0VrQ3NVcEQsV0FBVyxFbENoUmEsT0FBUztDa0NpUmxDOztBQVFILEFBQUEsYUFBYSxDQUFDO0VBRVosUUFBUSxFQUFFLFFBQVE7Q0FNbkI7O0FBUkQsQUFLRSxhQUxXLENBS1gsYUFBYSxDQUFDO0VBQ1osYUFBYSxFQUFFLE1BQTJCO0NBQzNDOztBQUdILEFBQUEsc0JBQXNCLENBQUM7RUFDckIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLENBQUM7RUFDTixLQUFLLEVBQUUsQ0FBQztFQUNSLE9BQU8sRUFBRSxDQUFDO0VBQ1YsT0FBTyxFQUFFLEtBQUs7RUFDZCxLQUFLLEVsQzlMMEIsSUFBMEQ7RWtDK0x6RixNQUFNLEVsQy9MeUIsSUFBMEQ7RWtDZ016RixXQUFXLEVsQ2hNb0IsSUFBMEQ7RWtDaU16RixVQUFVLEVBQUUsTUFBTTtFQUNsQixjQUFjLEVBQUUsSUFBSTtDQUNyQjs7QUFDRCxBQUFBLFNBQVMsR0FBRyxzQkFBc0IsRUk5V2xDLGVBQWUsR0FBRyxhQUFhLEdKOFduQixzQkFBc0IsRUk3V2xDLGVBQWUsR0FBRyxrQkFBa0IsR0o2V3hCLHNCQUFzQixFSTVXbEMsZUFBZSxHQUFHLGdCQUFnQixHQUFHLElBQUksR0o0VzdCLHNCQUFzQjtBQUNsQyxlQUFlLEdBQUcsc0JBQXNCO0FBQ3hDLGNBQWMsQ0FBQyxhQUFhLEdBQUcsc0JBQXNCLENBQUM7RUFDcEQsS0FBSyxFbENyTTBCLElBQWlGO0VrQ3NNaEgsTUFBTSxFbEN0TXlCLElBQWlGO0VrQ3VNaEgsV0FBVyxFbEN2TW9CLElBQWlGO0NrQ3dNakg7O0FBQ0QsQUFBQSxTQUFTLEdBQUcsc0JBQXNCLEVJaFhsQyxlQUFlLEdBQUcsYUFBYSxHSmdYbkIsc0JBQXNCLEVJL1dsQyxlQUFlLEdBQUcsa0JBQWtCLEdKK1d4QixzQkFBc0IsRUk5V2xDLGVBQWUsR0FBRyxnQkFBZ0IsR0FBRyxJQUFJLEdKOFc3QixzQkFBc0I7QUFDbEMsZUFBZSxHQUFHLHNCQUFzQjtBQUN4QyxjQUFjLENBQUMsYUFBYSxHQUFHLHNCQUFzQixDQUFDO0VBQ3BELEtBQUssRWxDMU0wQixJQUFrRjtFa0MyTWpILE1BQU0sRWxDM015QixJQUFrRjtFa0M0TWpILFdBQVcsRWxDNU1vQixJQUFrRjtDa0M2TWxIOztBQUdELEFibGFFLFlha2FVLENibGFWLFdBQVc7QWFrYWIsWUFBWSxDYmphVixjQUFjO0FhaWFoQixZQUFZLENiaGFWLE1BQU07QWFnYVIsWUFBWSxDYi9aVixTQUFTO0FhK1pYLFlBQVksQ2I5WlYsYUFBYTtBYThaZixZQUFZLENiN1pWLGdCQUFnQjtBYTZabEIsWUFBWSxBYjVaVCxNQUFNLENBQUMsS0FBSztBYTRaZixZQUFZLEFiM1pULFNBQVMsQ0FBQyxLQUFLO0FhMlpsQixZQUFZLEFiMVpULGFBQWEsQ0FBQyxLQUFLO0FhMFp0QixZQUFZLEFielpULGdCQUFnQixDQUFDLEtBQUssQ0FBRTtFQUN2QixLQUFLLEVyQnNld0IsT0FBTztDcUJyZXJDOztBYXVaSCxBYnJaRSxZYXFaVSxDYnJaVixhQUFhLENBQUM7RUFDWixZQUFZLEVyQmtlaUIsT0FBTztFY25idEMsa0JBQWtCLEVPOUNJLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxvQkFBZ0I7RVArQzlDLFVBQVUsRU8vQ0ksS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLG9CQUFnQjtDQU1yRDs7QWE2WUgsQWJsWkksWWFrWlEsQ2JyWlYsYUFBYSxBQUdWLE1BQU0sQ0FBQztFQUNOLFlBQVksRUFBRSxPQUEwQjtFUDRDNUMsa0JBQWtCLEVPM0NMLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxvQkFBZ0IsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxPQUEyQjtFUDRDMUUsVUFBVSxFTzVDTCxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsb0JBQWdCLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsT0FBMkI7Q0FFL0U7O0FhOFlMLEFiM1lFLFlhMllVLENiM1lWLGtCQUFrQixDQUFDO0VBQ2pCLEtBQUssRXJCd2R3QixPQUFPO0VxQnZkcEMsWUFBWSxFckJ1ZGlCLE9BQU87RXFCdGRwQyxnQkFBZ0IsRXJCdWRhLE9BQU87Q3FCdGRyQzs7QWF1WUgsQWJyWUUsWWFxWVUsQ2JyWVYsc0JBQXNCLENBQUM7RUFDckIsS0FBSyxFckJrZHdCLE9BQU87Q3FCamRyQzs7QWFzWUgsQWJyYUUsWWFxYVUsQ2JyYVYsV0FBVztBYXFhYixZQUFZLENicGFWLGNBQWM7QWFvYWhCLFlBQVksQ2JuYVYsTUFBTTtBYW1hUixZQUFZLENibGFWLFNBQVM7QWFrYVgsWUFBWSxDYmphVixhQUFhO0FhaWFmLFlBQVksQ2JoYVYsZ0JBQWdCO0FhZ2FsQixZQUFZLEFiL1pULE1BQU0sQ0FBQyxLQUFLO0FhK1pmLFlBQVksQWI5WlQsU0FBUyxDQUFDLEtBQUs7QWE4WmxCLFlBQVksQWI3WlQsYUFBYSxDQUFDLEtBQUs7QWE2WnRCLFlBQVksQWI1WlQsZ0JBQWdCLENBQUMsS0FBSyxDQUFFO0VBQ3ZCLEtBQUssRXJCOGV3QixPQUFPO0NxQjdlckM7O0FhMFpILEFieFpFLFlhd1pVLENieFpWLGFBQWEsQ0FBQztFQUNaLFlBQVksRXJCMGVpQixPQUFPO0VjM2J0QyxrQkFBa0IsRU85Q0ksS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLG9CQUFnQjtFUCtDOUMsVUFBVSxFTy9DSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsb0JBQWdCO0NBTXJEOztBYWdaSCxBYnJaSSxZYXFaUSxDYnhaVixhQUFhLEFBR1YsTUFBTSxDQUFDO0VBQ04sWUFBWSxFQUFFLE9BQTBCO0VQNEM1QyxrQkFBa0IsRU8zQ0wsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLG9CQUFnQixFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLE9BQTJCO0VQNEMxRSxVQUFVLEVPNUNMLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxvQkFBZ0IsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxPQUEyQjtDQUUvRTs7QWFpWkwsQWI5WUUsWWE4WVUsQ2I5WVYsa0JBQWtCLENBQUM7RUFDakIsS0FBSyxFckJnZXdCLE9BQU87RXFCL2RwQyxZQUFZLEVyQitkaUIsT0FBTztFcUI5ZHBDLGdCQUFnQixFckIrZGEsT0FBTztDcUI5ZHJDOztBYTBZSCxBYnhZRSxZYXdZVSxDYnhZVixzQkFBc0IsQ0FBQztFQUNyQixLQUFLLEVyQjBkd0IsT0FBTztDcUJ6ZHJDOztBYXlZSCxBYnhhRSxVYXdhUSxDYnhhUixXQUFXO0Fhd2FiLFVBQVUsQ2J2YVIsY0FBYztBYXVhaEIsVUFBVSxDYnRhUixNQUFNO0Fhc2FSLFVBQVUsQ2JyYVIsU0FBUztBYXFhWCxVQUFVLENicGFSLGFBQWE7QWFvYWYsVUFBVSxDYm5hUixnQkFBZ0I7QWFtYWxCLFVBQVUsQWJsYVAsTUFBTSxDQUFDLEtBQUs7QWFrYWYsVUFBVSxBYmphUCxTQUFTLENBQUMsS0FBSztBYWlhbEIsVUFBVSxBYmhhUCxhQUFhLENBQUMsS0FBSztBYWdhdEIsVUFBVSxBYi9aUCxnQkFBZ0IsQ0FBQyxLQUFLLENBQUU7RUFDdkIsS0FBSyxFckJrZndCLE9BQU87Q3FCamZyQzs7QWE2WkgsQWIzWkUsVWEyWlEsQ2IzWlIsYUFBYSxDQUFDO0VBQ1osWUFBWSxFckI4ZWlCLE9BQU87RWMvYnRDLGtCQUFrQixFTzlDSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsb0JBQWdCO0VQK0M5QyxVQUFVLEVPL0NJLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxvQkFBZ0I7Q0FNckQ7O0FhbVpILEFieFpJLFVhd1pNLENiM1pSLGFBQWEsQUFHVixNQUFNLENBQUM7RUFDTixZQUFZLEVBQUUsT0FBMEI7RVA0QzVDLGtCQUFrQixFTzNDTCxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsb0JBQWdCLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsT0FBMkI7RVA0QzFFLFVBQVUsRU81Q0wsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLG9CQUFnQixFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLE9BQTJCO0NBRS9FOztBYW9aTCxBYmpaRSxVYWlaUSxDYmpaUixrQkFBa0IsQ0FBQztFQUNqQixLQUFLLEVyQm9ld0IsT0FBTztFcUJuZXBDLFlBQVksRXJCbWVpQixPQUFPO0VxQmxlcEMsZ0JBQWdCLEVyQm1lYSxPQUFPO0NxQmxlckM7O0FhNllILEFiM1lFLFVhMllRLENiM1lSLHNCQUFzQixDQUFDO0VBQ3JCLEtBQUssRXJCOGR3QixPQUFPO0NxQjdkckM7O0FhOFlILEFBRUUsYUFGVyxDQUFDLEtBQUssR0FFYixzQkFBc0IsQ0FBQztFQUN6QixHQUFHLEVBQUUsSUFBMkI7Q0FDakM7O0FBSkgsQUFLRSxhQUxXLENBQUMsS0FBSyxBQUtoQixRQUFRLEdBQUcsc0JBQXNCLENBQUM7RUFDakMsR0FBRyxFQUFFLENBQUM7Q0FDUDs7QUFTSCxBQUFBLFdBQVcsQ0FBQztFQUNWLE9BQU8sRUFBRSxLQUFLO0VBQ2QsVUFBVSxFQUFFLEdBQUc7RUFDZixhQUFhLEVBQUUsSUFBSTtFQUNuQixLQUFLLEVBQUUsT0FBeUI7Q0FDakM7O0FBa0JDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQW1FMUIsQUFqRUksWUFpRVEsQ0FqRVIsV0FBVyxDQUFDO0lBQ1YsT0FBTyxFQUFFLFlBQVk7SUFDckIsYUFBYSxFQUFFLENBQUM7SUFDaEIsY0FBYyxFQUFFLE1BQU07R0FDdkI7RUE2REwsQUExREksWUEwRFEsQ0ExRFIsYUFBYSxDQUFDO0lBQ1osT0FBTyxFQUFFLFlBQVk7SUFDckIsS0FBSyxFQUFFLElBQUk7SUFDWCxjQUFjLEVBQUUsTUFBTTtHQUN2QjtFQXNETCxBQW5ESSxZQW1EUSxDQW5EUixvQkFBb0IsQ0FBQztJQUNuQixPQUFPLEVBQUUsWUFBWTtHQUN0QjtFQWlETCxBQS9DSSxZQStDUSxDQS9DUixZQUFZLENBQUM7SUFDWCxPQUFPLEVBQUUsWUFBWTtJQUNyQixjQUFjLEVBQUUsTUFBTTtHQU92QjtFQXNDTCxBQTNDTSxZQTJDTSxDQS9DUixZQUFZLENBSVYsa0JBQWtCO0VBMkN4QixZQUFZLENBL0NSLFlBQVksQ0FLVixnQkFBZ0I7RUEwQ3RCLFlBQVksQ0EvQ1IsWUFBWSxDQU1WLGFBQWEsQ0FBQztJQUNaLEtBQUssRUFBRSxJQUFJO0dBQ1o7RUF1Q1AsQUFuQ0ksWUFtQ1EsQ0FuQ1IsWUFBWSxHQUFHLGFBQWEsQ0FBQztJQUMzQixLQUFLLEVBQUUsSUFBSTtHQUNaO0VBaUNMLEFBL0JJLFlBK0JRLENBL0JSLGNBQWMsQ0FBQztJQUNiLGFBQWEsRUFBRSxDQUFDO0lBQ2hCLGNBQWMsRUFBRSxNQUFNO0dBQ3ZCO0VBNEJMLEFBeEJJLFlBd0JRLENBeEJSLE1BQU07RUF3QlYsWUFBWSxDQXZCUixTQUFTLENBQUM7SUFDUixPQUFPLEVBQUUsWUFBWTtJQUNyQixVQUFVLEVBQUUsQ0FBQztJQUNiLGFBQWEsRUFBRSxDQUFDO0lBQ2hCLGNBQWMsRUFBRSxNQUFNO0dBS3ZCO0VBY0wsQUFqQk0sWUFpQk0sQ0F4QlIsTUFBTSxDQU9KLEtBQUs7RUFpQlgsWUFBWSxDQXZCUixTQUFTLENBTVAsS0FBSyxDQUFDO0lBQ0osWUFBWSxFQUFFLENBQUM7R0FDaEI7RUFlUCxBQWJJLFlBYVEsQ0FiUixNQUFNLENBQUMsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLE9BQU8sQUFBWjtFQWFqQixZQUFZLENBWlIsU0FBUyxDQUFDLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxVQUFVLEFBQWYsRUFBaUI7SUFDL0IsUUFBUSxFQUFFLFFBQVE7SUFDbEIsV0FBVyxFQUFFLENBQUM7R0FDZjtFQVNMLEFBTkksWUFNUSxDQU5SLGFBQWEsQ0FBQyxzQkFBc0IsQ0FBQztJQUNuQyxHQUFHLEVBQUUsQ0FBQztHQUNQOzs7QUFlTCxBQUtFLGdCQUxjLENBS2QsTUFBTTtBQUxSLGdCQUFnQixDQU1kLFNBQVM7QUFOWCxnQkFBZ0IsQ0FPZCxhQUFhO0FBUGYsZ0JBQWdCLENBUWQsZ0JBQWdCLENBQUM7RUFDZixVQUFVLEVBQUUsQ0FBQztFQUNiLGFBQWEsRUFBRSxDQUFDO0VBQ2hCLFdBQVcsRUFBRSxHQUE0QjtDQUMxQzs7QUFaSCxBQWVFLGdCQWZjLENBZWQsTUFBTTtBQWZSLGdCQUFnQixDQWdCZCxTQUFTLENBQUM7RUFDUixVQUFVLEVBQUUsSUFBc0Q7Q0FDbkU7O0FBbEJILEFBcUJFLGdCQXJCYyxDQXFCZCxXQUFXLENBQUM7RUgvaUJaLFdBQVcsRUFBRyxLQUFvQjtFQUNsQyxZQUFZLEVBQUUsS0FBcUI7Q0dnakJsQzs7QUF2QkgsQVA1aEJFLGdCTzRoQmMsQ0FxQmQsV0FBVyxBUGpqQlYsT0FBTyxFTzRoQlYsZ0JBQWdCLENBcUJkLFdBQVcsQVBoakJWLE1BQU0sQ0FBQztFQUNOLE9BQU8sRUFBRSxHQUFHO0VBQ1osT0FBTyxFQUFFLEtBQUs7Q0FDZjs7QU93aEJILEFQdmhCRSxnQk91aEJjLENBcUJkLFdBQVcsQVA1aUJWLE1BQU0sQ0FBQztFQUNOLEtBQUssRUFBRSxJQUFJO0NBQ1o7O0FPZ2pCRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUEzQjFCLEFBNEJJLGdCQTVCWSxDQTRCWixjQUFjLENBQUM7SUFDYixVQUFVLEVBQUUsS0FBSztJQUNqQixhQUFhLEVBQUUsQ0FBQztJQUNoQixXQUFXLEVBQUUsR0FBNEI7R0FDMUM7OztBQWhDTCxBQXVDRSxnQkF2Q2MsQ0F1Q2QsYUFBYSxDQUFDLHNCQUFzQixDQUFDO0VBQ25DLEtBQUssRUFBRSxJQUErQjtDQUN2Qzs7QUFPQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFoRDVCLEFBaURNLGdCQWpEVSxDQStDZCxjQUFjLENBRVYsY0FBYyxDQUFDO0lBQ2IsV0FBVyxFQUFFLElBQTZCO0lBQzFDLFNBQVMsRWxDeGlCUyxJQUE4QjtHa0N5aUJqRDs7O0FBSUgsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBeEQ1QixBQXlETSxnQkF6RFUsQ0F1RGQsY0FBYyxDQUVWLGNBQWMsQ0FBQztJQUNiLFdBQVcsRUFBRSxHQUE2QjtJQUMxQyxTQUFTLEVsQy9pQlMsSUFBOEI7R2tDZ2pCakQ7OztBQzdsQlAsQUFBQSxJQUFJLENBQUM7RUFDSCxPQUFPLEVBQUUsWUFBWTtFQUNyQixhQUFhLEVBQUUsQ0FBQztFQUNoQixXQUFXLEVuQzBJb0IsTUFBTTtFbUN6SXJDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLGNBQWMsRUFBRSxNQUFNO0VBQ3RCLFlBQVksRUFBRSxZQUFZO0VBQzFCLE1BQU0sRUFBRSxPQUFPO0VBQ2YsZ0JBQWdCLEVBQUUsSUFBSTtFQUN0QixNQUFNLEVBQUUscUJBQXFCO0VBQzdCLFdBQVcsRUFBRSxNQUFNO0VuQjBDbkIsT0FBTyxFaEJrQ21CLEdBQUcsQ0FDSCxJQUFJO0VnQmxDOUIsU0FBUyxFaEJWZSxJQUFJO0VnQlc1QixXQUFXLEVoQkNhLE9BQVc7RWdCQW5DLGFBQWEsRWhCOENhLEdBQUc7RWM0RzdCLG1CQUFtQixFcUJyTUUsSUFBSTtFckJzTXRCLGdCQUFnQixFcUJ0TUUsSUFBSTtFckJ1TXJCLGVBQWUsRXFCdk1FLElBQUk7RXJCd01qQixXQUFXLEVxQnhNRSxJQUFJO0NBa0MxQjs7QUE5Q0QsQUFpQkksSUFqQkEsQUFpQkMsTUFBTSxFQWpCWCxJQUFJLEFBa0JDLE1BQU0sRUFsQlgsSUFBSSxBQWVELE9BQU8sQUFFTCxNQUFNLEVBakJYLElBQUksQUFlRCxPQUFPLEFBR0wsTUFBTSxFQWxCWCxJQUFJLEFBZ0JELE9BQU8sQUFDTCxNQUFNLEVBakJYLElBQUksQUFnQkQsT0FBTyxBQUVMLE1BQU0sQ0FBQztFekJwQlYsT0FBTyxFQUFFLGlDQUFpQztFQUMxQyxjQUFjLEVBQUUsSUFBSTtDeUJxQmpCOztBQXBCTCxBQXVCRSxJQXZCRSxBQXVCRCxNQUFNLEVBdkJULElBQUksQUF3QkQsTUFBTSxFQXhCVCxJQUFJLEFBeUJELE1BQU0sQ0FBQztFQUNOLEtBQUssRW5DcUh3QixJQUFJO0VtQ3BIakMsZUFBZSxFQUFFLElBQUk7Q0FDdEI7O0FBNUJILEFBOEJFLElBOUJFLEFBOEJELE9BQU8sRUE5QlYsSUFBSSxBQStCRCxPQUFPLENBQUM7RUFDUCxPQUFPLEVBQUUsQ0FBQztFQUNWLGdCQUFnQixFQUFFLElBQUk7RXJCMkJ4QixrQkFBa0IsRXFCMUJJLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxvQkFBZ0I7RXJCMkI5QyxVQUFVLEVxQjNCSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsb0JBQWdCO0NBQ3JEOztBQW5DSCxBQXFDRSxJQXJDRSxBQXFDRCxTQUFTLEVBckNaLElBQUksQ0FzQ0QsQUFBQSxRQUFDLEFBQUE7QUFDRixRQUFRLENBQUEsQUFBQSxRQUFDLEFBQUEsRUF2Q1gsSUFBSSxDQXVDbUI7RUFDbkIsTUFBTSxFbkN1THVCLFdBQVc7RUdwTzFDLE9BQU8sRWdDOENZLElBQUc7RWhDM0N0QixNQUFNLEVBQUUsaUJBQTBCO0VXOERsQyxrQkFBa0IsRXFCbEJJLElBQUk7RXJCbUJsQixVQUFVLEVxQm5CSSxJQUFJO0NBQ3pCOztBQUtILEFBQ0UsQ0FERCxBQUFBLElBQUksQUFDRixTQUFTO0FBQ1YsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBLEVBRlgsQ0FBQyxBQUFBLElBQUksQ0FFa0I7RUFDbkIsY0FBYyxFQUFFLElBQUk7Q0FDckI7O0FBT0gsQUFBQSxZQUFZLENBQUM7RW5CN0RYLEtBQUssRWhCaUowQixJQUFJO0VnQmhKbkMsZ0JBQWdCLEVoQmlKZSxJQUFJO0VnQmhKbkMsWUFBWSxFaEJpSm1CLElBQUk7Q21DcEZwQzs7QUFGRCxBbkJ6REUsWW1CeURVLEFuQnpEVCxNQUFNLEVtQnlEVCxZQUFZLEFuQnhEVCxNQUFNLENBQUM7RUFDTixLQUFLLEVoQjJJd0IsSUFBSTtFZ0IxSWpDLGdCQUFnQixFQUFFLE9BQXdCO0VBQ3RDLFlBQVksRUFBRSxPQUFvQjtDQUN2Qzs7QW1Cb0RILEFuQm5ERSxZbUJtRFUsQW5CbkRULE1BQU0sQ0FBQztFQUNOLEtBQUssRWhCc0l3QixJQUFJO0VnQnJJakMsZ0JBQWdCLEVBQUUsT0FBd0I7RUFDdEMsWUFBWSxFQUFFLE9BQW9CO0NBQ3ZDOztBbUIrQ0gsQW5COUNFLFltQjhDVSxBbkI5Q1QsT0FBTyxFbUI4Q1YsWUFBWSxBbkI3Q1QsT0FBTztBQUNSLEtBQUssR21CNENQLFlBQVksQW5CNUNELGdCQUFnQixDQUFDO0VBQ3hCLEtBQUssRWhCK0h3QixJQUFJO0VnQjlIakMsZ0JBQWdCLEVBQUUsT0FBd0I7RUFDdEMsWUFBWSxFQUFFLE9BQW9CO0NBU3ZDOztBbUJnQ0gsQW5CdkNJLFltQnVDUSxBbkI5Q1QsT0FBTyxBQU9MLE1BQU0sRW1CdUNYLFlBQVksQW5COUNULE9BQU8sQUFRTCxNQUFNLEVtQnNDWCxZQUFZLEFuQjlDVCxPQUFPLEFBU0wsTUFBTSxFbUJxQ1gsWUFBWSxBbkI3Q1QsT0FBTyxBQU1MLE1BQU0sRW1CdUNYLFlBQVksQW5CN0NULE9BQU8sQUFPTCxNQUFNLEVtQnNDWCxZQUFZLEFuQjdDVCxPQUFPLEFBUUwsTUFBTTtBQVBULEtBQUssR21CNENQLFlBQVksQW5CNUNELGdCQUFnQixBQUt0QixNQUFNO0FBTFQsS0FBSyxHbUI0Q1AsWUFBWSxBbkI1Q0QsZ0JBQWdCLEFBTXRCLE1BQU07QUFOVCxLQUFLLEdtQjRDUCxZQUFZLEFuQjVDRCxnQkFBZ0IsQUFPdEIsTUFBTSxDQUFDO0VBQ04sS0FBSyxFaEJ3SHNCLElBQUk7RWdCdkgvQixnQkFBZ0IsRUFBRSxPQUF3QjtFQUN0QyxZQUFZLEVBQUUsT0FBb0I7Q0FDdkM7O0FtQmlDTCxBbkI5Q0UsWW1COENVLEFuQjlDVCxPQUFPLEVtQjhDVixZQUFZLEFuQjdDVCxPQUFPO0FBQ1IsS0FBSyxHbUI0Q1AsWUFBWSxBbkI1Q0QsZ0JBQWdCLENBZUM7RUFDeEIsZ0JBQWdCLEVBQUUsSUFBSTtDQUN2Qjs7QW1CMkJILEFuQnZCSSxZbUJ1QlEsQW5CMUJULFNBQVMsQUFHUCxNQUFNLEVtQnVCWCxZQUFZLEFuQjFCVCxTQUFTLEFBSVAsTUFBTSxFbUJzQlgsWUFBWSxBbkIxQlQsU0FBUyxBQUtQLE1BQU0sRW1CcUJYLFlBQVksQ25CekJULEFBQUEsUUFBQyxBQUFBLENBRUMsTUFBTSxFbUJ1QlgsWUFBWSxDbkJ6QlQsQUFBQSxRQUFDLEFBQUEsQ0FHQyxNQUFNLEVtQnNCWCxZQUFZLENuQnpCVCxBQUFBLFFBQUMsQUFBQSxDQUlDLE1BQU07QUFIVCxRQUFRLENBQUEsQUFBQSxRQUFDLEFBQUEsRW1Cd0JYLFlBQVksQW5CdkJQLE1BQU07QUFEVCxRQUFRLENBQUEsQUFBQSxRQUFDLEFBQUEsRW1Cd0JYLFlBQVksQW5CdEJQLE1BQU07QUFGVCxRQUFRLENBQUEsQUFBQSxRQUFDLEFBQUEsRW1Cd0JYLFlBQVksQW5CckJQLE1BQU0sQ0FBQztFQUNOLGdCQUFnQixFaEJ5R1csSUFBSTtFZ0J4RzNCLFlBQVksRWhCeUdXLElBQUk7Q2dCeEdoQzs7QW1Ca0JMLEFuQmZFLFltQmVVLENuQmZWLE1BQU0sQ0FBQztFQUNMLEtBQUssRWhCbUd3QixJQUFJO0VnQmxHakMsZ0JBQWdCLEVoQmlHYSxJQUFJO0NnQmhHbEM7O0FtQmVILEFBQUEsWUFBWSxDQUFDO0VuQmhFWCxLQUFLLEVoQnFKMEIsSUFBSTtFZ0JwSm5DLGdCQUFnQixFaEJVTSxPQUFxQjtFZ0JUM0MsWUFBWSxFaEJxSm1CLE9BQTJCO0NtQ3JGM0Q7O0FBRkQsQW5CNURFLFltQjREVSxBbkI1RFQsTUFBTSxFbUI0RFQsWUFBWSxBbkIzRFQsTUFBTSxDQUFDO0VBQ04sS0FBSyxFaEIrSXdCLElBQUk7RWdCOUlqQyxnQkFBZ0IsRUFBRSxPQUF3QjtFQUN0QyxZQUFZLEVBQUUsT0FBb0I7Q0FDdkM7O0FtQnVESCxBbkJ0REUsWW1Cc0RVLEFuQnREVCxNQUFNLENBQUM7RUFDTixLQUFLLEVoQjBJd0IsSUFBSTtFZ0J6SWpDLGdCQUFnQixFQUFFLE9BQXdCO0VBQ3RDLFlBQVksRUFBRSxPQUFvQjtDQUN2Qzs7QW1Ca0RILEFuQmpERSxZbUJpRFUsQW5CakRULE9BQU8sRW1CaURWLFlBQVksQW5CaERULE9BQU87QUFDUixLQUFLLEdtQitDUCxZQUFZLEFuQi9DRCxnQkFBZ0IsQ0FBQztFQUN4QixLQUFLLEVoQm1Jd0IsSUFBSTtFZ0JsSWpDLGdCQUFnQixFQUFFLE9BQXdCO0VBQ3RDLFlBQVksRUFBRSxPQUFvQjtDQVN2Qzs7QW1CbUNILEFuQjFDSSxZbUIwQ1EsQW5CakRULE9BQU8sQUFPTCxNQUFNLEVtQjBDWCxZQUFZLEFuQmpEVCxPQUFPLEFBUUwsTUFBTSxFbUJ5Q1gsWUFBWSxBbkJqRFQsT0FBTyxBQVNMLE1BQU0sRW1Cd0NYLFlBQVksQW5CaERULE9BQU8sQUFNTCxNQUFNLEVtQjBDWCxZQUFZLEFuQmhEVCxPQUFPLEFBT0wsTUFBTSxFbUJ5Q1gsWUFBWSxBbkJoRFQsT0FBTyxBQVFMLE1BQU07QUFQVCxLQUFLLEdtQitDUCxZQUFZLEFuQi9DRCxnQkFBZ0IsQUFLdEIsTUFBTTtBQUxULEtBQUssR21CK0NQLFlBQVksQW5CL0NELGdCQUFnQixBQU10QixNQUFNO0FBTlQsS0FBSyxHbUIrQ1AsWUFBWSxBbkIvQ0QsZ0JBQWdCLEFBT3RCLE1BQU0sQ0FBQztFQUNOLEtBQUssRWhCNEhzQixJQUFJO0VnQjNIL0IsZ0JBQWdCLEVBQUUsT0FBd0I7RUFDdEMsWUFBWSxFQUFFLE9BQW9CO0NBQ3ZDOztBbUJvQ0wsQW5CakRFLFltQmlEVSxBbkJqRFQsT0FBTyxFbUJpRFYsWUFBWSxBbkJoRFQsT0FBTztBQUNSLEtBQUssR21CK0NQLFlBQVksQW5CL0NELGdCQUFnQixDQWVDO0VBQ3hCLGdCQUFnQixFQUFFLElBQUk7Q0FDdkI7O0FtQjhCSCxBbkIxQkksWW1CMEJRLEFuQjdCVCxTQUFTLEFBR1AsTUFBTSxFbUIwQlgsWUFBWSxBbkI3QlQsU0FBUyxBQUlQLE1BQU0sRW1CeUJYLFlBQVksQW5CN0JULFNBQVMsQUFLUCxNQUFNLEVtQndCWCxZQUFZLENuQjVCVCxBQUFBLFFBQUMsQUFBQSxDQUVDLE1BQU0sRW1CMEJYLFlBQVksQ25CNUJULEFBQUEsUUFBQyxBQUFBLENBR0MsTUFBTSxFbUJ5QlgsWUFBWSxDbkI1QlQsQUFBQSxRQUFDLEFBQUEsQ0FJQyxNQUFNO0FBSFQsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBLEVtQjJCWCxZQUFZLEFuQjFCUCxNQUFNO0FBRFQsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBLEVtQjJCWCxZQUFZLEFuQnpCUCxNQUFNO0FBRlQsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBLEVtQjJCWCxZQUFZLEFuQnhCUCxNQUFNLENBQUM7RUFDTixnQkFBZ0IsRWhCOUJFLE9BQXFCO0VnQitCbkMsWUFBWSxFaEI2R1csT0FBMkI7Q2dCNUd2RDs7QW1CcUJMLEFuQmxCRSxZbUJrQlUsQ25CbEJWLE1BQU0sQ0FBQztFQUNMLEtBQUssRWhCcENlLE9BQXFCO0VnQnFDekMsZ0JBQWdCLEVoQnFHYSxJQUFJO0NnQnBHbEM7O0FtQm1CSCxBQUFBLFlBQVksQ0FBQztFbkJwRVgsS0FBSyxFaEJ5SjBCLElBQUk7RWdCeEpuQyxnQkFBZ0IsRWhCV00sT0FBTztFZ0JWN0IsWUFBWSxFaEJ5Sm1CLE9BQTJCO0NtQ3JGM0Q7O0FBRkQsQW5CaEVFLFltQmdFVSxBbkJoRVQsTUFBTSxFbUJnRVQsWUFBWSxBbkIvRFQsTUFBTSxDQUFDO0VBQ04sS0FBSyxFaEJtSndCLElBQUk7RWdCbEpqQyxnQkFBZ0IsRUFBRSxPQUF3QjtFQUN0QyxZQUFZLEVBQUUsT0FBb0I7Q0FDdkM7O0FtQjJESCxBbkIxREUsWW1CMERVLEFuQjFEVCxNQUFNLENBQUM7RUFDTixLQUFLLEVoQjhJd0IsSUFBSTtFZ0I3SWpDLGdCQUFnQixFQUFFLE9BQXdCO0VBQ3RDLFlBQVksRUFBRSxPQUFvQjtDQUN2Qzs7QW1Cc0RILEFuQnJERSxZbUJxRFUsQW5CckRULE9BQU8sRW1CcURWLFlBQVksQW5CcERULE9BQU87QUFDUixLQUFLLEdtQm1EUCxZQUFZLEFuQm5ERCxnQkFBZ0IsQ0FBQztFQUN4QixLQUFLLEVoQnVJd0IsSUFBSTtFZ0J0SWpDLGdCQUFnQixFQUFFLE9BQXdCO0VBQ3RDLFlBQVksRUFBRSxPQUFvQjtDQVN2Qzs7QW1CdUNILEFuQjlDSSxZbUI4Q1EsQW5CckRULE9BQU8sQUFPTCxNQUFNLEVtQjhDWCxZQUFZLEFuQnJEVCxPQUFPLEFBUUwsTUFBTSxFbUI2Q1gsWUFBWSxBbkJyRFQsT0FBTyxBQVNMLE1BQU0sRW1CNENYLFlBQVksQW5CcERULE9BQU8sQUFNTCxNQUFNLEVtQjhDWCxZQUFZLEFuQnBEVCxPQUFPLEFBT0wsTUFBTSxFbUI2Q1gsWUFBWSxBbkJwRFQsT0FBTyxBQVFMLE1BQU07QUFQVCxLQUFLLEdtQm1EUCxZQUFZLEFuQm5ERCxnQkFBZ0IsQUFLdEIsTUFBTTtBQUxULEtBQUssR21CbURQLFlBQVksQW5CbkRELGdCQUFnQixBQU10QixNQUFNO0FBTlQsS0FBSyxHbUJtRFAsWUFBWSxBbkJuREQsZ0JBQWdCLEFBT3RCLE1BQU0sQ0FBQztFQUNOLEtBQUssRWhCZ0lzQixJQUFJO0VnQi9IL0IsZ0JBQWdCLEVBQUUsT0FBd0I7RUFDdEMsWUFBWSxFQUFFLE9BQW9CO0NBQ3ZDOztBbUJ3Q0wsQW5CckRFLFltQnFEVSxBbkJyRFQsT0FBTyxFbUJxRFYsWUFBWSxBbkJwRFQsT0FBTztBQUNSLEtBQUssR21CbURQLFlBQVksQW5CbkRELGdCQUFnQixDQWVDO0VBQ3hCLGdCQUFnQixFQUFFLElBQUk7Q0FDdkI7O0FtQmtDSCxBbkI5QkksWW1COEJRLEFuQmpDVCxTQUFTLEFBR1AsTUFBTSxFbUI4QlgsWUFBWSxBbkJqQ1QsU0FBUyxBQUlQLE1BQU0sRW1CNkJYLFlBQVksQW5CakNULFNBQVMsQUFLUCxNQUFNLEVtQjRCWCxZQUFZLENuQmhDVCxBQUFBLFFBQUMsQUFBQSxDQUVDLE1BQU0sRW1COEJYLFlBQVksQ25CaENULEFBQUEsUUFBQyxBQUFBLENBR0MsTUFBTSxFbUI2QlgsWUFBWSxDbkJoQ1QsQUFBQSxRQUFDLEFBQUEsQ0FJQyxNQUFNO0FBSFQsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBLEVtQitCWCxZQUFZLEFuQjlCUCxNQUFNO0FBRFQsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBLEVtQitCWCxZQUFZLEFuQjdCUCxNQUFNO0FBRlQsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBLEVtQitCWCxZQUFZLEFuQjVCUCxNQUFNLENBQUM7RUFDTixnQkFBZ0IsRWhCN0JFLE9BQU87RWdCOEJyQixZQUFZLEVoQmlIVyxPQUEyQjtDZ0JoSHZEOztBbUJ5QkwsQW5CdEJFLFltQnNCVSxDbkJ0QlYsTUFBTSxDQUFDO0VBQ0wsS0FBSyxFaEJuQ2UsT0FBTztFZ0JvQzNCLGdCQUFnQixFaEJ5R2EsSUFBSTtDZ0J4R2xDOztBbUJ1QkgsQUFBQSxTQUFTLENBQUM7RW5CeEVSLEtBQUssRWhCNkowQixJQUFJO0VnQjVKbkMsZ0JBQWdCLEVoQllNLE9BQU87RWdCWDdCLFlBQVksRWhCNkptQixPQUF3QjtDbUNyRnhEOztBQUZELEFuQnBFRSxTbUJvRU8sQW5CcEVOLE1BQU0sRW1Cb0VULFNBQVMsQW5CbkVOLE1BQU0sQ0FBQztFQUNOLEtBQUssRWhCdUp3QixJQUFJO0VnQnRKakMsZ0JBQWdCLEVBQUUsT0FBd0I7RUFDdEMsWUFBWSxFQUFFLE9BQW9CO0NBQ3ZDOztBbUIrREgsQW5COURFLFNtQjhETyxBbkI5RE4sTUFBTSxDQUFDO0VBQ04sS0FBSyxFaEJrSndCLElBQUk7RWdCakpqQyxnQkFBZ0IsRUFBRSxPQUF3QjtFQUN0QyxZQUFZLEVBQUUsT0FBb0I7Q0FDdkM7O0FtQjBESCxBbkJ6REUsU21CeURPLEFuQnpETixPQUFPLEVtQnlEVixTQUFTLEFuQnhETixPQUFPO0FBQ1IsS0FBSyxHbUJ1RFAsU0FBUyxBbkJ2REUsZ0JBQWdCLENBQUM7RUFDeEIsS0FBSyxFaEIySXdCLElBQUk7RWdCMUlqQyxnQkFBZ0IsRUFBRSxPQUF3QjtFQUN0QyxZQUFZLEVBQUUsT0FBb0I7Q0FTdkM7O0FtQjJDSCxBbkJsREksU21Ca0RLLEFuQnpETixPQUFPLEFBT0wsTUFBTSxFbUJrRFgsU0FBUyxBbkJ6RE4sT0FBTyxBQVFMLE1BQU0sRW1CaURYLFNBQVMsQW5CekROLE9BQU8sQUFTTCxNQUFNLEVtQmdEWCxTQUFTLEFuQnhETixPQUFPLEFBTUwsTUFBTSxFbUJrRFgsU0FBUyxBbkJ4RE4sT0FBTyxBQU9MLE1BQU0sRW1CaURYLFNBQVMsQW5CeEROLE9BQU8sQUFRTCxNQUFNO0FBUFQsS0FBSyxHbUJ1RFAsU0FBUyxBbkJ2REUsZ0JBQWdCLEFBS3RCLE1BQU07QUFMVCxLQUFLLEdtQnVEUCxTQUFTLEFuQnZERSxnQkFBZ0IsQUFNdEIsTUFBTTtBQU5ULEtBQUssR21CdURQLFNBQVMsQW5CdkRFLGdCQUFnQixBQU90QixNQUFNLENBQUM7RUFDTixLQUFLLEVoQm9Jc0IsSUFBSTtFZ0JuSS9CLGdCQUFnQixFQUFFLE9BQXdCO0VBQ3RDLFlBQVksRUFBRSxPQUFvQjtDQUN2Qzs7QW1CNENMLEFuQnpERSxTbUJ5RE8sQW5CekROLE9BQU8sRW1CeURWLFNBQVMsQW5CeEROLE9BQU87QUFDUixLQUFLLEdtQnVEUCxTQUFTLEFuQnZERSxnQkFBZ0IsQ0FlQztFQUN4QixnQkFBZ0IsRUFBRSxJQUFJO0NBQ3ZCOztBbUJzQ0gsQW5CbENJLFNtQmtDSyxBbkJyQ04sU0FBUyxBQUdQLE1BQU0sRW1Ca0NYLFNBQVMsQW5CckNOLFNBQVMsQUFJUCxNQUFNLEVtQmlDWCxTQUFTLEFuQnJDTixTQUFTLEFBS1AsTUFBTSxFbUJnQ1gsU0FBUyxDbkJwQ04sQUFBQSxRQUFDLEFBQUEsQ0FFQyxNQUFNLEVtQmtDWCxTQUFTLENuQnBDTixBQUFBLFFBQUMsQUFBQSxDQUdDLE1BQU0sRW1CaUNYLFNBQVMsQ25CcENOLEFBQUEsUUFBQyxBQUFBLENBSUMsTUFBTTtBQUhULFFBQVEsQ0FBQSxBQUFBLFFBQUMsQUFBQSxFbUJtQ1gsU0FBUyxBbkJsQ0osTUFBTTtBQURULFFBQVEsQ0FBQSxBQUFBLFFBQUMsQUFBQSxFbUJtQ1gsU0FBUyxBbkJqQ0osTUFBTTtBQUZULFFBQVEsQ0FBQSxBQUFBLFFBQUMsQUFBQSxFbUJtQ1gsU0FBUyxBbkJoQ0osTUFBTSxDQUFDO0VBQ04sZ0JBQWdCLEVoQjVCRSxPQUFPO0VnQjZCckIsWUFBWSxFaEJxSFcsT0FBd0I7Q2dCcEhwRDs7QW1CNkJMLEFuQjFCRSxTbUIwQk8sQ25CMUJQLE1BQU0sQ0FBQztFQUNMLEtBQUssRWhCbENlLE9BQU87RWdCbUMzQixnQkFBZ0IsRWhCNkdhLElBQUk7Q2dCNUdsQzs7QW1CMkJILEFBQUEsWUFBWSxDQUFDO0VuQjVFWCxLQUFLLEVoQmlLMEIsSUFBSTtFZ0JoS25DLGdCQUFnQixFaEJhTSxPQUFPO0VnQlo3QixZQUFZLEVoQmlLbUIsT0FBMkI7Q21DckYzRDs7QUFGRCxBbkJ4RUUsWW1Cd0VVLEFuQnhFVCxNQUFNLEVtQndFVCxZQUFZLEFuQnZFVCxNQUFNLENBQUM7RUFDTixLQUFLLEVoQjJKd0IsSUFBSTtFZ0IxSmpDLGdCQUFnQixFQUFFLE9BQXdCO0VBQ3RDLFlBQVksRUFBRSxPQUFvQjtDQUN2Qzs7QW1CbUVILEFuQmxFRSxZbUJrRVUsQW5CbEVULE1BQU0sQ0FBQztFQUNOLEtBQUssRWhCc0p3QixJQUFJO0VnQnJKakMsZ0JBQWdCLEVBQUUsT0FBd0I7RUFDdEMsWUFBWSxFQUFFLE9BQW9CO0NBQ3ZDOztBbUI4REgsQW5CN0RFLFltQjZEVSxBbkI3RFQsT0FBTyxFbUI2RFYsWUFBWSxBbkI1RFQsT0FBTztBQUNSLEtBQUssR21CMkRQLFlBQVksQW5CM0RELGdCQUFnQixDQUFDO0VBQ3hCLEtBQUssRWhCK0l3QixJQUFJO0VnQjlJakMsZ0JBQWdCLEVBQUUsT0FBd0I7RUFDdEMsWUFBWSxFQUFFLE9BQW9CO0NBU3ZDOztBbUIrQ0gsQW5CdERJLFltQnNEUSxBbkI3RFQsT0FBTyxBQU9MLE1BQU0sRW1Cc0RYLFlBQVksQW5CN0RULE9BQU8sQUFRTCxNQUFNLEVtQnFEWCxZQUFZLEFuQjdEVCxPQUFPLEFBU0wsTUFBTSxFbUJvRFgsWUFBWSxBbkI1RFQsT0FBTyxBQU1MLE1BQU0sRW1Cc0RYLFlBQVksQW5CNURULE9BQU8sQUFPTCxNQUFNLEVtQnFEWCxZQUFZLEFuQjVEVCxPQUFPLEFBUUwsTUFBTTtBQVBULEtBQUssR21CMkRQLFlBQVksQW5CM0RELGdCQUFnQixBQUt0QixNQUFNO0FBTFQsS0FBSyxHbUIyRFAsWUFBWSxBbkIzREQsZ0JBQWdCLEFBTXRCLE1BQU07QUFOVCxLQUFLLEdtQjJEUCxZQUFZLEFuQjNERCxnQkFBZ0IsQUFPdEIsTUFBTSxDQUFDO0VBQ04sS0FBSyxFaEJ3SXNCLElBQUk7RWdCdkkvQixnQkFBZ0IsRUFBRSxPQUF3QjtFQUN0QyxZQUFZLEVBQUUsT0FBb0I7Q0FDdkM7O0FtQmdETCxBbkI3REUsWW1CNkRVLEFuQjdEVCxPQUFPLEVtQjZEVixZQUFZLEFuQjVEVCxPQUFPO0FBQ1IsS0FBSyxHbUIyRFAsWUFBWSxBbkIzREQsZ0JBQWdCLENBZUM7RUFDeEIsZ0JBQWdCLEVBQUUsSUFBSTtDQUN2Qjs7QW1CMENILEFuQnRDSSxZbUJzQ1EsQW5CekNULFNBQVMsQUFHUCxNQUFNLEVtQnNDWCxZQUFZLEFuQnpDVCxTQUFTLEFBSVAsTUFBTSxFbUJxQ1gsWUFBWSxBbkJ6Q1QsU0FBUyxBQUtQLE1BQU0sRW1Cb0NYLFlBQVksQ25CeENULEFBQUEsUUFBQyxBQUFBLENBRUMsTUFBTSxFbUJzQ1gsWUFBWSxDbkJ4Q1QsQUFBQSxRQUFDLEFBQUEsQ0FHQyxNQUFNLEVtQnFDWCxZQUFZLENuQnhDVCxBQUFBLFFBQUMsQUFBQSxDQUlDLE1BQU07QUFIVCxRQUFRLENBQUEsQUFBQSxRQUFDLEFBQUEsRW1CdUNYLFlBQVksQW5CdENQLE1BQU07QUFEVCxRQUFRLENBQUEsQUFBQSxRQUFDLEFBQUEsRW1CdUNYLFlBQVksQW5CckNQLE1BQU07QUFGVCxRQUFRLENBQUEsQUFBQSxRQUFDLEFBQUEsRW1CdUNYLFlBQVksQW5CcENQLE1BQU0sQ0FBQztFQUNOLGdCQUFnQixFaEIzQkUsT0FBTztFZ0I0QnJCLFlBQVksRWhCeUhXLE9BQTJCO0NnQnhIdkQ7O0FtQmlDTCxBbkI5QkUsWW1COEJVLENuQjlCVixNQUFNLENBQUM7RUFDTCxLQUFLLEVoQmpDZSxPQUFPO0VnQmtDM0IsZ0JBQWdCLEVoQmlIYSxJQUFJO0NnQmhIbEM7O0FtQitCSCxBQUFBLFdBQVcsQ0FBQztFbkJoRlYsS0FBSyxFaEJxSzBCLElBQUk7RWdCcEtuQyxnQkFBZ0IsRWhCY00sT0FBTztFZ0JiN0IsWUFBWSxFaEJxS21CLE9BQTBCO0NtQ3JGMUQ7O0FBRkQsQW5CNUVFLFdtQjRFUyxBbkI1RVIsTUFBTSxFbUI0RVQsV0FBVyxBbkIzRVIsTUFBTSxDQUFDO0VBQ04sS0FBSyxFaEIrSndCLElBQUk7RWdCOUpqQyxnQkFBZ0IsRUFBRSxPQUF3QjtFQUN0QyxZQUFZLEVBQUUsT0FBb0I7Q0FDdkM7O0FtQnVFSCxBbkJ0RUUsV21Cc0VTLEFuQnRFUixNQUFNLENBQUM7RUFDTixLQUFLLEVoQjBKd0IsSUFBSTtFZ0J6SmpDLGdCQUFnQixFQUFFLE9BQXdCO0VBQ3RDLFlBQVksRUFBRSxPQUFvQjtDQUN2Qzs7QW1Ca0VILEFuQmpFRSxXbUJpRVMsQW5CakVSLE9BQU8sRW1CaUVWLFdBQVcsQW5CaEVSLE9BQU87QUFDUixLQUFLLEdtQitEUCxXQUFXLEFuQi9EQSxnQkFBZ0IsQ0FBQztFQUN4QixLQUFLLEVoQm1Kd0IsSUFBSTtFZ0JsSmpDLGdCQUFnQixFQUFFLE9BQXdCO0VBQ3RDLFlBQVksRUFBRSxPQUFvQjtDQVN2Qzs7QW1CbURILEFuQjFESSxXbUIwRE8sQW5CakVSLE9BQU8sQUFPTCxNQUFNLEVtQjBEWCxXQUFXLEFuQmpFUixPQUFPLEFBUUwsTUFBTSxFbUJ5RFgsV0FBVyxBbkJqRVIsT0FBTyxBQVNMLE1BQU0sRW1Cd0RYLFdBQVcsQW5CaEVSLE9BQU8sQUFNTCxNQUFNLEVtQjBEWCxXQUFXLEFuQmhFUixPQUFPLEFBT0wsTUFBTSxFbUJ5RFgsV0FBVyxBbkJoRVIsT0FBTyxBQVFMLE1BQU07QUFQVCxLQUFLLEdtQitEUCxXQUFXLEFuQi9EQSxnQkFBZ0IsQUFLdEIsTUFBTTtBQUxULEtBQUssR21CK0RQLFdBQVcsQW5CL0RBLGdCQUFnQixBQU10QixNQUFNO0FBTlQsS0FBSyxHbUIrRFAsV0FBVyxBbkIvREEsZ0JBQWdCLEFBT3RCLE1BQU0sQ0FBQztFQUNOLEtBQUssRWhCNElzQixJQUFJO0VnQjNJL0IsZ0JBQWdCLEVBQUUsT0FBd0I7RUFDdEMsWUFBWSxFQUFFLE9BQW9CO0NBQ3ZDOztBbUJvREwsQW5CakVFLFdtQmlFUyxBbkJqRVIsT0FBTyxFbUJpRVYsV0FBVyxBbkJoRVIsT0FBTztBQUNSLEtBQUssR21CK0RQLFdBQVcsQW5CL0RBLGdCQUFnQixDQWVDO0VBQ3hCLGdCQUFnQixFQUFFLElBQUk7Q0FDdkI7O0FtQjhDSCxBbkIxQ0ksV21CMENPLEFuQjdDUixTQUFTLEFBR1AsTUFBTSxFbUIwQ1gsV0FBVyxBbkI3Q1IsU0FBUyxBQUlQLE1BQU0sRW1CeUNYLFdBQVcsQW5CN0NSLFNBQVMsQUFLUCxNQUFNLEVtQndDWCxXQUFXLENuQjVDUixBQUFBLFFBQUMsQUFBQSxDQUVDLE1BQU0sRW1CMENYLFdBQVcsQ25CNUNSLEFBQUEsUUFBQyxBQUFBLENBR0MsTUFBTSxFbUJ5Q1gsV0FBVyxDbkI1Q1IsQUFBQSxRQUFDLEFBQUEsQ0FJQyxNQUFNO0FBSFQsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBLEVtQjJDWCxXQUFXLEFuQjFDTixNQUFNO0FBRFQsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBLEVtQjJDWCxXQUFXLEFuQnpDTixNQUFNO0FBRlQsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBLEVtQjJDWCxXQUFXLEFuQnhDTixNQUFNLENBQUM7RUFDTixnQkFBZ0IsRWhCMUJFLE9BQU87RWdCMkJyQixZQUFZLEVoQjZIVyxPQUEwQjtDZ0I1SHREOztBbUJxQ0wsQW5CbENFLFdtQmtDUyxDbkJsQ1QsTUFBTSxDQUFDO0VBQ0wsS0FBSyxFaEJoQ2UsT0FBTztFZ0JpQzNCLGdCQUFnQixFaEJxSGEsSUFBSTtDZ0JwSGxDOztBbUJ3Q0gsQUFBQSxTQUFTLENBQUM7RUFDUixLQUFLLEVuQy9FaUIsT0FBcUI7RW1DZ0YzQyxXQUFXLEVBQUUsTUFBTTtFQUNuQixhQUFhLEVBQUUsQ0FBQztDQThCakI7O0FBakNELEFBS0UsU0FMTyxFQUFULFNBQVMsQUFNTixPQUFPLEVBTlYsU0FBUyxBQU9OLE9BQU8sRUFQVixTQUFTLENBUU4sQUFBQSxRQUFDLEFBQUE7QUFDRixRQUFRLENBQUEsQUFBQSxRQUFDLEFBQUEsRUFUWCxTQUFTLENBU2M7RUFDbkIsZ0JBQWdCLEVBQUUsV0FBVztFckJyQy9CLGtCQUFrQixFcUJzQ0ksSUFBSTtFckJyQ2xCLFVBQVUsRXFCcUNJLElBQUk7Q0FDekI7O0FBWkgsQUFhRSxTQWJPLEVBQVQsU0FBUyxBQWNOLE1BQU0sRUFkVCxTQUFTLEFBZU4sTUFBTSxFQWZULFNBQVMsQUFnQk4sT0FBTyxDQUFDO0VBQ1AsWUFBWSxFQUFFLFdBQVc7Q0FDMUI7O0FBbEJILEFBbUJFLFNBbkJPLEFBbUJOLE1BQU0sRUFuQlQsU0FBUyxBQW9CTixNQUFNLENBQUM7RUFDTixLQUFLLEVuQ2hGZSxPQUF3QjtFbUNpRjVDLGVBQWUsRW5DL0VLLFNBQVM7RW1DZ0Y3QixnQkFBZ0IsRUFBRSxXQUFXO0NBQzlCOztBQXhCSCxBQTJCSSxTQTNCSyxDQXlCTixBQUFBLFFBQUMsQUFBQSxDQUVDLE1BQU0sRUEzQlgsU0FBUyxDQXlCTixBQUFBLFFBQUMsQUFBQSxDQUdDLE1BQU07QUFGVCxRQUFRLENBQUEsQUFBQSxRQUFDLEFBQUEsRUExQlgsU0FBUyxBQTJCSixNQUFNO0FBRFQsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBLEVBMUJYLFNBQVMsQUE0QkosTUFBTSxDQUFDO0VBQ04sS0FBSyxFbkM5R2MsT0FBMEI7RW1DK0c3QyxlQUFlLEVBQUUsSUFBSTtDQUN0Qjs7QUFRTCxBQUFBLE9BQU8sRUVyQ1AsYUFBYSxHQUFHLElBQUksQ0ZxQ1o7RW5CMUVOLE9BQU8sRWhCcUNtQixJQUFJLENBQ0osSUFBSTtFZ0JyQzlCLFNBQVMsRWhCVGUsSUFBOEI7RWdCVXRELFdBQVcsRWhCNENlLE9BQVM7RWdCM0NuQyxhQUFhLEVoQitDYSxHQUFHO0NtQzJCOUI7O0FBQ0QsQUFBQSxPQUFPLEVFMUNQLGFBQWEsR0FBRyxJQUFJLENGMENaO0VuQjlFTixPQUFPLEVoQndDbUIsR0FBRyxDQUNILElBQUk7RWdCeEM5QixTQUFTLEVoQlJlLElBQThCO0VnQlN0RCxXQUFXLEVoQjZDZSxHQUFHO0VnQjVDN0IsYUFBYSxFaEJnRGEsR0FBRztDbUM4QjlCOztBQUNELEFBQUEsT0FBTyxFRS9DUCxhQUFhLEdBQUcsSUFBSSxDRitDWjtFbkJsRk4sT0FBTyxFaEIyQ21CLEdBQUcsQ0FDSCxHQUFHO0VnQjNDN0IsU0FBUyxFaEJSZSxJQUE4QjtFZ0JTdEQsV0FBVyxFaEI2Q2UsR0FBRztFZ0I1QzdCLGFBQWEsRWhCZ0RhLEdBQUc7Q21DaUM5Qjs7QUFNRCxBQUFBLFVBQVUsQ0FBQztFQUNULE9BQU8sRUFBRSxLQUFLO0VBQ2QsS0FBSyxFQUFFLElBQUk7Q0FDWjs7QUFHRCxBQUFBLFVBQVUsR0FBRyxVQUFVLENBQUM7RUFDdEIsVUFBVSxFQUFFLEdBQUc7Q0FDaEI7O0FBR0QsQUFHRSxLQUhHLENBQUEsQUFBQSxJQUFDLENBQUssUUFBUSxBQUFiLENBR0gsVUFBVTtBQUZiLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxPQUFPLEFBQVosQ0FFSCxVQUFVO0FBRGIsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLFFBQVEsQUFBYixDQUNILFVBQVUsQ0FBQztFQUNWLEtBQUssRUFBRSxJQUFJO0NBQ1o7O0FDaEtILEFBQUEsTUFBTSxDQUFDO0VBQ0wsT0FBTyxFQUFFLFlBQVk7RUFDckIsS0FBSyxFQUFFLENBQUM7RUFDUixNQUFNLEVBQUUsQ0FBQztFQUNULFdBQVcsRUFBRSxHQUFHO0VBQ2hCLGNBQWMsRUFBRSxNQUFNO0VBQ3RCLFVBQVUsRXBDMkdnQixHQUFHLENvQzNHRyxNQUFNO0VBQ3RDLFVBQVUsRXBDMEdnQixHQUFHLENvQzFHRyxLQUFLLENBQUMsRUFBRTtFQUN4QyxZQUFZLEVwQ3lHYyxHQUFHLENvQ3pHRyxLQUFLLENBQUMsV0FBVztFQUNqRCxXQUFXLEVwQ3dHZSxHQUFHLENvQ3hHRyxLQUFLLENBQUMsV0FBVztDQUNsRDs7QUFHRCxBQUFBLE9BQU87QUFDUCxTQUFTLENBQUM7RUFDUixRQUFRLEVBQUUsUUFBUTtDQUNuQjs7QUFHRCxBQUFBLGdCQUFnQixBQUFBLE1BQU0sQ0FBQztFQUNyQixPQUFPLEVBQUUsQ0FBQztDQUNYOztBQUdELEFBQUEsY0FBYyxDQUFDO0VBQ2IsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLElBQUk7RUFDVCxJQUFJLEVBQUUsQ0FBQztFQUNQLE9BQU8sRXBDbVBrQixJQUFJO0VvQ2xQN0IsT0FBTyxFQUFFLElBQUk7RUFDYixLQUFLLEVBQUUsSUFBSTtFQUNYLFNBQVMsRUFBRSxLQUFLO0VBQ2hCLE9BQU8sRUFBRSxLQUFLO0VBQ2QsTUFBTSxFQUFFLE9BQU87RUFDZixVQUFVLEVBQUUsSUFBSTtFQUNoQixTQUFTLEVwQ1VlLElBQUk7RW9DVDVCLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLGdCQUFnQixFcENvTWUsSUFBSTtFb0NuTW5DLE1BQU0sRUFBRSxHQUFHLENBQUMsS0FBSyxDcEN1TWMsSUFBSTtFb0N0TW5DLE1BQU0sRUFBRSxHQUFHLENBQUMsS0FBSyxDcENvTWMsbUJBQWU7RW9Dbk05QyxhQUFhLEVwQytEYSxHQUFHO0VjekM3QixrQkFBa0IsRXNCckJFLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLG9CQUFnQjtFdEJzQnZDLFVBQVUsRXNCdEJFLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLG9CQUFnQjtFQUMvQyxlQUFlLEVBQUUsV0FBVztDQXlCN0I7O0FBM0NELEFBdUJFLGNBdkJZLEFBdUJYLFdBQVcsQ0FBQztFQUNYLEtBQUssRUFBRSxDQUFDO0VBQ1IsSUFBSSxFQUFFLElBQUk7Q0FDWDs7QUExQkgsQUE2QkUsY0E3QlksQ0E2QlosUUFBUSxDQUFDO0VoQnREVCxNQUFNLEVBQUUsR0FBRztFQUNYLE1BQU0sRUFBRSxHQUFpQyxDQUFDLENBQUM7RUFDM0MsUUFBUSxFQUFFLE1BQU07RUFDaEIsZ0JBQWdCLEVwQjZPZSxPQUFPO0NvQ3hMckM7O0FBL0JILEFBa0NFLGNBbENZLEdBa0NWLEVBQUUsR0FBRyxDQUFDLENBQUM7RUFDUCxPQUFPLEVBQUUsS0FBSztFQUNkLE9BQU8sRUFBRSxRQUFRO0VBQ2pCLEtBQUssRUFBRSxJQUFJO0VBQ1gsV0FBVyxFQUFFLE1BQU07RUFDbkIsV0FBVyxFcENOVyxPQUFXO0VvQ09qQyxLQUFLLEVwQzFEZ0IsT0FBd0I7RW9DMkQ3QyxXQUFXLEVBQUUsTUFBTTtDQUNwQjs7QUFJSCxBQUNFLGNBRFksR0FBRyxFQUFFLEdBQUcsQ0FBQyxBQUNwQixNQUFNLEVBRFQsY0FBYyxHQUFHLEVBQUUsR0FBRyxDQUFDLEFBRXBCLE1BQU0sQ0FBQztFQUNOLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLEtBQUssRXBDMEt3QixPQUFzQjtFb0N6S25ELGdCQUFnQixFcEMyS2EsT0FBTztDb0MxS3JDOztBQUlILEFBQ0UsY0FEWSxHQUFHLE9BQU8sR0FBRyxDQUFDLEVBQTVCLGNBQWMsR0FBRyxPQUFPLEdBQUcsQ0FBQyxBQUV6QixNQUFNLEVBRlQsY0FBYyxHQUFHLE9BQU8sR0FBRyxDQUFDLEFBR3pCLE1BQU0sQ0FBQztFQUNOLEtBQUssRXBDd0JtQixJQUFJO0VvQ3ZCNUIsZUFBZSxFQUFFLElBQUk7RUFDckIsT0FBTyxFQUFFLENBQUM7RUFDVixnQkFBZ0IsRXBDNUVJLE9BQXFCO0NvQzZFMUM7O0FBT0gsQUFDRSxjQURZLEdBQUcsU0FBUyxHQUFHLENBQUMsRUFBOUIsY0FBYyxHQUFHLFNBQVMsR0FBRyxDQUFDLEFBRTNCLE1BQU0sRUFGVCxjQUFjLEdBQUcsU0FBUyxHQUFHLENBQUMsQUFHM0IsTUFBTSxDQUFDO0VBQ04sS0FBSyxFcEMzRmdCLE9BQTBCO0NvQzRGaEQ7O0FBTEgsQUFRRSxjQVJZLEdBQUcsU0FBUyxHQUFHLENBQUMsQUFRM0IsTUFBTSxFQVJULGNBQWMsR0FBRyxTQUFTLEdBQUcsQ0FBQyxBQVMzQixNQUFNLENBQUM7RUFDTixlQUFlLEVBQUUsSUFBSTtFQUNyQixnQkFBZ0IsRUFBRSxXQUFXO0VBQzdCLGdCQUFnQixFQUFFLElBQUk7RTlCM0d4QixNQUFNLEVBQUUsMkRBQTJEO0U4QjZHakUsTUFBTSxFcENvSHVCLFdBQVc7Q29Dbkh6Qzs7QUFJSCxBQUVFLEtBRkcsR0FFRCxjQUFjLENBQUM7RUFDZixPQUFPLEVBQUUsS0FBSztDQUNmOztBQUpILEFBT0UsS0FQRyxHQU9ELENBQUMsQ0FBQztFQUNGLE9BQU8sRUFBRSxDQUFDO0NBQ1g7O0FBT0gsQUFBQSxvQkFBb0IsQ0FBQztFQUNuQixJQUFJLEVBQUUsSUFBSTtFQUNWLEtBQUssRUFBRSxDQUFDO0NBQ1Q7O0FBT0QsQUFBQSxtQkFBbUIsQ0FBQztFQUNsQixJQUFJLEVBQUUsQ0FBQztFQUNQLEtBQUssRUFBRSxJQUFJO0NBQ1o7O0FBR0QsQUFBQSxnQkFBZ0IsQ0FBQztFQUNmLE9BQU8sRUFBRSxLQUFLO0VBQ2QsT0FBTyxFQUFFLFFBQVE7RUFDakIsU0FBUyxFcEN0R2UsSUFBOEI7RW9DdUd0RCxXQUFXLEVwQzdGYSxPQUFXO0VvQzhGbkMsS0FBSyxFcEMvSWtCLE9BQTBCO0VvQ2dKakQsV0FBVyxFQUFFLE1BQU07Q0FDcEI7O0FBR0QsQUFBQSxrQkFBa0IsQ0FBQztFQUNqQixRQUFRLEVBQUUsS0FBSztFQUNmLElBQUksRUFBRSxDQUFDO0VBQ1AsS0FBSyxFQUFFLENBQUM7RUFDUixNQUFNLEVBQUUsQ0FBQztFQUNULEdBQUcsRUFBRSxDQUFDO0VBQ04sT0FBTyxFcEM2R2tCLEdBQUk7Q29DNUc5Qjs7QUFHRCxBQUFBLFdBQVcsR0FBRyxjQUFjLENBQUM7RUFDM0IsS0FBSyxFQUFFLENBQUM7RUFDUixJQUFJLEVBQUUsSUFBSTtDQUNYOztBQU9ELEFBR0UsT0FISyxDQUdMLE1BQU07QUFGUixvQkFBb0IsQ0FBQyxTQUFTLENBRTVCLE1BQU0sQ0FBQztFQUNMLFVBQVUsRUFBRSxDQUFDO0VBQ2IsYUFBYSxFcENwRVcsR0FBRyxDb0NvRU0sTUFBTTtFQUN2QyxhQUFhLEVwQ3JFVyxHQUFHLENvQ3FFTSxLQUFLLENBQUMsRUFBRTtFQUN6QyxPQUFPLEVBQUUsRUFBRTtDQUNaOztBQVJILEFBVUUsT0FWSyxDQVVMLGNBQWM7QUFUaEIsb0JBQW9CLENBQUMsU0FBUyxDQVM1QixjQUFjLENBQUM7RUFDYixHQUFHLEVBQUUsSUFBSTtFQUNULE1BQU0sRUFBRSxJQUFJO0VBQ1osYUFBYSxFQUFFLEdBQUc7Q0FDbkI7O0FBUUgsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBQ3RCLEFBQ0UsYUFEVyxDQUNYLGNBQWMsQ0FBQztJQUNiLEtBQUssRUFBRSxDQUFDO0lBQUUsSUFBSSxFQUFFLElBQUk7R0FDckI7RUFISCxBQU1FLGFBTlcsQ0FNWCxtQkFBbUIsQ0FBQztJQUNsQixJQUFJLEVBQUUsQ0FBQztJQUFFLEtBQUssRUFBRSxJQUFJO0dBQ3JCOzs7QUNoTkwsQUFBQSxVQUFVO0FBQ1YsbUJBQW1CLENBQUM7RUFDbEIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLFlBQVk7RUFDckIsY0FBYyxFQUFFLE1BQU07Q0FZdkI7O0FBaEJELEFBS0UsVUFMUSxHQUtOLElBQUk7QUFKUixtQkFBbUIsR0FJZixJQUFJLENBQUM7RUFDTCxRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsSUFBSTtDQVFaOztBQWZILEFBU0ksVUFUTSxHQUtOLElBQUksQUFJSCxNQUFNLEVBVFgsVUFBVSxHQUtOLElBQUksQUFLSCxNQUFNLEVBVlgsVUFBVSxHQUtOLElBQUksQUFNSCxPQUFPLEVBWFosVUFBVSxHQUtOLElBQUksQUFPSCxPQUFPO0FBWFosbUJBQW1CLEdBSWYsSUFBSSxBQUlILE1BQU07QUFSWCxtQkFBbUIsR0FJZixJQUFJLEFBS0gsTUFBTTtBQVRYLG1CQUFtQixHQUlmLElBQUksQUFNSCxPQUFPO0FBVlosbUJBQW1CLEdBSWYsSUFBSSxBQU9ILE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBRSxDQUFDO0NBQ1g7O0FBS0wsQUFDRSxVQURRLENBQ1IsSUFBSSxHQUFHLElBQUk7QUFEYixVQUFVLENBRVIsSUFBSSxHQUFHLFVBQVU7QUFGbkIsVUFBVSxDQUdSLFVBQVUsR0FBRyxJQUFJO0FBSG5CLFVBQVUsQ0FJUixVQUFVLEdBQUcsVUFBVSxDQUFDO0VBQ3RCLFdBQVcsRUFBRSxJQUFJO0NBQ2xCOztBQUlILEFBQUEsWUFBWSxDQUFDO0VBQ1gsV0FBVyxFQUFFLElBQUk7Q0FhbEI7O0FBZEQsQVZyQkUsWVVxQlUsQVZyQlQsT0FBTyxFVXFCVixZQUFZLEFWcEJULE1BQU0sQ0FBQztFQUNOLE9BQU8sRUFBRSxHQUFHO0VBQ1osT0FBTyxFQUFFLEtBQUs7Q0FDZjs7QVVpQkgsQVZoQkUsWVVnQlUsQVZoQlQsTUFBTSxDQUFDO0VBQ04sS0FBSyxFQUFFLElBQUk7Q0FDWjs7QVVjSCxBQUlFLFlBSlUsQ0FJVixJQUFJO0FBSk4sWUFBWSxDQUtWLFVBQVU7QUFMWixZQUFZLENBTVYsWUFBWSxDQUFDO0VBQ1gsS0FBSyxFQUFFLElBQUk7Q0FDWjs7QUFSSCxBQVNFLFlBVFUsR0FTUixJQUFJO0FBVFIsWUFBWSxHQVVSLFVBQVU7QUFWZCxZQUFZLEdBV1IsWUFBWSxDQUFDO0VBQ2IsV0FBVyxFQUFFLEdBQUc7Q0FDakI7O0FBR0gsQUFBQSxVQUFVLEdBQUcsSUFBSSxBQUFBLElBQUssQ0FBQSxZQUFZLENBQUMsSUFBSyxDQUFBLFdBQVcsQ0FBQyxJQUFLLENBQUEsZ0JBQWdCLEVBQUU7RUFDekUsYUFBYSxFQUFFLENBQUM7Q0FDakI7O0FBR0QsQUFBQSxVQUFVLEdBQUcsSUFBSSxBQUFBLFlBQVksQ0FBQztFQUM1QixXQUFXLEVBQUUsQ0FBQztDQUlmOztBQUxELEFBRUUsVUFGUSxHQUFHLElBQUksQUFBQSxZQUFZLEFBRTFCLElBQUssQ0FQZ0MsV0FBVyxDQU8vQixJQUFLLENBUGdDLGdCQUFnQixFQU85QjtFWmxEekMsMEJBQTBCLEVZbURLLENBQUM7RVpsRDdCLHVCQUF1QixFWWtESyxDQUFDO0NBQy9COztBQUdILEFBQUEsVUFBVSxHQUFHLElBQUksQUFBQSxXQUFXLEFBQUEsSUFBSyxDQVpYLFlBQVk7QUFhbEMsVUFBVSxHQUFHLGdCQUFnQixBQUFBLElBQUssQ0FiWixZQUFZLEVBYWM7RVpoRDlDLHlCQUF5QixFWWlERyxDQUFDO0VaaEQxQixzQkFBc0IsRVlnREcsQ0FBQztDQUM5Qjs7QUFHRCxBQUFBLFVBQVUsR0FBRyxVQUFVLENBQUM7RUFDdEIsS0FBSyxFQUFFLElBQUk7Q0FDWjs7QUFDRCxBQUFBLFVBQVUsR0FBRyxVQUFVLEFBQUEsSUFBSyxDQXJCTixZQUFZLENBcUJPLElBQUssQ0FyQk4sV0FBVyxJQXFCVSxJQUFJLENBQUM7RUFDaEUsYUFBYSxFQUFFLENBQUM7Q0FDakI7O0FBQ0QsQUFDRSxVQURRLEdBQUcsVUFBVSxBQUFBLFlBQVksQUFBQSxJQUFLLENBeEJBLFdBQVcsSUF5Qi9DLElBQUksQUFBQSxXQUFXO0FBRG5CLFVBQVUsR0FBRyxVQUFVLEFBQUEsWUFBWSxBQUFBLElBQUssQ0F4QkEsV0FBVyxJQTBCL0MsZ0JBQWdCLENBQUM7RVpyRW5CLDBCQUEwQixFWXNFSyxDQUFDO0VackU3Qix1QkFBdUIsRVlxRUssQ0FBQztDQUMvQjs7QUFFSCxBQUFBLFVBQVUsR0FBRyxVQUFVLEFBQUEsV0FBVyxBQUFBLElBQUssQ0E5QmpCLFlBQVksSUE4QnFCLElBQUksQUFBQSxZQUFZLENBQUM7RVpqRXRFLHlCQUF5QixFWWtFRyxDQUFDO0VaakUxQixzQkFBc0IsRVlpRUcsQ0FBQztDQUM5Qjs7QUFHRCxBQUFBLFVBQVUsQ0FBQyxnQkFBZ0IsQUFBQSxPQUFPO0FBQ2xDLFVBQVUsQUFBQSxLQUFLLENBQUMsZ0JBQWdCLENBQUM7RUFDL0IsT0FBTyxFQUFFLENBQUM7Q0FDWDs7QUFnQkQsQUFBQSxVQUFVLEdBQUcsSUFBSSxHQUFHLGdCQUFnQixDQUFDO0VBQ25DLFlBQVksRUFBRSxHQUFHO0VBQ2pCLGFBQWEsRUFBRSxHQUFHO0NBQ25COztBQUNELEFBQUEsVUFBVSxHQUFHLE9BQU8sR0FBRyxnQkFBZ0IsRUFYdkMsYUFBYSxBQVdiLFVBQVUsR0FYTSxJQUFJLEdBV0csZ0JBQWdCLENBQUM7RUFDdEMsWUFBWSxFQUFFLElBQUk7RUFDbEIsYUFBYSxFQUFFLElBQUk7Q0FDcEI7O0FBSUQsQUFBQSxVQUFVLEFBQUEsS0FBSyxDQUFDLGdCQUFnQixDQUFDO0V2Qi9DL0Isa0JBQWtCLEV1QmdERSxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsb0JBQWdCO0V2Qi9DNUMsVUFBVSxFdUIrQ0UsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLG9CQUFnQjtDQU1yRDs7QUFQRCxBQUlFLFVBSlEsQUFBQSxLQUFLLENBQUMsZ0JBQWdCLEFBSTdCLFNBQVMsQ0FBQztFdkJuRFgsa0JBQWtCLEV1Qm9ESSxJQUFJO0V2Qm5EbEIsVUFBVSxFdUJtREksSUFBSTtDQUN6Qjs7QUFLSCxBQUFBLElBQUksQ0FBQyxNQUFNLENBQUM7RUFDVixXQUFXLEVBQUUsQ0FBQztDQUNmOztBQUVELEFBQUEsT0FBTyxDQUFDLE1BQU0sRUFqQ2QsYUFBYSxHQUFHLElBQUksQ0FpQ1osTUFBTSxDQUFDO0VBQ2IsWUFBWSxFckNWYyxHQUFHLENBQUgsR0FBRyxDcUNVdUIsQ0FBQztFQUNyRCxtQkFBbUIsRUFBRSxDQUFDO0NBQ3ZCOztBQUVELEFBQUEsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQXRCLE9BQU8sQ0F0Q1AsYUFBYSxHQUFHLElBQUksQ0FzQ0osTUFBTSxDQUFDO0VBQ3JCLFlBQVksRUFBRSxDQUFDLENyQ2ZXLEdBQUcsQ0FBSCxHQUFHO0NxQ2dCOUI7O0FBTUQsQUFDRSxtQkFEaUIsR0FDZixJQUFJO0FBRFIsbUJBQW1CLEdBRWYsVUFBVTtBQUZkLG1CQUFtQixHQUdmLFVBQVUsR0FBRyxJQUFJLENBQUM7RUFDbEIsT0FBTyxFQUFFLEtBQUs7RUFDZCxLQUFLLEVBQUUsSUFBSTtFQUNYLEtBQUssRUFBRSxJQUFJO0VBQ1gsU0FBUyxFQUFFLElBQUk7Q0FDaEI7O0FBUkgsQVZsSUUsbUJVa0lpQixHQVdmLFVBQVUsQVY3SVgsT0FBTyxFVWtJVixtQkFBbUIsR0FXZixVQUFVLEFWNUlYLE1BQU0sQ0FBQztFQUNOLE9BQU8sRUFBRSxHQUFHO0VBQ1osT0FBTyxFQUFFLEtBQUs7Q0FDZjs7QVU4SEgsQVY3SEUsbUJVNkhpQixHQVdmLFVBQVUsQVZ4SVgsTUFBTSxDQUFDO0VBQ04sS0FBSyxFQUFFLElBQUk7Q0FDWjs7QVUySEgsQUFhSSxtQkFiZSxHQVdmLFVBQVUsR0FFUixJQUFJLENBQUM7RUFDTCxLQUFLLEVBQUUsSUFBSTtDQUNaOztBQWZMLEFBa0JFLG1CQWxCaUIsR0FrQmYsSUFBSSxHQUFHLElBQUk7QUFsQmYsbUJBQW1CLEdBbUJmLElBQUksR0FBRyxVQUFVO0FBbkJyQixtQkFBbUIsR0FvQmYsVUFBVSxHQUFHLElBQUk7QUFwQnJCLG1CQUFtQixHQXFCZixVQUFVLEdBQUcsVUFBVSxDQUFDO0VBQ3hCLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLFdBQVcsRUFBRSxDQUFDO0NBQ2Y7O0FBR0gsQUFDRSxtQkFEaUIsR0FBRyxJQUFJLEFBQ3ZCLElBQUssQ0F6SGMsWUFBWSxDQXlIYixJQUFLLENBekhjLFdBQVcsRUF5SFo7RUFDbkMsYUFBYSxFQUFFLENBQUM7Q0FDakI7O0FBSEgsQUFJRSxtQkFKaUIsR0FBRyxJQUFJLEFBSXZCLFlBQVksQUFBQSxJQUFLLENBNUhvQixXQUFXLEVBNEhsQjtFWjNLL0IsdUJBQXVCLEV6QjBHRyxHQUFHO0V5QnpHNUIsc0JBQXNCLEV6QnlHRyxHQUFHO0V5QmxHN0IsMEJBQTBCLEVZcUtNLENBQUM7RVpwS2hDLHlCQUF5QixFWW9LTSxDQUFDO0NBQ2hDOztBQVBILEFBUUUsbUJBUmlCLEdBQUcsSUFBSSxBQVF2QixXQUFXLEFBQUEsSUFBSyxDQWhJRyxZQUFZLEVBZ0lEO0VaL0svQix1QkFBdUIsRVlnTE0sQ0FBQztFWi9LN0Isc0JBQXNCLEVZK0tNLENBQUM7RVp4SzlCLDBCQUEwQixFekJrR0EsR0FBRztFeUJqRzVCLHlCQUF5QixFekJpR0EsR0FBRztDcUN3RTVCOztBQUVILEFBQUEsbUJBQW1CLEdBQUcsVUFBVSxBQUFBLElBQUssQ0FySWYsWUFBWSxDQXFJZ0IsSUFBSyxDQXJJZixXQUFXLElBcUltQixJQUFJLENBQUM7RUFDekUsYUFBYSxFQUFFLENBQUM7Q0FDakI7O0FBQ0QsQUFDRSxtQkFEaUIsR0FBRyxVQUFVLEFBQUEsWUFBWSxBQUFBLElBQUssQ0F4SVQsV0FBVyxJQXlJL0MsSUFBSSxBQUFBLFdBQVc7QUFEbkIsbUJBQW1CLEdBQUcsVUFBVSxBQUFBLFlBQVksQUFBQSxJQUFLLENBeElULFdBQVcsSUEwSS9DLGdCQUFnQixDQUFDO0VaakxuQiwwQkFBMEIsRVlrTE0sQ0FBQztFWmpMaEMseUJBQXlCLEVZaUxNLENBQUM7Q0FDaEM7O0FBRUgsQUFBQSxtQkFBbUIsR0FBRyxVQUFVLEFBQUEsV0FBVyxBQUFBLElBQUssQ0E5STFCLFlBQVksSUE4SThCLElBQUksQUFBQSxZQUFZLENBQUM7RVo3TC9FLHVCQUF1QixFWThMSSxDQUFDO0VaN0wzQixzQkFBc0IsRVk2TEksQ0FBQztDQUM3Qjs7QUFNRCxBQUFBLG9CQUFvQixDQUFDO0VBQ25CLE9BQU8sRUFBRSxLQUFLO0VBQ2QsS0FBSyxFQUFFLElBQUk7RUFDWCxZQUFZLEVBQUUsS0FBSztFQUNuQixlQUFlLEVBQUUsUUFBUTtDQWMxQjs7QUFsQkQsQUFLRSxvQkFMa0IsR0FLaEIsSUFBSTtBQUxSLG9CQUFvQixHQU1oQixVQUFVLENBQUM7RUFDWCxLQUFLLEVBQUUsSUFBSTtFQUNYLE9BQU8sRUFBRSxVQUFVO0VBQ25CLEtBQUssRUFBRSxFQUFFO0NBQ1Y7O0FBVkgsQUFXRSxvQkFYa0IsR0FXaEIsVUFBVSxDQUFDLElBQUksQ0FBQztFQUNoQixLQUFLLEVBQUUsSUFBSTtDQUNaOztBQWJILEFBZUUsb0JBZmtCLEdBZWhCLFVBQVUsQ0FBQyxjQUFjLENBQUM7RUFDMUIsSUFBSSxFQUFFLElBQUk7Q0FDWDs7Q0FnQkgsQUFBQSxBQUdJLFdBSEgsQ0FBWSxTQUFTLEFBQXJCLElBQ0csSUFBSSxDQUVKLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxPQUFPLEFBQVo7Q0FIVixBQUFBLFdBQUMsQ0FBWSxTQUFTLEFBQXJCLElBQ0csSUFBSSxDQUdKLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxVQUFVLEFBQWY7Q0FKVixBQUFBLFdBQUMsQ0FBWSxTQUFTLEFBQXJCLElBRUcsVUFBVSxHQUFHLElBQUksQ0FDakIsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLE9BQU8sQUFBWjtDQUhWLEFBQUEsV0FBQyxDQUFZLFNBQVMsQUFBckIsSUFFRyxVQUFVLEdBQUcsSUFBSSxDQUVqQixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssVUFBVSxBQUFmLEVBQWlCO0VBQ3JCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLElBQUksRUFBRSxnQkFBYTtFQUNuQixjQUFjLEVBQUUsSUFBSTtDQUNyQjs7QUMzT0wsQUFBQSxZQUFZLENBQUM7RUFDWCxRQUFRLEVBQUUsUUFBUTtFQUNsQixPQUFPLEVBQUUsS0FBSztFQUNkLGVBQWUsRUFBRSxRQUFRO0NBMkIxQjs7QUE5QkQsQUFNRSxZQU5VLENBTVQsQUFBQSxLQUFDLEVBQU8sTUFBTSxBQUFiLEVBQWU7RUFDZixLQUFLLEVBQUUsSUFBSTtFQUNYLFlBQVksRUFBRSxDQUFDO0VBQ2YsYUFBYSxFQUFFLENBQUM7Q0FDakI7O0FBVkgsQUFZRSxZQVpVLENBWVYsYUFBYSxDQUFDO0VBR1osUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLENBQUM7RUFLVixLQUFLLEVBQUUsSUFBSTtFQUVYLEtBQUssRUFBRSxJQUFJO0VBQ1gsYUFBYSxFQUFFLENBQUM7Q0FLakI7O0FBN0JILEFBMEJJLFlBMUJRLENBWVYsYUFBYSxBQWNWLE1BQU0sQ0FBQztFQUNOLE9BQU8sRUFBRSxDQUFDO0NBQ1g7O0FBdUJMLEFBQUEsa0JBQWtCO0FBQ2xCLGdCQUFnQjtBQUNoQixZQUFZLENBQUMsYUFBYSxDQUFDO0VBQ3pCLE9BQU8sRUFBRSxVQUFVO0NBS3BCOztBQVJELEFBS0Usa0JBTGdCLEFBS2YsSUFBSyxDRFpjLFlBQVksQ0NZYixJQUFLLENEWmMsV0FBVztBQ1FuRCxnQkFBZ0IsQUFJYixJQUFLLENEWmMsWUFBWSxDQ1liLElBQUssQ0RaYyxXQUFXO0FDU25ELFlBQVksQ0FBQyxhQUFhLEFBR3ZCLElBQUssQ0RaYyxZQUFZLENDWWIsSUFBSyxDRFpjLFdBQVcsRUNZWjtFQUNuQyxhQUFhLEVBQUUsQ0FBQztDQUNqQjs7QUFHSCxBQUFBLGtCQUFrQjtBQUNsQixnQkFBZ0IsQ0FBQztFQUNmLEtBQUssRUFBRSxFQUFFO0VBQ1QsV0FBVyxFQUFFLE1BQU07RUFDbkIsY0FBYyxFQUFFLE1BQU07Q0FDdkI7O0FBSUQsQUFBQSxrQkFBa0IsQ0FBQztFQUNqQixPQUFPLEV0Q2lCbUIsR0FBRyxDQUNILElBQUk7RXNDakI5QixTQUFTLEV0QzNCZSxJQUFJO0VzQzRCNUIsV0FBVyxFQUFFLE1BQU07RUFDbkIsV0FBVyxFQUFFLENBQUM7RUFDZCxLQUFLLEV0Q3BFa0IsT0FBMEI7RXNDcUVqRCxVQUFVLEVBQUUsTUFBTTtFQUNsQixnQkFBZ0IsRXRDcEVPLE9BQTBCO0VzQ3FFakQsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLEN0QytHYyxJQUFJO0VzQzlHbkMsYUFBYSxFdEN3QmEsR0FBRztDc0NMOUI7O0FBNUJELEFBWUUsa0JBWmdCLEFBWWYsU0FBUztBQXZDWixlQUFlLEdBQUcsa0JBQWtCO0FBQ3BDLGVBQWUsR0FBRyxnQkFBZ0IsR0EwQmxDLGtCQUFrQixBQTFCbUIsSUFBSSxDQXNDNUI7RUFDVCxPQUFPLEV0Q1dpQixHQUFHLENBQ0gsSUFBSTtFc0NYNUIsU0FBUyxFdENyQ2EsSUFBOEI7RXNDc0NwRCxhQUFhLEV0Q29CVyxHQUFHO0NzQ25CNUI7O0FBaEJILEFBaUJFLGtCQWpCZ0IsQUFpQmYsU0FBUztBQWpEWixlQUFlLEdBQUcsa0JBQWtCO0FBQ3BDLGVBQWUsR0FBRyxnQkFBZ0IsR0ErQmxDLGtCQUFrQixBQS9CbUIsSUFBSSxDQWdENUI7RUFDVCxPQUFPLEV0Q0dpQixJQUFJLENBQ0osSUFBSTtFc0NINUIsU0FBUyxFdEMzQ2EsSUFBOEI7RXNDNENwRCxhQUFhLEV0Q2NXLEdBQUc7Q3NDYjVCOztBQXJCSCxBQXdCRSxrQkF4QmdCLENBd0JoQixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssT0FBTyxBQUFaO0FBeEJSLGtCQUFrQixDQXlCaEIsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLFVBQVUsQUFBZixFQUFpQjtFQUNyQixVQUFVLEVBQUUsQ0FBQztDQUNkOztBQUlILEFBQUEsWUFBWSxDQUFDLGFBQWEsQUFBQSxZQUFZO0FBQ3RDLGtCQUFrQixBQUFBLFlBQVk7QUFDOUIsZ0JBQWdCLEFBQUEsWUFBWSxHQUFHLElBQUk7QUFDbkMsZ0JBQWdCLEFBQUEsWUFBWSxHQUFHLFVBQVUsR0FBRyxJQUFJO0FBQ2hELGdCQUFnQixBQUFBLFlBQVksR0FBRyxnQkFBZ0I7QUFDL0MsZ0JBQWdCLEFBQUEsV0FBVyxHQUFHLElBQUksQUFBQSxJQUFLLENEOURDLFdBQVcsQ0M4REEsSUFBSyxDRDlEQyxnQkFBZ0I7QUMrRHpFLGdCQUFnQixBQUFBLFdBQVcsR0FBRyxVQUFVLEFBQUEsSUFBSyxDRC9ETCxXQUFXLElDK0RTLElBQUksQ0FBQztFYjFHL0QsMEJBQTBCLEVhMkdHLENBQUM7RWIxRzNCLHVCQUF1QixFYTBHRyxDQUFDO0NBQy9COztBQUNELEFBQUEsa0JBQWtCLEFBQUEsWUFBWSxDQUFDO0VBQzdCLFlBQVksRUFBRSxDQUFDO0NBQ2hCOztBQUNELEFBQUEsWUFBWSxDQUFDLGFBQWEsQUFBQSxXQUFXO0FBQ3JDLGtCQUFrQixBQUFBLFdBQVc7QUFDN0IsZ0JBQWdCLEFBQUEsV0FBVyxHQUFHLElBQUk7QUFDbEMsZ0JBQWdCLEFBQUEsV0FBVyxHQUFHLFVBQVUsR0FBRyxJQUFJO0FBQy9DLGdCQUFnQixBQUFBLFdBQVcsR0FBRyxnQkFBZ0I7QUFDOUMsZ0JBQWdCLEFBQUEsWUFBWSxHQUFHLElBQUksQUFBQSxJQUFLLENEMUVsQixZQUFZO0FDMkVsQyxnQkFBZ0IsQUFBQSxZQUFZLEdBQUcsVUFBVSxBQUFBLElBQUssQ0QzRXhCLFlBQVksSUMyRTRCLElBQUksQ0FBQztFYjlHakUseUJBQXlCLEVhK0dHLENBQUM7RWI5RzFCLHNCQUFzQixFYThHRyxDQUFDO0NBQzlCOztBQUNELEFBQUEsa0JBQWtCLEFBQUEsV0FBVyxDQUFDO0VBQzVCLFdBQVcsRUFBRSxDQUFDO0NBQ2Y7O0FBSUQsQUFBQSxnQkFBZ0IsQ0FBQztFQUNmLFFBQVEsRUFBRSxRQUFRO0VBR2xCLFNBQVMsRUFBRSxDQUFDO0VBQ1osV0FBVyxFQUFFLE1BQU07Q0ErQnBCOztBQXBDRCxBQVNFLGdCQVRjLEdBU1osSUFBSSxDQUFDO0VBQ0wsUUFBUSxFQUFFLFFBQVE7Q0FVbkI7O0FBcEJILEFBV0ksZ0JBWFksR0FTWixJQUFJLEdBRUYsSUFBSSxDQUFDO0VBQ0wsV0FBVyxFQUFFLElBQUk7Q0FDbEI7O0FBYkwsQUFlSSxnQkFmWSxHQVNaLElBQUksQUFNSCxNQUFNLEVBZlgsZ0JBQWdCLEdBU1osSUFBSSxBQU9ILE1BQU0sRUFoQlgsZ0JBQWdCLEdBU1osSUFBSSxBQVFILE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBRSxDQUFDO0NBQ1g7O0FBbkJMLEFBd0JJLGdCQXhCWSxBQXVCYixZQUFZLEdBQ1QsSUFBSTtBQXhCVixnQkFBZ0IsQUF1QmIsWUFBWSxHQUVULFVBQVUsQ0FBQztFQUNYLFlBQVksRUFBRSxJQUFJO0NBQ25COztBQTNCTCxBQThCSSxnQkE5QlksQUE2QmIsV0FBVyxHQUNSLElBQUk7QUE5QlYsZ0JBQWdCLEFBNkJiLFdBQVcsR0FFUixVQUFVLENBQUM7RUFDWCxPQUFPLEVBQUUsQ0FBQztFQUNWLFdBQVcsRUFBRSxJQUFJO0NBQ2xCOztBQzlKTCxBQUFBLFdBQVcsQ0FBQztFQUNWLFFBQVEsRUFBRSxNQUFNO0NBQ2pCOztBQUdELEFBQUEsTUFBTSxDQUFDO0VBQ0wsT0FBTyxFQUFFLElBQUk7RUFDYixRQUFRLEVBQUUsTUFBTTtFQUNoQixRQUFRLEVBQUUsS0FBSztFQUNmLEdBQUcsRUFBRSxDQUFDO0VBQ04sS0FBSyxFQUFFLENBQUM7RUFDUixNQUFNLEVBQUUsQ0FBQztFQUNULElBQUksRUFBRSxDQUFDO0VBQ1AsT0FBTyxFdkNtUWtCLElBQUk7RXVDbFE3QiwwQkFBMEIsRUFBRSxLQUFLO0VBSWpDLE9BQU8sRUFBRSxDQUFDO0NBUVg7O0FBckJELEFBZ0JFLE1BaEJJLEFBZ0JILEtBQUssQ0FBQyxhQUFhLENBQUM7RXpCMEdyQixpQkFBaUIsRUFBRSxrQkFBaUI7RUFDaEMsYUFBYSxFQUFFLGtCQUFpQjtFQUMvQixZQUFZLEVBQUUsa0JBQWlCO0VBQzVCLFNBQVMsRUFBRSxrQkFBaUI7RUFrRXBDLGtCQUFrQixFQUFFLGlCQUFpQixDeUI3S0wsSUFBSSxDQUFDLFFBQVE7RXpCOEsxQyxlQUFlLEVBQUUsY0FBYyxDeUI5S0YsSUFBSSxDQUFDLFFBQVE7RXpCK0t4QyxhQUFhLEVBQUUsWUFBWSxDeUIvS0EsSUFBSSxDQUFDLFFBQVE7RXpCZ0xyQyxVQUFVLEVBQUUsU0FBUyxDeUJoTEcsSUFBSSxDQUFDLFFBQVE7Q0FDNUM7O0FBbkJILEFBb0JFLE1BcEJJLEFBb0JILEdBQUcsQ0FBQyxhQUFhLENBQUM7RXpCc0duQixpQkFBaUIsRUFBRSxlQUFpQjtFQUNoQyxhQUFhLEVBQUUsZUFBaUI7RUFDL0IsWUFBWSxFQUFFLGVBQWlCO0VBQzVCLFNBQVMsRUFBRSxlQUFpQjtDeUJ6R1k7O0FBRWxELEFBQUEsV0FBVyxDQUFDLE1BQU0sQ0FBQztFQUNqQixVQUFVLEVBQUUsTUFBTTtFQUNsQixVQUFVLEVBQUUsSUFBSTtDQUNqQjs7QUFHRCxBQUFBLGFBQWEsQ0FBQztFQUNaLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7Q0FDYjs7QUFHRCxBQUFBLGNBQWMsQ0FBQztFQUNiLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLGdCQUFnQixFdkN1aUI2QixJQUFJO0V1Q3RpQmpELE1BQU0sRUFBRSxHQUFHLENBQUMsS0FBSyxDdkMwaUI0QixJQUFJO0V1Q3ppQmpELE1BQU0sRUFBRSxHQUFHLENBQUMsS0FBSyxDdkN1aUI0QixrQkFBYztFdUN0aUIzRCxhQUFhLEV2Q3VEYSxHQUFHO0VjMUM3QixrQkFBa0IsRXlCWkUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsa0JBQWM7RXpCYXBDLFVBQVUsRXlCYkUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsa0JBQWM7RUFDNUMsZUFBZSxFQUFFLFdBQVc7RUFFNUIsT0FBTyxFQUFFLENBQUM7Q0FDWDs7QUFHRCxBQUFBLGVBQWUsQ0FBQztFQUNkLFFBQVEsRUFBRSxLQUFLO0VBQ2YsR0FBRyxFQUFFLENBQUM7RUFDTixLQUFLLEVBQUUsQ0FBQztFQUNSLE1BQU0sRUFBRSxDQUFDO0VBQ1QsSUFBSSxFQUFFLENBQUM7RUFDUCxPQUFPLEV2Q29Oa0IsSUFBSTtFdUNuTjdCLGdCQUFnQixFdkM0aEJZLElBQUk7Q3VDeGhCakM7O0FBWEQsQUFTRSxlQVRhLEFBU1osS0FBSyxDQUFDO0VwQ3JFUCxPQUFPLEVvQ3FFbUIsQ0FBQztFcENsRTNCLE1BQU0sRUFBRSxnQkFBMEI7Q29Da0VGOztBQVRsQyxBQVVFLGVBVmEsQUFVWixHQUFHLENBQUM7RXBDdEVMLE9BQU8sRUhpbUJxQixHQUFFO0VHOWxCOUIsTUFBTSxFQUFFLGlCQUEwQjtDb0NtRWtCOztBQUt0RCxBQUFBLGFBQWEsQ0FBQztFQUNaLE9BQU8sRXZDdWdCcUIsSUFBSTtFdUN0Z0JoQyxhQUFhLEVBQUUsR0FBRyxDQUFDLEtBQUssQ3ZDc2hCSSxPQUFPO0N1Q3BoQnBDOztBQUpELEFaakVFLGFZaUVXLEFaakVWLE9BQU8sRVlpRVYsYUFBYSxBWmhFVixNQUFNLENBQUM7RUFDTixPQUFPLEVBQUUsR0FBRztFQUNaLE9BQU8sRUFBRSxLQUFLO0NBQ2Y7O0FZNkRILEFaNURFLGFZNERXLEFaNURWLE1BQU0sQ0FBQztFQUNOLEtBQUssRUFBRSxJQUFJO0NBQ1o7O0FZZ0VILEFBQUEsYUFBYSxDQUFDLE1BQU0sQ0FBQztFQUNuQixVQUFVLEVBQUUsSUFBSTtDQUNqQjs7QUFHRCxBQUFBLFlBQVksQ0FBQztFQUNYLE1BQU0sRUFBRSxDQUFDO0VBQ1QsV0FBVyxFdkM1QmEsT0FBVztDdUM2QnBDOztBQUlELEFBQUEsV0FBVyxDQUFDO0VBQ1YsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFdkNpZnFCLElBQUk7Q3VDaGZqQzs7QUFHRCxBQUFBLGFBQWEsQ0FBQztFQUNaLE9BQU8sRXZDNGVxQixJQUFJO0V1QzNlaEMsVUFBVSxFQUFFLEtBQUs7RUFDakIsVUFBVSxFQUFFLEdBQUcsQ0FBQyxLQUFLLEN2QzZmTyxPQUFPO0N1QzdlcEM7O0FBbkJELEFaekZFLGFZeUZXLEFaekZWLE9BQU8sRVl5RlYsYUFBYSxBWnhGVixNQUFNLENBQUM7RUFDTixPQUFPLEVBQUUsR0FBRztFQUNaLE9BQU8sRUFBRSxLQUFLO0NBQ2Y7O0FZcUZILEFacEZFLGFZb0ZXLEFacEZWLE1BQU0sQ0FBQztFQUNOLEtBQUssRUFBRSxJQUFJO0NBQ1o7O0FZa0ZILEFBT0UsYUFQVyxDQU9YLElBQUksR0FBRyxJQUFJLENBQUM7RUFDVixXQUFXLEVBQUUsR0FBRztFQUNoQixhQUFhLEVBQUUsQ0FBQztDQUNqQjs7QUFWSCxBQVlFLGFBWlcsQ0FZWCxVQUFVLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztFQUNyQixXQUFXLEVBQUUsSUFBSTtDQUNsQjs7QUFkSCxBQWdCRSxhQWhCVyxDQWdCWCxVQUFVLEdBQUcsVUFBVSxDQUFDO0VBQ3RCLFdBQVcsRUFBRSxDQUFDO0NBQ2Y7O0FBSUgsQUFBQSx3QkFBd0IsQ0FBQztFQUN2QixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsT0FBTztFQUNaLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixRQUFRLEVBQUUsTUFBTTtDQUNqQjs7QUFHRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUExRnhCLEFBQUEsYUFBYSxDQTRGRztJQUNaLEtBQUssRXZDbWVxQixLQUFLO0l1Q2xlL0IsTUFBTSxFQUFFLFNBQVM7R0FDbEI7RUF4RkgsQUFBQSxjQUFjLENBeUZHO0l6QnZFZixrQkFBa0IsRXlCd0VJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGtCQUFjO0l6QnZFdkMsVUFBVSxFeUJ1RUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsa0JBQWM7R0FDOUM7RUFHRCxBQUFBLFNBQVMsQ0FBQztJQUFFLEtBQUssRXZDNGRXLEtBQUs7R3VDNWREOzs7QUFHbEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBQ3RCLEFBQUEsU0FBUyxDQUFDO0lBQUUsS0FBSyxFdkNzZFcsS0FBSztHdUN0ZEQ7OztBQzlJbEMsQUFBQSxRQUFRLENBQUM7RUFDUCxRQUFRLEVBQUUsUUFBUTtFQUNsQixPQUFPLEV4QytRa0IsSUFBSTtFd0M5UTdCLE9BQU8sRUFBRSxLQUFLO0U3QlJkLFdBQVcsRVg0Q2EsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxVQUFVO0VXMUN0RSxVQUFVLEVBQUUsTUFBTTtFQUNsQixXQUFXLEVBQUUsTUFBTTtFQUNuQixjQUFjLEVBQUUsTUFBTTtFQUN0QixVQUFVLEVBQUUsSUFBSTtFQUNoQixXQUFXLEVYd0RhLE9BQVc7RVd2RG5DLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLFVBQVUsRUFBRSxLQUFLO0VBQ2pCLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLGNBQWMsRUFBRSxJQUFJO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBQ25CLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFNBQVMsRUFBRSxNQUFNO0U2QkhqQixTQUFTLEV4Q3dDZSxJQUE4QjtFR2xEdEQsT0FBTyxFcUNZVSxDQUFDO0VyQ1RsQixNQUFNLEVBQUUsZ0JBQTBCO0NxQ2dCbkM7O0FBaEJELEFBV0UsUUFYTSxBQVdMLEdBQUcsQ0FBSztFckNkVCxPQUFPLEVIK2dCcUIsR0FBRTtFRzVnQjlCLE1BQU0sRUFBRSxpQkFBMEI7Q3FDV2U7O0FBWG5ELEFBWUUsUUFaTSxBQVlMLElBQUksQ0FBSTtFQUFFLFVBQVUsRUFBRyxJQUFJO0VBQUUsT0FBTyxFeENtZ0JULEdBQUcsQ3dDbmdCNkIsQ0FBQztDQUFJOztBQVpuRSxBQWFFLFFBYk0sQUFhTCxNQUFNLENBQUU7RUFBRSxXQUFXLEVBQUcsR0FBRztFQUFFLE9BQU8sRUFBRSxDQUFDLEN4Q2tnQlosR0FBRztDd0NsZ0JrQzs7QUFibkUsQUFjRSxRQWRNLEFBY0wsT0FBTyxDQUFDO0VBQUUsVUFBVSxFQUFJLEdBQUc7RUFBRSxPQUFPLEV4Q2lnQlQsR0FBRyxDd0NqZ0I2QixDQUFDO0NBQUk7O0FBZG5FLEFBZUUsUUFmTSxBQWVMLEtBQUssQ0FBRztFQUFFLFdBQVcsRUFBRSxJQUFJO0VBQUUsT0FBTyxFQUFFLENBQUMsQ3hDZ2dCWixHQUFHO0N3Q2hnQmtDOztBQUluRSxBQUFBLGNBQWMsQ0FBQztFQUNiLFNBQVMsRXhDbWZtQixLQUFLO0V3Q2xmakMsT0FBTyxFQUFFLE9BQU87RUFDaEIsS0FBSyxFeENtZnVCLElBQUk7RXdDbGZoQyxVQUFVLEVBQUUsTUFBTTtFQUNsQixnQkFBZ0IsRXhDbWZZLElBQUk7RXdDbGZoQyxhQUFhLEV4QzhFYSxHQUFHO0N3QzdFOUI7O0FBR0QsQUFBQSxjQUFjLENBQUM7RUFDYixRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsQ0FBQztFQUNSLE1BQU0sRUFBRSxDQUFDO0VBQ1QsWUFBWSxFQUFFLFdBQVc7RUFDekIsWUFBWSxFQUFFLEtBQUs7Q0FDcEI7O0FBRUQsQUFDRSxRQURNLEFBQ0wsSUFBSSxDQUFDLGNBQWMsQ0FBQztFQUNuQixNQUFNLEVBQUUsQ0FBQztFQUNULElBQUksRUFBRSxHQUFHO0VBQ1QsV0FBVyxFeENzZWUsSUFBRztFd0NyZTdCLFlBQVksRXhDcWVjLEdBQUcsQ0FBSCxHQUFHLEN3Q3JlMkIsQ0FBQztFQUN6RCxnQkFBZ0IsRXhDZ2VVLElBQUk7Q3dDL2QvQjs7QUFQSCxBQVFFLFFBUk0sQUFRTCxTQUFTLENBQUMsY0FBYyxDQUFDO0VBQ3hCLE1BQU0sRUFBRSxDQUFDO0VBQ1QsS0FBSyxFeENnZXFCLEdBQUc7RXdDL2Q3QixhQUFhLEV4QytkYSxJQUFHO0V3QzlkN0IsWUFBWSxFeEM4ZGMsR0FBRyxDQUFILEdBQUcsQ3dDOWQyQixDQUFDO0VBQ3pELGdCQUFnQixFeEN5ZFUsSUFBSTtDd0N4ZC9COztBQWRILEFBZUUsUUFmTSxBQWVMLFVBQVUsQ0FBQyxjQUFjLENBQUM7RUFDekIsTUFBTSxFQUFFLENBQUM7RUFDVCxJQUFJLEV4Q3lkc0IsR0FBRztFd0N4ZDdCLGFBQWEsRXhDd2RhLElBQUc7RXdDdmQ3QixZQUFZLEV4Q3VkYyxHQUFHLENBQUgsR0FBRyxDd0N2ZDJCLENBQUM7RUFDekQsZ0JBQWdCLEV4Q2tkVSxJQUFJO0N3Q2pkL0I7O0FBckJILEFBc0JFLFFBdEJNLEFBc0JMLE1BQU0sQ0FBQyxjQUFjLENBQUM7RUFDckIsR0FBRyxFQUFFLEdBQUc7RUFDUixJQUFJLEVBQUUsQ0FBQztFQUNQLFVBQVUsRXhDaWRnQixJQUFHO0V3Q2hkN0IsWUFBWSxFeENnZGMsR0FBRyxDQUFILEdBQUcsQ0FBSCxHQUFHLEN3Q2hkZ0QsQ0FBQztFQUM5RSxrQkFBa0IsRXhDMmNRLElBQUk7Q3dDMWMvQjs7QUE1QkgsQUE2QkUsUUE3Qk0sQUE2QkwsS0FBSyxDQUFDLGNBQWMsQ0FBQztFQUNwQixHQUFHLEVBQUUsR0FBRztFQUNSLEtBQUssRUFBRSxDQUFDO0VBQ1IsVUFBVSxFeEMwY2dCLElBQUc7RXdDemM3QixZQUFZLEV4Q3ljYyxHQUFHLEN3Q3pjTSxDQUFDLEN4Q3ljVixHQUFHLENBQUgsR0FBRztFd0N4YzdCLGlCQUFpQixFeENvY1MsSUFBSTtDd0NuYy9COztBQW5DSCxBQW9DRSxRQXBDTSxBQW9DTCxPQUFPLENBQUMsY0FBYyxDQUFDO0VBQ3RCLEdBQUcsRUFBRSxDQUFDO0VBQ04sSUFBSSxFQUFFLEdBQUc7RUFDVCxXQUFXLEV4Q21jZSxJQUFHO0V3Q2xjN0IsWUFBWSxFQUFFLENBQUMsQ3hDa2NXLEdBQUcsQ0FBSCxHQUFHO0V3Q2pjN0IsbUJBQW1CLEV4QzZiTyxJQUFJO0N3QzViL0I7O0FBMUNILEFBMkNFLFFBM0NNLEFBMkNMLFlBQVksQ0FBQyxjQUFjLENBQUM7RUFDM0IsR0FBRyxFQUFFLENBQUM7RUFDTixLQUFLLEV4QzZicUIsR0FBRztFd0M1YjdCLFVBQVUsRXhDNGJnQixJQUFHO0V3QzNiN0IsWUFBWSxFQUFFLENBQUMsQ3hDMmJXLEdBQUcsQ0FBSCxHQUFHO0V3QzFiN0IsbUJBQW1CLEV4Q3NiTyxJQUFJO0N3Q3JiL0I7O0FBakRILEFBa0RFLFFBbERNLEFBa0RMLGFBQWEsQ0FBQyxjQUFjLENBQUM7RUFDNUIsR0FBRyxFQUFFLENBQUM7RUFDTixJQUFJLEV4Q3Nic0IsR0FBRztFd0NyYjdCLFVBQVUsRXhDcWJnQixJQUFHO0V3Q3BiN0IsWUFBWSxFQUFFLENBQUMsQ3hDb2JXLEdBQUcsQ0FBSCxHQUFHO0V3Q25iN0IsbUJBQW1CLEV4QythTyxJQUFJO0N3QzlhL0I7O0FDM0ZILEFkS0UsU2NMTyxBZEtOLE9BQU8sRWNMVixTQUFTLEFkTU4sTUFBTSxDQUFDO0VBQ04sT0FBTyxFQUFFLEdBQUc7RUFDWixPQUFPLEVBQUUsS0FBSztDQUNmOztBY1RILEFkVUUsU2NWTyxBZFVOLE1BQU0sQ0FBQztFQUNOLEtBQUssRUFBRSxJQUFJO0NBQ1o7O0FjVEgsQUFBQSxhQUFhLENBQUM7RWJSWixPQUFPLEVBQUUsS0FBSztFQUNkLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLFlBQVksRUFBRSxJQUFJO0NhUW5COztBQUNELEFBQUEsV0FBVyxDQUFDO0VBQ1YsS0FBSyxFQUFFLGdCQUFnQjtDQUN4Qjs7QUFDRCxBQUFBLFVBQVUsQ0FBQztFQUNULEtBQUssRUFBRSxlQUFlO0NBQ3ZCOztBQU9ELEFBQUEsS0FBSyxDQUFDO0VBQ0osT0FBTyxFQUFFLGVBQWU7Q0FDekI7O0FBQ0QsQUFBQSxLQUFLLENBQUM7RUFDSixPQUFPLEVBQUUsZ0JBQWdCO0NBQzFCOztBQUNELEFBQUEsVUFBVSxDQUFDO0VBQ1QsVUFBVSxFQUFFLE1BQU07Q0FDbkI7O0FBQ0QsQUFBQSxVQUFVLENBQUM7RXZDekJULElBQUksRUFBRSxLQUFLO0VBQ1gsS0FBSyxFQUFFLFdBQVc7RUFDbEIsV0FBVyxFQUFFLElBQUk7RUFDakIsZ0JBQWdCLEVBQUUsV0FBVztFQUM3QixNQUFNLEVBQUUsQ0FBQztDdUN1QlY7O0FBT0QsQUFBQSxPQUFPLENBQUM7RUFDTixPQUFPLEVBQUUsZUFBZTtDQUN6Qjs7QUFNRCxBQUFBLE1BQU0sQ0FBQztFQUNMLFFBQVEsRUFBRSxLQUFLO0NBQ2hCOztBQ2pDQyxhQUFhO0VBQ1gsS0FBSyxFQUFFLFlBQVk7OztBbENMckIsQUFBQSxXQUFXLENBQUE7RUFDVCxPQUFPLEVBQUUsZUFBZTtDQUN6Qjs7QUFGRCxBQUFBLFdBQVcsQ0FBQTtFQUNULE9BQU8sRUFBRSxlQUFlO0NBQ3pCOztBQUZELEFBQUEsV0FBVyxDQUFBO0VBQ1QsT0FBTyxFQUFFLGVBQWU7Q0FDekI7O0FBRkQsQUFBQSxXQUFXLENBQUE7RUFDVCxPQUFPLEVBQUUsZUFBZTtDQUN6Qjs7QWtDZ0JILEFBQUEsaUJBQWlCO0FBQ2pCLGtCQUFrQjtBQUNsQix3QkFBd0I7QUFDeEIsaUJBQWlCO0FBQ2pCLGtCQUFrQjtBQUNsQix3QkFBd0I7QUFDeEIsaUJBQWlCO0FBQ2pCLGtCQUFrQjtBQUNsQix3QkFBd0I7QUFDeEIsaUJBQWlCO0FBQ2pCLGtCQUFrQjtBQUNsQix3QkFBd0IsQ0FBQztFQUN2QixPQUFPLEVBQUUsZUFBZTtDQUN6Qjs7QUFFRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RWxDakN0QixBQUFBLFdBQVcsQ0FYQTtJQUNULE9BQU8sRUFBRSxnQkFBZ0I7R0FDMUI7RUFDRCxBQUFBLEtBQUssQUFBQSxXQUFXLENBQUM7SUFBRSxPQUFPLEVBQUUsZ0JBQWdCO0dBQUk7RUFDaEQsQUFBQSxFQUFFLEFBQUEsV0FBVyxDQUFJO0lBQUUsT0FBTyxFQUFFLG9CQUFvQjtHQUFJO0VBQ3BELEFBQUEsRUFBRSxBQUFBLFdBQVc7RUFDYixFQUFFLEFBQUEsV0FBVyxDQUFJO0lBQUUsT0FBTyxFQUFFLHFCQUFxQjtHQUFJOzs7QWtDMENyRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEMUIsQUFBQSxpQkFBaUIsQ0FBQztJQUVkLE9BQU8sRUFBRSxnQkFBZ0I7R0FFNUI7OztBQUVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUQxQixBQUFBLGtCQUFrQixDQUFDO0lBRWYsT0FBTyxFQUFFLGlCQUFpQjtHQUU3Qjs7O0FBRUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRDFCLEFBQUEsd0JBQXdCLENBQUM7SUFFckIsT0FBTyxFQUFFLHVCQUF1QjtHQUVuQzs7O0FBRUQsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLEtBQUs7RWxDcEQ3QyxBQUFBLFdBQVcsQ0FYQTtJQUNULE9BQU8sRUFBRSxnQkFBZ0I7R0FDMUI7RUFDRCxBQUFBLEtBQUssQUFBQSxXQUFXLENBQUM7SUFBRSxPQUFPLEVBQUUsZ0JBQWdCO0dBQUk7RUFDaEQsQUFBQSxFQUFFLEFBQUEsV0FBVyxDQUFJO0lBQUUsT0FBTyxFQUFFLG9CQUFvQjtHQUFJO0VBQ3BELEFBQUEsRUFBRSxBQUFBLFdBQVc7RUFDYixFQUFFLEFBQUEsV0FBVyxDQUFJO0lBQUUsT0FBTyxFQUFFLHFCQUFxQjtHQUFJOzs7QWtDNkRyRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUssT0FBTyxTQUFTLEVBQUUsS0FBSztFQURqRCxBQUFBLGlCQUFpQixDQUFDO0lBRWQsT0FBTyxFQUFFLGdCQUFnQjtHQUU1Qjs7O0FBRUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLEtBQUs7RUFEakQsQUFBQSxrQkFBa0IsQ0FBQztJQUVmLE9BQU8sRUFBRSxpQkFBaUI7R0FFN0I7OztBQUVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSyxPQUFPLFNBQVMsRUFBRSxLQUFLO0VBRGpELEFBQUEsd0JBQXdCLENBQUM7SUFFckIsT0FBTyxFQUFFLHVCQUF1QjtHQUVuQzs7O0FBRUQsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLE1BQU07RWxDdkU5QyxBQUFBLFdBQVcsQ0FYQTtJQUNULE9BQU8sRUFBRSxnQkFBZ0I7R0FDMUI7RUFDRCxBQUFBLEtBQUssQUFBQSxXQUFXLENBQUM7SUFBRSxPQUFPLEVBQUUsZ0JBQWdCO0dBQUk7RUFDaEQsQUFBQSxFQUFFLEFBQUEsV0FBVyxDQUFJO0lBQUUsT0FBTyxFQUFFLG9CQUFvQjtHQUFJO0VBQ3BELEFBQUEsRUFBRSxBQUFBLFdBQVc7RUFDYixFQUFFLEFBQUEsV0FBVyxDQUFJO0lBQUUsT0FBTyxFQUFFLHFCQUFxQjtHQUFJOzs7QWtDZ0ZyRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUssT0FBTyxTQUFTLEVBQUUsTUFBTTtFQURsRCxBQUFBLGlCQUFpQixDQUFDO0lBRWQsT0FBTyxFQUFFLGdCQUFnQjtHQUU1Qjs7O0FBRUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLE1BQU07RUFEbEQsQUFBQSxrQkFBa0IsQ0FBQztJQUVmLE9BQU8sRUFBRSxpQkFBaUI7R0FFN0I7OztBQUVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSyxPQUFPLFNBQVMsRUFBRSxNQUFNO0VBRGxELEFBQUEsd0JBQXdCLENBQUM7SUFFckIsT0FBTyxFQUFFLHVCQUF1QjtHQUVuQzs7O0FBRUQsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0VsQzFGdkIsQUFBQSxXQUFXLENBWEE7SUFDVCxPQUFPLEVBQUUsZ0JBQWdCO0dBQzFCO0VBQ0QsQUFBQSxLQUFLLEFBQUEsV0FBVyxDQUFDO0lBQUUsT0FBTyxFQUFFLGdCQUFnQjtHQUFJO0VBQ2hELEFBQUEsRUFBRSxBQUFBLFdBQVcsQ0FBSTtJQUFFLE9BQU8sRUFBRSxvQkFBb0I7R0FBSTtFQUNwRCxBQUFBLEVBQUUsQUFBQSxXQUFXO0VBQ2IsRUFBRSxBQUFBLFdBQVcsQ0FBSTtJQUFFLE9BQU8sRUFBRSxxQkFBcUI7R0FBSTs7O0FrQ21HckQsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0VBRDNCLEFBQUEsaUJBQWlCLENBQUM7SUFFZCxPQUFPLEVBQUUsZ0JBQWdCO0dBRTVCOzs7QUFFQyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07RUFEM0IsQUFBQSxrQkFBa0IsQ0FBQztJQUVmLE9BQU8sRUFBRSxpQkFBaUI7R0FFN0I7OztBQUVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtFQUQzQixBQUFBLHdCQUF3QixDQUFDO0lBRXJCLE9BQU8sRUFBRSx1QkFBdUI7R0FFbkM7OztBQUVELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFbEM3R3RCLEFBQUEsVUFBVSxDQUFDO0lBQ1QsT0FBTyxFQUFFLGVBQWU7R0FDekI7OztBa0MrR0gsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLEtBQUs7RWxDakg3QyxBQUFBLFVBQVUsQ0FBQztJQUNULE9BQU8sRUFBRSxlQUFlO0dBQ3pCOzs7QWtDbUhILE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSyxPQUFPLFNBQVMsRUFBRSxNQUFNO0VsQ3JIOUMsQUFBQSxVQUFVLENBQUM7SUFDVCxPQUFPLEVBQUUsZUFBZTtHQUN6Qjs7O0FrQ3VISCxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07RWxDekh2QixBQUFBLFVBQVUsQ0FBQztJQUNULE9BQU8sRUFBRSxlQUFlO0dBQ3pCOzs7QUFGRCxBQUFBLGNBQWMsQ0FBSDtFQUNULE9BQU8sRUFBRSxlQUFlO0NBQ3pCOztBa0NvSUgsTUFBTSxDQUFDLEtBQUs7RWxDdElWLEFBQUEsY0FBYyxDQVhIO0lBQ1QsT0FBTyxFQUFFLGdCQUFnQjtHQUMxQjtFQUNELEFBQUEsS0FBSyxBQUFBLGNBQWMsQ0FBRjtJQUFFLE9BQU8sRUFBRSxnQkFBZ0I7R0FBSTtFQUNoRCxBQUFBLEVBQUUsQUFBQSxjQUFjLENBQUM7SUFBRSxPQUFPLEVBQUUsb0JBQW9CO0dBQUk7RUFDcEQsQUFBQSxFQUFFLEFBQUEsY0FBYztFQUNoQixFQUFFLEFBQUEsY0FBYyxDQUFDO0lBQUUsT0FBTyxFQUFFLHFCQUFxQjtHQUFJOzs7QWtDOEl2RCxBQUFBLG9CQUFvQixDQUFDO0VBQ25CLE9BQU8sRUFBRSxlQUFlO0NBS3pCOztBQUhDLE1BQU0sQ0FBQyxLQUFLO0VBSGQsQUFBQSxvQkFBb0IsQ0FBQztJQUlqQixPQUFPLEVBQUUsZ0JBQWdCO0dBRTVCOzs7QUFDRCxBQUFBLHFCQUFxQixDQUFDO0VBQ3BCLE9BQU8sRUFBRSxlQUFlO0NBS3pCOztBQUhDLE1BQU0sQ0FBQyxLQUFLO0VBSGQsQUFBQSxxQkFBcUIsQ0FBQztJQUlsQixPQUFPLEVBQUUsaUJBQWlCO0dBRTdCOzs7QUFDRCxBQUFBLDJCQUEyQixDQUFDO0VBQzFCLE9BQU8sRUFBRSxlQUFlO0NBS3pCOztBQUhDLE1BQU0sQ0FBQyxLQUFLO0VBSGQsQUFBQSwyQkFBMkIsQ0FBQztJQUl4QixPQUFPLEVBQUUsdUJBQXVCO0dBRW5DOzs7QUFFRCxNQUFNLENBQUMsS0FBSztFbEMvSlYsQUFBQSxhQUFhLENBQUY7SUFDVCxPQUFPLEVBQUUsZUFBZTtHQUN6Qjs7O0F1Q25CSDs7Z0ZBRWdGO0FBRWhGLEFBQUEsRUFBRTtBQUNGLEVBQUU7QUFDRixFQUFFO0FBQ0YsRUFBRTtBQUNGLEVBQUU7QUFDRixDQUFDLENBQUM7RUFDRSxNQUFNLEVBQUUsQ0FBQztFQUNULE9BQU8sRUFBRSxDQUFDO0NBQ2I7O0FBRUQsQUFBQSxFQUFFO0FBQ0YsRUFBRTtBQUNGLEVBQUU7QUFDRixFQUFFLENBQUM7RUFDRCxXQUFXLEVBQUMsT0FBTztDQUNwQjs7QUFFRCxBQUNJLENBREgsRUFBRCxDQUFDLEFBRUksT0FBTyxFQUZaLENBQUMsQUFHSSxNQUFNLENBQUM7RUFDSixpQkFBaUIsRUFBRSxTQUFTO0NBQy9COztBQUtMLEFBQUEsQ0FBQyxDQUFDO0VqQzJDQSxrQkFBa0IsRWlDMUNFLFVBQVU7RWpDMkMzQixlQUFlLEVpQzNDRSxVQUFVO0VqQzRDdEIsVUFBVSxFaUM1Q0UsVUFBVTtDQUMvQjs7QUFDRCxBQUFBLENBQUMsQUFBQSxPQUFPO0FBQ1IsQ0FBQyxBQUFBLE1BQU0sQ0FBQztFakN1Q04sa0JBQWtCLEVpQ3RDRSxVQUFVO0VqQ3VDM0IsZUFBZSxFaUN2Q0UsVUFBVTtFakN3Q3RCLFVBQVUsRWlDeENFLFVBQVU7Q0FDL0I7O0FBSUQsQUFBQSxLQUFLO0FBQ0wsTUFBTTtBQUNOLE1BQU07QUFDTixRQUFRLENBQUM7RUFDUCxXQUFXLEVBQUUsT0FBTztFQUNwQixTQUFTLEVBQUUsT0FBTztFQUNsQixXQUFXLEVBQUUsT0FBTztFQUNwQixjQUFjLEVBQUUsT0FBTztDQUN4Qjs7QWZ1SUQsQUFBQSxHQUFHLENlbklDO0VBQ0YsY0FBYyxFQUFFLE1BQU07Q0FDdkI7O0FBTUQsQUFBQSxRQUFRLENBQUM7RUFDUCxRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsR0FBRztFQUNWLE1BQU0sRUFBRSxHQUFHO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixPQUFPLEVBQUUsQ0FBQztFQUNWLFFBQVEsRUFBRSxNQUFNO0VBQ2hCLElBQUksRUFBRSxnQkFBYTtFQUNuQixNQUFNLEVBQUUsQ0FBQztDQUNWOztBQUVELEFBQUEsTUFBTSxBQUFBLE1BQU07Q0FDWixBQUFBLElBQUMsQ0FBSyxNQUFNLEFBQVgsQ0FBWSxNQUFNO0NBQ25CLEFBQUEsSUFBQyxDQUFLLFVBQVUsQUFBZixDQUFnQixNQUFNLENBQUM7RUFDcEIsT0FBTyxFQUFFLENBQUM7Q0FDYjs7QUM1RUQ7O2dGQUVnRjtBaEJNaEYsQUFBQSxJQUFJLENnQkpDO0VBQ0QsU0FBUyxFQUFFLEtBQUs7RUFBRSwyQkFBMkI7Q0FJaEQ7O0FBSEcsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0VoQkU3QixBQUFBLElBQUksQ2dCSkM7SUFHQyxTQUFTLEVBQUUsS0FBSztJQUFFLHlCQUF5QjtHQUVoRDs7O0FoQlNELEFBQUEsSUFBSSxDZ0JSQztFQUNILFdBQVcsRUxrQkksUUFBUSxFQUFFLEtBQUssRUFBRSxVQUFVO0VLakIxQyxTQUFTLEVMZU8sTUFBTTtFS1h0QixXQUFXLEVMWU8sR0FBRztFS1hyQixLQUFLLEVMVkUsSUFBSTtFS1dYLGdCQUFnQixFTFpULElBQUk7RUthWCxRQUFRLEVBQUMsUUFBUTtFQUNqQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7Q0FvQ25DOztBQTVDQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RWhCSzFCLEFBQUEsSUFBSSxDZ0JSQztJQUlELFNBQVMsRUpOSCxVQUE4QjtHSWlEdkM7OztBQS9DRCxBQVlFLElBWkUsQUFZRCxPQUFPLENBQUM7RUFDUCxPQUFPLEVBQUMsSUFBSTtFQUNaLE9BQU8sRUFBRSxZQUFZO0NBYXRCOztBQVpDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQWY1QixBQVlFLElBWkUsQUFZRCxPQUFPLENBQUM7SUFJTCxPQUFPLEVBQUUsV0FBVztHQVd2Qjs7O0FBVEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBbEI1QixBQVlFLElBWkUsQUFZRCxPQUFPLENBQUM7SUFPTCxPQUFPLEVBQUUsV0FBVztHQVF2Qjs7O0FBTkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBckI1QixBQVlFLElBWkUsQUFZRCxPQUFPLENBQUM7SUFVTCxPQUFPLEVBQUUsV0FBVztHQUt2Qjs7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0VBeEI3QixBQVlFLElBWkUsQUFZRCxPQUFPLENBQUM7SUFhTCxPQUFPLEVBQUUsV0FBVztHQUV2Qjs7O0FBM0JILEFBNEJFLElBNUJFLEFBNEJELE1BQU0sQ0FBQztFQUNOLE9BQU8sRUFBQyxJQUFJO0VBQ1osT0FBTyxFQUFFLFFBQVE7Q0FJbEI7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBL0I1QixBQTRCRSxJQTVCRSxBQTRCRCxNQUFNLENBQUM7SUFJSixPQUFPLEVBQUUsU0FBUztHQUVyQjs7O0FBRUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBcEM1QixBQW1DRSxJQW5DRSxBQW1DRCxTQUFTLENBQUM7SUFFUCxnQkFBZ0IsRUFBQywyQ0FBMkM7SUFDNUQsZUFBZSxFQUFDLE9BQU87R0FLMUI7RUEzQ0gsQUF1Q00sSUF2Q0YsQUFtQ0QsU0FBUyxBQUlMLGVBQWUsQ0FBQztJQUNmLGVBQWUsRUFBQyxLQUFLO0dBQ3RCOzs7QUF6Q1AsQUE0Q0UsSUE1Q0UsQUE0Q0QsZ0JBQWdCLENBQUM7RUFDaEIsUUFBUSxFQUFDLE1BQU07Q0FDaEI7O0FBR0gsQUFBQSxFQUFFLENBQUM7RUFBRSxVQUFVLEVBQUUsSUFBSTtDQUFJOztBaEI2SHpCLEFBQUEsR0FBRyxDZ0IzSEM7RUFDQSxTQUFTLEVBQUUsSUFBSTtFQUNmLE1BQU0sRUFBRSxJQUFJO0NBQ2Y7O0FoQndCRCxBQUFBLENBQUMsQ2dCdEJDO0VBQ0UsZUFBZSxFQUFFLElBQUk7RUFDckIsS0FBSyxFQUFFLE9BQU87Q0FJakI7O0FBTkQsQUFHSSxDQUhILEFBR0ksTUFBTSxDQUFDO0VBQ0osT0FBTyxFQUFFLENBQUM7Q0FDYjs7QWhCa01MLEFBQUEsTUFBTSxDZ0IvTEM7RUFDSCxNQUFNLEVBQUMsSUFBSTtFQUNYLGdCQUFnQixFQUFFLFdBQVc7RUFDN0IsT0FBTyxFQUFDLENBQUM7Q0FJWjs7QUFQRCxBQUlJLE1BSkUsQUFJRCxNQUFNLENBQUE7RUFDSCxPQUFPLEVBQUUsQ0FBQztDQUNiOztBQUdMLEFBQUEsQ0FBQyxDQUFDO0VBQ0UsTUFBTSxFQUFFLFFBQVE7Q0FFbkI7O0FBSEQsQUFFSSxDQUZILEFBRUksWUFBWSxDQUFDO0VBQUUsVUFBVSxFQUFFLENBQUM7Q0FBSTs7QUFHckMsQUFDRSxJQURFLEFBQ0QsY0FBYyxDQUFDO0VIOUVkLFdBQVcsRUcrRUssQ0FBQztFSDlFakIsWUFBWSxFRzhFSSxDQUFDO0NBQ2xCOztBQUhILEFIZ0tFLElHaEtFLEFBQ0QsY0FBYyxHSCtKWCxDQUFDLENBQUM7RUFsT0osWUFBWSxFR29FSSxDQUFDO0VIbkVqQixhQUFhLEVHbUVHLENBQUM7Q0g4SmM7O0FHaEtuQyxBQUlFLElBSkUsQUFJRCxTQUFTLENBQUM7RUhqRlQsV0FBVyxFR2tGSyxJQUFHO0VIakZuQixZQUFZLEVHaUZJLElBQUc7Q0FDcEI7O0FBTkgsQUhnS0UsSUdoS0UsQUFJRCxTQUFTLEdINEpOLENBQUMsQ0FBQztFQWxPSixZQUFZLEVHdUVJLEdBQUc7RUh0RW5CLGFBQWEsRUdzRUcsR0FBRztDSDJKWTs7QUdoS25DLEFBT0UsSUFQRSxBQU9ELFVBQVUsQ0FBQztFSHBGVixXQUFXLEVHcUZLLEtBQUk7RUhwRnBCLFlBQVksRUdvRkksS0FBSTtDQUNyQjs7QUFUSCxBSGdLRSxJR2hLRSxBQU9ELFVBQVUsR0h5SlAsQ0FBQyxDQUFDO0VBbE9KLFlBQVksRUcwRUksSUFBSTtFSHpFcEIsYUFBYSxFR3lFRyxJQUFJO0NId0pXOztBR2hLbkMsQUFVRSxJQVZFLEFBVUQsUUFBUSxDQUFDO0VBQ1IsT0FBTyxFQUFFLElBQUk7RUFDYixTQUFTLEVBQUUsSUFBSTtDQUNoQjs7QUFHSCxBQUFBLFNBQVMsQ0FBQztFQUlSLFdBQVcsRUFBQyxDQUFDO0VBQ2IsWUFBWSxFQUFDLENBQUM7Q0FRZjs7QUFaQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEMUIsQUFBQSxTQUFTLENBQUM7SUFFTixPQUFPLEVBQUMsSUFBSTtHQVdmOzs7QUFiRCxBQU1FLFNBTk8sR0FNSCxDQUFDLENBQUM7RUFDSixZQUFZLEVBQUMsQ0FBQztFQUNkLGFBQWEsRUFBQyxDQUFDO0VBQ2YsS0FBSyxFQUFFLElBQUk7RUFDWCxJQUFJLEVBQUUsUUFBUTtFQUNkLFFBQVEsRUFBQyxNQUFNO0NBQ2hCOztBQUdILEFBQUEsVUFBVSxDQUFDO0VBQ1QsT0FBTyxFQUFDLEtBQUs7RUFDYixLQUFLLEVBQUMsSUFBSTtFQUNWLFlBQVksRUFBQyxLQUFLO0NBS25COztBQVJELEFBSUUsVUFKUSxHQUlOLENBQUMsQ0FBQztFQUNGLE9BQU8sRUFBQyxVQUFVO0VBQ2xCLGNBQWMsRUFBRSxHQUFHO0NBQ3BCOztBQUlILEFBQ0UsWUFEVSxHQUNSLFNBQVMsQ0FBQztFQUNWLE9BQU8sRUFBRSxJQUFJO0NBQ2Q7O0FBSEgsQUFJRSxZQUpVLEdBSVIsT0FBTyxDQUFDO0VBQ1IsT0FBTyxFQUFFLEtBQUs7Q0FDZjs7QUFHSCxBQUFBLGdCQUFnQixDQUFDO0VBQUMsUUFBUSxFQUFDLE1BQU07Q0FBRzs7QUFDcEMsQUFBQSxNQUFNLENBQUM7RUFBRSxPQUFPLEVBQUMsS0FBSztDQUFHOztBQUV6QixBQUFBLFVBQVUsQ0FBVztFQUFFLFVBQVUsRUFBRSxJQUFJO0NBQUk7O0FBQzNDLEFBQUEsV0FBVyxDQUFVO0VBQUUsVUFBVSxFQUFFLEtBQUs7Q0FBSTs7QUFDNUMsQUFBQSxZQUFZLENBQVM7RUFBRSxVQUFVLEVBQUUsTUFBTTtDQUFJOztBQUM3QyxBQUFBLGFBQWEsQ0FBUTtFQUFFLFVBQVUsRUFBRSxPQUFPO0NBQUk7O0FBQzlDLEFBQUEsWUFBWSxDQUFTO0VBQUUsV0FBVyxFQUFFLE1BQU07Q0FBSTs7QUFHOUMsQUFBQSxlQUFlLENBQU07RUFBRSxjQUFjLEVBQUUsU0FBUztDQUFJOztBQUNwRCxBQUFBLGVBQWUsQ0FBTTtFQUFFLGNBQWMsRUFBRSxTQUFTO0NBQUk7O0FBQ3BELEFBQUEsZ0JBQWdCLENBQUs7RUFBRSxjQUFjLEVBQUUsVUFBVTtDQUFJOztBQUtuRCxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sT0FBTyxTQUFTLEVBQUUsTUFBTTtFZm5KbkQsQUFBQSxVQUFVLENla0pDO0lBRU4sS0FBSyxFQUFFLEtBQTBCO0dBRXJDOzs7QUFJQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFGMUIsQUFBQSxhQUFhO0VBQ2IsV0FBVyxDQUFDO0lBRVIsS0FBSyxFQUFDLElBQUk7SUFDVixLQUFLLEVBQUMsSUFBSTtHQUViOzs7QUFHQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEMUIsQUFBQSxXQUFXLENBQUM7SUFFUixLQUFLLEVBQUMsR0FBRztHQUVaOzs7QUFHRCxBQUFBLGFBQWE7QUFDYixhQUFhO0FBQ2IsYUFBYTtBQUNiLGFBQWEsQ0FBQztFQUNaLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLFVBQVUsRUFBRSxHQUFHO0VBQ2YsWUFBWSxFQUFHLElBQThCO0VBQzdDLGFBQWEsRUFBRSxJQUErQjtFQUM5QyxLQUFLLEVBQUMsSUFBSTtDQUNYOztBQUVELEFBQUEsYUFBYSxDQUFDO0VBQ1osS0FBSyxFQUFDLEdBQUc7Q0FDVjs7QUFDRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFDdEIsQUFBQSxhQUFhLENBQUM7SUFDWixLQUFLLEVBQUMsR0FBRztHQUNWOzs7QUFFSCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFDdEIsQUFBQSxhQUFhLENBQUM7SUFDWixLQUFLLEVBQUMsR0FBRztHQUNWOzs7QUFFSCxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07RUFDdkIsQUFBQSxhQUFhLENBQUM7SUFDWixLQUFLLEVBQUMsR0FBRztHQUNWOzs7QUFHSCxBQUFBLG9CQUFvQixDQUFDO0VBQ2pCLE9BQU8sRUFBRSxJQUFJO0NBQ2hCOztBQUVELEFBQUEsaUJBQWlCLENBQUM7RUFDaEIsUUFBUSxFQUFDLE1BQU07Q0FDaEI7O0FBRUQsQUFDRSxNQURJLENBQ0osU0FBUyxDQUFDO0VBQ1IsT0FBTyxFQUFDLElBQUk7Q0FDYjs7QUFJSCxBQUdFLFlBSFUsQ0FHVixFQUFFLENBQUM7RUFDRCxPQUFPLEVBRlMsR0FBRyxDQURILE1BQU0sQ0FHb0IsR0FBRztFQUM3QyxnQkFBZ0IsRUFBTSxvQkFBRztDQUMxQjs7QUFOSCxBQU9FLFlBUFUsQ0FPVixFQUFFLENBQUM7RUFDRCxPQUFPLEVBTlMsR0FBRyxDQURILE1BQU0sQ0FPb0IsSUFBSTtFQUM5QyxnQkFBZ0IsRUFBTSxvQkFBSTtDQUMzQjs7QUFWSCxBQVdFLFlBWFUsQ0FXVixFQUFFLENBQUM7RUFDRCxPQUFPLEVBVlMsR0FBRyxDQURILE1BQU0sQ0FXb0IsS0FBSztFQUMvQyxnQkFBZ0IsRUFBTSxvQkFBSztDQUM1Qjs7QUFkSCxBQWVFLFlBZlUsQ0FlVixFQUFFLENBQUM7RUFDRCxPQUFPLEVBZFMsR0FBRyxDQURILE1BQU0sQ0Flb0IsTUFBTTtFQUNoRCxnQkFBZ0IsRUFBTSxzQkFBTTtDQUM3Qjs7QUFLSCxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07RUFDdkIsQUFDRSxXQURTLENBQ1QsU0FBUyxBQUFBLFVBQVcsQ0FBQSxLQUFLLEVBQUM7SUFBQyxLQUFLLEVBQUMsSUFBSTtHQUFHO0VBRDFDLEFBRUUsV0FGUyxDQUVULFNBQVMsQUFBQSxVQUFXLENBQUEsS0FBSyxFQUFDO0lBQUMsS0FBSyxFQUFDLElBQUk7R0FBRztFQUYxQyxBQUdFLFdBSFMsQ0FHVCxTQUFTLEFBQUEsVUFBVyxDQUFBLElBQUksRUFBQztJQUFDLEtBQUssRUFBQyxJQUFJO0dBQUc7RUFIekMsQUFJRSxXQUpTLENBSVQsU0FBUyxBQUFBLFVBQVcsQ0FBQSxJQUFJLEVBQUM7SUFBQyxLQUFLLEVBQUMsSUFBSTtHQUFHO0VBSnpDLEFBS0UsV0FMUyxDQUtULFNBQVMsQUFBQSxVQUFXLENBQUEsSUFBSSxFQUFDO0lBQUMsS0FBSyxFQUFDLElBQUk7R0FBRztFQUx6QyxBQU1FLFdBTlMsQ0FNVCxTQUFTLEFBQUEsVUFBVyxDQUFBLElBQUksRUFBQztJQUFDLEtBQUssRUFBQyxJQUFJO0dBQUc7RUFOekMsQUFPRSxXQVBTLENBT1QsVUFBVSxBQUFBLFVBQVcsQ0FBQSxJQUFJLEVBQUM7SUFBQyxLQUFLLEVBQUMsSUFBSTtHQUFHOzs7QUFHNUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLE1BQU07RUFDOUMsQUFDRSxXQURTLENBQ1QsU0FBUyxBQUFBLFVBQVcsQ0FBQSxLQUFLLEVBQUM7SUFBQyxLQUFLLEVBQUMsSUFBSTtHQUFHO0VBRDFDLEFBRUUsV0FGUyxDQUVULFNBQVMsQUFBQSxVQUFXLENBQUEsS0FBSyxFQUFDO0lBQUMsS0FBSyxFQUFDLElBQUk7R0FBRztFQUYxQyxBQUdFLFdBSFMsQ0FHVCxTQUFTLEFBQUEsVUFBVyxDQUFBLElBQUksRUFBQztJQUFDLEtBQUssRUFBQyxJQUFJO0dBQUc7RUFIekMsQUFJRSxXQUpTLENBSVQsU0FBUyxBQUFBLFVBQVcsQ0FBQSxJQUFJLEVBQUM7SUFBQyxLQUFLLEVBQUMsSUFBSTtHQUFHO0VBSnpDLEFBS0UsV0FMUyxDQUtULFNBQVMsQUFBQSxVQUFXLENBQUEsSUFBSSxFQUFDO0lBQUMsS0FBSyxFQUFDLElBQUk7R0FBRztFQUx6QyxBQU1FLFdBTlMsQ0FNVCxTQUFTLEFBQUEsVUFBVyxDQUFBLElBQUksRUFBQztJQUFDLEtBQUssRUFBQyxJQUFJO0dBQUc7RUFOekMsQUFPRSxXQVBTLENBT1QsVUFBVSxBQUFBLFVBQVcsQ0FBQSxJQUFJLEVBQUM7SUFBQyxLQUFLLEVBQUMsSUFBSTtHQUFHOzs7QUFHNUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLEtBQUs7RUFDN0MsQUFDRSxXQURTLENBQ1QsU0FBUyxBQUFBLFVBQVcsQ0FBQSxLQUFLLEVBQUM7SUFBQyxLQUFLLEVBQUMsSUFBSTtHQUFHO0VBRDFDLEFBRUUsV0FGUyxDQUVULFNBQVMsQUFBQSxVQUFXLENBQUEsS0FBSyxFQUFDO0lBQUMsS0FBSyxFQUFDLElBQUk7R0FBRztFQUYxQyxBQUdFLFdBSFMsQ0FHVCxTQUFTLEFBQUEsVUFBVyxDQUFBLElBQUksRUFBQztJQUFDLEtBQUssRUFBQyxJQUFJO0dBQUc7RUFIekMsQUFJRSxXQUpTLENBSVQsU0FBUyxBQUFBLFVBQVcsQ0FBQSxJQUFJLEVBQUM7SUFBQyxLQUFLLEVBQUMsSUFBSTtHQUFHO0VBSnpDLEFBS0UsV0FMUyxDQUtULFNBQVMsQUFBQSxVQUFXLENBQUEsSUFBSSxFQUFDO0lBQUMsS0FBSyxFQUFDLElBQUk7R0FBRztFQUx6QyxBQU1FLFdBTlMsQ0FNVCxTQUFTLEFBQUEsVUFBVyxDQUFBLElBQUksRUFBQztJQUFDLEtBQUssRUFBQyxJQUFJO0dBQUc7RUFOekMsQUFPRSxXQVBTLENBT1QsVUFBVSxBQUFBLFVBQVcsQ0FBQSxJQUFJLEVBQUM7SUFBQyxLQUFLLEVBQUMsSUFBSTtHQUFHOzs7QUFHNUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBQ3RCLEFBQ0UsV0FEUyxDQUNULFNBQVMsQUFBQSxVQUFXLENBQUEsS0FBSyxFQUFDO0lBQUMsS0FBSyxFQUFDLElBQUk7R0FBRztFQUQxQyxBQUVFLFdBRlMsQ0FFVCxTQUFTLEFBQUEsVUFBVyxDQUFBLEtBQUssRUFBQztJQUFDLEtBQUssRUFBQyxJQUFJO0dBQUc7RUFGMUMsQUFHRSxXQUhTLENBR1QsU0FBUyxBQUFBLFVBQVcsQ0FBQSxJQUFJLEVBQUM7SUFBQyxLQUFLLEVBQUMsSUFBSTtHQUFHO0VBSHpDLEFBSUUsV0FKUyxDQUlULFNBQVMsQUFBQSxVQUFXLENBQUEsSUFBSSxFQUFDO0lBQUMsS0FBSyxFQUFDLElBQUk7R0FBRztFQUp6QyxBQUtFLFdBTFMsQ0FLVCxTQUFTLEFBQUEsVUFBVyxDQUFBLElBQUksRUFBQztJQUFDLEtBQUssRUFBQyxJQUFJO0dBQUc7RUFMekMsQUFNRSxXQU5TLENBTVQsU0FBUyxBQUFBLFVBQVcsQ0FBQSxJQUFJLEVBQUM7SUFBQyxLQUFLLEVBQUMsSUFBSTtHQUFHO0VBTnpDLEFBT0UsV0FQUyxDQU9ULFVBQVUsQUFBQSxVQUFXLENBQUEsSUFBSSxFQUFDO0lBQUMsS0FBSyxFQUFDLElBQUk7R0FBRzs7O0FBTTVDLEFBQUEsY0FBYyxDQUFDO0VBQ2IsU0FBUyxFQUFDLE9BQU87RUFDakIsV0FBVyxFQUFDLE9BQU87RUFDbkIsS0FBSyxFQUFDLE9BQU87Q0FDZDs7QUN2U0Q7O2dGQUVnRjtBQUtoRixVQUFVO0VBRU4sV0FBVyxFQUFFLFVBQVU7RUFDdkIsR0FBRyxFQUFHLDZCQUFpQyxDQUFDLGVBQWUsRUFDakQsNEJBQWdDLENBQUMsY0FBYzs7O0FBR3pELFVBQVU7RUFFTixXQUFXLEVBQUUsUUFBUTtFQUNyQixHQUFHLEVBQUcsaUNBQWlDLENBQUMsZUFBZSxFQUNqRCxnQ0FBZ0MsQ0FBQyxjQUFjO0VBQ3JELFdBQVcsRUFBRSxHQUFHO0VBQ2hCLFVBQVUsRUFBRSxNQUFNOzs7QUFHdEIsVUFBVTtFQUVOLFdBQVcsRUFBRSxRQUFRO0VBQ3JCLEdBQUcsRUFBRyxtQ0FBaUMsQ0FBQyxlQUFlLEVBQ2pELGtDQUFnQyxDQUFDLGNBQWM7RUFDckQsV0FBVyxFQUFFLEdBQUc7RUFDaEIsVUFBVSxFQUFFLE1BQU07OztBQUd0QixVQUFVO0VBRU4sV0FBVyxFQUFFLFFBQVE7RUFDckIsR0FBRyxFQUFHLGtDQUFpQyxDQUFDLGVBQWUsRUFDakQsaUNBQWdDLENBQUMsY0FBYztFQUNyRCxXQUFXLEVBQUUsR0FBRztFQUNoQixVQUFVLEVBQUUsTUFBTTs7O0FBR3RCLFVBQVU7RUFFTixXQUFXLEVBQUUsUUFBUTtFQUNyQixHQUFHLEVBQUcsZ0NBQWlDLENBQUMsZUFBZSxFQUNqRCwrQkFBZ0MsQ0FBQyxjQUFjO0VBQ3JELFdBQVcsRUFBRSxHQUFHO0VBQ2hCLFVBQVUsRUFBRSxNQUFNOzs7QUFHdEIsVUFBVTtFQUVOLFdBQVcsRUFBRSxRQUFRO0VBQ3JCLEdBQUcsRUFBRyxrQ0FBaUMsQ0FBQyxlQUFlLEVBQ2pELGlDQUFnQyxDQUFDLGNBQWM7RUFDckQsV0FBVyxFQUFFLEdBQUc7RUFDaEIsVUFBVSxFQUFFLE1BQU07OztBQUd0QixVQUFVO0VBRU4sV0FBVyxFQUFFLFVBQVU7RUFDdkIsR0FBRyxFQUFHLHFDQUFpQyxDQUFDLGVBQWUsRUFDakQsb0NBQWdDLENBQUMsY0FBYztFQUNyRCxXQUFXLEVBQUUsR0FBRztFQUNoQixVQUFVLEVBQUUsTUFBTTs7O0FBR3RCLFVBQVU7RUFFTixXQUFXLEVBQUUsVUFBVTtFQUN2QixHQUFHLEVBQUcsb0NBQWlDLENBQUMsZUFBZSxFQUNqRCxtQ0FBZ0MsQ0FBQyxjQUFjO0VBQ3JELFdBQVcsRUFBRSxHQUFHO0VBQ2hCLFVBQVUsRUFBRSxNQUFNOzs7QUFHdEIsVUFBVTtFQUVOLFdBQVcsRUFBRSxVQUFVO0VBQ3ZCLEdBQUcsRUFBRyx5Q0FBaUMsQ0FBQyxlQUFlLEVBQ2pELHdDQUFnQyxDQUFDLGNBQWM7RUFDckQsV0FBVyxFQUFFLEdBQUc7RUFDaEIsVUFBVSxFQUFFLE1BQU07OztBQ3VGdEIsQUFYSSxZQVdRLEFBWFAsT0FBTyxDQUFLO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQTVJQSxJQUFPO0NBNklqQjs7QUFPTCxBQWRJLGdCQWNZLEFBZFgsT0FBTyxDQUFLO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQXpJQSxJQUFPO0NBMElqQjs7QUFVTCxBQWpCSSxXQWlCTyxBQWpCTixPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBdElBLElBQU87Q0F1SWpCOztBQWFMLEFBcEJJLFlBb0JRLEFBcEJQLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUFuSUEsSUFBTztDQW9JakI7O0FBZ0JMLEFBdkJJLFdBdUJPLEFBdkJOLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUFoSUEsSUFBTztDQWlJakI7O0FBbUJMLEFBMUJJLFlBMEJRLEFBMUJQLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUE3SEEsSUFBTztDQThIakI7O0FBc0JMLEFBN0JJLFdBNkJPLEFBN0JOLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUExSEEsSUFBTztDQTJIakI7O0FBeUJMLEFBaENJLFdBZ0NPLEFBaENOLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUF2SEEsSUFBTztDQXdIakI7O0FBNEJMLEFBbkNJLGtCQW1DYyxBQW5DYixPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBakhBLElBQU87Q0FrSGpCOztBQStCTCxBQXRDSSxnQkFzQ1ksQUF0Q1gsT0FBTyxDQUFLO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQTlHQSxJQUFPO0NBK0dqQjs7QUFrQ0wsQUF6Q0ksWUF5Q1EsQUF6Q1AsT0FBTyxDQUFLO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQTNHQSxJQUFPO0NBNEdqQjs7QUFxQ0wsQUE1Q0ksY0E0Q1UsQUE1Q1QsT0FBTyxDQUFLO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQXhHQSxJQUFPO0NBeUdqQjs7QUF3Q0wsQUEvQ0ksbUJBK0NlLEFBL0NkLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUFyR0EsSUFBTztDQXNHakI7O0FBMkNMLEFBbERJLGdCQWtEWSxBQWxEWCxPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBbEdBLElBQU87Q0FtR2pCOztBQThDTCxBQXJESSxtQkFxRGUsQUFyRGQsT0FBTyxDQUFLO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQS9GQSxJQUFPO0NBZ0dqQjs7QUFpREwsQUF4REksYUF3RFMsQUF4RFIsT0FBTyxDQUFLO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQTVGQSxJQUFPO0NBNkZqQjs7QUFvREwsQUEzREksaUJBMkRhLEFBM0RaLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUF6RkEsSUFBTztDQTBGakI7O0FBdURMLEFBOURJLFNBOERLLEFBOURKLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUF0RkEsSUFBTztDQXVGakI7O0FBMERMLEFBakVJLHFCQWlFaUIsQUFqRWhCLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUFuRkEsSUFBTztDQW9GakI7O0FBNkRMLEFBcEVJLHNCQW9Fa0IsQUFwRWpCLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUFoRkEsSUFBTztDQWlGakI7O0FBZ0VMLEFBdkVJLFVBdUVNLEFBdkVMLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUE3RUEsSUFBTztDQThFakI7O0FBbUVMLEFBMUVJLGFBMEVTLEFBMUVSLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUExRUEsSUFBTztDQTJFakI7O0FBc0VMLEFBN0VJLGVBNkVXLEFBN0VWLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUF2RUEsSUFBTztDQXdFakI7O0FBeUVMLEFBaEZJLGlCQWdGYSxBQWhGWixPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBcEVBLElBQU87Q0FxRWpCOztBQTRFTCxBQW5GSSxjQW1GVSxBQW5GVCxPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBakVBLElBQU87Q0FrRWpCOztBQStFTCxBQXRGSSxXQXNGTyxBQXRGTixPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBOURBLElBQU87Q0ErRGpCOztBQWtGTCxBQXpGSSxVQXlGTSxBQXpGTCxPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBM0RBLElBQU87Q0E0RGpCOztBQXFGTCxBQTVGSSxXQTRGTyxBQTVGTixPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBeERBLElBQU87Q0F5RGpCOztBQXdGTCxBQS9GSSxlQStGVyxBQS9GVixPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBckRBLElBQU87Q0FzRGpCOztBQTJGTCxBQWxHSSxZQWtHUSxBQWxHUCxPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBbERBLElBQU87Q0FtRGpCOztBQThGTCxBQXJHSSxZQXFHUSxBQXJHUCxPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBL0NBLElBQU87Q0FnRGpCOztBQWlHTCxBQXhHSSxXQXdHTyxBQXhHTixPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBNUNBLElBQU87Q0E2Q2pCOztBQW9HTCxBQTNHSSxpQkEyR2EsQUEzR1osT0FBTyxDQUFLO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQXpDQSxJQUFPO0NBMENqQjs7QUF1R0wsQUE5R0ksa0JBOEdjLEFBOUdiLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUF0Q0EsSUFBTztDQXVDakI7O0FBMEdMLEFBakhJLGVBaUhXLEFBakhWLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUFuQ0EsSUFBTztDQW9DakI7O0FBNkdMLEFBcEhJLFVBb0hNLEFBcEhMLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUFoQ0EsSUFBTztDQWlDakI7O0FBZ0hMLEFBdkhJLFdBdUhPLEFBdkhOLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUE3QkEsSUFBTztDQThCakI7O0FBbUhMLEFBMUhJLFNBMEhLLEFBMUhKLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUExQkEsSUFBTztDQTJCakI7O0FBc0hMLEFBN0hJLGFBNkhTLEFBN0hSLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUF2QkEsSUFBTztDQXdCakI7O0FBeUhMLEFBaElJLFVBZ0lNLEFBaElMLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUFwQkEsSUFBTztDQXFCakI7O0FBNEhMLEFBbklJLFVBbUlNLEFBbklMLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUFqQkEsSUFBTztDQWtCakI7O0FBK0hMLEFBdElJLGFBc0lTLEFBdElSLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUFkQSxJQUFPO0NBZWpCOztBQWtJTCxBQXpJSSxTQXlJSyxBQXpJSixPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBcEhBLElBQU87Q0FxSGpCOztBQ3RLTDs7Z0ZBRWdGO0FBRWhGLEFBQUEsT0FBTyxDQUFDO0VMQ04sT0FBTyxFQUFDLFlBQVk7RUFDcEIsV0FBVyxFQUZnRCxHQUFHO0VBRzlELFVBQVUsRUFBRSxNQUFNO0VBQ2xCLGNBQWMsRUFBRSxNQUFNO0VBQ3RCLGNBQWMsRUFBRSxTQUFTO0VBQ3pCLE9BQU8sRUFOb0IsSUFBSSxDQUFVLElBQUk7RUF1QjdDLGdCQUFnQixFSFpWLE9BQU87RUdhYixLQUFLLEVIdEJFLElBQUk7RVFBWCxVQUFVLEVBQUUsNkJBQTZCO0NBSTFDOztBTENDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFS1AxQixBQUFBLE9BQU8sQ0FBQztJTFFKLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFDLElBQUk7R0tIYjs7O0FBTkQsQUxXRSxPS1hLLEFMV0osV0FBVyxDQUFDO0VBQ1gsS0FBSyxFQUFDLElBQUk7Q0FDWDs7QUtiSCxBTGNFLE9LZEssQUxjSixRQUFRLENBQUM7RUREUixXQUFXLEVDRUcsQ0FBQztFRERmLGNBQWMsRUNDQSxDQUFDO0VBQ2YsTUFBTSxFQUFDLElBQUk7RUFDWCxXQUFXLEVBQUMsSUFBSTtDQUNqQjs7QUtsQkgsQUFHRSxPQUhLLEFBR0osTUFBTSxDQUFDO0VBQ04sZ0JBQWdCLEVQVVYsT0FBK0I7Q09UdEM7O0FBR0gsdUJBQXVCO0FBQ3ZCLEFBQUEsa0JBQWtCLENBQUM7RU51U2pCLE9BQU8sRUFBRSxZQUFZO0VBQ3JCLGNBQWMsRUFBRSxNQUFNO0VBQ3RCLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxhQUFhO0VBQ3pDLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0I7Q014U3JDOztBTDRCQyxVQUFVLENBQVYscUJBQVU7RUFDUixNQUFNO0lBQ0osU0FBUyxFQUFFLGVBQWU7O0VBRTVCLE1BQU07SUFDSixTQUFTLEVBQUUsZ0JBQWdCOztFQUU3QixPQUFPO0lBQ0wsU0FBUyxFQUFFLGVBQWU7O0VBRTVCLEtBQUs7SUFDSCxTQUFTLEVBQUUsZ0JBQWdCOztFQUU3QixPQUFPO0lBQ0wsU0FBUyxFQUFFLGVBQWU7O0VBRTVCLEdBQUc7SUFDRCxTQUFTLEVBQUUsYUFBYTs7RUFFMUIsSUFBSTtJQUNGLFNBQVMsRUFBRSxhQUFhOzs7O0FBSTVCLEFBQUEsMkJBQTJCLENLdEQ3QixrQkFBa0IsQ0xzRGM7RUFDNUIsY0FBYyxFQUFFLHFCQUFxQjtFQUNyQyxrQkFBa0IsRUFBRSxFQUFFO0VBQ3RCLHlCQUF5QixFQUFFLFdBQVc7RUFDdEMseUJBQXlCLEVBQUUsQ0FBQztDQUM3Qjs7QUt2REgscUJBQXFCO0FBQ3JCLEFBQUEsZ0JBQWdCLENBQUM7RU5rU2YsT0FBTyxFQUFFLFlBQVk7RUFDckIsY0FBYyxFQUFFLE1BQU07RUFDdEIsU0FBUyxFQUFFLGdCQUFnQixDQUFDLGFBQWE7RUFDekMsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLGdCQUFnQjtFQ2xOcEMsY0FBYyxFQUFFLG1CQUFtQjtFQUNuQyxrQkFBa0IsRUFBRSxFQUFFO0VBQ3RCLHlCQUF5QixFQUFFLFdBQVc7RUFDdEMseUJBQXlCLEVBQUUsUUFBUTtDS3BGcEM7O0FMeURDLFVBQVUsQ0FBVixtQkFBVTtFQUNSLE1BQU07SUFDSixTQUFTLEVBQUUsZUFBZTs7RUFFNUIsTUFBTTtJQUNKLFNBQVMsRUFBRSxnQkFBZ0I7O0VBRTdCLE9BQU87SUFDTCxTQUFTLEVBQUUsZUFBZTs7RUFFNUIsS0FBSztJQUNILFNBQVMsRUFBRSxnQkFBZ0I7O0VBRTdCLE9BQU87SUFDTCxTQUFTLEVBQUUsZUFBZTs7RUFFNUIsR0FBRztJQUNELFNBQVMsRUFBRSxhQUFhOztFQUUxQixJQUFJO0lBQ0YsU0FBUyxFQUFFLGFBQWE7Ozs7QUsxRTlCLHFCQUFxQjtBQUNyQixBQUFBLGdCQUFnQixDQUFDO0VONFJmLE9BQU8sRUFBRSxZQUFZO0VBQ3JCLGNBQWMsRUFBRSxNQUFNO0VBQ3RCLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxhQUFhO0VBQ3pDLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0I7RUMxTXBDLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLG1CQUFtQixFQUFFLG1CQUFtQjtFQUN4QyxtQkFBbUIsRUFBRSxJQUFJO0NLckYxQjs7QUFGRCxBTHlGRSxnQkt6RmMsQUx5RmIsT0FBTyxDQUFDO0VBQ1AsT0FBTyxFQUFFLEVBQUU7RUFDWCxRQUFRLEVBQUUsUUFBUTtFQUNsQixPQUFPLEVBQUUsRUFBRTtFQUNYLEdBQUcsRUFBRSxDQUFDO0VBQ04sSUFBSSxFQUFFLENBQUM7RUFDUCxLQUFLLEVBQUUsQ0FBQztFQUNSLE1BQU0sRUFBRSxDQUFDO0VBQ1QsZ0JBQWdCLEVGdkdWLE9BQStCO0VFd0dyQyxTQUFTLEVBQUUsU0FBUztFQUNwQixnQkFBZ0IsRUFBRSxLQUFLO0VBQ3ZCLG1CQUFtQixFQUFFLFNBQVM7RUFDOUIsbUJBQW1CLEVBQUUsSUFBSTtFQUN6QiwwQkFBMEIsRUFBRSxRQUFRO0NBQ3JDOztBS3ZHSCxBTHlHRSxnQkt6R2MsQUx5R2IsTUFBTSxFS3pHVCxnQkFBZ0IsQUwwR2IsTUFBTSxFSzFHVCxnQkFBZ0IsQUwyR2IsT0FBTyxDQUFDO0VBQ1AsS0FBSyxFSDlIQSxJQUFJO0VHK0hULFlBQVksRUZuSE4sT0FBK0I7Q0V3SHRDOztBS2xISCxBTDhHSSxnQks5R1ksQUx5R2IsTUFBTSxBQUtKLE9BQU8sRUs5R1osZ0JBQWdCLEFMMEdiLE1BQU0sQUFJSixPQUFPLEVLOUdaLGdCQUFnQixBTDJHYixPQUFPLEFBR0wsT0FBTyxDQUFDO0VBQ1AsU0FBUyxFQUFFLFNBQVM7RUFDcEIsMEJBQTBCLEVBQUUsb0NBQW9DO0NBQ2pFOztBSzVHTCxBQUFBLGFBQWEsQ0FBQztFTHhCWixPQUFPLEVBQUMsWUFBWTtFQUNwQixXQUFXLEVBRmdELEdBQUc7RUFHOUQsVUFBVSxFQUFFLE1BQU07RUFDbEIsY0FBYyxFQUFFLE1BQU07RUFDdEIsY0FBYyxFQUFFLFNBQVM7RUFDekIsT0FBTyxFQU5vQixJQUFJLENBQVUsSUFBSTtFQTJJN0MsTUFBTSxFQUFDLHNCQUFzQjtFQUM3QixVQUFVLEVBQUUsNkJBQTZCO0NLOUcxQzs7QUx2QkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VLa0IxQixBQUFBLGFBQWEsQ0FBQztJTGpCVixPQUFPLEVBQUUsS0FBSztJQUNkLEtBQUssRUFBQyxJQUFJO0dLcUJiOzs7QUFMRCxBTGRFLGFLY1csQUxkVixXQUFXLENBQUM7RUFDWCxLQUFLLEVBQUMsSUFBSTtDQUNYOztBS1lILEFMWEUsYUtXVyxBTFhWLFFBQVEsQ0FBQztFRERSLFdBQVcsRUNFRyxDQUFDO0VERGYsY0FBYyxFQ0NBLENBQUM7RUFDZixNQUFNLEVBQUMsSUFBSTtFQUNYLFdBQVcsRUFBQyxJQUFJO0NBQ2pCOztBS09ILEFMb0hFLGFLcEhXLEFMb0hWLE1BQU0sQ0FBQztFQUNOLFVBQVUsRUFBRSxxQkFBcUI7RUFDakMsZ0JBQWdCLEVIN0lYLHdCQUFJO0NHOElWOztBS3ZISCxBQUVFLGFBRlcsQUFFVixnQkFBZ0IsQ0FBQztFTnFSbEIsT0FBTyxFQUFFLFlBQVk7RUFDckIsY0FBYyxFQUFFLE1BQU07RUFDdEIsU0FBUyxFQUFFLGdCQUFnQixDQUFDLGFBQWE7RUFDekMsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLGdCQUFnQjtFQzFNcEMsUUFBUSxFQUFFLFFBQVE7RUFDbEIsbUJBQW1CLEVBQUUsbUJBQW1CO0VBQ3hDLG1CQUFtQixFQUFFLElBQUk7Q0s5RXhCOztBQUpILEFMb0ZFLGFLcEZXLEFBRVYsZ0JBQWdCLEFMa0ZoQixPQUFPLENBQUM7RUFDUCxPQUFPLEVBQUUsRUFBRTtFQUNYLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE9BQU8sRUFBRSxFQUFFO0VBQ1gsR0FBRyxFQUFFLENBQUM7RUFDTixJQUFJLEVBQUUsQ0FBQztFQUNQLEtBQUssRUFBRSxDQUFDO0VBQ1IsTUFBTSxFQUFFLENBQUM7RUFDVCxnQkFBZ0IsRUg5R1Isd0JBQU87RUcrR2YsU0FBUyxFQUFFLFNBQVM7RUFDcEIsZ0JBQWdCLEVBQUUsS0FBSztFQUN2QixtQkFBbUIsRUFBRSxTQUFTO0VBQzlCLG1CQUFtQixFQUFFLElBQUk7RUFDekIsMEJBQTBCLEVBQUUsUUFBUTtDQUNyQzs7QUtsR0gsQUxvR0UsYUtwR1csQUFFVixnQkFBZ0IsQUxrR2hCLE1BQU0sRUtwR1QsYUFBYSxBQUVWLGdCQUFnQixBTG1HaEIsTUFBTSxFS3JHVCxhQUFhLEFBRVYsZ0JBQWdCLEFMb0doQixPQUFPLENBQUM7RUFDUCxLQUFLLEVIOUhBLElBQUk7RUcrSFQsWUFBWSxFSDFISix3QkFBTztDRytIaEI7O0FLN0dILEFMeUdJLGFLekdTLEFBRVYsZ0JBQWdCLEFMa0doQixNQUFNLEFBS0osT0FBTyxFS3pHWixhQUFhLEFBRVYsZ0JBQWdCLEFMbUdoQixNQUFNLEFBSUosT0FBTyxFS3pHWixhQUFhLEFBRVYsZ0JBQWdCLEFMb0doQixPQUFPLEFBR0wsT0FBTyxDQUFDO0VBQ1AsU0FBUyxFQUFFLFNBQVM7RUFDcEIsMEJBQTBCLEVBQUUsb0NBQW9DO0NBQ2pFOztBS3JHTCxBQUFBLFlBQVksQ0FBQztFTmRULFlBQVksRUNrSUEsSUFBSTtFRGpJaEIsYUFBYSxFQ2lJRCxJQUFJO0VBQ2xCLE9BQU8sRUFBQyxZQUFZO0VBQ3BCLE1BQU0sRUFBRSxJQUFJO0VBQ1osV0FBVyxFQUFDLElBQUk7RUFDaEIsU0FBUyxFQUFFLE1BQU07RUFDakIsV0FBVyxFQUFDLEdBQUc7RUFDZixjQUFjLEVBQUUsU0FBUztFQUN6QixnQkFBZ0IsRUh6SlQsSUFBSTtDUWdDWjs7QUwwSEMsQUFBQSxDQUFDLEdBQUksa0JBQU0sQ0FBQztFQUNWLFdBQVcsRUFBQyxJQUFJO0NBQ2pCOztBQUNELEFBQUEsUUFBUSxHQUFJLGtCQUFNLENBQUM7RUFDakIsV0FBVyxFQUFDLENBQUM7Q0FDZDs7QUFDQSxBSVBDLGtCSk9LLEFJUEosT0FBTyxDQUFLO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQXJHQSxJQUFPO0NBc0dqQjs7QUpBRixBSVBDLGtCSk9LLEFJUEosT0FBTyxDSlNDO0VBQ1AsU0FBUyxFQUFDLElBQUk7RUFDZCxjQUFjLEVBQUUsTUFBTTtDQUN2Qjs7QUtuSUwsQUFBQSxZQUFZLENBQUM7RUxuQ1gsT0FBTyxFQUFDLFlBQVk7RUFDcEIsV0FBVyxFQUZnRCxHQUFHO0VBRzlELFVBQVUsRUFBRSxNQUFNO0VBQ2xCLGNBQWMsRUFBRSxNQUFNO0VBQ3RCLGNBQWMsRUFBRSxTQUFTO0VBQ3pCLE9BQU8sRUFzS2dCLE1BQU0sQ0E1S1ksSUFBSTtFQTZLN0MsTUFBTSxFQUFDLEdBQUcsQ0FBQyxLQUFLLENIaEtMLE9BQU87Q1F5Qm5COztBTC9CQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUs2QjFCLEFBQUEsWUFBWSxDQUFDO0lMNUJULE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFDLElBQUk7R0s2QmI7OztBQUZELEFMekJFLFlLeUJVLEFMekJULFdBQVcsQ0FBQztFQUNYLEtBQUssRUFBQyxJQUFJO0NBQ1g7O0FLdUJILEFMdEJFLFlLc0JVLEFMdEJULFFBQVEsQ0FBQztFRERSLFdBQVcsRUNFRyxDQUFDO0VERGYsY0FBYyxFQ0NBLENBQUM7RUFDZixNQUFNLEVBQUMsSUFBSTtFQUNYLFdBQVcsRUFBQyxJQUFJO0NBQ2pCOztBS3NCSCxBQUFBLEtBQUssQ0FBQztFTFpKLFdBQVcsRUFBQyxHQUFHO0VBQ2YsZUFBZSxFQUFFLFNBQVM7Q0thM0I7O0FBRUQsQUFBQSxXQUFXLENBQUM7RUxYVixlQUFlLEVBQUUsU0FBUztFQUMxQixLQUFLLEVIdkJDLE9BQU87Q1FtQ2Q7O0FBRUQsQUFBQSxVQUFVLENBQUM7RUFDVCxXQUFXLEVBQUMsR0FBRztFQUNmLGVBQWUsRUFBRSxTQUFTO0VBQzFCLGNBQWMsRUFBRSxLQUFLO0VBQ3JCLEtBQUssRVJ6Q0MsT0FBTztFUTBDYixjQUFjLEVBQUUsU0FBUztFQUN6QixTQUFTLEVBQUMsSUFBSTtDQUNmOztBQUVELEFBQUEsV0FBVyxDQUFDO0VBQ1YsT0FBTyxFQUFDLFlBQVk7RUFDcEIsUUFBUSxFQUFDLE1BQU07RUFDZixXQUFXLEVBQUUsTUFBTTtFQUNuQixLQUFLLEVSbERDLE9BQU87RVFtRGIsY0FBYyxFQUFFLFNBQVM7RUFDekIsV0FBVyxFQUFFLEdBQUc7Q0FpQmpCOztBQXZCRCxBQU9FLFdBUFMsQ0FPVCxJQUFJLENBQUM7RUFFSCxPQUFPLEVBQUMsWUFBWTtDQWFyQjs7QUF0QkgsQURrR0ksV0NsR08sQ0FPVCxJQUFJLEFEMkZELE1BQU0sQ0FBTTtFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUFyR0EsSUFBTztDQXNHakI7O0FDL0ZELEFBQUEsU0FBUyxDQVZiLFdBQVcsQ0FPVCxJQUFJLENBR1U7RUFDVixVQUFVLEVBQUUsc0JBQXNCO0VBQ2xDLFNBQVMsRUFBRSw4QkFBOEI7Q0FJMUM7O0FBTkQsQUFHRSxTQUhPLENBVmIsV0FBVyxDQU9ULElBQUksQUFNQyxNQUFNLENBQUM7RUFDTixTQUFTLEVBQUUsYUFBYTtDQUN6Qjs7QUFmUCxBRGtHSSxXQ2xHTyxDQU9ULElBQUksQUQyRkQsTUFBTSxDQ2pGQztFQUNOLFdBQVcsRUFBQyxHQUFHO0VBQ2YsY0FBYyxFQUFFLE1BQU07RUFDdEIsU0FBUyxFQUFDLElBQUk7Q0FDZjs7QUNsRkw7O2dGQUVnRjtBbEI2QmhGLEFBQUEsS0FBSyxDa0JiQztFQUNKLE1BQU0sRUFBQyxPQUFPO0NBSWY7O0FBTEQsQUFFRSxLQUZHLEFBRUYsTUFBTSxDQUFDO0VBWlIsT0FBTyxFQUFFLEtBQUs7RUFDZCxVQUFVLEVBQUMsTUFBTTtFQUNqQixLQUFLLEVUYVEsT0FBTztFU1pwQixXQUFXLEVBQUMsR0FBRztFQUNmLFVBQVUsRUFBQyxNQUFNO0VBQ2pCLFNBQVMsRUFBRSxNQUFNO0VBQ2pCLFlBQVksRUFBQyxJQUFJO0NBUWhCOztBQUdILEFBQUEsU0FBUyxDQUFDO0VQUk4sV0FBVyxFT1NDLElBQUk7RVBSaEIsY0FBYyxFT1FGLElBQUk7Q0FJbkI7O0FBTEQsQUFFRSxTQUZPLEdBQVQsU0FBUyxDQUVEO0VBQ0osVUFBVSxFQUFDLEdBQUcsQ0FBQyxLQUFLLENUbEJqQixPQUFPO0NTbUJYOztBQUdILEFBQUEsV0FBVyxDQUFDO0VBQ1YsV0FBVyxFQUFDLEdBQUc7RUFDZixTQUFTLEVSMUJELFVBQThCO0NRK0J2Qzs7QUFQRCxBQUdFLFdBSFMsQ0FHVCxRQUFRLENBQUM7RUFDUCxTQUFTLEVBQUMsS0FBSztFQUNmLE9BQU8sRUFBRSxZQUFZO0NBQ3RCOztBbEJtZ0JILEFBNEJJLGdCQTVCWSxDQTRCWixjQUFjLENrQjNoQkQ7RUFDYixXQUFXLEVBQUMsR0FBRztFQUNmLFVBQVUsRUFBQyxJQUFJO0VBQ2YsV0FBVyxFQUFFLElBQUk7Q0FDbEI7O0FBR0gsQUFBQSxVQUFVLENBQUM7RUFDVCxPQUFPLEVBQUMsS0FBSztFQUNiLFVBQVUsRUFBQyxNQUFNO0VBQ2pCLFlBQVksRUFBQyxJQUFJO0VBQ2pCLFNBQVMsRUFBQyxNQUFNO0VBQ2hCLFVBQVUsRUFBQyxNQUFNO0NBQ2xCOztBbEIwREQsQUFBQSxhQUFhLENrQmpEQztFQU5aLFNBQVMsRUFBQyxJQUFJO0VBQ2QsT0FBTyxFQUFFLFNBQVM7RUFDbEIsTUFBTSxFQUFFLElBQUk7RUFDWixXQUFXLEVBeERPLE9BQVM7RUE2RDNCLEtBQUssRVQzREUsSUFBSTtFUzREWCxZQUFZLEVBL0RNLE9BQU87RUFnRXpCLFVBQVUsRUFBQyxJQUFJO0NBeUJoQjs7QWxCb0JELEFwQk5FLGFvQk1XLEFwQk5WLDJCQUEyQixDK0JoREc7RU9XN0IsS0FBSyxFVC9EQSxJQUFJO0NFb0RrQzs7QVhzRC9DLEFwQlhFLGFvQldXLEFwQlhWLGtCQUFrQixDK0IxQ0c7RU9VcEIsS0FBSyxFVC9EQSxJQUFJO0NFcUR5Qjs7QVhxRHRDLEFwQlBFLGFvQk9XLEFwQlBWLHNCQUFzQixDK0I3Q0c7RU9TeEIsS0FBSyxFVC9EQSxJQUFJO0NFc0Q2Qjs7QU9HMUMsQVBGSSxhT0VTLEFQRlIsaUJBQWlCLENBQUM7RU9RbkIsS0FBSyxFVC9EQSxJQUFJO0NFdUR3Qjs7QVhtRHJDLEFiekRFLGFheURXLEFiekRWLE1BQU0sQytCZ0JDO0VBQ04sT0FBTyxFQUFFLElBQUk7RUFDYixZQUFZLEVUM0RSLE9BQU87RVM0RFgsVUFBVSxFQUFDLElBQUk7Q0FJaEI7O0FBZkgsQVBMSSxhT0tTLEFBUVYsTUFBTSxBUGJKLDJCQUEyQixDQUFDO0VPa0IzQixLQUFLLEVUdEVGLGtCQUFJO0NFb0RrQzs7QU9LL0MsQVBKSSxhT0lTLEFBUVYsTUFBTSxBUFpKLGtCQUFrQixDQUFDO0VPaUJsQixLQUFLLEVUdEVGLGtCQUFJO0NFcUR5Qjs7QU9JdEMsQVBISSxhT0dTLEFBUVYsTUFBTSxBUFhKLHNCQUFzQixDQUFDO0VPZ0J0QixLQUFLLEVUdEVGLGtCQUFJO0NFc0Q2Qjs7QU9HMUMsQVBGSSxhT0VTLEFBUVYsTUFBTSxBUFZKLGlCQUFpQixDQUFDO0VPZWpCLEtBQUssRVR0RUYsa0JBQUk7Q0V1RHdCOztBT0VyQyxBQWdCRSxhQWhCVyxBQWdCVix1QkFBdUIsQ0FBQztFQUN2QixZQUFZLEVUMURELE9BQU8sQ1MwRE8sVUFBVTtDQUNwQzs7QUFDRCxBQUFBLE1BQU0sQ0FuQlIsYUFBYSxDQW1CRjtFQUNQLFlBQVksRVQ3REQsT0FBTztDUzhEbkI7O0FBQ0QsQUFBQSxRQUFRLENBdEJWLGFBQWEsQ0FzQkE7RUFDVCxZQUFZLEVUL0RDLE9BQU87Q1NnRXJCOztBQUNELEFBQUEsYUFBYSxDQXpCZixhQUFhLENBeUJLO0VBQ2QsT0FBTyxFQUFDLEdBQUc7RUFDWCxNQUFNLEVBQUMsSUFBSTtDQUNaOztBQUdILEFBQUEsdUJBQXVCLENBQUM7RUF2RnRCLE9BQU8sRUFBRSxLQUFLO0VBQ2QsVUFBVSxFQUFDLE1BQU07RUFDakIsS0FBSyxFVGFRLE9BQU87RVNacEIsV0FBVyxFQUFDLEdBQUc7RUFDZixVQUFVLEVBQUMsTUFBTTtFQUNqQixTQUFTLEVBQUUsTUFBTTtFQUNqQixZQUFZLEVBQUMsSUFBSTtDQW1GbEI7O0FBRUQsQUFBQSx1QkFBdUIsQ0FBQztFQUN0QixLQUFLLEVUN0VRLE9BQU87RVM4RXBCLGFBQWEsRUFBQyxJQUFJO0NBUW5COztBQVZELEFBR0UsdUJBSHFCLENBR3JCLElBQUksQ0FBQztFQUNILE9BQU8sRUFBQyxLQUFLO0VBQ2IsYUFBYSxFQUFDLEdBQUc7Q0FDbEI7O0FBTkgsQVA4T0UsdUJPOU9xQixDQU9yQixFQUFFLENQdU9GLEVBQUUsQ0FBQztFQUNELFdBQVcsRUFBRSxLQUFLO0VBQ2xCLFFBQVEsRUFBRSxRQUFRO0NBWW5COztBTzVQSCxBUGlQSSx1Qk9qUG1CLENBT3JCLEVBQUUsQ1B1T0YsRUFBRSxBQUdDLE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBRSxFQUFFO0VBQ1gsT0FBTyxFQUFFLEtBQUs7RUFDZCxLQUFLLEVBQUUsS0FBSztFQUNaLE1BQU0sRUFBRSxLQUFLO0VBQ2IsYUFBYSxFQUFFLEdBQUc7RUFDbEIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsZ0JBQWdCLEVGcFZiLElBQUk7RUVxVlAsZ0JBQWdCLEVBQUUsWUFBWTtFQUM5QixHQUFHLEVBQUUsS0FBSztDQUNYOztBTy9PTCxBQUFBLHlCQUF5QixDQUFDO0VBQ3pCLEtBQUssRUFBQyxPQUFPO0VBQ1YsT0FBTyxFQUFDLElBQUk7Q0FDZjs7QUFHRCxBQUFBLGFBQWEsQ0FBQztFQUNaLFNBQVMsRUFBQyxNQUFNO0NBQ2pCOztBQUVELEFBQUEsbUJBQW1CLENBQUM7RUFDbEIsT0FBTyxFQUFDLFdBQVc7RUFDbkIsTUFBTSxFQUFFLElBQUk7RUFDWixTQUFTLEVBQUUsTUFBTTtFQUNqQixNQUFNLEVBQUUsSUFBSTtFQUNaLFdBQVcsRUFBQyxHQUFHO0VBQ2YsY0FBYyxFQUFFLFNBQVM7RUFDekIsS0FBSyxFQUFFLElBQUk7RUFDWCxnQkFBZ0IsRVQzSFQsSUFBSTtFUzRIWCxhQUFhLEVBQUMsQ0FBQztDQVNoQjs7QUFsQkQsQVA5REksbUJPOERlLEFQOURkLDJCQUEyQixDQUFDO0VPeUU3QixLQUFLLEVUN0hBLElBQUk7RVM4SFQsU0FBUyxFQUFFLE1BQU07RUFDakIsV0FBVyxFQUFDLEdBQUc7Q1AzRTRCOztBTzhEL0MsQVA3REksbUJPNkRlLEFQN0RkLGtCQUFrQixDQUFDO0VPd0VwQixLQUFLLEVUN0hBLElBQUk7RVM4SFQsU0FBUyxFQUFFLE1BQU07RUFDakIsV0FBVyxFQUFDLEdBQUc7Q1AxRW1COztBTzZEdEMsQVA1REksbUJPNERlLEFQNURkLHNCQUFzQixDQUFDO0VPdUV4QixLQUFLLEVUN0hBLElBQUk7RVM4SFQsU0FBUyxFQUFFLE1BQU07RUFDakIsV0FBVyxFQUFDLEdBQUc7Q1B6RXVCOztBTzREMUMsQVAzREksbUJPMkRlLEFQM0RkLGlCQUFpQixDQUFDO0VPc0VuQixLQUFLLEVUN0hBLElBQUk7RVM4SFQsU0FBUyxFQUFFLE1BQU07RUFDakIsV0FBVyxFQUFDLEdBQUc7Q1B4RWtCOztBTzBFbkMsQUFBQSxNQUFNLENBZlIsbUJBQW1CLENBZVQ7RUFDTixTQUFTLEVSaklILFVBQThCO0NRa0lyQzs7QUFNQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFGNUIsQUFDRSxhQURXLEVBQ1gsQUFBQSxLQUFDLEVBQU8sTUFBTSxBQUFiLEtBQWlCLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixFQUFlO0lBRTlCLFVBQVUsRUFBRSxJQUFJO0dBRW5COzs7QUFMSCxBQU1FLGFBTlcsQ0FNWCxJQUFJLEdBQUcsSUFBSSxDQUFDO0VBQ1YsVUFBVSxFQUFFLElBQUk7Q0FDakI7O0FBSUgsQUFBQSxZQUFZLENBQUM7RUFDWCxrQkFBa0IsRUFBRSxJQUFJO0VBQ3hCLFFBQVEsRUFBQyxRQUFRO0VBQ2pCLGdCQUFnQixFQUFDLG9DQUFvQztFQUNyRCxtQkFBbUIsRUFBRSxpQkFBaUIsQ0FBQyxHQUFHO0VBQzFDLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGFBQWEsRUFBRSxJQUFJO0NBRXBCOztBQUNELEFBQUEsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLE1BQU0sQUFBWCxDQUFZLGFBQWEsQUFBQSxZQUFZLENBQUE7RUFDekMsV0FBVyxFQS9KTyxPQUFTO0NBZ0s1Qjs7QUFHRCxBQUFBLFlBQVksQ0FBQztFQUNYLE9BQU8sRUFBQyxZQUFZO0NBSXJCOztBQUxELEFBRUUsWUFGVSxHQUFaLFlBQVksQ0FFSjtFQUNKLFdBQVcsRUFBQyxJQUFJO0NBQ2pCOztBQUlILEFBQUEsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELEtBQUMsQUFBQSxDQUFXLE1BQU0sQ0FBQztFQUN0QixPQUFPLEVBQUUsSUFBSTtDQW1EZDs7QUFwREQsQUFFRSxLQUZHLENBQUEsQUFBQSxJQUFDLENBQUQsS0FBQyxBQUFBLENBQVcsTUFBTSxHQUVuQixLQUFLLENBQUM7RUFDTixRQUFRLEVBQUUsUUFBUTtFQUNsQixZQUFZLEVBQUUsSUFBSTtFQUNsQixjQUFjLEVBQUUsR0FBRztFQUNuQixXQUFXLEVBQUUsTUFBTTtFQUNuQixNQUFNLEVBQUMsT0FBTztDQXVCZjs7QUE5QkgsQUFRSSxLQVJDLENBQUEsQUFBQSxJQUFDLENBQUQsS0FBQyxBQUFBLENBQVcsTUFBTSxHQUVuQixLQUFLLEFBTUosT0FBTyxFQVJaLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxLQUFDLEFBQUEsQ0FBVyxNQUFNLEdBRW5CLEtBQUssQUFPSixNQUFNLENBQUM7RUFDTixPQUFPLEVBQUUsRUFBRTtFQUNYLE9BQU8sRUFBRSxLQUFLO0VBQ2QsUUFBUSxFQUFFLFFBQVE7RUFDbEIsYUFBYSxFQUFDLEdBQUc7Q0FDbEI7O0FBZEwsQUFlSSxLQWZDLENBQUEsQUFBQSxJQUFDLENBQUQsS0FBQyxBQUFBLENBQVcsTUFBTSxHQUVuQixLQUFLLEFBYUosT0FBTyxDQUFDO0VBQ1AsTUFBTSxFQUFFLE9BQU87RUFDZixHQUFHLEVBQUUsR0FBRztFQUNSLElBQUksRUFBRSxDQUFDO0VBQ1AsTUFBTSxFQUFFLElBQUk7RUFDWixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxHQUFHLENBQUMsS0FBSyxDQWpNSCxPQUFPO0NBa010Qjs7QUF0QkwsQUF1QkksS0F2QkMsQ0FBQSxBQUFBLElBQUMsQ0FBRCxLQUFDLEFBQUEsQ0FBVyxNQUFNLEdBRW5CLEtBQUssQUFxQkosTUFBTSxDQUFDO0VBQ04sR0FBRyxFQUFFLEdBQUc7RUFDUixJQUFJLEVBQUUsR0FBRztFQUNULE1BQU0sRUFBRSxJQUFJO0VBQ1osS0FBSyxFQUFFLElBQUk7RUFDWCxXQUFXLEVBQUUsSUFBSTtDQUNsQjs7QUE3QkwsQUFnQ0ksS0FoQ0MsQ0FBQSxBQUFBLElBQUMsQ0FBRCxLQUFDLEFBQUEsQ0FBVyxNQUFNLEFBK0JwQixXQUFXLEdBQ1IsS0FBSyxDQUFDO0VBQ04sWUFBWSxFQUFFLENBQUM7RUFDZixhQUFhLEVBQUUsSUFBSTtDQVNwQjs7QUEzQ0wsQUFtQ00sS0FuQ0QsQ0FBQSxBQUFBLElBQUMsQ0FBRCxLQUFDLEFBQUEsQ0FBVyxNQUFNLEFBK0JwQixXQUFXLEdBQ1IsS0FBSyxBQUdKLE9BQU8sQ0FBQztFQUNQLElBQUksRUFBRSxJQUFJO0VBQ1YsS0FBSyxFQUFFLENBQUM7Q0FDVDs7QUF0Q1AsQUF1Q00sS0F2Q0QsQ0FBQSxBQUFBLElBQUMsQ0FBRCxLQUFDLEFBQUEsQ0FBVyxNQUFNLEFBK0JwQixXQUFXLEdBQ1IsS0FBSyxBQU9KLE1BQU0sQ0FBQztFQUNOLElBQUksRUFBRSxJQUFJO0VBQ1YsS0FBSyxFQUFFLEdBQUc7Q0FDWDs7QUExQ1AsQUErQ00sS0EvQ0QsQ0FBQSxBQUFBLElBQUMsQ0FBRCxLQUFDLEFBQUEsQ0FBVyxNQUFNLEFBNkNwQixRQUFRLEdBQ0wsS0FBSyxBQUNKLE1BQU0sQ0FBQztFQUNOLGdCQUFnQixFVGpOaEIsT0FBTztDU2tOUjs7QUFLUCxBQUFBLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxLQUFDLEFBQUEsQ0FBVyxZQUFZLENBQUM7RUFDNUIsT0FBTyxFQUFFLElBQUk7Q0FlZDs7QUFoQkQsQUFFRSxLQUZHLENBQUEsQUFBQSxJQUFDLENBQUQsS0FBQyxBQUFBLENBQVcsWUFBWSxHQUV6QixLQUFLLENBQUM7RUE5S1IsU0FBUyxFQUFDLElBQUk7RUFDZCxPQUFPLEVBQUUsU0FBUztFQUNsQixNQUFNLEVBQUUsSUFBSTtFQUNaLFdBQVcsRUF4RE8sT0FBUztFQXFPekIsT0FBTyxFQUFDLFlBQVk7RUFDcEIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENBdk9ELE9BQU87RUF3T3ZCLGFBQWEsRUFBQyxHQUFHO0VBQ2pCLFNBQVMsRUFBQyxJQUFJO0VBQ2QsVUFBVSxFQUFDLE1BQU07Q0FDbEI7O0FBVEgsQUFXSSxLQVhDLENBQUEsQUFBQSxJQUFDLENBQUQsS0FBQyxBQUFBLENBQVcsWUFBWSxBQVUxQixRQUFRLEdBQ0wsS0FBSyxDQUFDO0VBQ04sZ0JBQWdCLEVUbk9kLE9BQU87RVNvT1QsS0FBSyxFVDdPRixJQUFJO0NTOE9SOztBQUlMLEFBQUEsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELFFBQUMsQUFBQSxDQUFjLFNBQVMsQ0FBQztFQUM1QixPQUFPLEVBQUUsSUFBSTtDQWtEZDs7QUFuREQsQUFFRSxLQUZHLENBQUEsQUFBQSxJQUFDLENBQUQsUUFBQyxBQUFBLENBQWMsU0FBUyxHQUV6QixLQUFLLENBQUM7RUFDTixRQUFRLEVBQUUsUUFBUTtFQUNsQixZQUFZLEVBQUUsSUFBSTtFQUNsQixjQUFjLEVBQUUsR0FBRztFQUNuQixXQUFXLEVBQUUsTUFBTTtFQUNuQixNQUFNLEVBQUMsT0FBTztDQXNCZjs7QUE3QkgsQUZ6RkksS0V5RkMsQ0FBQSxBQUFBLElBQUMsQ0FBRCxRQUFDLEFBQUEsQ0FBYyxTQUFTLEdBRXpCLEtBQUssQUYzRkosTUFBTSxDQUFNO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQTFIQSxJQUFPO0NBMkhqQjs7QUVrRkwsQUFTSSxLQVRDLENBQUEsQUFBQSxJQUFDLENBQUQsUUFBQyxBQUFBLENBQWMsU0FBUyxHQUV6QixLQUFLLEFBT0osT0FBTyxFQVRaLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxRQUFDLEFBQUEsQ0FBYyxTQUFTLEdBRXpCLEtBQUssQUFRSixNQUFNLENBQUM7RUFDTixPQUFPLEVBQUUsS0FBSztFQUNkLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxHQUFHO0VBQ1IsSUFBSSxFQUFFLENBQUM7RUFDUCxNQUFNLEVBQUUsSUFBSTtFQUNaLEtBQUssRUFBRSxJQUFJO0NBQ1o7O0FBakJMLEFBa0JJLEtBbEJDLENBQUEsQUFBQSxJQUFDLENBQUQsUUFBQyxBQUFBLENBQWMsU0FBUyxHQUV6QixLQUFLLEFBZ0JKLE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBRSxFQUFFO0VBQ1gsTUFBTSxFQUFFLE9BQU87RUFDZixNQUFNLEVBQUUsR0FBRyxDQUFDLEtBQUssQ1Q5UGYsT0FBTztDUytQVjs7QUF0QkwsQUZ6RkksS0V5RkMsQ0FBQSxBQUFBLElBQUMsQ0FBRCxRQUFDLEFBQUEsQ0FBYyxTQUFTLEdBRXpCLEtBQUssQUYzRkosTUFBTSxDRWdIQztFQUNOLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFNBQVMsRUFBRSxNQUFNO0VBQ2pCLEtBQUssRUFBRSxXQUFXO0VBQ2xCLFdBQVcsRUFBRSxJQUFJO0NBQ2xCOztBQUNGLEFBRUMsQ0FGQSxDQTdCSixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsUUFBQyxBQUFBLENBQWMsU0FBUyxBQThCMUIsV0FBVyxHQUNSLEtBQUssQ0FBQztFQUNOLFlBQVksRUFBRSxDQUFDO0VBQ2YsYUFBYSxFQUFFLElBQUk7Q0FTcEI7O0FBYkYsQUFLRyxDQUxGLENBN0JKLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxRQUFDLEFBQUEsQ0FBYyxTQUFTLEFBOEIxQixXQUFXLEdBQ1IsS0FBSyxBQUdKLE9BQU8sQ0FBQztFQUNQLElBQUksRUFBRSxJQUFJO0VBQ1YsS0FBSyxFQUFFLENBQUM7Q0FDVDs7QUFSSixBQVNHLENBVEYsQ0E3QkosS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELFFBQUMsQUFBQSxDQUFjLFNBQVMsQUE4QjFCLFdBQVcsR0FDUixLQUFLLEFBT0osTUFBTSxDQUFDO0VBQ04sSUFBSSxFQUFFLElBQUk7RUFDVixLQUFLLEVBQUUsQ0FBQztDQUNUOztBQXpDUCxBQThDTSxLQTlDRCxDQUFBLEFBQUEsSUFBQyxDQUFELFFBQUMsQUFBQSxDQUFjLFNBQVMsQUE0QzFCLFFBQVEsR0FDTCxLQUFLLEFBQ0osTUFBTSxDQUFDO0VBQ04sS0FBSyxFVHhSTCxPQUFPO0NTeVJSOztBcEJpRFAsQUFBQSxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssUUFBUSxBQUFiLENBQWMsMkJBQTJCO0FBQy9DLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxRQUFRLEFBQWIsQ0FBYywyQkFBMkIsQ29CMUNEO0VBQzVDLGtCQUFrQixFQUFFLElBQUk7RUFDeEIsTUFBTSxFQUFFLENBQUM7Q0FDVjs7QWR2T0QsQUFBQSxrQkFBa0IsQ2N3T0M7RUFDakIsZ0JBQWdCLEVUL1NULElBQUk7RVNnVFgsWUFBWSxFQWxUTSxPQUFPO0VBbVR6QixTQUFTLEVBQUMsSUFBSTtFQUNkLE1BQU0sRUFBQyxPQUFPO0NBQ2Y7O0FwQmtGRCxBQUFBLFFBQVEsQ29CL0VDO0VBQ1AsTUFBTSxFQUFFLFFBQVE7Q0FDakI7O0FBSUQsQUFDRSxhQURXLEdBQWIsYUFBYSxDQUNMO0VBQ0osVUFBVSxFQUFDLElBQUk7Q0FDaEI7O0FBQ0EsQUFBRCxxQkFBUyxDQUFDO0VBQ1IsT0FBTyxFQUFDLEtBQUs7RUFDYixLQUFLLEVBQUMsSUFBSTtFQUNWLGFBQWEsRUFBQyxHQUFHLENBQUMsS0FBSyxDVC9UcEIsT0FBTztFU2dVVixhQUFhLEVBQUMsSUFBSTtDQUluQjs7QUFIQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFMeEIsQUFBRCxxQkFBUyxDQUFDO0lBTU4sT0FBTyxFQUFDLEtBQUs7R0FFaEI7OztBQUNBLEFBQUQsMkJBQWUsQ0FBQztFQUNkLE9BQU8sRUFBQyxVQUFVO0VBQ2xCLFNBQVMsRUFBQyxJQUFJO0VBQ2QsV0FBVyxFQUFDLEdBQUc7RUFDZixLQUFLLEVUcFVELE9BQU87Q1N3VVo7O0FBSEMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBTHhCLEFBQUQsMkJBQWUsQ0FBQztJQU1aLE9BQU8sRUFBQyxLQUFLO0dBRWhCOzs7QUFDQSxBQUFELDBCQUFjLENBQUM7RUFDYixPQUFPLEVBQUMsVUFBVTtFQUNsQixVQUFVLEVBQUMsS0FBSztDQU1qQjs7QUFMQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFIeEIsQUFBRCwwQkFBYyxDQUFDO0lBSVgsVUFBVSxFQUFDLElBQUk7SUFDZixPQUFPLEVBQUMsS0FBSztJQUNiLGFBQWEsRUFBQyxJQUFJO0dBRXJCOzs7QUFDQSxBQUFELHVCQUFXLENBQUM7RVAzVlYsVUFBVSxFTzRWSSxJQUFJO0VQM1ZsQixhQUFhLEVPMlZPLElBQUk7RUFDeEIsV0FBVyxFQUFDLEdBQUc7RUFDZixTQUFTLEVBQUMsTUFBTTtDQUNqQjs7QUFJSCxBQUFBLFdBQVcsQ0FBQztFQUNWLGdCQUFnQixFVHBXVCxJQUFJO0VTcVdYLE9BQU8sRUFBQyxZQUFZO0VBQ3BCLE9BQU8sRUFBQyxNQUFNO0NBb0NmOztBQW5DRSxBQUFELHVCQUFhLENBQUM7RUFDWixPQUFPLEVBQUMsWUFBWTtFQUNwQixjQUFjLEVBQUUsTUFBTTtFUHpWdEIsWUFBWSxFTzBWRSxJQUFJO0VQelZsQixhQUFhLEVPeVZDLElBQUk7RUFDbEIsUUFBUSxFQUFDLFFBQVE7RUFDakIsVUFBVSxFQUFFLElBQUk7Q0FpQmpCOztBQWZHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQVAzQixBQU1DLHVCQU5XLEdBQVosdUJBQVksQUFNTixPQUFPLENBQUM7SUFFVCxPQUFPLEVBQUMsRUFBRTtJQUNWLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLE9BQU8sRUFBQyxLQUFLO0lBQ2IsZ0JBQWdCLEVUalhmLElBQUk7SVNrWEwsS0FBSyxFQUFDLEdBQUc7SUFDVCxNQUFNLEVBQUMsSUFBSTtJQUNYLEdBQUcsRUFBQyxDQUFDO0lBQ0wsSUFBSSxFQUFDLElBQUk7R0FFWjs7O0FBQ0QsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBbEJ6QixBQUFELHVCQUFhLENBQUM7SUFtQlYsT0FBTyxFQUFDLEtBQUs7SVAvV2YsV0FBVyxFT2dYSyxNQUFNO0lQL1d0QixjQUFjLEVPK1dFLE1BQU07R0FFdkI7OztBQUNBLEFBQUQsa0JBQVEsQ0FBQztFQUNQLE9BQU8sRUFBQyxLQUFLO0VBQ2IsVUFBVSxFQUFDLElBQUk7RUFDZixLQUFLLEVUNVhHLE9BQU87RVM2WGYsV0FBVyxFQUFDLEdBQUc7RUFDZixTQUFTLEVBQUMsTUFBTTtDQUNqQjs7QUFFQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEekIsQUFBRCxtQkFBUyxDQUFDO0lBRU4sS0FBSyxFQUFDLElBQUk7R0FFYjs7O0FBSUgsQUFBQSxlQUFlLENBQUM7RUFDZCxLQUFLLEVBQUMsSUFBSTtDQUNYOztBQ3JaRDs7Z0ZBRWdGO0FBRWhGLEFBQUEsR0FBRyxDQUFDO0VBQ0YsT0FBTyxFQUFDLEtBQUs7RUFDYixTQUFTLEVBQUMsSUFBSTtFQUNkLFdBQVcsRUFBQyxHQUFHO0VBQ2YsV0FBVyxFQUFDLEdBQUc7RUFDZixhQUFhLEVBQUMsTUFBTTtDQUlyQjs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFOMUIsQUFBQSxHQUFHLENBQUM7SUFPQSxTQUFTLEVUSEgsVUFBOEI7R1NLdkM7OztBQUVELEFBQUEsU0FBUyxDQUFDO0VBQ1IsT0FBTyxFQUFDLEtBQUs7RUFDYixTQUFTLEVBQUMsSUFBSTtFQUNkLFdBQVcsRUFBQyxHQUFHO0VBQ2YsV0FBVyxFQUFDLEdBQUc7Q0FJaEI7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBTDFCLEFBQUEsU0FBUyxDQUFDO0lBTU4sU0FBUyxFVGJILFVBQThCO0dTZXZDOzs7QUFFRCxBQUFBLFNBQVMsQ0FBQztFQUNSLFdBQVcsRVZJSSxVQUFVLEVBQUUsS0FBSztFVUhoQyxTQUFTLEVBQUMsSUFBSTtFQUNkLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLGFBQWEsRUFBQyxJQUFJO0NBSW5COztBQUhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUwxQixBQUFBLFNBQVMsQ0FBQztJQU1OLFNBQVMsRVR2QkgsVUFBOEI7R1N5QnZDOzs7QUFHRCxBQUFBLFdBQVcsQ0FBQztFQUNWLFVBQVUsRUFBQyxNQUFNO0VBQ2pCLGFBQWEsRUFBQyxJQUFJO0NBQ25COztBQUVELEFBQUEsUUFBUSxDQUFDO0VBQ1AsVUFBVSxFQUFDLE1BQU07RUFDakIsVUFBVSxFVlJHLElBQUk7Q1VTbEI7O0FBRUQsQUFBQSxZQUFZLENBQUM7RUFDWCxVQUFVLEVBQUMsQ0FBQztDQUNiOztBQUVELEFBQUEsV0FBVyxDQUFDO0VBQ1YsS0FBSyxFVnBDQyxPQUFPO0VVcUNiLGNBQWMsRUFBRSxTQUFTO0VBQ3pCLFdBQVcsRUFBQyxHQUFHLENBQUMsS0FBSyxDVnRDZixPQUFPO0VVdUNiLFlBQVksRUFBQyxNQUFNO0VBQ25CLFdBQVcsRUFBRSxHQUFHO0NBQ2pCOztBQUVELEFBQUEsTUFBTSxDQUFDO0VBRUwsT0FBTyxFQUFDLFlBQVk7Q0E4QnJCOztBQWhDRCxBMUI3Q0UsTTBCNkNJLEExQjdDSCxPQUFPLEUwQjZDVixNQUFNLEExQjVDSCxNQUFNLENBQUM7RUFDTixPQUFPLEVBQUUsR0FBRztFQUNaLE9BQU8sRUFBRSxLQUFLO0NBQ2Y7O0EwQnlDSCxBMUJ4Q0UsTTBCd0NJLEExQnhDSCxNQUFNLENBQUM7RUFDTixLQUFLLEVBQUUsSUFBSTtDQUNaOztBMEJzQ0gsQUFHRSxNQUhJLEdBR0EsRUFBRSxDQUFDO0VBQ0wsS0FBSyxFQUFDLElBQUk7RUFDVixRQUFRLEVBQUMsUUFBUTtFQUNqQixVQUFVLEVBQUMsTUFBTTtDQXlCbEI7O0FBL0JILEFBUU0sTUFSQSxHQUdBLEVBQUUsR0FJQSxFQUFFLEFBQ0gsT0FBTyxDQUFDO0VBQ1AsT0FBTyxFQUFDLEVBQUU7RUFDVixRQUFRLEVBQUUsUUFBUTtFQUNsQixPQUFPLEVBQUMsS0FBSztFQUNiLGdCQUFnQixFVi9EZixJQUFJO0VVZ0VMLEtBQUssRUFBQyxHQUFHO0VBQ1QsTUFBTSxFQUFDLE1BQU07RUFDYixHQUFHLEVBQUMsR0FBRztFQUNQLFNBQVMsRUFBRSxnQkFBZ0I7Q0FDNUI7O0FBakJQLEFBbUJJLE1BbkJFLEdBR0EsRUFBRSxDQWdCSixDQUFDLENBQUM7RVJ2REYsWUFBWSxFUXdESSxNQUFNO0VSdkR0QixhQUFhLEVRdURHLE1BQU07RUFDcEIsU0FBUyxFQUFDLElBQUk7RUFDZCxXQUFXLEVBQUMsR0FBRztDQVFoQjs7QUE5QkwsQUF1Qk0sTUF2QkEsR0FHQSxFQUFFLENBZ0JKLENBQUMsQUFJRSxNQUFNLEVBdkJiLE1BQU0sR0FHQSxFQUFFLENBZ0JKLENBQUMsQUFLRSxPQUFPLENBQUM7RUFDUCxLQUFLLEVWcEVMLE9BQU87Q1V3RVI7O0FBSEMsQUFBQSxTQUFTLENBMUJqQixNQUFNLEdBR0EsRUFBRSxDQWdCSixDQUFDLEFBSUUsTUFBTSxFQUdMLFNBQVMsQ0ExQmpCLE1BQU0sR0FHQSxFQUFFLENBZ0JKLENBQUMsQUFLRSxPQUFPLENBRUs7RUFDVCxLQUFLLEVWcEVGLE9BQU87Q1VxRVg7O0FBT1QsQVJvUEUsWVFwUFUsQ1JvUFYsRUFBRSxDQUFDO0VBQ0QsV0FBVyxFQUFFLEtBQUs7RUFDbEIsUUFBUSxFQUFFLFFBQVE7Q0FZbkI7O0FRbFFILEFSdVBJLFlRdlBRLENSb1BWLEVBQUUsQUFHQyxPQUFPLENBQUM7RUFDUCxPQUFPLEVBQUUsRUFBRTtFQUNYLE9BQU8sRUFBRSxLQUFLO0VBQ2QsS0FBSyxFQUFFLEtBQUs7RUFDWixNQUFNLEVBQUUsS0FBSztFQUNiLGFBQWEsRUFBRSxHQUFHO0VBQ2xCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLGdCQUFnQixFRnBWYixJQUFJO0VFcVZQLGdCQUFnQixFQUFFLFlBQVk7RUFDOUIsR0FBRyxFQUFFLEtBQUs7Q0FDWDs7QVM5Vkw7O2dGQUVnRjtBQ0ZoRixBQUFBLGlCQUFpQixDQUFDO0VWaUJkLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0NZdEJuQjs7QUFiRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEekIsQUFBRCx1QkFBTyxDQUFDO0lWU04sV0FBVyxFVVBLLEdBQUc7SVZRbkIsWUFBWSxFVVJJLEdBQUc7R0FRcEI7OztBQU5DLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUp6QixBQUFELHVCQUFPLENBQUM7SVZTTixXQUFXLEVVSk0sT0FBTTtJVkt2QixZQUFZLEVVTEssT0FBTTtHQUt4Qjs7O0FBVkEsQUFPQyx1QkFQSyxDQU9MLFlBQVksQ0FBQztFQUNYLEdBQUcsRUFBRSxNQUFNO0NBQ1o7O0FBRUgsQUFBQSxlQUFlLENBYmpCLGlCQUFpQixDQWFHO0VBQ2hCLE9BQU8sRUFBQyxJQUFJO0NBQ2I7O0FBRUgsQUFBQSxpQkFBaUIsQ0FBQztFQUVoQixVQUFVLEVBQUUsTUFBTTtFVkdoQixZQUFZLEVVRkEsSUFBSTtFVkdoQixhQUFhLEVVSEQsSUFBSTtDQWtJbkI7O0FBaklFLEFBQUQsd0JBQVEsQ0FBQztFQUNQLFFBQVEsRUFBQyxRQUFRO0VBQ2pCLGdCQUFnQixFWlJaLE9BQU87RVlTWCxLQUFLLEVabEJBLElBQUk7RVltQlQsS0FBSyxFQUFDLElBQUk7RUFDVixNQUFNLEVBQUMsSUFBSTtFQUNYLE9BQU8sRUFBQyxZQUFZO0VBQ3BCLGFBQWEsRUFBQyxHQUFHO0VBQ2pCLFNBQVMsRUFBQyxJQUFJO0VBQ2QsT0FBTyxFQUFDLEdBQUc7RUFDWCxVQUFVLEVBQUMsTUFBTTtFQUNqQixXQUFXLEVBQUMsSUFBSTtFQUNoQixTQUFTLEVBQUMsTUFBTTtFQUNoQixXQUFXLEVBQUMsTUFBTTtFQUNsQixhQUFhLEVBQUMsSUFBSTtDQWFuQjs7QUEzQkEsQUFlQyx3QkFmTSxBQWVMLE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBQyxFQUFFO0VBQ1YsUUFBUSxFQUFDLFFBQVE7RUFDakIsZ0JBQWdCLEVaakNiLElBQUk7RVlrQ1AsT0FBTyxFQUFDLEtBQUs7RUFDYixNQUFNLEVBQUMsR0FBRztFQUNWLEtBQUssRUFBQyxpQkFBaUI7RVYvQnpCLFdBQVcsRVVnQ00sS0FBSTtFVi9CckIsWUFBWSxFVStCSyxLQUFJO0VBQ25CLElBQUksRUFBQyxDQUFDO0VBQ04sR0FBRyxFQUFDLEdBQUc7RUFDUCxPQUFPLEVBQUMsRUFBRTtDQUNYOztBQUVGLEFBQUQsOEJBQWMsQ0FBQztFQUNiLEtBQUssRUFBQyxJQUFJO0VBQ1YsTUFBTSxFQUFDLElBQUk7RUFDWCxPQUFPLEVBQUMsS0FBSztFQUNiLGFBQWEsRUFBQyxHQUFHO0VBQ2pCLE1BQU0sRUFBQyxHQUFHLENBQUMsTUFBTSxDWmhEWixJQUFJO0NZaUVWOztBQWhCQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFOekIsQUFBRCw4QkFBYyxDQUFDO0lBT1gsZ0JBQWdCLEVabERiLElBQUk7SVltRFAsU0FBUyxFQUFDLFFBQVE7SUFDbEIsVUFBVSxFQUFFLGlCQUFpQjtHQWFoQztFQVpHLEFBQUEsUUFBUSxDQVZYLDhCQUFhLENBVUE7SUFDUixnQkFBZ0IsRUFBRSxJQUFJO0dBQ3ZCO0VBQ0QsQUFBQSxRQUFRLENBYlgsOEJBQWEsQ0FhQTtJQUNSLGdCQUFnQixFQUFFLEVBQUU7R0FDckI7RUFDRCxBQUFBLHlCQUF5QixDQWhCNUIsOEJBQWEsQ0FnQmtCO0lBQzFCLFNBQVMsRUFBQyxRQUFRO0lBQ2xCLGdCQUFnQixFQUFDLFdBQVc7R0FDN0I7OztBQUlKLEFBQUQsd0JBQVEsQ0FBQztFQUNQLFNBQVMsRUFBQyxNQUFNO0VBQ2hCLGNBQWMsRUFBRSxTQUFTO0VBQ3pCLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLGNBQWMsRUFBRSxLQUFLO0NBbUJ0Qjs7QUFsQkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBTHpCLEFBQUQsd0JBQVEsQ0FBQztJQU1MLFNBQVMsRUFBQyxnQkFBZ0I7SUFDMUIsT0FBTyxFQUFFLENBQUM7SUFDVixVQUFVLEVBQUUsaUJBQWlCO0dBZWhDO0VBZEcsQUFBQSxRQUFRLENBVFgsd0JBQU8sQ0FTTTtJQUNSLGdCQUFnQixFQUFFLElBQUk7R0FDdkI7RUFDRCxBQUFBLFFBQVEsQ0FaWCx3QkFBTyxDQVlNO0lBQ1IsZ0JBQWdCLEVBQUUsSUFBSTtHQUN2QjtFQUNELEFBQUEsUUFBUSxDQWZYLHdCQUFPLENBZU07SUFDUixnQkFBZ0IsRUFBRSxJQUFJO0dBQ3ZCO0VBQ0QsQUFBQSx5QkFBeUIsQ0FsQjVCLHdCQUFPLENBa0J3QjtJQUMxQixTQUFTLEVBQUMsYUFBYTtJQUN2QixPQUFPLEVBQUUsQ0FBQztHQUNYOzs7QUFHSixBQUFELHVCQUFPLENBQUM7RVZyRk4sV0FBVyxFVXNGRyxJQUFJO0VWckZsQixZQUFZLEVVcUZFLElBQUk7RUFDbEIsU0FBUyxFQUFDLEtBQUs7Q0FvQmhCOztBQW5CQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFIekIsQUFBRCx1QkFBTyxDQUFDO0lBSUosU0FBUyxFQUFDLGdCQUFnQjtJQUMxQixPQUFPLEVBQUUsQ0FBQztJQUNWLFVBQVUsRUFBRSxpQkFBaUI7R0FnQmhDO0VBZkcsQUFBQSxRQUFRLENBUFgsdUJBQU0sQ0FPTztJQUNSLGdCQUFnQixFQUFFLElBQUk7R0FDdkI7RUFDRCxBQUFBLFFBQVEsQ0FWWCx1QkFBTSxDQVVPO0lBQ1IsZ0JBQWdCLEVBQUUsSUFBSTtHQUN2QjtFQUNELEFBQUEsUUFBUSxDQWJYLHVCQUFNLENBYU87SUFDUixnQkFBZ0IsRUFBRSxJQUFJO0dBQ3ZCO0VBQ0QsQUFBQSx5QkFBeUIsQ0FoQjVCLHVCQUFNLENBZ0J5QjtJQUMxQixTQUFTLEVBQUMsYUFBYTtJQUN2QixPQUFPLEVBQUUsQ0FBQztHQUNYOzs7QUFsR1AsQUF3R00saUJBeEdXLEFBc0dkLFlBQVksQ0FDWCx3QkFBd0IsQUFDckIsTUFBTSxDQUFDO0VBQ04sT0FBTyxFQUFDLEVBQUU7RUFDVixPQUFPLEVBQUMsS0FBSztFQUNiLEtBQUssRUFBQyxNQUFNO0VBQ1osTUFBTSxFQUFDLENBQUM7RUFDUixVQUFVLEVBQUMsR0FBRyxDQUFDLE1BQU0sQ1p2SHBCLElBQUk7RVl3SEwsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFDLEdBQUc7RUFDUCxJQUFJLEVBQUMsR0FBRztFQUNSLE9BQU8sRUFBQyxFQUFFO0NBQ1g7O0FBbEhQLEFBc0hJLGlCQXRIYSxBQXFIZCxXQUFXLENBQ1Ysd0JBQXdCLENBQUM7RUFDdkIsUUFBUSxFQUFDLFFBQVE7Q0FZbEI7O0FBbklMLEFBd0hNLGlCQXhIVyxBQXFIZCxXQUFXLENBQ1Ysd0JBQXdCLEFBRXJCLE1BQU0sQ0FBQztFQUNOLE9BQU8sRUFBQyxFQUFFO0VBQ1YsT0FBTyxFQUFDLEtBQUs7RUFDYixLQUFLLEVBQUMsTUFBTTtFQUNaLE1BQU0sRUFBQyxDQUFDO0VBQ1IsVUFBVSxFQUFDLEdBQUcsQ0FBQyxLQUFLLENaeEluQixJQUFJO0VZeUlMLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBQyxHQUFHO0VBQ1AsSUFBSSxFQUFDLEdBQUc7RUFDUixPQUFPLEVBQUMsRUFBRTtDQUNYOztBQ25KUCxBQUFBLGVBQWUsQ0FBQztFWGlCWixXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtFYXBDbEIsZ0JBQWdCLEViVUYsT0FBTztFYVRyQixLQUFLLEViR0UsSUFBSTtFYUZYLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFNBQVMsRUFBQyxNQUFNO0NBNERqQjs7QUEzREMsQUFBQSxlQUFlLENBTmpCLGVBQWUsQ0FNSztFQUNoQixPQUFPLEVBQUMsSUFBSTtDQUNiOztBQUNELEFBQUEsc0JBQXNCLENBVHhCLGVBQWUsQ0FTWTtFQUN2QixPQUFPLEVBQUMsS0FBSztDQUNkOztBQUNBLEFBQUQsc0JBQVEsQ0FBQztFQUNQLE1BQU0sRUFBQyxPQUFPO0NBS2Y7O0FBSkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRnpCLEFBQUQsc0JBQVEsQ0FBQztJQUdMLFVBQVUsRUFBQyxJQUFJO0lBQ2YsT0FBTyxFQUFDLEtBQUs7R0FFaEI7OztBQUNBLEFBQUQsc0JBQVEsQ0FBQztFWFJQLFdBQVcsRVdTRyxJQUFJO0VYUmxCLFlBQVksRVdRRSxJQUFJO0VYRWxCLFlBQVksRVdERSxNQUFNO0VYRXBCLGFBQWEsRVdGQyxNQUFNO0VBQ3BCLEtBQUssRWJMSSxPQUFPO0VhTWhCLE1BQU0sRUFBQyxJQUFJO0VBQ1gsZ0JBQWdCLEVBQUMsV0FBVztFQUM1QixrQkFBa0IsRUFBRSxJQUFJO0VBQ3hCLFNBQVMsRUFBQyxLQUFLO0VBQ2YsVUFBVSxFQUFDLElBQUk7RUFDZixVQUFVLEVBQUUsSUFBSTtFQUNoQixVQUFVLEVBQUUsZ0JBQWdCO0NBMkI3Qjs7QUExQkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBWHpCLEFBQUQsc0JBQVEsQ0FBQztJWGJQLFVBQVUsRVd5Qk0sTUFBTTtJWHhCdEIsYUFBYSxFV3dCRyxNQUFNO0lBQ3BCLE9BQU8sRUFBQyxLQUFLO0lBQ2IsVUFBVSxFQUFDLElBQUk7SUFDZixXQUFXLEVBQUMsQ0FBQztJQUNiLFlBQVksRUFBQyxDQUFDO0lBQ2QsS0FBSyxFQUFDLElBQUk7R0FvQmI7OztBQXJDQSxBWHdDQyxzQld4Q00sQVh3Q0wsMkJBQTJCLENBQUM7RVdwQjNCLEtBQUssRWJ0QkUsT0FBTztFYXVCZCxVQUFVLEVBQUMsTUFBTTtDWG1Cd0I7O0FXbEJ6QyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUF0QjNCLEFYd0NDLHNCV3hDTSxBWHdDTCwyQkFBMkIsQ0FBQztJV2pCekIsVUFBVSxFQUFDLElBQUk7R1hpQndCOzs7QVd4QzVDLEFYeUNDLHNCV3pDTSxBWHlDTCxrQkFBa0IsQ0FBQztFV3JCbEIsS0FBSyxFYnRCRSxPQUFPO0VhdUJkLFVBQVUsRUFBQyxNQUFNO0NYb0JlOztBV25CaEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBdEIzQixBWHlDQyxzQld6Q00sQVh5Q0wsa0JBQWtCLENBQUM7SVdsQmhCLFVBQVUsRUFBQyxJQUFJO0dYa0JlOzs7QVd6Q25DLEFYMENDLHNCVzFDTSxBWDBDTCxzQkFBc0IsQ0FBQztFV3RCdEIsS0FBSyxFYnRCRSxPQUFPO0VhdUJkLFVBQVUsRUFBQyxNQUFNO0NYcUJtQjs7QVdwQnBDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQXRCM0IsQVgwQ0Msc0JXMUNNLEFYMENMLHNCQUFzQixDQUFDO0lXbkJwQixVQUFVLEVBQUMsSUFBSTtHWG1CbUI7OztBVzFDdkMsQVgyQ0Msc0JXM0NNLEFYMkNMLGlCQUFpQixDQUFDO0VXdkJqQixLQUFLLEVidEJFLE9BQU87RWF1QmQsVUFBVSxFQUFDLE1BQU07Q1hzQmM7O0FXckIvQixNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUF0QjNCLEFYMkNDLHNCVzNDTSxBWDJDTCxpQkFBaUIsQ0FBQztJV3BCZixVQUFVLEVBQUMsSUFBSTtHWG9CYzs7O0FXM0NsQyxBQTBCQyxzQkExQk0sQUEwQkwsTUFBTSxDQUFDO0VBRU4sT0FBTyxFQUFDLElBQUk7RUFDWixnQkFBZ0IsRWIvQlQseUJBQU87Q2FtQ2Y7O0FBakNGLEFYd0NDLHNCV3hDTSxBQTBCTCxNQUFNLEFYY04sMkJBQTJCLENBQUM7RVdUekIsS0FBSyxFYmpDQSx3QkFBTztDRTBDMkI7O0FXeEM1QyxBWHlDQyxzQld6Q00sQUEwQkwsTUFBTSxBWGVOLGtCQUFrQixDQUFDO0VXVmhCLEtBQUssRWJqQ0Esd0JBQU87Q0UyQ2tCOztBV3pDbkMsQVgwQ0Msc0JXMUNNLEFBMEJMLE1BQU0sQVhnQk4sc0JBQXNCLENBQUM7RVdYcEIsS0FBSyxFYmpDQSx3QkFBTztDRTRDc0I7O0FXMUN2QyxBWDJDQyxzQlczQ00sQUEwQkwsTUFBTSxBWGlCTixpQkFBaUIsQ0FBQztFV1pmLEtBQUssRWJqQ0Esd0JBQU87Q0U2Q2lCOztBVzNDbEMsQUFrQ0Msc0JBbENNLEFBa0NMLE1BQU0sQ0FBQztFQUNOLGdCQUFnQixFYnJDVCx5QkFBTztDYXNDZjs7QUFFRixBQUFELHVCQUFTLENBQUM7RUFDUixlQUFlLEVBQUUsU0FBUztFQUMxQixPQUFPLEVBQUMsQ0FBQztDQUtWOztBQUpDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUh6QixBQUFELHVCQUFTLENBQUM7SUFJTixPQUFPLEVBQUMsS0FBSztJQUNiLFVBQVUsRUFBQyxJQUFJO0dBRWxCOzs7QUNoRUgsQUFBQSxjQUFjLENBQUM7RVppQlgsV0FBVyxFRnFCQyxJQUFJO0VFcEJoQixjQUFjLEVGb0JGLElBQUk7Q2NwQ25COztBQ0ZELEFBQUEsVUFBVSxDQUFDO0ViaUJQLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0NleUJuQjs7QUE3REUsQUFBRCxpQkFBUSxDQUFDO0VBQ1AsU0FBUyxFQUFDLE1BQU07RUFDaEIsV0FBVyxFQUFDLEdBQUc7RUFDZixVQUFVLEVBQUMsTUFBTTtFQUNqQixjQUFjLEVBQUUsS0FBSztFQUNyQixhQUFhLEVBQUMsSUFBSTtDQUluQjs7QUFIQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFOeEIsQUFBRCxpQkFBUSxDQUFDO0lBT0wsU0FBUyxFZERMLElBQThCO0djR3JDOzs7QUFDQSxBQUFELHNCQUFhLENBQUM7RUFDWixXQUFXLEVBQUUsQ0FBQztDQVNmOztBQVBDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUh6QixBQUFELHNCQUFhLENBQUM7SUFJVixZQUFZLEVBQUUsSUFBSTtJQUNsQixTQUFTLEVBQUUsS0FBSztHQUtuQjs7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBUHpCLEFBQUQsc0JBQWEsQ0FBQztJQVFWLFNBQVMsRUFBRSxLQUFLO0dBRW5COzs7QUFDQSxBQUFELGtCQUFTLENBQUM7RUFDUixPQUFPLEVBQUMsS0FBSztFQUNiLGFBQWEsRUFBRSxHQUFHO0NBSW5COztBQUhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUh6QixBQUFELGtCQUFTLENBQUM7SUFJTixPQUFPLEVBQUMsSUFBSTtHQUVmOzs7QUFDQSxBQUFELGdCQUFPLENBQUM7RUFDTixXQUFXLEVBQUMsR0FBRztDQUNoQjs7QUFDQSxBQUFELG1CQUFVLENBQUM7RUFDVCxVQUFVLEVBQUMsSUFBSTtDQU1oQjs7QUFMQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFGekIsQUFBRCxtQkFBVSxDQUFDO0lBR1AsT0FBTyxFQUFDLElBQUk7SUFDWixXQUFXLEVBQUcsTUFBTTtJQUNwQixlQUFlLEVBQUUsYUFBYTtHQUVqQzs7O0FBQ0EsQUFBRCxtQkFBVSxDQUFDO0VBQ1QsWUFBWSxFQUFDLElBQUk7Q0FPbEI7O0FBTkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRnpCLEFBQUQsbUJBQVUsQ0FBQztJQUdQLE9BQU8sRUFBQyxJQUFJO0dBS2Y7OztBQUhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUx6QixBQUFELG1CQUFVLENBQUM7SUFNUCxhQUFhLEVBQUMsSUFBSTtHQUVyQjs7O0FBQ0EsQUFBRCxlQUFNLENBQUM7RUFDTCxXQUFXLEVBQUMsR0FBRztFQUNmLFNBQVMsRUFBRSxJQUFJO0NBSWhCOztBQUhFLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUgxQixBQUFELGVBQU0sQ0FBQztJQUlILE9BQU8sRUFBQyxLQUFLO0dBRWhCOzs7QUFDQSxBQUFELGVBQU0sQ0FBQztFQUlMLFdBQVcsRUFBRSxNQUFNO0NBQ3BCOztBQUxBLEFBQ0MsZUFESSxHQUFMLGVBQUssQ0FDRTtFQUNKLFdBQVcsRUFBRyxJQUFJO0NBQ25COztBQUtMLEFBQUEsVUFBVSxDQUFDLHVCQUF1QixDQUFDLHNCQUFzQixDQUFDLEdBQUcsQUFBQSxvQkFBb0I7QUFDakYsZUFBZSxDQUFDLHNCQUFzQixDQUFDLEdBQUcsQUFBQSxvQkFBb0IsQ0FBQTtFQUM3RCxPQUFPLEVBQUMsTUFBTSxDQUFBLFVBQVU7Q0FDeEI7O0FBRUQsQUFBQSxnQkFBZ0IsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0FBQ3hDLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLENBQUM7QUFDbkMsa0JBQWtCLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztBQUNyQyxjQUFjLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO0VBQ2pDLFdBQVcsRUFBRSxHQUFHO0VBQUUsZUFBZSxFQUFFLFNBQVM7Q0FDNUM7O0FDM0VELEFBQUEsZUFBZSxDQUFDO0VkaUJaLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0VnQnBDbEIsVUFBVSxFQUFFLE1BQU07Q0FZbkI7O0FBWEUsQUFBRCxxQkFBTyxDQUFDO0VkUU4sV0FBVyxFQURPLElBQUk7RUFFdEIsWUFBWSxFQUZNLElBQUk7RWNMdEIsU0FBUyxFQUFDLEtBQUs7RUFDZixXQUFXLEVBQUUsR0FBRztDQUlqQjs7QUFQQSxBQUlDLHFCQUpLLEdBSUgsQ0FBQyxHQUFHLENBQUMsQ0FBQztFQUNKLFVBQVUsRUFBQyxJQUFJO0NBQ2xCOztBQUVILEFBQUEsV0FBVyxHQUFJLHFCQUFNLENBQUM7RUFDcEIsVUFBVSxFQUFFLElBQUk7Q0FDakI7O0FDYkgsQUFBQSxrQkFBa0IsQ0FBQztFZmlCZixXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtFaUJwQ2xCLGdCQUFnQixFakJPTCxPQUFPO0NpQlluQjs7QUFsQkUsQUFBRCx3QkFBTyxDQUFDO0VmUU4sV0FBVyxFZVBJLE9BQU07RWZRckIsWUFBWSxFZVJHLE9BQU07RUFDckIsT0FBTyxFQUFDLElBQUk7Q0FJYjs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFIekIsQUFBRCx3QkFBTyxDQUFDO0lmUU4sV0FBVyxFZUpLLElBQUk7SWZLcEIsWUFBWSxFZUxJLElBQUk7R0FFckI7OztBQUVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQVg1QixBQVVFLGtCQVZnQixDQVVoQixZQUFZLENBQUM7SUFFVCxHQUFHLEVBQUUsR0FBRztHQVFYOzs7QUFOQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFkNUIsQUFVRSxrQkFWZ0IsQ0FVaEIsWUFBWSxDQUFDO0lBS1QsR0FBRyxFQUFFLEdBQUc7R0FLWDs7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0VBakI3QixBQVVFLGtCQVZnQixDQVVoQixZQUFZLENBQUM7SUFRVCxHQUFHLEVBQUUsR0FBRztHQUVYOzs7QUFFSCxBQUFBLHVCQUF1QixDQUFDO0VmQXBCLFlBQVksRWVDQSxJQUFJO0VmQWhCLGFBQWEsRWVBRCxJQUFJO0NBNkJuQjs7QUE1QkUsQUFBRCwrQkFBUyxDQUFDO0VBQ1IsYUFBYSxFQUFDLElBQUk7Q0FDbkI7O0FBQ0EsQUFBRCw4QkFBUSxDQUFDO0VBQ1AsU0FBUyxFQUFFLE1BQU07RUFDakIsY0FBYyxFQUFFLFNBQVM7RUFDekIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsUUFBUSxFQUFDLFFBQVE7Q0FXbEI7O0FBaEJBLEFBTUMsOEJBTk0sQUFNTCxPQUFPLENBQUM7RUFDUCxPQUFPLEVBQUMsRUFBRTtFQUNWLEtBQUssRUFBQyxHQUFHO0VBQ1QsTUFBTSxFQUFDLEdBQUc7RUFDVixnQkFBZ0IsRWpCOUJiLElBQUk7RWlCK0JQLE9BQU8sRUFBQyxLQUFLO0VBQ2IsUUFBUSxFQUFFLFFBQVE7RUFDbEIsSUFBSSxFQUFDLENBQUM7RUFDTixHQUFHLEVBQUMsR0FBRztDQUNSOztBQUVGLEFBQUQsOEJBQVEsQ0FBQztFQUNQLFNBQVMsRUFBQyxJQUFJO0VBQ2QsYUFBYSxFQUFDLElBQUk7RUFDbEIsV0FBVyxFQUFFLEdBQUc7Q0FDakI7O0FBQ0EsQUFBRCw2QkFBTyxDQUFDO0VBQ04sYUFBYSxFQUFDLElBQUk7Q0FDbkI7O0FDbkRILEFBQUEsa0JBQWtCLENBQUM7RWhCaUJmLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0NrQjVCbkI7O0FBVkQsQUFFRSxrQkFGZ0IsQ0FFaEIsV0FBVyxDQUFDO0VBQ1YsTUFBTSxFQUFDLElBQUk7Q0FDWjs7QUFFQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFONUIsQUFLRSxrQkFMZ0IsQ0FLaEIsV0FBVyxDQUFDO0lBRVIsT0FBTyxFQUFDLElBQ1Y7R0FDRDs7O0FBRUgsQUFBQSx1QkFBdUIsQ0FBQztFQUV0QixPQUFPLEVBQUMsS0FBSztFQUNiLGdCQUFnQixFbEJKWCxPQUFPO0VrQktaLFFBQVEsRUFBQyxRQUFRO0VBQ2pCLEtBQUssRWxCVkUsSUFBSTtDa0JxSlo7O0FoQmhCRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEMUIsQUFBQSxTQUFTLENnQi9IWCx1QkFBdUIsQ2hCK0hUO0lBRVIsUUFBUSxFQUFDLE1BQU07R0FRbEI7RUFWRCxBQUdJLFNBSEssQ2dCL0hYLHVCQUF1QixDaEJrSWpCLEdBQUcsQ0FBQztJQUNGLFVBQVUsRUFBRSxzQkFBc0I7R0FDbkM7RUFMTCxBQU1JLFNBTkssQ2dCL0hYLHVCQUF1QixBaEJxSWhCLE1BQU0sQ0FBQyxHQUFHLENBQUM7SUFDVixTQUFTLEVBQUUsVUFBVTtHQUN0Qjs7O0FnQmpJTCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFOMUIsQUFBQSx1QkFBdUIsQ0FBQztJQU9wQixhQUFhLEVBQUMsSUFBSTtHQXlJckI7OztBQWhKRCxBQVNFLHVCQVRxQixBQVNwQixNQUFNLENBQUM7RUFDTixPQUFPLEVBQUMsRUFBRTtFQUNWLE9BQU8sRUFBQyxLQUFLO0VBQ2IsY0FBYyxFQUFDLElBQUk7Q0FDcEI7O0FBRUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBZjVCLEFBZ0JNLHVCQWhCaUIsQUFjcEIsYUFBYSxBQUVULE1BQU0sQ0FBQztJQUNOLGNBQWMsRUFBQyxpQkFBaUI7R0FDakM7OztBQWxCUCxBQXNCSSx1QkF0Qm1CLEFBcUJwQixjQUFjLEFBQ1osTUFBTSxDQUFDO0VBQ04sY0FBYyxFQUFDLGlCQUFpQjtDQUNqQzs7QUF4QkwsQUEwQkUsdUJBMUJxQixBQTBCcEIsS0FBSyxDQUFDO0VBQ0wsZ0JBQWdCLEVsQnJCUCxPQUFPO0VrQnNCaEIsVUFBVSxFQUFFLDZCQUE2QjtDQUkxQzs7QUFoQ0gsQUE2QkksdUJBN0JtQixBQTBCcEIsS0FBSyxBQUdILE1BQU0sQ0FBQztFQUNOLGdCQUFnQixFbEI1QlYsT0FBTztDa0I2QmQ7O0FBL0JMLEFBaUNFLHVCQWpDcUIsQUFpQ3BCLEtBQUssQ0FBQztFQUNMLGdCQUFnQixFbEJoQ1IsT0FBTztFa0JpQ2YsVUFBVSxFQUFFLDZCQUE2QjtDQUkxQzs7QUF2Q0gsQUFvQ0ksdUJBcENtQixBQWlDcEIsS0FBSyxBQUdILE1BQU0sQ0FBQztFQUNOLGdCQUFnQixFbEIvQlQsT0FBTztDa0JnQ2Y7O0FBdENMLEFBd0NFLHVCQXhDcUIsQUF3Q3BCLE9BQU8sQ0FBQztFQUNQLGdCQUFnQixFbEJuQ1AsT0FBTztFa0JvQ2hCLEtBQUssRWxCcENJLE9BQU87Q2tCcUNqQjs7QUEzQ0gsQUE0Q0UsdUJBNUNxQixBQTRDcEIsT0FBTyxDQUFDO0VBQ1AsVUFBVSxFQUFDLE1BQU07Q0FDbEI7O0FBR0EsQUFBRCw4QkFBUSxDQUFDO0VBRVAsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLENBQUM7RUFDTixJQUFJLEVBQUUsQ0FBQztFQUNQLEtBQUssRUFBRSxDQUFDO0VBQ1IsTUFBTSxFQUFFLENBQUM7Q0F3QlY7O0FBdkJDLEFBQUEsT0FBTyxDQVBSLDhCQUFPLENBT0k7RUFDUixPQUFPLEVBQUMsSUFBSTtFQUNaLGdCQUFnQixFbEJwRFQsT0FBTztDa0JxRGY7O0FBQ0QsQUFDRSxPQURLLENBWFIsOEJBQU8sQUFZSCxPQUFPLENBQUM7RUFDUCxPQUFPLEVBQUMsRUFBRTtFQUNWLGdCQUFnQixFbEJuRWYsSUFBSTtFa0JvRUwsT0FBTyxFQUFDLEdBQUc7RUFDWCxRQUFRLEVBQUMsUUFBUTtFQUNqQixLQUFLLEVBQUMsSUFBSTtFQUNWLE1BQU0sRUFBQyxJQUFJO0VBQ1gsR0FBRyxFQUFDLENBQUM7RUFDTCxJQUFJLEVBQUMsQ0FBQztFQUNOLE9BQU8sRUFBQyxDQUFDO0NBQ1Y7O0FBRUgsQUFBQSxPQUFPLENBeEJSLDhCQUFPLENBd0JJO0VBQ1IsT0FBTyxFQUFDLElBQUk7Q0FJYjs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUssT0FBTyxTQUFTLEVBQUUsS0FBSztFQUZqRCxBQUFBLE9BQU8sQ0F4QlIsOEJBQU8sQ0F3Qkk7SUFHTixPQUFPLEVBQUMsTUFBTTtHQUVqQjs7O0FBR0QsQUFBQSxPQUFPLENBRFIsZ0NBQVMsQ0FDRTtFQUNSLE1BQU0sRUFBRSxJQUFJO0VBQ1osZ0JBQWdCLEVsQnhGYixJQUFJO0VrQnlGUCxPQUFPLEVBQUMsV0FBVztDQUNwQjs7QUFDRCxBQUFBLE9BQU8sQ0FOUixnQ0FBUyxDQU1FO0VoQjNFVixZQUFZLEVnQjRFSSxJQUFJO0VoQjNFcEIsYUFBYSxFZ0IyRUcsSUFBSTtFQUNsQixRQUFRLEVBQUcsUUFBUTtFQUNuQixLQUFLLEVBQUMsSUFBSTtFQUNWLE9BQU8sRUFBQyxDQUFDO0VBQ1QsR0FBRyxFQUFDLGdCQUFnQjtDQUNyQjs7QUFHRCxBQUFBLE9BQU8sQ0FEUiw4QkFBTyxDQUNJO0VBQ1IsU0FBUyxFQUFDLE1BQU07RUFDaEIsV0FBVyxFQUFFLEdBQUc7Q0FJakI7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLEtBQUs7RUFIakQsQUFBQSxPQUFPLENBRFIsOEJBQU8sQ0FDSTtJQUlOLFNBQVMsRUFBQyxNQUFNO0dBRW5COzs7QUFDRCxBQUFBLE9BQU8sQ0FSUiw4QkFBTyxDQVFJO0VBQ1IsU0FBUyxFQUFDLElBQUk7RUFDZCxXQUFXLEVBQUUsQ0FBQztDQU9mOztBQU5DLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSyxPQUFPLFNBQVMsRUFBRSxLQUFLO0VBSGpELEFBQUEsT0FBTyxDQVJSLDhCQUFPLENBUUk7SUFJTixTQUFTLEVBQUUsSUFBSTtHQUtsQjs7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBTjFCLEFBQUEsT0FBTyxDQVJSLDhCQUFPLENBUUk7SUFPTixTQUFTLEVBQUUsSUFBSTtHQUVsQjs7O0FBQ0QsQUFBQSxPQUFPLENBbEJSLDhCQUFPLENBa0JJO0VBQ1IsU0FBUyxFQUFDLE1BQU07RUFDaEIsV0FBVyxFQUFFLEdBQUc7Q0FJakI7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLEtBQUs7RUFIakQsQUFBQSxPQUFPLENBbEJSLDhCQUFPLENBa0JJO0lBSU4sU0FBUyxFQUFDLElBQUk7R0FFakI7OztBQUVGLEFBQUQsK0JBQVMsQ0FBQztFaEJzR1YsYUFBYSxFZ0JyR1MsS0FBSztFaEJzR3hCLFVBQVUsRWdCdEdTLEtBQUs7RWhCNEd6QixXQUFXLEVBQUUsbUJBQXFCO0VnQjNHbEMsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLEdBQUcsRUFBRSxDQUFDO0VBQ04sSUFBSSxFQUFFLENBQUM7Q0FDUjs7QUFHRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUssT0FBTyxTQUFTLEVBQUUsS0FBSztFQURqRCxBQUFBLE9BQU8sQ0FEUiw2QkFBTSxDQUNLO0lBRU4sU0FBUyxFQUFDLE1BQU07R0FFbkI7OztBQUtGLEFBQUQsNkJBQU8sQ0FBQztFQUNOLFNBQVMsRUFBQyxNQUFNO0NBSWpCOztBQUhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSyxPQUFPLFNBQVMsRUFBRSxLQUFLO0VBRmhELEFBQUQsNkJBQU8sQ0FBQztJQUdKLFNBQVMsRUFBQyxNQUFNO0dBRW5COzs7QUMxSkgsQUFBQSxpQkFBaUIsQ0FBQztFakJpQmQsV0FBVyxFRnFCQyxJQUFJO0VFcEJoQixjQUFjLEVGb0JGLElBQUk7RW1CcENsQixnQkFBZ0IsRW5CT0wsT0FBTztDbUJJbkI7O0FBVkUsQUFBRCx1QkFBTyxDQUFDO0VqQlFOLFdBQVcsRWlCUEksT0FBTTtFakJRckIsWUFBWSxFaUJSRyxPQUFNO0VBQ3JCLE9BQU8sRUFBQyxJQUFJO0NBT2I7O0FBTkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBSHpCLEFBQUQsdUJBQU8sQ0FBQztJakJRTixXQUFXLEVpQkpLLElBQUk7SWpCS3BCLFlBQVksRWlCTEksSUFBSTtHQUtyQjs7O0FBVEEsQUFNQyx1QkFOSyxDQU1MLFlBQVksQ0FBQztFQUNYLEdBQUcsRUFBQyxnQkFBZ0I7Q0FDckI7O0FBSUwsQUFBQSxnQkFBZ0IsQ0FBQztFQUNmLFVBQVUsRUFBQyxNQUFNO0VqQk1mLFlBQVksRWlCTEEsSUFBSTtFakJNaEIsYUFBYSxFaUJORCxJQUFJO0NBV25COztBQVZFLEFBQUQsc0JBQU8sQ0FBQztFQUNOLFNBQVMsRUFBQyxNQUFNO0VBQ2hCLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLFVBQVUsRUFBQyxJQUFJO0NBQ2hCOztBQUNBLEFBQ0Msc0JBREssQUFDSixNQUFNLENBQUM7RUFDTixlQUFlLEVBQUUsU0FBUztDQUMzQjs7QUMxQkwsQUFBQSxzQkFBc0IsQ0FBQztFbEJpQm5CLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0VvQnBDbEIsY0FBYyxFQUFDLENBQUM7Q0FDakI7O0FBQ0QsQUFBQSwyQkFBMkIsQ0FBQztFbEJPeEIsV0FBVyxFa0JMQyxJQUFJO0VsQk1oQixZQUFZLEVrQk5BLElBQUk7RUFDbEIsU0FBUyxFbkJDRCxLQUE4QjtFbUJBdEMsYUFBYSxFQUFDLElBQUk7Q0E4Q25COztBbEJxRkcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRDFCLEFBQUEsU0FBUyxDa0J0SVgsMkJBQTJCLENsQnNJYjtJQUVSLFFBQVEsRUFBQyxNQUFNO0dBUWxCO0VBVkQsQUFHSSxTQUhLLENrQnRJWCwyQkFBMkIsQ2xCeUlyQixHQUFHLENBQUM7SUFDRixVQUFVLEVBQUUsc0JBQXNCO0dBQ25DO0VBTEwsQUFNSSxTQU5LLENrQnRJWCwyQkFBMkIsQWxCNElwQixNQUFNLENBQUMsR0FBRyxDQUFDO0lBQ1YsU0FBUyxFQUFFLFVBQVU7R0FDdEI7OztBa0J4SUwsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBTjFCLEFBQUEsMkJBQTJCLENBQUM7SUFPdkIsVUFBVSxFQUFFLE1BQU07R0EyQ3RCOzs7QUF6Q0UsQUFBRCxpQ0FBTyxDQUFDO0VBQ04sT0FBTyxFQUFDLEtBQUs7Q0FDZDs7QUFDQSxBQUFELDZDQUFtQixDQUFDO0VBQ2xCLFFBQVEsRUFBRSxRQUFRO0VBQ2pCLGFBQWEsRUFBQyxJQUFJO0NBTXBCOztBQVJBLEFBR0MsNkNBSGlCLEFBR2hCLE1BQU0sQ0FBQTtFQUNMLE9BQU8sRUFBRSxFQUFFO0VBQ1gsT0FBTyxFQUFFLEtBQUs7RUFDZCxjQUFjLEVBQUUsSUFBSTtDQUNyQjs7QUFFRixBQUFELDJDQUFpQixDQUFDO0VBQ2hCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxDQUFDO0VBQ04sSUFBSSxFQUFFLENBQUM7RUFDUCxLQUFLLEVBQUUsQ0FBQztFQUNSLE1BQU0sRUFBRSxDQUFDO0VBQ1QsUUFBUSxFQUFFLE1BQU07Q0FDakI7O0FBQ0EsQUFBRCxtQ0FBUyxDQUFDO0VsQndNVixhQUFhLEVrQnZNUyxLQUFLO0VsQndNeEIsVUFBVSxFa0J4TVMsS0FBSztFbEI4TXpCLFdBQVcsRUFBRSxtQkFBcUI7RWtCN01sQyxRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJO0VBQ1osR0FBRyxFQUFFLENBQUM7RUFDTixJQUFJLEVBQUUsQ0FBQztDQUNSOztBQUNBLEFBQUQsa0NBQVEsQ0FBQztFQUNQLFNBQVMsRUFBQyxJQUFJO0VBQ2QsYUFBYSxFQUFDLElBQUk7RUFDbEIsV0FBVyxFQUFFLEdBQUc7Q0FDakI7O0FBQ0EsQUFBRCxpQ0FBTyxDQUFDO0VBQ04sYUFBYSxFQUFDLElBQUk7Q0FDbkI7O0FBQ0EsQUFBRCx1Q0FBYSxDQUFDO0VBQ1osS0FBSyxFcEJuQ0QsT0FBTztFb0JvQ1gsY0FBYyxFQUFFLEtBQUs7RUFDckIsY0FBYyxFQUFFLFNBQVM7Q0FDMUI7O0FDckRILEFBQUEscUJBQXFCLENBQUM7RW5CaUJsQixXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtDcUJHbkI7O0FBdkNDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUYxQixBQUFBLHFCQUFxQixDQUFDO0lBR2xCLGdCQUFnQixFckJNUCxPQUFPO0dxQmdDbkI7OztBQW5DRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFONUIsQUFLRSxxQkFMbUIsQ0FLbkIsVUFBVSxDQUFDO0lBRVAsS0FBSyxFQUFDLElBQUksQ0FBQSxVQUFVO0lBQ3BCLE9BQU8sRUFBQyxDQUFDLENBQUEsVUFBVTtHQUV0Qjs7O0FBRUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRHpCLEFBQUQsMkJBQU8sQ0FBQztJbkJBTixXQUFXLEVtQkVNLE9BQU07SW5CRHZCLFlBQVksRW1CQ0ssT0FBTTtHQUV4Qjs7O0FBRUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBakI1QixBQWdCRSxxQkFoQm1CLENBZ0JuQixZQUFZLENBQUM7SUFFVCxNQUFNLEVBQUUsSUFBSTtJQUNaLEtBQUssRUFBRSxJQUFJO0lBQ1gsT0FBTyxFQUFDLENBQUM7SUFDVCxnQkFBZ0IsRXJCZmIsSUFBSTtHcUJzQlY7RUE1QkgsQUFzQk0scUJBdEJlLENBZ0JuQixZQUFZLEFBTVAsT0FBTyxDQUFDO0lBQ1AsT0FBTyxFQUFFLENBQUM7SUFDVixTQUFTLEVBQUUsSUFBSTtJQUNmLFVBQVUsRUFBRSxNQUFNO0dBQ25COzs7QUFJSCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUE5QjVCLEFBNkJFLHFCQTdCbUIsQ0E2Qm5CLFdBQVcsQ0FBQztJQUVSLElBQUksRUFBRSxZQUFZO0lBQ2xCLFNBQVMsRUFBQyxxQkFBb0I7R0FFakM7OztBQUVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQXBDNUIsQUFtQ0UscUJBbkNtQixDQW1DbkIsV0FBVyxDQUFDO0lBRVIsS0FBSyxFQUFFLFlBQVk7SUFDbkIsU0FBUyxFQUFDLG9CQUFtQjtHQUVoQzs7O0FBUUQsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBSDFCLEFBQUEsMEJBQTBCLENBQUM7SUFJdkIsYUFBYSxFQUFDLElBQUk7R0F1S3JCOzs7QUFyS0MsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBTjFCLEFBQUEsMEJBQTBCLENBQUM7SUFPdkIsUUFBUSxFQUFDLFFBQVE7R0FvS3BCOzs7QUFsS0UsQUFBRCxnQ0FBTyxDQUFDO0VBQ04sT0FBTyxFQUFDLEtBQUs7RUFDYixRQUFRLEVBQUMsUUFBUTtDQWVsQjs7QUFkQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFIekIsQUFBRCxnQ0FBTyxDQUFDO0lBSUosY0FBYyxFQUFFLElBQUk7R0FhdkI7RUFqQkEsQUFLRyxnQ0FMRyxBQUtGLE9BQU8sQ0FBQztJQUNQLE9BQU8sRUFBQyxFQUFFO0lBQ1YsT0FBTyxFQUFDLEdBQUc7SUFDWCxRQUFRLEVBQUMsUUFBUTtJQUNqQixPQUFPLEVBQUMsQ0FBQztJQUNULEtBQUssRUFBQyxJQUFJO0lBQ1YsTUFBTSxFQUFDLElBQUk7SUFDWCxHQUFHLEVBQUMsR0FBRztJQUNQLElBQUksRUFBQyxDQUFDO0lBQ04sVUFBVSxFQUFFLE9BQU87R0FDcEI7OztBQUdKLEFBQUQsNENBQW1CLENBQUM7RUFDbEIsUUFBUSxFQUFFLFFBQVE7Q0FTbkI7O0FBUkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRnpCLEFBQUQsNENBQW1CLENBQUM7SUFHaEIsYUFBYSxFQUFDLElBQUk7R0FPckI7OztBQVZBLEFBS0MsNENBTGlCLEFBS2hCLE1BQU0sQ0FBQTtFQUNMLE9BQU8sRUFBRSxFQUFFO0VBQ1gsT0FBTyxFQUFFLEtBQUs7RUFDZCxjQUFjLEVBakNULFNBQXFCO0NBa0MzQjs7QUFFRixBQUFELDBDQUFpQixDQUFDO0VBQ2hCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxDQUFDO0VBQ04sSUFBSSxFQUFFLENBQUM7RUFDUCxLQUFLLEVBQUUsQ0FBQztFQUNSLE1BQU0sRUFBRSxDQUFDO0VBQ1QsUUFBUSxFQUFFLE1BQU07Q0FDakI7O0FBQ0EsQUFBRCxrQ0FBUyxDQUFDO0VuQjhJVixhQUFhLEVtQjdJUyxLQUFLO0VuQjhJeEIsVUFBVSxFbUI5SVMsS0FBSztFbkJvSnpCLFdBQVcsRUFBRSxtQkFBcUI7RW1CbkpsQyxRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJO0VBQ1osR0FBRyxFQUFFLENBQUM7RUFDTixJQUFJLEVBQUUsQ0FBQztDQUNSOztBQUVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUR6QixBQUFELG1DQUFVLENBQUM7SW5CeEZULFdBQVcsRW1CMEZLLElBQUk7SW5CekZwQixZQUFZLEVtQnlGSSxJQUFJO0luQi9FcEIsWUFBWSxFbUJnRkksTUFBTTtJbkIvRXRCLGFBQWEsRW1CK0VHLE1BQU07SUFDcEIsU0FBUyxFcEIvRkwsS0FBOEI7R29CNkdyQzs7O0FBWkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBTnpCLEFBQUQsbUNBQVUsQ0FBQztJQU9QLE9BQU8sRUFBQyxDQUFDO0lBQ1QsUUFBUSxFQUFDLFFBQVE7SUFDakIsT0FBTyxFQUFFLENBQUM7SUFDVixHQUFHLEVBQUMsR0FBRztJQUNQLElBQUksRUFBQyxDQUFDO0lBQ04sVUFBVSxFQUFFLE9BQU87SUFDbkIsS0FBSyxFckIxR0YsSUFBSTtJcUIyR1AsVUFBVSxFQUFDLE1BQU07SUFDakIsT0FBTyxFQUFDLFNBQVM7SUFDakIsS0FBSyxFQUFFLElBQUk7R0FFZDs7O0FBQ0EsQUFBRCxpQ0FBUSxDQUFDO0VBQ1AsS0FBSyxFckJ4R0QsT0FBTztFcUJ5R1gsY0FBYyxFQUFFLEtBQUs7RUFDckIsY0FBYyxFQUFFLFNBQVM7RUFDekIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsYUFBYSxFQUFDLE1BQU07RUFDcEIsU0FBUyxFQUFDLE9BQU87RUFDakIsVUFBVSxFQUFFLEtBQUs7Q0FjbEI7O0FBYkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBUnpCLEFBQUQsaUNBQVEsQ0FBQztJbkIzR1AsV0FBVyxFbUJvSEssSUFBSTtJbkJuSHBCLFlBQVksRW1CbUhJLElBQUk7SUFDbEIsU0FBUyxFQUFDLEtBQUs7SUFDZixLQUFLLEVBQUMsT0FBTztJQUNiLFNBQVMsRUFBQyxNQUFNO0dBU25COzs7QUFQQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFkekIsQUFBRCxpQ0FBUSxDQUFDO0lBZUwsU0FBUyxFQUFDLE1BQU07R0FNbkI7OztBQXJCQSxBQWlCQyxpQ0FqQk0sQ0FpQk4sSUFBSSxDQUFDO0VBQ0gsU0FBUyxFQUFDLE9BQU8sQ0FBQSxVQUFVO0VBQzNCLFdBQVcsRUFBQyxPQUFPLENBQUEsVUFBVTtDQUM5Qjs7QUFFRixBQUFELGlDQUFRLENBQUM7RUFDUCxTQUFTLEVBQUMsSUFBSTtFQUNkLGFBQWEsRUFBQyxJQUFJO0VBQ2xCLFdBQVcsRUFBRSxHQUFHO0NBY2pCOztBQWJDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUp6QixBQUFELGlDQUFRLENBQUM7SUFLTCxVQUFVLEVBQUMsS0FBSztJbkJ0SWxCLFdBQVcsRW1CdUlLLElBQUk7SW5CdElwQixZQUFZLEVtQnNJSSxJQUFJO0lBQ2xCLFNBQVMsRUFBQyxLQUFLO0lBQ2YsU0FBUyxFQUFDLE1BQU07R0FTbkI7OztBQVBDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQVZ6QixBQUFELGlDQUFRLENBQUM7SUFXTCxTQUFTLEVBQUMsSUFBSTtHQU1qQjs7O0FBakJBLEFBYUMsaUNBYk0sQ0FhTixJQUFJLENBQUM7RUFDSCxTQUFTLEVBQUMsT0FBTyxDQUFBLFVBQVU7RUFDM0IsV0FBVyxFQUFDLE9BQU8sQ0FBQSxVQUFVO0NBQzlCOztBQUVGLEFBQUQsZ0NBQU8sQ0FBQztFQUNOLGFBQWEsRUFBQyxJQUFJO0VBQ2xCLFVBQVUsRUFBRSxLQUFLO0NBY2xCOztBQWJDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUh6QixBQUFELGdDQUFPLENBQUM7SW5CbkpOLFdBQVcsRW1CdUpLLElBQUk7SW5CdEpwQixZQUFZLEVtQnNKSSxJQUFJO0lBQ2xCLFNBQVMsRUFBQyxLQUFLO0lBQ2YsT0FBTyxFQUFDLENBQUM7SUFDVCxVQUFVLEVBQUUsV0FBVztHQVMxQjs7O0FBUEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBVHpCLEFBQUQsZ0NBQU8sQ0FBQztJQVVKLFVBQVUsRUFBQyxPQUFPO0dBTXJCOzs7QUFoQkEsQUFZQyxnQ0FaSyxDQVlMLElBQUksQ0FBQztFQUNILFNBQVMsRUFBQyxPQUFPLENBQUEsVUFBVTtFQUMzQixXQUFXLEVBQUMsT0FBTyxDQUFBLFVBQVU7Q0FDOUI7O0FBRUYsQUFBRCxxQ0FBWSxDQUFDO0VBQ1YsVUFBVSxFQUFDLElBQUk7Q0FPakI7O0FBTkQsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRnZCLEFBQUQscUNBQVksQ0FBQztJbkJwS1gsV0FBVyxFbUJ1S0ssSUFBSTtJbkJ0S3BCLFlBQVksRW1Cc0tJLElBQUk7SUFDbEIsU0FBUyxFQUFDLEtBQUs7SUFDZixPQUFPLEVBQUMsQ0FBQztJQUNULFVBQVUsRUFBRSxXQUFXO0dBRTFCOzs7QUFDQSxBQUFELHNDQUFhLENBQUM7RUFDWixLQUFLLEVyQjFLRCxPQUFPO0VxQjJLWCxjQUFjLEVBQUUsS0FBSztFQUNyQixjQUFjLEVBQUUsU0FBUztDQUMxQjs7QUFFQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFqSjVCLEFBa0pNLDBCQWxKb0IsQUFnSnZCLGFBQWEsQ0FFVixtQ0FBbUMsQ0FBakI7SUFDaEIsT0FBTyxFQUFDLENBQUM7R0FDVjtFQXBKUCxBQXFKTSwwQkFySm9CLEFBZ0p2QixhQUFhLENBS1YsZ0NBQWdDLENBQWpCO0lBQ2IsY0FBYyxFQUFFLElBQUk7R0FJckI7RUExSlAsQUF1SlEsMEJBdkprQixBQWdKdkIsYUFBYSxDQUtWLGdDQUFnQyxBQUU3QixPQUFPLENBQUM7SUFDUCxnQkFBZ0IsRXJCOUxqQixJQUFJO0dxQitMSjtFQXpKVCxBQTRKUSwwQkE1SmtCLEFBZ0p2QixhQUFhLEFBV1QsTUFBTSxDQUNMLG1DQUFtQyxDQUFqQjtJQUNoQixHQUFHLEVBQUMsR0FBRztHQUNSO0VBOUpULEFBZ0tVLDBCQWhLZ0IsQUFnSnZCLGFBQWEsQUFXVCxNQUFNLENBSUwsZ0NBQWdDLEFBQzdCLE9BQU8sQ0FBQztJQUNQLEdBQUcsRUFBQyxDQUFDO0dBQ047RUFsS1gsQUFvS1EsMEJBcEtrQixBQWdKdkIsYUFBYSxBQVdULE1BQU0sQ0FTTCxnQ0FBZ0M7RUFwS3hDLDBCQUEwQixBQWdKdkIsYUFBYSxBQVdULE1BQU0sQ0FVTCxxQ0FBcUMsQ0FBakI7SUFDbEIsT0FBTyxFQUFDLENBQUM7R0FDVjs7O0FDcE5ULEFBQUEsY0FBYyxDQUFDO0VwQmlCWCxXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtDc0JxRG5COztBQXhGRSxBQUFELG9CQUFPLENBQUM7RUFDTixPQUFPLEVBQUMsS0FBSztFQUNiLFFBQVEsRUFBRSxRQUFRO0NBQ25COztBQUNBLEFBQUQsc0JBQVMsQ0FBQztFQUNSLEtBQUssRUFBQyxJQUFJO0NBQ1g7O0FBQ0EsQUFDQyxxQkFETSxBQUNMLE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBQyxFQUFFO0VBQ1YsZ0JBQWdCLEV0Qk5iLElBQUk7RXNCT1AsT0FBTyxFQUFDLEdBQUc7RUFDWCxRQUFRLEVBQUMsUUFBUTtFQUNqQixLQUFLLEVBQUMsSUFBSTtFQUNWLE1BQU0sRUFBQyxJQUFJO0VBQ1gsR0FBRyxFQUFDLENBQUM7RUFDTCxJQUFJLEVBQUMsQ0FBQztDQUNQOztBQUVGLEFBQUQsdUJBQVUsQ0FBQztFQUNULFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxDQUFDO0VBQ04sSUFBSSxFQUFFLENBQUM7RUFDUCxLQUFLLEVBQUUsQ0FBQztFQUNSLE1BQU0sRUFBRSxDQUFDO0VBQ1QsT0FBTyxFQUFDLElBQUk7RUFDWixRQUFRLEVBQUMsTUFBTTtDQUNoQjs7QUFDQSxBQUFELHFCQUFRLENBQUM7RUFDUCxTQUFTLEVBQUMsSUFBSTtFQUNkLFdBQVcsRUFBQyxHQUFHO0VBQ2YsV0FBVyxFQUFDLEdBQUc7RUFDZixhQUFhLEVBQUMsSUFBSTtDQVduQjs7QUFWQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFMekIsQUFBRCxxQkFBUSxDQUFDO0lBTUwsU0FBUyxFQUFDLE1BQU07R0FTbkI7OztBQVBDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQVJ6QixBQUFELHFCQUFRLENBQUM7SUFTTCxTQUFTLEVBQUMsTUFBTTtHQU1uQjs7O0FBSkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBWHpCLEFBQUQscUJBQVEsQ0FBQztJQVlMLFNBQVMsRUFBQyxNQUFNO0lBQ2hCLEtBQUssRUFBRSxLQUFLO0dBRWY7OztBQUNBLEFBQUQsd0JBQVcsQ0FBQztFQUNWLFNBQVMsRUFBQyxJQUFJO0VBQ2QsV0FBVyxFQUFDLEdBQUc7RUFDZixXQUFXLEVBQUMsR0FBRztFQUNmLEtBQUssRXRCN0NBLElBQUk7RXNCOENULGFBQWEsRUFBQyxJQUFJO0NBY25COztBQWJDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQU56QixBQUFELHdCQUFXLENBQUM7SUFPUixTQUFTLEVBQUMsTUFBTTtHQVluQjs7O0FBVkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBVHpCLEFBQUQsd0JBQVcsQ0FBQztJQVVSLFNBQVMsRUFBQyxNQUFNO0lBQ2hCLGFBQWEsRUFBQyxJQUFJO0dBUXJCOzs7QUFOQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFiekIsQUFBRCx3QkFBVyxDQUFDO0lBY1IsU0FBUyxFQUFDLE1BQU07SUFDaEIsYUFBYSxFQUFFLElBQUk7SUFDbkIsS0FBSyxFQUFFLEtBQUs7R0FHZjs7O0FBQ0EsQUFBRCxvQkFBTyxDQUFDO0VBQ04sU0FBUyxFQUFDLE1BQU07RUFDaEIsS0FBSyxFQUFDLEtBQUs7RUFDWCxhQUFhLEVBQUMsSUFBSTtDQU9uQjs7QUFOQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFKekIsQUFBRCxvQkFBTyxDQUFDO0lBS0osU0FBUyxFQUFDLEdBQUc7R0FLaEI7OztBQUhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQVB6QixBQUFELG9CQUFPLENBQUM7SUFRSixTQUFTLEVBQUMsTUFBTTtHQUVuQjs7O0FBQ0EsQUFBRCxtQkFBTSxDQUFDO0VBQ0wsV0FBVyxFQUFDLEdBQUc7RUFDZixlQUFlLEVBQUUsU0FBUztDQVUzQjs7QUFSQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFKekIsQUFBRCxtQkFBTSxDQUFDO0luQnpFUCxPQUFPLEVBQUMsWUFBWTtJQUNwQixXQUFXLEVBRmdELEdBQUc7SUFHOUQsVUFBVSxFQUFFLE1BQU07SUFDbEIsY0FBYyxFQUFFLE1BQU07SUFDdEIsY0FBYyxFQUFFLFNBQVM7SUFDekIsT0FBTyxFQU5vQixJQUFJLENBQVUsSUFBSTtJbUJnRnpDLE1BQU0sRUFBQyxHQUFHLENBQUMsS0FBSyxDdEI3RWIsSUFBSTtJc0I4RVAsZUFBZSxFQUFFLElBQUk7R0FLeEI7OztBbkIvRUQsTUFBTSxFbUJ1RUksU0FBUyxFQUFFLEtBQUssT25CdkVsQixTQUFTLEVBQUUsS0FBSztFbUJtRXZCLEFBQUQsbUJBQU0sQ0FBQztJbkJsRUwsT0FBTyxFQUFFLEtBQUs7SUFDZCxLQUFLLEVBQUMsSUFBSTtHbUI2RVg7OztBQVJDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUp6QixBbkIvREQsbUJtQitETSxBbkIvREwsV0FBVyxDQUFDO0lBQ1gsS0FBSyxFQUFDLElBQUk7R0FDWDtFbUI2REEsQW5CNURELG1CbUI0RE0sQW5CNURMLFFBQVEsQ0FBQztJRERSLFdBQVcsRUNFRyxDQUFDO0lERGYsY0FBYyxFQ0NBLENBQUM7SUFDZixNQUFNLEVBQUMsSUFBSTtJQUNYLFdBQVcsRUFBQyxJQUFJO0dBQ2pCOzs7QW1CaUVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQVR6QixBQUFELG1CQUFNLENBQUM7SUFVSCxTQUFTLEVBQUMsTUFDWjtHQUNEOzs7QUMxRkgsQUFBQSxjQUFjLENBQUM7RXJCaUJYLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0V1QnBDbEIsZ0JBQWdCLEV2Qk9MLE9BQU87Q3VCTm5COztBQUVELEFBQUEsbUJBQW1CLENBQUM7RUFJbEIsT0FBTyxFQUFDLEtBQUs7RUFDYixnQkFBZ0IsRXZCQVgsT0FBTztFdUJDWixRQUFRLEVBQUMsUUFBUTtFQUNqQixhQUFhLEV0QkpMLFVBQThCO0NzQmtGdkM7O0FyQmlERyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEMUIsQUFBQSxTQUFTLENxQnJJWCxtQkFBbUIsQ3JCcUlMO0lBRVIsUUFBUSxFQUFDLE1BQU07R0FRbEI7RUFWRCxBQUdJLFNBSEssQ3FCcklYLG1CQUFtQixDckJ3SWIsR0FBRyxDQUFDO0lBQ0YsVUFBVSxFQUFFLHNCQUFzQjtHQUNuQztFQUxMLEFBTUksU0FOSyxDcUJySVgsbUJBQW1CLEFyQjJJWixNQUFNLENBQUMsR0FBRyxDQUFDO0lBQ1YsU0FBUyxFQUFFLFVBQVU7R0FDdEI7OztBcUJySUwsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBUjFCLEFBQUEsbUJBQW1CLENBQUM7SUFTaEIsYUFBYSxFdEJOUCxVQUE4QjtHc0JrRnZDOzs7QUFyRkQsQUFXRSxtQkFYaUIsQUFXaEIsTUFBTSxDQUFDO0VBQ04sT0FBTyxFQUFDLEVBQUU7RUFDVixPQUFPLEVBQUMsS0FBSztFQUNiLGNBQWMsRUFiUCxTQUFxQjtDQWM3Qjs7QUFFQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFqQjVCLEFBa0JNLG1CQWxCYSxBQWdCaEIsYUFBYSxBQUVULE1BQU0sQ0FBQztJQUNOLGNBQWMsRUFBQywwQkFBOEI7R0FDOUM7OztBQUlILE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQXhCNUIsQUF5Qk0sbUJBekJhLEFBdUJoQixjQUFjLEFBRVYsTUFBTSxDQUFDO0lBQ04sY0FBYyxFQUFDLHlCQUE0QjtHQUM1Qzs7O0FBM0JQLEFBK0JJLG1CQS9CZSxBQThCaEIsTUFBTSxDQUNMLDBCQUEwQixDQUFWO0VBQ2QsZUFBZSxFQUFFLFNBQVM7Q0FDM0I7O0FBRUYsQUFBRCwwQkFBUSxDQUFDO0VBQ1AsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLENBQUM7RUFDTixJQUFJLEVBQUUsQ0FBQztFQUNQLEtBQUssRUFBRSxDQUFDO0VBQ1IsTUFBTSxFQUFFLENBQUM7Q0FZVjs7QUFqQkEsQUFNQywwQkFOTSxBQU1MLE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBQyxFQUFFO0VBQ1YsZ0JBQWdCLEV2QnpDYixJQUFJO0V1QjBDUCxPQUFPLEVBQUMsR0FBRztFQUNYLFFBQVEsRUFBQyxRQUFRO0VBQ2pCLEtBQUssRUFBQyxJQUFJO0VBQ1YsTUFBTSxFQUFDLElBQUk7RUFDWCxHQUFHLEVBQUMsQ0FBQztFQUNMLElBQUksRUFBQyxDQUFDO0VBQ04sT0FBTyxFQUFDLENBQUM7Q0FDVjs7QUFFRixBQUFELDJCQUFTLENBQUM7RXJCK0tWLGFBQWEsRXFCOUtTLEtBQUs7RXJCK0t4QixVQUFVLEVxQi9LUyxLQUFLO0VyQnFMekIsV0FBVyxFQUFFLG1CQUFxQjtFcUJwTGxDLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixHQUFHLEVBQUUsQ0FBQztFQUNOLElBQUksRUFBRSxDQUFDO0NBQ1I7O0FBQ0EsQUFBRCw0QkFBVSxDQUFDO0VBQ1QsUUFBUSxFQUFFLFFBQVE7RUFDbEIsTUFBTSxFQUFDLENBQUM7RUFDUixJQUFJLEVBQUMsQ0FBQztFQUNOLEtBQUssRUFBQyxJQUFJO0VBQ1YsT0FBTyxFQUFDLElBQUk7RUFDWixPQUFPLEVBQUMsQ0FBQztDQUNWOztBQUNBLEFBQUQsNkJBQVcsQ0FBQztFQUNWLFNBQVMsRUFBQyxNQUFNO0VBQ2hCLFdBQVcsRUFBQyxHQUFHO0VBQ2YsZ0JBQWdCLEV2QnZFWCxJQUFJO0V1QndFVCxPQUFPLEVBQUMsWUFBWTtFQUNwQixPQUFPLEVBQUUsYUFBYTtFQUN0QixjQUFjLEVBQUUsU0FBUztDQUMxQjs7QUFDQSxBQUFELDBCQUFRLENBQUM7RUFDUCxTQUFTLEVBQUMsTUFBTTtFQUNoQixVQUFVLEV0QjVFSixVQUE4QjtFc0I2RXBDLFdBQVcsRUFBQyxDQUFDO0VBQ2IsV0FBVyxFQUFDLElBQUk7RUFDaEIsS0FBSyxFdkJqRkEsSUFBSTtFdUJrRlQsUUFBUSxFQUFFLE1BQU07Q0FDakI7O0FBRUgsQUFDRSxFQURBLEFBQ0MsMEJBQU8sQ0FBQztFQUNWLFVBQVUsRUFBQyxJQUFJO0NBQ2I7O0FBR0gsQUFBQSxjQUFjLENBQUMscUJBQXFCLENBQUMsa0JBQWtCLENBQUM7RUFBQyxPQUFPLEVBQUMsQ0FBQztDQUFHOztBQUNyRSxBQUFBLGNBQWMsQ0FBQyxxQkFBcUIsQ0FBQyw0QkFBNEIsQ0FBQztFQUFDLE1BQU0sRUFBRSxJQUFJO0NBQUc7O0FBQ2xGLEFBQUEsY0FBYyxDQUFDLHFCQUFxQixDQUFDLEVBQUUsQUFBQSxXQUFXLENBQUM7RUFBQyxNQUFNLEVBQUUsSUFBSTtDQUFHOztBQUNuRSxBQUFBLGNBQWMsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFLEFBQUEsV0FBVyxDQUFDLEVBQUUsQ0FBQztFQUFDLE1BQU0sRUFBRSxLQUFLO0NBQUc7O0FBQ3ZFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtFQUN6QixBQUFBLGNBQWMsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLEFBQUEsbUJBQW1CLENBQUM7SUFBQyxNQUFNLEVBQUUsS0FBSztHQUFHOzs7QUN0RzNFLEFBQUEsYUFBYSxDQUFDO0V0QmlCVixXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtDd0JuQm5COztBQWpCRSxBQUFELG9CQUFRLENBQUM7RUFDUCxTQUFTLEVBQUMsTUFBTTtFQUNoQixXQUFXLEVBQUMsR0FBRztFQUNmLFVBQVUsRUFBQyxNQUFNO0VBQ2pCLGNBQWMsRUFBRSxLQUFLO0VBQ3JCLGFBQWEsRUFBQyxJQUFJO0NBSW5COztBQUhDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQU54QixBQUFELG9CQUFRLENBQUM7SUFPTCxTQUFTLEV2QkRMLElBQThCO0d1QkdyQzs7O0FBQ0EsQUFBRCxtQkFBTyxDQUFDO0VBQ04sT0FBTyxFQUFDLElBQUk7RXRCRlosV0FBVyxFc0JHRyxJQUFJO0V0QkZsQixZQUFZLEVzQkVFLElBQUk7Q0FDbkI7O0FBZkgsQUFnQkUsYUFoQlcsQ0FnQlgsWUFBWSxDQUFDO0VBQ1gsR0FBRyxFQUFFLEdBQUc7Q0FDVDs7QUFHSCxBQUFBLFlBQVksQ0FBQztFQUNYLFVBQVUsRUFBQyxNQUFNO0NBaUJsQjs7QUFoQkUsQUFBRCxrQkFBTyxDQUFDO0VBQ04sS0FBSyxFeEJURCxPQUFPO0V3QlVYLFNBQVMsRUFBQyxJQUFJO0VBQ2QsTUFBTSxFQUFDLEtBQUs7RXRCc0RaLFFBQVEsRUFEd0IsUUFBUTtFQXFPMUMsT0FBTyxFQUFFLFlBQVk7RUFDckIsY0FBYyxFQUFFLE1BQU07RUFDdEIsU0FBUyxFQUFFLGdCQUFnQixDQUFDLGFBQWE7RUFDekMsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLGdCQUFnQjtFQVdwQyxRQUFRLEVBQUUsUUFBUTtDc0JsU2pCOztBQVRBLEF0QjBEQyxrQnNCMURLLEF0QjBESixPQUFPLENBQUs7RUFDVCxRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsR0FBRztFQUNSLElBQUksRUFBRSxHQUFHO0VBQ1QsU0FBUyxFQUFFLHFCQUFxQjtDQUNuQzs7QUFzT0gsVUFBVSxDQUFWLFlBQVU7RUFDUixHQUFHO0lBQ0QsU0FBUyxFQUFFLHFCQUFxQixDQUFDLFVBQVU7Ozs7QXNCdlM5QyxBdEIrU0Msa0JzQi9TSyxBdEI0U04sTUFBTSxBQUdKLE9BQU8sRXNCL1NULGtCQUFNLEF0QjZTTixNQUFNLEFBRUosT0FBTyxFc0IvU1Qsa0JBQU0sQXRCOFNOLE9BQU8sQUFDTCxPQUFPLENBQUM7RUFDUCxjQUFjLEVBQUUsWUFBWTtFQUM1QixrQkFBa0IsRUFBRSxJQUFJO0VBQ3hCLHlCQUF5QixFQUFFLE1BQU07RUFDakMseUJBQXlCLEVBQUUsQ0FBQztDQUM3Qjs7QXNCcFRGLEFBTUMsa0JBTkssQUFNSixXQUFXLENBQUE7RUFDVixTQUFTLEVBQUMsTUFBTTtDQUNqQjs7QUFFRixBQUFELGtCQUFPLENBQUM7RUFDTixjQUFjLEVBQUUsU0FBUztFQUN6QixTQUFTLEVBQUMsTUFBTTtFQUNoQixjQUFjLEVBQUUsS0FBSztFdEJkckIsWUFBWSxFc0JlRSxJQUFJO0V0QmRsQixhQUFhLEVzQmNDLElBQUk7Q0FDbkI7O0FDdENILEFBQUEsa0JBQWtCLENBQUM7RXZCaUJmLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0N5Qi9CbkI7O0FBTEMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBQ3JCLEFBQUEsVUFBVSxHQUhkLGtCQUFrQixDQUdDO0lBQ2IsV0FBVyxFQUFFLENBQUM7R0FDZjs7O0FBR0wsQUFBQSxTQUFTLENBQUM7RUFFUixhQUFhLEVBQUMsSUFBSTtDQThEbkI7O0FBaEVELEFBSUUsU0FKTyxBQUlOLFFBQVEsQ0FBQztFQUNSLGFBQWEsRUFBQyxDQUFDO0VBQ2YsU0FBUyxFQUFFLEtBQUs7RUFDaEIsV0FBVyxFekJjRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFVBQVU7RXlCYnhDLFVBQVUsRUFBQyxJQUFJO0NBQ2hCOztBQUNBLEFBQUQsMkJBQW1CLENBQUM7RUFDbEIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsYUFBYSxFQUFDLElBQUk7Q0FNbkI7O0FBUkEsQUFHQywyQkFIaUIsQUFHaEIsTUFBTSxDQUFBO0VBQ0wsT0FBTyxFQUFFLEVBQUU7RUFDWCxPQUFPLEVBQUUsS0FBSztFQUNkLGNBQWMsRUFmVCxTQUFxQjtDQWdCM0I7O0FBRUYsQUFBRCx5QkFBaUIsQ0FBQztFQUNoQixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsQ0FBQztFQUNOLElBQUksRUFBRSxDQUFDO0VBQ1AsS0FBSyxFQUFFLENBQUM7RUFDUixNQUFNLEVBQUUsQ0FBQztFQUNULFFBQVEsRUFBRSxNQUFNO0NBQ2pCOztBQUNBLEFBQUQsaUJBQVMsQ0FBQztFdkJzTVYsYUFBYSxFdUJyTVMsS0FBSztFdkJzTXhCLFVBQVUsRXVCdE1TLEtBQUs7RXZCNE16QixXQUFXLEVBQUUsbUJBQXFCO0V1QjNNbEMsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLEdBQUcsRUFBRSxDQUFDO0VBQ04sSUFBSSxFQUFFLENBQUM7RUFDUCxhQUFhLEVBQUMsSUFBSTtDQUluQjs7QUFIQyxBQUFBLFFBQVEsQ0FSVCxpQkFBUSxDQVFJO0VBQ1QsU0FBUyxFQUFFLElBQUk7Q0FDaEI7O0FBRUYsQUFBRCxnQkFBUSxDQUFDO0VBQ1AsS0FBSyxFekJqQ0QsT0FBTztFeUJrQ1gsY0FBYyxFQUFFLEtBQUs7RUFDckIsY0FBYyxFQUFFLFNBQVM7RUFDekIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsYUFBYSxFQUFDLElBQUk7RUFDbEIsU0FBUyxFQUFDLE9BQU87Q0FDbEI7O0FBQ0EsQUFBRCxnQkFBUSxDQUFDO0VBQ1AsU0FBUyxFQUFDLElBQUk7RUFDZCxhQUFhLEVBQUMsSUFBSTtFQUNsQixXQUFXLEVBQUUsR0FBRztFQUNoQixXQUFXLEVBQUMsR0FBRztDQUloQjs7QUFIQyxBQUFBLGVBQWUsQUFBQSxNQUFNLENBTHRCLGdCQUFPLENBS2M7RUFDbEIsZUFBZSxFQUFDLFNBQVM7Q0FDMUI7O0FBRUYsQUFBRCxlQUFPLENBQUM7RUFDTixhQUFhLEVBQUMsSUFBSTtDQUNuQjs7QUFDQSxBQUFELHFCQUFhLENBQUM7RUFDWixLQUFLLEV6QnJERCxPQUFPO0V5QnNEWCxjQUFjLEVBQUUsS0FBSztFQUNyQixjQUFjLEVBQUUsU0FBUztDQUMxQjs7QUFHSCxNQUFNLEVBQUMsU0FBUyxFQUFFLE1BQU07RUFDcEIsQUFBQSxJQUFJLEFBQUEsVUFBVSxDQUFDLGtCQUFrQixDQUFDLDBCQUEwQixDQUFDLFNBQVMsQ0FBQztJQUNuRSxVQUFVLEVBQUUsS0FBSztHQUNwQjs7O0FDN0VMLEFBQUEsWUFBWSxDQUFDO0V4QmlCVCxXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtFMEJwQ2xCLGdCQUFnQixFMUJPTCxPQUFPO0MwQjJEbkI7O0FBaEVHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUR6QixBQUFELGlCQUFNLENBQUM7SUFFSCxPQUFPLEVBQUMsSUFBSTtHQVVmOzs7QUFaQSxBQUlDLGlCQUpJLEdBSUEsQ0FBQyxDQUFDO0VBQ0osS0FBSyxFQUFFLElBQUk7RUFDWCxJQUFJLEVBQUUsUUFBUTtFQUNkLFFBQVEsRUFBQyxNQUFNO0VBQ2YsT0FBTyxFQUFDLElBQUk7RUFDWixlQUFlLEVBQUUsTUFBTTtFQUN2QixXQUFXLEVBQUMsTUFBTTtDQUNuQjs7QUFFRixBQUFELG9CQUFTLENBQUM7RUFDUixVQUFVLEVBQUMsS0FBSztDQUlqQjs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFGekIsQUFBRCxvQkFBUyxDQUFDO0lBR04sT0FBTyxFQUFDLElBQUk7R0FFZjs7O0FBQ0EsQUFBRCxrQkFBTyxDQUFDO0VBQ04sU0FBUyxFQUFDLElBQUk7RUFDZCxZQUFZLEVBQUUsSUFBSTtDQVNuQjs7QUFQQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFKekIsQUFBRCxrQkFBTyxDQUFDO0lBS0osT0FBTyxFQUFDLEtBQUs7SUFDYixZQUFZLEVBQUUsQ0FBQztJQUNmLFNBQVMsRUFBRSxLQUFLO0lBQ2hCLE1BQU0sRUFBRSxJQUFJO0lBQ1osU0FBUyxFekJ2QkwsVUFBOEI7R3lCeUJyQzs7O0FBQ0EsQUFBRCxrQkFBTyxDQUFDO0VBQ04sUUFBUSxFQUFDLFFBQVE7RUFDakIsYUFBYSxFQUFDLElBQUk7Q0ErQm5COztBQTlCQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFIekIsQUFBRCxrQkFBTyxDQUFDO0lBSUosWUFBWSxFQUFFLElBQUk7R0E2QnJCO0VBakNBLEFBS0csa0JBTEcsQUFLRixPQUFPLENBQUM7SUFDUCxPQUFPLEVBQUMsRUFBRTtJQUNWLEtBQUssRUFBRSxNQUFNO0lBQ2IsTUFBTSxFQUFFLE1BQU07SUFDZCxnQkFBZ0IsRTFCcENmLElBQUk7STBCcUNMLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxNQUFNO0lBQ1gsSUFBSSxFQUFFLENBQUM7SUFDUCxhQUFhLEVBQUUsR0FBRztHQUNuQjs7O0FBZEosQUFnQkMsa0JBaEJLLEdBZ0JILENBQUMsQ0FBQztFQUNGLFFBQVEsRUFBQyxRQUFRO0NBZWxCOztBQWhDRixBQWtCRyxrQkFsQkcsR0FnQkgsQ0FBQyxBQUVBLE1BQU0sQ0FBQztFQUlOLEtBQUssRTFCekNMLE9BQU87RTBCMENQLGVBQWUsRUFBRSxTQUFTO0NBUTNCOztBQVpDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQW5CN0IsQW5CNkhDLGtCbUI3SEssR0FnQkgsQ0FBQyxBQUVBLE1BQU0sQW5CMkdSLE9BQU8sQ0FBSztJQXpKYixXQUFXLEVBQUUsVUFBVTtJQUNuQixzQkFBc0IsRUFBRSxXQUFXO0lBQ25DLHVCQUF1QixFQUFFLFNBQVM7SUFDdEMsVUFBVSxFQUFFLE1BQU07SUFDbEIsWUFBWSxFQUFFLE1BQU07SUFDcEIsV0FBVyxFQUFFLE1BQU07SUFFbkIsZUFBZSxFQUFFLElBQUk7SUFDckIsY0FBYyxFQUFFLElBQUk7SUF1SmhCLE9BQU8sRUFsR0EsSUFBTztHQW1HakI7OztBbUJwSUYsQW5CNkhDLGtCbUI3SEssR0FnQkgsQ0FBQyxBQUVBLE1BQU0sQW5CMkdSLE9BQU8sQ21CckdLO0VBQ1AsUUFBUSxFQUFDLFFBQVE7RUFDakIsSUFBSSxFQUFFLEtBQUs7RUFDWCxTQUFTLEVBQUUsSUFBSTtFQUNmLEdBQUcsRUFBRSxNQUFNO0VBQ1gsS0FBSyxFMUJ4RE4sSUFBSTtDMEJ5REo7O0FDaEVULEFBQUEsV0FBVyxDQUFDO0V6QmlCUixXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtFMkJwQ2xCLFVBQVUsRUFBRSxNQUFNO0NBeUJuQjs7QUEzQkQsQUFHRSxXQUhTLENBR1QsWUFBWSxDQUFDO0VBQ1gsR0FBRyxFQUFFLGdCQUFnQjtDQUN0Qjs7QUFMSCxBQU1FLFdBTlMsQ0FNVCxhQUFhLENBQUM7RXpCS1osV0FBVyxFeUJKRyxJQUFJO0V6QktsQixZQUFZLEV5QkxFLElBQUk7Q0FDbkI7O0FBQ0EsQUFBRCxtQkFBUyxDQUFDO0V6QnVFUixRQUFRLEVBRHdCLFFBQVE7RXlCbkV4QyxjQUFjLEVBQUUsU0FBUztDQWMxQjs7QUFqQkEsQXBCc0pDLG1Cb0J0Sk8sQXBCc0pOLE1BQU0sQ0FBTTtFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUFsR0EsSUFBTztDQW1HakI7O0FvQjdKRixBekJ3RUMsbUJ5QnhFTyxBekJ3RU4sT0FBTyxDQUFLO0VBQ1QsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLEdBQUc7RUFDUixJQUFJLEVBQUUsR0FBRztFQUNULFNBQVMsRUFBRSxxQkFBcUI7Q0FDbkM7O0F5QjdFRixBcEJzSkMsbUJvQnRKTyxBcEJzSk4sTUFBTSxDb0JsSkM7RUFDTixPQUFPLEVBQUUsWUFBWTtFQUNyQixjQUFjLEVBQUUsTUFBTTtFQUN0QixXQUFXLEVBQUMsTUFBTTtFQUNsQixVQUFVLEVBQUUsT0FBTztFQUNuQixTQUFTLEVBQUMsYUFBYTtFQUN2QixTQUFTLEVBQUUsTUFBTTtDQU1sQjs7QUFMQyxBQUFBLHNCQUFzQixDQVh6QixtQkFBUSxBQUlOLE1BQU0sQ0FPb0I7RUFDdkIsU0FBUyxFQUFDLGNBQWM7RUFDeEIsV0FBVyxFQUFDLElBQUk7RUFDaEIsVUFBVSxFQUFFLE9BQU87Q0FDcEI7O0FBSVAsQUFBQSxVQUFVLENBQUM7RUFFVCxhQUFhLEVBQUMsSUFBSTtDQXdDbkI7O0FBdkNFLEFBQUQsZ0JBQU8sQ0FBQztFQUNOLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFNBQVMsRUFBQyxNQUFNO0VBQ2hCLE1BQU0sRUFBRSxNQUFNO0VBQ2QsUUFBUSxFQUFFLE1BQU07RUFDaEIsV0FBVyxFQUFDLEdBQUc7RUFDZixVQUFVLEVBQUMsSUFBSTtDQUNoQjs7QUFDQSxBQUFELGdCQUFPLENBQUM7RUFDTixPQUFPLEVBQUMsS0FBSztDQUlkOztBQUxBLEFBRUMsZ0JBRkssQUFFSixNQUFNLENBQUMsZ0JBQWdCLENBQUY7RUFDcEIsZUFBZSxFQUFFLFNBQVM7Q0FDM0I7O0FBRUYsQUFBRCw0QkFBbUIsQ0FBQztFQUNsQixRQUFRLEVBQUUsUUFBUTtFQUNqQixhQUFhLEVBQUMsSUFBSTtDQU1wQjs7QUFSQSxBQUdDLDRCQUhpQixBQUdoQixNQUFNLENBQUE7RUFDTCxPQUFPLEVBQUUsRUFBRTtFQUNYLE9BQU8sRUFBRSxLQUFLO0VBQ2QsY0FBYyxFQUFFLElBQUk7Q0FDckI7O0FBRUYsQUFBRCwwQkFBaUIsQ0FBQztFQUNoQixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsQ0FBQztFQUNOLElBQUksRUFBRSxDQUFDO0VBQ1AsS0FBSyxFQUFFLENBQUM7RUFDUixNQUFNLEVBQUUsQ0FBQztFQUNULFFBQVEsRUFBRSxNQUFNO0NBQ2pCOztBQUNBLEFBQUQsa0JBQVMsQ0FBQztFekIyS1YsYUFBYSxFeUIxS1MsS0FBSztFekIyS3hCLFVBQVUsRXlCM0tTLEtBQUs7RXpCaUx6QixXQUFXLEVBQUUsbUJBQXFCO0V5QmhMbEMsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLEdBQUcsRUFBRSxDQUFDO0VBQ04sSUFBSSxFQUFFLENBQUM7Q0FDUjs7QUNyRUgsQUFBQSxlQUFlLENBQUM7RTFCaUJaLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0U0QnBDbEIsZ0JBQWdCLEU1Qk9MLE9BQU87RTRCTmxCLFVBQVUsRUFBQyxNQUFNO0NBbUVsQjs7QUFsRUUsQUFBRCxzQkFBUSxDQUFDO0VBQ1AsS0FBSyxFNUJVRCxPQUFPO0U0QlRYLGFBQWEsRUFBQyxNQUFNO0NBQ3JCOztBQUlBLEFBQUQscUJBQU8sQ0FBQztFQUNOLGFBQWEsRUFBQyxNQUFNO0NBc0JyQjs7QUF2QkEsQUFHQyxxQkFISyxDQUdMLEtBQUssQ0FBQztFQUNKLFFBQVEsRUFBQyxRQUFRO0NBS2xCOztBQVRGLEFBS0cscUJBTEcsQ0FHTCxLQUFLLEFBRUYsT0FBTyxDQUFDO0VBQ1AsUUFBUSxFQUFDLFFBQVE7RUFDakIsT0FBTyxFQUFDLENBQUM7Q0FDVjs7QUFSSixBckJvSkMscUJxQnBKSyxDQVVMLGVBQWUsQXJCMElkLE1BQU0sQ0FBTTtFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUFoQ0EsSUFBTztDQWlDakI7O0FxQjNKRixBckJvSkMscUJxQnBKSyxDQVVMLGVBQWUsQXJCMElkLE1BQU0sQ3FCeElHO0VBQ04sUUFBUSxFQUFDLFFBQVE7RUFDakIsS0FBSyxFQUFFLFlBQVk7RUFDbkIsT0FBTyxFQWJTLElBQUk7RUFjcEIsSUFBSSxFQUFDLENBQUM7Q0FDUDs7QUFqQkosQUFtQkMscUJBbkJLLENBbUJMLGNBQWMsQ0FBQztFQUViLE9BQU8sRUFuQlcsSUFBSTtDQW9CdkI7O0FBdEJGLEFyQm9KQyxxQnFCcEpLLENBbUJMLGNBQWMsQXJCaUliLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUFoQ0EsSUFBTztDQWlDakI7O0FxQm5JRixBQUFELHFCQUFPLENBQUM7RUFDTixTQUFTLEVBQUMsTUFBTTtFQUNoQixXQUFXLEVBQUMsR0FBRztFQUNmLFVBQVUsRUFBQyxNQUFNO0VBQ2pCLE1BQU0sRUFBQyxNQUFNO0VBQ2IsU0FBUyxFQUFDLEtBQUs7Q0FJaEI7O0FBSEMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBTnhCLEFBQUQscUJBQU8sQ0FBQztJQU9KLFNBQVMsRTNCbENMLFVBQThCO0cyQm9DckM7OztBQUNBLEFBQUQscUJBQU8sQ0FBQztFQUNOLFNBQVMsRUFBQyxNQUFNO0VBQ2hCLFVBQVUsRUFBQyxNQUFNO0NBQ2xCOztBQUNBLEFBQ0MscUJBREssQUFDSixPQUFPLENBQUM7RUFDUCxPQUFPLEVBQUMsT0FBTztDQUNoQjs7QUFDRCxBQUFBLHNCQUFzQixDQUp2QixxQkFBTSxBQUltQixRQUFRLENBQUM7RUFDL0IsT0FBTyxFQUFDLElBQUk7Q0FDYjs7QUFFRixBQUNDLHNCQURNLEFBQ0wsT0FBTyxDQUFDO0VBQ1AsT0FBTyxFQUFDLE9BQU87Q0FDaEI7O0FBRUYsQUFDQyxzQkFETSxBQUNMLE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBQyxPQUFPO0NBQ2hCOztBQUNELEFBQUEsc0JBQXNCLENBSnZCLHNCQUFPLEFBSWtCLFFBQVEsQ0FBQztFQUMvQixPQUFPLEVBQUMsSUFBSTtDQUNiOztBQ3BFTCxBQUFBLFVBQVUsQ0FBQztFM0JpQlAsV0FBVyxFRnFCQyxJQUFJO0VFcEJoQixjQUFjLEVGb0JGLElBQUk7QzZCakJuQjs7QUFqQkUsQUFBRCx1QkFBYyxDQUFDO0VBQ2IsT0FBTyxFQUFDLFlBQVk7Q0FlckI7O0FBZEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRnpCLEFBQUQsdUJBQWMsQ0FBQztJQUdYLE9BQU8sRUFBQyxLQUFLO0dBYWhCOzs7QUFWRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFOM0IsQUFLQyx1QkFMWSxHQUFiLHVCQUFhLENBS047SUFFRixXQUFXLEVBQUMsSUFBSTtHQVFuQjs7O0FBTkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBVDNCLEFBS0MsdUJBTFksR0FBYix1QkFBYSxDQUtOO0lBS0YsV0FBVyxFQUFDLElBQUk7R0FLbkI7OztBQUhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQVozQixBQUtDLHVCQUxZLEdBQWIsdUJBQWEsQ0FLTjtJQVFGLFVBQVUsRUFBQyxJQUFJO0dBRWxCOzs7QUNuQkwsQUFBQSxtQkFBbUIsQ0FBQztFNUJpQmhCLFdBQVcsRTRCaEJDLElBQUk7RTVCaUJoQixjQUFjLEU0QmpCRixJQUFJO0VBQ2xCLFVBQVUsRUFBQyxHQUFHLENBQUMsS0FBSyxDOUJLYixJQUFJO0U4QkpYLGFBQWEsRUFBQyxHQUFHLENBQUMsS0FBSyxDOUJJaEIsSUFBSTtFOEJIWCxVQUFVLEVBQUMsSUFBSTtDQTBDaEI7O0FBekNFLEFBQUQsMkJBQVMsQ0FBQztFQUVSLFNBQVMsRUFBQyxJQUFJO0VBQ2QsV0FBVyxFQUFDLEdBQUc7RUFDZixPQUFPLEVBQUUsS0FBSztFQUNkLEtBQUssRUFBQyxJQUFJO0VBQ1YsVUFBVSxFQUFDLElBQUk7RUFDZixZQUFZLEVBQUUsSUFBSTtDQWlCbkI7O0FBeEJBLEF2QjBKQywyQnVCMUpPLEF2QjBKTixPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBbEdBLElBQU87Q0FtR2pCOztBdUJqS0YsQXZCMEpDLDJCdUIxSk8sQXZCMEpOLE9BQU8sQ3VCaEpDO0VBQ1AsT0FBTyxFQUFDLFlBQVk7RUFDcEIsU0FBUyxFQUFDLE1BQU07RUFDaEIsV0FBVyxFQUFFLE9BQU87RUFDcEIsWUFBWSxFQUFFLElBQUk7RUFDbEIsVUFBVSxFQUFFLGFBQWE7Q0FRMUI7O0FBUEMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBaEIxQixBdkIwSkMsMkJ1QjFKTyxBdkIwSk4sT0FBTyxDdUJoSkM7SUFPTCxTQUFTLEU3QmRQLFVBQThCO0k2QmU1QixXQUFXLEVBQUUsT0FBTztHQUszQjs7O0FBSEMsQUFBQSxzQkFBc0IsQ0FwQnpCLDJCQUFRLEFBVU4sT0FBTyxDQVVtQjtFQUN2QixTQUFTLEVBQUMsYUFBYTtDQUN4Qjs7QUFHSixBQUFELDRCQUFVLENBQUM7RTVCYlQsV0FBVyxFNEJjRyxJQUFJO0U1QmJsQixjQUFjLEU0QmFBLElBQUk7Q0FDbkI7O0FBQ0EsQUFBRCw0QkFBVSxDQUFDLEVBQUUsQ0FBQztFQUNaLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLGFBQWEsRUFBRSxJQUFJO0NBSXBCOztBQU5BLEFBR0MsNEJBSFEsQ0FBQyxFQUFFLEFBR1YsWUFBWSxDQUFDO0VBQ1osVUFBVSxFQUFDLENBQUM7Q0FDYjs7QUFFRixBQUNDLHlCQURLLENBQ0wsQ0FBQyxDQUFDO0VBQ0EsV0FBVyxFQUFDLEdBQUc7RUFDZixlQUFlLEVBQUUsU0FBUztDQUMzQjs7QUM1Q0wsQUFBQSxvQkFBb0IsQ0FBQztFN0JpQmpCLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0UrQnBDbEIsZ0JBQWdCLEUvQlFYLE9BQU87RStCUFosS0FBSyxFL0JJRSxJQUFJO0UrQkhYLFVBQVUsRUFBRSxNQUFNO0NBYW5COztBQVpFLEFBQUQsMkJBQVEsQ0FBQztFQUNQLFNBQVMsRUFBQyxJQUFJO0VBQ2QsV0FBVyxFQUFDLEdBQUc7RUFDZixhQUFhLEVBQUMsSUFBSTtDQUNuQjs7QUFDQSxBQUVHLDZCQUZNLENBQ1IsQ0FBQyxBQUNFLE1BQU0sQ0FBQztFQUNOLGVBQWUsRUFBRSxTQUFTO0NBQzNCOztBQUtQLEFBQUEscUJBQXFCLENBQUMsaUJBQWlCLENBQ3ZDO0VBQ0UsVUFBVSxFQUFFLE9BQU87RUFDbkIsY0FBYyxFQUFFLElBQUk7RUFDcEIsV0FBVyxFQUFFLElBQUk7Q0FDbEI7O0FBQ0QsQUFBQSxxQkFBcUIsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQzFDO0VBQ0UsT0FBTyxFQUFFLFdBQVc7Q0FDckI7O0FBQ0QsQUFBQSxxQkFBcUIsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQzFDO0VBQ0UsYUFBYSxFQUFFLElBQUk7Q0FDcEI7O0FDaENELEFBQUEsaUJBQWlCLENBQUM7RUFDaEIsZ0JBQWdCLEVoQ1FMLE9BQU87RWdDUGxCOzs7Ozs7Ozs7Ozs7Ozs7O0tBZ0JHO0NBMEpKOztBQXpKRSxBQUNDLDJCQURTLENBQ1QsV0FBVyxDQUFDO0VBQ1YsSUFBSSxFQUFHLE1BQU07RUFDYixPQUFPLEVBQUMsQ0FBQztDQUNWOztBQUpGLEFBS0MsMkJBTFMsQ0FLVCxXQUFXLENBQUM7RUFDVixLQUFLLEVBQUcsTUFBTTtDQUNmOztBQVBGLEFBU0csMkJBVE8sQ0FRVCxZQUFZLEFBQ1QsT0FBTyxDQUFDO0VBQ1AsT0FBTyxFQUFDLENBQUM7RUFDVCxLQUFLLEVoQ3hCSixJQUFJO0VnQ3lCTCxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENoQ3hCbkIsSUFBSTtFZ0N5QlgsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsR0FBRztFQUNWLFdBQVcsRUFBQyxHQUFHO0NBQ2hCOztBQWhCSixBQWtCQywyQkFsQlMsQ0FrQlQsV0FBVyxDQUFDO0VBQ1YsTUFBTSxFQUFDLElBQUk7Q0FDWjs7QUFHRyxBQUFBLFNBQVMsQ0F2QmQsMkJBQVUsQUFxQlIsb0JBQW9CLENBQ25CLFlBQVksQ0FDRTtFQUNWLE9BQU8sRUFBQyxJQUFJLENBQUEsVUFBVTtDQUN2Qjs7QUFLRCxBQUFBLFNBQVMsQ0E5QmQsMkJBQVUsQUE0QlIsb0JBQW9CLEFBQUEsTUFBTSxDQUN6QixZQUFZLENBQ0U7RUFDVixPQUFPLEVBQUMsWUFBWSxDQUFBLFVBQVU7Q0FDL0I7O0FBS0wsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRHpCLEFBQUQsMEJBQVUsQ0FBQztJQUVQLFdBQVcsRUFBQyxJQUFJO0lBQ2hCLGNBQWMsRUFBQyxJQUFJO0dBRXRCOzs7QUFDQSxBQUFELHdCQUFRLENBQUM7RUFDUCxXQUFXLEVBQUMsR0FBRztFQUNmLGFBQWEsRUFBQyxJQUFJO0VBQ2xCLFNBQVMsRUFBRSxNQUFNO0NBYWxCOztBQVpDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUp6QixBQUFELHdCQUFRLENBQUM7STlCbERQLFdBQVcsRURITCxXQUE4QjtJQ0lwQyxZQUFZLEVESk4sV0FBOEI7SStCMkRsQyxnQkFBZ0IsRWhDcERkLE9BQU87SWdDcURULEtBQUssRWhDOURGLElBQUk7SWdDK0RQLFdBQVcsRUFBQyxHQUFHO0lBQ2YsY0FBYyxFQUFFLFNBQVM7SUFDekIsVUFBVSxFQUFDLE1BQU07SUFDakIsT0FBTyxFQUFDLFNBQVM7R0FLcEI7OztBQUhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQWJ6QixBQUFELHdCQUFRLENBQUM7SUFjUCxhQUFhLEVBQUMsSUFBSTtHQUVuQjs7O0FBRUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRHpCLEFBQUQsdUJBQU8sQ0FBQztJQUVKLGFBQWEsRUFBQyxJQUFJO0dBUXJCOzs7QUFOQyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07RUFKMUIsQUFBRCx1QkFBTyxDQUFDO0lBS0osYUFBYSxFQUFDLElBQUk7R0FLckI7OztBQUhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQVB6QixBQUFELHVCQUFPLENBQUM7SUFRSixjQUFjLEVBQUMsSUFBSTtHQUV0Qjs7O0FBQ0EsQUFBRCx1QkFBTyxDQUFDO0VBQ04sVUFBVSxFQUFDLElBQUk7Q0FnQmhCOztBQWZDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUZ6QixBQUFELHVCQUFPLENBQUM7SUFHSixRQUFRLEVBQUMsUUFBUTtJQUNqQixZQUFZLEVBQUMsSUFBSTtHQWFwQjtFQWpCQSxBQUtHLHVCQUxHLEFBS0YsT0FBTyxDQUFDO0lBQ1AsT0FBTyxFQUFDLEVBQUU7SUFDVixRQUFRLEVBQUMsUUFBUTtJQUNqQixJQUFJLEVBQUUsQ0FBQztJQUNQLEdBQUcsRUFBRSxNQUFNO0lBQ1gsT0FBTyxFQUFDLEtBQUs7SUFDYixLQUFLLEVBQUMsSUFBSTtJQUNWLE1BQU0sRUFBQyxJQUFJO0lBQ1gsYUFBYSxFQUFDLEdBQUc7SUFDakIsZ0JBQWdCLEVoQ3hGaEIsT0FBTztHZ0N5RlI7OztBQUlILE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUR6QixBQUFELDBCQUFVLENBQUM7SUFFUCxVQUFVLEVBQUMsSUFBSTtJQUNmLGFBQWEsRUFBQyxJQUFJO0dBUXJCOzs7QUFOQyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07RUFMMUIsQUFBRCwwQkFBVSxDQUFDO0lBTVAsVUFBVSxFQUFDLE1BQU07R0FLcEI7OztBQUhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQVJ6QixBQUFELDBCQUFVLENBQUM7SUFTUCxPQUFPLEVBQUMsSUFBSTtHQUVmOzs7QUFDQSxBQUFELHNCQUFNLENBQUM7RTlCakdMLFlBQVksRThCa0dFLElBQUk7RTlCakdsQixhQUFhLEU4QmlHQyxJQUFJO0VBQ2xCLFVBQVUsRUFBQyxJQUFJO0VBQ2YsWUFBWSxFQUFDLElBQUk7Q0FDbEI7O0FBQ0EsQUFBRCxpQ0FBaUIsQ0FBQztFQUNoQixRQUFRLEVBQUUsUUFBUTtDQU1uQjs7QUFQQSxBQUVDLGlDQUZlLEFBRWQsTUFBTSxDQUFDO0VBQ04sT0FBTyxFQUFDLEVBQUU7RUFDVixPQUFPLEVBQUMsS0FBSztFQUNiLGNBQWMsRUFBQyxHQUFHO0NBQ25COztBQUdELEFBQUEsa0JBQWtCLENBRG5CLHlCQUFRLENBQ2E7RUFDbEIsVUFBVSxFQUFFLEtBQUs7RUFDakIsV0FBVyxFQUFFLG1CQUFtQjtFQUNoQyxRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJO0VBQ1osR0FBRyxFQUFFLENBQUM7RUFDTixJQUFJLEVBQUUsQ0FBQztDQUNSOztBQUVGLEFBQUQsMEJBQVUsQ0FBQztFQUNULFFBQVEsRUFBQyxRQUFRO0VBQ2pCLE1BQU0sRUFBQyxDQUFDO0VBQ1IsS0FBSyxFQUFDLElBQUk7RUFDVixnQkFBZ0IsRWhDNUlYLGtCQUFJO0VnQzZJVCxLQUFLLEVoQzlJQSxJQUFJO0VnQytJVCxVQUFVLEVBQUMsTUFBTTtFQUNqQixTQUFTLEVBQUUsTUFBTTtFQUNwQixPQUFPLEVBQUMsQ0FBQztFQUNOLFVBQVUsRUFBRSxvQkFBb0I7RUFDaEMsT0FBTyxFQUFDLGFBQWE7RUFDckIsTUFBTSxFQUFDLE9BQU87Q0FpQmY7O0FBaEJDLEFBQUEsa0JBQWtCLENBWm5CLDBCQUFTLENBWVk7RUFDbEIsT0FBTyxFQUFDLENBQUM7Q0FDVjs7QUFkRixBekJnQkMsMEJ5QmhCUSxBekJnQlAsT0FBTyxDQUFLO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQXZIQSxJQUFPO0NBd0hqQjs7QXlCdkJGLEF6QmdCQywwQnlCaEJRLEF6QmdCUCxPQUFPLEN5QkFDO0VBQ1AsUUFBUSxFQUFDLFFBQVE7RUFDakIsR0FBRyxFQUFDLEdBQUc7RUFDUCxLQUFLLEVBQUMsR0FBRztFQUNULFNBQVMsRUFBQyxJQUFJO0VBQ2QsT0FBTyxFQUFFLEdBQUc7Q0FDYjs7QUF0QkYsQUF3QkcsMEJBeEJNLEFBdUJQLE1BQU0sQUFDSixPQUFPLENBQUM7RUFDUCxPQUFPLEVBQUUsQ0FBQztDQUNYOztBQ3pLUCxBQUFBLGVBQWUsQ0FBQztFL0JpQlosV0FBVyxFRnFCQyxJQUFJO0VFcEJoQixjQUFjLEVGb0JGLElBQUk7RWlDcENsQixVQUFVLEVBQUUsTUFBTTtDQWlCbkI7O0FBaEJFLEFBQUQsb0JBQU0sQ0FBQztFQUNMLE9BQU8sRUFBQyxLQUFLO0VBQ2IsS0FBSyxFQUFDLElBQUk7RUFDVixlQUFlLEVBQUMsT0FBTztDQVN4Qjs7QUFaQSxBQUlDLG9CQUpJLEFBSUgsT0FBTyxDQUFDO0VBQ1AsT0FBTyxFQUFDLEVBQUU7RUFDVixPQUFPLEVBQUMsS0FBSztFQUNiLFdBQVcsRUFBQyxHQUFHO0NBSWhCOztBQUhDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQVIxQixBQUlDLG9CQUpJLEFBSUgsT0FBTyxDQUFDO0lBS0wsV0FBVyxFQUFDLElBQUk7R0FFbkI7OztBQUVGLEFBQUQscUJBQU8sQ0FBQztFQUNOLFdBQVcsRUFBQyxJQUFJO0NBQ2pCOztBQUVILEFBQUEsVUFBVSxDQUFDO0VBQ1QsUUFBUSxFQUFDLFFBQVE7Q0FvSGxCOztBQW5IQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFGekIsQUFBQSxVQUFVLENBQUM7SS9CVFAsV0FBVyxFK0JZRyxLQUFLO0kvQlhuQixZQUFZLEUrQldFLEtBQUs7R0FrSHRCOzs7QUFoSEMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBTHpCLEFBQUEsVUFBVSxDQUFDO0kvQlRQLFdBQVcsRStCZUcsS0FBSztJL0JkbkIsWUFBWSxFK0JjRSxLQUFLO0dBK0d0Qjs7O0FBckhELEFBUUUsVUFSUSxBQVFQLE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBQyxFQUFFO0VBQ1YsUUFBUSxFQUFDLFFBQVE7RUFDakIsTUFBTSxFQUFDLElBQUk7RUFDWCxHQUFHLEVBQUMsQ0FBQztFQUNMLEtBQUssRUFBQyxHQUFHO0VBQ1QsU0FBUyxFQUFDLGdCQUFnQjtFQUMxQixVQUFVLEVBQUUseURBQXVEO0VBQ25FLGVBQWUsRUFBRSxPQUFPO0NBUXpCOztBQVBDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQWpCM0IsQUFRRSxVQVJRLEFBUVAsT0FBTyxDQUFDO0lBVUwsSUFBSSxFQUFDLE1BQU07SUFDWCxHQUFHLEVBQUMsSUFBSTtHQUtYOzs7QUFIQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFyQjNCLEFBUUUsVUFSUSxBQVFQLE9BQU8sQ0FBQztJQWNMLE9BQU8sRUFBQyxFQUFFO0dBRWI7OztBQXhCSCxBQXlCRSxVQXpCUSxHQUFWLFVBQVUsQ0F5QkY7RUFDSixXQUFXLEVBQUMsSUFBSTtDQUNqQjs7QUFDQSxBQUFELGtCQUFTLENBQUM7RUFDUixRQUFRLEVBQUMsUUFBUTtDQUlsQjs7QUFIQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFGeEIsQUFBRCxrQkFBUyxDQUFDO0lBR04sZ0JBQWdCLEVqQzdDYixJQUFJO0dpQytDVjs7O0FBQ0EsQUFBRCxnQkFBTyxDQUFDO0VBQ04sS0FBSyxFQUFDLElBQUk7RUFDVixNQUFNLEVBQUMsSUFBSTtFQUNYLGdCQUFnQixFakMxQ1osT0FBTztFaUMyQ1gsYUFBYSxFQUFFLEdBQUc7RS9CL0NsQixXQUFXLEUrQmdERyxJQUFJO0UvQi9DbEIsWUFBWSxFK0IrQ0UsSUFBSTtDQWFuQjs7QUFaQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFOeEIsQUFBRCxnQkFBTyxDQUFDO0lBT0osS0FBSyxFQUFDLElBQUk7SUFDVixNQUFNLEVBQUMsSUFBSTtJQUNYLFFBQVEsRUFBQyxRQUFRO0lBQ2pCLElBQUksRUFBQyxNQUFNO0lBQ1gsR0FBRyxFQUFDLEdBQUc7SUFDUCxTQUFTLEVBQUMscUJBQW9CO0lBQzlCLE1BQU0sRUFBQyxNQUFNLENBQUMsS0FBSyxDakM3RGhCLElBQUk7R2lDa0VWOzs7QUFIQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFmeEIsQUFBRCxnQkFBTyxDQUFDO0lBZ0JKLGFBQWEsRUFBQyxJQUNoQjtHQUNEOzs7QUFDQSxBQUFELGlCQUFRLENBQUM7RUFDUCxTQUFTLEVBQUMsTUFBTTtFQUNoQixjQUFjLEVBQUUsU0FBUztFQUN6QixLQUFLLEVqQzdERCxPQUFPO0NpQzhEWjs7QUFDQSxBQUFELGlCQUFRLENBQUM7RUFDUCxTQUFTLEVBQUMsTUFBTTtFQUNoQixjQUFjLEVBQUUsU0FBUztFQUN6QixXQUFXLEVBQUMsR0FBRztDQUNoQjs7QUFDQSxBQUFELGdCQUFPLENBQUM7RUFDTixVQUFVLEVBQUUsT0FBTztFQUNuQixTQUFTLEVBQUMsTUFBTTtDQU9qQjs7QUFOQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFIeEIsQUFBRCxnQkFBTyxDQUFDO0lBSUosZ0JBQWdCLEVqQ2pGYixJQUFJO0lpQ2tGUCxVQUFVLEVBQUMsQ0FBQztJQUNaLFdBQVcsRUFBQyxJQUFJO0lBQ2hCLGNBQWMsRUFBRSxJQUFJO0dBRXZCOzs7QUF4RUgsQUEyRUksVUEzRU0sQUF5RVAsT0FBTyxDQUVOLGdCQUFnQixFQTNFcEIsVUFBVSxBQTBFUCxPQUFPLENBQ04sZ0JBQWdCLENBQUM7RUFDZixnQkFBZ0IsRWpDMUZiLElBQUk7RWlDMkZQLGFBQWEsRUFBQyxDQUFDO0VBQ2YsS0FBSyxFQUFDLElBQUk7RUFDVixNQUFNLEVBQUMsSUFBSTtDQWlCWjs7QUFoQkMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBaEY3QixBQTJFSSxVQTNFTSxBQXlFUCxPQUFPLENBRU4sZ0JBQWdCLEVBM0VwQixVQUFVLEFBMEVQLE9BQU8sQ0FDTixnQkFBZ0IsQ0FBQztJQU1iLEtBQUssRUFBRSxJQUFJO0lBQ1gsTUFBTSxFQUFFLElBQUk7SUFDWixXQUFXLEVBQUUsSUFBSTtHQWFwQjs7O0FBaEdMLEFBcUZNLFVBckZJLEFBeUVQLE9BQU8sQ0FFTixnQkFBZ0IsQUFVYixNQUFNLEVBckZiLFVBQVUsQUEwRVAsT0FBTyxDQUNOLGdCQUFnQixBQVViLE1BQU0sQ0FBQztFQUNOLE9BQU8sRUFBQyxFQUFFO0VBQ1YsT0FBTyxFQUFDLEtBQUs7RUFDYixNQUFNLEVBQUMsR0FBRztFQUNWLGdCQUFnQixFakM5RmhCLE9BQU87RWlDK0ZQLEtBQUssRUFBQyxJQUFJO0VBQ1YsTUFBTSxFQUFDLENBQUM7Q0FJVDs7QUFIQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUE1Ri9CLEFBcUZNLFVBckZJLEFBeUVQLE9BQU8sQ0FFTixnQkFBZ0IsQUFVYixNQUFNLEVBckZiLFVBQVUsQUEwRVAsT0FBTyxDQUNOLGdCQUFnQixBQVViLE1BQU0sQ0FBQztJQVFKLFFBQVEsRUFBQyxRQUFRO0dBRXBCOzs7QUEvRlAsQUFpR0ksVUFqR00sQUF5RVAsT0FBTyxDQXdCTixzQkFBc0IsRUFqRzFCLFVBQVUsQUEwRVAsT0FBTyxDQXVCTixzQkFBc0IsQ0FBQztFL0JyQ3ZCLFFBQVEsRUFEd0IsUUFBUTtFK0J5Q3RDLFNBQVMsRUFBQyxJQUFJO0VBQ2QsS0FBSyxFakMxR0gsT0FBTztFaUMyR1QsS0FBSyxFQUFDLElBQUk7RUFDVixNQUFNLEVBQUMsSUFBSTtDQUNaOztBQXhHTCxBMUIySUksVTBCM0lNLEFBeUVQLE9BQU8sQ0F3Qk4sc0JBQXNCLEExQjBDckIsT0FBTyxFMEIzSVosVUFBVSxBQTBFUCxPQUFPLENBdUJOLHNCQUFzQixBMUIwQ3JCLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUF0SUEsSUFBTztDQXVJakI7O0EwQmxKTCxBMUIySUksVTBCM0lNLEFBeUVQLE9BQU8sQ0F3Qk4sc0JBQXNCLEExQjBDckIsT0FBTyxFMEIzSVosVUFBVSxBQTBFUCxPQUFPLENBdUJOLHNCQUFzQixBMUIwQ3JCLE9BQU8sQ0w5RUs7RUFDVCxRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsR0FBRztFQUNSLElBQUksRUFBRSxHQUFHO0VBQ1QsU0FBUyxFQUFFLHFCQUFxQjtDQUNuQzs7QStCMENDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQTVHN0IsQUEyR0ksVUEzR00sQUEwR1AsT0FBTyxBQUNMLE9BQU8sQ0FBQztJQUVMLE1BQU0sRUFBQyxDQUFDO0dBRVg7OztBQS9HTCxBQWdISSxVQWhITSxBQTBHUCxPQUFPLENBTU4sc0JBQXNCLENBQUM7RUFDckIsZ0JBQWdCLEVBQUUsYUFBYTtFQUMvQixTQUFTLEVBQUUsYUFBYTtDQUN6Qjs7QUN2SUwsQUFBQSxlQUFlLENBQUM7RWhDaUJaLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0VrQ3BDbEIsVUFBVSxFQUFFLE1BQU07Q0FJbkI7O0FBSEUsQUFBRCxxQkFBTyxDQUFDO0VBQ04sV0FBVyxFQUFDLElBQUk7Q0FDakI7O0FBRUgsQUFBQSxvQkFBb0IsQ0FBQztFQUNuQixRQUFRLEVBQUMsUUFBUTtDQXlCbEI7O0FBeEJDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQUZ6QixBQUFBLG9CQUFvQixDQUFDO0loQ0lqQixXQUFXLEVnQ0RHLEtBQUs7SWhDRW5CLFlBQVksRWdDRkUsS0FBSztHQXVCdEI7OztBQXJCQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFMekIsQUFBQSxvQkFBb0IsQ0FBQztJaENJakIsV0FBVyxFZ0NFRyxLQUFLO0loQ0RuQixZQUFZLEVnQ0NFLEtBQUs7R0FvQnRCOzs7QUExQkQsQUFRRSxvQkFSa0IsR0FBcEIsb0JBQW9CLENBUVo7RUFDSixXQUFXLEVBQUMsSUFBSTtDQUNqQjs7QUFDQSxBQUFELDJCQUFRLENBQUM7RUFDUCxTQUFTLEVBQUMsTUFBTTtFQUNoQixjQUFjLEVBQUUsU0FBUztFQUN6QixXQUFXLEVBQUMsR0FBRztDQUNoQjs7QUFDQSxBQUFELDBCQUFPLENBQUM7RUFDTixVQUFVLEVBQUUsT0FBTztFQUNuQixTQUFTLEVBQUMsTUFBTTtDQU9qQjs7QUFOQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFIeEIsQUFBRCwwQkFBTyxDQUFDO0lBSUosZ0JBQWdCLEVsQ3JCYixJQUFJO0lrQ3NCUCxVQUFVLEVBQUMsQ0FBQztJQUNaLFdBQVcsRUFBQyxJQUFJO0lBQ2hCLGNBQWMsRUFBRSxJQUFJO0dBRXZCOzs7QUNoQ0gsQUFBQSxXQUFXLENBQUM7RWpDaUJSLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0VtQ3BDbEIsZ0JBQWdCLEVuQ09MLE9BQU87Q21DTW5COztBQVpFLEFBQUQsa0JBQVEsQ0FBQztFQUNQLEtBQUssRW5DV0QsT0FBTztDbUNWWjs7QUFDQSxBQUFELG9CQUFVLENBQUM7RUFDVCxTQUFTLEVBQUMsTUFBTTtDQUlqQjs7QUFIQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFGeEIsQUFBRCxvQkFBVSxDQUFDO0lqQ0tULFdBQVcsRWlDRkssS0FBSztJakNHckIsWUFBWSxFaUNISSxLQUFLO0dBRXRCOzs7QUFDQSxBQUFELDBCQUFnQixDQUFDO0VBQ2YsV0FBVyxFQUFDLEdBQUc7Q0FDaEI7O0FBRUgsQUFBQSxrQkFBa0IsQ0FBQztFakNDZixXQUFXLEVpQ0FDLElBQUk7RWpDQ2hCLGNBQWMsRWlDREYsSUFBSTtFQUNsQixVQUFVLEVBQUMsR0FBRyxDQUFDLEtBQUssQ25DWGIsSUFBSTtFbUNZWCxhQUFhLEVBQUMsR0FBRyxDQUFDLEtBQUssQ25DWmhCLElBQUk7RW1DYVgsVUFBVSxFQUFDLElBQUk7Q0E2QmhCOztBQTVCRSxBQUFELDBCQUFTLENBQUM7RUFFUixTQUFTLEVBQUMsSUFBSTtFQUNkLFdBQVcsRUFBQyxHQUFHO0VBQ2YsT0FBTyxFQUFFLEtBQUs7RUFDZCxLQUFLLEVBQUMsSUFBSTtFQUNWLFVBQVUsRUFBQyxJQUFJO0VBQ2YsWUFBWSxFQUFFLElBQUk7Q0FpQm5COztBQXhCQSxBNUIwSUMsMEI0QjFJTyxBNUIwSU4sT0FBTyxDQUFLO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQWxHQSxJQUFPO0NBbUdqQjs7QTRCakpGLEE1QjBJQywwQjRCMUlPLEE1QjBJTixPQUFPLEM0QmhJQztFQUNQLE9BQU8sRUFBQyxZQUFZO0VBQ3BCLFNBQVMsRUFBQyxNQUFNO0VBQ2hCLFdBQVcsRUFBRSxPQUFPO0VBQ3BCLFlBQVksRUFBRSxJQUFJO0VBQ2xCLFVBQVUsRUFBRSxhQUFhO0NBUTFCOztBQVBDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQWhCMUIsQTVCMElDLDBCNEIxSU8sQTVCMElOLE9BQU8sQzRCaElDO0lBT0wsU0FBUyxFbEM5QlAsVUFBOEI7SWtDK0I1QixXQUFXLEVBQUUsT0FBTztHQUszQjs7O0FBSEMsQUFBQSxzQkFBc0IsQ0FwQnpCLDBCQUFRLEFBVU4sT0FBTyxDQVVtQjtFQUN2QixTQUFTLEVBQUMsYUFBYTtDQUN4Qjs7QUFHSixBQUFELDJCQUFVLENBQUM7RWpDN0JULFdBQVcsRWlDOEJHLElBQUk7RWpDN0JsQixjQUFjLEVpQzZCQSxJQUFJO0NBQ25COztBQ2hESCxBQUFBLGdCQUFnQixDQUFDO0VsQ2lCYixXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtFb0NwQ2xCLFVBQVUsRUFBQyxNQUFNO0NBMENsQjs7QUF6Q0MsQUFBQSwyQkFBMkIsQ0FIN0IsZ0JBQWdCLEVBQWhCLGdCQUFnQixBQUliLE9BQU8sQ0FBQztFQUNQLGdCQUFnQixFcENJUCxPQUFPO0NvQ0hqQjs7QUFDQSxBQUFELHdCQUFTLENBQUM7RUFDUixPQUFPLEVBQUMsWUFBWTtFQUNwQixhQUFhLEVBQUUsR0FBRztFQUNsQixhQUFhLEVBQUMsSUFBSTtFQUNsQixTQUFTLEVBQUUsT0FBTztDQUNuQjs7QUFDQSxBQUFELHNCQUFPLENBQUM7RWxDRk4sV0FBVyxFQURPLElBQUk7RUFFdEIsWUFBWSxFQUZNLElBQUk7RWtDS3RCLFNBQVMsRUFBQyxLQUFLO0VBQ2YsVUFBVSxFQUFFLElBQUk7RUFDaEIsV0FBVyxFQUFDLEdBQUc7Q0FDaEI7O0FBQ0EsQUFBRCxzQkFBTyxDQUFDO0VsQ1JOLFdBQVcsRUFETyxJQUFJO0VBRXRCLFlBQVksRUFGTSxJQUFJO0VrQ1d0QixTQUFTLEVBQUMsTUFBTTtDQUlqQjs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFIekIsQUFBRCxzQkFBTyxDQUFDO0lBSUosT0FBTyxFQUFFLEtBQUs7R0FFakI7OztBQUVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUR6QixBQUFELHNCQUFPLENBQUM7SUFFSixPQUFPLEVBQUUsVUFBVTtJQUNuQixZQUFZLEVBQUUsS0FBSztJQUNuQixTQUFTLEVBQUUsS0FBSztHQVFuQjs7O0FBTkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBTnpCLEFBQUQsc0JBQU8sQ0FBQztJQU9KLFVBQVUsRUFBQyxJQUFJO0lBQ2YsT0FBTyxFQUFDLEtBQUs7SUFDYixLQUFLLEVBQUMsSUFBSTtJQUNWLFVBQVUsRUFBQyxHQUFHLENBQUMsS0FBSyxDcEN4QlYsT0FBTztHb0MwQnBCOzs7QUFFQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEekIsQUFBRCx5QkFBVSxDQUFDO0lBRVAsVUFBVSxFQUFDLENBQUM7R0FFZjs7O0FBSUEsQUFBRCxpQkFBTyxDQUFDO0VBQ04sS0FBSyxFcENqQ0QsT0FBTztFb0NrQ1gsU0FBUyxFQUFDLElBQUk7RUFDZCxLQUFLLEVBQUMsSUFBSTtFQUNWLE1BQU0sRUFBQyxJQUFJO0VsQzZCWCxRQUFRLEVBRHdCLFFBQVE7RUFxTzFDLE9BQU8sRUFBRSxZQUFZO0VBQ3JCLGNBQWMsRUFBRSxNQUFNO0VBQ3RCLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxhQUFhO0VBQ3pDLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0I7RUFXcEMsUUFBUSxFQUFFLFFBQVE7Q2tDdlFqQjs7QUFaQSxBbENrQ0MsaUJrQ2xDSyxBbENrQ0osT0FBTyxDQUFLO0VBQ1QsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLEdBQUc7RUFDUixJQUFJLEVBQUUsR0FBRztFQUNULFNBQVMsRUFBRSxxQkFBcUI7Q0FDbkM7O0FBc09ILFVBQVUsQ0FBVixZQUFVO0VBQ1IsR0FBRztJQUNELFNBQVMsRUFBRSxxQkFBcUIsQ0FBQyxVQUFVOzs7O0FrQy9ROUMsQWxDdVJDLGlCa0N2UkssQWxDb1JOLE1BQU0sQUFHSixPQUFPLEVrQ3ZSVCxpQkFBTSxBbENxUk4sTUFBTSxBQUVKLE9BQU8sRWtDdlJULGlCQUFNLEFsQ3NSTixPQUFPLEFBQ0wsT0FBTyxDQUFDO0VBQ1AsY0FBYyxFQUFFLFlBQVk7RUFDNUIsa0JBQWtCLEVBQUUsSUFBSTtFQUN4Qix5QkFBeUIsRUFBRSxNQUFNO0VBQ2pDLHlCQUF5QixFQUFFLENBQUM7Q0FDN0I7O0FrQ3JSRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFQekIsQUFBRCxpQkFBTyxDQUFDO0lBUUosV0FBVyxFQUFDLENBQUM7SUFDYixjQUFjLEVBQUUsTUFBTTtJQUN0QixTQUFTLEVBQUMsSUFBSTtHQUVqQjs7O0FBQ0EsQUFBRCxpQkFBTyxDQUFDO0VBQ04sV0FBVyxFQUFDLEdBQUc7RUFDZixTQUFTLEVBQUMsTUFBTTtFQUNoQixVQUFVLEVBQUMsQ0FBQztDQUliOztBQUhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUp6QixBQUFELGlCQUFPLENBQUM7SUFLSixPQUFPLEVBQUMsWUFBWTtHQUV2Qjs7O0FBQ0EsQUFBRCxpQkFBTyxDQUFDO0VBQ04sT0FBTyxFQUFDLFlBQVk7Q0FJckI7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRnpCLEFBQUQsaUJBQU8sQ0FBQztJQUdKLE9BQU8sRUFBQyxLQUFLO0dBRWhCOzs7QUN6RUgsQUFBQSxZQUFZLENBQUM7RUFFWCxRQUFRLEVBQUMsS0FBSztFQUNkLE1BQU0sRUFBQyxDQUFDO0VBQ1IsSUFBSSxFQUFDLENBQUM7RUFDTixnQkFBZ0IsRXJDQ1QsSUFBSTtFcUNBWCxLQUFLLEVBQUMsSUFBSTtFQUNWLFVBQVUsRUFBQyxHQUFHLENBQUMsS0FBSyxDckNBYixJQUFJO0VxQ0NYLE9BQU8sRUFBQyxDQUFDO0NBZ0ZWOztBQXhGRCxBckRhRSxZcURiVSxBckRhVCxPQUFPLEVxRGJWLFlBQVksQXJEY1QsTUFBTSxDQUFDO0VBQ04sT0FBTyxFQUFFLEdBQUc7RUFDWixPQUFPLEVBQUUsS0FBSztDQUNmOztBcURqQkgsQXJEa0JFLFlxRGxCVSxBckRrQlQsTUFBTSxDQUFDO0VBQ04sS0FBSyxFQUFFLElBQUk7Q0FDWjs7QXFEWEQsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBVDFCLEFBQUEsWUFBWSxDQUFDO0lBVVQsT0FBTyxFQUFDLElBQUk7R0E4RWY7OztBQTVFQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFaMUIsQUFBQSxZQUFZLENBQUM7SUFhVCxZQUFZLEVBQUMsSUFBSTtHQTJFcEI7OztBQXpFRSxBQUFELG1CQUFRLENBQUM7RUFDUCxLQUFLLEVBQUMsSUFBSTtFQUNWLFdBQVcsRUFBQyxHQUFHO0VBQ2YsU0FBUyxFQUFDLE1BQU07RUFDaEIsV0FBVyxFcENYTCxVQUE4QjtDb0NlckM7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBTHpCLEFBQUQsbUJBQVEsQ0FBQztJQU1MLE9BQU8sRUFBQyxJQUFJO0dBRWY7OztBQUNBLEFBQUQsa0JBQU8sQ0FBQztFQUNOLEtBQUssRUFBQyxLQUFLO0NBT1o7O0FBTkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRnpCLEFBQUQsa0JBQU8sQ0FBQztJQUdKLE9BQU8sRUFBRSxJQUFJO0lBQ2IsZUFBZSxFQUFFLGFBQWE7SUFDOUIsV0FBVyxFQUFDLE1BQU07SUFDbEIsS0FBSyxFQUFDLElBQUk7R0FFYjs7O0FBRUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRHpCLEFBQUQsa0JBQU8sQ0FBQztJQUVKLE9BQU8sRUFBQyxLQUFLO0luQ2JmLFlBQVksRW1DY0ksTUFBTTtJbkNidEIsYUFBYSxFbUNhRyxNQUFNO0lBQ3BCLEtBQUssRUFBRSxDQUFDO0lBRVosZ0JBQWdCLEVBQUUsT0FBTztJQUN6QixLQUFLLEVBQUUsSUFBSTtJQUNYLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLFdBQVcsRUFBRSxHQUFHO0lBQ2hCLE9BQU8sRUFBRSxXQUFXO0lBQ3BCLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLGNBQWMsRUFBRSxTQUFTO0lBQ3pCLFVBQVUsRUFBRSw2QkFBNkI7SUFDekMsY0FBYyxFQUFFLE1BQU07SUFDdEIsS0FBSyxFQUFDLElBQUk7R0FLVDs7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBakJ6QixBQUFELGtCQUFPLENBQUM7SUFrQkosWUFBWSxFQUFDLElBQUk7R0FFcEI7OztBQUNBLEFBQUQsa0JBQU8sQ0FBQztFQUNOLEtBQUssRXJDeENELE9BQU87RXFDeUNYLFNBQVMsRUFBQyxJQUFJO0VBQ2QsS0FBSyxFQUFDLElBQUk7RUFDVixNQUFNLEVBQUMsSUFBSTtFQUNYLE9BQU8sRUFBRSxZQUFZO0VuQ3FCckIsUUFBUSxFQUR3QixRQUFRO0VtQ2xCeEMsY0FBYyxFQUFFLE1BQU07Q0FVdkI7O0FBakJBLEFuQzJCQyxrQm1DM0JLLEFuQzJCSixPQUFPLENBQUs7RUFDVCxRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsR0FBRztFQUNSLElBQUksRUFBRSxHQUFHO0VBQ1QsU0FBUyxFQUFFLHFCQUFxQjtDQUNuQzs7QW1DdkJELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQVR6QixBQUFELGtCQUFPLENBQUM7SUFVSCxZQUFZLEVBQUMsTUFBTTtHQU92Qjs7O0FBTEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBWnpCLEFBQUQsa0JBQU8sQ0FBQztJQWFSLEtBQUssRUFBRSxJQUFJO0lBQ1gsVUFBVSxFQUFFLEtBQUs7SUFDakIsT0FBTyxFQUFDLE1BQU07R0FFYjs7O0FBQ0EsQUFBRCxrQkFBTyxDQUFDO0VBQ04sV0FBVyxFQUFDLEdBQUc7RUFDZixTQUFTLEVBQUMsTUFBTTtDQU1qQjs7QUFMQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFIekIsQUFBRCxrQkFBTyxDQUFDO0lBSVIsT0FBTyxFQUFFLFlBQVk7SUFDckIsV0FBVyxFQUFFLEdBQUc7SUFDaEIsU0FBUyxFQUFFLE1BQU07R0FFaEI7OztBQUNBLEFBQUQsaUJBQU0sQ0FBQztFQUNMLE9BQU8sRUFBQyxXQUFXO0NBS3BCOztBQUpDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUZ6QixBQUFELGlCQUFNLENBQUM7SW5DaEVMLFdBQVcsRW1DbUVLLE1BQU07SW5DbEV0QixjQUFjLEVtQ2tFRSxNQUFNO0lBQ3hCLE9BQU8sRUFBQyxJQUFJO0dBRVg7OztBQUlILDBCQUEwQjtBQUd0QixNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFGNUIsQUFDRSxJQURFLEFBQUEsYUFBYSxDQUNkLGlCQUFLLENBQUM7SUFFUCxPQUFPLEVBQUMsS0FBSztHQUVaOzs7QUFFQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFQNUIsQUFNRSxJQU5FLEFBQUEsYUFBYSxDQU1kLGtCQUFNLENBQUM7SUFFUixLQUFLLEVBQUMsT0FBTztJQUFFLE1BQU0sRUFBRSxJQUFJO0lBQUUsTUFBTSxFQUFDLElBQUk7R0FFdkM7OztBQUVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQVo1QixBQVdFLElBWEUsQUFBQSxhQUFhLENBV2Qsa0JBQU0sQ0FBQztJQUVSLE9BQU8sRUFBQyxJQUFJO0dBRVg7OztBQUVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQWpCNUIsQUFnQkUsSUFoQkUsQUFBQSxhQUFhLENBZ0JkLGtCQUFNLENBQUM7SUFFUixVQUFVLEVBQUMsSUFBSTtJQUFFLEtBQUssRUFBQyxJQUFJO0dBRTFCOzs7QUNoSEgsQUFBQSxjQUFjLENBQUM7RUFDYixPQUFPLEVBQUMsSUFBSTtFQUNaLFdBQVcsRUFBRSxNQUFNO0VBQ25CLGdCQUFnQixFdENHVCxJQUFJO0VzQ0FYLEtBQUssRUFBRSxJQUFJO0VBQ1gsVUFBVSxFckNDRixVQUE4QjtFcUNBdEMsYUFBYSxFQUFFLEdBQUcsQ0FBQyxLQUFLLEN0Q0VuQixPQUFPO0NzQ3VNYjs7QUF4TUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBVDFCLEFBQUEsY0FBYyxDQUFDO0lBVVgsZ0JBQWdCLEVBQUMsV0FBVztJQUM1QixPQUFPLEVBQUMsSUFBSTtJQUNaLGFBQWEsRUFBQyxJQUFJO0dBcU1yQjs7O0FBbE1HLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUQxQixBQUFBLG9CQUFvQixDQWR0QixjQUFjLENBY1c7SUFFbkIsYUFBYSxFckNSVCxVQUE4QjtHcUNVckM7OztBQUNBLEFBQUQsOEJBQWlCLENBQUM7RUFJaEIsS0FBSyxFdENqQkEsSUFBSTtFc0NrQlQsY0FBYyxFQUFDLFNBQVM7RUFDeEIsUUFBUSxFQUFDLFFBQVE7RUFDakIsT0FBTyxFQUFFLFVBQVU7RXBDc0RuQixRQUFRLEVBRHdCLFFBQVE7Q29DbkN6Qzs7QUF4QkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRHpCLEFBQUQsOEJBQWlCLENBQUM7SUFFZCxPQUFPLEVBQUMsSUFBSTtHQXVCZjs7O0FBekJBLEEvQjRJQyw4QitCNUllLEEvQjRJZCxNQUFNLENBQU07RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBbEdBLElBQU87Q0FtR2pCOztBK0JuSkYsQXBDOERDLDhCb0M5RGUsQXBDOERkLE9BQU8sQ0FBSztFQUNULFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxHQUFHO0VBQ1IsSUFBSSxFQUFFLEdBQUc7RUFDVCxTQUFTLEVBQUUscUJBQXFCO0NBQ25DOztBb0NuRUYsQS9CNElDLDhCK0I1SWUsQS9CNElkLE1BQU0sQytCbElDO0VBQ04sUUFBUSxFQUFDLFFBQVE7RUFDakIsR0FBRyxFQUFDLEdBQUc7RUFDUCxLQUFLLEVBQUMsQ0FBQztFQUNQLFVBQVUsRUFBQyxPQUFPO0VBQ2xCLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLE1BQU07RUFDbkIsU0FBUyxFQUFDLGNBQWM7RUFDeEIsS0FBSyxFQUFDLElBQUk7RUFDVixNQUFNLEVBQUMsSUFBSTtFQUNYLGNBQWMsRUFBRSxNQUFNO0NBSXZCOztBQUhDLEFBQUEsNEJBQTRCLENBckIvQiw4QkFBZ0IsQUFVZCxNQUFNLENBVzBCO0VBQzdCLFNBQVMsRUFBRSxhQUFhO0NBQ3pCOztBQUdKLEFBQUQsK0JBQWtCLENBQUM7RUFDakIsWUFBWSxFQUFDLE1BQU07Q0FhcEI7O0FBWkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRnpCLEFBQUQsK0JBQWtCLENBQUM7SXBDdkJqQixZQUFZLEVvQzBCSSxJQUFJO0lwQ3pCcEIsYUFBYSxFb0N5QkcsSUFBSTtJQUNsQixPQUFPLEVBQUMsS0FBSztJQUNiLFFBQVEsRUFBQyxRQUFRO0lBQ2pCLElBQUksRUFBQyxDQUFDO0lBQ04sR0FBRyxFQUFFLElBQUk7SUFDVCxLQUFLLEVBQUUsSUFBSTtJQUNYLE9BQU8sRUFBQyxDQUFDO0lBQ1QsVUFBVSxFQUFFLE1BQU07SUFDbEIsZ0JBQWdCLEV0Qy9DVCxPQUFPO0lzQ2dEZCxXQUFXLEVBQUMsTUFBTTtHQUVyQjs7O0FBRUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRHpCLEFBQUQsNEJBQWUsQ0FBQztJQUVaLE9BQU8sRUFBRSxJQUFJO0dBUWhCO0VBUEcsQUFBQSxvQkFBb0IsQ0FIdkIsNEJBQWMsQ0FHWTtJQUNyQixLQUFLLEVBQUUsZ0JBQWdCO0dBQ3hCOzs7QUFFSCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUssT0FBTyxXQUFXLEVBQUUsU0FBUztFQVB0RCxBdEQvQ0QsNEJzRCtDZSxBdEQvQ2QsT0FBTyxFc0QrQ1AsNEJBQWMsQXREOUNkLE1BQU0sQ0FBQztJQUNOLE9BQU8sRUFBRSxHQUFHO0lBQ1osT0FBTyxFQUFFLEtBQUs7R0FDZjtFc0QyQ0EsQXREMUNELDRCc0QwQ2UsQXREMUNkLE1BQU0sQ0FBQztJQUNOLEtBQUssRUFBRSxJQUFJO0dBQ1o7OztBc0RtREEsQUFBRCw0QkFBZSxDQUFDO0VwQ3REZCxXQUFXLEVvQ3VERyxNQUFNO0VwQ3REcEIsY0FBYyxFb0NzREEsTUFBTTtFQUNwQixRQUFRLEVBQUMsUUFBUTtDQTZCbEI7O0FBNUJDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUh6QixBQUFELDRCQUFlLENBQUM7SXBDdERkLFdBQVcsRW9DMERLLElBQUk7SXBDekRwQixjQUFjLEVvQ3lERSxJQUFJO0lBQ2xCLGFBQWEsRUFBQyxJQUFJO0dBMEJyQjtFQS9CQSxBQU1HLDRCQU5XLEdBQWQsNEJBQWMsQ0FNTDtJQUNKLFlBQVksRUFBQyxNQUFNO0dBWXBCO0VBbkJKLEFBUUssNEJBUlMsR0FBZCw0QkFBYyxBQVFSLE9BQU8sQ0FBQztJQUNQLE9BQU8sRUFBQyxFQUFFO0lBQ1YsUUFBUSxFQUFFLFFBQVE7SUFDbEIsT0FBTyxFQUFDLEtBQUs7SUFDYixnQkFBZ0IsRXRDekVuQixPQUFPO0lzQzBFSixLQUFLLEVBQUMsR0FBRztJQUNULE1BQU0sRUFBQyxNQUFNO0lBQ2IsR0FBRyxFQUFDLEdBQUc7SUFDUCxJQUFJLEVBQUMsQ0FBQztJQUNOLFNBQVMsRUFBRSxnQkFBZ0I7R0FDNUI7OztBQUdMLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSyxPQUFPLFdBQVcsRUFBRSxTQUFTO0VBckJ0RCxBQUFELDRCQUFlLENBQUM7SUFzQlosS0FBSyxFQUFDLEdBQUc7SUFDVCxLQUFLLEVBQUMsSUFBSTtHQVFiO0VBL0JBLEFBd0JHLDRCQXhCVyxBQXdCVixZQUFhLENBQUEsR0FBRyxFQUFFO0lBQ2pCLGFBQWEsRUFBQyxNQUFNO0dBQ3JCO0VBMUJKLEFBMkJHLDRCQTNCVyxBQTJCVixZQUFhLENBQUEsSUFBSSxFQUFFO0lBQ2xCLFlBQVksRUFBQyxNQUFNO0dBQ3BCOzs7QUFHSixBQUFELDZCQUFnQixDQUFDO0VBQ2YsV0FBVyxFQUFDLElBQUk7RUFDaEIsY0FBYyxFQUFDLFNBQVM7RUFDeEIsT0FBTyxFQUFDLEtBQUs7RUFDYixNQUFNLEVBQUMsaUJBQWlCO0VBQ3hCLFNBQVMsRUFBQyxNQUFNO0NBSWpCOztBQUhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQU56QixBQUFELDZCQUFnQixDQUFDO0lBT2IsT0FBTyxFQUFDLElBQUk7R0FFZjs7O0FBR0MsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLEtBQUs7RUFGaEQsQUFHRyw4QkFIYSxHQUdYLGdCQUFnQixDQUFDO0lBQ2pCLFNBQVMsRUFBQyxNQUFNO0dBQ2pCOzs7QUFMSixBQU9DLDhCQVBlLEFBT2QsaUJBQWlCLEFBQUEsSUFBSyxFQUFBLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixFQUFlLElBQUssRUFBQSxBQUFBLEtBQUMsRUFBTyxjQUFjLEFBQXJCLEVBQXVCLElBQUssQzNDYzdFLGdCQUFnQixFMkNkK0U7RUFDekYsS0FBSyxFQUFDLElBQUk7Q0FDWDs7QUFDRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFWekIsQUFPQyw4QkFQZSxBQU9kLGlCQUFpQixBQUFBLElBQUssRUFBQSxBQUFBLEtBQUMsRUFBTyxNQUFNLEFBQWIsRUFBZSxJQUFLLEVBQUEsQUFBQSxLQUFDLEVBQU8sY0FBYyxBQUFyQixFQUF1QixJQUFLLEMzQ2M3RSxnQkFBZ0IsRTJDVmlGO0lBQ3pGLEtBQUssRUFBQyxJQUFJO0dBQ1g7OztBQUdKLEFBQUQsOEJBQWlCLENBQUM7RXBDdEhoQixXQUFXLEVBRE8sSUFBSTtFQUV0QixZQUFZLEVBRk0sSUFBSTtFb0N5SHRCLFVBQVUsRUFBQyxJQUFJO0VBQ2YsT0FBTyxFQUFDLEtBQUs7Q0FJZDs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFKekIsQUFBRCw4QkFBaUIsQ0FBQztJQUtkLE9BQU8sRUFBQyxJQUFJO0dBRWY7OztBQUNBLEFBQUQsNEJBQWUsQ0FBQztFQUNkLE9BQU8sRUFBQyxJQUFJO0VBQ1osU0FBUyxFQUFFLElBQUk7RUFDZixTQUFTLEVBQUMsQ0FBQztFQUNYLGVBQWUsRUFBRSxNQUFNO0VwQ3ZIdkIsWUFBWSxFb0N3SEUsSUFBSTtFcEN2SGxCLGFBQWEsRW9DdUhDLElBQUk7Q0FXbkI7O0FBVkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBTnpCLEFBQUQsNEJBQWUsQ0FBQztJQU9aLGVBQWUsRUFBRSxVQUFVO0dBUzlCOzs7QUFQQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFUekIsQUFBRCw0QkFBZSxDQUFDO0lBVVosZUFBZSxFQUFFLFFBQVE7SUFDekIsYUFBYSxFQUFDLENBQUM7R0FLbEI7OztBQUhDLEFBQUEsTUFBTSxDQWJQLDRCQUFjLENBYUo7RUFDUCxPQUFPLEVBQUMsSUFBSTtDQUNiOztBQUVGLEFBQUQsNEJBQWUsQ0FBQztFQUNkLE9BQU8sRUFBRSxZQUFZO0NBT3RCOztBQVJBLEFBRUMsNEJBRmEsR0FBZCw0QkFBYyxDQUVQO0VBQ0osV0FBVyxFQUFFLElBQUk7Q0FJbEI7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLEtBQUs7RUFKbEQsQUFFQyw0QkFGYSxHQUFkLDRCQUFjLENBRVA7SUFHRixXQUFXLEVBQUUsQ0FBQztHQUVqQjs7O0FBR0QsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRHpCLEFBQUQsNEJBQWUsQ0FBQztJQUVaLE9BQU8sRUFBQyxhQUFhO0lBQ3JCLGFBQWEsRUFBQyxHQUFHO0dBNkJwQjs7O0FBMUJHLEFBQUEsbUJBQW1CLENBTnRCLDRCQUFjLEFBS1osY0FBYyxDQUNRO0VBQ25CLEtBQUssRXRDM0pMLE9BQU87Q3NDK0pSOztBQUhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUYxQixBQUFBLG1CQUFtQixDQU50Qiw0QkFBYyxBQUtaLGNBQWMsQ0FDUTtJQUdqQixnQkFBZ0IsRXRDdEtqQixJQUFJO0dzQ3dLTjs7O0FBR0QsQUFBQSxtQkFBbUIsQ0FkdEIsNEJBQWMsQUFhWixjQUFjLENBQ1E7RUFDbkIsS0FBSyxFdENuS0wsT0FBTztDc0N1S1I7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRjFCLEFBQUEsbUJBQW1CLENBZHRCLDRCQUFjLEFBYVosY0FBYyxDQUNRO0lBR2pCLGdCQUFnQixFdEM5S2pCLElBQUk7R3NDZ0xOOzs7QUFHRCxBQUFBLHFCQUFxQixDQXRCeEIsNEJBQWMsQUFxQlosZ0JBQWdCLENBQ1E7RUFDckIsS0FBSyxFdEMzS0wsT0FBTztDc0MrS1I7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRjFCLEFBQUEscUJBQXFCLENBdEJ4Qiw0QkFBYyxBQXFCWixnQkFBZ0IsQ0FDUTtJQUduQixnQkFBZ0IsRXRDdExqQixJQUFJO0dzQ3dMTjs7O0FBRUgsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBN0J6QixBQUFELDRCQUFlLENBQUM7SUE4QlosS0FBSyxFdEMzTEYsSUFBSTtHc0M2TFY7OztBQUNBLEFBQUQsNEJBQWUsQ0FBQztFcENwSGQsUUFBUSxFQUR3QixRQUFRO0VvQ3VIeEMsT0FBTyxFQUFDLFlBQVk7RUFDcEIsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLGNBQWMsRUFBRSxNQUFNO0NBQ3ZCOztBQU5BLEFwQ25IQyw0Qm9DbUhhLEFwQ25IWixPQUFPLENBQUs7RUFDVCxRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsR0FBRztFQUNSLElBQUksRUFBRSxHQUFHO0VBQ1QsU0FBUyxFQUFFLHFCQUFxQjtDQUNuQzs7QW9DcUhGLEFBQUQsNEJBQWUsQ0FBQztFQUNkLE9BQU8sRUFBQyxZQUFZO0VBQ3BCLGNBQWMsRUFBRSxNQUFNO0VBQ3RCLGNBQWMsRUFBQyxTQUFTO0VBQ3hCLFdBQVcsRUFBQyxHQUFHO0NBQ2hCOztBQUlELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUQxQixBQUFBLGNBQWMsQ0FBQztJcEM3TFgsWUFBWSxFRGROLFVBQThCO0lDZXBDLGFBQWEsRURmUCxVQUE4QjtHcUNnU3ZDOzs7QUFqRkUsQUFBRCxtQkFBTSxDQUFDO0VBQ0wsYUFBYSxFQUFDLEdBQUcsQ0FBQyxLQUFLLEN0QzlNcEIsT0FBTztDc0MrTVg7O0FBQ0EsQUFDQyxtQkFESSxBQUNILFlBQVksQ0FBQztFQUNaLEtBQUssRUFBQyxHQUFHO0NBSVY7O0FBSEMsQUFBQSxtQkFBbUIsQ0FIdEIsbUJBQUssQUFDSCxZQUFZLENBRVU7RUFDbkIsT0FBTyxFQUFDLElBQUk7Q0FDYjs7QUFMSixBQU9DLG1CQVBJLEFBT0gsUUFBUSxDQUFDO0VBQ1IsUUFBUSxFQUFFLFFBQVE7Q0FPbkI7O0FBTkMsQUFBQSxtQkFBbUIsQ0FUdEIsbUJBQUssQUFPSCxRQUFRLENBRWM7RUFDbkIsT0FBTyxFQUFDLElBQUk7Q0FDYjs7QUFDRCxBQUFBLG1CQUFtQixDQVp0QixtQkFBSyxBQU9ILFFBQVEsQ0FLZTtFQUNwQixLQUFLLEVBQUMsSUFBSTtDQUNYOztBQUdKLEFBQUQsMkJBQWMsQ0FBQztFcENyT2IsVUFBVSxFb0NzT0ksSUFBSTtFcENyT2xCLGFBQWEsRW9DcU9DLElBQUk7Q0FDbkI7O0FBQ0EsQUFBRCwyQkFBYyxDQUFDO0VBQ2IsT0FBTyxFQUFDLFlBQVk7Q0FDckI7O0FBQ0EsQUFBRCxzQkFBUyxDQUFDO0VBQ1IsY0FBYyxFQUFDLFNBQVM7RUFDeEIsV0FBVyxFQUFDLEdBQUc7RUFDZixTQUFTLEVBQUMsTUFBTTtFQUNoQixPQUFPLEVBQUMsUUFBUTtFQUNoQixjQUFjLEVBQUcsS0FBSztFQUN0QixRQUFRLEVBQUMsUUFBUTtFcEN2S2pCLFFBQVEsRUFEd0IsUUFBUTtDb0M2THpDOztBQTNCQSxBL0JsRkMsc0IrQmtGTyxBL0JsRk4sTUFBTSxDQUFNO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQWxHQSxJQUFPO0NBbUdqQjs7QStCMkVGLEFwQ2hLQyxzQm9DZ0tPLEFwQ2hLTixPQUFPLENBQUs7RUFDVCxRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsR0FBRztFQUNSLElBQUksRUFBRSxHQUFHO0VBQ1QsU0FBUyxFQUFFLHFCQUFxQjtDQUNuQzs7QW9DMkpGLEEvQmxGQyxzQitCa0ZPLEEvQmxGTixNQUFNLEMrQjJGQztFQUNOLFFBQVEsRUFBQyxRQUFRO0VBQ2pCLEdBQUcsRUFBQyxHQUFHO0VBQ1AsS0FBSyxFQUFDLENBQUM7RUFDUCxVQUFVLEVBQUMsT0FBTztFQUNsQixTQUFTLEVBQUUsSUFBSTtFQUNmLFdBQVcsRUFBRSxNQUFNO0VBQ25CLFNBQVMsRUFBQyxhQUFhO0VBQ3ZCLEtBQUssRXRDblBILE9BQU87RXNDb1BULEtBQUssRUFBQyxJQUFJO0VBQ1YsTUFBTSxFQUFDLElBQUk7RUFDWCxjQUFjLEVBQUUsTUFBTTtDQUN2Qjs7QUFyQkYsQUF1Qkcsc0JBdkJLLEFBc0JOLEtBQUssQUFDSCxNQUFNLENBQUM7RUFDTixTQUFTLEVBQUUsY0FBYztDQUMxQjs7QUFHSixBQUFELG9CQUFPLENBQUM7RUFDTixVQUFVLEVBQUMsSUFBSTtFQUNmLE9BQU8sRUFBQyxnQkFBZ0I7Q0FDekI7O0FBQ0EsQUFBRCwyQkFBYyxDQUFDO0VBQ2IsTUFBTSxFQUFDLGtCQUFrQjtFQUN6QixLQUFLLEVBQUMsSUFBSTtFQUNWLFFBQVEsRUFBQyxRQUFRO0NBU2xCOztBQVpBLEFBSUMsMkJBSlksQUFJWCxNQUFNLENBQUM7RUFDTixRQUFRLEVBQUMsS0FBSyxDQUFBLFVBQVU7RUFDeEIsR0FBRyxFckMvUUMsVUFBOEI7RXFDZ1JsQyxTQUFTLEVBQUUsb0JBQWtCO0NBQzlCOztBQUNELEFBQUEsbUJBQW1CLENBVHBCLDJCQUFhLENBU1U7RUFDcEIsTUFBTSxFQUFDLFVBQVU7Q0FDbEI7O0FBRUYsQUFBRCxtQkFBTSxDQUFDO0VBQ0wsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLEdBQUcsRUFBRSxDQUFDO0VBQ04sSUFBSSxFQUFFLENBQUM7Q0FDUjs7QUFDQSxBQUFELHFCQUFRLENBQUM7RUFDUCxVQUFVLEVBQUMsTUFBTTtDQUNsQjs7QUFJSCxBQUFBLHNCQUFzQixDQUFDO0VBQ3JCLFVBQVUsRUFBRSxNQUFNO0NBMkRuQjs7QUE1REQsQUFJSSxzQkFKa0IsR0FHbEIsR0FBRyxBQUFBLFlBQVksR0FDYixHQUFHLENBQUM7RUFDSixhQUFhLEVBQUUsWUFBWTtDQUM1Qjs7QUFOTCxBQVFJLHNCQVJrQixHQUdsQixHQUFHLEFBQUEsWUFBWSxHQUtiLEdBQUcsQUFBQSxZQUFZLENBQUM7RUFDaEIsZ0JBQWdCLEVBQUUsc0JBQXNCO0NBQ3pDOztBQVZMLEFBWUksc0JBWmtCLEdBR2xCLEdBQUcsQUFBQSxZQUFZLEdBU2IsR0FBRyxBQUFBLFVBQVcsQ0FBQSxDQUFDLEVBQUU7RUFDakIsZ0JBQWdCLEV0Q2xUYixJQUFJLENzQ2tUa0IsVUFBVTtFQUNuQyxVQUFVLEV0Q2hSRixDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsbUJBQWtCLENzQ2dSZixVQUFVO0VBQ2xDLE9BQU8sRUFBQyxJQUFJLENBQUEsVUFBVTtDQUN2Qjs7QUFoQkwsQUFrQkksc0JBbEJrQixHQUdsQixHQUFHLEFBQUEsWUFBWSxHQWViLEdBQUcsQUFBQSxVQUFXLENBQUEsQ0FBQyxFQUFFO0VBQ2pCLFVBQVUsRUFBQyxHQUFHLENBQUEsVUFBVTtDQWF6Qjs7QUFoQ0wsQUFxQlEsc0JBckJjLEdBR2xCLEdBQUcsQUFBQSxZQUFZLEdBZWIsR0FBRyxBQUFBLFVBQVcsQ0FBQSxDQUFDLElBRWIsR0FBRyxBQUFBLFlBQVksR0FDYixHQUFHLENBQUM7RUFDSixTQUFTLEVBQUUsWUFBWSxDQUFDLFVBQVU7RUFDbEMsVUFBVSxFdEN6Uk4sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLG1CQUFrQixDc0N5UlgsVUFBVTtDQUNuQzs7QUF4QlQsQUEyQlEsc0JBM0JjLEdBR2xCLEdBQUcsQUFBQSxZQUFZLEdBZWIsR0FBRyxBQUFBLFVBQVcsQ0FBQSxDQUFDLElBUWIsR0FBRyxBQUFBLFVBQVcsQ0FkRixDQUFDLElBZVgsR0FBRyxDQUFDO0VBQ0osU0FBUyxFQUFFLGFBQWEsQ0FBQyxVQUFVO0VBQ25DLFVBQVUsRXRDL1JOLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxtQkFBa0IsQ3NDK1JYLFVBQVU7Q0FDbkM7O0FBOUJULEFBa0NJLHNCQWxDa0IsR0FHbEIsR0FBRyxBQUFBLFlBQVksR0ErQmIsR0FBRyxBQUFBLFVBQVcsQ0FBQSxDQUFDLEVBQUU7RUFDakIsZ0JBQWdCLEVBQUMsR0FBRyxDQUFBLFVBQVU7RUFDOUIsT0FBTyxFQUFDLElBQUksQ0FBQSxVQUFVO0NBQ3ZCOztBQXJDTCxBQXVDRSxzQkF2Q29CLENBdUNwQixZQUFZLENBQUM7RUFDWCxNQUFNLEVBQUUsWUFBWTtFQUNwQixJQUFJLEVBQUUsWUFBWTtFQUNsQixnQkFBZ0IsRXRDL1VYLElBQUksQ3NDK1VlLFVBQVU7RUFDbEMsV0FBVyxFQUFDLElBQUksQ0FBQSxVQUFVO0VBQzFCLE9BQU8sRUFBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUEsVUFBVTtFQUMvQixHQUFHLEVBQUMsSUFBSSxDQUFBLFVBQVU7Q0FJbkI7O0FBakRILEFBOENJLHNCQTlDa0IsQ0F1Q3BCLFlBQVksR0FPUixHQUFHLEFBQUEsWUFBWSxDQUFDO0VBQ2hCLFFBQVEsRUFBRSxrQkFBa0I7Q0FDN0I7O0FBaERMLEFBbURFLHNCQW5Eb0IsQ0FtRHBCLFlBQVksR0FBRyxHQUFHLENBQUM7RUFDakIsR0FBRyxFQUFDLElBQUksQ0FBQSxVQUFVO0VBQ2xCLEtBQUssRUFBQyxJQUFJLENBQUEsVUFBVTtDQUNyQjs7QUF0REgsQUF3REksc0JBeERrQixDQXVEcEIsU0FBUyxDQUNQLEdBQUcsQ0FBQztFQUNGLFNBQVMsRUFBQyxJQUFJO0NBQ2Y7O0FDcldMLEFBQUEsZUFBZSxDQUFDO0VyQ2lCWixXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtDdUNibkI7O0FBdkJFLEFBQUQscUJBQU8sQ0FBQztFckNTTixXQUFXLEVBRE8sSUFBSTtFQUV0QixZQUFZLEVBRk0sSUFBSTtFcUNOdEIsYUFBYSxFQUFDLElBQUk7RUFDbEIsU0FBUyxFbEZtVmtCLEtBQTRCO0VrRmxWdkQsV0FBVyxFQUFFLEdBQUc7Q0FDakI7O0FBQ0EsQUFBRCxxQkFBTyxDQUFDO0VyQ0dOLFdBQVcsRXFDREcsSUFBSTtFckNFbEIsWUFBWSxFcUNGRSxJQUFJO0VBQ2xCLFNBQVMsRUFBQyxLQUFLO0VBQ2YsVUFBVSxFQUFFLE1BQU07Q0FDbkI7O0FBTEEsQXZES0QscUJ1RExPLEF2REtOLE9BQU8sRXVETFAscUJBQU0sQXZETU4sTUFBTSxDQUFDO0VBQ04sT0FBTyxFQUFFLEdBQUc7RUFDWixPQUFPLEVBQUUsS0FBSztDQUNmOztBdURUQSxBdkRVRCxxQnVEVk8sQXZEVU4sTUFBTSxDQUFDO0VBQ04sS0FBSyxFQUFFLElBQUk7Q0FDWjs7QXVETkEsQUFBRCxxQkFBTyxDQUFDO0VBQ04sT0FBTyxFQUFDLEtBQUs7RUFDYixLQUFLLEVBQUMsT0FBTztFQUNiLEtBQUssRUFBQyxJQUFJO0NBT1g7O0FBTkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBSnpCLEFBQUQscUJBQU8sQ0FBQztJQUtKLFVBQVUsRUFBQyxJQUFJO0lBQ2YsT0FBTyxFQUFDLEtBQUs7SUFDYixLQUFLLEVBQUMsSUFBSTtJQUNWLFVBQVUsRUFBQyxHQUFHLENBQUMsS0FBSyxDdkNWVixPQUFPO0d1Q1lwQjs7O0FBSUEsQUFBRCxvQkFBTyxDQUFDO0VBQ04sT0FBTyxFQUFDLFlBQVk7Q0FNckI7O0FBTEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRnpCLEFBQUQsb0JBQU8sQ0FBQztJQUdKLE9BQU8sRUFBQyxLQUFLO0lBQ2IsWUFBWSxFQUFFLEtBQUs7SUFDbkIsS0FBSyxFQUFDLElBQUk7R0FFYjs7O0FBQ0EsQUFBRCxvQkFBTyxDQUFDO0VBQ04sS0FBSyxFdkNyQkQsT0FBTztFdUNzQlgsU0FBUyxFQUFDLElBQUk7RUFDZCxLQUFLLEVBQUMsSUFBSTtFQUNWLE1BQU0sRUFBQyxJQUFJO0VBQ1gsT0FBTyxFQUFFLFlBQVk7RXJDdUNyQixRQUFRLEVBRHdCLFFBQVE7Q3FDL0J6Qzs7QUFaQSxBckM2Q0Msb0JxQzdDSyxBckM2Q0osT0FBTyxDQUFLO0VBQ1QsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLEdBQUc7RUFDUixJQUFJLEVBQUUsR0FBRztFQUNULFNBQVMsRUFBRSxxQkFBcUI7Q0FDbkM7O0FxQzNDRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFQekIsQUFBRCxvQkFBTyxDQUFDO0lBUUosT0FBTyxFQUFDLFVBQVU7SUFDbEIsY0FBYyxFQUFFLE1BQU07SUFDdEIsU0FBUyxFQUFDLElBQUk7R0FFakI7OztBQUNBLEFBQUQscUJBQVEsQ0FBQztFQUNQLFdBQVcsRUFBQyxHQUFHO0VBQ2YsU0FBUyxFQUFDLE1BQU07RUFDaEIsVUFBVSxFQUFDLENBQUM7RUFDWixjQUFjLEVBQUUsU0FBUztDQU8xQjs7QUFOQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFMekIsQUFBRCxxQkFBUSxDQUFDO0lBTUwsT0FBTyxFQUFDLFVBQVU7SUFDbEIsY0FBYyxFQUFFLE1BQU07SXJDbEN4QixZQUFZLEVxQ21DSSxNQUFNO0lyQ2xDdEIsYUFBYSxFcUNrQ0csTUFBTTtJQUNwQixLQUFLLEVBQUMsS0FBSztHQUVkOzs7QUFDQSxBQUFELG9CQUFPLENBQUM7RUFDTixXQUFXLEVBQUMsR0FBRztFQUNmLFNBQVMsRUFBQyxNQUFNO0VBQ2hCLFVBQVUsRUFBQyxDQUFDO0VBQ1osY0FBYyxFQUFFLFNBQVM7RUFDekIsS0FBSyxFdkNsREQsT0FBTztDdUN1RFo7O0FBSkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBTnpCLEFBQUQsb0JBQU8sQ0FBQztJQU9KLE9BQU8sRUFBQyxVQUFVO0lBQ2xCLGNBQWMsRUFBRSxNQUFNO0dBRXpCOzs7QUN2RUgsQUFBQSxpQkFBaUIsQ0FBQztFdENpQmQsV0FBVyxFRnFCQyxJQUFJO0VFcEJoQixjQUFjLEVGb0JGLElBQUk7Q3dDMUJuQjs7QUFWRSxBQUFELDBCQUFVLENBQUM7RXRDdUNULGVBQWUsRUFBRSxLQUFLO0VBQ3RCLG1CQUFtQixFQUZRLEdBQUcsQ0FBbUIsR0FBRztFc0NwQ3BELE9BQU8sRUFBQyxJQUFJO0VBQ1osVUFBVSxFQUFFLE1BQU07Q0FDbkI7O0FBQ0EsQUFBRCx1QkFBTyxDQUFDO0VBQ04sZ0JBQWdCLEV4Q0ZYLElBQUk7RXdDR1QsT0FBTyxFQUFDLFlBQVk7RUFDcEIsT0FBTyxFQUFFLFNBQVM7Q0FDbkI7O0FBSUgsQUFBQSxTQUFTLENBQUM7RUFDUixVQUFVLEVBQUMsTUFBTTtFdENDZixXQUFXLEVzQ0FDLElBQUk7RXRDQ2hCLGNBQWMsRXNDREYsSUFBSTtDQVVuQjs7QUFUQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFIMUIsQUFBQSxTQUFTLENBQUM7SUFJTixPQUFPLEVBQUMsSUFBSTtHQVFmOzs7QUFaRCxBQU1FLFNBTk8sR0FNTCxVQUFVLENBQUM7RUFDWCxLQUFLLEV4Q05ELE9BQU87Q3dDT1o7O0FBQ0EsQUFBRCxnQkFBUSxDQUFDO0VBQ1AsV0FBVyxFQUFDLElBQUk7Q0FDakI7O0FDMUJILEFBQUEsbUJBQW1CLENBQUM7RXZDaUJoQixXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtDeUM1Qm5COztBQVBHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUR6QixBQUFELHlCQUFPLENBQUM7SXZDU04sV0FBVyxFdUNQSyxNQUFNO0l2Q1F0QixZQUFZLEV1Q1JJLE1BQU07R0FLdkI7OztBQUhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUp6QixBQUFELHlCQUFPLENBQUM7SXZDU04sV0FBVyxFdUNKTSxHQUFHO0l2Q0twQixZQUFZLEV1Q0xLLEdBQUc7R0FFckI7OztBQUdILEFBQUEsaUJBQWlCLENBQUM7RUFDaEIsVUFBVSxFQUFDLE1BQU07RXZDU2YsWUFBWSxFdUNSQSxJQUFJO0V2Q1NoQixhQUFhLEV1Q1RELElBQUk7Q0FLbkI7O0FBSkUsQUFBRCx3QkFBUSxDQUFDO0VBQ1AsS0FBSyxFekNBRCxPQUFPO0V5Q0NYLFNBQVMsRUFBQyxJQUFJO0NBQ2Y7O0FDbEJILEFBQUEsVUFBVSxDQUFDO0V4Q2lCUCxXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtDMEN4Qm5COztBQVpFLEFBQUQsbUJBQVUsQ0FBQztFeEN1Q1QsZUFBZSxFQUFFLEtBQUs7RUFDdEIsbUJBQW1CLEVBRlEsR0FBRyxDQUFtQixHQUFHO0V3Q3BDcEQsT0FBTyxFQUFDLFNBQVM7Q0FJbEI7O0FBSEMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBSHhCLEFBQUQsbUJBQVUsQ0FBQztJeENlVCxXQUFXLEV3Q1hLLElBQUk7SXhDWXBCLGNBQWMsRXdDWkUsSUFBSTtHQUVyQjs7O0FBRUMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBRHhCLEFBQUQsZUFBTSxDQUFDO0lBRUgsT0FBTyxFQUFDLElBQUk7R0FFZjs7O0FBR0gsQUFBQSxlQUFlLENBQUM7RXhDTFosV0FBVyxFd0NNQyxLQUFLO0V4Q0xqQixZQUFZLEV3Q0tBLEtBQUs7RUFDbkIsZ0JBQWdCLEUxQ1pULElBQUk7RTBDYVgsT0FBTyxFQUFFLElBQUk7RUFDYixVQUFVLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDMUNKdkIsT0FBTztFMENLYixNQUFNLEVBQUMsSUFBSTtDQW1DWjs7QUFsQ0MsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBTnpCLEFBQUEsZUFBZSxDQUFDO0l4Q0xaLFdBQVcsRXdDWUcsSUFBSTtJeENYbEIsWUFBWSxFd0NXRSxJQUFJO0dBaUNyQjs7O0FBL0JDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQVR6QixBQUFBLGVBQWUsQ0FBQztJQVVaLE1BQU0sRUFBQyxNQUFNO0dBOEJoQjs7O0FBNUJFLEFBQUQsc0JBQVEsQ0FBQztFQUNQLFdBQVcsRUFBQyxHQUFHO0VBQ2YsY0FBYyxFQUFDLFNBQVM7RUFDeEIsYUFBYSxFQUFDLElBQUk7RUFDbEIsU0FBUyxFQUFDLElBQUk7Q0FDZjs7QUFDQSxBQUNDLHFCQURLLEdBQ0gsRUFBRSxDQUFDO0VBQ0gsVUFBVSxFQUFDLE1BQU07Q0FrQmxCOztBQXBCRixBQUdHLHFCQUhHLEdBQ0gsRUFBRSxHQUVBLENBQUMsQ0FBQztFQUNGLFdBQVcsRUFBQyxHQUFHO0VBQ2YsUUFBUSxFQUFDLFFBQVE7RUFDakIsWUFBWSxFQUFFLE1BQU07Q0FhckI7O0FBbkJKLEFuQzZIQyxxQm1DN0hLLEdBQ0gsRUFBRSxHQUVBLENBQUMsQW5DMEhKLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUFsR0EsSUFBTztDQW1HakI7O0FtQ3BJRixBbkM2SEMscUJtQzdISyxHQUNILEVBQUUsR0FFQSxDQUFDLEFuQzBISixPQUFPLENtQ3JISztFQUNQLEtBQUssRTFDM0JQLE9BQU87RTBDNEJMLFNBQVMsRUFBQyxJQUFJO0VBQ2QsUUFBUSxFQUFDLFFBQVE7RUFDakIsSUFBSSxFQUFFLENBQUM7RUFDUCxHQUFHLEVBQUUsTUFBTTtDQUNaOztBQWROLEFBZUsscUJBZkMsR0FDSCxFQUFFLEdBRUEsQ0FBQyxBQVlBLE1BQU0sQ0FBQztFQUNOLEtBQUssRTFDbENQLE9BQU87RTBDbUNMLGVBQWUsRUFBRSxTQUNuQjtDQUFDOztBQ3BEVCxBQUFBLGdCQUFnQixDQUFDO0V6Q2lCYixXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtDMkMxQm5COztBQVZDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQUZ6QixBQUlNLGdCQUpVLENBR1osSUFBSSxHQUNFLENBQUMsQ0FBQztJQUNKLFVBQVUsRUFBQyxJQUFJO0dBSWhCO0VBVFAsQUFNUSxnQkFOUSxDQUdaLElBQUksR0FDRSxDQUFDLEFBRUYsWUFBWSxDQUFDO0lBQ1osVUFBVSxFQUFDLENBQUM7R0FDYjs7O0FBTVQsQUFBQSxxQkFBcUIsQ0FBQztFekMyQmxCLGVBQWUsRUFBRSxLQUFLO0VBQ3RCLG1CQUFtQixFQUZRLEdBQUcsQ0FBbUIsR0FBRztFeUN4QnRELE9BQU8sRUFBQyxLQUFLO0VBQ2IsTUFBTSxFQUFDLEtBQUs7RUFDWixVQUFVLEVBQUUsTUFBTTtDQWdCbkI7O0FBcEJELEFBS0UscUJBTG1CLEFBS2xCLE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBRSxFQUFFO0VBQ1gsT0FBTyxFQUFFLFlBQVk7RUFDckIsTUFBTSxFQUFFLElBQUk7RUFDWixjQUFjLEVBQUUsTUFBTTtFQUN0QixZQUFZLEVBQUUsT0FBTztFQUFFLGlCQUFpQjtDQUN6Qzs7QUFDQSxBQUFELDRCQUFRLENBQUM7RUFDUCxnQkFBZ0IsRTNDckJYLElBQUk7RTJDc0JULE9BQU8sRUFBRSxZQUFZO0VBQ3JCLGNBQWMsRUFBRSxTQUFTO0VBQ3pCLE9BQU8sRUFBQyxTQUFTO0VBQ2pCLFdBQVcsRUFBQyxHQUFHO0VBQ2YsY0FBYyxFQUFFLE1BQU07Q0FDdkI7O0FDakNILEFBQUEsaUJBQWlCLENBQUM7RTFDaUJkLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0M0Q3BDbkI7O0FDRkQsQUFBQSxhQUFhLENBQUM7RTNDaUJWLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0M2QzVCbkI7O0FBUkUsQUFBRCxtQkFBTyxDQUFDO0UzQ1NOLFdBQVcsRUFETyxJQUFJO0VBRXRCLFlBQVksRUFGTSxJQUFJO0UyQ050QixTQUFTLEV4Rm9Wa0IsS0FBNEI7Q3dGL1V4RDs7QUFQQSxBQUlDLG1CQUpLLEdBQU4sbUJBQU0sQ0FJQztFQUNKLFVBQVUsRUFBQyxJQUFJO0NBQ2hCOztBQUtGLEFBQUQsb0JBQVMsQ0FBQztFQUNSLFdBQVcsRUFBQyxHQUFHO0VBQ2YsU0FBUyxFQUFDLElBQUk7RUFDZCxVQUFVLEVBQUMsTUFBTTtFQUNqQixLQUFLLEU3Q0ZELE9BQU87QzZDR1o7O0FBQ0EsQUFBRCxtQkFBUSxDQUFDO0VBQ1AsV0FBVyxFQUFDLEdBQUc7RUFDZixTQUFTLEVBQUMsSUFBSTtFQUNkLFVBQVUsRUFBQyxDQUFDO0VBQ1osY0FBYyxFQUFFLFNBQVM7RUFDekIsVUFBVSxFQUFDLE1BQU07RUFDakIsYUFBYSxFQUFDLElBQUk7Q0FDbkI7O0FBQ0EsQUFBRCxrQkFBTyxDQUFDO0VBQ04sVUFBVSxFQUFFLE9BQU87RUFDbkIsV0FBVyxFQUFFLEdBQUc7Q0FDakI7O0FBQ0EsQUFBRCxrQkFBTyxDQUFDLENBQUMsQ0FBQTtFQUNQLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLGVBQWUsRUFBRSxTQUFTO0NBQzNCOztBQUNBLEFBQUQsa0JBQU8sQ0FBQyxFQUFFLENBQUE7RUFDUixTQUFTLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUMsSUFBSTtFQUNoQixVQUFVLEVBQUMsSUFBSTtDQUNiOztBQUdILEFBQUEsbUJBQW1CLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQztFQUNoQyxVQUFVLEVBQUUsTUFBTTtFQUNyQixXQUFXLEVBQUUsQ0FBQztDQUNkOztBQzdDRCxBQUFBLHNCQUFzQixDQUFDO0U1Q2lCbkIsV0FBVyxFRnFCQyxJQUFJO0VFcEJoQixjQUFjLEVGb0JGLElBQUk7QzhDZG5COztBQXRCRSxBQUFELDZCQUFRLENBQUM7RTVDSVAsVUFBVSxFRjZCQyxJQUFJO0VFNUJmLGFBQWEsRUY0QkYsSUFBSTtFRXhCZixXQUFXLEVBRE8sSUFBSTtFQUV0QixZQUFZLEVBRk0sSUFBSTtFNENMdEIsU0FBUyxFQUFDLEtBQUs7RUFDZixTQUFTLEVBQUMsTUFBTTtFQUNoQixVQUFVLEVBQUMsTUFBTTtDQUNsQjs7QUFDQSxBQUFELDRCQUFPLENBQUM7RTVDRU4sV0FBVyxFQURPLElBQUk7RUFFdEIsWUFBWSxFQUZNLElBQUk7RTRDQ3RCLFVBQVUsRUFBQyxJQUFJO0VBQ2YsU0FBUyxFQUFDLEtBQUs7RUFDZixXQUFXLEVBQUUsR0FBRztDQUlqQjs7QUFSQSxBQUtDLDRCQUxLLEdBS0gsQ0FBQyxHQUFHLENBQUMsQ0FBQTtFQUNMLFVBQVUsRUFBQyxJQUFJO0NBQ2hCOztBQUVGLEFBQUQsOEJBQVMsQ0FBQztFNUNaUixVQUFVLEVGNkJDLElBQUk7RUU1QmYsYUFBYSxFRjRCRixJQUFJO0VFeEJmLFdBQVcsRUFETyxJQUFJO0VBRXRCLFlBQVksRUFGTSxJQUFJO0U0Q1d0QixPQUFPLEVBQUMsS0FBSztFQUNiLEtBQUssRUFBRSxJQUFJO0NBQ1o7O0FDdkJILEFBQUEsZ0JBQWdCLENBQUM7RTdDaUJiLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0UrQ3BDbEIsZ0JBQWdCLEUvQ09MLE9BQU87QytDV25COztBQWpCRSxBQUFELHNCQUFPLENBQUM7RTdDUU4sV0FBVyxFNkNQSSxPQUFNO0U3Q1FyQixZQUFZLEU2Q1JHLE9BQU07Q0FJdEI7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRnpCLEFBQUQsc0JBQU8sQ0FBQztJN0NRTixXQUFXLEU2Q0xLLElBQUk7STdDTXBCLFlBQVksRTZDTkksSUFBSTtHQUVyQjs7O0FBRUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBVjVCLEFBU0UsZ0JBVGMsQ0FTZCxZQUFZLENBQUM7SUFFVCxHQUFHLEVBQUUsR0FBRztHQVFYOzs7QUFOQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFiNUIsQUFTRSxnQkFUYyxDQVNkLFlBQVksQ0FBQztJQUtULEdBQUcsRUFBRSxHQUFHO0dBS1g7OztBQUhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtFQWhCN0IsQUFTRSxnQkFUYyxDQVNkLFlBQVksQ0FBQztJQVFULEdBQUcsRUFBRSxHQUFHO0dBRVg7OztBQUVILEFBQUEscUJBQXFCLENBQUM7RTdDQ2xCLFlBQVksRTZDQUEsSUFBSTtFN0NDaEIsYUFBYSxFNkNERCxJQUFJO0NBbURuQjs7QUFsREUsQUFBRCx1Q0FBbUIsQ0FBQztFQUNsQixRQUFRLEVBQUUsUUFBUTtFQUNsQixhQUFhLEVBQUMsSUFBSTtDQU1uQjs7QUFSQSxBQUdDLHVDQUhpQixBQUdoQixNQUFNLENBQUE7RUFDTCxPQUFPLEVBQUUsRUFBRTtFQUNYLE9BQU8sRUFBRSxLQUFLO0VBQ2QsY0FBYyxFQUFDLElBQUk7Q0FDcEI7O0FBRUYsQUFBRCxxQ0FBaUIsQ0FBQztFQUNoQixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsQ0FBQztFQUNOLElBQUksRUFBRSxDQUFDO0VBQ1AsS0FBSyxFQUFFLENBQUM7RUFDUixNQUFNLEVBQUUsQ0FBQztFQUNULFFBQVEsRUFBRSxNQUFNO0NBQ2pCOztBQUNBLEFBQUQsNkJBQVMsQ0FBQztFN0NpTVYsYUFBYSxFNkNoTVMsS0FBSztFN0NpTXhCLFVBQVUsRTZDak1TLEtBQUs7RTdDdU16QixXQUFXLEVBQUUsbUJBQXFCO0U2Q3RNbEMsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLEdBQUcsRUFBRSxDQUFDO0VBQ04sSUFBSSxFQUFFLENBQUM7Q0FDUjs7QUFDQSxBQUFELDRCQUFRLENBQUM7RUFDUCxTQUFTLEVBQUUsTUFBTTtFQUNqQixjQUFjLEVBQUUsU0FBUztFQUN6QixXQUFXLEVBQUUsR0FBRztFQUNoQixZQUFZLEVBQUUsTUFBTTtFQUNwQixRQUFRLEVBQUMsUUFBUTtDQVdsQjs7QUFoQkEsQUFNQyw0QkFOTSxBQU1MLE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBQyxFQUFFO0VBQ1YsS0FBSyxFQUFDLEdBQUc7RUFDVCxNQUFNLEVBQUMsR0FBRztFQUNWLGdCQUFnQixFL0NuRGIsSUFBSTtFK0NvRFAsT0FBTyxFQUFDLEtBQUs7RUFDYixRQUFRLEVBQUUsUUFBUTtFQUNsQixJQUFJLEVBQUMsQ0FBQztFQUNOLEdBQUcsRUFBQyxHQUFHO0NBQ1I7O0FBRUYsQUFBRCw0QkFBUSxDQUFDO0VBQ1AsU0FBUyxFQUFDLElBQUk7RUFDZCxhQUFhLEVBQUMsSUFBSTtFQUNsQixXQUFXLEVBQUUsR0FBRztDQUNqQjs7QUFDQSxBQUFELDJCQUFPLENBQUM7RUFDTixhQUFhLEVBQUMsSUFBSTtDQUNuQjs7QUN4RUgsQUFBQSxlQUFlLENBQUM7RTlDaUJaLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0VnRHBDbEIsZ0JBQWdCLEVoRE9MLE9BQU87Q2dETG5COztBQUVELEFBQUEsY0FBYyxDQUFDO0U5Q0tYLFdBQVcsRUFETyxJQUFJO0VBRXRCLFlBQVksRUFGTSxJQUFJO0U4Q0Z4QixTQUFTLEVBQUUsTUFBTTtDQXNDbEI7O0FBeENELEFBR0UsY0FIWSxHQUFkLGNBQWMsQ0FHTjtFQUNKLFVBQVUsRUFBQyxJQUFJO0NBQ2hCOztBQUVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUR6QixBQUFELG1CQUFNLENBQUM7STlDREwsV0FBVyxFOENHTyxLQUFJO0k5Q0Z0QixZQUFZLEU4Q0VNLEtBQUk7R0FLdkI7RUFQQSxBOUM0T0QsbUI4QzVPTSxHOUM0T0YsQ0FBQyxDQUFDO0lBbE9KLFlBQVksRThDUk0sSUFBSTtJOUNTdEIsYUFBYSxFOENUSyxJQUFJO0c5QzBPUzs7O0E4Q3hPL0IsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0VBSjFCLEFBQUQsbUJBQU0sQ0FBQztJOUNETCxXQUFXLEU4Q01PLEtBQUk7STlDTHRCLFlBQVksRThDS00sS0FBSTtHQUV2QjtFQVBBLEE5QzRPRCxtQjhDNU9NLEc5QzRPRixDQUFDLENBQUM7SUFsT0osWUFBWSxFOENMTSxJQUFJO0k5Q010QixhQUFhLEU4Q05LLElBQUk7RzlDdU9TOzs7QThDbk8vQixNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEekIsQUFBRCxzQkFBUyxDQUFDO0lBRU4sYUFBYSxFQUFDLElBQUk7R0FFckI7OztBQUNBLEFBQUQscUJBQVEsQ0FBQztFQUNQLGNBQWMsRUFBRSxTQUFTO0VBQ3pCLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLEdBQUc7RUFDaEIsYUFBYSxFQUFDLElBQUk7Q0FJbkI7O0FBVEEsQUFNQyxxQkFOTSxDQU1OLElBQUksQ0FBQztFQUNILEtBQUssRWhEakJILE9BQU87Q2dEa0JWOztBQUVGLEFBQUQsd0JBQVcsQ0FBQztFQUNWLFdBQVcsRUFBRSxHQUFHO0NBQ2pCOztBQUNBLEFBQUQsdUJBQVUsQ0FBQztFQUNULFdBQVcsRUFBRSxHQUFHO0NBQ2pCOztBQUNBLEFBQUQsMkJBQWMsQ0FBQztFQUNiLEtBQUssRWhEM0JELE9BQU87RWdENEJYLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLGVBQWUsRUFBRSxTQUFTO0NBQzNCOztBQzdDSCxBQUFBLHFCQUFxQixDQUFDO0UvQ2lCbEIsV0FBVyxFRnFCQyxJQUFJO0VFcEJoQixjQUFjLEVGb0JGLElBQUk7Q2lEd0JuQjs7QUE1REUsQUFBRCw2QkFBUyxDQUFDO0UvQ1NSLFdBQVcsRUFETyxJQUFJO0VBRXRCLFlBQVksRUFGTSxJQUFJO0UrQ050QixTQUFTLEVBQUUsS0FBSztFQUNoQixPQUFPLEVBQUMsS0FBSztFQUNiLEtBQUssRUFBQyxJQUFJO0VBS1YsYUFBYSxFQUFDLElBQUk7Q0FDbkI7O0FBVkEsQUFLRSw2QkFMTSxHQUtKLENBQUMsQ0FBQztFQUNILE9BQU8sRUFBQyxVQUFVO0VBQ2xCLGNBQWMsRUFBRSxNQUFNO0NBQ3ZCOztBQUdGLEFBQUQscUNBQWlCLENBQUM7RUFDaEIsYUFBYSxFQUFDLElBQUk7Q0FDbkI7O0FBQ0EsQUFBRCxvQ0FBZ0IsQ0FBQztFQUNmLEtBQUssRUFBQyxLQUFLO0NBQ1o7O0FBQ0EsQUFBRCw2QkFBUyxDQUFDO0VBQ1IsYUFBYSxFQUFDLEdBQUc7Q0FDbEI7O0FBQ0EsQUFBRCxtQ0FBZSxDQUFDO0VBQ2QsU0FBUyxFQUFDLElBQUk7Q0FDZjs7QUFDQSxBQUFELHNDQUFrQixDQUFDO0VBQ2pCLEtBQUssRWpEWEQsT0FBTztFaURZWCxPQUFPLEVBQUMsS0FBSztFQUNiLFdBQVcsRUFBQyxHQUFHO0VBQ2YsU0FBUyxFQUFDLE1BQU07Q0FDakI7O0FBQ0EsQUFBRCwyQkFBTyxDQUFDO0UvQ3BCTixXQUFXLEVBRE8sSUFBSTtFQUV0QixZQUFZLEVBRk0sSUFBSTtFK0N1QnRCLFNBQVMsRUFBRSxLQUFLO0VBQ2hCLGFBQWEsRUFBQyxJQUFJO0NBQ25COztBQUNBLEFBQUQsNEJBQVEsQ0FBQztFQUNQLGNBQWMsRUFBRSxTQUFTO0VBQ3pCLFNBQVMsRUFBRSxNQUFNO0VBQ2pCLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLGFBQWEsRUFBRSxJQUFJO0NBQ3BCOztBQUNBLEFBQUQsK0JBQVcsQ0FBQztFQUNWLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLFNBQVMsRUFBRSxPQUFPO0VBQ2xCLGFBQWEsRUFBRSxNQUFNO0NBQ3RCOztBQUNBLEFBQUQsOEJBQVUsQ0FBQztFQUNULFVBQVUsRUFBQyxDQUFDO0VBQ1osYUFBYSxFQUFDLElBQUk7RUFDbEIsV0FBVyxFQUFFLEdBQUc7Q0FDakI7O0FBQ0EsQUFBRCxvQ0FBZ0IsQ0FBQztFL0N6Q2YsV0FBVyxFQURPLElBQUk7RUFFdEIsWUFBWSxFQUZNLElBQUk7RStDNEN0QixTQUFTLEVBQUUsS0FBSztDQUNqQjs7QUFDQSxBQUFELCtCQUFXLENBQUM7RUFDVixjQUFjLEVBQUUsU0FBUztFQUN6QixTQUFTLEVBQUUsTUFBTTtFQUNqQixXQUFXLEVBQUUsR0FBRztFQUNoQixhQUFhLEVBQUUsSUFBSTtDQUNwQjs7QUM3REgsQUFBQSxTQUFTLENBQUM7RWhEaUJOLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0VrRHBDbEIsZ0JBQWdCLEVsRE9MLE9BQU87Q2tERW5COztBQVJFLEFBQUQsaUJBQVMsQ0FBQztFQUNSLFVBQVUsRUFBQyxNQUFNO0VBQ2pCLGFBQWEsRUFBQyxJQUFJO0NBQ25COztBQUNBLEFBQUQsZ0JBQVEsQ0FBQztFQUNQLFVBQVUsRUFBQyxNQUFNO0VBQ2pCLFVBQVUsRUFBQyxJQUFJO0NBQ2hCOztBQUdILEFBQUEsY0FBYyxDQUFDO0VoREZYLFdBQVcsRUFETyxJQUFJO0VBRXRCLFlBQVksRUFGTSxJQUFJO0VnRE14QixTQUFTLEVBQUUsTUFBTTtDQWlFbEI7O0FBcEVELEFBSUUsY0FKWSxHQUFkLGNBQWMsQ0FJTjtFQUNKLFVBQVUsRUFBQyxJQUFJO0NBQ2hCOztBQUVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUR6QixBQUFELG1CQUFNLENBQUM7SWhEVEwsV0FBVyxFZ0RXTyxLQUFJO0loRFZ0QixZQUFZLEVnRFVNLEtBQUk7R0FFdkI7RUFKQSxBaERvT0QsbUJnRHBPTSxHaERvT0YsQ0FBQyxDQUFDO0lBbE9KLFlBQVksRWdEQU0sSUFBSTtJaERDdEIsYUFBYSxFZ0RESyxJQUFJO0doRGtPUzs7O0FnRC9OaEMsQUFBRCxnQ0FBbUIsQ0FBQztFQUNsQixRQUFRLEVBQUUsUUFBUTtFQUNsQixhQUFhLEVBQUMsSUFBSTtDQU1uQjs7QUFSQSxBQUdDLGdDQUhpQixBQUdoQixNQUFNLENBQUE7RUFDTCxPQUFPLEVBQUUsRUFBRTtFQUNYLE9BQU8sRUFBRSxLQUFLO0VBQ2QsY0FBYyxFQWpCVCxTQUFxQjtDQWtCM0I7O0FBRUYsQUFBRCw4QkFBaUIsQ0FBQztFQUNoQixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsQ0FBQztFQUNOLElBQUksRUFBRSxDQUFDO0VBQ1AsS0FBSyxFQUFFLENBQUM7RUFDUixNQUFNLEVBQUUsQ0FBQztFQUNULFFBQVEsRUFBRSxNQUFNO0NBQ2pCOztBQUNBLEFBQUQsc0JBQVMsQ0FBQztFaEQrTFYsYUFBYSxFZ0Q5TFMsS0FBSztFaEQrTHhCLFVBQVUsRWdEL0xTLEtBQUs7RWhEcU16QixXQUFXLEVBQUUsbUJBQXFCO0VnRHBNbEMsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLEdBQUcsRUFBRSxDQUFDO0VBQ04sSUFBSSxFQUFFLENBQUM7RUFDUCxhQUFhLEVBQUMsSUFBSTtDQUNuQjs7QUFFQSxBQUFELHdCQUFXLENBQUM7RUFDVixTQUFTLEVBQUMsTUFBTTtFQUNoQixLQUFLLEVsRHZDRCxPQUFPO0VrRHdDWCxhQUFhLEVBQUMsSUFBSTtDQUNuQjs7QUFDQSxBQUFELG9CQUFPLENBQUM7RUFDTixXQUFXLEVBQUUsR0FBRztFQUNoQixTQUFTLEVBQUUsSUFBSTtDQUNoQjs7QUFDQSxBQUFELHNCQUFTLENBQUM7RUFDUixTQUFTLEVBQUUsTUFBTTtFQUNqQixhQUFhLEVBQUUsSUFBSTtDQUNwQjs7QUFDQSxBQUFELG9CQUFPLENBQUM7RUFDTixjQUFjLEVBQUUsU0FBUztFQUN6QixXQUFXLEVBQUUsR0FBRztFQUNoQixLQUFLLEVsRHJERCxPQUFPO0NrRHNEWjs7QUFDQSxBQUFELG9CQUFPLENBQUM7RUFDTixXQUFXLEVBQUUsR0FBRztFQUNoQixVQUFVLEVBQUMsQ0FBQztDQUViOztBQUNBLEFBQUQsMkJBQWMsQ0FBQztFQUNiLEtBQUssRWxEN0RELE9BQU87RWtEOERYLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLGVBQWUsRUFBRSxTQUFTO0VBQzFCLGNBQWMsRUFBRSxTQUFTO0NBQzFCOztBQ2hGSCxBQUFBLGtCQUFrQixDQUFDO0VqRGlCZixXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtDbURwQ25COztBQUNELEFBQUEsdUJBQXVCLENBQUM7RWpEUXBCLFdBQVcsRUFETyxJQUFJO0VBRXRCLFlBQVksRUFGTSxJQUFJO0VpREx4QixhQUFhLEVBQUMsSUFBSTtFQUNsQixVQUFVLEVBQUUsTUFBTTtDQVFuQjs7QUFQRSxBQUFELCtCQUFTLENBQUM7RUFDUixhQUFhLEVBQUMsSUFBSTtDQUNuQjs7QUFDQSxBQUFELDhCQUFRLENBQUM7RUFDUCxTQUFTLEVBQUMsSUFBSTtFQUNkLFdBQVcsRUFBRSxHQUFHO0NBQ2pCOztBQ2JILEFBQUEsaUJBQWlCLENBQUM7RWxEaUJkLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0NvRHBDbkI7O0FBQ0QsQUFBQSxzQkFBc0IsQ0FBQztFQUNyQixPQUFPLEVBQUMsS0FBSztFQUNiLGdCQUFnQixFcERLWCxPQUFPO0VvREpaLFFBQVEsRUFBQyxRQUFRO0VBQ2pCLEtBQUssRXBEREUsSUFBSTtFb0RFWCxhQUFhLEVBQUMsSUFBSTtFQUNsQixVQUFVLEVBQUMsTUFBTTtDQW9HbEI7O0FBMUdELEFBT0Usc0JBUG9CLEFBT25CLE1BQU0sQ0FBQztFQUNOLE9BQU8sRUFBQyxFQUFFO0VBQ1YsT0FBTyxFQUFDLEtBQUs7RUFDYixjQUFjLEVBQUMsSUFBSTtDQUNwQjs7QUFDQSxBQUFELDZCQUFRLENBQUM7RUFDUCxRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsQ0FBQztFQUNOLElBQUksRUFBRSxDQUFDO0VBQ1AsS0FBSyxFQUFFLENBQUM7RUFDUixNQUFNLEVBQUUsQ0FBQztDQTJCVjs7QUFoQ0EsQUFNQyw2QkFOTSxBQU1MLE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBQyxFQUFFO0VBQ1YsZ0JBQWdCLEVwRGhCYixJQUFJO0VvRGlCUCxPQUFPLEVBQUMsR0FBRztFQUNYLFFBQVEsRUFBQyxRQUFRO0VBQ2pCLEtBQUssRUFBQyxJQUFJO0VBQ1YsTUFBTSxFQUFDLElBQUk7RUFDWCxHQUFHLEVBQUMsQ0FBQztFQUNMLElBQUksRUFBQyxDQUFDO0VBQ04sT0FBTyxFQUFDLENBQUM7Q0FDVjs7QUFDRCxBQUFBLE1BQU0sQ0FqQlAsNkJBQU8sQ0FpQkc7RUFDUCxHQUFHLEVBQUUsTUFBTTtFQUNYLElBQUksRUFBRSxNQUFNO0VBQ1osS0FBSyxFQUFFLE1BQU07RUFDYixNQUFNLEVBQUUsTUFBTTtDQVVmOztBQWRELEFBS0UsTUFMSSxDQWpCUCw2QkFBTyxBQXNCSCxPQUFPLENBQUM7RUFDUCxPQUFPLEVBQUMsQ0FBQztDQUNWOztBQUNELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQVIxQixBQUFBLE1BQU0sQ0FqQlAsNkJBQU8sQ0FpQkc7SUFTTCxHQUFHLEVBQUUsSUFBSTtJQUNULElBQUksRUFBRSxJQUFJO0lBQ1YsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtHQUVmOzs7QUFFRixBQUFELCtCQUFVLENBQUM7RWxEMUJULFlBQVksRWtEMkJFLElBQUk7RWxEMUJsQixhQUFhLEVrRDBCQyxJQUFJO0VBQ2xCLFFBQVEsRUFBRyxRQUFRO0VBQ25CLEtBQUssRUFBQyxJQUFJO0VBQ1YsT0FBTyxFQUFDLENBQUM7RUFDVCxHQUFHLEVBQUMsU0FBUztFQUNiLFNBQVMsRUFBRSxnQkFBZ0I7Q0FhNUI7O0FBWkMsQUFBQSxNQUFNLENBUFAsK0JBQVMsQ0FPQTtFQUNOLGdCQUFnQixFcERsRGIsSUFBSTtFb0RtRFAsS0FBSyxFcERsREYsSUFBSTtFb0RtRFAsU0FBUyxFQUFFLElBQUk7RUFDZixHQUFHLEVBQUMsQ0FBQztFQUNMLE1BQU0sRUFBQyxDQUFDO0VBQ1IsVUFBVSxFQUFFLElBQUk7RUFDaEIsT0FBTyxFQUFDLElBQUk7Q0FJYjs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFSMUIsQUFBQSxNQUFNLENBUFAsK0JBQVMsQ0FPQTtJQVNKLE9BQU8sRUFBQyxJQUFJO0dBRWY7OztBQUVGLEFBQUQsZ0NBQVcsQ0FBQztFQUNWLGNBQWMsRUFBRSxTQUFTO0VBQ3pCLFNBQVMsRUFBQyxJQUFJO0VBQ2QsYUFBYSxFQUFDLE1BQU07Q0FPckI7O0FBTkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBSnpCLEFBQUQsZ0NBQVcsQ0FBQztJQUtSLFNBQVMsRUFBRSxNQUFNO0dBS3BCOzs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUssT0FBTyxTQUFTLEVBQUUsS0FBSztFQVBoRCxBQUFELGdDQUFXLENBQUM7SUFRUixTQUFTLEVBQUMsTUFBTTtHQUVuQjs7O0FBQ0EsQUFBRCw2QkFBUSxDQUFDO0VBQ1AsU0FBUyxFQUFDLE1BQU07RUFDaEIsV0FBVyxFQUFDLEdBQUc7RUFDZixXQUFXLEVBQUUsR0FBRztDQWNqQjs7QUFiQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFKekIsQUFBRCw2QkFBUSxDQUFDO0lBS0wsU0FBUyxFQUFFLElBQUk7R0FZbEI7OztBQVZDLEFBQUEsTUFBTSxDQVBQLDZCQUFPLENBT0c7RUFDUCxXQUFXLEVBQUMsR0FBRztFQUNmLFNBQVMsRUFBQyxNQUFNO0NBT2pCOztBQU5DLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUgxQixBQUFBLE1BQU0sQ0FQUCw2QkFBTyxDQU9HO0lBSUwsU0FBUyxFQUFFLElBQUk7R0FLbEI7OztBQUhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSyxPQUFPLFNBQVMsRUFBRSxLQUFLO0VBTmpELEFBQUEsTUFBTSxDQVBQLDZCQUFPLENBT0c7SUFPTCxTQUFTLEVBQUMsSUFBSTtHQUVqQjs7O0FBRUYsQUFBRCw4QkFBUyxDQUFDO0VsRHdJVixhQUFhLEVrRHZJUyxLQUFLO0VsRHdJeEIsVUFBVSxFa0R4SVMsS0FBSztFbEQ4SXpCLFdBQVcsRUFBRSxtQkFBcUI7RWtEN0lsQyxRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJO0VBQ1osR0FBRyxFQUFFLENBQUM7RUFDTixJQUFJLEVBQUUsQ0FBQztDQUNSOztBQXJHSCxBQXNHRSxzQkF0R29CLEFBc0duQixNQUFNLENBQUM7RWxEaEVOLGVBQWUsRUFBRSxLQUFLO0VBQ3RCLG1CQUFtQixFQUZRLEdBQUcsQ0FBbUIsR0FBRztFa0RtRXBELGdCQUFnQixFQUFFLGtEQUFrRDtDQUNyRTs7QUM1R0gsQUFBQSxnQkFBZ0IsQ0FBQztFbkRpQmIsV0FBVyxFRnFCQyxJQUFJO0VFcEJoQixjQUFjLEVGb0JGLElBQUk7Q3FEa0RuQjs7QUF0RkUsQUFBRCx1QkFBUSxDQUFDO0VBQ1AsZ0JBQWdCLEVyRGNQLE9BQU87RXFEYmhCLFFBQVEsRUFBQyxRQUFRO0VBQ2pCLE9BQU8sRUFBQyxLQUFLO0VBQ2IsS0FBSyxFQUFDLElBQUk7RUFDVixNQUFNLEVBQUMsS0FBSztFQUNaLFlBQVksRUFBRSxLQUFLO0NBUXBCOztBQVBDLEFBQUEsU0FBUyxDQVBWLHVCQUFPLENBT0s7RUFDVCxnQkFBZ0IsRXJEU2IsT0FBTztDcURSWDs7QUFDRCxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFWeEIsQUFBRCx1QkFBUSxDQUFDO0lBV0wsT0FBTyxFQUFDLEtBQUs7SUFDYixNQUFNLEVBQUMsSUFBSTtHQUVkOzs7QUFDQSxBQUFELHdCQUFTLENBQUM7RUFDUixLQUFLLEVBQUMsS0FBSztFQUNYLE9BQU8sRUFBQyxJQUFJO0VBQ1osT0FBTyxFQUFDLFVBQVU7RUFDbEIsY0FBYyxFQUFDLE1BQU07RUFDckIsS0FBSyxFckRoQkEsSUFBSTtFcURpQlQsUUFBUSxFQUFDLFFBQVE7Q0F3QmxCOztBQXZCQyxBQUNFLFNBRE8sQ0FQVix3QkFBUSxBQVFKLE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBQyxFQUFFO0VuRDBKZCxLQUFLLEVBQUUsQ0FBQztFQUNSLE1BQU0sRUFBRSxDQUFDO0VBSUwsVUFBVSxFQUFFLElBQVEsQ0FBQyxLQUFLLENBQUMsV0FBVztFQUN0QyxhQUFhLEVBQUUsSUFBUSxDQUFDLEtBQUssQ0FBQyxXQUFXO0VBSXJDLFdBQVcsRW1EbkswQyxJQUFJLENuRG1LcEMsS0FBSyxDRjNLN0IsT0FBTztFcURTUixRQUFRLEVBQUMsUUFBUTtFQUNqQixHQUFHLEVBQUMsR0FBRztFQUNQLElBQUksRUFBQyxJQUFJO0VBQ1QsT0FBTyxFQUFDLENBQUM7RUFDVCxTQUFTLEVBQUUsZ0JBQWdCO0NBSTVCOztBQUhDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQVQzQixBQUNFLFNBRE8sQ0FQVix3QkFBUSxBQVFKLE9BQU8sQ0FBQztJQVNMLE9BQU8sRUFBQyxJQUFJO0dBRWY7OztBQUVILE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQXJCeEIsQUFBRCx3QkFBUyxDQUFDO0lBc0JOLE9BQU8sRUFBQyxJQUFJO0lBQ1osS0FBSyxFQUFDLEdBQUc7R0FPWjs7O0FBTEMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBekJ4QixBQUFELHdCQUFTLENBQUM7SUEwQk4sT0FBTyxFQUFDLEtBQUs7SUFDYixPQUFPLEVBQUMsSUFBSTtJQUNaLEtBQUssRUFBQyxJQUFJO0dBRWI7OztBQUNBLEFBQUQseUJBQVUsQ0FBQztFQUNULFVBQVUsRUFBQyxJQUFJO0NBQ2hCOztBQUNBLEFBQUQseUJBQVUsQ0FBQztFQUNULE9BQU8sRUFBQyxVQUFVO0VBQ2xCLGNBQWMsRUFBQyxHQUFHO0VBQ2xCLFFBQVEsRUFBQyxRQUFRO0NBSWxCOztBQUhDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQUp4QixBQUFELHlCQUFVLENBQUM7SUFLUCxPQUFPLEVBQUMsS0FBSztHQUVoQjs7O0FBQ0EsQUFBRCxzQkFBTyxDQUFDO0VBQ04sTUFBTSxFQUFDLElBQUk7Q0FZWjs7QUFYQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFGeEIsQUFHRyxzQkFIRyxFQUFOLHNCQUFNLEFBSUYsYUFBYSxDQUFDO0lBQ2IsUUFBUSxFQUFDLFFBQVE7SUFDakIsS0FBSyxFQUFDLElBQUk7R0FDWDs7O0FBUEosQUFTQyxzQkFUSyxDQVNMLFdBQVc7QUFUWixzQkFBTSxDQVVMLFlBQVksQ0FBQztFQUNYLE1BQU0sRUFBQyxJQUFJO0NBQ1o7O0FBRUYsQUFBRCw2QkFBYyxDQUFDO0VBQ2IsTUFBTSxFQUFDLElBQUk7Q0FDWjs7QUFDQSxBQUFELHVCQUFRLENBQUM7RUFDUCxTQUFTLEVBQUMsTUFBTTtFQUNoQixXQUFXLEVBQUMsR0FBRztFQUNmLGFBQWEsRUFBQyxJQUFJO0NBQ25COztBQUNBLEFBQUQsc0JBQU8sQ0FBQztFQUNOLFdBQVcsRUFBQyxHQUFHO0VBQ2YsU0FBUyxFQUFDLE1BQU07Q0FDakI7O0FBcEZILEFBcUZFLGdCQXJGYyxDQXFGZCxXQUFXLENBQUM7RUFDVixNQUFNLEVBQUMsSUFBSTtDQUNaOztBQUdILEFBQUEscUJBQXFCLENBQUM7RUFDcEIsT0FBTyxFQUFDLEtBQUs7RUFDYixRQUFRLEVBQUMsUUFBUTtFQUNqQixNQUFNLEVBQUMsSUFBSTtDQTZDWjs7QUE1Q0UsQUFBRCw4QkFBVSxDQUFDO0VBQ1QsTUFBTSxFQUFDLElBQUk7RUFDWCxLQUFLLEVyRDFGQSxJQUFJO0VxRDJGVCxPQUFPLEVBQUMsSUFBSTtFQUNaLFFBQVEsRUFBQyxRQUFRO0NBaUJsQjs7QUFoQkMsQUFDRSxTQURPLENBTFYsOEJBQVMsQUFNTCxPQUFPLENBQUM7RUFDUCxPQUFPLEVBQUUsRUFBRTtFQUNYLGdCQUFnQixFckQvRmYsSUFBSTtFcURnR0wsT0FBTyxFQUFFLEdBQUc7RUFDWixRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJO0VBQ1osR0FBRyxFQUFFLENBQUM7RUFDTixJQUFJLEVBQUUsQ0FBQztDQUNSOztBQUVILE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQWpCeEIsQUFBRCw4QkFBVSxDQUFDO0lBa0JQLE9BQU8sRUFBQyxJQUFJO0lBQ1osTUFBTSxFQUFDLEtBQUs7R0FFZjs7O0FBQ0EsQUFBRCw0QkFBUSxDQUFDO0VBQ1AsU0FBUyxFQUFDLElBQUk7RUFDZCxRQUFRLEVBQUMsUUFBUTtFQUNqQixPQUFPLEVBQUUsQ0FBQztFQUNWLGNBQWMsRUFBRSxTQUFTO0VBQ3pCLFdBQVcsRUFBRSxDQUFDO0NBSWY7O0FBVEEsQUFNQyw0QkFOTSxDQU1OLE1BQU0sQ0FBQztFQUNMLFdBQVcsRUFBQyxHQUFHO0NBQ2hCOztBQUVGLEFBQUQsNkJBQVMsQ0FBQztFQUNSLEtBQUssRUFBQyxJQUFJO0VBQ1YsTUFBTSxFQUFDLElBQUk7RUFDWCxRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsQ0FBQztFQUNOLElBQUksRUFBRSxDQUFDO0VBQ1AsTUFBTSxFQUFFLENBQUM7RUFDVCxLQUFLLEVBQUMsQ0FBQztFQUNQLFFBQVEsRUFBQyxNQUFNO0VBQ2YsVUFBVSxFQUFFLEtBQUs7RUFDakIsV0FBVyxFQUFFLG1CQUFtQjtDQUNqQzs7QUN6SUgsQUFBQSwyQkFBMkIsQ0FBQztFcERpQnhCLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0NzRHBDbkI7O0FBQ0QsQUFBQSxnQ0FBZ0MsQ0FBQztFQUMvQixPQUFPLEVBQUMsS0FBSztFQUNiLGdCQUFnQixFdERLWCxPQUFPO0VzREpaLFFBQVEsRUFBQyxRQUFRO0VBQ2pCLEtBQUssRXREREUsSUFBSTtFc0RFWCxhQUFhLEVBQUMsSUFBSTtFQUNsQixVQUFVLEVBQUMsTUFBTTtDQWdEbEI7O0FBdERELEFBT0UsZ0NBUDhCLEFBTzdCLE1BQU0sQ0FBQztFQUNOLE9BQU8sRUFBQyxFQUFFO0VBQ1YsT0FBTyxFQUFDLEtBQUs7RUFDYixjQUFjLEVBQUMsTUFBTTtDQUN0Qjs7QUFDQSxBQUFELHVDQUFRLENBQUM7RUFDUCxRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsQ0FBQztFQUNOLElBQUksRUFBRSxDQUFDO0VBQ1AsS0FBSyxFQUFFLENBQUM7RUFDUixNQUFNLEVBQUUsQ0FBQztDQVlWOztBQWpCQSxBQU1DLHVDQU5NLEFBTUwsT0FBTyxDQUFDO0VBQ1AsT0FBTyxFQUFDLEVBQUU7RUFDVixnQkFBZ0IsRXREaEJiLElBQUk7RXNEaUJQLE9BQU8sRUFBQyxHQUFHO0VBQ1gsUUFBUSxFQUFDLFFBQVE7RUFDakIsS0FBSyxFQUFDLElBQUk7RUFDVixNQUFNLEVBQUMsSUFBSTtFQUNYLEdBQUcsRUFBQyxDQUFDO0VBQ0wsSUFBSSxFQUFDLENBQUM7RUFDTixPQUFPLEVBQUMsQ0FBQztDQUNWOztBQUVGLEFBQUQseUNBQVUsQ0FBQztFcERYVCxZQUFZLEVvRFlFLElBQUk7RXBEWGxCLGFBQWEsRW9EV0MsSUFBSTtFQUNsQixRQUFRLEVBQUcsUUFBUTtFQUNuQixLQUFLLEVBQUMsSUFBSTtFQUNWLE9BQU8sRUFBQyxDQUFDO0VBQ1QsR0FBRyxFQUFDLFNBQVM7RUFDYixTQUFTLEVBQUUsZ0JBQWdCO0NBQzVCOztBQUNBLEFBQUQsdUNBQVEsQ0FBQztFQUNQLFNBQVMsRUFBQyxNQUFNO0VBQ2hCLFdBQVcsRUFBQyxHQUFHO0VBQ2YsV0FBVyxFQUFFLEdBQUc7Q0FJakI7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBSnpCLEFBQUQsdUNBQVEsQ0FBQztJQUtMLFNBQVMsRUFBRSxJQUFJO0dBRWxCOzs7QUFDQSxBQUFELHdDQUFTLENBQUM7RXBEd0xWLGFBQWEsRW9EdkxTLEtBQUs7RXBEd0x4QixVQUFVLEVvRHhMUyxLQUFLO0VwRDhMekIsV0FBVyxFQUFFLG1CQUFxQjtFb0Q3TGxDLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixHQUFHLEVBQUUsQ0FBQztFQUNOLElBQUksRUFBRSxDQUFDO0NBQ1I7O0FDeERILEFBQUEsWUFBWSxDQUFDO0VyRGlCVCxXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtFRTNCaEIsV0FBVyxFcURURyxHQUFHO0VyRFVqQixZQUFZLEVxRFZFLEdBQUc7Q0FDcEI7O0FBSEQsQXJEd1BFLFlxRHhQVSxHckR3UE4sQ0FBQyxDQUFDO0VBbE9KLFlBQVksRXFEcEJFLEdBQUc7RXJEcUJqQixhQUFhLEVxRHJCQyxHQUFHO0NyRHNQYzs7QXFEcFBuQyxBQUFBLGlCQUFpQixDQUFDO0VBQ2hCLE9BQU8sRUFBQyxLQUFLO0VBQ2IsZ0JBQWdCLEV2RElYLE9BQU87RXVESFosUUFBUSxFQUFDLFFBQVE7RUFDakIsS0FBSyxFdkRGRSxJQUFJO0V1REdYLFVBQVUsRUFBQyxNQUFNO0NBbURsQjs7QUF4REQsQUFNRSxpQkFOZSxBQU1kLE1BQU0sQ0FBQztFQUNOLE9BQU8sRUFBQyxFQUFFO0VBQ1YsT0FBTyxFQUFDLEtBQUs7RUFDYixjQUFjLEVBQUMsSUFBSTtDQUNwQjs7QUFDQSxBQUFELHdCQUFRLENBQUM7RUFDUCxRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsQ0FBQztFQUNOLElBQUksRUFBRSxDQUFDO0VBQ1AsS0FBSyxFQUFFLENBQUM7RUFDUixNQUFNLEVBQUUsQ0FBQztDQVlWOztBQWpCQSxBQU1DLHdCQU5NLEFBTUwsT0FBTyxDQUFDO0VBQ1AsT0FBTyxFQUFDLEVBQUU7RUFDVixnQkFBZ0IsRXZEaEJiLElBQUk7RXVEaUJQLE9BQU8sRUFBQyxHQUFHO0VBQ1gsUUFBUSxFQUFDLFFBQVE7RUFDakIsS0FBSyxFQUFDLElBQUk7RUFDVixNQUFNLEVBQUMsSUFBSTtFQUNYLEdBQUcsRUFBQyxDQUFDO0VBQ0wsSUFBSSxFQUFDLENBQUM7RUFDTixPQUFPLEVBQUMsQ0FBQztDQUNWOztBQUVGLEFBQUQsMEJBQVUsQ0FBQztFckRYVCxZQUFZLEVxRFlFLElBQUk7RXJEWGxCLGFBQWEsRXFEV0MsSUFBSTtFQUNsQixRQUFRLEVBQUcsUUFBUTtFQUNuQixLQUFLLEVBQUMsSUFBSTtFQUNWLE9BQU8sRUFBQyxDQUFDO0VBQ1QsR0FBRyxFQUFDLFNBQVM7RUFDYixTQUFTLEVBQUUsZ0JBQWdCO0NBQzVCOztBQUNBLEFBQUQsd0JBQVEsQ0FBQztFQUNQLFNBQVMsRUFBQyxJQUFJO0VBQ2QsV0FBVyxFQUFDLEdBQUc7RUFDZixXQUFXLEVBQUUsR0FBRztDQU9qQjs7QUFOQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUssT0FBTyxTQUFTLEVBQUUsS0FBSztFQUpoRCxBQUFELHdCQUFRLENBQUM7SUFLTCxTQUFTLEVBQUMsTUFBTTtHQUtuQjs7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBUHpCLEFBQUQsd0JBQVEsQ0FBQztJQVFMLFNBQVMsRUFBRSxNQUFNO0dBRXBCOzs7QUFDQSxBQUFELHlCQUFTLENBQUM7RXJEcUxWLGFBQWEsRXFEcExTLEtBQUs7RXJEcUx4QixVQUFVLEVxRHJMUyxLQUFLO0VyRDJMekIsV0FBVyxFQUFFLG1CQUFxQjtFcUQxTGxDLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixHQUFHLEVBQUUsQ0FBQztFQUNOLElBQUksRUFBRSxDQUFDO0NBQ1I7O0FDM0RILEFBQUEsYUFBYSxDQUFDO0V0RGlCVixXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtDd0Q2Qm5COztBQWpFRSxBQUFELG1CQUFPLENBQUM7RUFDTixPQUFPLEVBQUMsS0FBSztDQUNkOztBQUNBLEFBQUQsb0JBQVEsQ0FBQztFQUNQLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE9BQU8sRUFBQyxJQUFJO0NBSWI7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBSHpCLEFBQUQsb0JBQVEsQ0FBQztJQUlMLE9BQU8sRUFBQyxJQUFJO0dBRWY7OztBQUNBLEFBQUQscUJBQVMsQ0FBQztFQUNSLEtBQUssRUFBQyxJQUFJO0VBQ1YsTUFBTSxFQUFDLElBQUk7RUFDWCxRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsQ0FBQztFQUNOLElBQUksRUFBRSxDQUFDO0VBQ1AsTUFBTSxFQUFFLENBQUM7RUFDVCxLQUFLLEVBQUMsQ0FBQztFQUNQLFFBQVEsRUFBQyxNQUFNO0VBQ2YsVUFBVSxFQUFFLEtBQUs7RUFDakIsV0FBVyxFQUFFLG1CQUFtQjtDQUNqQzs7QUFDQSxBQUFELHNCQUFVLENBQUM7RUFDVCxRQUFRLEVBQUUsUUFBUTtFQUNsQixPQUFPLEVBQUMsQ0FBQztFQUNULGdCQUFnQixFeERyQlgsSUFBSTtFd0RzQlQsVUFBVSxFQUFDLE1BQU07RUFDakIsT0FBTyxFQUFDLElBQUk7RUFDWixTQUFTLEVBQUMsS0FBSztDQUloQjs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFQekIsQUFBRCxzQkFBVSxDQUFDO0lBUVAsT0FBTyxFQUFDLElBQUk7R0FFZjs7O0FBQ0EsQUFBRCxvQkFBUSxDQUFDO0VBQ1AsU0FBUyxFQUFDLE1BQU07RUFDaEIsV0FBVyxFQUFDLEdBQUc7RUFDZixXQUFXLEVBQUMsR0FBRztFQUNmLGFBQWEsRUFBQyxJQUFJO0VBQ2xCOzs7Ozs7Ozs7O01BVUU7Q0FDSDs7QUFDQSxBQUFELG1CQUFPLENBQUM7RUFDTixTQUFTLEVBQUMsTUFBTTtFQUNoQixhQUFhLEVBQUMsSUFBSTtFQUNsQjs7Ozs7OztNQU9FO0NBQ0g7O0FBQ0EsQUFBRCxrQkFBTSxDQUFDO0VBQ0wsS0FBSyxFQUFDLElBQUk7Q0FDWDs7QUNsRUgsQUFBQSxrQkFBa0IsQ0FBQztFdkRpQmYsV0FBVyxFRnFCQyxJQUFJO0VFcEJoQixjQUFjLEVGb0JGLElBQUk7Q3lEcENuQjs7QUNGRCxBQUFBLHFCQUFxQixDQUFDO0V4RGlCbEIsV0FBVyxFRnFCQyxJQUFJO0VFcEJoQixjQUFjLEVGb0JGLElBQUk7RTBEcENsQixnQkFBZ0IsRTFET0wsT0FBTztDMERvRG5COztBQXhESyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEMUIsQUFBQSxTQUFTLENBRFYsOEJBQVMsQ0FDSTtJQUVSLEtBQUssRUFBQyxHQUFHO0lBQ1QsS0FBSyxFQUFDLElBQUk7SUFDVixRQUFRLEVBQUMsUUFBUTtHQUVwQjs7O0FBRUYsQUFBRCw2QkFBUyxDQUFDO0VBQ1IsTUFBTSxFQUFDLE1BQU0sQ0FBQyxLQUFLLEMxRFBkLElBQUk7RTBEUVQsUUFBUSxFQUFDLFFBQVE7RUFDakIsR0FBRyxFQUFDLENBQUM7RUFDTCxJQUFJLEVBQUMsaUJBQWlCO0VBQ3RCLE9BQU8sRUFBQyxDQUFDO0VBQ1QsU0FBUyxFQUFFLE9BQU87RUFDbEIsT0FBTyxFQUFDLElBQUk7Q0FrQmI7O0FBZkssTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRDFCLEFBQUEsU0FBUyxDQURYLENBQUMsQUFBQSxPQUFPLENBUlQsNkJBQVEsQ0FTTztJQUVSLE9BQU8sRUFBQyxLQUFLO0dBRWhCOzs7QUFFSCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFmekIsQUFBRCw2QkFBUyxDQUFDO0lBZ0JOLFNBQVMsRUFBRSxPQUFPO0dBU3JCOzs7QUFQQyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07RUFsQjFCLEFBQUQsNkJBQVMsQ0FBQztJQW1CTixTQUFTLEVBQUUsT0FBTztHQU1yQjs7O0FBekJBLEFBcUJDLDZCQXJCTyxBQXFCTixPQUFPLENBQUM7RUFDUCxPQUFPLEVBQUMsRUFBRTtFQUNWLE1BQU0sRUFBQyxJQUFJO0NBQ1o7O0FBRUYsQUFBRCw0QkFBUSxDQUFDO0VBQ1AsYUFBYSxFQUFDLElBQUk7Q0FDbkI7O0FBQ0EsQUFBRCwyQkFBTyxDQUFDO0VBQ04sWUFBWSxFQUFFLENBQUM7Q0FrQmhCOztBQWpCQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFGekIsQUFBRCwyQkFBTyxDQUFDO0lBR0osWUFBWSxFQUFFLENBQUM7R0FnQmxCOzs7QUFkQyxBQUFBLFNBQVMsQ0FMViwyQkFBTSxDQUtPO0VBQ1YsWUFBWSxFQUFFLENBQUM7Q0FDaEI7O0FBUEYsQUFRQywyQkFSSyxHQVFILEVBQUUsQ0FBQztFQUNILGFBQWEsRUFBRSxJQUFJO0NBU3BCOztBQWxCRixBQVVHLDJCQVZHLEdBUUgsRUFBRSxHQUVBLENBQUMsQ0FBQztFQUNGLGNBQWMsRUFBRSxTQUFTO0NBTTFCOztBQUpHLEFBQUEsU0FBUyxDQWJoQiwyQkFBTSxHQVFILEVBQUUsR0FFQSxDQUFDLEFBRUEsT0FBTyxDQUNNO0VBQ1YsS0FBSyxFMUR2Q1QsT0FBTztDMER3Q0o7O0FDeERYLEFBQUEsYUFBYSxDQUFDO0V6RGlCVixXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtDMkRabkI7O0FBeEJFLEFBQUQsc0JBQVUsQ0FBQztFQUNULFVBQVUsRUFBQyxNQUFNO0NBQ2xCOztBQUNBLEFBQUQsbUJBQU8sQ0FBQztFQUNOLFVBQVUsRUFBRSxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEMzREN0QixrQkFBSTtDMkRNVjs7QUFSQSxBQUVDLG1CQUZLLEFBRUosYUFBYSxBQUFBLGFBQWEsQ0FBQztFQUMxQixhQUFhLEVBQUMsSUFBSTtDQUNuQjs7QUFKRixBQUtDLG1CQUxLLENBS0wsV0FBVyxDQUFDO0VBQ1YsTUFBTSxFQUFDLEtBQUs7Q0FDYjs7QUFHRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUssT0FBTyxTQUFTLEVBQUUsTUFBTTtFQWJqRCxBQUFELHNCQUFVLENBWUM7SUFFUCxXQUFXLEVBQUMsSUFBSTtHQUtuQjs7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0VBaEIxQixBQUFELHNCQUFVLENBWUM7SUFLUCxXQUFXLEVBQUMsSUFBSTtHQUVuQjs7O0FBQ0EsQUFBRCxtQkFBTyxDQUFDO0V6RFhOLFdBQVcsRUFETyxJQUFJO0VBRXRCLFlBQVksRUFGTSxJQUFJO0V5RGN0QixTQUFTLEVBQUMsS0FBSztDQUNoQjs7QUFHSCxBQUNDLGFBRFksQ0FDWCx1QkFBVSxDQUFDO0VBQ1QsS0FBSyxFQUFFLE9BQU87Q0FDZjs7QUFISCxBQUlDLGFBSlksQ0FJWCxvQkFBTyxDQUFDO0VBQ04sV0FBVyxFQUFFLEdBQUc7RUFDaEIsV0FBVyxFQUFFLGdCQUFnQjtFQUM3QixjQUFjLEVBQUUsU0FBUztDQUMxQjs7QUFSSCxBQVVDLGFBVlksQ0FVWCxrQkFBSyxDQUFDO0VBQ0osS0FBSyxFQUFFLE9BQU87Q0FDZjs7QUN4Q0gsQUFBQSx1QkFBdUIsQ0FBQztFMURpQnBCLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0M0RE5uQjs7QUFoQ0QsQUFHSSx1QkFIbUIsQ0FFckIsV0FBVyxHQUNQLFNBQVMsQ0FBQztFQUNWLEtBQUssRTVEWUgsT0FBTztDNERYVjs7QUFFRixBQUFELDhCQUFRLENBQUM7RTFEa0NQLGVBQWUsRUFBRSxLQUFLO0VBQ3RCLG1CQUFtQixFQUZRLEdBQUcsQ0FBbUIsR0FBRztFMEQvQnBELE9BQU8sRUFBQyxTQUFTO0VBQ2pCLFVBQVUsRUFBQyxNQUFNO0NBQ2xCOztBQUNBLEFBQUQsZ0NBQVUsQ0FBQztFMUREVCxXQUFXLEVBRE8sSUFBSTtFQUV0QixZQUFZLEVBRk0sSUFBSTtFMERJdEIsZ0JBQWdCLEU1RFJYLElBQUk7RTREU1QsT0FBTyxFQUFDLG1CQUFtQjtFQUMzQixPQUFPLEVBQUUsWUFBWTtFQUNyQixVQUFVLEVBQUMsSUFBSTtFQUNmLFNBQVMsRUFBQyxLQUFLO0NBSWhCOztBQUhDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQVB4QixBQUFELGdDQUFVLENBQUM7SUFRUCxPQUFPLEVBQUMsbUJBQW1CO0dBRTlCOzs7QUFFQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFEeEIsQUFBRCw2QkFBTyxDQUFDO0lBRUosWUFBWSxFQUFFLENBQUM7SUFDZixVQUFVLEVBQUcsSUFBSTtHQUtwQjs7O0FBUkEsQUFLQyw2QkFMSyxHQUtILEVBQUUsQ0FBQztFQUNILGFBQWEsRUFBRSxJQUFJO0NBQ3BCOztBQzlCTCxBQUFBLGtCQUFrQixDQUFDO0UzRGlCZixXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtDNkRuQm5COztBQW5CRCxBQUdJLGtCQUhjLENBRWhCLFdBQVcsR0FDUCxTQUFTLENBQUM7RUFDVixLQUFLLEU3RFlILE9BQU87QzZEWFY7O0FBRUYsQUFBRCx3QkFBTyxDQUFDO0UzRGVOLFlBQVksRTJEZEUsSUFBSTtFM0RlbEIsYUFBYSxFMkRmQyxJQUFJO0VBQ2xCLFVBQVUsRUFBRSxNQUFNO0NBQ25COztBQUVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUR6QixBQUFELHdCQUFPLENBQUM7SUFFSixVQUFVLEVBQUMsSUFBSTtHQUVsQjs7O0FBQ0EsQUFBRCx1QkFBTSxDQUFDO0UzRExMLFdBQVcsRTJETUssS0FBSTtFM0RMcEIsWUFBWSxFMkRLSSxLQUFJO0NBQ3JCOztBQUZBLEEzRHdPRCx1QjJEeE9NLEczRHdPRixDQUFDLENBQUM7RUFsT0osWUFBWSxFMkRMSSxJQUFJO0UzRE1wQixhQUFhLEUyRE5HLElBQUk7QzNEdU9XOztBMkRsT2hDLEFBQUQsdUJBQU8sQ0FBQztFQUNOLE9BQU8sRUFBQyxZQUFZO0NBQ3JCOztBQUNBLEFBQUQsdUJBQU8sQ0FBQztFQUNOLEtBQUssRTdEVkQsT0FBTztFNkRXWCxTQUFTLEVBQUMsSUFBSTtFQUNkLEtBQUssRUFBQyxJQUFJO0VBQ1YsTUFBTSxFQUFDLElBQUk7RUFDWCxPQUFPLEVBQUUsWUFBWTtFM0RrRHJCLFFBQVEsRUFEd0IsUUFBUTtDMkQvQ3pDOztBQVBBLEEzRHdEQyx1QjJEeERLLEEzRHdESixPQUFPLENBQUs7RUFDVCxRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsR0FBRztFQUNSLElBQUksRUFBRSxHQUFHO0VBQ1QsU0FBUyxFQUFFLHFCQUFxQjtDQUNuQzs7QTJEckRGLEFBQUQsd0JBQVEsQ0FBQztFQUNQLFdBQVcsRUFBQyxHQUFHO0VBQ2YsU0FBUyxFQUFDLE1BQU07RUFDaEIsVUFBVSxFQUFDLENBQUM7RUFDWixjQUFjLEVBQUUsU0FBUztDQUMxQjs7QUFDQSxBQUFELHVCQUFPLENBQUM7RUFDTixXQUFXLEVBQUUsR0FBRztDQUNqQjs7QUN6Q0gsQUFBQSx5QkFBeUIsQ0FBQztFNURpQnRCLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0U4RHBDbEIsZ0JBQWdCLEU5RGdCRCxPQUFPO0M4RFZ2Qjs7QUFSRCxBQUlJLHlCQUpxQixDQUd2QixXQUFXLEdBQ1AsU0FBUyxDQUFDO0VBQ1YsS0FBSyxFOURXSCxPQUFPO0M4RFZWOztBQUlMLEFBQUEsOEJBQThCLENBQUM7RTVEQzNCLFdBQVcsRUFETyxJQUFJO0VBRXRCLFlBQVksRUFGTSxJQUFJO0U0REV4QixTQUFTLEVBQUUsTUFBTTtFQUNqQixVQUFVLEVBQUMsTUFBTTtDQXFDbEI7O0FBeENELEFBSUUsOEJBSjRCLEdBQTlCLDhCQUE4QixDQUl0QjtFQUNKLFVBQVUsRUFBQyxJQUFJO0NBQ2hCOztBQUVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUR6QixBQUFELG1DQUFNLENBQUM7SUFFSCxPQUFPLEVBQUMsSUFBSTtHQUVmOzs7QUFFQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEekIsQUFBRCxzQ0FBUyxDQUFDO0lBRU4sYUFBYSxFQUFDLElBQUk7R0FFckI7OztBQUVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUR6QixBQUFELHVDQUFVLENBQUM7SUFFUCxPQUFPLEVBQUUsSUFBSTtJQUNiLGNBQWMsRUFBRSxNQUFNO0lBQ3RCLGVBQWUsRUFBRSxNQUFNO0lBQ3ZCLE1BQU0sRUFBQyxJQUFJO0lBQ1gsT0FBTyxFQUFDLElBQUk7R0FFZjs7O0FBQ0EsQUFBRCxxQ0FBUSxDQUFDO0VBQ1AsY0FBYyxFQUFFLFNBQVM7RUFDekIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsR0FBRztFQUNoQixhQUFhLEVBQUUsSUFBSTtFQUNuQixjQUFjLEVBQUUsTUFBTTtDQUl2Qjs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFQekIsQUFBRCxxQ0FBUSxDQUFDO0lBUUwsYUFBYSxFQUFDLElBQUk7R0FFckI7OztBQUNBLEFBQUQsb0NBQU8sQ0FBQztFQUNOLFdBQVcsRUFBRSxHQUFHO0NBQ2pCOztBQ2pESCxBQUFBLHdCQUF3QixDQUFDO0U3RGlCckIsV0FBVyxFRnFCQyxJQUFJO0VFcEJoQixjQUFjLEVGb0JGLElBQUk7RStEcENsQixnQkFBZ0IsRS9ET0wsT0FBTztDK0RNbkI7O0FBWEcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRHpCLEFBQUQsNkJBQU0sQ0FBQztJQUVILE9BQU8sRUFBQyxJQUFJO0dBRWY7OztBQUdHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUYzQixBQUNDLDZCQURJLEdBQUwsNkJBQUssQ0FDRTtJQUVGLFVBQVUsRUFBQyxJQUFJO0dBRWxCOzs7QUFHTCxBQUFBLDZCQUE2QixDQUFDO0VBQzVCLGdCQUFnQixFL0RYVCxJQUFJO0UrRFlYLE1BQU0sRUFBQyxJQUFJO0VBQ1gsUUFBUSxFQUFDLFFBQVE7Q0FxQ2xCOztBQXBDRSxBQUFELG9DQUFRLENBQUM7RUFDUCxPQUFPLEVBQUMsbUJBQW1CO0NBSTVCOztBQUhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUZ6QixBQUFELG9DQUFRLENBQUM7SUFHTCxjQUFjLEVBQUMsSUFBSTtHQUV0Qjs7O0FBQ0EsQUFBRCxvQ0FBUSxDQUFDO0VBQ1AsU0FBUyxFQUFDLElBQUk7RUFDZCxLQUFLLEUvRGJELE9BQU87RStEY1gsV0FBVyxFQUFDLElBQUk7RUFDaEIsYUFBYSxFQUFDLElBQUk7Q0FDbkI7O0FBQ0EsQUFDQyxzQ0FEUSxDQUNSLE1BQU0sQ0FBQztFQUNMLFdBQVcsRUFBQyxJQUFJO0VBQ2hCLFVBQVUsRUFBQyxJQUFJO0VBQ2YsU0FBUyxFQUFDLE1BQU07Q0FDakI7O0FBTEYsQUFNQyxzQ0FOUSxDQU1SLENBQUMsQ0FBQztFQUNBLFVBQVUsRUFBQyxDQUFDO0NBQ2I7O0FBUkYsQUFTQyxzQ0FUUSxDQVNSLEtBQUssQ0FBQztFQUNKLEtBQUssRS9EM0JILE9BQU87RStENEJULFdBQVcsRUFBQyxHQUFHO0VBQ2YsT0FBTyxFQUFDLFlBQVk7RUFDcEIsVUFBVSxFQUFDLElBQUk7Q0FDaEI7O0FBRUYsQUFBRCxrQ0FBTSxDQUFDO0VBQ0wsS0FBSyxFQUFDLElBQUk7Q0FNWDs7QUFMQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFGekIsQUFBRCxrQ0FBTSxDQUFDO0lBR0gsUUFBUSxFQUFDLFFBQVE7SUFDakIsTUFBTSxFQUFDLENBQUM7SUFDUixJQUFJLEVBQUMsQ0FBQztHQUVUOzs7QUN2REgsQUFBQSxzQkFBc0IsQ0FBQztFOUR5Q25CLGVBQWUsRUFBRSxLQUFLO0VBQ3RCLG1CQUFtQixFQUZRLEdBQUcsQ0FBbUIsR0FBRztFOER0Q3RELE9BQU8sRUFBQyxVQUFVO0VBQ2xCLFVBQVUsRUFBQyxNQUFNO0NBdUJsQjs7QUF0QkMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBSnpCLEFBQUEsc0JBQXNCLENBQUM7STlEaUJuQixXQUFXLEVGcUJDLElBQUk7SUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtHZ0VabkI7OztBQW5CRSxBQUFELCtCQUFVLENBQUM7RTlESVQsV0FBVyxFQURPLElBQUk7RUFFdEIsWUFBWSxFQUZNLElBQUk7RThERHRCLGdCQUFnQixFaEVIWCxJQUFJO0VnRUlULE9BQU8sRUFBQyxJQUFJO0VBQ1osT0FBTyxFQUFFLFlBQVk7RUFDckIsVUFBVSxFQUFDLE1BQU07RUFDakIsU0FBUyxFQUFDLEtBQUs7Q0FJaEI7O0FBSEMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBUHhCLEFBQUQsK0JBQVUsQ0FBQztJQVFQLE9BQU8sRUFBQyxtQkFBbUI7R0FFOUI7OztBQUNBLEFBQUQsNEJBQU8sQ0FBQztFQUNOLFdBQVcsRUFBQyxHQUFHO0VBQ2YsYUFBYSxFQUFDLElBQUk7Q0FDbkI7O0FBQ0EsQUFBRCw0QkFBTyxDQUFDO0VBQ04sS0FBSyxFaEVSRCxPQUFPO0VnRVNYLFdBQVcsRUFBQyxHQUFHO0NBQ2hCOztBQ3pCSCxBQUFBLG1CQUFtQixDQUFDO0UvRGlCaEIsV0FBVyxFRnFCQyxJQUFJO0VFcEJoQixjQUFjLEVGb0JGLElBQUk7Q2lFTG5COztBQS9CRSxBQUFELDBCQUFRLENBQUM7RS9EU1AsV0FBVyxFQURPLElBQUk7RUFFdEIsWUFBWSxFQUZNLElBQUk7RStETnRCLFNBQVMsRUFBQyxLQUFLO0NBQ2hCOztBQUNBLEFBQUQsNkJBQVcsQ0FBQztFQUNWLFNBQVMsRUFBQyxJQUFJO0VBQ2QsS0FBSyxFakVPRCxPQUFPO0VpRU5YLGFBQWEsRUFBQyxJQUFJO0VBQ2xCLFdBQVcsRUFBQyxHQUFHO0NBSWhCOztBQUhDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQUx4QixBQUFELDZCQUFXLENBQUM7SUFNUixTQUFTLEVBQUMsTUFBTTtHQUVuQjs7O0FBQ0EsQUFBRCwwQkFBUSxDQUFDO0VBQ1AsU0FBUyxFQUFDLEtBQUs7Q0FDaEI7O0FBQ0EsQUFBRCw0QkFBVSxDQUFDO0VBQ1QsYUFBYSxFQUFDLElBQUk7RUFDbEIsU0FBUyxFQUFDLElBQUk7Q0FDZjs7QUFDQSxBQUFELDRCQUFVLENBQUM7RS9EWFQsV0FBVyxFQURPLElBQUk7RUFFdEIsWUFBWSxFQUZNLElBQUk7RStEY3RCLFNBQVMsRUFBQyxLQUFLO0VBQ2YsVUFBVSxFQUFDLE1BQU07Q0FJbEI7O0FBUEEsQUFJQyw0QkFKUSxDQUlSLEdBQUcsQ0FBQztFQUNGLEtBQUssRUFBQyxLQUFLO0NBQ1o7O0FBRUYsQUFBRCwyQkFBUyxDQUFDO0UvRG5CUixXQUFXLEUrRG9CSyxLQUFJO0UvRG5CcEIsWUFBWSxFK0RtQkksS0FBSTtDQUNyQjs7QUFGQSxBL0QwTkQsMkIrRDFOUyxHL0QwTkwsQ0FBQyxDQUFDO0VBbE9KLFlBQVksRStEU0ksSUFBSTtFL0RScEIsYUFBYSxFK0RRRyxJQUFJO0MvRHlOVzs7QStEck5uQyxBQUFBLFlBQVksQ0FBQztFQUNYLGFBQWEsRUFBQyxJQUFJO0NBNkJuQjs7QUE1QkUsQUFBRCxvQkFBUyxDQUFDO0VBQ1IsT0FBTyxFQUFDLEtBQUs7RUFDYixZQUFZLEVBQUUsS0FBSztFQUNuQixLQUFLLEVBQUMsSUFBSTtFQUNWLGFBQWEsRUFBQyxHQUFHLENBQUMsS0FBSyxDakUvQnBCLE9BQU87Q2lFZ0NYOztBQUNBLEFBQUQsbUJBQVEsQ0FBQztFQUNQLE9BQU8sRUFBQyxVQUFVO0VBQ2xCLFdBQVcsRUFBQyxHQUFHO0VBQ2YsU0FBUyxFQUFDLElBQUk7RUFDZCxjQUFjLEVBQUUsTUFBTTtDQUN2Qjs7QUFDQSxBQUFELGtCQUFPLENBQUM7RUFDTixPQUFPLEVBQUMsVUFBVTtFQUNsQixTQUFTLEVBQUMsSUFBSTtFQUNkLFVBQVUsRUFBQyxLQUFLO0VBQ2hCLEtBQUssRUFBQyxJQUFJO0VBQ1YsY0FBYyxFQUFFLE1BQU07Q0FDdkI7O0FBQ0EsQUFBRCxxQkFBVSxDQUFDO0VBQ1QsVUFBVSxFQUFDLElBQUk7RUFDZixTQUFTLEVBQUMsSUFBSTtDQU1mOztBQVJBLEFBR0MscUJBSFEsQ0FHUixLQUFLLENBQUM7RUFDSixPQUFPLEVBQUMsS0FBSztFQUNiLFNBQVMsRUFBQyxNQUFNO0VBQ2hCLFVBQVUsRUFBQyxJQUFJO0NBQ2hCOztBQy9ETCxBQUFBLFFBQVEsQ0FBQztFQUNQLFVBQVUsRUFBQyxJQUFJO0NBa0VoQjs7QUFqRUMsQUFBQSxlQUFlLENBRmpCLFFBQVEsQ0FFWTtFQUNoQixVQUFVLEVBQUMsSUFBSTtFQUNmLGFBQWEsRUFBQyxJQUFJO0NBSW5COztBQU5ELEFBR0UsZUFIYSxDQUZqQixRQUFRLENBS0osUUFBUSxDQUFDO0VBQ1AsVUFBVSxFQUFDLElBQUk7Q0FDaEI7O0FBSUQsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBRHpCLEFBQUEsY0FBYyxDQVZoQixRQUFRLENBVVc7SUFFYixVQUFVLEVBQUMsQ0FBQztJQUNaLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxLQUFLO0dBS2I7OztBQUhDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQU56QixBQUFBLGNBQWMsQ0FWaEIsUUFBUSxDQVVXO0lBT2IsR0FBRyxFQUFFLE1BQU07R0FFZDs7O0FBQ0EsQUFBRCxlQUFRLENBQUM7RWhFVFAsV0FBVyxFQURPLElBQUk7RUFFdEIsWUFBWSxFQUZNLElBQUk7RWdFWXRCLFNBQVMsRUFBQyxLQUFLO0VBQ2YsZ0JBQWdCLEVsRWpCWCxJQUFJO0NrRThCVjs7QUFaQyxBQUFBLGVBQWUsQ0FKaEIsZUFBTyxDQUlXO0VBQ2YsU0FBUyxFQUFDLE1BQU07Q0FDakI7O0FBQ0QsTUFBTSxFQUFDLFNBQVMsRUFBRSxNQUFNO0VBUHpCLEFBQUQsZUFBUSxDQUFDO0lBUUwsU0FBUyxFQUFDLE1BQU07R0FRbkI7OztBQU5DLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQVZ4QixBQUFELGVBQVEsQ0FBQztJQVdMLE9BQU8sRUFBQyxJQUFJO0dBS2Y7RUFKRyxBQUFBLHNCQUFzQixDQVp6QixlQUFPLENBWXFCO0lBQ3ZCLE9BQU8sRUFBQyxtQkFBbUI7R0FDNUI7OztBQUdKLEFBQUQsa0JBQVcsQ0FBQztFQUNWLFNBQVMsRUFBQyxJQUFJO0VBQ2QsS0FBSyxFbEV4QkQsT0FBTztFa0V5QlgsYUFBYSxFQUFDLElBQUk7RUFDbEIsV0FBVyxFQUFDLEdBQUc7Q0FJaEI7O0FBSEMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBTHhCLEFBQUQsa0JBQVcsQ0FBQztJQU1SLFNBQVMsRUFBQyxNQUFNO0dBRW5COzs7QUFDQSxBQUFELGNBQU8sQ0FBQztFQUNOLGFBQWEsRUFBQyxJQUFJO0NBQ25COztBQUNBLEFBQUQscUJBQWMsQ0FBQztFQUNiLFNBQVMsRUFBQyxNQUFNO0VBQ2hCLFVBQVUsRUFBQyxLQUFLO0VBQ2hCLFVBQVUsRUFBQyxJQUFJO0VBQ2YsYUFBYSxFQUFDLElBQUk7Q0FPbkI7O0FBTkMsQUFBQSxlQUFlLENBTGhCLHFCQUFhLENBS007RUFDaEIsYUFBYSxFQUFFLElBQUk7Q0FJcEI7O0FBSEMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBRnpCLEFBQUEsZUFBZSxDQUxoQixxQkFBYSxDQUtNO0lBR2QsVUFBVSxFQUFFLEtBQUs7R0FFcEI7OztBQUVGLEFBQUQsa0JBQVcsQ0FBQztFQUNWLFNBQVMsRUFBQyxNQUFNO0NBSWpCOztBQUhDLEFBQUEsZUFBZSxDQUZoQixrQkFBVSxDQUVTO0VBQ2hCLFNBQVMsRUFBQyxJQUFJO0NBQ2Y7O0FBSUwsQUFBQSxZQUFZLENBQUM7RUFDWCxRQUFRLEVBQUMsUUFBUTtFQUNqQixVQUFVLEVBQUMsTUFBTTtFQUNqQixLQUFLLEVsRWxFRSxJQUFJO0VrRW1FWCxPQUFPLEVBQUMsS0FBSztFQUNiLGFBQWEsRUFBQyxJQUFJO0NBcURuQjs7QUExREQsQUFNRSxZQU5VLEFBTVQsT0FBTyxDQUFDO0VBQ1AsT0FBTyxFQUFDLEVBQUU7RUFDVixnQkFBZ0IsRWxFdEVYLElBQUk7RWtFdUVULE9BQU8sRUFBQyxFQUFFO0VBQ1YsUUFBUSxFQUFDLFFBQVE7RUFDakIsS0FBSyxFQUFDLElBQUk7RUFDVixNQUFNLEVBQUMsSUFBSTtFQUNYLEdBQUcsRUFBQyxDQUFDO0VBQ0wsSUFBSSxFQUFDLENBQUM7Q0FDUDs7QUFDQSxBQUFELG9CQUFTLENBQUM7RWhFb0pWLGFBQWEsRWdFbkpTLEtBQUs7RWhFb0p4QixVQUFVLEVnRXBKUyxLQUFLO0VoRTBKekIsV0FBVyxFQUFFLG1CQUFxQjtFZ0V6SmxDLEtBQUssRUFBQyxJQUFJO0VBQ1YsTUFBTSxFQUFDLEtBQUs7Q0FDYjs7QUFDQSxBQUFELHFCQUFVLENBQUM7RUFDVCxRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUMsSUFBSTtFQUNWLEdBQUcsRUFBRSxHQUFHO0VBQ1IsSUFBSSxFQUFFLENBQUM7RUFDUCxPQUFPLEVBQUUsQ0FBQztFQUNWLFNBQVMsRUFBRSxnQkFBZ0I7RWhFMUUzQixZQUFZLEVnRTJFRyxJQUFJO0VoRTFFbkIsYUFBYSxFZ0UwRUUsSUFBSTtDQUNwQjs7QUFDQSxBQUFELG1CQUFRLENBQUM7RUFDUCxTQUFTLEVBQUMsTUFBTTtFQUNoQixjQUFjLEVBQUUsS0FBSztFQUNyQixXQUFXLEVBQUMsR0FBRztFQUNmLGNBQWMsRUFBQyxTQUFTO0VBQ3hCLEtBQUssRWxFbEdBLElBQUk7RWtFbUdULGFBQWEsRUFBQyxNQUFNO0NBSXJCOztBQUhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQVB6QixBQUFELG1CQUFRLENBQUM7SUFRTCxTQUFTLEVBQUMsSUFBSTtHQUVqQjs7O0FBQ0EsQUFBRCw0QkFBaUIsQ0FBQztFQUNoQixXQUFXLEVsRWpGRSxVQUFVLEVBQUUsS0FBSztFa0VrRjlCLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFdBQVcsRUFBQyxHQUFHO0VBQ2YsS0FBSyxFbEU1R0EsSUFBSTtFa0U2R1QsY0FBYyxFQUFFLEtBQUs7RUFDckIsU0FBUyxFQUFDLE1BQU07RUFDaEIsYUFBYSxFQUFDLElBQUk7RUFDbEIsY0FBYyxFQUFFLElBQUk7RUFDcEIsT0FBTyxFQUFDLEtBQUs7Q0FPZDs7QUFOQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFWeEIsQUFBRCw0QkFBaUIsQ0FBQztJQVdkLFNBQVMsRUFBQyxJQUFJO0dBS2pCOzs7QUFIQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFieEIsQUFBRCw0QkFBaUIsQ0FBQztJQWNkLFNBQVMsRUFBQyxNQUFNO0dBRW5COzs7QUFFSCxBQUFBLHdCQUF3QixDQUFDO0VBQ3ZCLFVBQVUsRUFBQyxNQUFNO0VBQ2pCLGFBQWEsRUFBQyxJQUFJO0NBQ25COztBQUNELEFBQUEsdUJBQXVCLENBQUM7RUFDdEIsU0FBUyxFQUFDLElBQUk7RUFDZCxXQUFXLEVBQUMsR0FBRztFQUNmLFVBQVUsRUFBQyxNQUFNO0VBQ2pCLGFBQWEsRUFBQyxJQUFJO0NBWW5COztBQVhFLEFBQUQsNkJBQU8sQ0FBQztFQUNOLFFBQVEsRUFBQyxRQUFRO0VBQ2pCLFNBQVMsRUFBQyxJQUFJO0VBQ2QsTUFBTSxFQUFDLElBQUk7Q0FPWjs7QUFWQSxBQUlDLDZCQUpLLEFBSUosT0FBTyxDQUFDO0VBQ1AsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLEdBQUc7RUFDUixJQUFJLEVBQUUsR0FBRztFQUNULFNBQVMsRUFBRSxxQkFBcUI7Q0FDakM7O0FBSUwsQUFBQSxRQUFRLENBQUM7RUFDUCxVQUFVLEVBQUMsS0FBSztFQUNoQixhQUFhLEVBQUMsSUFBSTtDQXVCbkI7O0FBdEJDLEFBQUEsZUFBZSxDQUhqQixRQUFRLENBR1k7RUFDaEIsYUFBYSxFQUFDLElBQUk7Q0FDbkI7O0FBQ0EsQUFBRCxpQkFBVSxDQUFDO0VBQ1QsT0FBTyxFQUFDLFlBQVk7RUFDcEIsY0FBYyxFQUFFLE1BQU07Q0FDdkI7O0FBQ0EsQUFBRCxxQkFBYyxDQUFDO0VBQ2IsV0FBVyxFQUFDLEdBQUc7RUFDZixTQUFTLEVBQUMsTUFBTTtDQUlqQjs7QUFOQSxBQUdDLHFCQUhZLEFBR1gsTUFBTSxDQUFDO0VBQ04sZUFBZSxFQUFDLFNBQVM7Q0FDMUI7O0FBRUYsQUFBRCxnQkFBUyxDQUFDO0VBQ1IsU0FBUyxFQUFDLE1BQU07Q0FDakI7O0FBQ0EsQUFBRCxnQkFBUyxDQUFDO0VBQ1IsT0FBTyxFQUFDLFlBQVk7RUFDcEIsS0FBSyxFQUFDLElBQUk7RUFDVixjQUFjLEVBQUUsTUFBTTtDQUN2Qjs7QUM5S0gsQUFBQSxnQkFBZ0IsQ0FBQztFakVpQmIsV0FBVyxFRnFCQyxJQUFJO0VFcEJoQixjQUFjLEVGb0JGLElBQUk7Q21FM0JuQjs7QUFURSxBQUFELHFCQUFNLENBQUM7RWpFU0wsV0FBVyxFaUVSSyxLQUFJO0VqRVNwQixZQUFZLEVpRVRJLEtBQUk7Q0FPckI7O0FBUkEsQWpFc1BELHFCaUV0UE0sR2pFc1BGLENBQUMsQ0FBQztFQWxPSixZQUFZLEVpRW5CSSxJQUFJO0VqRW9CcEIsYUFBYSxFaUVwQkcsSUFBSTtDakVxUFc7O0FpRXBQL0IsTUFBTSxFQUFDLFNBQVMsRUFBRSxNQUFNO0VBRnpCLEFBQUQscUJBQU0sQ0FBQztJakVTTCxXQUFXLEVpRU5PLEtBQUk7SWpFT3RCLFlBQVksRWlFUE0sS0FBSTtHQUt2QjtFQVJBLEFqRXNQRCxxQmlFdFBNLEdqRXNQRixDQUFDLENBQUM7SUFsT0osWUFBWSxFaUVqQk0sSUFBSTtJakVrQnRCLGFBQWEsRWlFbEJLLElBQUk7R2pFbVBTOzs7QWlFalAvQixNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFMeEIsQUFBRCxxQkFBTSxDQUFDO0lqRVNMLFdBQVcsRWlFSE8sS0FBSTtJakVJdEIsWUFBWSxFaUVKTSxLQUFJO0dBRXZCO0VBUkEsQWpFc1BELHFCaUV0UE0sR2pFc1BGLENBQUMsQ0FBQztJQWxPSixZQUFZLEVpRWRNLElBQUk7SWpFZXRCLGFBQWEsRWlFZkssSUFBSTtHakVnUFM7OztBaUU1T25DLEFBQUEscUJBQXFCLENBQUM7RWpFRGxCLFdBQVcsRUFETyxJQUFJO0VBRXRCLFlBQVksRUFGTSxJQUFJO0VpRUl4QixhQUFhLEVBQUMsSUFBSTtFQUNsQixVQUFVLEVBQUUsTUFBTTtDQXVCbkI7O0FBdEJFLEFBQUQsNkJBQVMsQ0FBQztFQUNSLGFBQWEsRUFBQyxJQUFJO0NBQ25COztBQUNBLEFBQUQsNEJBQVEsQ0FBQztFQUNQLFNBQVMsRUFBQyxNQUFNO0VBQ2hCLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLGNBQWMsRUFBRSxTQUFTO0VBQ3pCLGNBQWMsRUFBQyxJQUFJO0VBQ25CLGFBQWEsRUFBQyxJQUFJO0VBQ2xCLFFBQVEsRUFBQyxRQUFRO0NBWWxCOztBQWxCQSxBQU9DLDRCQVBNLEFBT0wsT0FBTyxDQUFDO0VBQ1AsT0FBTyxFQUFDLEVBQUU7RUFDVixPQUFPLEVBQUMsS0FBSztFQUNiLEtBQUssRUFBQyxJQUFJO0VBQ1YsUUFBUSxFQUFDLFFBQVE7RUFDakIsTUFBTSxFQUFDLEdBQUc7RUFDVixnQkFBZ0IsRW5FekJiLElBQUk7RW1FMEJQLEdBQUcsRUFBQyxJQUFJO0VBQ1IsSUFBSSxFQUFDLEdBQUc7RUFDUixTQUFTLEVBQUUsZ0JBQWdCO0NBQzVCOztBQ3BDTCxBQUFBLG1CQUFtQixDQUFDO0VsRWlCaEIsV0FBVyxFRnFCQyxJQUFJO0VFcEJoQixjQUFjLEVGb0JGLElBQUk7Q29FRG5COztBQW5DRSxBQUFELDBCQUFRLENBQUM7RUFDUCxPQUFPLEVBQUMsSUFBSTtFQUNaLFVBQVUsRUFBQyxLQUFLO0VsRXFDaEIsZUFBZSxFQUFFLEtBQUs7RUFDdEIsbUJBQW1CLEVrRXJDSixDQUFDLENBQUMsQ0FBQztDQUNuQjs7QUFJQSxBQUFELDBCQUFRLENBQUM7RUFDUCxTQUFTLEVBQUMsSUFBSTtFQUNkLFdBQVcsRUFBQyxHQUFHO0VBQ2YsV0FBVyxFQUFDLEdBQUc7RUFDZixhQUFhLEVBQUMsSUFBSTtDQUluQjs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFMekIsQUFBRCwwQkFBUSxDQUFDO0lBTUwsU0FBUyxFQUFDLE1BQU07R0FFbkI7OztBQUVBLEFBQUQseUJBQU8sQ0FBQztFQUNOLEtBQUssRUFBQyxLQUFLO0VBQ1gsYUFBYSxFQUFDLElBQUk7Q0FJbkI7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBSHpCLEFBQUQseUJBQU8sQ0FBQztJQUlKLFNBQVMsRUFBQyxJQUFJO0dBRWpCOzs7QUFDQSxBQUFELHdCQUFNLENBQUM7RUFDTCxXQUFXLEVBQUMsR0FBRztFakV2QmpCLE9BQU8sRUFBQyxZQUFZO0VBQ3BCLFdBQVcsRUFGZ0QsR0FBRztFQUc5RCxVQUFVLEVBQUUsTUFBTTtFQUNsQixjQUFjLEVBQUUsTUFBTTtFQUN0QixjQUFjLEVBQUUsU0FBUztFQUN6QixPQUFPLEVBTm9CLElBQUksQ0FBVSxJQUFJO0VpRTBCM0MsTUFBTSxFQUFDLEdBQUcsQ0FBQyxLQUFLLENwRXZCWCxJQUFJO0VvRXdCVCxlQUFlLEVBQUUsSUFBSTtDQUt0Qjs7QWpFekJELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFaUVnQnZCLEFBQUQsd0JBQU0sQ0FBQztJakVmTCxPQUFPLEVBQUUsS0FBSztJQUNkLEtBQUssRUFBQyxJQUFJO0dpRXVCWDs7O0FBVEEsQWpFWkQsd0JpRVlNLEFqRVpMLFdBQVcsQ0FBQztFQUNYLEtBQUssRUFBQyxJQUFJO0NBQ1g7O0FpRVVBLEFqRVRELHdCaUVTTSxBakVUTCxRQUFRLENBQUM7RUREUixXQUFXLEVDRUcsQ0FBQztFRERmLGNBQWMsRUNDQSxDQUFDO0VBQ2YsTUFBTSxFQUFDLElBQUk7RUFDWCxXQUFXLEVBQUMsSUFBSTtDQUNqQjs7QWlFV0MsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBTnpCLEFBQUQsd0JBQU0sQ0FBQztJQU9ILFNBQVMsRUFBQyxNQUNaO0dBQ0Q7OztBQ3BDSCxBQUFBLHdCQUF3QixDQUFDO0VuRWlCckIsV0FBVyxFRnFCQyxJQUFJO0VFcEJoQixjQUFjLEVGb0JGLElBQUk7Q3FFMUJuQjs7QUFWQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFGekIsQUFJTSx3QkFKa0IsQ0FHcEIsSUFBSSxHQUNFLENBQUMsQ0FBQztJQUNKLFVBQVUsRUFBQyxJQUFJO0dBSWhCO0VBVFAsQUFNUSx3QkFOZ0IsQ0FHcEIsSUFBSSxHQUNFLENBQUMsQUFFRixZQUFZLENBQUM7SUFDWixVQUFVLEVBQUMsQ0FBQztHQUNiOzs7QUFNVCxBQUFBLDZCQUE2QixDQUFDO0VuRTJCMUIsZUFBZSxFQUFFLEtBQUs7RUFDdEIsbUJBQW1CLEVBRlEsR0FBRyxDQUFtQixHQUFHO0VtRXhCdEQsT0FBTyxFQUFDLEtBQUs7RUFDYixNQUFNLEVBQUMsS0FBSztFQUNaLFVBQVUsRUFBRSxNQUFNO0NBdUJuQjs7QUF0QkMsTUFBTSxFQUFDLFNBQVMsRUFBRSxNQUFNO0VBTDFCLEFBQUEsNkJBQTZCLENBQUM7SUFNMUIsTUFBTSxFQUFDLEtBQUs7R0FxQmY7OztBQTNCRCxBQVFFLDZCQVIyQixBQVExQixPQUFPLENBQUM7RUFDUCxPQUFPLEVBQUUsRUFBRTtFQUNYLE9BQU8sRUFBRSxZQUFZO0VBQ3JCLE1BQU0sRUFBRSxJQUFJO0VBQ1osY0FBYyxFQUFFLE1BQU07RUFDdEIsWUFBWSxFQUFFLE9BQU87RUFBRSxpQkFBaUI7Q0FDekM7O0FBQ0EsQUFBRCxvQ0FBUSxDQUFDO0VBQ1AsZ0JBQWdCLEVyRXhCWCxJQUFJO0VxRXlCVCxPQUFPLEVBQUUsWUFBWTtFQUNyQixjQUFjLEVBQUUsU0FBUztFQUN6QixPQUFPLEVBQUMsU0FBUztFQUNqQixXQUFXLEVBQUMsR0FBRztFQUNmLGNBQWMsRUFBRSxNQUFNO0NBQ3ZCOztBQUNBLEFBQUQsbUNBQU8sQ0FBQztFQUNOLGVBQWUsRUFBRSxTQUFTO0VBQzFCLGNBQWMsRUFBRSxTQUFTO0NBQzFCOztBQ3hDSCxBQUFBLGlCQUFpQixDQUFDO0VwRWlCZCxXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtDc0VoQ25COztBQUpFLEFBQUQseUJBQVMsQ0FBQztFQUNSLEtBQUssRUFBQyxJQUFJO0VBQ1YsTUFBTSxFQUFDLElBQUk7Q0FDWjs7QUNMSCxBQUFBLGtCQUFrQixDQUFDO0VyRWlCZixXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtDdUVoQ25COztBQUpFLEFBQUQsMEJBQVMsQ0FBQztFQUNSLEtBQUssRUFBQyxJQUFJO0VBQ1YsTUFBTSxFQUFDLElBQUk7Q0FDWjs7QUNMSCxBQUFBLHNCQUFzQixDQUFDO0V0RWlCbkIsV0FBVyxFRnFCQyxJQUFJO0VFcEJoQixjQUFjLEVGb0JGLElBQUk7RXdFcENsQixnQkFBZ0IsRXhFT0wsT0FBTztDd0VObkI7O0FBQ0QsQUFBQSwyQkFBMkIsQ0FBQztFdEVPeEIsV0FBVyxFQURPLElBQUk7RUFFdEIsWUFBWSxFQUZNLElBQUk7RXNFSnhCLFNBQVMsRUFBRSxNQUFNO0NBa0NsQjs7QUFwQ0QsQUFHRSwyQkFIeUIsR0FBM0IsMkJBQTJCLENBR25CO0VBQ0osVUFBVSxFQUFDLElBQUk7Q0FDaEI7O0FBRUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRHpCLEFBQUQsZ0NBQU0sQ0FBQztJdEVDTCxXQUFXLEVzRUNPLEtBQUk7SXRFQXRCLFlBQVksRXNFQU0sS0FBSTtHQUV2QjtFQUpBLEF0RThPRCxnQ3NFOU9NLEd0RThPRixDQUFDLENBQUM7SUFsT0osWUFBWSxFc0VWTSxJQUFJO0l0RVd0QixhQUFhLEVzRVhLLElBQUk7R3RFNE9TOzs7QXNFeE8vQixNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEekIsQUFBRCxtQ0FBUyxDQUFDO0lBRU4sYUFBYSxFQUFDLElBQUk7R0FFckI7OztBQUNBLEFBQUQsa0NBQVEsQ0FBQztFQUNQLGNBQWMsRUFBRSxTQUFTO0VBQ3pCLFNBQVMsRUFBQyxNQUFNO0VBQ2hCLGFBQWEsRUFBRSxJQUFJO0NBQ3BCOztBQUNBLEFBQUQsa0NBQVEsQ0FBQztFQUNQLFNBQVMsRUFBRSxNQUFNO0VBQ2pCLFdBQVcsRUFBRSxHQUFHO0NBRWpCOztBQUNBLEFBQUQsa0NBQVEsQ0FBQztFQUNQLGNBQWMsRUFBRSxTQUFTO0VBQ3pCLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLEtBQUssRXhFbEJELE9BQU87RXdFbUJYLGFBQWEsRUFBRSxNQUFNO0NBQ3RCOztBQUNBLEFBQUQsaUNBQU8sQ0FBQztFQUNOLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLFVBQVUsRUFBQyxDQUFDO0NBQ2I7O0FDdkNILEFBQUEseUJBQXlCLENBQUM7RXZFaUJ0QixXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtFeUVwQ2xCLGdCQUFnQixFekVPTCxPQUFPO0N5RU1uQjs7QUFYRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEekIsQUFBRCw4QkFBTSxDQUFDO0lBRUgsT0FBTyxFQUFDLElBQUk7R0FFZjs7O0FBR0csTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRjNCLEFBQ0MsOEJBREksR0FBTCw4QkFBSyxDQUNFO0lBRUYsVUFBVSxFQUFDLElBQUk7R0FFbEI7OztBQUdMLEFBQUEsOEJBQThCLENBQUM7RUFDN0IsZ0JBQWdCLEV6RVhULElBQUk7RXlFWVgsTUFBTSxFQUFDLElBQUk7RUFDWCxRQUFRLEVBQUMsUUFBUTtDQW1FbEI7O0FBbEVFLEFBQUQscUNBQVEsQ0FBQztFQUNQLE9BQU8sRUFBQyxtQkFBbUI7Q0FNNUI7O0FBTEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRnpCLEFBR0cscUNBSEksQUFHSCxRQUFRLENBQUM7SUFDUixjQUFjLEVBQUMsSUFBSTtHQUNwQjs7O0FBR0osQUFBRCxxQ0FBUSxDQUFDO0VBQ1AsU0FBUyxFQUFDLElBQUk7RUFDZCxLQUFLLEV6RWZELE9BQU87RXlFZ0JYLFdBQVcsRUFBQyxHQUFHO0VBQ2YsYUFBYSxFQUFDLElBQUk7RUFDbEIsV0FBVyxFQUFDLENBQUM7Q0FLZDs7QUFWQSxBQU1DLHFDQU5NLENBTU4sSUFBSSxDQUFDO0VBQ0gsV0FBVyxFQUFDLEdBQUc7RUFDZixPQUFPLEVBQUMsS0FBSztDQUNkOztBQUVGLEFBQUQsd0NBQVcsQ0FBQztFQUNWLGNBQWMsRUFBQyxTQUFTO0VBQ3hCLE9BQU8sRUFBQyxLQUFLO0NBSWQ7O0FBTkEsQUFHQyx3Q0FIUyxBQUdSLE1BQU0sQ0FBQztFQUNOLGVBQWUsRUFBQyxTQUFTO0NBQzFCOztBQUVGLEFBQ0MsdUNBRFEsQ0FDUixNQUFNLENBQUM7RUFDTCxXQUFXLEVBQUMsSUFBSTtFQUNoQixVQUFVLEVBQUMsSUFBSTtFQUNmLFNBQVMsRUFBQyxNQUFNO0NBQ2pCOztBQUxGLEFBTUMsdUNBTlEsQ0FNUixDQUFDLENBQUM7RUFDQSxVQUFVLEVBQUMsQ0FBQztFQUNaLGFBQWEsRUFBQyxJQUFJO0NBQ25COztBQVRGLEFBWUMsdUNBWlEsQ0FZUixFQUFFLENBQUM7RUFDRCxXQUFXLEVBQUMsSUFBSTtFQUNoQixRQUFRLEVBQUMsUUFBUTtDQVdsQjs7QUF6QkYsQUFlRyx1Q0FmTSxDQVlSLEVBQUUsQUFHQyxPQUFPLENBQUM7RUFDUCxPQUFPLEVBQUMsRUFBRTtFQUNWLE9BQU8sRUFBQyxLQUFLO0VBQ2IsS0FBSyxFQUFDLE1BQU07RUFDWixNQUFNLEVBQUMsTUFBTTtFQUNiLGFBQWEsRUFBQyxHQUFHO0VBQ2pCLFFBQVEsRUFBQyxRQUFRO0VBQ2pCLGdCQUFnQixFekU3RGYsSUFBSTtFeUU4REwsR0FBRyxFQUFDLE1BQU07Q0FDWDs7QUF4QkosQUEwQkMsdUNBMUJRLENBMEJSLEtBQUssQ0FBQztFQUNKLEtBQUssRXpFMURILE9BQU87RXlFMkRULFdBQVcsRUFBQyxHQUFHO0VBQ2YsT0FBTyxFQUFDLEtBQUs7Q0FDZDs7QUFFRixBQUFELG1DQUFNLENBQUM7RUFDTCxLQUFLLEVBQUMsSUFBSTtDQU1YOztBQUxDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUZ6QixBQUFELG1DQUFNLENBQUM7SUFHSCxRQUFRLEVBQUMsUUFBUTtJQUNqQixNQUFNLEVBQUMsQ0FBQztJQUNSLElBQUksRUFBQyxDQUFDO0dBRVQ7OztBQ3JGSCxBQUFBLDJCQUEyQixDQUFDO0V4RWlCeEIsV0FBVyxFRnFCQyxJQUFJO0VFcEJoQixjQUFjLEVGb0JGLElBQUk7QzBFN0JuQjs7QUFQRSxBQUFELGlDQUFPLENBQUM7RUFDTixPQUFPLEVBQUMsS0FBSztDQUNkOztBQUNBLEFBQUQsZ0NBQU0sQ0FBQztFeEVNTCxXQUFXLEV3RUxLLEtBQUk7RXhFTXBCLFlBQVksRXdFTkksS0FBSTtDQUVyQjs7QUFIQSxBeEVtUEQsZ0N3RW5QTSxHeEVtUEYsQ0FBQyxDQUFDO0VBbE9KLFlBQVksRXdFaEJJLElBQUk7RXhFaUJwQixhQUFhLEV3RWpCRyxJQUFJO0N4RWtQVzs7QXdFOU9uQyxBQUFBLGdDQUFnQyxDQUFDO0V4RUM3QixXQUFXLEVBRE8sSUFBSTtFQUV0QixZQUFZLEVBRk0sSUFBSTtFd0VFeEIsYUFBYSxFQUFDLElBQUk7RUFDbEIsVUFBVSxFQUFFLE1BQU07Q0FTbkI7O0FBUkUsQUFBRCx3Q0FBUyxDQUFDO0VBQ1IsYUFBYSxFQUFDLElBQUk7RUFDbEIsYUFBYSxFQUFDLEdBQUc7RUFDakIsU0FBUyxFQUFFLEtBQUs7Q0FDakI7O0FBQ0EsQUFBRCx1Q0FBUSxDQUFDO0VBQ1AsU0FBUyxFQUFDLElBQUk7Q0FDZjs7QUNyQkgsQUFBQSxjQUFjLENBQUM7RXpFaUJYLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0MyRXNCbkI7O0FBMURFLEFBQUQscUJBQVEsQ0FBQztFQUNQLGdCQUFnQixFM0VjUCxPQUFPO0UyRWJoQixRQUFRLEVBQUMsUUFBUTtFQUNqQixPQUFPLEVBQUMsS0FBSztFQUNiLEtBQUssRUFBQyxJQUFJO0VBQ1YsTUFBTSxFQUFDLEtBQUs7RUFDWixZQUFZLEVBQUUsS0FBSztDQUtwQjs7QUFKQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFQeEIsQUFBRCxxQkFBUSxDQUFDO0lBUUwsT0FBTyxFQUFDLEtBQUs7SUFDYixNQUFNLEVBQUMsSUFBSTtHQUVkOzs7QUFDQSxBQUFELHNCQUFTLENBQUM7RUFDUixLQUFLLEVBQUMsS0FBSztFQUNYLE9BQU8sRUFBQyxJQUFJO0VBQ1osT0FBTyxFQUFDLFVBQVU7RUFDbEIsY0FBYyxFQUFDLE1BQU07RUFDckIsS0FBSyxFM0ViQSxJQUFJO0UyRWNULFFBQVEsRUFBQyxRQUFRO0NBVWxCOztBQVRDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQVB4QixBQUFELHNCQUFTLENBQUM7SUFRTixPQUFPLEVBQUMsSUFBSTtJQUNaLEtBQUssRUFBQyxHQUFHO0dBT1o7OztBQUxDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQVh4QixBQUFELHNCQUFTLENBQUM7SUFZTixPQUFPLEVBQUMsS0FBSztJQUNiLE9BQU8sRUFBQyxJQUFJO0lBQ1osS0FBSyxFQUFDLElBQUk7R0FFYjs7O0FBQ0EsQUFBRCx1QkFBVSxDQUFDO0VBQ1QsVUFBVSxFQUFDLElBQUk7Q0FDaEI7O0FBQ0EsQUFBRCx1QkFBVSxDQUFDO0VBQ1QsT0FBTyxFQUFDLFVBQVU7RUFDbEIsY0FBYyxFQUFDLEdBQUc7RUFDbEIsUUFBUSxFQUFDLFFBQVE7Q0FJbEI7O0FBSEMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBSnhCLEFBQUQsdUJBQVUsQ0FBQztJQUtQLE9BQU8sRUFBQyxLQUFLO0dBRWhCOzs7QUFDQSxBQUFELG9CQUFPLENBQUM7RUFDTixTQUFTLEVBQUMsTUFBTTtDQUlqQjs7QUFMQSxBQUVDLG9CQUZLLENBRUwsRUFBRSxHQUFHLEVBQUUsQ0FBQztFQUNOLFVBQVUsRUFBQyxJQUFJO0NBQ2hCOztBQUVGLEFBQUQsMkJBQWMsQ0FBQztFQUNiLE1BQU0sRUFBQyxJQUFJO0NBQ1o7O0FBQ0EsQUFBRCxxQkFBUSxDQUFDO0VBQ1AsU0FBUyxFQUFDLE1BQU07RUFDaEIsV0FBVyxFQUFDLEdBQUc7RUFDZixhQUFhLEVBQUMsSUFBSTtDQUNuQjs7QUFDQSxBQUFELG9CQUFPLENBQUM7RUFDTixXQUFXLEVBQUMsR0FBRztFQUNmLFNBQVMsRUFBQyxNQUFNO0NBQ2pCOztBQUdILEFBQUEsbUJBQW1CLENBQUM7RUFDbEIsT0FBTyxFQUFDLEtBQUs7RUFDYixRQUFRLEVBQUMsUUFBUTtFQUNqQixNQUFNLEVBQUMsSUFBSTtDQXVCWjs7QUF0QkUsQUFBRCw0QkFBVSxDQUFDO0VBQ1QsTUFBTSxFQUFDLElBQUk7RUFDWCxLQUFLLEUzRTlEQSxJQUFJO0UyRStEVCxPQUFPLEVBQUMsSUFBSTtFQUNaLFFBQVEsRUFBQyxRQUFRO0NBS2xCOztBQUpDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQUx4QixBQUFELDRCQUFVLENBQUM7SUFNUCxPQUFPLEVBQUMsSUFBSTtJQUNaLE1BQU0sRUFBQyxLQUFLO0dBRWY7OztBQUNBLEFBQUQsMkJBQVMsQ0FBQztFQUNSLEtBQUssRUFBQyxJQUFJO0VBQ1YsTUFBTSxFQUFDLElBQUk7RUFDWCxRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsQ0FBQztFQUNOLElBQUksRUFBRSxDQUFDO0VBQ1AsTUFBTSxFQUFFLENBQUM7RUFDVCxLQUFLLEVBQUMsQ0FBQztFQUNQLFFBQVEsRUFBQyxNQUFNO0VBQ2YsVUFBVSxFQUFFLEtBQUs7RUFDakIsV0FBVyxFQUFFLG1CQUFtQjtDQUNqQzs7QUN2RkgsQUFBQSx5QkFBeUIsQ0FBQztFMUVpQnRCLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0M0RVJuQjs7QUE1QkUsQUFBRCxnQ0FBUSxDQUFDO0UxRVNQLFdBQVcsRUFETyxJQUFJO0VBRXRCLFlBQVksRUFGTSxJQUFJO0UwRU50QixTQUFTLEVBQUMsS0FBSztDQUNoQjs7QUFDQSxBQUFELGlDQUFTLENBQUM7RUFDUixVQUFVLEVBQUMsTUFBTTtFQUNqQixjQUFjLEVBQUUsSUFBSTtDQUNyQjs7QUFDQSxBQUFELHVDQUFlLENBQUM7RUFDZCxTQUFTLEVBQUMsTUFBTTtFQUNoQixXQUFXLEVBQUMsR0FBRztFQUNmLEtBQUssRTVFRUQsT0FBTztFNEVEWCxhQUFhLEVBQUMsSUFBSTtFQUNsQixXQUFXLEVBQUUsR0FBRztDQUlqQjs7QUFIQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFOeEIsQUFBRCx1Q0FBZSxDQUFDO0lBT1osU0FBUyxFQUFDLE1BQU07R0FFbkI7OztBQUNBLEFBQUQsMENBQWtCLENBQUM7RUFDakIsU0FBUyxFQUFDLE1BQU07Q0FDakI7O0FBQ0EsQUFBRCx1Q0FBZSxDQUFDO0VBQ2QsU0FBUyxFQUFDLEtBQUs7RUFDZixhQUFhLEVBQUMsSUFBSTtDQUluQjs7QUFOQSxBQUdDLHVDQUhhLENBR2IsRUFBRSxHQUFHLEVBQUUsQ0FBQztFQUNOLFVBQVUsRUFBQyxNQUFNO0NBQ2xCOztBQzVCTCxBQUFBLGtCQUFrQixDQUFDO0UzRWlCZixXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtDNkV4Qm5COztBQVZLLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUYzQixBQUNDLHVCQURJLEdBQUwsdUJBQUssQ0FDRTtJQUVGLFVBQVUsRUFBQyxJQUFJO0dBRWxCOzs7QUFFRixBQUFELDBCQUFTLENBQUM7RUFDUixVQUFVLEVBQUMsTUFBTTtFQUNqQixLQUFLLEU3RUlELE9BQU87RTZFSFgsVUFBVSxFQUFDLElBQUk7Q0FDaEI7O0FBRUgsQUFBQSx1QkFBdUIsQ0FBQztFQUN0QixnQkFBZ0IsRTdFUEwsT0FBTztDNkV3RW5COztBQS9EQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFIMUIsQUFBQSx1QkFBdUIsQ0FBQztJQUlwQixVQUFVLEVBQUMsTUFBTTtHQThEcEI7RUE3REcsQUFBQSxNQUFNLENBTFYsdUJBQXVCLENBS1Y7SUFDUCxVQUFVLEVBQUMsQ0FBQztHQUNiOzs7QUFFSCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFUMUIsQUFBQSx1QkFBdUIsQ0FBQztJQVVwQixVQUFVLEVBQUMsTUFBTTtHQXdEcEI7RUE3REcsQUFBQSxNQUFNLENBTFYsdUJBQXVCLENBV1Y7SUFDUCxVQUFVLEVBQUMsQ0FBQztHQUNiOzs7QUFFRixBQUFELDhCQUFRLENBQUM7RUFDUCxPQUFPLEVBQUMsbUJBQW1CO0NBQzVCOztBQUNBLEFBQUQsOEJBQVEsQ0FBQztFQUNQLFNBQVMsRUFBQyxJQUFJO0VBQ2QsV0FBVyxFQUFDLEdBQUc7RUFDZixhQUFhLEVBQUMsSUFBSTtFQUNsQixjQUFjLEVBQUUsU0FBUztDQUsxQjs7QUFUQSxBQUtDLDhCQUxNLENBS04sSUFBSSxDQUFDO0VBQ0gsV0FBVyxFQUFDLEdBQUc7RUFDZixPQUFPLEVBQUMsS0FBSztDQUNkOztBQUVGLEFBQUQsaUNBQVcsQ0FBQztFQUNWLFdBQVcsRUFBQyxHQUFHO0VBQ2YsU0FBUyxFQUFDLE1BQU07RUFDaEIsYUFBYSxFQUFDLElBQUk7Q0FDbkI7O0FBQ0EsQUFBRCw2QkFBTyxDQUFDO0VBQ04sYUFBYSxFQUFDLElBQUk7Q0FDbkI7O0FBQ0EsQUFDQyxnQ0FEUSxDQUNSLE1BQU0sQ0FBQztFQUNMLFdBQVcsRUFBQyxJQUFJO0VBQ2hCLFVBQVUsRUFBQyxJQUFJO0VBQ2YsU0FBUyxFQUFDLE1BQU07Q0FDakI7O0FBTEYsQUFNQyxnQ0FOUSxDQU1SLENBQUMsQ0FBQztFQUNBLFVBQVUsRUFBQyxDQUFDO0VBQ1osYUFBYSxFQUFDLElBQUk7Q0FDbkI7O0FBVEYsQUFVQyxnQ0FWUSxDQVVSLFdBQVcsQ0FBQztFQUNWLFVBQVUsRUFBQyxNQUFNO0NBQ2xCOztBQUVGLEFBQUQsNEJBQU0sQ0FBQztFQUNMLEtBQUssRUFBQyxJQUFJO0NBQ1g7O0FBQ0EsQUFBRCxvQ0FBYyxDQUFDO0VBQ2IsZUFBZSxFQUFFLFNBQVM7RUFDMUIsY0FBYyxFQUFFLFNBQVM7RUFDekIsU0FBUyxFQUFDLE1BQU07Q0FDakI7O0FBQ0EsQUFDQyw2QkFESyxDQUNMLEVBQUUsQUFBQSxPQUFPLENBQUM7RUFDUixnQkFBZ0IsRTdFNURkLE9BQU87QzZFNkRWOztBQUhGLEFBSUMsNkJBSkssQ0FJTCxFQUFFLEdBQUcsRUFBRSxDQUFDO0VBQ04sVUFBVSxFQUFDLElBQUk7Q0FDaEI7O0FDL0VMLEFBQUEsb0JBQW9CLENBQUM7RTVFaUJqQixXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtDOEVMbkI7O0FBL0JFLEFBQUQsMkJBQVEsQ0FBQztFNUV1Q1AsZUFBZSxFQUFFLEtBQUs7RUFDdEIsbUJBQW1CLEVBRlEsR0FBRyxDQUFtQixHQUFHO0U0RXBDcEQsT0FBTyxFQUFDLG9CQUFvQjtFQUM1QixVQUFVLEVBQUMsTUFBTTtDQUlsQjs7QUFIQyxNQUFNLEVBQUMsU0FBUyxFQUFFLE1BQU07RUFKekIsQUFBRCwyQkFBUSxDQUFDO0k1RWVQLFdBQVcsRTRFVkssS0FBSztJNUVXckIsY0FBYyxFNEVYRSxLQUFLO0dBRXRCOzs7QUFDQSxBQUFELDZCQUFVLENBQUM7RTVFQ1QsV0FBVyxFQURPLElBQUk7RUFFdEIsWUFBWSxFQUZNLElBQUk7RTRFRXRCLE9BQU8sRUFBRSxZQUFZO0NBQ3RCOztBQUNBLEFBQUQsMkJBQVEsQ0FBQztFNUVRUCxZQUFZLEU0RVBFLElBQUk7RTVFUWxCLGFBQWEsRTRFUkMsSUFBSTtFQUNsQixTQUFTLEVBQUMsSUFBSTtFQUNkLGNBQWMsRUFBRSxLQUFLO0VBQ3JCLFdBQVcsRUFBQyxHQUFHO0VBQ2YsY0FBYyxFQUFDLFNBQVM7RUFDeEIsS0FBSyxFOUVkQSxJQUFJO0U4RWVULGFBQWEsRUFBQyxJQUFJO0NBV25COztBQVZDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQVJ4QixBQUFELDJCQUFRLENBQUM7SUFTTCxTQUFTLEU3RWZMLFVBQThCO0k2RWdCbEMsY0FBYyxFQUFFLEtBQUs7R0FReEI7OztBQU5DLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQVp4QixBQUFELDJCQUFRLENBQUM7SUFhTCxTQUFTLEVBQUMsSUFBSTtHQUtqQjs7O0FBSEMsTUFBTSxFQUFDLFNBQVMsRUFBRSxNQUFNO0VBZnpCLEFBQUQsMkJBQVEsQ0FBQztJQWdCTCxTQUFTLEVBQUUsSUFBSTtHQUVsQjs7O0F2QmhDSCxBQUFBLFlBQVksQ3dCQUM7RTdFaUJULFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0UrRXBDbEIsY0FBYyxFQUFDLENBQUM7Q0FDakI7O0FBR0QsQUFBQSxnQkFBZ0IsQ0FBQztFN0VLYixXQUFXLEVBRE8sSUFBSTtFQUV0QixZQUFZLEVBRk0sSUFBSTtFNkVBeEIsVUFBVSxFQUFDLElBQUk7Q0E2RGhCOztBQTVEQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFMMUIsQUFBQSxnQkFBZ0IsQ0FBQztJQU1iLFVBQVUsRUFBRSxJQUFJO0dBMkRuQjs7O0FBdkRHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUR6QixBQUFELHFCQUFNLENBQUM7STdFSkwsV0FBVyxFNkVNTyxLQUFJO0k3RUx0QixZQUFZLEU2RUtNLEtBQUk7R0FFdkI7RUFKQSxBN0V5T0QscUI2RXpPTSxHN0V5T0YsQ0FBQyxDQUFDO0lBbE9KLFlBQVksRTZFTE0sSUFBSTtJN0VNdEIsYUFBYSxFNkVOSyxJQUFJO0c3RXVPUzs7O0E2RW5PaEMsQUFBRCxrQ0FBbUIsQ0FBQztFQUNsQixRQUFRLEVBQUUsUUFBUTtDQVNuQjs7QUFSQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFGekIsQUFBRCxrQ0FBbUIsQ0FBQztJQUdoQixhQUFhLEVBQUUsSUFBSTtHQU90Qjs7O0FBVkEsQUFLQyxrQ0FMaUIsQUFLaEIsTUFBTSxDQUFBO0VBQ0wsT0FBTyxFQUFFLEVBQUU7RUFDWCxPQUFPLEVBQUUsS0FBSztFQUNkLGNBQWMsRUF0QlQsSUFBcUI7Q0F1QjNCOztBQUVGLEFBQUQsZ0NBQWlCLENBQUM7RUFDaEIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLENBQUM7RUFDTixJQUFJLEVBQUUsQ0FBQztFQUNQLEtBQUssRUFBRSxDQUFDO0VBQ1IsTUFBTSxFQUFFLENBQUM7RUFDVCxRQUFRLEVBQUUsTUFBTTtDQUNqQjs7QUFDQSxBQUFELHdCQUFTLENBQUM7RTdFaU1WLGFBQWEsRTZFaE1TLEtBQUs7RTdFaU14QixVQUFVLEU2RWpNUyxLQUFLO0U3RXVNekIsV0FBVyxFQUFFLG1CQUFxQjtFNkV0TWxDLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixHQUFHLEVBQUUsQ0FBQztFQUNOLElBQUksRUFBRSxDQUFDO0NBQ1I7O0FBQ0EsQUFBRCx1QkFBUSxDQUFDO0VBQ1AsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsSUFBSTtFQUNqQixXQUFXLEVBQUUsR0FBRztFQUNoQixhQUFhLEVBQUUsSUFBSTtDQUNwQjs7QUFDQSxBQUFELHNCQUFPLENBQUM7RUFDTixXQUFXLEVBQUUsR0FBRztFQUNoQixhQUFhLEVBQUMsSUFBSTtFQUNsQixVQUFVLEVBQUMsSUFBSTtDQUloQjs7QUFQQSxBQUlDLHNCQUpLLENBSUwsQ0FBQyxDQUFDO0U1RXJCSixlQUFlLEVBQUUsU0FBUztFQUMxQixLQUFLLEVIdkJDLE9BQU87QytFNkNWOztBQUVGLEFBQUQscUJBQU0sQ0FBQztFNUV6RFAsT0FBTyxFQUFDLFlBQVk7RUFDcEIsV0FBVyxFQStLd0MsR0FBRztFQTlLdEQsVUFBVSxFQUFFLE1BQU07RUFDbEIsY0FBYyxFQUFFLE1BQU07RUFDdEIsY0FBYyxFQUFFLFNBQVM7RUFDekIsT0FBTyxFQTJLd0IsTUFBTSxDQWpMSSxJQUFJO0VBa0w3QyxNQUFNLEVBQUMsR0FBRyxDQUFDLEtBQUssQ0h2S1YsT0FBTztFR3dLYixLQUFLLEVIeEtDLE9BQU87RUd5S2IsU0FBUyxFQUFDLEtBQUs7RUFDZixTQUFTLEVBQUMsTUFBTTtFQUNoQixjQUFjLEVBQUUsTUFBTTtFNEUxSHBCLFVBQVUsRUFBQyxJQUFJO0NBQ2hCOztBNUV0REQsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0U0RW1EdkIsQUFBRCxxQkFBTSxDQUFDO0k1RWxETCxPQUFPLEVBQUUsS0FBSztJQUNkLEtBQUssRUFBQyxJQUFJO0c0RW9EWDs7O0FBSEEsQTVFL0NELHFCNEUrQ00sQTVFL0NMLFdBQVcsQ0FBQztFQUNYLEtBQUssRUFBQyxJQUFJO0NBQ1g7O0E0RTZDQSxBNUU1Q0QscUI0RTRDTSxBNUU1Q0wsUUFBUSxDQUFDO0VERFIsV0FBVyxFQ0VHLENBQUM7RUREZixjQUFjLEVDQ0EsQ0FBQztFQUNmLE1BQU0sRUFBQyxJQUFJO0VBQ1gsV0FBVyxFQUFDLElBQUk7Q0FDakI7O0E0RTRDQSxBQUFELDRCQUFhLENBQUM7RUFDWixLQUFLLEUvRXBERCxPQUFPO0UrRXFEWCxjQUFjLEVBQUUsS0FBSztFQUNyQixjQUFjLEVBQUUsU0FBUztDQUMxQjs7QUFHSCxBQUFBLGdCQUFnQixDQUFDO0U3RTlEYixXQUFXLEVBRE8sSUFBSTtFQUV0QixZQUFZLEVBRk0sSUFBSTtDNkV3R3pCOztBQXBDRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEekIsQUFBRCxxQkFBTSxDQUFDO0k3RWxFTCxXQUFXLEU2RW9FTyxLQUFJO0k3RW5FdEIsWUFBWSxFNkVtRU0sS0FBSTtHQUV2QjtFQUpBLEE3RTJLRCxxQjZFM0tNLEc3RTJLRixDQUFDLENBQUM7SUFsT0osWUFBWSxFNkV5RE0sSUFBSTtJN0V4RHRCLGFBQWEsRTZFd0RLLElBQUk7RzdFeUtTOzs7QTZFdEtoQyxBQUNDLHNCQURLLEdBQU4sc0JBQU0sQ0FDQztFQUNKLFVBQVUsRUFBQyxJQUFJO0NBQ2hCOztBQUVGLEFBQUQsd0JBQVMsQ0FBQztFQUNSLE9BQU8sRUFBQyxLQUFLO0U3RWxGYixVQUFVLEU2RW1GSSxJQUFJO0U3RWxGbEIsYUFBYSxFNkVrRkMsSUFBSTtDQUNuQjs7QUFDQSxBQUFELHVCQUFRLENBQUM7RTdFckZQLFVBQVUsRTZFc0ZJLElBQUk7RTdFckZsQixhQUFhLEU2RXFGQyxJQUFJO0VBQ2xCLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLElBQUk7RUFDakIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsVUFBVSxFQUFDLE1BQU07Q0FDbEI7O0FBQ0EsQUFBRCxzQkFBTyxDQUFDO0U3RXZGTixXQUFXLEVBRE8sSUFBSTtFQUV0QixZQUFZLEVBRk0sSUFBSTtFQUp0QixVQUFVLEU2RThGSSxJQUFJO0U3RTdGbEIsYUFBYSxFNkU2RkMsSUFBSTtFQUNsQixXQUFXLEVBQUUsR0FBRztFQUNoQixVQUFVLEVBQUMsT0FBTztDQUtuQjs7QUFUQSxBQU1DLHNCQU5LLENBTUwsQ0FBQyxDQUFDO0U1RW5FSixlQUFlLEVBQUUsU0FBUztFQUMxQixLQUFLLEVIdkJDLE9BQU87QytFMkZWOztBQUVGLEFBQUQseUJBQVUsQ0FBQztFQUNULFVBQVUsRUFBQyxNQUFNO0NBQ2xCOztBQUNBLEFBQUQscUJBQU0sQ0FBQztFNUUxR1AsT0FBTyxFQUFDLFlBQVk7RUFDcEIsV0FBVyxFQStLd0MsR0FBRztFQTlLdEQsVUFBVSxFQUFFLE1BQU07RUFDbEIsY0FBYyxFQUFFLE1BQU07RUFDdEIsY0FBYyxFQUFFLFNBQVM7RUFDekIsT0FBTyxFQTJLd0IsTUFBTSxDQWpMSSxJQUFJO0VBa0w3QyxNQUFNLEVBQUMsR0FBRyxDQUFDLEtBQUssQ0h2S1YsT0FBTztFR3dLYixLQUFLLEVIeEtDLE9BQU87RUd5S2IsU0FBUyxFQUFDLEtBQUs7RUFDZixTQUFTLEVBQUMsTUFBTTtFQUNoQixjQUFjLEVBQUUsTUFBTTtDNEV6RXJCOztBNUV0R0QsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0U0RW9HdkIsQUFBRCxxQkFBTSxDQUFDO0k1RW5HTCxPQUFPLEVBQUUsS0FBSztJQUNkLEtBQUssRUFBQyxJQUFJO0c0RW9HWDs7O0FBRkEsQTVFaEdELHFCNEVnR00sQTVFaEdMLFdBQVcsQ0FBQztFQUNYLEtBQUssRUFBQyxJQUFJO0NBQ1g7O0E0RThGQSxBNUU3RkQscUI0RTZGTSxBNUU3RkwsUUFBUSxDQUFDO0VERFIsV0FBVyxFQ0VHLENBQUM7RUREZixjQUFjLEVDQ0EsQ0FBQztFQUNmLE1BQU0sRUFBQyxJQUFJO0VBQ1gsV0FBVyxFQUFDLElBQUk7Q0FDakI7O0E2RXRCSCxBQUFBLGtCQUFrQixDQUFDO0VBQ2pCLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLGNBQWMsRUFBRSxJQUFJO0VBQ3BCLFdBQVcsRUFBRSxDQUFDO0NBQ2Y7O0FBRUQsQUFBQSx1QkFBdUIsQ0FBQztFQUN0QixXQUFXLEVBQUUsS0FBSztFQUNsQixZQUFZLEVBQUUsS0FBSztDQUNwQjs7QUFFRCxBQUFBLHVCQUF1QixHQUFHLENBQUMsQ0FBQztFQUMxQixZQUFZLEVBQUUsSUFBSTtFQUNsQixhQUFhLEVBQUUsSUFBSTtDQUNwQjs7QUFFRCxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07RUFWekIsQUFBQSx1QkFBdUIsQ0FXRztJQUN0QixXQUFXLEVBQUUsS0FBSztJQUNsQixZQUFZLEVBQUUsS0FBSztHQUNwQjtFQVRILEFBQUEsdUJBQXVCLEdBQUcsQ0FBQyxDQVVHO0lBQzFCLFlBQVksRUFBRSxJQUFJO0lBQ2xCLGFBQWEsRUFBRSxJQUFJO0dBQ3BCOzs7QUFHSCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFyQnhCLEFBQUEsdUJBQXVCLENBc0JHO0lBQ3RCLFdBQVcsRUFBRSxLQUFLO0lBQ2xCLFlBQVksRUFBRSxLQUFLO0dBQ3BCO0VBcEJILEFBQUEsdUJBQXVCLEdBQUcsQ0FBQyxDQXFCRztJQUMxQixZQUFZLEVBQUUsSUFBSTtJQUNsQixhQUFhLEVBQUUsSUFBSTtHQUNwQjs7O0FBR0gsQUFBQSxrQkFBa0IsQ0FBQyx1QkFBdUIsR0FBRyxDQUFDLENBQUM7RUFDN0MsWUFBWSxFQUFFLGVBQWU7RUFDN0IsYUFBYSxFQUFFLGVBQWU7Q0FDL0I7O0FBRUQsQUFBQSx1QkFBdUIsQ0FBQztFQUN0QixXQUFXLEVBQUUsSUFBSTtFQUNqQixZQUFZLEVBQUUsSUFBSTtFQUNsQixhQUFhLEVBQUUsSUFBSTtFQUNuQixVQUFVLEVBQUUsTUFBTTtDQUNuQjs7QUFFRCxBQUFBLDZCQUE2QixDQUFDLEdBQUcsQ0FBQztFQUNoQyxVQUFVLEVBQUUsT0FBTztFQUNuQixPQUFPLEVBQUUsYUFBYTtDQUN2Qjs7QUFFRCxBQUFBLCtCQUErQixDQUFDO0VBQzlCLFVBQVUsRUFBRSxtQkFBbUI7RUFDL0IsYUFBYSxFQUFFLElBQUk7Q0FDcEI7O0FBRUQsQUFBQSw4QkFBOEIsQ0FBQztFQUM3QixTQUFTLEVBQUUsTUFBTTtFQUNqQixXQUFXLEVBQUUsR0FBRztFQUNoQixjQUFjLEVBQUUsSUFBSTtFQUNwQixjQUFjLEVBQUUsSUFBSTtFQUNwQixhQUFhLEVBQUUsSUFBSTtFQUNuQixVQUFVLEVBQUUsSUFBSTtFQUNoQixRQUFRLEVBQUUsUUFBUTtDQUNuQjs7QUFFRCxBQUFBLDZCQUE2QixDQUFDO0VBQzVCLGFBQWEsRUFBRSxJQUFJO0NBQ3BCOztBQUVELEFBQUEsNkJBQTZCLENBQUMsV0FBVyxDQUFDO0VBQ3hDLGVBQWUsRUFBRSxJQUFJO0NBQ3RCOztBQUVELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUN0QixBQUFBLHVCQUF1QixDQUFDLGFBQWEsQ0FBQztJQUNwQyxTQUFTLEVBQUUsTUFBTTtJQUNqQixPQUFPLEVBQUUsSUFBSTtHQUNkOzs7QUFHSCxZQUFZO0FBQ1osQUFBQSxJQUFJLEFBQUEsVUFBVSxDQUFDLE1BQU0sQ0FBQztFQUNwQixHQUFHLEVBQUUsSUFBSTtFQUNULElBQUksRUFBRSxJQUFJO0NBQ1g7O0FBQ0QsQUFBQSxJQUFJLEFBQUEsVUFBVSxDQUFDLFlBQVksQ0FBQztFQUMxQixhQUFhLEVBQUUsSUFBSTtDQUNwQjs7QUFFRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFKeEIsQUFBQSxJQUFJLEFBQUEsVUFBVSxDQUFDLFlBQVksQ0FLRztJQUMxQixhQUFhLEVBQUUsQ0FBQztHQUNqQjs7O0FDakdILEFBQUEsb0JBQW9CLENBQUM7RUFDbkIsV0FBVyxFQUFFLElBQUk7RUFDakIsY0FBYyxFQUFFLElBQUk7RUFDcEIsTUFBTSxFQUFFLE1BQU07Q0FDZjs7QUFFRCxBQUFBLDJCQUEyQixDQUFDO0VBQzFCLEtBQUssRUFBRSxPQUFPO0VBQ2QsY0FBYyxFQUFFLFNBQVM7RUFDekIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsR0FBRztFQUNoQixVQUFVLEVBQUUsSUFBSTtDQUNqQjs7QUFFRCxBQUFBLDhCQUE4QixDQUFDO0VBQzdCLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLEdBQUc7Q0FDakI7O0FBRUQsQUFBQSwwQkFBMEIsQ0FBQztFQUN6QixLQUFLLEVBQUUsT0FBTztDQUNmOztBQ3RCRCxBQUFBLGlCQUFpQixDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FDekM7RUFDRSxXQUFXLEVBQUUsSUFBSTtDQUNsQjs7QUFDRCxBQUFBLGlCQUFpQixBQUFBLG9CQUFvQixDQUFDLGlCQUFpQixDQUFDLEdBQUc7QUFDM0QsaUJBQWlCLEFBQUEsb0JBQW9CLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUMxRDtFQUNFLE9BQU8sRUFBQyxlQUFlO0NBQ3hCOztBQ1JELEFBQUEsd0JBQXdCLENBQUMsU0FBUyxDQUNsQztFQUNFLE9BQU8sRUFBRSxRQUFRO0NBQ2xCOztBQ0hELEFBQUEsNEJBQTRCO0FBQzVCLDBCQUEwQjtBQUMxQiwrQkFBK0I7QUFDL0IsbUNBQW1DO0FBQ25DLCtCQUErQjtBQUMvQiwyQkFBMkIsQ0FBQztFQUMxQixXQUFXLEVBQUUsSUFBSTtFQUNqQixjQUFjLEVBQUUsSUFBSTtFQUNwQixVQUFVLEVBQUUsTUFBTTtDQUNuQjs7QUFFRCxBQUFBLGtDQUFrQztBQUNsQyxnQ0FBZ0M7QUFDaEMscUNBQXFDO0FBQ3JDLHlDQUF5QztBQUN6QyxxQ0FBcUM7QUFDckMsaUNBQWlDLENBQUM7RUFDaEMsV0FBVyxFQUFFLElBQUk7RUFDakIsWUFBWSxFQUFFLElBQUk7RUFDbEIsU0FBUyxFQUFFLE1BQU07RUFDakIsV0FBVyxFQUFFLEdBQUc7Q0FDakI7O0FBRUQsQUFBQSxXQUFXLEdBQUcsa0NBQWtDLEVBQUUsV0FBVztBQUM3RCxnQ0FBZ0MsRUFBRSxXQUFXO0FBQzdDLHFDQUFxQyxFQUFFLFdBQVc7QUFDbEQseUNBQXlDLEVBQUUsV0FBVztBQUN0RCxxQ0FBcUMsRUFBRSxXQUFXO0FBQ2xELGlDQUFpQyxDQUFDO0VBQ2hDLFVBQVUsRUFBRSxJQUFJO0NBQ2pCOztBQUVELEFBQUEsa0NBQWtDLENBQUM7RUFDakMsZUFBZSxFQUFFLEtBQUs7RUFDdEIsbUJBQW1CLEVBQUUsT0FBTztFQUM1QixPQUFPLEVBQUUsVUFBVTtFQUNuQixVQUFVLEVBQUUsTUFBTTtDQUNuQjs7QUFFRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFQeEIsQUFBQSxrQ0FBa0MsQ0FRRztJQUNqQyxXQUFXLEVBQUUsSUFBSTtJQUNqQixjQUFjLEVBQUUsSUFBSTtHQUNyQjs7O0FBR0gsQUFBQSwyQ0FBMkMsQ0FBQztFQUMxQyxXQUFXLEVBQUUsSUFBSTtFQUNqQixZQUFZLEVBQUUsSUFBSTtFQUNsQixnQkFBZ0IsRUFBRSxXQUFXO0VBQzdCLEtBQUssRUFBRSxJQUFJO0VBQ1gsT0FBTyxFQUFFLElBQUk7RUFDYixPQUFPLEVBQUUsWUFBWTtFQUNyQixVQUFVLEVBQUUsTUFBTTtFQUNsQixTQUFTLEVBQUUsS0FBSztDQUNqQjs7QUFFRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFYeEIsQUFBQSwyQ0FBMkMsQ0FZRztJQUMxQyxPQUFPLEVBQUUsbUJBQW1CO0dBQzdCOzs7QUFHSCxBQUFBLHdDQUF3QyxDQUFDO0VBQ3ZDLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLGFBQWEsRUFBRSxJQUFJO0NBQ3BCOztBQUVELEFBQUEsd0NBQXdDLENBQUM7RUFDdkMsS0FBSyxFQUFFLE9BQU87RUFDZCxXQUFXLEVBQUUsR0FBRztDQUNqQjs7QUFFRCxBQUFBLDhCQUE4QixDQUFDO0VBQzdCLGdCQUFnQixFQUFFLE9BQU87RUFDekIsV0FBVyxFQUFFLElBQUk7RUFDakIsY0FBYyxFQUFFLElBQUk7RUFDcEIsVUFBVSxFQUFFLE1BQU07Q0FDbkI7O0FBRUQsQUFBQSxvQ0FBb0MsQ0FBQztFQUNuQyxXQUFXLEVBQUUsSUFBSTtFQUNqQixZQUFZLEVBQUUsSUFBSTtFQUNsQixTQUFTLEVBQUUsTUFBTTtFQUNqQixXQUFXLEVBQUUsR0FBRztDQUNqQjs7QUFFRCxBQUFBLHdDQUF3QyxDQUFDO0VBQ3ZDLGdCQUFnQixFQUFFLElBQUk7Q0FDdkI7O0FBRUQsQUFBQSx3Q0FBd0M7QUFDeEMsb0NBQW9DLENBQUM7RUFDbkMsV0FBVyxFQUFFLElBQUk7RUFDakIsWUFBWSxFQUFFLElBQUk7RUFDbEIsT0FBTyxFQUFFLElBQUk7RUFDYixPQUFPLEVBQUUsWUFBWTtFQUNyQixVQUFVLEVBQUUsTUFBTTtFQUNsQixTQUFTLEVBQUUsTUFBTTtDQUNsQjs7QUFFRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFWeEIsQUFBQSx3Q0FBd0M7RUFDeEMsb0NBQW9DLENBV0c7SUFDbkMsT0FBTyxFQUFFLG1CQUFtQjtHQUM3Qjs7O0FBR0gsQUFBQSx3Q0FBd0MsQ0FBQyxDQUFDO0FBQzFDLG9DQUFvQyxDQUFDLENBQUMsQ0FBQztFQUNyQyxVQUFVLEVBQUUsT0FBTztDQUNwQjs7QUFFRCxBQUFBLHdDQUF3QyxDQUFDLENBQUMsQUFBQSxZQUFZO0FBQ3RELG9DQUFvQyxDQUFDLENBQUMsQUFBQSxZQUFZLENBQUM7RUFDakQsVUFBVSxFQUFFLElBQUk7Q0FDakI7O0FDcEhELEFBQUEsbUJBQW1CLENBQUMsYUFBYSxDQUMvQjtFQUNFLE9BQU8sRUFBRSxPQUFPO0NBQ2pCOztBQUNILEFBQUEsbUJBQW1CLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FDakM7RUFDRSxVQUFVLEVBQUMsSUFBSTtFQUNmLGFBQWEsRUFBRSxJQUFJO0VBQ25CLFVBQVUsRUFBRSxLQUFLO0VBQ2pCLE9BQU8sRUFBRSxTQUFTO0NBQ25COztBQ1ZILEFBQUEsb0JBQW9CLENBQUM7RXBGaUJqQixXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtFc0ZwQ2xCLGdCQUFnQixFdEZPTCxPQUFPO0NzRkNuQjs7QUFORyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEekIsQUFBRCwwQkFBTyxDQUFDO0lwRlFOLFdBQVcsRW9GTkssSUFBSTtJcEZPcEIsWUFBWSxFb0ZQSSxJQUFJO0lBQ2xCLE9BQU8sRUFBQyxJQUFJO0dBRWY7OztBQUlELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUQxQixBQUVJLHlCQUZxQixHQUF6Qix5QkFBeUIsQ0FFZjtJQUNKLFVBQVUsRUFBQyxJQUFJO0dBQ2hCOzs7QUFHRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEekIsQUFBRCxpQ0FBUyxDQUFDO0lwRk5SLFdBQVcsRUFETyxJQUFJO0lBRXRCLFlBQVksRUFGTSxJQUFJO0lvRlVwQixhQUFhLEVBQUMsSUFBSTtJQUNsQixPQUFPLEVBQUMsS0FBSztHQUVoQjs7O0FBQ0EsQUFBRCxnQ0FBUSxDQUFDO0VBQ1AsY0FBYyxFQUFFLFNBQVM7RUFDekIsU0FBUyxFQUFDLE1BQU07RUFDaEIsYUFBYSxFQUFFLElBQUk7Q0FDcEI7O0FBQ0EsQUFBRCxnQ0FBUSxDQUFDO0VBQ1AsU0FBUyxFQUFFLE1BQU07RUFDakIsV0FBVyxFQUFFLEdBQUc7Q0FDakI7O0FBQ0EsQUFBRCxnQ0FBUSxDQUFDO0VBQ1AsY0FBYyxFQUFFLFNBQVM7RUFDekIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsS0FBSyxFdEZyQkQsT0FBTztFc0ZzQlgsYUFBYSxFQUFFLE1BQU07Q0FDdEI7O0FBQ0EsQUFBRCwrQkFBTyxDQUFDO0VBQ04sV0FBVyxFQUFFLEdBQUc7RUFDaEIsVUFBVSxFQUFDLENBQUM7Q0FDYjs7QUEvQkgsQUFnQ0UseUJBaEN1QixBQWdDdEIsWUFBWSxDQUFDO0VwRnJCWixZQUFZLEVvRnNCRSxJQUFJO0VwRnJCbEIsYUFBYSxFb0ZxQkMsSUFBSTtFQUNsQixVQUFVLEVBQUMsQ0FBQztDQUNiOztBQUlILEFBQUEsd0JBQXdCLENBQUM7RXBGakNyQixXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtDc0ZtQm5COztBQUpHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUR6QixBQUFELDZCQUFNLENBQUM7SXBGekNMLFdBQVcsRW9GMkNPLEtBQUk7SXBGMUN0QixZQUFZLEVvRjBDTSxLQUFJO0dBRXZCO0VBSkEsQXBGb01ELDZCb0ZwTU0sR3BGb01GLENBQUMsQ0FBQztJQWxPSixZQUFZLEVvRmdDTSxJQUFJO0lwRi9CdEIsYUFBYSxFb0YrQkssSUFBSTtHcEZrTVM7OztBb0Y3TG5DLEFBQUEsNkJBQTZCLENBQUM7RXBGaEQxQixXQUFXLEVBRE8sSUFBSTtFQUV0QixZQUFZLEVBRk0sSUFBSTtFb0ZtRHhCLGFBQWEsRUFBRSxJQUFJO0NBb0NwQjs7QUFuQ0MsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBSDFCLEFBQUEsNkJBQTZCLENBQUM7SUFJMUIsYUFBYSxFQUFFLElBQUk7R0FrQ3RCOzs7QUEvQkUsQUFBRCxxQ0FBUyxDQUFDO0VwRnZEUixXQUFXLEVBRE8sSUFBSTtFQUV0QixZQUFZLEVBRk0sSUFBSTtFb0YwRHRCLGFBQWEsRUFBQyxJQUFJO0VBQ2xCLE9BQU8sRUFBQyxLQUFLO0NBQ2Q7O0FBQ0EsQUFBRCxvQ0FBUSxDQUFDO0VBQ1AsY0FBYyxFQUFFLFNBQVM7RUFDekIsV0FBVyxFQUFDLEdBQUc7RUFDZixTQUFTLEVBQUMsTUFBTTtDQUNqQjs7QUFDQSxBQUFELHFDQUFTLENBQUM7RUFDUixTQUFTLEVBQUMsTUFBTTtFQUNoQixhQUFhLEVBQUMsTUFBTTtDQUNyQjs7QUFDQSxBQUFELHVDQUFXLENBQUM7RUFDVixLQUFLLEV0RmxFRCxPQUFPO0VzRm1FWCxjQUFjLEVBQUUsU0FBUztFQUN6QixXQUFXLEVBQUMsR0FBRztFQUNmLFNBQVMsRUFBQyxNQUFNO0NBQ2pCOztBQUNBLEFBQUQsbUNBQU8sQ0FBQztFQUNOLGFBQWEsRUFBQyxNQUFNO0NBQ3JCOztBQUNBLEFBQUQsbUNBQU8sQ0FBQztFQUNOLE9BQU8sRUFBQyxLQUFLO0VBQ2IsZUFBZSxFQUFFLFNBQVM7RUFDMUIsYUFBYSxFQUFDLE1BQU07Q0FDckI7O0FBQ0EsQUFBRCwyQ0FBZSxDQUFDO0VBQ2QsV0FBVyxFQUFDLEdBQUc7Q0FDaEI7O0FBR0gsQUFBQSxzQkFBc0IsQ0FBQztFcEZsRm5CLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0VzRitEbEIsZ0JBQWdCLEV0RjVGTCxPQUFPO0NzRmtHbkI7O0FBTEUsQUFBRCw4QkFBUyxDQUFDO0VBQ1IsS0FBSyxFQUFDLElBQUk7RUFDVixNQUFNLEVBQUMsSUFBSTtFQUNYLGFBQWEsRUFBQyxJQUFJO0NBQ25COztBQUdILEFBQUEsd0JBQXdCLENBQUM7RXBGNUZyQixXQUFXLEVGcUJDLElBQUk7RUVwQmhCLGNBQWMsRUZvQkYsSUFBSTtDc0Z5RW5COztBQUVELEFBQUEsNkJBQTZCLENBQUM7RUFDNUIsYUFBYSxFQUFDLElBQUk7Q0FzQm5COztBQXJCRSxBQUFELG9DQUFRLENBQUM7RUFDUCxXQUFXLEVBQUMsR0FBRztFQUNmLFVBQVUsRUFBQyxNQUFNO0VBQ2pCLFFBQVEsRUFBQyxRQUFRO0VBQ2pCLGNBQWMsRUFBQyxJQUFJO0VBQ25CLGFBQWEsRUFBQyxJQUFJO0NBWW5COztBQWpCQSxBQU1DLG9DQU5NLEFBTUwsT0FBTyxDQUFDO0VBQ1AsT0FBTyxFQUFDLEVBQUU7RUFDVixPQUFPLEVBQUMsS0FBSztFQUNiLEtBQUssRUFBQyxJQUFJO0VBQ1YsUUFBUSxFQUFDLFFBQVE7RUFDakIsTUFBTSxFQUFDLEdBQUc7RUFDVixnQkFBZ0IsRXRGeEhiLElBQUk7RXNGeUhQLEdBQUcsRUFBQyxJQUFJO0VBQ1IsSUFBSSxFQUFDLEdBQUc7RUFDUixTQUFTLEVBQUUsZ0JBQWdCO0NBQzVCOztBQUVGLEFBQUQsbUNBQU8sQ0FBQztFQUNOLFVBQVUsRUFBRSxPQUFPO0NBQ3BCOztBQ3ZJSCxBQUFBLG1CQUFtQixDQUFDO0VyRmlCaEIsV0FBVyxFRnFCQyxJQUFJO0VFcEJoQixjQUFjLEVGb0JGLElBQUk7Q3VGL0JuQjs7QUFQRCxBQUdJLG1CQUhlLENBRWpCLFdBQVcsQ0FDVCxTQUFTLENBQUM7RUFDUixLQUFLLEV2RldILE9BQU87Q3VGVlY7O0FBSUwsQUFBQSx3QkFBd0IsQ0FBQztFckZFckIsV0FBVyxFQURPLElBQUk7RUFFdEIsWUFBWSxFQUZNLElBQUk7RUFKdEIsVUFBVSxFcUZLRSxJQUFJO0VyRkpoQixhQUFhLEVxRklELElBQUk7Q0FnRG5COztBQTlDRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEekIsQUFBRCw2QkFBTSxDQUFDO0lBRUgsT0FBTyxFQUFDLElBQUk7R0FRZjs7O0FBTkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBSnpCLEFBQUQsNkJBQU0sQ0FBQztJckZETCxXQUFXLEVxRk1PLEtBQUk7SXJGTHRCLFlBQVksRXFGS00sS0FBSTtHQUt2QjtFQVZBLEFyRjRPRCw2QnFGNU9NLEdyRjRPRixDQUFDLENBQUM7SUFsT0osWUFBWSxFcUZMTSxJQUFJO0lyRk10QixhQUFhLEVxRk5LLElBQUk7R3JGdU9TOzs7QXFGck8vQixNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07RUFQMUIsQUFBRCw2QkFBTSxDQUFDO0lyRkRMLFdBQVcsRXFGU08sS0FBSTtJckZSdEIsWUFBWSxFcUZRTSxLQUFJO0dBRXZCO0VBVkEsQXJGNE9ELDZCcUY1T00sR3JGNE9GLENBQUMsQ0FBQztJQWxPSixZQUFZLEVxRkZNLElBQUk7SXJGR3RCLGFBQWEsRXFGSEssSUFBSTtHckZvT1M7OztBcUZoTy9CLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUR6QixBQUFELGdDQUFTLENBQUM7SUFFTixhQUFhLEVBQUMsSUFBSTtHQUVyQjs7O0FBR0MsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRnpCLEFBQUQsd0NBQWlCLEVBQ2hCLGlDQUFTLENBQUM7SUFFUCxPQUFPLEVBQUUsSUFBSTtJQUNiLGNBQWMsRUFBRSxNQUFNO0lBQ3RCLGVBQWUsRUFBRSxNQUFNO0lBQ3ZCLE1BQU0sRUFBQyxJQUFJO0dBRWQ7OztBQUNBLEFBQUQsK0JBQVEsQ0FBQztFQUNQLGNBQWMsRUFBRSxTQUFTO0VBQ3pCLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLFNBQVMsRUFBRSxNQUFNO0VBQ2pCLFdBQVcsRUFBRSxHQUFHO0NBT2pCOztBQU5DLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUx6QixBQUFELCtCQUFRLENBQUM7SUFNTCxhQUFhLEVBQUMsSUFBSTtHQUtyQjs7O0FBWEEsQUFRQywrQkFSTSxDQVFOLElBQUksQ0FBQztFQUNILEtBQUssRXZGL0JILE9BQU87Q3VGZ0NWOztBQUVGLEFBQUQsOEJBQU8sQ0FBQztFQUNOLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLFVBQVUsRUFBQyxJQUFJO0VBQ2YsYUFBYSxFQUFDLElBQUk7Q0FDbkI7O0FBQ0EsQUFBRCw4QkFBTyxDQUFDO0VBQ04sY0FBYyxFQUFDLFNBQVM7RUFDeEIsZUFBZSxFQUFDLFNBQVM7RUFDekIsS0FBSyxFdkYxQ0QsT0FBTztDdUYyQ1o7O0FBSUgsQUFBQSx5QkFBeUIsQ0FBQztFckZuRHRCLFdBQVcsRUFETyxJQUFJO0VBRXRCLFlBQVksRUFGTSxJQUFJO0VxRnNEeEIsVUFBVSxFQUFDLElBQUk7Q0E0Q2hCOztBQTFDRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEekIsQUFBRCw4QkFBTSxDQUFDO0lBRUgsT0FBTyxFQUFDLElBQUk7R0FNZjs7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBTHpCLEFBQUQsOEJBQU0sQ0FBQztJckZ0REwsV0FBVyxFcUY0RE8sTUFBSztJckYzRHZCLFlBQVksRXFGMkRNLE1BQUs7R0FFeEI7RUFSQSxBckZ1TEQsOEJxRnZMTSxHckZ1TEYsQ0FBQyxDQUFDO0lBbE9KLFlBQVksRXFGaURNLEtBQUs7SXJGaER2QixhQUFhLEVxRmdESyxLQUFLO0dyRmlMUTs7O0FxRjdLL0IsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRHpCLEFBQUQsaUNBQVMsQ0FBQztJQUVOLGFBQWEsRUFBQyxJQUFJO0dBRXJCOzs7QUFFQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEekIsQUFBRCxrQ0FBVSxDQUFDO0lBRVAsT0FBTyxFQUFFLElBQUk7SUFDYixjQUFjLEVBQUUsTUFBTTtJQUN0QixlQUFlLEVBQUUsTUFBTTtJQUN2QixNQUFNLEVBQUMsSUFBSTtHQUVkOzs7QUFDQSxBQUFELGdDQUFRLENBQUM7RUFDUCxjQUFjLEVBQUUsU0FBUztFQUN6QixXQUFXLEVBQUUsR0FBRztFQUNoQixTQUFTLEVBQUUsTUFBTTtFQUNqQixXQUFXLEVBQUUsR0FBRztFQUNoQixhQUFhLEVBQUUsSUFBSTtFQUNuQixjQUFjLEVBQUUsTUFBTTtDQUl2Qjs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFQekIsQUFBRCxnQ0FBUSxDQUFDO0lBUUwsYUFBYSxFQUFDLElBQUk7R0FFckI7OztBQUNBLEFBQUQsK0JBQU8sQ0FBQztFQUNOLFdBQVcsRUFBRSxHQUFHO0NBQ2pCOztBQUNBLEFBQUQsK0JBQU8sQ0FBQztFQUNOLE9BQU8sRUFBQyxZQUFZO0VBQ3BCLGNBQWMsRUFBQyxTQUFTO0VBQ3hCLGVBQWUsRUFBQyxTQUFTO0VBQ3pCLEtBQUssRXZGMUZELE9BQU87RXVGMkZYLFVBQVUsRUFBQyxJQUFJO0NBQ2hCOztBQUdILEFBQUEsYUFBYSxDQUFDO0VyRnJFVixlQUFlLEVBQUUsS0FBSztFQUN0QixtQkFBbUIsRUFGUSxHQUFHLENBQW1CLEdBQUc7RXFGd0V0RCxPQUFPLEVBQUMsVUFBVTtFQUNsQixVQUFVLEVBQUMsTUFBTTtDQXdDbEI7O0FBdkNFLEFBQUQsc0JBQVUsQ0FBQztFckZ2R1QsV0FBVyxFQURPLElBQUk7RUFFdEIsWUFBWSxFQUZNLElBQUk7RXFGMEd0QixnQkFBZ0IsRXZGOUdYLElBQUk7RXVGK0dULE9BQU8sRUFBQyxJQUFJO0VBQ1osT0FBTyxFQUFFLFlBQVk7RUFDckIsVUFBVSxFQUFDLE1BQU07RUFDakIsU0FBUyxFQUFDLEtBQUs7Q0FJaEI7O0FBSEMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBUHhCLEFBQUQsc0JBQVUsQ0FBQztJQVFQLE9BQU8sRUFBQyxJQUFJO0dBRWY7OztBQUNBLEFBQ0MsbUJBREssQ0FDTCxFQUFFLENBQUM7RUFDRCxRQUFRLEVBQUUsUUFBUTtFckY5R3BCLFdBQVcsRXFGK0dLLE1BQU07RXJGOUd0QixjQUFjLEVxRjhHRSxNQUFNO0NBWXJCOztBQWZGLEFBSUcsbUJBSkcsQ0FDTCxFQUFFLEFBR0MsT0FBTyxDQUFDO0VBQ1AsT0FBTyxFQUFFLEVBQUU7RUFDWCxPQUFPLEVBQUUsWUFBWTtFQUNyQixLQUFLLEVBQUUsS0FBSztFQUNaLE1BQU0sRUFBRSxLQUFLO0VBQ2IsYUFBYSxFQUFFLEdBQUc7RUFDbEIsZ0JBQWdCLEV2RnhIaEIsT0FBTztFdUZ5SFAsR0FBRyxFQUFFLE9BQU87RUFDWixZQUFZLEVBQUUsTUFBTTtFQUNwQixRQUFRLEVBQUUsUUFBUTtDQUNuQjs7QUFHSixBQUFELG1CQUFPLENBQUM7RUFDTixXQUFXLEVBQUMsR0FBRztFQUNmLGFBQWEsRUFBQyxJQUFJO0NBQ25COztBQUNBLEFBQUQsbUJBQU8sQ0FBQztFQUNOLFVBQVUsRUFBQyxJQUFJO0VBQ2YsT0FBTyxFQUFDLFlBQVk7RUFDcEIsY0FBYyxFQUFDLFNBQVM7RUFDeEIsZUFBZSxFQUFDLFNBQVM7RUFDekIsS0FBSyxFdkZ4SUQsT0FBTztDdUZ5SVo7O0FBR0gsQUFBQSxvQkFBb0IsQ0FBQztFckYxSWpCLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0V1RnVIbEIsVUFBVSxFQUFDLE1BQU07RUFDakIsYUFBYSxFQUFDLElBQUk7Q0FXbkI7O0FBZEQsQUFLSSxvQkFMZ0IsQ0FJbEIsV0FBVyxDQUNULFNBQVMsQ0FBQztFQUNSLEtBQUssRXZGbEpILE9BQU87Q3VGbUpWOztBQUVGLEFBQUQsMkJBQVEsQ0FBQztFQUNQLGFBQWEsRUFBQyxJQUFJO0VBQ2xCLFdBQVcsRXZGdklFLFVBQVUsRUFBRSxLQUFLO0V1RndJOUIsU0FBUyxFQUFDLEtBQUs7Q0FDaEI7O0FBR0gsQUFBQSxtQkFBbUIsQ0FBQztFckYxSmhCLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0V1RnVJbEIsZ0JBQWdCLEV2RnBLTCxPQUFPO0N1RjBLbkI7O0FBUkQsQUFJSSxtQkFKZSxDQUdqQixXQUFXLENBQ1QsU0FBUyxDQUFDO0VBQ1IsS0FBSyxFdkZqS0gsT0FBTztDdUZrS1Y7O0FBSUwsQUFBQSx1QkFBdUIsQ0FBQztFckYvS3BCLFVBQVUsRUY2QkMsSUFBSTtFRTVCZixhQUFhLEVGNEJGLElBQUk7RUVNZixlQUFlLEVBQUUsS0FBSztFQUN0QixtQkFBbUIsRUFGUSxHQUFHLENBQW1CLEdBQUc7RXFGZ0p0RCxPQUFPLEVBQUMsVUFBVTtFQUNsQixVQUFVLEVBQUMsTUFBTTtDQWlDbEI7O0FBaENFLEFBQUQsZ0NBQVUsQ0FBQztFckYvS1QsV0FBVyxFQURPLElBQUk7RUFFdEIsWUFBWSxFQUZNLElBQUk7RXFGa0x0QixnQkFBZ0IsRXZGdExYLElBQUk7RXVGdUxULE9BQU8sRUFBQyxJQUFJO0VBQ1osT0FBTyxFQUFFLFlBQVk7RUFDckIsVUFBVSxFQUFDLE1BQU07RUFDakIsU0FBUyxFQUFDLEtBQUs7Q0FJaEI7O0FBSEMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBUHhCLEFBQUQsZ0NBQVUsQ0FBQztJQVFQLE9BQU8sRUFBQyxtQkFBbUI7R0FFOUI7OztBQUNBLEFBQUQsOEJBQVEsQ0FBQztFQUNQLGNBQWMsRUFBRSxTQUFTO0VBQ3pCLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLFNBQVMsRUFBRSxNQUFNO0VBQ2pCLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLGFBQWEsRUFBRSxJQUFJO0VBQ25CLGNBQWMsRUFBRSxNQUFNO0NBSXZCOztBQUhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQVB6QixBQUFELDhCQUFRLENBQUM7SUFRTCxhQUFhLEVBQUMsSUFBSTtHQUVyQjs7O0FBQ0EsQUFBRCw2QkFBTyxDQUFDO0VBQ04sV0FBVyxFQUFDLEdBQUc7RUFDZixhQUFhLEVBQUMsSUFBSTtDQUNuQjs7QUFDQSxBQUFELDZCQUFPLENBQUM7RUFDTixPQUFPLEVBQUMsWUFBWTtFQUNwQixjQUFjLEVBQUMsU0FBUztFQUN4QixlQUFlLEVBQUMsU0FBUztFQUN6QixLQUFLLEV2RnpNRCxPQUFPO0N1RjBNWjs7QUFHSCxBQUFBLHdCQUF3QixDQUFDO0VyRmpOckIsV0FBVyxFQURPLElBQUk7RUFFdEIsWUFBWSxFQUZNLElBQUk7RXFGb054QixTQUFTLEVBQUUsTUFBTTtFQUNqQixVQUFVLEVBQUMsTUFBTTtDQXVEbEI7O0FBMURELEFBSUUsd0JBSnNCLEdBQXhCLHdCQUF3QixDQUloQjtFQUNKLFVBQVUsRUFBQyxJQUFJO0NBQ2hCOztBQUVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUR6QixBQUFELDZCQUFNLENBQUM7SUFFSCxPQUFPLEVBQUMsSUFBSTtHQUVmOzs7QUFFQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEekIsQUFBRCxnQ0FBUyxDQUFDO0lBRU4sYUFBYSxFQUFDLElBQUk7R0FFckI7OztBQUVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUR6QixBQUFELHdDQUFpQixDQUFDO0lBRWQsT0FBTyxFQUFFLElBQUk7SUFDYixjQUFjLEVBQUUsTUFBTTtJQUN0QixlQUFlLEVBQUUsTUFBTTtJQUN2QixNQUFNLEVBQUMsSUFBSTtHQUVkOzs7QUFFQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEekIsQUFBRCxpQ0FBVSxDQUFDO0lBRVAsT0FBTyxFQUFFLElBQUk7SUFDYixjQUFjLEVBQUUsTUFBTTtJQUN0QixlQUFlLEVBQUUsTUFBTTtJQUN2QixNQUFNLEVBQUMsSUFBSTtHQU1kOzs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFSekIsQUFBRCxpQ0FBVSxDQUFDO0lBU1AsT0FBTyxFQUFDLElBQUk7R0FFZjs7O0FBQ0EsQUFBRCwrQkFBUSxDQUFDO0VBQ1AsY0FBYyxFQUFFLFNBQVM7RUFDekIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsR0FBRztFQUNoQixhQUFhLEVBQUUsSUFBSTtFQUNuQixjQUFjLEVBQUUsTUFBTTtDQUl2Qjs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFQekIsQUFBRCwrQkFBUSxDQUFDO0lBUUwsYUFBYSxFQUFDLElBQUk7R0FFckI7OztBQUNBLEFBQUQsOEJBQU8sQ0FBQztFQUNOLFdBQVcsRUFBRSxHQUFHO0NBQ2pCOztBQUNBLEFBQUQsOEJBQU8sQ0FBQztFQUNOLE9BQU8sRUFBQyxZQUFZO0VBQ3BCLGNBQWMsRUFBQyxTQUFTO0VBQ3hCLGVBQWUsRUFBQyxTQUFTO0VBQ3pCLEtBQUssRXZGcFFELE9BQU87RXVGcVFYLFVBQVUsRUFBQyxJQUFJO0NBQ2hCOztBQ2xSSCxBQUFBLGlCQUFpQixDQUFDO0V0RlFkLFdBQVcsRUFETyxJQUFJO0VBRXRCLFlBQVksRUFGTSxJQUFJO0NzRjREekI7O0FBbkVELEFBR0UsaUJBSGUsR0FBakIsaUJBQWlCLENBR1Q7RUFDSixVQUFVLEVBQUMsSUFBSTtDQUloQjs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFMNUIsQUFHRSxpQkFIZSxHQUFqQixpQkFBaUIsQ0FHVDtJQUdGLFVBQVUsRUFBRSxJQUFJO0dBRW5COzs7QUFFQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEekIsQUFBRCxzQkFBTSxDQUFDO0l0RkRMLFdBQVcsRXNGR08sS0FBSTtJdEZGdEIsWUFBWSxFc0ZFTSxLQUFJO0dBRXZCO0VBSkEsQXRGNE9ELHNCc0Y1T00sR3RGNE9GLENBQUMsQ0FBQztJQWxPSixZQUFZLEVzRlJNLElBQUk7SXRGU3RCLGFBQWEsRXNGVEssSUFBSTtHdEYwT1M7OztBc0Z2T2hDLEFBQUQsbUNBQW1CLENBQUM7RUFDbEIsUUFBUSxFQUFFLFFBQVE7Q0FTbkI7O0FBUkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRnpCLEFBQUQsbUNBQW1CLENBQUM7SUFHaEIsYUFBYSxFQUFFLElBQUk7R0FPdEI7OztBQVZBLEFBS0MsbUNBTGlCLEFBS2hCLE1BQU0sQ0FBQTtFQUNMLE9BQU8sRUFBRSxFQUFFO0VBQ1gsT0FBTyxFQUFFLEtBQUs7RUFDZCxjQUFjLEVBckJULFNBQXFCO0NBc0IzQjs7QUFFRixBQUFELGlDQUFpQixDQUFDO0VBQ2hCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxDQUFDO0VBQ04sSUFBSSxFQUFFLENBQUM7RUFDUCxLQUFLLEVBQUUsQ0FBQztFQUNSLE1BQU0sRUFBRSxDQUFDO0VBQ1QsUUFBUSxFQUFFLE1BQU07Q0FDakI7O0FBQ0EsQUFBRCx5QkFBUyxDQUFDO0V0RnFNVixhQUFhLEVzRnBNUyxLQUFLO0V0RnFNeEIsVUFBVSxFc0ZyTVMsS0FBSztFdEYyTXpCLFdBQVcsRUFBRSxtQkFBcUI7RXNGMU1sQyxRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJO0VBQ1osR0FBRyxFQUFFLENBQUM7RUFDTixJQUFJLEVBQUUsQ0FBQztDQUNSOztBQUNBLEFBQUQsOEJBQWMsQ0FBQztFQUNiLFdBQVcsRXhGZkUsVUFBVSxFQUFFLEtBQUs7RXdGZ0I5QixXQUFXLEVBQUUsR0FBRztFQUNoQixVQUFVLEVBQUMsTUFBTTtFQUNqQixTQUFTLEVBQUUsSUFBSTtFQUNmLFdBQVcsRUFBQyxDQUFDO0NBQ2Q7O0FBQ0EsQUFBRCx3QkFBUSxDQUFDO0VBQ1AsT0FBTyxFQUFDLEtBQUs7RUFDYixXQUFXLEVBQUUsR0FBRztFQUNoQixTQUFTLEVBQUUsSUFBSTtFQUNmLGNBQWMsRUFBRSxTQUFTO0VBQ3pCLGFBQWEsRUFBRSxJQUFJO0VBQ25CLFdBQVcsRUFBQyxDQUFDO0NBQ2Q7O0FBQ0EsQUFBRCx1QkFBTyxDQUFDO0VBQ04sV0FBVyxFQUFFLEdBQUc7RUFDaEIsVUFBVSxFQUFDLENBQUM7Q0FJYjs7QUFOQSxBQUdDLHVCQUhLLENBR0wsTUFBTSxDQUFDO0VBQ0wsS0FBSyxFeEZoREgsT0FBTztDd0ZpRFY7O0FBRUYsQUFBRCw2QkFBYSxDQUFDO0VyRjdEZCxPQUFPLEVBQUMsWUFBWTtFQUNwQixXQUFXLEVBK0t3QyxHQUFHO0VBOUt0RCxVQUFVLEVBQUUsTUFBTTtFQUNsQixjQUFjLEVBQUUsTUFBTTtFQUN0QixjQUFjLEVBQUUsU0FBUztFQUN6QixPQUFPLEVBMkt3QixNQUFNLENBakxJLElBQUk7RUFrTDdDLE1BQU0sRUFBQyxHQUFHLENBQUMsS0FBSyxDSHZLVixPQUFPO0VHd0tiLEtBQUssRUh4S0MsT0FBTztFR3lLYixTQUFTLEVBQUMsS0FBSztFQUNmLFNBQVMsRUFBQyxNQUFNO0VBQ2hCLGNBQWMsRUFBRSxNQUFNO0VxRnRIcEIsVUFBVSxFQUFDLElBQUk7Q0FDaEI7O0FyRjFERCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RXFGdUR2QixBQUFELDZCQUFhLENBQUM7SXJGdERaLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFDLElBQUk7R3FGd0RYOzs7QUFIQSxBckZuREQsNkJxRm1EYSxBckZuRFosV0FBVyxDQUFDO0VBQ1gsS0FBSyxFQUFDLElBQUk7Q0FDWDs7QXFGaURBLEFyRmhERCw2QnFGZ0RhLEFyRmhEWixRQUFRLENBQUM7RUREUixXQUFXLEVDRUcsQ0FBQztFRERmLGNBQWMsRUNDQSxDQUFDO0VBQ2YsTUFBTSxFQUFDLElBQUk7RUFDWCxXQUFXLEVBQUMsSUFBSTtDQUNqQjs7QXNGdEJILEFBQUEsa0JBQWtCLENBQUM7RXZGTWYsVUFBVSxFdUZMRSxJQUFJO0V2Rk1oQixhQUFhLEV1Rk5ELElBQUk7RUFJbEIsUUFBUSxFQUFFLFFBQVE7Q0E2Qm5COztBQWhDQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFGMUIsQUFBQSxrQkFBa0IsQ0FBQztJdkZpQmYsV0FBVyxFdUZkRyxJQUFJO0l2RmVsQixjQUFjLEV1RmZBLElBQUk7R0ErQnJCOzs7QUE1QkUsQUFBRCxrQ0FBaUIsQ0FBQztFQUloQixHQUFHLEVBQUUsQ0FBQztFQUNOLElBQUksRUFBRSxDQUFDO0VBQ1AsS0FBSyxFQUFFLENBQUM7RUFDUixNQUFNLEVBQUUsQ0FBQztFQUNULFFBQVEsRUFBRSxNQUFNO0NBQ2pCOztBQVJDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUR6QixBQUFELGtDQUFpQixDQUFDO0lBRWQsUUFBUSxFQUFFLFFBQVE7R0FPckI7OztBQUNBLEFBQUQsMEJBQVMsQ0FBQztFdkZ5TlYsYUFBYSxFdUZ4TlMsS0FBSztFdkZ5TnhCLFVBQVUsRXVGek5TLEtBQUs7RXZGK056QixXQUFXLEVBQUUsbUJBQXFCO0V1RjNObEMsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLEdBQUcsRUFBRSxDQUFDO0VBQ04sSUFBSSxFQUFFLENBQUM7RUFDUCxhQUFhLEVBQUMsSUFBSTtDQUNuQjs7QUFSQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFGekIsQUFBRCwwQkFBUyxDQUFDO0lBR04sUUFBUSxFQUFFLFFBQVE7R0FPckI7OztBQUNBLEFBQUQsMkJBQVUsQ0FBQztFQUNULGdCQUFnQixFekZ0QlgsSUFBSTtFeUZ1QlQsT0FBTyxFQUFDLElBQUk7Q0FJYjs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFIekIsQUFBRCwyQkFBVSxDQUFDO0lBSVAsT0FBTyxFQUFDLElBQUk7R0FFZjs7O0FBR0gsQUFBQSxtQkFBbUIsQ0FBQztFdkY5QmhCLFVBQVUsRUY2QkMsSUFBSTtFRTVCZixhQUFhLEVGNEJGLElBQUk7RUVNZixlQUFlLEVBQUUsS0FBSztFQUN0QixtQkFBbUIsRUFGUSxHQUFHLENBQW1CLEdBQUc7RXVGRHRELE9BQU8sRUFBQyxvQkFBb0I7RUFDNUIsVUFBVSxFQUFDLE1BQU07Q0F1QmxCOztBQXRCRSxBQUFELDRCQUFVLENBQUM7RXZGOUJULFdBQVcsRUFETyxJQUFJO0VBRXRCLFlBQVksRUFGTSxJQUFJO0V1RmlDdEIsZ0JBQWdCLEV6RnJDWCxJQUFJO0V5RnNDVCxPQUFPLEVBQUMsU0FBUztFQUNqQixVQUFVLEVBQUMsTUFBTTtFQUNqQixTQUFTLEVBQUMsS0FBSztDQUloQjs7QUFIQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFOeEIsQUFBRCw0QkFBVSxDQUFDO0lBT1AsT0FBTyxFQUFDLFNBQVM7R0FFcEI7OztBQUNBLEFBQUQsMEJBQVEsQ0FBQztFQUNQLGNBQWMsRUFBRSxTQUFTO0VBQ3pCLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLFNBQVMsRUFBRSxNQUFNO0VBQ2pCLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLGFBQWEsRUFBRSxJQUFJO0VBQ25CLGNBQWMsRUFBRSxNQUFNO0VBQ3RCLEtBQUssRXpGcERBLElBQUk7Q3lGd0RWOztBQUhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQVJ6QixBQUFELDBCQUFRLENBQUM7SUFTTCxhQUFhLEVBQUMsSUFBSTtHQUVyQjs7O0FBR0EsQUFBRCxxQ0FBYyxDQUFDO0VBQ2IsV0FBVyxFekZwQ0UsVUFBVSxFQUFFLEtBQUs7RXlGcUM5QixXQUFXLEVBQUUsR0FBRztFQUNoQixVQUFVLEVBQUMsTUFBTTtFQUNqQixTQUFTLEVBQUUsSUFBSTtFQUNmLFdBQVcsRUFBQyxDQUFDO0NBQ2Q7O0FBQ0EsQUFBRCwrQkFBUSxDQUFDO0VBQ1AsT0FBTyxFQUFDLEtBQUs7RUFDYixXQUFXLEVBQUUsR0FBRztFQUNoQixTQUFTLEVBQUUsSUFBSTtFQUNmLGNBQWMsRUFBRSxTQUFTO0VBQ3pCLGFBQWEsRUFBRSxJQUFJO0VBQ25CLFdBQVcsRUFBQyxDQUFDO0NBQ2Q7O0FDL0VILEFBQUEsaUJBQWlCLENBQUM7RXhGaUJkLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0MwRmpDbkI7O0FBSEMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBRnpCLEFBQUEsaUJBQWlCLENBQUM7SUFHZCxjQUFjLEVBQUMsQ0FBQztHQUVuQjs7O0FBS0MsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBSnpCLEFBQUEsc0JBQXNCLENBQUM7SUFLbkIsYUFBYSxFQUFDLElBQUk7R0FtRHJCOzs7QUFqREUsQUFBRCx3Q0FBbUIsQ0FBQztFQUNsQixRQUFRLEVBQUUsUUFBUTtFQUNsQixhQUFhLEVBQUMsSUFBSTtDQU1uQjs7QUFSQSxBQUdDLHdDQUhpQixBQUdoQixNQUFNLENBQUE7RUFDTCxPQUFPLEVBQUUsRUFBRTtFQUNYLE9BQU8sRUFBRSxLQUFLO0VBQ2QsY0FBYyxFQVpULFNBQXFCO0NBYTNCOztBQUVGLEFBQUQsc0NBQWlCLENBQUM7RUFDaEIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLENBQUM7RUFDTixJQUFJLEVBQUUsQ0FBQztFQUNQLEtBQUssRUFBRSxDQUFDO0VBQ1IsTUFBTSxFQUFFLENBQUM7RUFDVCxRQUFRLEVBQUUsTUFBTTtDQUNqQjs7QUFDQSxBQUFELDhCQUFTLENBQUM7RXhGMk1WLGFBQWEsRXdGMU1TLEtBQUs7RXhGMk14QixVQUFVLEV3RjNNUyxLQUFLO0V4RmlOekIsV0FBVyxFQUFFLG1CQUFxQjtFd0ZoTmxDLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixHQUFHLEVBQUUsQ0FBQztFQUNOLElBQUksRUFBRSxDQUFDO0VBQ1AsYUFBYSxFQUFDLElBQUk7Q0FJbkI7O0FBSEMsQUFBQSxRQUFRLENBUlQsOEJBQVEsQ0FRSTtFQUNULFNBQVMsRUFBRSxJQUFJO0NBQ2hCOztBQUVGLEFBQUQsNkJBQVEsQ0FBQztFQUNQLE9BQU8sRUFBQyxLQUFLO0VBQ2IsU0FBUyxFQUFDLElBQUk7RUFDZCxhQUFhLEVBQUMsSUFBSTtFQUNsQixXQUFXLEVBQUUsR0FBRztFQUNoQixXQUFXLEVBQUMsR0FBRztDQUtoQjs7QUFWQSxBQU1DLDZCQU5NLENBTU4sSUFBSSxDQUFDO0VBQ0gsT0FBTyxFQUFDLEtBQUs7RUFDYixXQUFXLEVBQUUsR0FBRztDQUNqQjs7QUFFRixBQUFELDRCQUFPLENBQUM7RUFDTixXQUFXLEVBQUUsR0FBRztFQUNoQixhQUFhLEVBQUMsSUFBSTtDQUNuQjs7QUFDQSxBQUFELGtDQUFhLENBQUM7RUFDWixLQUFLLEUxRjNDRCxPQUFPO0UwRjRDWCxjQUFjLEVBQUUsS0FBSztFQUNyQixjQUFjLEVBQUUsU0FBUztDQUMxQjs7QUM3REg7O2dGQUVnRjtBQUk1RSxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFEeEIsQUFBRCxjQUFRLENBQUM7SUFFTCxXQUFXLEVBQUUsTUFBTTtHQUV0Qjs7O0FBRUMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBRHhCLEFBQUQsWUFBTSxDQUFDO0lBRUgsT0FBTyxFQUFDLElBQUk7R0FFZjs7O0FBQ0EsQUFBRCxZQUFNLENBQUM7RUFDTCxLQUFLLEUxRlJDLFVBQThCO0UwRlNwQyxRQUFRLEVBQUMsUUFBUTtDQUlsQjs7QUFIQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFIeEIsQUFBRCxZQUFNLENBQUM7SUFJSCxPQUFPLEVBQUMsSUFBSTtHQUVmOzs7QUFHSCxBQUFBLGVBQWUsQ0FBQztFekZQWixXQUFXLEV5RlFDLE1BQU07RXpGUGxCLGNBQWMsRXlGT00sTUFBTTtFQUM1QixnQkFBZ0IsRUFBRSxHQUFHO0VBQ3JCLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxjQUFjO0VBQzFDLFdBQVcsRUFBRSxNQUFNO0VBQ25CLFFBQVEsRUFBRSxLQUFLO0VBQ2YsR0FBRyxFQUFDLEtBQUs7RUFDVCxPQUFPLEVBQUUsRUFBRTtDQUNaOztBQUdELEFBQUEsV0FBVyxDQUFDO0VBQ1YsUUFBUSxFQUFDLFFBQVE7RUFDakIsR0FBRyxFQUFDLElBQUk7RUFDUixJQUFJLEVBQUMsSUFBSTtFQUNULGNBQWMsRUFBRSxTQUFTO0VBQ3pCLFNBQVMsRUFBRSxNQUFNO0VBQ2pCLEtBQUssRTNGbkNFLElBQUk7QzJGNkNaOztBQVRDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQVB6QixBQUFBLFdBQVcsQ0FBQztJQVFSLE9BQU8sRUFBQyxJQUFJO0dBUWY7OztBQU5DLEFBQUEsYUFBYSxDQVZmLFdBQVc7QUFXVCw0QkFBNEIsQ0FYOUIsV0FBVztBQVlULFNBQVMsQ0FaWCxXQUFXO0FBYVQsZUFBZSxDQWJqQixXQUFXLENBYVE7RUFDZixLQUFLLEUzRjFDQSxJQUFJO0MyRjJDVjs7QUFHSCxBQUFBLGNBQWMsQ0FBQztFQUNiLFFBQVEsRUFBRSxLQUFLO0VBQ2YsR0FBRyxFQUFDLEtBQUs7RUFDVCxLQUFLLEUxRmhERyxVQUE4QjtFMEZpRHRDLE9BQU8sRUFBRSxFQUFFO0NBOEJaOztBQTdCRSxBQUFELG9CQUFPLENBQUM7RXpGc0JOLFFBQVEsRUFEd0IsUUFBUTtFeUZuQnhDLE9BQU8sRUFBQyxLQUFLO0VBQ2IsZ0JBQWdCLEUzRmxEUix3QkFBTztFMkZtRGYsS0FBSyxFM0Z4REEsSUFBSTtFMkZ5RFQsS0FBSyxFQUFDLElBQUk7RUFDVixNQUFNLEUxRnhEQSxVQUE4QjtFMEZ5RHBDLEtBQUssRUFBQyxLQUFLO0VBQ1gsVUFBVSxFQUFFLFNBQVM7RUFDckIsU0FBUyxFQUFDLE1BQU07Q0FtQmpCOztBQTVCQSxBekZ1QkMsb0J5RnZCSyxBekZ1QkosT0FBTyxDQUFLO0VBQ1QsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLEdBQUc7RUFDUixJQUFJLEVBQUUsR0FBRztFQUNULFNBQVMsRUFBRSxxQkFBcUI7Q0FDbkM7O0F5RjVCRixBQVVDLG9CQVZLLEFBVUosTUFBTSxDQUFDO0VBQ04sS0FBSyxFQUFDLElBQUk7Q0FDWDs7QUFaRixBcEZxR0Msb0JvRnJHSyxBQWFKLFNBQVMsQXBGd0ZULE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUF4R0EsSUFBTztDQXlHakI7O0FvRjVHRixBcEZxR0Msb0JvRnJHSyxBQWdCSixRQUFRLEFwRnFGUixPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBdkJBLElBQU87Q0F3QmpCOztBb0Y1R0YsQXBGcUdDLG9Cb0ZyR0ssQUFtQkosVUFBVSxBcEZrRlYsT0FBTyxDQUFLO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQXJEQSxJQUFPO0NBc0RqQjs7QW9GNUdGLEFwRnFHQyxvQm9GckdLLEFBc0JKLFNBQVMsQXBGK0VULE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUFqRUEsSUFBTztDQWtFakI7O0FvRjVHRixBcEZxR0Msb0JvRnJHSyxBQXlCSixLQUFLLEFwRjRFTCxPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBM0RBLElBQU87Q0E0RGpCOztBb0YzRUwsQUFBQSxLQUFLLENBQUM7RUFDSixPQUFPLEVBQUMsSUFBSSxDQUFBLFVBQVU7Q0FldkI7O0FBaEJELEFBRUUsS0FGRyxDQUVILGFBQWE7QUFGZixLQUFLLENBR0gsQ0FBQyxDQUFDO0VBQ0EsS0FBSyxFMUZ2RkMsVUFBOEIsQzBGdUZ0QixVQUFVO0VBQ3hCLGdCQUFnQixFQUFDLHNCQUFzQjtDQUl4Qzs7QUFUSCxBQU1JLEtBTkMsQ0FFSCxhQUFhLENBSVgsZ0JBQWdCO0FBTnBCLEtBQUssQ0FHSCxDQUFDLENBR0MsZ0JBQWdCLENBQUM7RUFDZixnQkFBZ0IsRTNGdkZWLHdCQUFPLEMyRnVGdUIsVUFBVTtDQUMvQzs7QUFSTCxBQVVFLEtBVkcsQ0FVSCxhQUFhLEFBQUEsTUFBTTtBQVZyQixLQUFLLENBV0gsYUFBYSxBQUFBLE1BQU07QUFYckIsS0FBSyxDQVlILENBQUMsQUFBQSxNQUFNO0FBWlQsS0FBSyxDQWFILENBQUMsQUFBQSxNQUFNLENBQUM7RUFDTixLQUFLLEVBQUMsZUFBZTtDQUN0Qjs7QUFFSCxBQUFBLFVBQVU7QUFDVixRQUFRLENBQUM7RUFDUCxHQUFHLEVBQUMsZ0JBQWdCO0NBQ3JCOztBQUdELEFBQUEsZUFBZSxDQUFDO0VBQ2QsUUFBUSxFQUFDLFFBQVE7RUFDakIsVUFBVSxFQUFDLE1BQU07RUFDakIsSUFBSSxFQUFDLE1BQU07RUFDWCxXQUFXLEVBQUMsSUFBSTtFQUNoQixjQUFjLEVBQUUsSUFBSTtDQXVDckI7O0FBdENDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQU56QixBQUFBLGVBQWUsQ0FBQztJQU9aLFdBQVcsRTNGN0VJLE1BQU07STJGOEVyQixVQUFVLEVBQUMsSUFBSTtHQW9DbEI7OztBQWxDQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFWekIsQUFBQSxlQUFlLENBQUM7SUFXWixXQUFXLEUzRmpGSSxNQUFNO0cyRmtIeEI7OztBQTlCRSxBQUFELHdCQUFVLENBQUM7RXpGMUdULFlBQVksRURkTixVQUE4QjtFQ2VwQyxhQUFhLEVEZlAsVUFBOEI7RTBGMEhwQyxXQUFXLEVBQUMsSUFBSTtDQUNqQjs7QUFDQSxBQUFELHNCQUFRLENBQUM7RUFDUCxLQUFLLEUzRnRIRCxPQUFPO0UyRnVIWCxjQUFjLEVBQUUsS0FBSztFQUNyQixjQUFjLEVBQUUsU0FBUztFQUN6QixXQUFXLEVBQUUsR0FBRztFQUNoQixhQUFhLEVBQUMsSUFBSTtFQUNsQixTQUFTLEVBQUMsT0FBTztDQUNsQjs7QUFDQSxBQUFELHNCQUFRLENBQUM7RUFDUCxTQUFTLEVBQUMsSUFBSTtFQUNkLFdBQVcsRUFBQyxHQUFHO0NBS2hCOztBQUpDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQUh4QixBQUFELHNCQUFRLENBQUM7SUFJTCxXQUFXLEVBQUUsR0FBRztJQUNoQixhQUFhLEVBQUMsSUFBSTtHQUVyQjs7O0FBQ0EsQUFBRCx1QkFBUyxDQUFDO0VBQ1IsS0FBSyxFM0Z4SUcsT0FBTztFMkZ5SWYsU0FBUyxFQUFDLE1BQU07RUFDaEIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsYUFBYSxFQUFDLE1BQU07Q0FDckI7O0FBQ0EsQUFBRCx5QkFBVyxDQUFDO0VBQ1YsU0FBUyxFQUFDLE1BQU07RUFDaEIsV0FBVyxFQUFFLEdBQUc7Q0FDakI7O0FBR0gsQUFBQSxzQkFBc0IsQ0FBQztFQUNyQixRQUFRLEVBQUMsUUFBUTtFQUNqQixVQUFVLEVBQUMsTUFBTTtFQUNqQixJQUFJLEVBQUMsTUFBTTtFQUNYLFdBQVcsRUFBQyxLQUFLO0VBQ2pCLGNBQWMsRUFBRSxJQUFJO0NBeUJyQjs7QUF4QkMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBTnpCLEFBQUEsc0JBQXNCLENBQUM7SUFPbkIsV0FBVyxFM0YzSEksTUFBTTtJMkY0SHJCLFVBQVUsRUFBQyxJQUFJO0dBc0JsQjs7O0FBcEJDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQVZ6QixBQUFBLHNCQUFzQixDQUFDO0lBV25CLFdBQVcsRTNGL0hJLE1BQU07RzJGa0p4Qjs7O0FBakJFLEFBQUQsK0JBQVUsQ0FBQztFekZ2SlQsWUFBWSxFRGROLFVBQThCO0VDZXBDLGFBQWEsRURmUCxVQUE4QjtFMEZ1S3BDLFdBQVcsRUFBQyxJQUFJO0NBQ2pCOztBQUNBLEFBQUQsNkJBQVEsQ0FBQztFQUNQLFNBQVMsRUFBQyxNQUFNO0VBQ2hCLFdBQVcsRUFBQyxHQUFHO0VBQ2YsS0FBSyxFM0ZyS0QsT0FBTztFMkZzS1gsYUFBYSxFQUFDLElBQUk7RUFDbEIsV0FBVyxFQUFFLEdBQUc7Q0FJakI7O0FBSEMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBTnhCLEFBQUQsNkJBQVEsQ0FBQztJQU9MLFNBQVMsRUFBQyxNQUFNO0dBRW5COzs7QUFDQSxBQUFELGdDQUFXLENBQUM7RUFDVixTQUFTLEVBQUMsTUFBTTtDQUNqQjs7QUFHSCxBQUFBLFdBQVcsQ0FBQztFQUNWLFFBQVEsRUFBQyxRQUFRO0VBQ2pCLFVBQVUsRUFBQyxNQUFNO0VBQ2pCLElBQUksRUFBQyxNQUFNO0VBQ1gsV0FBVyxFQUFDLElBQUk7Q0ErQmpCOztBQTlCQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFMekIsQUFBQSxXQUFXLENBQUM7SUFNUixXQUFXLEUzRjFKSSxNQUFNO0kyRjJKckIsVUFBVSxFQUFDLElBQUk7R0E0QmxCOzs7QUExQkMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBVHpCLEFBQUEsV0FBVyxDQUFDO0lBVVIsV0FBVyxFM0Y5SkksTUFBTTtHMkZ1THhCOzs7QUF2QkUsQUFBRCxvQkFBVSxDQUFDO0V6RnRMVCxZQUFZLEVEZE4sVUFBOEI7RUNlcEMsYUFBYSxFRGZQLFVBQThCO0UwRnNNcEMsV0FBVyxFQUFDLElBQUk7Q0FDakI7O0FBQ0EsQUFBRCxrQkFBUSxDQUFDO0VBQ1AsU0FBUyxFQUFDLE1BQU07RUFDaEIsV0FBVyxFQUFDLEdBQUc7RUFDZixLQUFLLEUzRnBNRCxPQUFPO0UyRnFNWCxhQUFhLEVBQUMsSUFBSTtFQUNsQixXQUFXLEVBQUUsR0FBRztDQU9qQjs7QUFOQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFOeEIsQUFBRCxrQkFBUSxDQUFDO0lBT0wsU0FBUyxFQUFDLE1BQU07R0FLbkI7OztBQUhDLEFBQUEsZUFBZSxDQVRoQixrQkFBTyxDQVNZO0VBQ2hCLGFBQWEsRUFBQyxJQUFJO0NBQ25COztBQUVGLEFBQUQscUJBQVcsQ0FBQztFQUNWLFNBQVMsRUFBQyxNQUFNO0NBSWpCOztBQUhDLEFBQUEsZUFBZSxDQUZoQixxQkFBVSxDQUVTO0VBQ2hCLFNBQVMsRUFBQyxNQUFNO0NBQ2pCOztBQUlMLEFBQUEsZ0JBQWdCLENBQUM7RUFDZixRQUFRLEVBQUMsUUFBUTtFQUNqQixVQUFVLEVBQUMsTUFBTTtFQUNqQixJQUFJLEVBQUMsTUFBTTtDQThDWjs7QUE3Q0MsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBSnpCLEFBQUEsZ0JBQWdCLENBQUM7SUFLWCxVQUFVLEUzRjlMRyxNQUFNO0cyRjBPeEI7OztBQWpERCxBQU9FLGdCQVBjLEFBT2IsT0FBTyxDQUFDO0VBQ1AsT0FBTyxFQUFDLEVBQUU7RUFDVixnQkFBZ0IsRTNGdk9YLElBQUk7RTJGd09ULE9BQU8sRUFBQyxFQUFFO0VBQ1YsUUFBUSxFQUFDLFFBQVE7RUFDakIsS0FBSyxFQUFDLElBQUk7RUFDVixNQUFNLEVBQUMsSUFBSTtFQUNYLEdBQUcsRUFBQyxDQUFDO0VBQ0wsSUFBSSxFQUFDLENBQUM7Q0FDUDs7QUFDQSxBQUFELHdCQUFTLENBQUM7RXpGYlYsYUFBYSxFeUZjUyxLQUFLO0V6RmJ4QixVQUFVLEV5RmFTLEtBQUs7RXpGUHpCLFdBQVcsRUFBRSxtQkFBcUI7RXlGUWxDLEtBQUssRUFBQyxJQUFJO0VBQ1YsTUFBTSxFQUFDLEtBQUs7Q0FLYjs7QUFKQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFKeEIsQUFBRCx3QkFBUyxDQUFDO0lBS04sTUFBTSxFQUFDLEtBQUs7R0FHZjs7O0FBQ0EsQUFBRCx5QkFBVSxDQUFDO0VBQ1QsS0FBSyxFQUFDLElBQUk7RUFDVixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsR0FBRztFQUNSLElBQUksRUFBRSxDQUFDO0VBQ1AsT0FBTyxFQUFFLENBQUM7RUFDVixTQUFTLEVBQUUsZ0JBQWdCO0VBQzNCLE9BQU8sRUFBQyxJQUFJO0NBQ2I7O0FBQ0EsQUFBRCx1QkFBUSxDQUFDO0VBQ1AsU0FBUyxFQUFDLE1BQU07RUFDaEIsV0FBVyxFQUFDLEdBQUc7RUFDZixLQUFLLEUzRnJRQSxJQUFJO0UyRnNRVCxhQUFhLEVBQUMsSUFBSTtFQUNsQixXQUFXLEVBQUUsR0FBRztDQUlqQjs7QUFIQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFOeEIsQUFBRCx1QkFBUSxDQUFDO0lBT0wsU0FBUyxFQUFDLE1BQU07R0FFbkI7OztBQUNBLEFBQUQsMEJBQVcsQ0FBQztFQUNWLFNBQVMsRUFBQyxNQUFNO0VBQ2hCLEtBQUssRTNGOVFBLElBQUk7QzJGK1FWOztBQUdILEFBQUEsbUJBQW1CLENBQUM7RUFDbEIsUUFBUSxFQUFDLFFBQVE7RUFDakIsSUFBSSxFQUFDLE1BQU07RUFDWCxXQUFXLEVBQUMsSUFBSTtDQW1FakI7O0FBbEVDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQUp6QixBQUFBLG1CQUFtQixDQUFDO0lBS2hCLFdBQVcsRTNGalBJLE1BQU07STJGa1ByQixVQUFVLEVBQUMsSUFBSTtHQWdFbEI7OztBQTlEQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFSekIsQUFBQSxtQkFBbUIsQ0FBQztJQVNoQixXQUFXLEUzRnJQSSxNQUFNO0cyRmtUeEI7OztBQTNERSxBQUFELDRCQUFVLENBQUM7RXpGeFJULFdBQVcsRUFETyxJQUFJO0VBRXRCLFlBQVksRUFGTSxJQUFJO0VBWXRCLFlBQVksRURkTixVQUE4QjtFQ2VwQyxhQUFhLEVEZlAsVUFBOEI7RTBGOFJwQyxXQUFXLEVBQUMsSUFBSTtFQUNoQixTQUFTLEVBQUMsS0FBSztDQUloQjs7QUFIQyxNQUFNLEVBQUMsU0FBUyxFQUFFLE1BQU07RUFMekIsQUFBRCw0QkFBVSxDQUFDO0lBTVAsU0FBUyxFQUFDLE1BQU07R0FFbkI7OztBQUNBLEFBQUQsdUJBQUssQ0FBQztFQUNKLE9BQU8sRUFBQyxLQUFLO0VBQ2IsS0FBSyxFQUFDLElBQUk7Q0FDWDs7QUFDQSxBQUFELGdDQUFjLENBQUM7RUFDYixPQUFPLEVBQUMsVUFBVTtFQUNsQixjQUFjLEVBQUMsTUFBTTtFQUNyQixLQUFLLEVBQUMsR0FBRztFQUNULGFBQWEsRUFBQyxJQUFJO0NBTW5COztBQUxDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQUx4QixBQUFELGdDQUFjLENBQUM7SUFNWCxPQUFPLEVBQUMsS0FBSztJQUNiLEtBQUssRUFBQyxJQUFJO0lBQ1YsYUFBYSxFQUFDLENBQUM7R0FFbEI7OztBQUNBLEFBQUQsK0JBQWEsQ0FBQztFQUNaLE9BQU8sRUFBQyxVQUFVO0VBQ2xCLGNBQWMsRUFBQyxNQUFNO0NBSXRCOztBQUhDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQUh4QixBQUFELCtCQUFhLENBQUM7SUFJVixPQUFPLEVBQUMsS0FBSztHQUVoQjs7O0FBQ0EsQUFBRCwwQkFBUSxDQUFDO0VBQ1AsU0FBUyxFQUFDLE1BQU07RUFDaEIsV0FBVyxFQUFDLEdBQUc7RUFDZixhQUFhLEVBQUMsSUFBSTtFQUNsQixXQUFXLEVBQUUsR0FBRztFQUNoQixXQUFXLEVBQUMsR0FBRztDQUloQjs7QUFIQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFOeEIsQUFBRCwwQkFBUSxDQUFDO0lBT0wsU0FBUyxFQUFDLE1BQU07R0FFbkI7OztBQUNBLEFBQUQsbUNBQWlCLENBQUM7RUFDaEIsUUFBUSxFQUFDLFFBQVE7RUFDakIsT0FBTyxFQUFDLEtBQUs7Q0FZZDs7QUFkQSxBQUdDLG1DQUhlLEFBR2QsT0FBTyxDQUFDO0VBQ1AsT0FBTyxFQUFDLEVBQUU7RUFDVixRQUFRLEVBQUMsUUFBUTtFQUNqQixHQUFHLEVBQUMsS0FBSztFQUNULEtBQUssRUFBQyxLQUFLO0VBQ1gsS0FBSyxFQUFDLEtBQUs7RUFDWCxNQUFNLEVBQUMsS0FBSztFQUNaLE9BQU8sRUFBQyxLQUFLO0VBQ2IsZ0JBQWdCLEVBQUMseUJBQXlCO0VBQzFDLGVBQWUsRUFBQyxPQUFPO0NBQ3hCOztBQUVGLEFBQUQsMkJBQVMsQ0FBQztFQUNSLE1BQU0sRUFBQyxJQUFJLENBQUMsS0FBSyxDM0Z0VlosSUFBSTtDMkZ1VlY7O0FDN1ZIOztnRkFFZ0Y7QUFFaEYsQUFBQSxXQUFXLENBQUM7RUFDVixRQUFRLEVBQUMsUUFBUTtFQUNqQixVQUFVLEVBQUMsTUFBTTtFQUNqQixJQUFJLEVBQUMsTUFBTTtDQTJjWjs7QUF6Y0csTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRDFCLEFBQUEsYUFBYSxDQUpmLFdBQVcsQ0FJTztJQUVaLFNBQVMsRUFBRSx3QkFBd0I7R0FFdEM7OztBQUVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUQxQixBQUFBLGVBQWUsQ0FUakIsV0FBVyxDQVNTO0kxRkloQixXQUFXLEUwRkZLLElBQUk7STFGR3BCLGNBQWMsRTBGSEUsSUFBSTtJQUNsQixVQUFVLEU1RjRCRyxNQUFNO0c0RjFCdEI7OztBQWRILEFBZUUsV0FmUyxBQWVSLE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBQyxFQUFFO0VBQ1YsZ0JBQWdCLEU1RmRYLElBQUk7RTRGZVQsT0FBTyxFQUFDLEVBQUU7RUFDVixRQUFRLEVBQUMsUUFBUTtFQUNqQixLQUFLLEVBQUMsSUFBSTtFQUNWLE1BQU0sRUFBQyxJQUFJO0VBQ1gsR0FBRyxFQUFDLENBQUM7RUFDTCxJQUFJLEVBQUMsQ0FBQztDQVdQOztBQVRHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUQxQixBQUFBLGVBQWUsQ0F4Qm5CLFdBQVcsQUFlUixPQUFPLENBU1k7SUFFZCxPQUFPLEVBQUMsSUFBSTtHQUVmOzs7QUFFQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEMUIsQUFBQSxhQUFhLENBN0JqQixXQUFXLEFBZVIsT0FBTyxDQWNVO0lBRVosT0FBTyxFQUFDLElBQUk7R0FFZjs7O0FBRUYsQUFBRCwyQkFBaUIsQ0FBQztFQUNoQixPQUFPLEVBQUMsSUFBSTtDQUliOztBQUxBLEFBRUMsMkJBRmUsQUFFZCxrQkFBa0IsQ0FBQztFQUNsQixPQUFPLEVBQUMsS0FBSztDQUNkOztBQUdELE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQUR4QixBQUFELGlDQUF1QixDQUFDO0lBRXBCLE9BQU8sRUFBQyxJQUFJO0dBRWY7OztBQUVDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQUR4QixBQUFELDBCQUFnQixDQUFDO0lBRWIsUUFBUSxFQUFDLFFBQVE7SUFDakIsS0FBSyxFQUFFLElBQUk7SUFDWCxHQUFHLEVBQUUsS0FBSztJQUNWLElBQUksRUFBRSxHQUFHO0lBQ1QsU0FBUyxFQUFDLGdCQUFnQjtHQU03Qjs7O0FBSkMsQUFBQSxlQUFlLENBUmhCLDBCQUFlLENBUUk7RUFDaEIsUUFBUSxFQUFDLE1BQU07RUFDZixTQUFTLEVBQUUsSUFBSTtDQUNoQjs7QUFFRixBQUFELGtCQUFRLENBQUM7RTFGekNQLFlBQVksRTBGMENFLElBQUk7RTFGekNsQixhQUFhLEUwRnlDQyxJQUFJO0VBQ2xCLFNBQVMsRUFBQyxJQUFJO0VBQ2QsY0FBYyxFQUFFLEtBQUs7RUFDckIsV0FBVyxFQUFDLEdBQUc7RUFDZixjQUFjLEVBQUMsU0FBUztFQUN4QixLQUFLLEU1Ri9EQSxJQUFJO0M0RjZHVjs7QUE3Q0MsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBUHhCLEFBQUQsa0JBQVEsQ0FBQztJQVFMLFNBQVMsRTNGL0RMLFVBQThCO0kyRmdFbEMsY0FBYyxFQUFFLEtBQUs7SUFDckIsV0FBVyxFQUFDLEdBQUc7R0EwQ2xCOzs7QUF4Q0MsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBWnhCLEFBQUQsa0JBQVEsQ0FBQztJQWFMLFNBQVMsRUFBQyxJQUFJO0dBdUNqQjs7O0FBckNDLE1BQU0sRUFBQyxTQUFTLEVBQUUsTUFBTTtFQWZ6QixBQUFELGtCQUFRLENBQUM7SUFnQkwsU0FBUyxFQUFDLElBQUk7R0FvQ2pCOzs7QUFsQ0MsQUFBQSxhQUFhLENBbEJkLGtCQUFPLENBa0JVO0VBQ2QsU0FBUyxFQUFDLElBQUk7RUFDZCxXQUFXLEVBQUMsR0FBRztFQUNmLGFBQWEsRUFBQyxJQUFJO0VBQ2xCLGNBQWMsRUFBRSxLQUFLO0NBU3RCOztBQVJDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQUx6QixBQUFBLGFBQWEsQ0FsQmQsa0JBQU8sQ0FrQlU7SUFNWixTQUFTLEUzRi9FUCxVQUE4QjtJMkZnRmhDLFFBQVEsRUFBQyxNQUFNO0lBQ2YsU0FBUyxFQUFFLElBQUk7R0FLbEI7OztBQUhDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQVZ6QixBQUFBLGFBQWEsQ0FsQmQsa0JBQU8sQ0FrQlU7SUFXWixTQUFTLEVBQUMsSUFBSTtHQUVqQjs7O0FBRUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRDFCLEFBQUEsZUFBZSxDQWhDaEIsa0JBQU8sQ0FnQ1k7SUFFZCxLQUFLLEU1RjFGSixJQUFJO0k0RjJGTCxhQUFhLEVBQUMsQ0FBQztJQUNmLFNBQVMsRUFBQyxJQUFJO0lBQ2QsY0FBYyxFQUFFLEtBQUs7R0FFeEI7OztBQUdHLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQTFDNUIsQUF5Q0csa0JBekNJLENBd0NOLEVBQUUsQUFDQyxVQUFVLENBQUM7SUFFUixPQUFPLEVBQUMsRUFBRTtHQUViOzs7QUFFQyxNQUFNLEVBQUMsU0FBUyxFQUFFLE1BQU07RUEvQzdCLEFBOENHLGtCQTlDSSxDQXdDTixFQUFFLEFBTUMsVUFBVSxDQUFDO0lBRVIsT0FBTyxFQUFDLEVBQUU7R0FFYjs7O0FBR0osQUFBRCxxQkFBVyxDQUFDO0VBQ1YsV0FBVyxFNUZ2RkUsVUFBVSxFQUFFLEtBQUs7RTRGd0Y5QixVQUFVLEVBQUMsTUFBTTtFQUNqQixXQUFXLEVBQUMsR0FBRztFQUNmLEtBQUssRTVGbEhBLElBQUk7RTRGbUhULGNBQWMsRUFBRSxLQUFLO0VBQ3JCLE9BQU8sRUFBQyxZQUFZO0VBQ3BCLFFBQVEsRUFBQyxRQUFRO0VBQ2pCLFNBQVMsRUFBQyxNQUFNO0NBaUNqQjs7QUF6Q0EsQUFTQyxxQkFUUyxBQVNSLE9BQU8sRUFUVCxxQkFBVSxBQVVSLE1BQU0sQ0FBQztFQUNOLE9BQU8sRUFBQyxFQUFFO0VBQ1YsT0FBTyxFQUFDLEtBQUs7RUFDYixLQUFLLEVBQUMsSUFBSTtFQUNWLE1BQU0sRUFBQyxHQUFHO0VBQ1YsZ0JBQWdCLEVBQUMsWUFBWTtFQUM3QixRQUFRLEVBQUMsUUFBUTtFQUNqQixHQUFHLEVBQUMsR0FBRztDQUNSOztBQWxCRixBQW1CQyxxQkFuQlMsQUFtQlIsT0FBTyxDQUFDO0VBQ1AsSUFBSSxFQUFDLEtBQUs7Q0FDWDs7QUFyQkYsQUFzQkMscUJBdEJTLEFBc0JSLE1BQU0sQ0FBQztFQUNOLEtBQUssRUFBQyxLQUFLO0NBQ1o7O0FBQ0QsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBekJ4QixBQUFELHFCQUFXLENBQUM7SUEwQlIsV0FBVyxFQUFFLE1BQU07R0FldEI7OztBQWJDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQTVCeEIsQUFBRCxxQkFBVyxDQUFDO0lBNkJSLFNBQVMsRUFBQyxNQUFNO0dBWW5COzs7QUFWQyxNQUFNLEVBQUMsU0FBUyxFQUFFLE1BQU07RUEvQnpCLEFBQUQscUJBQVcsQ0FBQztJQWdDUixTQUFTLEVBQUMsTUFBTTtHQVNuQjs7O0FBTkcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRDFCLEFBQUEsZUFBZSxDQWxDaEIscUJBQVUsQ0FrQ1M7SUFFZCxLQUFLLEU1RmpKSixJQUFJO0k0RmtKTCxVQUFVLEVBQUMsQ0FBQztJQUNaLFNBQVMsRUFBQyxJQUFJO0dBRWpCOzs7QUFFRixBQUFELDJCQUFpQixDQUFDO0VBQ2hCLFdBQVcsRTVGaklFLFVBQVUsRUFBRSxLQUFLO0U0RmtJOUIsVUFBVSxFQUFFLE1BQU07RUFDbEIsV0FBVyxFQUFDLEdBQUc7RUFDZixLQUFLLEU1RjVKQSxJQUFJO0U0RjZKVCxjQUFjLEVBQUUsS0FBSztFQUNyQixTQUFTLEVBQUMsTUFBTTtFQUNoQixVQUFVLEVBQUMsQ0FBQztFQUNaLGNBQWMsRUFBRSxJQUFJO0VBQ3BCLE9BQU8sRUFBQyxLQUFLO0NBVWQ7O0FBVEMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBVnhCLEFBQUQsMkJBQWlCLENBQUM7SUFXZCxTQUFTLEVBQUMsSUFBSTtHQVFqQjs7O0FBTkMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBYnhCLEFBQUQsMkJBQWlCLENBQUM7SUFjZCxTQUFTLEVBQUMsTUFBTTtHQUtuQjs7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBaEJ6QixBQUFELDJCQUFpQixDQUFDO0lBaUJkLGFBQWEsRUFBRSxJQUFJO0dBRXRCOzs7QUFDQSxBQUFELGlCQUFPLENBQUM7RUFDTixLQUFLLEU1RjdLQSxJQUFJO0U0RjhLVCxTQUFTLEVBQUUsS0FBSztFMUZ6S2hCLFdBQVcsRUFETyxJQUFJO0VBRXRCLFlBQVksRUFGTSxJQUFJO0MwRitLdkI7O0FBSEMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBSnhCLEFBQUQsaUJBQU8sQ0FBQztJQUtKLE9BQU8sRUFBQyxJQUFJO0dBRWY7OztBQUVDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQUR4QixBQUFELDBCQUFnQixDQUFDO0lBRWIsT0FBTyxFQUFDLElBQUk7R0FFZjs7O0FBQ0EsQUFBRCw0QkFBa0IsQ0FBQztFQUNqQixRQUFRLEVBQUMsTUFBTTtFQUNmLE1BQU0sRUFBQyxLQUFLO0NBYWI7O0FBWkMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBSHhCLEFBQUQsNEJBQWtCLENBQUM7SUFJZixNQUFNLEVBQUMsS0FBSztHQVdmOzs7QUFUQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFOeEIsQUFBRCw0QkFBa0IsQ0FBQztJQU9mLE9BQU8sRUFBQyxJQUFJO0dBUWY7OztBQU5DLE1BQU0sRUFBQyxVQUFVLEVBQUUsS0FBSyxPQUFPLFdBQVcsRUFBRSxTQUFTO0VBVHRELEFBQUQsNEJBQWtCLENBQUM7SUFVZixNQUFNLEVBQUMsS0FBSztHQUtmOzs7QUFmQSxBQVlDLDRCQVpnQixDQVloQixXQUFXLENBQUM7RUFDVixNQUFNLEVBQUMsSUFBSTtDQUNaOztBQUVGLEFBQUQsMkJBQWlCLENBQUM7RUFDaEIsUUFBUSxFQUFDLFFBQVE7Q0FnQmxCOztBQWpCQSxBQUVDLDJCQUZlLEFBRWQsT0FBTyxDQUFDO0VBQ1AsT0FBTyxFQUFDLEVBQUU7RUFDVixnQkFBZ0IsRTVGNU1iLElBQUk7RTRGNk1QLE9BQU8sRUFBQyxFQUFFO0VBQ1YsUUFBUSxFQUFDLFFBQVE7RUFDakIsS0FBSyxFQUFDLElBQUk7RUFDVixNQUFNLEVBQUMsSUFBSTtFQUNYLEdBQUcsRUFBQyxDQUFDO0VBQ0wsSUFBSSxFQUFDLENBQUM7Q0FNUDs7QUFKRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEMUIsQUFBQSxlQUFlLENBWGxCLDJCQUFnQixBQUVkLE9BQU8sQ0FTWTtJQUVkLE9BQU8sRUFBQyxJQUFJO0dBRWY7OztBQUdKLEFBQUQsbUJBQVMsQ0FBQztFMUZRVixhQUFhLEUwRlBTLEtBQUs7RTFGUXhCLFVBQVUsRTBGUlMsS0FBSztFMUZjekIsV0FBVyxFQUFFLG1CQUFxQjtFMEZibEMsS0FBSyxFQUFDLElBQUk7RUFDVixNQUFNLEVBQUMsS0FBSztDQW1EYjs7QUFqREMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBTHhCLEFBQUQsbUJBQVMsQ0FBQztJQU1OLE1BQU0sRUFBRSxPQUFPO0dBZ0RsQjs7O0FBOUNDLE1BQU0sRUFBQyxVQUFVLEVBQUUsS0FBSyxPQUFPLFdBQVcsRUFBRSxTQUFTO0VBUnRELEFBQUQsbUJBQVMsQ0FBQztJQVNOLE1BQU0sRUFBRSxLQUFLO0dBNkNoQjs7O0FBM0NDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQVh4QixBQUFELG1CQUFTLENBQUM7SUFZTixVQUFVLEU1RmpNRyxNQUFNO0k0RmtNbkIsTUFBTSxFQUFFLEtBQUs7R0F5Q2hCO0VBeENHLEFBQUEsYUFBYSxDQWRoQixtQkFBUTtFQWVMLGVBQWUsQ0FmbEIsbUJBQVE7RUFnQkwsa0JBQWtCLENBaEJyQixtQkFBUTtFQWlCTCxnQkFBZ0IsQ0FqQm5CLG1CQUFRLENBaUJjO0lBQ2pCLE1BQU0sRUFBQyxvQkFBaUM7R0FDekM7RUFDRCxBQUFBLFlBQVksQ0FwQmYsbUJBQVE7RUFxQkwsZUFBZSxDQXJCbEIsbUJBQVE7RUFzQkwsZ0JBQWdCLENBdEJuQixtQkFBUTtFQXVCTCxnQkFBZ0IsQ0F2Qm5CLG1CQUFRO0VBd0JMLGlCQUFpQixDQXhCcEIsbUJBQVE7RUF5QkwsWUFBWSxDQXpCZixtQkFBUTtFQTBCTCxjQUFjLENBMUJqQixtQkFBUTtFQTJCTCxZQUFZLENBM0JmLG1CQUFRO0VBNEJMLGNBQWMsQ0E1QmpCLG1CQUFRLENBNEJZO0lBQ2YsTUFBTSxFQUFFLE9BQU87R0FDaEI7RUFDRCxBQUFBLGFBQWEsQUFBQSxVQUFVLENBL0IxQixtQkFBUSxDQStCcUI7SUFDeEIsTUFBTSxFQUFDLFdBQVc7SUFDbEIsVUFBVSxFQUFFLENBQUM7R0FDZDtFQUNELEFBQUEsZUFBZSxDQW5DbEIsbUJBQVEsQ0FtQ2E7SUFDaEIsT0FBTyxFQUFDLElBQUk7R0FDYjs7O0FBRUgsTUFBTSxHQUNKLDZCQUE2QixFQUFFLENBQUMsSUFBSSxjQUFjLEVBQUUsTUFBTTtFQXhDN0QsQUFBRCxtQkFBUyxDQUFDO0lBMENKLGdDQUFnQztHQVlyQzs7O0FBVkMsQUFBQSxjQUFjLENBNUNmLG1CQUFRLENBNENVO0VBQ2YsTUFBTSxFQUFFLE9BQU87Q0FJaEI7O0FBSEMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBRnpCLEFBQUEsY0FBYyxDQTVDZixtQkFBUSxDQTRDVTtJQUdiLE1BQU0sRUFBQyxLQUFLO0dBRWY7OztBQUNELEFBQUEsaUJBQWlCLENBbERsQixtQkFBUTtBQW1EUCxpQkFBaUIsQ0FuRGxCLG1CQUFRLENBbURhO0VBQ2xCLE1BQU0sRUFBRSxPQUFPO0NBQ2hCOztBQUVGLEFBQUQsaUJBQU8sQ0FBQztFQUVOLGNBQWMsRUFBQyxTQUFTO0VBQ3hCLEtBQUssRTVGclJBLElBQUk7RTRGc1JULE9BQU8sRUFBQyxLQUFLO0NBc0JkOztBQTFCQSxBckZ6SEMsaUJxRnlISyxBckZ6SEosTUFBTSxDQUFNO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQWxEQSxJQUFPO0NBbURqQjs7QXFGa0hGLEFyRnpIQyxpQnFGeUhLLEFyRnpISixNQUFNLENxRjhIQztFMUZ1QlYsT0FBTyxFQUFFLFlBQVk7RUFDckIsY0FBYyxFQUFFLE1BQU07RUFDdEIsU0FBUyxFQUFFLGdCQUFnQixDQUFDLGFBQWE7RUFDekMsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLGdCQUFnQjtFQ2xOcEMsY0FBYyxFQUFFLG1CQUFtQjtFQUNuQyxrQkFBa0IsRUFBRSxFQUFFO0VBQ3RCLHlCQUF5QixFQUFFLFdBQVc7RUFDdEMseUJBQXlCLEVBQUUsUUFBUTtFeUZ1TC9CLFVBQVUsRUFBQyxJQUFJO0VBQ2YsT0FBTyxFQUFDLEtBQUs7Q0FDZDs7QXpGcE5ILFVBQVUsQ0FBVixtQkFBVTtFQUNSLE1BQU07SUFDSixTQUFTLEVBQUUsZUFBZTs7RUFFNUIsTUFBTTtJQUNKLFNBQVMsRUFBRSxnQkFBZ0I7O0VBRTdCLE9BQU87SUFDTCxTQUFTLEVBQUUsZUFBZTs7RUFFNUIsS0FBSztJQUNILFNBQVMsRUFBRSxnQkFBZ0I7O0VBRTdCLE9BQU87SUFDTCxTQUFTLEVBQUUsZUFBZTs7RUFFNUIsR0FBRztJQUNELFNBQVMsRUFBRSxhQUFhOztFQUUxQixJQUFJO0lBQ0YsU0FBUyxFQUFFLGFBQWE7Ozs7QXlGaU0xQixNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFWeEIsQUFBRCxpQkFBTyxDQUFDO0lBV0osT0FBTyxFQUFDLElBQUk7R0FlZjs7O0FBYkMsQUFBQSxVQUFVLENBYlgsaUJBQU07QUFjTCxnQkFBZ0IsQ0FkakIsaUJBQU07QUFlTCxZQUFZLENBZmIsaUJBQU07QUFnQkwsZ0JBQWdCLENBaEJqQixpQkFBTSxDQWdCYztFQUNqQixRQUFRLEVBQUMsUUFBUTtFQUNqQixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxLQUFLO0VBQ2IsSUFBSSxFQUFFLEdBQUc7RUFDVCxTQUFTLEVBQUMsZ0JBQWdCO0NBQzNCOztBQUNELEFBQUEsYUFBYSxDQXZCZCxpQkFBTSxDQXVCVTtFQUNiLFVBQVUsRUFBQyxJQUFJO0NBQ2hCOztBQUVGLEFBQUQsd0JBQWMsQ0FBQztFQUNiLE9BQU8sRUFBQyxLQUFLO0VBQ2IsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLE1BQU07RUFDWCxNQUFNLEVBQUUsTUFBTTtFQUNkLEtBQUssRUFBRSxJQUFJO0VBQ1gsT0FBTyxFQUFFLENBQUM7Q0FJWDs7QUFIQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFQeEIsQUFBRCx3QkFBYyxDQUFDO0lBUVgsT0FBTyxFQUFDLElBQUk7R0FFZjs7O0FBQ0EsQUFBRCxvQkFBVSxDQUFDO0VBQ1QsS0FBSyxFQUFDLElBQUk7Q0EwQlg7O0FBekJDLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQUZ4QixBQUFELG9CQUFVLENBQUM7SUFHUCxRQUFRLEVBQUUsUUFBUTtJQUNsQixHQUFHLEVBQUUsR0FBRztJQUNSLElBQUksRUFBRSxDQUFDO0lBQ1AsT0FBTyxFQUFFLENBQUM7SUFDVixTQUFTLEVBQUUsZ0JBQWdCO0dBb0I5Qjs7O0FBbEJDLEFBQUEsYUFBYSxDQVRkLG9CQUFTLENBU087RUFDYixRQUFRLEVBQUMsUUFBUTtFQUNqQixHQUFHLEVBQUUsR0FBRztFQUNSLFNBQVMsRUFBRSxnQkFBZ0I7RUFDM0IsSUFBSSxFQUFDLENBQUM7RUFDTixPQUFPLEVBQUMsQ0FBQztDQU9WOztBQU5DLE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSyxPQUFPLFNBQVMsRUFBRSxLQUFLO0VBTmhELEFBQUEsYUFBYSxDQVRkLG9CQUFTLENBU087SUFPWCxHQUFHLEVBQUUsZUFBZTtHQUt2Qjs7O0FBSEMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBVHpCLEFBQUEsYUFBYSxDQVRkLG9CQUFTLENBU087SUFVWCxHQUFHLEVBQUUsZ0JBQWdCO0dBRXhCOzs7QUFFQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFEekIsQUFBQSxhQUFhLEFBQUEsVUFBVSxDQXRCeEIsb0JBQVMsQ0FzQmtCO0lBRXRCLFNBQVMsRUFBRSxnQkFBZ0I7R0FFOUI7OztBQUVGLEFBQUQsMEJBQWdCLENBQUM7RUFDZixVQUFVLEVBQUMsSUFBSTtFMUZoVmYsV0FBVyxFMEZpVkcsSUFBSTtFMUZoVmxCLFlBQVksRTBGZ1ZFLElBQUk7Q0FXbkI7O0FBVkMsTUFBTSxFQUFDLFNBQVMsRUFBRSxLQUFLO0VBSHhCLEFBQUQsMEJBQWdCLENBQUM7STFGL1VmLFdBQVcsRTBGbVZLLElBQUk7STFGbFZwQixZQUFZLEUwRmtWSSxJQUFJO0lBQ2xCLFNBQVMsRUFBQyxLQUFLO0dBUWxCOzs7QUFOQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFQeEIsQUFBRCwwQkFBZ0IsQ0FBQztJQVFiLFVBQVUsRUFBQyxJQUFJO0dBS2xCOzs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFWekIsQUFBRCwwQkFBZ0IsQ0FBQztJQVdiLFVBQVUsRUFBRSxJQUFJO0dBRW5COzs7QUFDQSxBQUFELG1CQUFTLENBQUM7RUFDUixRQUFRLEVBQUUsUUFBUTtFQUNsQixNQUFNLEVBQUUsSUFBSTtFQUNaLElBQUksRUFBRSxDQUFDO0VBQ1AsS0FBSyxFQUFDLElBQUk7Q0FXWDs7QUFWQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFDckIsQUFBQSxhQUFhLENBTmhCLG1CQUFRO0VBT0wsVUFBVSxDQVBiLG1CQUFRO0VBUUwsZ0JBQWdCLENBUm5CLG1CQUFRLENBUWM7SUFDakIsTUFBTSxFQUFFLEtBQUs7R0FDZDtFQUNELEFBQUEsaUJBQWlCLENBWHBCLG1CQUFRLENBV2U7SUFDbEIsTUFBTSxFQUFFLElBQUk7R0FDYjs7O0FBR0osQTVHM1dELDJCNEcyV2lCLEE1RzNXaEIsT0FBTyxFNEcyV1AsMkJBQWdCLEE1RzFXaEIsTUFBTSxDQUFDO0VBQ04sT0FBTyxFQUFFLEdBQUc7RUFDWixPQUFPLEVBQUUsS0FBSztDQUNmOztBNEd1V0EsQTVHdFdELDJCNEdzV2lCLEE1R3RXaEIsTUFBTSxDQUFDO0VBQ04sS0FBSyxFQUFFLElBQUk7Q0FDWjs7QTRHdVdHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUgzQixBQUVDLDJCQUZlLEdBRWIsc0JBQXNCLENBQUM7SUFFckIsS0FBSyxFQUFDLElBQUk7SUFDVixLQUFLLEVBQUMsbUJBQWdDO0dBYXpDOzs7QUFsQkYsQUFPRywyQkFQYSxHQUViLHNCQUFzQixDQUt0QixLQUFLLENBQUM7RUFDSixVQUFVLEVBQUMsTUFBTTtDQUlsQjs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFUN0IsQUFPRywyQkFQYSxHQUViLHNCQUFzQixDQUt0QixLQUFLLENBQUM7SUFHRixVQUFVLEVBQUMsSUFBSTtHQUVsQjs7O0FBRUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBZDdCLEFBYUcsMkJBYmEsR0FFYixzQkFBc0IsQ0FXdEIsRUFBRSxDQUFDO0lBRUMsS0FBSyxFQUFDLG1CQUFnQztHQUV6Qzs7O0FBSUgsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRHpCLEFBQUQsMEJBQWdCLENBQUM7SUFFYixLQUFLLEVBQUMsS0FBSztHQVNkOzs7QUFOQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFMekIsQUFBRCwwQkFBZ0IsQ0FBQztJQU1iLGdCQUFnQixFNUYzWWIsSUFBSTtJNEY0WVAsS0FBSyxFNUY3WUYsSUFBSTtJNEY4WVAsS0FBSyxFQUFDLElBQUk7SUFDVixVQUFVLEVBQUMsSUFBSTtHQUVsQjs7O0FBQ0EsQUFBRCwrQkFBcUIsQ0FBQztFQUNwQixXQUFXLEVBQUMsQ0FBQztDQUlkOztBQUhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUZ6QixBQUFELCtCQUFxQixDQUFDO0lBR2xCLE9BQU8sRUFBQyxJQUFJO0dBRWY7OztBQUVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUR6QixBQUFELCtCQUFxQixDQUFDO0lBRWxCLE9BQU8sRUFBQyxJQUFJO0dBRWY7OztBQUNBLEFBQUQsZ0JBQU0sQ0FBQztFQUNMLE9BQU8sRUFBQyxLQUFLO0V6RnBZZixXQUFXLEVBQUMsR0FBRztFQUNmLGVBQWUsRUFBRSxTQUFTO0V5RnFZeEIsS0FBSyxFNUZoYUEsSUFBSTtFNEZpYVQsY0FBYyxFQUFFLFNBQVM7RUFDekIsVUFBVSxFQUFDLElBQUk7Q0FFaEI7O0FBQ0EsQUFBRCxpQkFBTyxFQUNOLGlCQUFNLENBQUM7RUFDTixRQUFRLEVBQUMsUUFBUTtFQUNqQixHQUFHLEVBQUMsR0FBRztFQUNQLE9BQU8sRUFBQyxLQUFLO0VBQ2IsT0FBTyxFQUFDLElBQUk7RUFDWixPQUFPLEVBQUUsQ0FBQztFQUNWLEtBQUssRTVGNWFBLElBQUk7RTRGNmFULGNBQWMsRUFBQyxTQUFTO0NBWXpCOztBQVZDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQVZ6QixBQUFELGlCQUFPLEVBQ04saUJBQU0sQ0FBQztJQVVKLEdBQUcsRUFBQyxJQUFJO0lBQ1IsTUFBTSxFQUFDLElBQUk7SUFDWCxnQkFBZ0IsRTVGbGJiLHdCQUFJO0k0Rm1iUCxhQUFhLEVBQUMsTUFBTTtJQUNwQixjQUFjLEVBQUUsS0FBSztHQUt4Qjs7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBakJ6QixBQUFELGlCQUFPLEVBQ04saUJBQU0sQ0FBQztJQWlCSixjQUFjLEVBQUUsS0FBSztHQUV4Qjs7O0FBQ0EsQUFBRCxpQkFBTyxDQUFDO0VBQ04sSUFBSSxFQUFDLE1BQU07Q0FTWjs7QUFMQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFMekIsQUFBRCxpQkFBTyxDQUFDO0lBTUosU0FBUyxFQUFFLGdCQUFnQixDQUFDLGNBQWM7SUFDMUMsZ0JBQWdCLEVBQUUsR0FBRztHQUd4Qjs7O0FBQ0EsQUFBRCxpQkFBTyxDQUFDO0VBQ04sS0FBSyxFQUFDLE1BQU07Q0FLYjs7QUFKQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFGekIsQUFBRCxpQkFBTyxDQUFDO0lBR0osU0FBUyxFQUFFLGVBQWUsQ0FBQyxhQUFhO0lBQ3hDLGdCQUFnQixFQUFFLEdBQUc7R0FFeEI7OztBQ2pkSDs7Z0ZBRWdGO0FBR2hGLEFBQUEsT0FBTyxDQUFDO0UzRllKLFdBQVcsRUZxQkMsSUFBSTtFRXBCaEIsY0FBYyxFRm9CRixJQUFJO0U2Ri9CbEIsZ0JBQWdCLEU3RkVMLE9BQU87QzZGS25COztBQU5DLEFBQUEsZUFBZSxDQUhqQixPQUFPLENBR2E7RUFDaEIsT0FBTyxFQUFDLElBQUk7Q0FDYjs7QUFDRCxBQUFBLHNCQUFzQixDQU54QixPQUFPLENBTW9CO0VBQ3ZCLE9BQU8sRUFBQyxLQUFLO0NBQ2Q7O0FBRUgsQUFBQSxZQUFZLENBQUM7RUFDWCxhQUFhLEVBQUMsSUFBSTtDQXdCbkI7O0FBdkJDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUYxQixBQUFBLFlBQVksQ0FBQztJQUdULFNBQVMsRUFBQyxJQUFJO0dBc0JqQjs7O0FBcEJFLEFBQUQsbUJBQVEsQ0FBQztFQUNQLFdBQVcsRUFBQyxHQUFHO0VBQ2YsY0FBYyxFQUFFLFNBQVM7Q0FDMUI7O0FBQ0EsQUFDQyxrQkFESyxHQUNILEVBQUUsQ0FBQztFQUNILFVBQVUsRUFBQyxHQUFHO0NBT2Y7O0FBVEYsQUFHRyxrQkFIRyxHQUNILEVBQUUsR0FFQSxDQUFDLENBQUM7RUFDRixXQUFXLEVBQUUsQ0FBQztDQUlmOztBQVJKLEFBS0ssa0JBTEMsR0FDSCxFQUFFLEdBRUEsQ0FBQyxBQUVBLE1BQU0sQ0FBQztFQUNOLGVBQWUsRUFBRSxTQUFTO0NBQzNCOztBQUlOLEFBQUQsa0JBQU8sQ0FBQztFQUNOLE9BQU8sRUFBQyxLQUFLO0VBQ2IsVUFBVSxFQUFDLElBQUk7RUFDZixhQUFhLEVBQUMsTUFBTTtDQUNyQjs7QUFHSCxBQUFBLE9BQU8sQ0FBQztFQUNOLFVBQVUsRUFBQyxNQUFNO0VBQ2pCLGFBQWEsRTdGVEEsSUFBSTtDNkZzRGxCOztBQTVDRSxBQUFELGNBQVEsQ0FBQztFQUNQLFNBQVMsRUFBQyxNQUFNO0VBQ2hCLFdBQVcsRUFBQyxHQUFHO0VBQ2YsYUFBYSxFQUFDLElBQUk7Q0FDbkI7O0FBR0EsQUFBRCxhQUFPLENBQUM7RUFDTixPQUFPLEVBQUMsTUFBTTtDQUNmOztBQUNBLEFBQUQsYUFBTyxDQUFDO0UzRjVDTixXQUFXLEUyRjZDRyxJQUFJO0UzRjVDbEIsWUFBWSxFMkY0Q0UsSUFBSTtFM0Z3QmxCLFFBQVEsRUFEd0IsUUFBUTtFMkZyQnhDLE9BQU8sRUFBQyxZQUFZO0VBQ3BCLGdCQUFnQixFN0Y1Q1osT0FBTztFNkY2Q1gsS0FBSyxFN0Z0REEsSUFBSTtFNkZ1RFQsS0FBSyxFQUFDLE1BQU07RUFDWixNQUFNLEVBQUMsTUFBTTtFQUNiLGFBQWEsRUFBQyxHQUFHO0VBQ2pCLFNBQVMsRUFBQyxJQUFJO0VBQ2QsYUFBYSxFQUFDLE1BQU07RUFDcEIsVUFBVSxFQUFFLDZCQUE2QjtDQXNCMUM7O0FBakNBLEEzRjBCQyxhMkYxQkssQTNGMEJKLE9BQU8sQ0FBSztFQUNULFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxHQUFHO0VBQ1IsSUFBSSxFQUFFLEdBQUc7RUFDVCxTQUFTLEVBQUUscUJBQXFCO0NBQ25DOztBMkYvQkYsQUFZQyxhQVpLLEFBWUosTUFBTSxDQUFDO0VBQ04sZ0JBQWdCLEU1RmxEWixPQUErQjtDNEZtRHBDOztBQWRGLEF0RndHQyxhc0Z4R0ssQUFlSixTQUFTLEF0RnlGVCxPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBeEdBLElBQU87Q0F5R2pCOztBc0YvR0YsQXRGd0dDLGFzRnhHSyxBQWtCSixZQUFZLEF0RnNGWixPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBekZBLElBQU87Q0EwRmpCOztBc0YvR0YsQXRGd0dDLGFzRnhHSyxBQXFCSixRQUFRLEF0Rm1GUixPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBdkJBLElBQU87Q0F3QmpCOztBc0YvR0YsQXRGd0dDLGFzRnhHSyxBQXdCSixVQUFVLEF0RmdGVixPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBckRBLElBQU87Q0FzRGpCOztBc0YvR0YsQXRGd0dDLGFzRnhHSyxBQTJCSixVQUFVLEF0RjZFVixPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBdkVBLElBQU87Q0F3RWpCOztBc0YvR0YsQXRGd0dDLGFzRnhHSyxBQThCSixRQUFRLEF0RjBFUixPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBZEEsSUFBTztDQWVqQjs7QXVGdEtMOztnRkFFZ0Y7QUFFaEYsQUFBQSxJQUFJLENBQUM7RUFDSCxPQUFPLEVBQUMsSUFBSTtFQUNaLGVBQWUsRUFBRSxhQUFhO0VBQzlCLFFBQVEsRUFBQyxLQUFLO0VBQ2QsR0FBRyxFQUFDLENBQUM7RUFDTCxJQUFJLEVBQUMsQ0FBQztFQUNOLEtBQUssRUFBQyxJQUFJO0VBQ1YsZ0JBQWdCLEU5RkxULElBQUk7RThGTVgsT0FBTyxFQUFDLENBQUM7RUFJVCxZQUFZLEVBQUMsSUFBSTtDQWlHbEI7O0FBN0dELEFBU0UsSUFURSxBQVNELE1BQU0sQ0FBQztFQUNOLE9BQU8sRUFBQyxDQUFDO0NBQ1Y7O0FBRUQsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBQ3RCLEFBQUEsU0FBUyxDQWRiLElBQUk7RUFlQSxhQUFhLENBZmpCLElBQUk7RUFnQkEsNEJBQTRCLENBaEJoQyxJQUFJO0VBaUJBLFNBQVMsQ0FqQmIsSUFBSTtFQWtCQSxpQkFBaUIsQ0FsQnJCLElBQUk7RUFtQkEsU0FBUyxDQW5CYixJQUFJLENBbUJZO0lBQ1YsVUFBVSxFOUZpQkYsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLG1CQUFrQjtHOEZoQnhDOzs7QUFFSCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUF2QjFCLEFBQUEsSUFBSSxDQUFDO0k1RmtCRCxZQUFZLEVEZE4sVUFBOEI7SUNlcEMsYUFBYSxFRGZQLFVBQThCO0c2RnlHdkM7OztBQW5GQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUExQjFCLEFBQUEsSUFBSSxDQUFDO0k1RmtCRCxZQUFZLEU0RlNFLENBQUM7STVGUmYsYUFBYSxFNEZRQyxDQUFDO0lBQ2YsT0FBTyxFQUFDLEtBQUs7SUFDYixnQkFBZ0IsRTlGMUJYLElBQUk7SThGMkJULEtBQUssRTlGNUJBLElBQUk7SThGNkJULE1BQU0sRTlGU1MsTUFBTTtJOEZSckIsUUFBUSxFQUFDLE1BQU07R0E2RWxCO0VBNUVHLEFBQUEsYUFBYSxBQUFBLFVBQVUsQUFBQSxJQUFLLENBQUEsbUJBQW1CLENBQUMsSUFBSyxDQUFBLHNCQUFzQixFQWpDL0UsSUFBSSxDQWlDK0U7SUFDN0UsUUFBUSxFQUFFLEtBQUs7SUFDZixnQkFBZ0IsRUFBQyxXQUFXO0lBQzVCLFFBQVEsRUFBRSxPQUFPO0dBQ2xCO0VBQ0QsQUFBQSwyQkFBMkIsQ0F0Qy9CLElBQUksQ0FzQzhCO0lBQzVCLE9BQU8sRUFBQyxJQUFJO0dBQ2I7OztBQUdGLEFBQUQsVUFBTyxDQUFDO0VBQ04sU0FBUyxFQUFDLENBQUM7RUFDWCxPQUFPLEVBQUMsSUFBSTtFQUNaLFdBQVcsRUFBRSxNQUFNO0NBY3BCOztBQWpCQSxBQUlDLFVBSkssQUFJSixLQUFLLENBQUM7RUFDTCxlQUFlLEVBQUUsVUFBVTtDQUk1Qjs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFOM0IsQUFJQyxVQUpLLEFBSUosS0FBSyxDQUFDO0lBR0gsT0FBTyxFQUFDLElBQUk7R0FFZjs7O0FBVEYsQUFVQyxVQVZLLEFBVUosTUFBTSxDQUFDO0VBQ04sZUFBZSxFQUFFLFFBQVE7RUFDekIsV0FBVyxFQUFFLElBQUk7Q0FJbEI7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBYjNCLEFBVUMsVUFWSyxBQVVKLE1BQU0sQ0FBQztJQUlKLFdBQVcsRUFBRSxJQUFJO0dBRXBCOzs7QUFFRixBQUFELFVBQU8sQ0FBQztFQUNOLE9BQU8sRUFBQyxLQUFLO0VBQ2IsT0FBTyxFQUFDLFNBQVM7RUFDakIsY0FBYyxFQUFFLEtBQUs7RUFDckIsY0FBYyxFQUFFLFNBQVM7Q0FrQzFCOztBQWpDQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFMekIsQUFBRCxVQUFPLENBQUM7SUFNSixTQUFTLEVBQUMsTUFBTTtHQWdDbkI7OztBQTdCQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFUekIsQUFBRCxVQUFPLENBQUM7SUFVSixPQUFPLEVBQUMsQ0FBQztJQUNULE9BQU8sRUFBRSxZQUFZO0lBQ3JCLFNBQVMsRUFBRSxNQUFNO0lBQ2pCLEtBQUssRUFBRSxJQUFJO0dBeUJkOzs7QUF2QkMsQUFBQSxVQUFVLENBZlgsVUFBTSxDQWVRO0VBRVgsUUFBUSxFQUFDLFFBQVE7RUFDakIsYUFBYSxFQUFDLE1BQU07Q0FjckI7O0FBakJELEF2RitFQSxVdUYvRVUsQ0FmWCxVQUFNLEF2RjhGSixNQUFNLENBQU07RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBbEdBLElBQU87Q0FtR2pCOztBdUZ0RkQsQXZGK0VBLFV1Ri9FVSxDQWZYLFVBQU0sQXZGOEZKLE1BQU0sQ3VGM0VHO0VBQ04sUUFBUSxFQUFDLFFBQVE7RUFDakIsR0FBRyxFQUFDLEdBQUc7RUFDUCxLQUFLLEVBQUUsSUFBSTtFQUNYLFVBQVUsRUFBQyxPQUFPO0VBQ2xCLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLE1BQU07RUFDbkIsS0FBSyxFQUFDLElBQUk7RUFDVixNQUFNLEVBQUMsSUFBSTtFQUNYLGNBQWMsRUFBRSxNQUFNO0VBQ3RCLFNBQVMsRUFBRSxhQUFhO0VBQ3hCLEtBQUssRTlGaEZMLE9BQU87QzhGaUZSOztBQUVILEFBQUEsU0FBUyxDQUFDLFVBQVUsQUFBQSxNQUFNLENBakMzQixVQUFNO0FBa0NMLFNBQVMsQ0FBQyxVQUFVLEFBQUEsTUFBTSxDQWxDM0IsVUFBTTtBQW1DTCxNQUFNLENBQUMsVUFBVSxBQUFBLE9BQU8sQ0FuQ3pCLFVBQU0sQ0FtQ3NCO0VBQ3pCLFdBQVcsRUFBQyxHQUFHO0NBQ2hCOztBQUdELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUR6QixBQUFELFNBQU0sQ0FBQztJQUVILFNBQVMsRUFBRSxNQUFNO0k1RnBGbkIsWUFBWSxFNEZxRkksTUFBTTtJNUZwRnRCLGFBQWEsRTRGb0ZHLE1BQU07R0FLdkI7OztBQUhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUx6QixBQUFELFNBQU0sQ0FBQztJQU1ILE9BQU8sRUFBQyxJQUFJO0dBRWY7OztBQUdILEFBQUEsS0FBSyxDQUFDO0VBQ0osV0FBVyxFQUFFLENBQUM7Q0FJZjs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFGMUIsQUFBQSxLQUFLLENBQUM7SUFHRixPQUFPLEVBQUMsSUFBSTtHQUVmOzs7QUFHQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEMUIsQUFBQSxRQUFRLENBQUM7SUFFTCxRQUFRLEVBQUMsUUFBUTtHQTZDcEI7OztBQTNDRSxBQUFELGNBQU8sQ0FBQztFQUNOLE9BQU8sRUFBRSxXQUFXO0VBQ3BCLFVBQVUsRUFBQyxNQUFNO0NBQ2xCOztBQUNBLEFBQUQsY0FBTyxDQUFDO0U1RmxETixRQUFRLEVBRHdCLFFBQVE7QzRGZ0V6Qzs7QUFiQSxBdkY2QkMsY3VGN0JLLEF2RjZCSixPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBcEJBLElBQU87Q0FxQmpCOztBdUZwQ0YsQXZGNkJDLGN1RjdCSyxBdkY2QkosT0FBTyxDTDlFSztFQUNULFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxHQUFHO0VBQ1IsSUFBSSxFQUFFLEdBQUc7RUFDVCxTQUFTLEVBQUUscUJBQXFCO0NBQ25DOztBNEYrQ0QsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBSHpCLEFBQUQsY0FBTyxDQUFDO0lBSUosUUFBUSxFQUFFLFFBQVE7SUFDbEIsR0FBRyxFQUFFLENBQUM7SUFDTixLQUFLLEVBQUUsTUFBTTtJQUNiLE1BQU0sRTlGN0ZPLE1BQU07SThGOEZuQixVQUFVLEVBQUUsU0FBUztHQUt4QjtFQUpHLEFBQUEsYUFBYSxBQUFBLFVBQVUsQUFBQSxJQUFLLENBdEdGLG1CQUFtQixDQXNHRyxJQUFLLENBdEdGLHNCQUFzQixFQTZGNUUsY0FBTSxDQVM0RTtJQUM3RSxLQUFLLEVBQUUsT0FBTztHQUNmOzs7QUFuQlAsQUFzQkUsUUF0Qk0sQ0FzQk4sUUFBUSxBQUFBLE9BQU8sQ0FBQztFQUNkLE9BQU8sRUFBQyxJQUFJO0VBQ1osSUFBSSxFQUFFLE9BQU87RUFDYixVQUFVLEVBQUUsQ0FBQztFQUNiLFdBQVcsRUFBQyxJQUFJO0VBQ2hCLGNBQWMsRUFBQyxDQUFDO0NBUWpCOztBQW5DSCxBQTRCSSxRQTVCSSxDQXNCTixRQUFRLEFBQUEsT0FBTyxDQU1iLGNBQWMsQ0FBQztFQUNiLEdBQUcsRUFBQyxJQUFJO0NBQ1Q7O0FBOUJMLEFBK0JJLFFBL0JJLENBc0JOLFFBQVEsQUFBQSxPQUFPLENBU2IsY0FBYyxDQUFDO0VBQ2IsS0FBSyxFQUFFLEtBQUs7RTVGeklkLFdBQVcsRTRGMElLLENBQUM7RTVGeklqQixjQUFjLEU0RnlJRSxDQUFDO0NBQ2hCOztBQWxDTCxBQXFDSSxRQXJDSSxBQW9DTCxNQUFNLENBQ0wsUUFBUSxDQUFDO0VBQ1AsT0FBTyxFQUFDLEtBQUs7Q0FDZDs7QUFFRixBQUFELGNBQU8sQ0FBQztFNUZsSk4sV0FBVyxFNEZtSkcsTUFBTTtFNUZsSnBCLGNBQWMsRTRGa0pBLE1BQU07Q0FJckI7O0FBTEEsQUFFQyxjQUZLLEdBQU4sY0FBTSxDQUVDO0VBQ0osVUFBVSxFQUFDLEdBQUcsQ0FBQyxLQUFLLEM5RmhLakIsd0JBQUk7QzhGaUtSOztBQUtGLEFBQUQsVUFBTyxDQUFDO0VBQ04sU0FBUyxFQUFFLE1BQU07RUFDakIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsY0FBYyxFQUFFLENBQUM7RUFDakIsV0FBVyxFQUFFLE1BQU07RUFDbkIsY0FBYyxFQUFFLElBQUk7Q0F3Q3JCOztBQXRDQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFQekIsQUFBRCxVQUFPLENBQUM7STVGNUZOLFFBQVEsRUFEd0IsUUFBUTtJNEZ1R3pDLFNBQVMsRUFBQyxPQUFPO0lBQ2QsUUFBUSxFQUFFLFFBQVE7SUFDbEIsR0FBRyxFQUFFLENBQUM7SUFDTixLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRTlGOUlPLE1BQU07SThGK0luQixVQUFVLEVBQUUsU0FBUztHQThCeEI7RUE3Q0EsQXZGYkMsVXVGYUssQXZGYkosT0FBTyxDQUFLO0lBekpiLFdBQVcsRUFBRSxVQUFVO0lBQ25CLHNCQUFzQixFQUFFLFdBQVc7SUFDbkMsdUJBQXVCLEVBQUUsU0FBUztJQUN0QyxVQUFVLEVBQUUsTUFBTTtJQUNsQixZQUFZLEVBQUUsTUFBTTtJQUNwQixXQUFXLEVBQUUsTUFBTTtJQUVuQixlQUFlLEVBQUUsSUFBSTtJQUNyQixjQUFjLEVBQUUsSUFBSTtJQXVKaEIsT0FBTyxFQTFCQSxJQUFPO0dBMkJqQjtFdUZNRixBdkZiQyxVdUZhSyxBdkZiSixPQUFPLENMOUVLO0lBQ1QsUUFBUSxFQUFFLFFBQVE7SUFDbEIsR0FBRyxFQUFFLEdBQUc7SUFDUixJQUFJLEVBQUUsR0FBRztJQUNULFNBQVMsRUFBRSxxQkFBcUI7R0FDbkM7RTRGdUdDLEFBQUEsYUFBYSxBQUFBLFVBQVUsQUFBQSxJQUFLLENBeEpGLG1CQUFtQixDQXdKRyxJQUFLLENBeEpGLHNCQUFzQixFQXVJNUUsVUFBTSxDQWlCNEU7SUFDN0UsS0FBSyxFQUFFLEtBQUs7R0FDYjtFQUVELEFBQ0Usc0JBRG9CLENBckJ6QixVQUFNLEFBc0JBLE9BQU8sQ0FBQztJQUNQLEtBQUssRTlGNUxOLElBQUk7RzhGNkxKO0VBSEgsQUFLRSxzQkFMb0IsQ0FyQnpCLFVBQU0sQUEwQkEsTUFBTSxDQUFDO0lBQ04sT0FBTyxFQUFFLEVBQUU7SUFDWCxLQUFLLEVBQUUsTUFBTTtJQUNiLE1BQU0sRUFBRSxNQUFNO0lBQ2QsVUFBVSxFOUZwTVgsSUFBSTtJOEZxTUgsT0FBTyxFQUFFLEtBQUs7SUFDZCxRQUFRLEVBQUUsUUFBUTtJQUNsQixHQUFHLEVBQUUsR0FBRztJQUNSLElBQUksRUFBRSxHQUFHO0lBQ1QsU0FBUyxFQUFFLHFCQUFxQjtJQUNoQyxPQUFPLEVBQUUsRUFBRTtJQUNYLGFBQWEsRUFBRSxHQUFHO0dBQ25CO0VBdENOLEFBeUNHLFVBekNHLENBeUNILElBQUksQ0FBQztJQUNILE9BQU8sRUFBRSxJQUFJO0dBQ2Q7OztBQTVDUCxBQStDRSxJQS9DRSxDQStDRixrQkFBa0IsQ0FBQztFQUNqQixPQUFPLEVBQUUsWUFBWTtFQUNyQixXQUFXLEVBQUUsR0FBRztFQUNoQixVQUFVLEVBQUUsTUFBTTtFQUNsQixjQUFjLEVBQUUsTUFBTTtFQUN0QixjQUFjLEVBQUUsU0FBUztFQUN6QixPQUFPLEVBQUUsSUFBSTtFQUNiLGdCQUFnQixFOUZsTlosT0FBTztFOEZtTlgsS0FBSyxFOUY1TkEsSUFBSTtFOEY2TlQsa0JBQWtCLEVBQUUsNkJBQTZCO0VBQ2pELFVBQVUsRUFBRSw2QkFBNkI7RUFDekMsV0FBVyxFQUFFLE1BQU07RUFDbkIsV0FBVyxFQUFFLElBQUk7Q0FDbEI7O0FBQ0QsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBN0QxQixBQStDRSxJQS9DRSxDQStDRixrQkFBa0IsQ0FlRztJQUNqQixPQUFPLEVBQUUsT0FBTztJQUNoQixnQkFBZ0IsRUFBRSxPQUFPO0dBQzFCOzs7QUFJRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFyRTVCLEFBb0VFLElBcEVFLENBb0VGLFFBQVEsQ0FBQztJQUVMLE9BQU8sRUFBRSxlQUFlO0dBRTNCOzs7QUFFSCxBQUFBLGlCQUFpQixDQUFDO0VBQ2hCLEtBQUssRTlGdk9DLE9BQU87RUVPWCxZQUFZLEU0RmlPQSxJQUFJO0U1RmhPaEIsYUFBYSxFNEZnT0QsSUFBSTtFQUNsQixjQUFjLEVBQUUsU0FBUztFQUN6QixPQUFPLEVBQUUsS0FBSztFQUNkLFVBQVUsRUFBQyxNQUFNO0NBSWxCOztBQUhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQU4xQixBQUFBLGlCQUFpQixDQUFDO0lBT2QsT0FBTyxFQUFFLElBQUk7R0FFaEI7OztBQUVELEFBQUEsU0FBUyxDQUFDO0VBQ1IsUUFBUSxFQUFDLFFBQVE7RUFDakIsR0FBRyxFQUFDLElBQUk7RUFDUixJQUFJLEVBQUMsR0FBRztFQUNSLFNBQVMsRUFBRSxnQkFBZ0I7RUFDM0IsT0FBTyxFQUFDLEtBQUs7RUFDYixLQUFLLEVBQUUsS0FBSztFQUNaLE9BQU8sRUFBRSxDQUFDO0VBQ1YsVUFBVSxFQUFHLGtCQUFrQjtDQThCaEM7O0FBN0JDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQVQxQixBQUFBLFNBQVMsQ0FBQztJQVVOLEdBQUcsRUFBQyxPQUFPO0lBQ1gsT0FBTyxFQUFFLENBQUM7R0EyQmI7RUExQkcsQUFBQSxhQUFhLEFBQUEsVUFBVSxBQUFBLElBQUssQ0F2T0EsbUJBQW1CLENBdU9DLElBQUssQ0F2T0Esc0JBQXNCLEVBMk4vRSxTQUFTLENBWTBFO0lBQzdFLEdBQUcsRUFBQyxJQUFJO0lBQ1IsS0FBSyxFQUFDLEtBQUs7R0FDWjs7O0FBRUgsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBTHRCLEFBQUEsYUFBYSxBQUFBLFVBQVUsQUFBQSxJQUFLLENBdk9BLG1CQUFtQixDQXVPQyxJQUFLLENBdk9BLHNCQUFzQixFQTJOL0UsU0FBUyxDQWtCMEU7SUFDN0UsS0FBSyxFQUFDLEtBQUs7R0FDWjs7O0FBRUgsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLEtBQUs7RUF0QmpELEFBQUEsU0FBUyxDQUFDO0lBdUJOLEtBQUssRUFBRSxJQUFJO0dBZWQ7OztBQWJDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUN0QixBQUFBLFNBQVMsQ0ExQmIsU0FBUztFQTJCTCxhQUFhLENBM0JqQixTQUFTO0VBNEJMLDRCQUE0QixDQTVCaEMsU0FBUztFQTZCTCxTQUFTLENBN0JiLFNBQVM7RUE4QkwsaUJBQWlCLENBOUJyQixTQUFTLENBOEJlO0lBQ2xCLEtBQUssRUFBRSxJQUFJO0lBQ1gsR0FBRyxFQUFFLElBQUk7R0FDVjtFQUNELEFBQUEsZUFBZSxDQWxDbkIsU0FBUyxDQWtDYTtJQUNoQixHQUFHLEVBQUMsS0FBSztHQUNWOzs7QUFJTCxBQUFBLFlBQVksQ0FBQztFQUNYLFVBQVUsRTlGbFNILElBQUk7RThGbVNYLE1BQU0sRUFBQyxJQUFJO0VBQ1gsS0FBSyxFN0ZuU0csVUFBOEI7RTZGb1N0QyxNQUFNLEU3RnBTRSxVQUE4QjtFNkZxU3RDLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE9BQU8sRUFBQyxLQUFLO0NBMERkOztBQXhERyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEMUIsQUFBQSxJQUFJLENBUE4sWUFBWSxDQU9IO0lBRUgsT0FBTyxFQUFDLElBQUk7R0FFZjs7O0FBWEgsQUFZRSxZQVpVLEFBWVQseUJBQXlCLENBQUM7RUFDekIsS0FBSyxFOUYvU0EsSUFBSTtFOEZnVFQsU0FBUyxFQUFFLGVBQWU7RTVGdE8xQixRQUFRLEVBRHdCLFFBQVE7QzRGME96Qzs7QUFqQkgsQXZGeklJLFl1RnlJUSxBQVlULHlCQUF5QixBdkZySnZCLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUEvRkEsSUFBTztDQWdHakI7O0F1RmtJTCxBdkZ6SUksWXVGeUlRLEFBWVQseUJBQXlCLEF2RnJKdkIsT0FBTyxDTDlFSztFQUNULFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxHQUFHO0VBQ1IsSUFBSSxFQUFFLEdBQUc7RUFDVCxTQUFTLEVBQUUscUJBQXFCO0NBQ25DOztBNEZrTkwsQUFtQkksWUFuQlEsQ0FrQlYsU0FBUyxDQUNQLElBQUksQ0FBQztFQUlILE9BQU8sRUFBRSxLQUFLO0VBQ2QsS0FBSyxFQUpJLElBQUk7RUFLYixNQUFNLEVBSkksR0FBRztFQUtiLGdCQUFnQixFOUY1VGIsSUFBSTtFOEY2VFAsUUFBUSxFQUFFLFFBQVE7RUFDbEIsVUFBVSxFQUFFLHNCQUFzQjtFQUNsQyxJQUFJLEVBQUUsR0FBRztFQUNULEdBQUcsRUFBRSxHQUFHO0VBQ1IsV0FBVyxFQUFFLEtBQUs7RUFDbEIsVUFBVSxFQUFFLElBQUk7Q0E4QmpCOztBQTlETCxBQWlDTSxZQWpDTSxDQWtCVixTQUFTLENBQ1AsSUFBSSxBQWNELE9BQU8sRUFqQ2QsWUFBWSxDQWtCVixTQUFTLENBQ1AsSUFBSSxBQWVELE1BQU0sQ0FBQztFQUNOLE9BQU8sRUFBRSxFQUFFO0VBQ1gsT0FBTyxFQUFFLEtBQUs7RUFDZCxLQUFLLEVBakJFLElBQUk7RUFrQlgsTUFBTSxFQWpCRSxHQUFHO0VBa0JYLGdCQUFnQixFOUZ6VWYsSUFBSTtFOEYwVUwsUUFBUSxFQUFFLFFBQVE7RUFDbEIsVUFBVSxFQUFFLHNCQUFzQjtDQUNuQzs7QUExQ1AsQUEyQ00sWUEzQ00sQ0FrQlYsU0FBUyxDQUNQLElBQUksQUF3QkQsT0FBTyxDQUFDO0VBQ1AsR0FBRyxFQUFDLElBQUk7Q0FDVDs7QUE3Q1AsQUE4Q00sWUE5Q00sQ0FrQlYsU0FBUyxDQUNQLElBQUksQUEyQkQsTUFBTSxDQUFDO0VBQ04sR0FBRyxFQUFDLEdBQUc7Q0FDUjs7QUFDRCxBQUFBLG1CQUFtQixDQWpEekIsWUFBWSxDQWtCVixTQUFTLENBQ1AsSUFBSSxDQThCb0I7RUFDcEIsZ0JBQWdCLEVBQUUsV0FBVztDQVc5Qjs7QUFaRCxBQUVFLG1CQUZpQixDQWpEekIsWUFBWSxDQWtCVixTQUFTLENBQ1AsSUFBSSxBQWdDQyxPQUFPLENBQUM7RUFDUCxTQUFTLEVBQUUsYUFBYTtFQUN4QixHQUFHLEVBQUUsQ0FBQztFQUNOLElBQUksRUFBRSxDQUFDO0NBQ1I7O0FBTkgsQUFPRSxtQkFQaUIsQ0FqRHpCLFlBQVksQ0FrQlYsU0FBUyxDQUNQLElBQUksQUFxQ0MsTUFBTSxDQUFDO0VBQ04sU0FBUyxFQUFFLGNBQWM7RUFDekIsR0FBRyxFQUFFLENBQUM7RUFDTixJQUFJLEVBQUUsQ0FBQztDQUNSOztBQU9QLEFBQUEsU0FBUyxDQURYLFVBQVUsQUFDRyxNQUFNO0FBQ2pCLFNBQVMsQ0FGWCxVQUFVLEFBRUcsTUFBTTtBQUNqQixNQUFNLENBSFIsVUFBVSxBQUdBLE9BQU8sQ0FBQztFQUNkLFFBQVEsRUFBQyxRQUFRO0NBU2xCOztBQVpELEFBSUUsU0FKTyxDQURYLFVBQVUsQUFDRyxNQUFNLEFBSWQsT0FBTztBQUhWLFNBQVMsQ0FGWCxVQUFVLEFBRUcsTUFBTSxBQUdkLE9BQU87QUFGVixNQUFNLENBSFIsVUFBVSxBQUdBLE9BQU8sQUFFWixPQUFPLENBQUM7RUFDUCxPQUFPLEVBQUMsRUFBRTtFNUY1TFosS0FBSyxFQUFFLENBQUM7RUFDUixNQUFNLEVBQUUsQ0FBQztFQXdCTCxXQUFXLEVBQUUsTUFBUSxDQUFDLEtBQUssQ0FBQyxXQUFXO0VBQ3ZDLFlBQVksRUFBRSxNQUFRLENBQUMsS0FBSyxDQUFDLFdBQVc7RUFJcEMsYUFBYSxFNEYrSm1DLE1BQU0sQzVGL0ovQixLQUFLLENGak0zQixPQUFPO0U4RmlXZCxRQUFRLEVBQUUsUUFBUTtFQUNsQixJQUFJLEVBQUUsR0FBRztFQUNULE1BQU0sRUFBRSxJQUFJO0VBQ1osU0FBUyxFQUFFLGdCQUFnQjtDQUM1Qjs7QUFHTCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0VBQ25DLEFBQUEsVUFBVSxDQUFBO0lBQ1YsT0FBTyxFQUFFLEtBQUs7R0FDYjtFQUNELEFBQUEsVUFBVSxFQUFFLFFBQVEsQ0FBQyxRQUFRLEFBQUEsT0FBTyxDQUFBO0lBQ3BDLE9BQU8sRUFBRSxJQUFJO0dBQ1o7OztBQUVGLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07RUFQbkMsQUFBQSxVQUFVLENBUUE7SUFDVixPQUFPLEVBQUUsSUFBSTtHQUNaO0VBQ0QsQUFBQSxVQUFVLENBQUE7SUFDVixPQUFPLEVBQUUsS0FBSyxDQUFBLFVBQVU7R0FDdkI7OztBQ3ZZRjs7Z0ZBRWdGO0FBR2hGLEFBQUEsV0FBVyxDQUFDO0VBRVYsZ0JBQWdCLEUvRkRULElBQUk7RStGRVgsUUFBUSxFQUFDLFFBQVE7RUFDakIsT0FBTyxFQUFDLENBQUM7RUFDVCxLQUFLLEVBQUUsSUFBSTtFN0ZZVCxZQUFZLEVEZE4sVUFBOEI7RUNlcEMsYUFBYSxFRGZQLFVBQThCO0M4RnVJdkM7O0FBMUlELEEvR1FFLFcrR1JTLEEvR1FSLE9BQU8sRStHUlYsV0FBVyxBL0dTUixNQUFNLENBQUM7RUFDTixPQUFPLEVBQUUsR0FBRztFQUNaLE9BQU8sRUFBRSxLQUFLO0NBQ2Y7O0ErR1pILEEvR2FFLFcrR2JTLEEvR2FSLE1BQU0sQ0FBQztFQUNOLEtBQUssRUFBRSxJQUFJO0NBQ1o7O0ErR1JELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQVAxQixBQUFBLFdBQVcsQ0FBQztJQVFSLE9BQU8sRUFBQyxJQUFJO0dBa0lmO0VBaklHLEFBQUEsZUFBZSxDQVRuQixXQUFXLENBU1c7STdGUWxCLFlBQVksRTZGUEksSUFBSTtJN0ZRcEIsYUFBYSxFNkZSRyxJQUFJO0lBQ2xCLFFBQVEsRUFBQyxLQUFLO0lBQ2QsSUFBSSxFQUFDLENBQUM7SUFDTixPQUFPLEVBQUMsS0FBSztJQUNiLGdCQUFnQixFL0ZKZCxPQUFPO0krRktULE1BQU0sRUFBRSxDQUFDO0lBQ1QsMEJBQTBCLEVBQUUsS0FBSztJQUNqQyxXQUFXLEVBQUUsU0FBUztJQUV0QixVQUFVLEVBQUUscUJBQXFCO0lBQ2pDLFNBQVMsRUFBRSxhQUFhO0dBQ3pCO0VBQ0QsQUFBQSxlQUFlLEFBQUEsNEJBQTRCLENBdEIvQyxXQUFXLENBc0JzQztJQUUzQyxVQUFVLEVBQUUsdUJBQXVCO0lBQ25DLFNBQVMsRUFBRSxxQ0FBcUM7R0FDakQ7OztBQUVILEFBQUEsb0JBQW9CLENBNUJ0QixXQUFXLENBNEJjO0VBQ3JCLFFBQVEsRUFBQyxLQUFLO0VBQ2QsR0FBRyxFQUFDLENBQUM7RUFDTCxJQUFJLEVBQUMsQ0FBQztFN0ZkTixZQUFZLEU2RmVFLENBQUM7RTdGZGYsYUFBYSxFNkZjQyxDQUFDO0VBQ2YsT0FBTyxFQUFDLEVBQUU7Q0FDWDs7QUFDRCxBQUFBLGFBQWEsQ0FuQ2YsV0FBVztBQW9DVCxlQUFlLENBcENqQixXQUFXLENBb0NTO0U3Rm5CaEIsWUFBWSxFRGROLElBQThCO0VDZXBDLGFBQWEsRURmUCxJQUE4QjtDOEZtQ3JDOztBQUNBLEFBQUQsaUJBQU8sQ0FBQztFQUNOLE9BQU8sRUFBQyxJQUFJO0VBQ1osZUFBZSxFQUFFLGFBQWE7RUFDOUIsV0FBVyxFQUFFLE1BQU07Q0FpQ3BCOztBQWhDQyxBQUFBLGFBQWEsQ0FKZCxpQkFBTTtBQUtMLGVBQWUsQ0FMaEIsaUJBQU0sQ0FLYTtFM0czQ3BCLFlBQVksRUFBRSxJQUFJO0VBQ2xCLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLFlBQVksRUFBRyxJQUFvQjtFQUNuQyxhQUFhLEVBQUUsSUFBbUI7QzJHbUQvQjs7QUFaRCxBL0duQ0YsYStHbUNlLENBSmQsaUJBQU0sQS9HL0JOLE9BQU8sRStHbUNOLGFBQWEsQ0FKZCxpQkFBTSxBL0c5Qk4sTUFBTTtBK0dtQ0wsZUFBZSxDQUxoQixpQkFBTSxBL0cvQk4sT0FBTztBK0dvQ04sZUFBZSxDQUxoQixpQkFBTSxBL0c5Qk4sTUFBTSxDQUFDO0VBQ04sT0FBTyxFQUFFLEdBQUc7RUFDWixPQUFPLEVBQUUsS0FBSztDQUNmOztBK0crQkMsQS9HOUJGLGErRzhCZSxDQUpkLGlCQUFNLEEvRzFCTixNQUFNO0ErRytCTCxlQUFlLENBTGhCLGlCQUFNLEEvRzFCTixNQUFNLENBQUM7RUFDTixLQUFLLEVBQUUsSUFBSTtDQUNaOztBK0crQkcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBSDFCLEFBQUEsYUFBYSxDQUpkLGlCQUFNO0VBS0wsZUFBZSxDQUxoQixpQkFBTSxDQUthO0lBR2QsS0FBSyxFMUlvU2tCLEtBQTRCO0cwSTVSdEQ7OztBQU5DLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQU4xQixBQUFBLGFBQWEsQ0FKZCxpQkFBTTtFQUtMLGVBQWUsQ0FMaEIsaUJBQU0sQ0FLYTtJQU1kLEtBQUssRTFJc1NrQixLQUE0QjtHMElqU3REOzs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07RUFUM0IsQUFBQSxhQUFhLENBSmQsaUJBQU07RUFLTCxlQUFlLENBTGhCLGlCQUFNLENBS2E7SUFTZCxLQUFLLEUxSXdTa0IsTUFBNkI7RzBJdFN2RDs7O0FBQ0QsQUFBQSxvQkFBb0IsQ0FqQnJCLGlCQUFNLENBaUJrQjtFQUNyQixLQUFLLEVBQUMsSUFBSTtFN0Z4Q1osWUFBWSxFNkZ5Q0ksQ0FBQztFN0Z4Q2pCLGFBQWEsRTZGd0NHLENBQUM7Q0FDaEI7O0FBQ0QsQUFBQSxzQkFBc0IsQ0FyQnZCLGlCQUFNO0FBc0JMLDJCQUEyQixDQXRCNUIsaUJBQU0sQ0FzQnlCO0U3RnZEOUIsV0FBVyxFQURPLElBQUk7RUFFdEIsWUFBWSxFQUZNLElBQUk7RTZGMERwQixTQUFTLEVBQUMsTUFBTTtDQUNqQjs7QUFDRCxBQUFBLDRCQUE0QixDQTFCN0IsaUJBQU0sQ0EwQjBCO0U3RjNEL0IsV0FBVyxFQURPLElBQUk7RUFFdEIsWUFBWSxFQUZNLElBQUk7RTZGOERwQixTQUFTLEVBQUMsS0FBSztDQUNoQjs7QUFFRCxBQUFBLHNCQUFzQixBQUFBLG9CQUFvQixDQS9CM0MsaUJBQU07QUFnQ0wsMkJBQTJCLEFBQUEsb0JBQW9CLENBaENoRCxpQkFBTTtBQWlDTCw0QkFBNEIsQUFBQSxvQkFBb0IsQ0FqQ2pELGlCQUFNLENBaUM4QztFQUNqRCxTQUFTLEVBQUMsSUFBSTtDQUNmOztBQUVGLEFBQUQsaUJBQU8sQ0FBQztFQUNOLFNBQVMsRUFBQyxDQUFDO0VBQ1gsVUFBVSxFQUFFLE1BQU07RUFDbEIsY0FBYyxFQUFFLE1BQU07RUFDdEIsT0FBTyxFQUFFLFlBQVk7RUFDckIsV0FBVyxFOUY5RUwsVUFBOEI7QzhGa0dyQzs7QUF6QkEsQUFNQyxpQkFOSyxHQUFOLGlCQUFNLENBTUM7RUFDSixRQUFRLEVBQUUsUUFBUTtDQWFuQjs7QUFaQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFSM0IsQUFTSyxpQkFUQyxHQUFOLGlCQUFNLEFBU0EsT0FBTyxDQUFDO0lBQ1AsT0FBTyxFQUFDLEVBQUU7SUFDVixRQUFRLEVBQUUsUUFBUTtJQUNsQixPQUFPLEVBQUMsS0FBSztJQUNiLGdCQUFnQixFL0Z2RmpCLElBQUk7SStGd0ZILEtBQUssRUFBQyxHQUFHO0lBQ1QsTUFBTSxFQUFDLE1BQU07SUFDYixHQUFHLEVBQUMsR0FBRztJQUNQLFNBQVMsRUFBRSxnQkFBZ0I7R0FDNUI7OztBQUdMLEFBQUEsMkJBQTJCLENBckI1QixpQkFBTTtBQXNCTCw0QkFBNEIsQ0F0QjdCLGlCQUFNLENBc0IwQjtFQUM3QixLQUFLLEVBQUMsTUFBTTtDQUNiOztBQUVGLEFBQUQsaUJBQU8sQ0FBQztFQUNOLE9BQU8sRUFBQyxZQUFZO0VBQ3BCLGNBQWMsRUFBRSxNQUFNO0VBQ3RCLE1BQU0sRTlGdEdBLFVBQThCO0U4RnVHcEMsV0FBVyxFOUZ2R0wsVUFBOEI7RThGd0dwQyxNQUFNLEVBQUMsTUFBTTtFN0YxRmIsWUFBWSxFNkYyRkUsSUFBSTtFN0YxRmxCLGFBQWEsRTZGMEZDLElBQUk7RUFDbEIsY0FBYyxFQUFFLFNBQVM7RUFDekIsU0FBUyxFQUFDLE1BQU07RUFDaEIsY0FBYyxFQUFFLEtBQUs7Q0FVdEI7O0FBbkJBLEFBVUMsaUJBVkssQUFVSixPQUFPLENBQUM7RUFDUCxnQkFBZ0IsRS9GdkdkLE9BQU87RStGd0dULEtBQUssRS9GakhGLElBQUk7QytGa0hSOztBQWJGLEFBY0MsaUJBZEssR0FjSCxJQUFJLENBQUM7RUFDTCxPQUFPLEVBQUUsWUFBWTtFQUNyQixjQUFjLEVBQUUsTUFBTTtFQUN0QixXQUFXLEVBQUUsR0FBRztDQUNqQjs7QUFHRixBQUFELHVCQUFhLENBQUM7RUFDWixPQUFPLEVBQUMsSUFBSTtDQU1iOztBQUxDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUN0QixBQUFBLG9CQUFvQixDQUh2Qix1QkFBWSxDQUdjO0lBQ3JCLE9BQU8sRUFBQyxLQUFLO0dBQ2Q7OztBQUdKLEFBQUQsbUJBQVMsQ0FBQztFQUNSLFdBQVcsRUFBRSxNQUFNO0NBS3BCOztBQUpDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUZ6QixBQUFELG1CQUFTLENBQUM7SUFHTixTQUFTLEVBQUUsTUFBTTtJN0ZySG5CLFlBQVksRTZGc0hJLE1BQU07STdGckh0QixhQUFhLEU2RnFIRyxNQUFNO0dBRXZCOzs7QUFHSCxBQUVJLENBRkgsQUFBQSxpQkFBaUIsQUFDZixPQUFPLEFBQ0wsTUFBTSxDQUFDO0VBQ04sS0FBSyxFL0Y5SUYsSUFBSTtDK0YrSVI7O0FBSkwsQUFNRSxDQU5ELEFBQUEsaUJBQWlCLEFBTWYsTUFBTSxDQUFDO0VBQ04sS0FBSyxFL0Z6SUQsT0FBTztDK0YwSVo7O0FBSUQsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRDFCLEFBQUEsbUJBQW1CLENBQUM7SUFFaEIsTUFBTSxFQUFDLENBQUMsQ0FBQSxVQUFVO0dBS3JCOzs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFKMUIsQUFBQSxtQkFBbUIsQ0FBQztJQUtoQixhQUFhLEVBQUMsTUFBTTtHQUV2Qjs7O0FBR0MsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRDFCLEFBQUEsMEJBQTBCLENBQUM7SUFFdkIsT0FBTyxFQUFDLElBQUk7R0FFZjs7O0FBQ0QsQUFBQSxrQkFBa0IsQ0FBQztFQUNqQixRQUFRLEVBQUMsUUFBUTtFQUNqQixPQUFPLEVBQUMsQ0FBQztFQUNULGdCQUFnQixFL0Z2S1QseUJBQUk7QytGdU1aOztBQS9CQyxBQUFBLDJCQUEyQixDQUo3QixrQkFBa0IsQ0FJYztFQUM1QixRQUFRLEVBQUMsS0FBSztFQUNkLEdBQUcsRUFBQyxDQUFDO0VBQ0wsSUFBSSxFQUFDLENBQUM7RUFDTixLQUFLLEVBQUMsSUFBSTtDQUNYOztBQUNBLEFBQUQsMEJBQVMsQ0FBQztFQUNSLGFBQWEsRUFBQyxTQUFTO0VBQ3ZCLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLE9BQU8sRUFBQyxLQUFLO0VBQ2IsT0FBTyxFQUFDLFNBQVM7RUFDakIsY0FBYyxFQUFFLFNBQVM7RUFDekIsU0FBUyxFQUFDLE1BQU07RUFDaEIsY0FBYyxFQUFFLEtBQUs7RUFDckIsS0FBSyxFQUFDLElBQUk7RUFDVixXQUFXLEVBQUMsR0FBRztDQUNoQjs7QUFDQSxBeEZoQ0MsK0J3RmdDWSxBeEZoQ1gsTUFBTSxDQUFNO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQS9DQSxJQUFPO0NBZ0RqQjs7QXdGeUJGLEF4RmhDQywrQndGZ0NZLEF4RmhDWCxNQUFNLEN3RmtDQztFQUNOLGNBQWMsRUFBRSxNQUFNO0NBQ3ZCOztBQXpCTCxBQTJCRSxrQkEzQmdCLENBMkJoQixpQkFBaUIsQ0FBQztFQUNoQixPQUFPLEVBQUMsSUFBSTtFQUNaLGFBQWEsRUFBQyxHQUFHLENBQUMsS0FBSyxDL0ZoTWxCLElBQUk7RStGaU1ULFVBQVUsRUFBRSxNQUFNO0NBSW5COztBQUhDLEFBQUEsNEJBQTRCLENBL0JoQyxrQkFBa0IsQ0EyQmhCLGlCQUFpQixDQUlnQjtFQUM3QixPQUFPLEVBQUMsS0FBSztDQUNkOztBQzNNTDs7Z0ZBRWdGO0FBTWhGLEFBQUEsS0FBSyxDQUFDO0VBQ0osT0FBTyxFQUFDLElBQUk7RUFDWixRQUFRLEVBQUUsS0FBSztFQUNmLEdBQUcsRUFBRSxNQUFNO0VBQ1gsSUFBSSxFL0ZKSSxVQUE4QjtFK0ZLdEMsS0FBSyxFL0ZMRyxVQUE4QjtFK0ZNdEMsT0FBTyxFQUFFLElBQUk7RUFDYixNQUFNLEUvRlBFLFVBQThCLEMrRk94QixLQUFLLENoR0VSLE9BQU87RWdHRGxCLGdCQUFnQixFaEdWVCxJQUFJO0VnR1dYLE9BQU8sRUFBQyxJQUFJO0VBQ1osUUFBUSxFQUFDLE1BQU07Q0FrQmhCOztBQWhCQyxBQUFBLFNBQVMsQ0FBQyxVQUFVLEFBQUEsTUFBTSxDQVo1QixLQUFLO0FBYUgsU0FBUyxDQUFDLFVBQVUsQUFBQSxNQUFNLENBYjVCLEtBQUs7QUFjSCxNQUFNLENBQUMsVUFBVSxBQUFBLE9BQU8sQ0FkMUIsS0FBSyxDQWN3QjtFQUN6QixPQUFPLEVBQUMsS0FBSztDQUNkOztBQUVELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQWxCMUIsQUFBQSxLQUFLLENBQUM7SUFtQkYsT0FBTyxFQUFDLElBQUk7R0FTZjs7O0FBUEUsQUFBRCxZQUFRLENBQUM7RUFDUCxNQUFNLEVBQUMsSUFBSTtFQUNYLFFBQVEsRUFBQyxRQUFRO0NBQ2xCOztBQUNBLEFBQUQsWUFBUSxDQUFDO0VBQ1AsT0FBTyxFQUFDLElBQUk7Q0FDYjs7QUFHSCxBQUFBLFNBQVMsQ0FBQztFQUNSLE9BQU8sRUFBQyxJQUFJO0VBQ1osTUFBTSxFQUFFLElBQUk7Q0EyRGI7O0FBMURFLEFBQUQsZUFBTyxDQUFDO0VBQ04sU0FBUyxFQUFDLENBQUM7Q0FDWjs7QUFDQSxBQUFELHFCQUFhLENBQUM7RUFDWixVQUFVLEVBQUMsTUFBTTtFQUNqQixVQUFVLEVBQUMsSUFBSTtFQUNmLE1BQU0sRUFBRSxJQUFJO0NBQ2I7O0FBQ0EsQUFBRCxlQUFPLENBQUU7RUFDUCxhQUFhLEVBQUMsSUFBSTtDQUNuQjs7QUFDQSxBQUFELGVBQU8sQ0FBQztFQUNOLFVBQVUsRUFBQyxJQUFJO0NBV2hCOztBQVZDLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtFQUYxQixBQUFELGVBQU8sQ0FBQztJQUdKLFVBQVUsRUFBQyxJQUFJO0dBU2xCOzs7QUFaQSxBQUtDLGVBTEssQUFLSixZQUFZLENBQUM7RUFDWixVQUFVLEVBQUMsQ0FBQztDQUNiOztBQVBGLEFBU0MsZUFUSyxBQVNKLE9BQU8sQ0FBQztFQUNQLFdBQVcsRUFBQyxHQUFHO0NBQ2hCOztBQUVGLEFBQUQsZUFBTyxDQUFDO0VBQ04sU0FBUyxFQUFDLElBQUk7Q0FJZjs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07RUFGMUIsQUFBRCxlQUFPLENBQUM7SUFHSixTQUFTLEVBQUMsSUFBSTtHQUVqQjs7O0FBSUEsQUFDQyxrQkFEUSxBQUNQLE9BQU8sQ0FBQztFQUNQLFdBQVcsRUFBQyxHQUFHO0NBQ2hCOztBQUVGLEFBQUQsa0JBQVUsQ0FBQztFQUVULEtBQUssRWhHbEVELE9BQU87RWdHbUVYLGNBQWMsRUFBQyxTQUFTO0VBQ3hCLFNBQVMsRUFBQyxJQUFJO0NBV2Y7O0FBZkEsQXpGZ0ZDLGtCeUZoRlEsQXpGZ0ZQLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUFsR0EsSUFBTztDQW1HakI7O0F5RnZGRixBekZnRkMsa0J5RmhGUSxBekZnRlAsT0FBTyxDeUYzRUM7RUFDUCxTQUFTLEVBQUMsTUFBTTtFQUNoQixLQUFLLEVoRy9FRixJQUFJO0NnR2dGUjs7QUFDRCxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07RUFUMUIsQUFBRCxrQkFBVSxDQUFDO0lBVVAsU0FBUyxFQUFDLE1BQU07R0FLbkI7RUFmQSxBekZnRkMsa0J5RmhGUSxBekZnRlAsT0FBTyxDeUZyRUc7SUFDUCxTQUFTLEVBQUMsSUFBSTtHQUNmOzs7QUFHSixBQUFELGNBQU0sQ0FBQztFQUNMLFdBQVcsRUFBQyxHQUFHO0VBQ2YsU0FBUyxFQUFDLE1BQU07Q0FDakI7O0FBR0gsQUFBQSxZQUFZLENBQUM7RUFDWCxVQUFVLEVBQUMsSUFBSTtFQUNmLEtBQUssRWhHNUZLLE9BQU87Q2dHZ0psQjs7QUFuREUsQUFBRCxtQkFBUSxDQUFDO0VBQ1AsU0FBUyxFQUFDLE1BQU07RUFDaEIsV0FBVyxFQUFDLEdBQUc7Q0FJaEI7O0FBSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBSHpCLEFBQUQsbUJBQVEsQ0FBQztJQUlMLFNBQVMsRUFBQyxJQUFJO0dBRWpCOzs7QUFDQSxBQUFELGtCQUFPLENBQUM7RUFDTixVQUFVLEVBQUMsSUFBSTtDQUNoQjs7QUFDQSxBQUFELGtCQUFPLENBQUM7RUFDTixPQUFPLEVBQUMsWUFBWTtDQU1yQjs7QUFKRyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07RUFINUIsQUFFQyxrQkFGSyxHQUFOLGtCQUFNLENBRUM7SUFFRixXQUFXLEVBQUMsTUFBTTtHQUVyQjs7O0FBRUYsQUFBRCxrQkFBTyxDQUFDO0U5RjFDTixRQUFRLEVBRHdCLFFBQVE7RThGNkN4QyxPQUFPLEVBQUMsS0FBSztFQUNiLFNBQVMsRUFBQyxNQUFNO0VBQ2hCLEtBQUssRUFBQyxNQUFNO0VBQ1osTUFBTSxFQUFDLE1BQU07Q0EyQmQ7O0FBaENBLEE5RnpDQyxrQjhGeUNLLEE5RnpDSixPQUFPLENBQUs7RUFDVCxRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsR0FBRztFQUNSLElBQUksRUFBRSxHQUFHO0VBQ1QsU0FBUyxFQUFFLHFCQUFxQjtDQUNuQzs7QThGb0NGLEFBTUMsa0JBTkssQUFNSixNQUFNLENBQUM7RUFDTixLQUFLLEVoR2hIRSxPQUFPO0NnR2lIZjs7QUFDRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFUekIsQUFBRCxrQkFBTyxDQUFDO0lBVUosU0FBUyxFQUFDLE1BQU07SUFDaEIsS0FBSyxFQUFDLE1BQU07SUFDWixNQUFNLEVBQUMsTUFBTTtHQW9CaEI7OztBQWhDQSxBekZxQ0Msa0J5RnJDSyxBQWNKLFNBQVMsQXpGdUJULE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUF4R0EsSUFBTztDQXlHakI7O0F5RjVDRixBekZxQ0Msa0J5RnJDSyxBQWlCSixZQUFZLEF6Rm9CWixPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBekZBLElBQU87Q0EwRmpCOztBeUY1Q0YsQXpGcUNDLGtCeUZyQ0ssQUFvQkosUUFBUSxBekZpQlIsT0FBTyxDQUFLO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQXZCQSxJQUFPO0NBd0JqQjs7QXlGNUNGLEF6RnFDQyxrQnlGckNLLEFBdUJKLFVBQVUsQXpGY1YsT0FBTyxDQUFLO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQXJEQSxJQUFPO0NBc0RqQjs7QXlGNUNGLEF6RnFDQyxrQnlGckNLLEFBMEJKLFVBQVUsQXpGV1YsT0FBTyxDQUFLO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQXZFQSxJQUFPO0NBd0VqQjs7QXlGNUNGLEF6RnFDQyxrQnlGckNLLEFBNkJKLFFBQVEsQXpGUVIsT0FBTyxDQUFLO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQWRBLElBQU87Q0FlakI7O0F5RlJGLEFBQUQsZ0JBQVEsQ0FBQztFQUNQLFNBQVMsRUFBQyxNQUFNO0VBQ2hCLFdBQVcsRUFBQyxHQUFHO0VBQ2YsYUFBYSxFQUFDLE1BQU07Q0FDckI7O0FBQ0EsQUFDQyxlQURLLEdBQ0gsRUFBRSxDQUFDO0VBQ0gsVUFBVSxFQUFDLEtBQUs7Q0FPakI7O0FBVEYsQUFHRyxlQUhHLEdBQ0gsRUFBRSxHQUVBLENBQUMsQ0FBQztFQUNGLFNBQVMsRUFBQyxNQUFNO0NBSWpCOztBQVJKLEFBS0ssZUFMQyxHQUNILEVBQUUsR0FFQSxDQUFDLEFBRUEsTUFBTSxDQUFDO0VBQ0wsZUFBZSxFQUFFLFNBQVM7Q0FDNUI7O0FBT1QsQUFBQSxpQkFBaUIsQ0FBQztFOUZ0S2QsV0FBVyxFOEZ1S0MsSUFBSTtFOUZ0S2hCLFlBQVksRThGc0tBLElBQUk7RUFDbEIsU0FBUyxFQUFFLE1BQU07Q0FDbEI7O0FBRUQsQUFBQSxpQkFBaUIsQ0FBQztFOUYzS2QsV0FBVyxFOEY0S0MsSUFBSTtFOUYzS2hCLFlBQVksRThGMktBLElBQUk7RUFDbEIsU0FBUyxFQUFFLE1BQU07Q0F3Q2xCOztBQXRDRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEekIsQUFBRCxzQkFBTSxDQUFDO0k5RjlLTCxXQUFXLEU4RmdMTyxLQUFJO0k5Ri9LdEIsWUFBWSxFOEYrS00sS0FBSTtJQUNwQixPQUFPLEVBQUUsSUFBSTtHQUtoQjtFQVJBLEE5RitERCxzQjhGL0RNLEc5RitERixDQUFDLENBQUM7SUFsT0osWUFBWSxFOEZxS00sSUFBSTtJOUZwS3RCLGFBQWEsRThGb0tLLElBQUk7RzlGNkRTO0U4Ri9EaEMsQUFJRyxzQkFKRSxHQUlFLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDUixXQUFXLEVBQUUsaUJBQWlCO0dBQy9COzs7QUFHSixBQUFELHVCQUFPLENBQUM7RUFDTixVQUFVLEVBQUUsSUFBSTtDQWVqQjs7QUFoQkEsQUFHRyx1QkFIRyxHQUVELEVBQUUsR0FDQSxFQUFFLENBQUM7RUFDTCxVQUFVLEVBQUMsSUFBSTtDQUNoQjs7QUFMSixBQU1HLHVCQU5HLEdBRUQsRUFBRSxHQUlBLENBQUMsQ0FBQztFQUVKLFdBQVcsRUFBQyxHQUFHO0NBTWhCOztBQWRKLEF6Rm5DQyx1QnlGbUNLLEdBRUQsRUFBRSxHQUlBLENBQUMsQXpGekNOLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUFsR0EsSUFBTztDQW1HakI7O0F5RjRCRixBekZuQ0MsdUJ5Rm1DSyxHQUVELEVBQUUsR0FJQSxDQUFDLEF6RnpDTixPQUFPLEN5RjRDSztFQUNQLE9BQU8sRUFBQyxZQUFZO0VBQ3BCLFNBQVMsRUFBRSxJQUFJO0VBQ2YsWUFBWSxFQUFFLE1BQU07Q0FDckI7O0FBekJULEFBNkJFLGlCQTdCZSxDQTZCZixVQUFVLENBQUM7RUFDVCxhQUFhLEVBQUMsSUFBSTtDQUtuQjs7QUFuQ0gsQUErQkksaUJBL0JhLENBK0JaLGdCQUFNLENBQUM7RUFDTixTQUFTLEVBQUMsTUFBTTtFQUNoQixXQUFXLEVBQUUsR0FBRztDQUNqQjs7QUFsQ0wsQUFvQ0UsaUJBcENlLENBb0NmLFlBQVksQ0FBQztFQUNYLGFBQWEsRUFBQyxJQUFJO0NBQ25COztBQXRDSCxBQXVDRSxpQkF2Q2UsQ0F1Q2YsZ0JBQWdCLENBQUM7RUFDZixhQUFhLEVBQUMsQ0FBQztDQUNoQjs7QUFHSCxBQUFBLGFBQWEsQ0FBQztFOUZ2TlYsV0FBVyxFOEZ3TkMsSUFBSTtFOUZ2TmhCLFlBQVksRThGdU5BLElBQUk7RUFDbEIsU0FBUyxFQUFFLE1BQU07Q0FlbEI7O0FBYkcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRHpCLEFBQUQsa0JBQU0sQ0FBQztJOUYxTkwsV0FBVyxFOEY0Tk8sS0FBSTtJOUYzTnRCLFlBQVksRThGMk5NLEtBQUk7R0FFdkI7RUFKQSxBOUZtQkQsa0I4Rm5CTSxHOUZtQkYsQ0FBQyxDQUFDO0lBbE9KLFlBQVksRThGaU5NLElBQUk7STlGaE50QixhQUFhLEU4RmdOSyxJQUFJO0c5RmlCUzs7O0E4RnRCbkMsQUFRRSxhQVJXLENBUVgsVUFBVSxDQUFDO0VBQ1QsYUFBYSxFQUFDLElBQUk7Q0FJbkI7O0FBYkgsQUFVSSxhQVZTLENBVVIsZ0JBQU0sQ0FBQztFQUNOLFdBQVcsRUFBRSxHQUFHO0NBQ2pCOztBQVpMLEFBY0UsYUFkVyxDQWNYLFFBQVEsQ0FBQztFQUNQLFVBQVUsRUFBRSxJQUFJO0NBQ2pCOztBQUlELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUQxQixBQUFBLGVBQWUsQ0FBQztJQUVaLE9BQU8sRUFBRSxDQUFDO0dBZ0NiO0VBbENELEFBSU0sZUFKUyxHQUdULEVBQUUsR0FDRSxFQUFFLENBQUM7SUFDTCxVQUFVLEVBQUMsSUFBSTtHQUNoQjtFQU5QLEFBUUksZUFSVyxDQVFYLHFCQUFxQixDQUFDO0lBQ3BCLFdBQVcsRUFBQyxHQUFHO0lBQ2YsS0FBSyxFaEdoUEgsT0FBTztJZ0dpUFQsYUFBYSxFQUFDLE1BQU07SUFDcEIsT0FBTyxFQUFDLEtBQUs7R0FDZDtFQWJMLEFBY0ksZUFkVyxDQWNYLE1BQU0sQUFBQSxxQkFBcUIsQ0FBQztJQUMxQixNQUFNLEVBQUMsT0FBTztJQUNkLEtBQUssRUFBQyxJQUFJO0lBQ1YsVUFBVSxFQUFDLElBQUk7R0FDaEI7RUFsQkwsQUFvQk0sZUFwQlMsQ0FtQlgsQ0FBQyxBQUFBLHFCQUFxQixBQUNuQixNQUFNLENBQUE7SUFDTCxlQUFlLEVBQUUsU0FBUztHQUMzQjs7O0FBR0wsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLE1BQU07RUF6QmxELEFBQUEsZUFBZSxDQUFDO0lBMEJaLE9BQU8sRUFBRSxDQUFDO0dBUWI7OztBQU5DLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxPQUFPLFNBQVMsRUFBRSxNQUFNO0VBNUJuRCxBQUFBLGVBQWUsQ0FBQztJQTZCWixPQUFPLEVBQUUsQ0FBQztHQUtiOzs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07RUEvQjNCLEFBQUEsZUFBZSxDQUFDO0lBZ0NaLE9BQU8sRUFBRSxDQUFDO0dBRWI7OztBQUNELEFBRUksVUFGTSxHQUNOLEVBQUUsR0FDQSxDQUFDLENBQUM7RUFDRixPQUFPLEVBQUMsS0FBSztFQUNiLFNBQVMsRUFBQyxNQUFNO0NBSWpCOztBQVJMLEFBS00sVUFMSSxHQUNOLEVBQUUsR0FDQSxDQUFDLEFBR0EsTUFBTSxDQUFDO0VBQ04sZUFBZSxFQUFDLFNBQVM7Q0FDMUI7O0FBSVAsQUFBQSxpQkFBaUIsQ0FBQztFQUNoQixLQUFLLEVoR3JSQyxPQUFPO0VnR3NSYixjQUFjLEVBQUMsU0FBUztFQUN4QixXQUFXLEVBQUUsR0FBRztDQW1DakI7O0FBdENELEFBSUUsaUJBSmUsR0FBakIsaUJBQWlCLENBSVQ7RUFDSixVQUFVLEVBQUMsSUFBSTtDQUNoQjs7QUFDRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFQMUIsQUFBQSxpQkFBaUIsQ0FBQztJQVFkLFVBQVUsRUFBQyxJQUFJO0dBOEJsQjs7O0FBNUJFLEFBQUQsd0JBQVEsQ0FBQztFQUNQLFNBQVMsRUFBQyxJQUFJO0VBQ2QsYUFBYSxFQUFDLElBQUk7RUFDbEIsT0FBTyxFQUFDLEtBQUs7Q0FPZDs7QUFWQSxBQUlDLHdCQUpNLEFBSUwsTUFBTSxDQUFDO0VBQ04sZUFBZSxFQUFFLFNBQVM7Q0FDM0I7O0FBQ0QsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBUHpCLEFBQUQsd0JBQVEsQ0FBQztJQVFMLGFBQWEsRUFBQyxJQUFJO0dBRXJCOzs7QUFFQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEekIsQUFBRCx1QkFBTyxDQUFDO0lBRUosT0FBTyxFQUFFLENBQUM7R0FjYjs7O0FBaEJBLEF6RnpKQyx1QnlGeUpLLEdBSUgsRUFBRSxBekY3SkgsT0FBTyxDQUFLO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQWxHQSxJQUFPO0NBbUdqQjs7QXlGa0pGLEF6RnpKQyx1QnlGeUpLLEdBSUgsRUFBRSxBekY3SkgsT0FBTyxDeUYrSks7RUFDUCxTQUFTLEVBQUUsSUFBSTtFQUNmLFlBQVksRUFBRSxNQUFNO0NBQ3JCOztBQVROLEFBV0ssdUJBWEMsR0FJSCxFQUFFLEdBTUEsQ0FBQyxBQUNBLE1BQU0sQ0FBQztFQUNOLGVBQWUsRUFBRSxTQUFTO0NBQzNCOztBQU9ULEFBQUEsc0JBQXNCLENBQUM7RUFDckIsVUFBVSxFQUFDLElBQUk7RUFDZixVQUFVLEVBQUUsTUFBTTtDQU9uQjs7QUFORSxBQUFELDRCQUFPLENBQUM7RUFDTixVQUFVLEVBQUUsSUFBSTtFQUNoQixjQUFjLEVBQUMsU0FBUztFQUN4QixXQUFXLEVBQUUsR0FBRztFQUNoQixTQUFTLEVBQUMsTUFBTTtDQUNqQjs7QUNwVkg7O2dGQUVnRjtBQUVoRixBQUFBLFlBQVksQ0FBQztFQUNYLE9BQU8sRUFBQyxJQUFJO0NBOEJiOztBQTdCQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFGMUIsQUFBQSxZQUFZLENBQUM7SUFHVCxPQUFPLEVBQUUsS0FBSztJQUNkLFFBQVEsRUFBRSxLQUFLO0lBQ2YsR0FBRyxFQUFFLE1BQU07SUFDWCxVQUFVLEVBQUUsSUFBSTtJQUNoQixLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lBQ1osY0FBYyxFQUFFLEtBQUs7SUFDckIsZ0JBQWdCLEVqR1JYLElBQUk7SWlHU1QsT0FBTyxFQUFFLElBQUk7SUFFYiwwQkFBMEIsRUFBRSxLQUFLO0lBQ2pDLFdBQVcsRUFBRSxTQUFTO0lBRXRCLFVBQVUsRUFBRSxxQkFBcUI7SUFDakMsU0FBUyxFQUFFLGlCQUFpQjtHQWMvQjtFQVpHLEFBQUEsbUJBQW1CLENBbkJ2QixZQUFZLENBbUJjO0lBQ3BCLFVBQVUsRUFBRSx1QkFBdUI7SUFDbkMsU0FBUyxFQUFFLGFBQWE7R0FDekI7RUFDQSxBQUFELG9CQUFTLENBQUM7SS9GTFYsWUFBWSxFK0ZNSSxJQUFJO0kvRkxwQixhQUFhLEUrRktHLElBQUk7SUFDbEIsY0FBYyxFQUFDLElBQUk7SUFDbkIsUUFBUSxFQUFDLEtBQUs7SUFDZCxLQUFLLEVBQUMsSUFBSTtJQUNWLE1BQU0sRUFBRSxJQUFJO0dBQ2I7OztBQVlMLEFBQUEsaUJBQWlCLENBQUM7RUFDaEIsY0FBYyxFQUFFLFNBQVM7RUFDekIsV0FBVyxFQUFDLEdBQUc7RUFDZixRQUFRLEVBQUMsUUFBUTtFQUNqQixPQUFPLEVBQUMsQ0FBQztFQUNULGdCQUFnQixFakc1Q1QsSUFBSTtDaUcySFo7O0FBcEZELEFBTUUsaUJBTmUsQ0FNZixDQUFDLENBQUM7RUFDQSxPQUFPLEVBQUMsS0FBSztDQUNkOztBQVJILEFBVUksaUJBVmEsR0FTYixFQUFFLEdBQ0EsQ0FBQyxDQUFDO0VBakJOLEtBQUssRUFBRSxPQUFPO0VBQ2QsZUFBZSxFQUFFLE9BQU87RUFDeEIsV0FBVyxFQUFFLE9BQU87RUFDcEIsY0FBYyxFQUFFLE9BQU87RUFDdkIsTUFBTSxFQUFDLENBQUM7RUFDUixhQUFhLEVBQUMsR0FBRyxDQUFDLEtBQUssQ2pHakNsQixPQUFPO0VpRytDUixPQUFPLEVBQUMsV0FBVztFQUNuQixTQUFTLEVBQUMsTUFBTTtDQXdCakI7O0FBckNMLEFBZU0saUJBZlcsR0FTYixFQUFFLEdBQ0EsQ0FBQyxBQUtBLGVBQWUsQ0FBQztFQUVmLFVBQVUsRUFBRSxPQUFPO0VBQ25CLGFBQWEsRUFBQyxJQUFJO0NBT25COztBQXpCUCxBMUZrSEksaUIwRmxIYSxHQVNiLEVBQUUsR0FDQSxDQUFDLEFBS0EsZUFBZSxBMUZtR2pCLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUF2SEEsSUFBTztDQXdIakI7O0EwRnpITCxBMUZrSEksaUIwRmxIYSxHQVNiLEVBQUUsR0FDQSxDQUFDLEFBS0EsZUFBZSxBMUZtR2pCLE9BQU8sQzBGL0ZLO0VBQ1AsUUFBUSxFQUFDLFFBQVE7RUFDakIsS0FBSyxFQUFDLElBQUk7RUFDVixVQUFVLEVBQUUsYUFBYTtFQUN6QixTQUFTLEVBQUUsY0FBYztDQUMxQjs7QUF4QlQsQUEyQk0saUJBM0JXLEdBU2IsRUFBRSxHQUNBLENBQUMsQUFpQkEsT0FBTyxDQUFDO0VBQ1AsZ0JBQWdCLEVqRzlEWixPQUFPO0VpRytEWCxLQUFLLEVqR3BFSixJQUFJO0NpRzJFTjs7QUFwQ1AsQUE4QlEsaUJBOUJTLEdBU2IsRUFBRSxHQUNBLENBQUMsQUFpQkEsT0FBTyxHQUdGLEVBQUUsQ0FBQztFQUNMLE9BQU8sRUFBQyxLQUFLO0NBQ2Q7O0FBaENULEFBaUNRLGlCQWpDUyxHQVNiLEVBQUUsR0FDQSxDQUFDLEFBaUJBLE9BQU8sQUFNTCxPQUFPLENBQUM7RUFDUCxTQUFTLEVBQUUsU0FBUztDQUNyQjs7QUFuQ1QsQUFzQ0ksaUJBdENhLEdBU2IsRUFBRSxHQTZCQSxFQUFFLENBQUM7RUFDSCxPQUFPLEVBQUMsSUFBSTtDQTJDYjs7QUFsRkwsQUF5Q1EsaUJBekNTLEdBU2IsRUFBRSxHQTZCQSxFQUFFLEdBRUEsRUFBRSxHQUNBLG9CQUFvQixDQUFDO0VBaEQ3QixLQUFLLEVBQUUsT0FBTztFQUNkLGVBQWUsRUFBRSxPQUFPO0VBQ3hCLFdBQVcsRUFBRSxPQUFPO0VBQ3BCLGNBQWMsRUFBRSxPQUFPO0VBQ3ZCLE1BQU0sRUFBQyxDQUFDO0VBQ1IsYUFBYSxFQUFDLEdBQUcsQ0FBQyxLQUFLLENqR2pDbEIsT0FBTztFaUc4RUosT0FBTyxFQUFDLFdBQVc7RUFDbkIsU0FBUyxFQUFDLE1BQU07RUFDaEIsS0FBSyxFQUFDLElBQUk7RUFDVixVQUFVLEVBQUMsSUFBSTtDQXFCaEI7O0FBbkVULEFBK0NVLGlCQS9DTyxHQVNiLEVBQUUsR0E2QkEsRUFBRSxHQUVBLEVBQUUsR0FDQSxvQkFBb0IsQUFNbkIsZUFBZSxDQUFDO0VBRWYsVUFBVSxFQUFFLE9BQU87RUFDbkIsYUFBYSxFQUFDLElBQUk7Q0FPbkI7O0FBekRYLEExRmtISSxpQjBGbEhhLEdBU2IsRUFBRSxHQTZCQSxFQUFFLEdBRUEsRUFBRSxHQUNBLG9CQUFvQixBQU1uQixlQUFlLEExRm1FckIsT0FBTyxDQUFLO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQXZIQSxJQUFPO0NBd0hqQjs7QTBGekhMLEExRmtISSxpQjBGbEhhLEdBU2IsRUFBRSxHQTZCQSxFQUFFLEdBRUEsRUFBRSxHQUNBLG9CQUFvQixBQU1uQixlQUFlLEExRm1FckIsT0FBTyxDMEYvRFM7RUFDUCxRQUFRLEVBQUMsUUFBUTtFQUNqQixLQUFLLEVBQUMsTUFBTTtFQUNaLFVBQVUsRUFBRSxhQUFhO0VBQ3pCLFNBQVMsRUFBRSxjQUFjO0NBQzFCOztBQXhEYixBQTBEVSxpQkExRE8sR0FTYixFQUFFLEdBNkJBLEVBQUUsR0FFQSxFQUFFLEdBQ0Esb0JBQW9CLEFBaUJuQixPQUFPLENBQUM7RUFDUCxnQkFBZ0IsRUFBQyxPQUFPO0NBT3pCOztBQWxFWCxBQTREWSxpQkE1REssR0FTYixFQUFFLEdBNkJBLEVBQUUsR0FFQSxFQUFFLEdBQ0Esb0JBQW9CLEFBaUJuQixPQUFPLEdBRUYsRUFBRSxDQUFDO0VBQ0wsT0FBTyxFQUFDLEtBQUs7Q0FDZDs7QUE5RGIsQUErRFksaUJBL0RLLEdBU2IsRUFBRSxHQTZCQSxFQUFFLEdBRUEsRUFBRSxHQUNBLG9CQUFvQixBQWlCbkIsT0FBTyxBQUtMLE9BQU8sQ0FBQztFQUNQLFNBQVMsRUFBRSxTQUFTO0NBQ3JCOztBQWpFYixBQW9FUSxpQkFwRVMsR0FTYixFQUFFLEdBNkJBLEVBQUUsR0FFQSxFQUFFLEdBNEJBLEVBQUUsQ0FBQztFQUNILE9BQU8sRUFBQyxJQUFJO0NBV2I7O0FBaEZULEFBdUVZLGlCQXZFSyxHQVNiLEVBQUUsR0E2QkEsRUFBRSxHQUVBLEVBQUUsR0E0QkEsRUFBRSxHQUVBLEVBQUUsR0FDQSxvQkFBb0IsQ0FBQztFQTlFakMsS0FBSyxFQUFFLE9BQU87RUFDZCxlQUFlLEVBQUUsT0FBTztFQUN4QixXQUFXLEVBQUUsT0FBTztFQUNwQixjQUFjLEVBQUUsT0FBTztFQUN2QixNQUFNLEVBQUMsQ0FBQztFQUNSLGFBQWEsRUFBQyxHQUFHLENBQUMsS0FBSyxDakdqQ2xCLE9BQU87RWlHNEdBLE9BQU8sRUFBQyx1QkFBdUI7RUFDL0IsU0FBUyxFQUFDLE1BQU07Q0FDakI7O0FBM0ViLEFBNkVVLGlCQTdFTyxHQVNiLEVBQUUsR0E2QkEsRUFBRSxHQUVBLEVBQUUsR0E0QkEsRUFBRSxBQVNELE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBQyxLQUFLO0NBQ2Q7O0FDNUhYOztnRkFFZ0Y7QUFFaEYsQUFBQSxRQUFRLENBQUM7RUFDUCxPQUFPLEVBQUUsS0FBSztFQUNkLFFBQVEsRUFBRSxLQUFLO0VBQ2YsR0FBRyxFQUFFLENBQUM7RUFDTixNQUFNLEVBQUUsQ0FBQztFQUNULElBQUksRUFBRSxDQUFDO0VBQ1AsS0FBSyxFQUFFLENBQUM7RUFDUixPQUFPLEVBQUUsSUFBSTtFQUNiLGdCQUFnQixFbEdITCxPQUFPO0VrR0lsQixhQUFhLEVBQUMsR0FBRyxDQUFDLEtBQUssQ2xHSGxCLE9BQU87RWtHSVosT0FBTyxFQUFDLFNBQVM7RUFDakIsVUFBVSxFQUFDLE1BQU07RUFDakIsUUFBUSxFQUFDLE1BQU07RUFFZixVQUFVLEVBQUUsWUFBWTtFQUN4QixTQUFTLEVBQUUsaUJBQWlCO0VBQzVCLE1BQU0sRUFBRSxVQUFVLENBQUMsS0FBSyxDbEdIYixPQUFPO0VrR0tsQixNQUFNLEVBQUUsU0FBUztDQXFFbEI7O0FBbkVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQXBCMUIsQUFBQSxRQUFRLENBQUM7SUFxQkwsU0FBUyxFQUFDLEtBQUs7SUFDZixVQUFVLEVBQUMsS0FBSztHQWlFbkI7OztBQS9EQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUF4QjFCLEFBQUEsUUFBUSxDQUFDO0lBeUJMLFNBQVMsRUFBQyxNQUFNO0lBQ2hCLFVBQVUsRUFBQyxLQUFLO0dBNkRuQjs7O0FBMURDLEFBQUEsZUFBZSxDQTdCakIsUUFBUSxDQTZCWTtFQUNoQixVQUFVLEVBQUUsYUFBYTtFQUN6QixTQUFTLEVBQUUsYUFBYTtDQUV6Qjs7QUFDQSxBQUFELGVBQVEsQ0FBQztFQUNQLE1BQU0sRUFBQyxJQUFJO0VBQ1gsUUFBUSxFQUFDLFFBQVE7Q0FDbEI7O0FBQ0EsQUFBRCxlQUFRLENBQUM7RWhHc0NQLFFBQVEsRUFEd0IsUUFBUTtFZ0dsQ3hDLFdBQVcsRUFBRSxDQUFDO0VBQ2QsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLFNBQVMsRUFBRSxJQUFJO0VBQ2YsT0FBTyxFQUFFLENBQUM7RUFDVixRQUFRLEVBQUMsUUFBUTtFQUNqQixHQUFHLEVBQUUsS0FBSztFQUNWLElBQUksRUFBRSxJQUFJO0NBU1g7O0FBbkJBLEEzRnFIQyxlMkZySE0sQTNGcUhMLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUF2SEEsSUFBTztDQXdIakI7O0EyRjVIRixBM0ZxSEMsZTJGckhNLEEzRnFITCxPQUFPLENMOUVLO0VBQ1QsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLEdBQUc7RUFDUixJQUFJLEVBQUUsR0FBRztFQUNULFNBQVMsRUFBRSxxQkFBcUI7Q0FDbkM7O0FnR2pDRCxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07RUFYMUIsQUFBRCxlQUFRLENBQUM7SUFZTCxLQUFLLEVBQUUsTUFBTTtJQUNiLE1BQU0sRUFBRSxNQUFNO0lBQ2QsU0FBUyxFQUFFLE1BQU07R0FLcEI7OztBQW5CQSxBQWdCQyxlQWhCTSxDQWdCTixJQUFJLENBQUM7RUFDSCxPQUFPLEVBQUMsSUFBSTtDQUNiOztBQUVGLEFBQUQsaUJBQVUsQ0FBQztFQUNULFVBQVUsRUFBQyxJQUFJO0NBQ2hCOztBQUNBLEFBQUQsZUFBUSxDQUFDO0VBQ1AsU0FBUyxFQUFDLE1BQU07RUFDaEIsVUFBVSxFQUFDLElBQUk7RUFDZixXQUFXLEVBQUMsTUFBTTtFQUNsQixhQUFhLEVBQUMsSUFBSTtFQUNsQixXQUFXLEVBQUUsR0FBRztFQUNoQixPQUFPLEVBQUUsWUFBWTtDQUN0Qjs7QUFDQSxBQUFELGlCQUFVLENBQUM7RWhHbkVULFVBQVUsRUY2QkMsSUFBSTtFRTVCZixhQUFhLEVGNEJGLElBQUk7Q2tHd0NoQjs7QUFDQSxBQUFELGNBQU8sQ0FBQztFaEdqRU4sV0FBVyxFQURPLElBQUk7RUFFdEIsWUFBWSxFQUZNLElBQUk7RWdHcUV0QixTQUFTLEVBQUUsS0FBSztFQUNoQixhQUFhLEVBQUMsSUFBSTtDQUNuQjs7QUFMQSxBbEgvREQsY2tIK0RPLEFsSC9ETixPQUFPLEVrSCtEUCxjQUFNLEFsSDlETixNQUFNLENBQUM7RUFDTixPQUFPLEVBQUUsR0FBRztFQUNaLE9BQU8sRUFBRSxLQUFLO0NBQ2Y7O0FrSDJEQSxBbEgxREQsY2tIMERPLEFsSDFETixNQUFNLENBQUM7RUFDTixLQUFLLEVBQUUsSUFBSTtDQUNaOztBa0g4REEsQUFBRCxjQUFPLENBQUM7RUFDTixPQUFPLEVBQUUsS0FBSztFQUNkLEtBQUssRUFBRSxHQUFHO0VBQ1YsS0FBSyxFQUFFLElBQUk7Q0FDWjs7QUFDQSxBQUFELHFCQUFjLENBQUM7RUFDYixRQUFRLEVBQUUsSUFBSTtFQUNkLE1BQU0sRUFBRSxtQkFBbUI7Q0FDNUI7O0FBR0gsQUFBQSxhQUFhLENBQUM7RUFDWixTQUFTLEVBQUMsSUFBSTtFQUNkLGFBQWEsRUFBQyxJQUFJO0NBYW5COztBQVpFLEFBQUQsbUJBQU8sQ0FBQztFQUNOLE9BQU8sRUFBQyxZQUFZO0NBVXJCOztBQVhBLEFBRUMsbUJBRkssQUFFSixPQUFPLENBQUM7RUFDUCxXQUFXLEVBQUMsR0FBRztDQUloQjs7QUFQRixBQUlHLG1CQUpHLEFBRUosT0FBTyxDQUVOLG1CQUFtQixDQUFDO0VBQ2xCLGVBQWUsRUFBQyxTQUFTO0NBQzFCOztBQU5KLEFBUUMsbUJBUkssR0FRRCxtQkFBbUIsQ0FBQztFQUN0QixXQUFXLEVBQUMsSUFBSTtDQUNqQjs7QUFJTCxBQUFBLFFBQVEsQ0FBQyxVQUFVLENBQUM7RUFDbEIsU0FBUyxFQUFDLEtBQUs7Q0FDaEI7O0FBR0UsQUFBRCx1QkFBUSxDQUFDO0VoR3hHUCxXQUFXLEVBRE8sSUFBSTtFQUV0QixZQUFZLEVBRk0sSUFBSTtFZ0cyR3RCLFNBQVMsRUFBRSxLQUFLO0NBQ2pCOztBQUNBLEFBQUQsc0JBQU8sQ0FBQztFQUVOLFNBQVMsRUFBQyxJQUFJO0NBT2Y7O0FBVEEsQTNGd0NDLHNCMkZ4Q0ssQTNGd0NKLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUFsR0EsSUFBTztDQW1HakI7O0EyRi9DRixBM0Z3Q0Msc0IyRnhDSyxBM0Z3Q0osT0FBTyxDMkZyQ0M7RUFDUCxPQUFPLEVBQUMsWUFBWTtFQUNwQixTQUFTLEVBQUMsTUFBTTtFQUNoQixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsTUFBTTtDQUNaOztBQUtGLEFBQUQsb0JBQVEsQ0FBQztFaEd6SFAsV0FBVyxFQURPLElBQUk7RUFFdEIsWUFBWSxFQUZNLElBQUk7Q2dHNEh2Qjs7QUFFQSxBQUFELG1CQUFPLENBQUM7RUFDTixTQUFTLEVBQUMsTUFBTTtFQUNoQixhQUFhLEVBQUMsSUFBSTtFQUNsQixVQUFVLEVBQUMsSUFBSTtDQUNoQjs7QUFDQSxBQUFELG1CQUFPLENBQUM7RUFDTixVQUFVLEVBQUMsSUFBSTtFQUNmLFNBQVMsRUFBRSxNQUFNO0VBQ2pCLFlBQVksRUFBRyxDQUFDO0VBQ2hCLFVBQVUsRUFBRyxLQUFLO0NBZW5COztBQWRDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUx6QixBQUFELG1CQUFPLENBQUM7SUFNSixVQUFVLEVBQUcsSUFBSTtHQWFwQjs7O0FBbkJBLEFsSGhJRCxtQmtIZ0lPLENBUUwsRUFBRSxBbEh4SUgsT0FBTyxFa0hnSVAsbUJBQU0sQ0FRTCxFQUFFLEFsSHZJSCxNQUFNLENBQUM7RUFDTixPQUFPLEVBQUUsR0FBRztFQUNaLE9BQU8sRUFBRSxLQUFLO0NBQ2Y7O0FrSDRIQSxBbEgzSEQsbUJrSDJITyxDQVFMLEVBQUUsQWxIbklILE1BQU0sQ0FBQztFQUNOLEtBQUssRUFBRSxJQUFJO0NBQ1o7O0FrSHlIQSxBQVVHLG1CQVZHLENBUUwsRUFBRSxHQUVJLEVBQUUsQ0FBQztFQUNMLFVBQVUsRUFBQyxNQUFNO0NBQ2xCOztBQVpKLEFBY0MsbUJBZEssQ0FjTCxNQUFNLENBQUM7RUFDTCxXQUFXLEVBQUUsR0FBRztFQUNoQixLQUFLLEVBQUUsS0FBSztFQUNaLEtBQUssRUFBRSxLQUFLO0NBQ2I7O0FBS0YsQUFBRCx1QkFBUSxDQUFDO0VoR3pKUCxXQUFXLEVBRE8sSUFBSTtFQUV0QixZQUFZLEVBRk0sSUFBSTtFQVl0QixZQUFZLEVnR2dKRSxJQUFJO0VoRy9JbEIsYUFBYSxFZ0crSUMsSUFBSTtDQUVuQjs7QUFDQSxBQUFELHNCQUFPLENBQUM7RUFDTixVQUFVLEVBQUMsSUFBSTtFQUNmLFVBQVUsRUFBQyxJQUFJO0NBVWhCOztBQVpBLEFBR0Msc0JBSEssQ0FHTCxFQUFFLENBQUM7RUFDRCxVQUFVLEVBQUMsSUFBSTtDQUloQjs7QUFSRixBQUtHLHNCQUxHLENBR0wsRUFBRSxHQUVJLEVBQUUsQ0FBQztFQUNMLFVBQVUsRUFBQyxJQUFJO0NBQ2hCOztBQVBKLEFBU0Msc0JBVEssQ0FTTCxLQUFLLENBQUM7RUFDSixXQUFXLEVBQUMsR0FBRztDQUNoQjs7QUFLRixBQUFELG1CQUFPLENBQUM7RUFDTixLQUFLLEVsR3pLSSxPQUFPO0VrRzBLaEIsU0FBUyxFQUFDLElBQUk7RUFDZCxLQUFLLEVBQUMsSUFBSTtFQUNWLE1BQU0sRUFBQyxJQUFJO0VBQ1gsT0FBTyxFQUFFLFlBQVk7RWhHOUdyQixRQUFRLEVBRHdCLFFBQVE7Q2dHdUh6Qzs7QUFiQSxBaEd4R0MsbUJnR3dHSyxBaEd4R0osT0FBTyxDQUFLO0VBQ1QsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLEdBQUc7RUFDUixJQUFJLEVBQUUsR0FBRztFQUNULFNBQVMsRUFBRSxxQkFBcUI7Q0FDbkM7O0FnRzBHRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFQekIsQUFBRCxtQkFBTyxDQUFDO0lBUUosT0FBTyxFQUFDLFlBQVk7SUFDcEIsV0FBVyxFQUFDLENBQUM7SUFDYixjQUFjLEVBQUUsTUFBTTtJQUN0QixTQUFTLEVBQUMsSUFBSTtHQUVqQjs7O0FBQ0EsQUFBRCxtQkFBTyxDQUFDO0VBQ04sY0FBYyxFQUFFLFNBQVM7RUFDekIsU0FBUyxFQUFDLE1BQU07RUFDaEIsVUFBVSxFQUFDLENBQUM7Q0FJYjs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFKekIsQUFBRCxtQkFBTyxDQUFDO0lBS0osT0FBTyxFQUFDLFlBQVk7R0FFdkI7OztBQUNBLEFBQUQsbUJBQU8sQ0FBQztFQUNOLE9BQU8sRUFBQyxZQUFZO0NBSXJCOztBQUhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUZ6QixBQUFELG1CQUFPLENBQUM7SUFHSixPQUFPLEVBQUMsS0FBSztHQUVoQjs7O0FDcE5IOztnRkFFZ0Y7QUFFaEYsQUFBQSxlQUFlLENBQUM7RUFDZCxPQUFPLEVBQUMsSUFBSTtDQThCYjs7QUE3QkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRjFCLEFBQUEsZUFBZSxDQUFDO0lBR1osT0FBTyxFQUFFLEtBQUs7SUFDZCxRQUFRLEVBQUUsS0FBSztJQUNmLEdBQUcsRUFBRSxNQUFNO0lBQ1gsVUFBVSxFQUFFLElBQUk7SUFDaEIsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLGNBQWMsRUFBRSxLQUFLO0lBQ3JCLGdCQUFnQixFbkdSWCxJQUFJO0ltR1NULE9BQU8sRUFBRSxJQUFJO0lBRWIsMEJBQTBCLEVBQUUsS0FBSztJQUNqQyxXQUFXLEVBQUUsU0FBUztJQUV0QixVQUFVLEVBQUUscUJBQXFCO0lBQ2pDLFNBQVMsRUFBRSxnQkFBZ0I7R0FjOUI7RUFaRyxBQUFBLHNCQUFzQixDQW5CMUIsZUFBZSxDQW1CYztJQUN2QixVQUFVLEVBQUUsdUJBQXVCO0lBQ25DLFNBQVMsRUFBRSxhQUFhO0dBQ3pCO0VBQ0EsQUFBRCx1QkFBUyxDQUFDO0lqR0xWLFlBQVksRWlHTUksSUFBSTtJakdMcEIsYUFBYSxFaUdLRyxJQUFJO0lBQ2xCLGNBQWMsRUFBQyxJQUFJO0lBQ25CLFFBQVEsRUFBQyxLQUFLO0lBQ2QsS0FBSyxFQUFDLElBQUk7SUFDVixNQUFNLEVBQUMsQ0FBQztHQUNUOzs7QUFZTCxBQUFBLG9CQUFvQixDQUFDO0VBQ25CLGNBQWMsRUFBRSxTQUFTO0VBQ3pCLFdBQVcsRUFBQyxHQUFHO0VBQ2YsUUFBUSxFQUFDLFFBQVE7RUFDakIsT0FBTyxFQUFDLENBQUM7RUFDVCxnQkFBZ0IsRW5HNUNULElBQUk7Q21Hb0daOztBQTdERCxBQU1FLG9CQU5rQixDQU1sQixDQUFDLENBQUM7RUFDQSxPQUFPLEVBQUMsS0FBSztDQUNkOztBQVJILEFBVUksb0JBVmdCLEdBU2hCLEVBQUUsR0FDQSxDQUFDLENBQUM7RUFqQk4sS0FBSyxFQUFFLE9BQU87RUFDZCxlQUFlLEVBQUUsT0FBTztFQUN4QixXQUFXLEVBQUUsT0FBTztFQUNwQixjQUFjLEVBQUUsT0FBTztFQUN2QixNQUFNLEVBQUMsQ0FBQztFQUNSLGFBQWEsRUFBQyxHQUFHLENBQUMsS0FBSyxDbkdqQ2xCLE9BQU87RW1HK0NSLE9BQU8sRUFBQyxXQUFXO0VBQ25CLFNBQVMsRUFBQyxNQUFNO0VBQ2hCLFFBQVEsRUFBRSxNQUFNO0NBMEJqQjs7QUF4Q0wsQUFlTSxvQkFmYyxHQVNoQixFQUFFLEdBQ0EsQ0FBQyxDQUtELE1BQU0sQ0FBQztFQUNMLEtBQUssRUFBQyxLQUFLO0VBQ1gsS0FBSyxFbkcvQ0wsT0FBTztDbUdnRFI7O0FBbEJQLEFBbUJNLG9CQW5CYyxHQVNoQixFQUFFLEdBQ0EsQ0FBQyxBQVNBLGVBQWUsQ0FBQztFQUVmLFVBQVUsRUFBRSxPQUFPO0VBQ25CLGFBQWEsRUFBQyxJQUFJO0NBT25COztBQTdCUCxBNUZrSEksb0I0RmxIZ0IsR0FTaEIsRUFBRSxHQUNBLENBQUMsQUFTQSxlQUFlLEE1RitGakIsT0FBTyxDQUFLO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQXZIQSxJQUFPO0NBd0hqQjs7QTRGekhMLEE1RmtISSxvQjRGbEhnQixHQVNoQixFQUFFLEdBQ0EsQ0FBQyxBQVNBLGVBQWUsQTVGK0ZqQixPQUFPLEM0RjNGSztFQUNQLFFBQVEsRUFBQyxRQUFRO0VBQ2pCLEtBQUssRUFBQyxJQUFJO0VBQ1YsVUFBVSxFQUFFLGFBQWE7RUFDekIsU0FBUyxFQUFFLGNBQWM7Q0FDMUI7O0FBNUJULEFBOEJNLG9CQTlCYyxHQVNoQixFQUFFLEdBQ0EsQ0FBQyxBQW9CQSxPQUFPLENBQUM7RUFDUCxnQkFBZ0IsRW5HakVaLE9BQU87RW1Ha0VYLEtBQUssRW5HdkVKLElBQUk7Q21HOEVOOztBQXZDUCxBQWlDUSxvQkFqQ1ksR0FTaEIsRUFBRSxHQUNBLENBQUMsQUFvQkEsT0FBTyxHQUdGLEVBQUUsQ0FBQztFQUNMLE9BQU8sRUFBQyxLQUFLO0NBQ2Q7O0FBbkNULEFBb0NRLG9CQXBDWSxHQVNoQixFQUFFLEdBQ0EsQ0FBQyxBQW9CQSxPQUFPLEFBTUwsT0FBTyxDQUFDO0VBQ1AsU0FBUyxFQUFFLFNBQVM7Q0FDckI7O0FBdENULEFBeUNJLG9CQXpDZ0IsR0FTaEIsRUFBRSxHQWdDQSxFQUFFLENBQUM7RUFDSCxPQUFPLEVBQUMsSUFBSTtDQWlCYjs7QUEzREwsQUE0Q1Esb0JBNUNZLEdBU2hCLEVBQUUsR0FnQ0EsRUFBRSxHQUVBLEVBQUUsR0FDQSxvQkFBb0IsQ0FBQztFQW5EN0IsS0FBSyxFQUFFLE9BQU87RUFDZCxlQUFlLEVBQUUsT0FBTztFQUN4QixXQUFXLEVBQUUsT0FBTztFQUNwQixjQUFjLEVBQUUsT0FBTztFQUN2QixNQUFNLEVBQUMsQ0FBQztFQUNSLGFBQWEsRUFBQyxHQUFHLENBQUMsS0FBSyxDbkdqQ2xCLE9BQU87RW1HaUZKLE9BQU8sRUFBQyxXQUFXO0VBQ25CLFNBQVMsRUFBQyxNQUFNO0VBQ2hCLEtBQUssRUFBQyxJQUFJO0VBQ1YsVUFBVSxFQUFDLElBQUk7Q0FRaEI7O0FBekRULEFBcURVLG9CQXJEVSxHQVNoQixFQUFFLEdBZ0NBLEVBQUUsR0FFQSxFQUFFLEdBQ0Esb0JBQW9CLENBU3BCLE1BQU0sQ0FBQztFQUNMLEtBQUssRUFBRSxLQUFLO0VBQ1osS0FBSyxFbkdyRlQsT0FBTztDbUdzRko7O0FDckdYLEFBQUEsZ0JBQWdCLENBQUM7RUFDZixRQUFRLEVBQUUsS0FBSztFQUNmLE9BQU8sRUFBRSxHQUFHO0VBQ1osTUFBTSxFQUFFLElBQUk7RUFDWixLQUFLLEVBQUUsSUFBSTtFQUNYLGdCQUFnQixFcEdNTix3QkFBTztFb0dMakIsU0FBUyxFQUFFLGdCQUFnQjtFQUMzQixPQUFPLEVBQUUsQ0FBQztFQUNWLFdBQVcsRUFBRSxNQUFNO0VBQ25CLE9BQU8sRUFBRSxJQUFJO0VBQ2IsYUFBYSxFQUFFLElBQUk7RUFDbkIsV0FBVyxFQUFDLENBQUM7RUFDYixTQUFTLEVBQUUsZUFBZTtFQUMxQixVQUFVLEVBQUUsbURBQW1EO0NBMkJoRTs7QUF4Q0QsQUFjRSxnQkFkYyxBQWNiLE1BQU0sQ0FBQztFQUNOLGdCQUFnQixFbkdHVix3QkFBK0I7Q21HRnRDOztBQWhCSCxBN0YrSkksZ0I2Ri9KWSxBN0YrSlgsT0FBTyxDQUFLO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQS9GQSxJQUFPO0NBZ0dqQjs7QTZGdEtMLEE3RitKSSxnQjZGL0pZLEE3RitKWCxPQUFPLEM2RjdJRDtFQUNQLFFBQVEsRUFBQyxRQUFRO0VBQ2pCLEdBQUcsRUFBQyxNQUFNO0NBQ1g7O0FBckJILEFBdUJFLGdCQXZCYyxFQUFoQixnQkFBZ0IsQUF3QmIsTUFBTSxFQXhCVCxnQkFBZ0IsQUF5QmIsTUFBTSxFQXpCVCxnQkFBZ0IsQUEwQmIsT0FBTyxDQUFDO0VBQ1AsS0FBSyxFcEdyQkEsSUFBSTtFb0dzQlQsZUFBZSxFQUFFLElBQUk7Q0FDdEI7O0FBRUQsQUFBQSwyQkFBMkIsQ0EvQjdCLGdCQUFnQixDQStCZ0I7RUFDNUIsT0FBTyxFQUFFLENBQUM7Q0FDWDs7QUFFQyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7RUFEekIsQUFBQSxTQUFTLENBbENYLGdCQUFnQixDQWtDRjtJQUVSLEtBQUssRUFBRSxJQUFJO0lBQ1gsSUFBSSxFQUFFLElBQUk7R0FFYjs7O0FDdkNIOztnRkFFZ0Y7QUFHN0UsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRDNCLEFBQUEsWUFBWSxDQUFDO0lBRVQsUUFBUSxFQUFDLFFBQVE7R0FnS3BCO0VBbEtELEFBR0ksWUFIUSxBQUdQLE9BQU8sQ0FBQztJQUNQLE9BQU8sRUFBQyxFQUFFO0lBQ1YsS0FBSyxFQUFDLElBQUk7SUFDVixNQUFNLEVBQUMsR0FBRztJQUNWLGdCQUFnQixFckdKYixJQUFJO0lxR0tQLFFBQVEsRUFBQyxRQUFRO0lBQ2pCLE1BQU0sRUFBQyxDQUFDO0lBQ1IsSUFBSSxFQUFDLENBQUM7SUFDTixLQUFLLEVBQUMsQ0FBQztHQUNSO0VBQ0QsQUFBQSw0QkFBNEIsQ0FiaEMsWUFBWSxDQWF1QjtJQUM3QixRQUFRLEVBQUUsS0FBSztJQUNmLE9BQU8sRUFBRSxDQUFDO0lBQ1YsR0FBRyxFckd3QlUsTUFBTTtJcUd2Qm5CLEtBQUssRUFBRSxDQUFDO0lBQ1IsSUFBSSxFQUFFLENBQUM7SUFDUCxnQkFBZ0IsRXJHakJiLElBQUk7R3FHa0JSOzs7QUFHRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEekIsQUFBRCxtQkFBUSxDQUFDO0lBRUwsVUFBVSxFQUFFLElBQUk7SUFDaEIsVUFBVSxFQUFFLE1BQU07R0FLckI7OztBQUhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUx6QixBQUFELG1CQUFRLENBQUM7SW5HSlAsWUFBWSxFRGROLFVBQThCO0lDZXBDLGFBQWEsRURmUCxVQUE4QjtHb0cwQnJDOzs7QUFFQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEekIsQUFBRCxrQkFBTyxDQUFDO0lBRUosV0FBVyxFQUFDLE1BQU07R0FPckI7OztBQUxDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUp6QixBQUFELGtCQUFPLENBQUM7SUFLSixPQUFPLEVBQUMsSUFBSTtJQUNaLGVBQWUsRUFBRSxhQUFhO0lBQzlCLFdBQVcsRUFBRSxNQUFNO0dBRXRCOzs7QUFDQSxBQUFELGtCQUFPLENBQUM7RUFDTixTQUFTLEVBQUMsQ0FBQztFQUNYLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLGNBQWMsRUFBRSxNQUFNO0VBQ3RCLE9BQU8sRUFBRSxZQUFZO0NBNkJ0Qjs7QUE1QkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBTHpCLEFBQUQsa0JBQU8sQ0FBQztJQU1KLFFBQVEsRUFBQyxRQUFRO0dBMkJwQjs7O0FBeEJHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQVQzQixBQVVLLGtCQVZDLEdBQU4sa0JBQU0sQUFVQSxPQUFPLENBQUM7SUFDUCxPQUFPLEVBQUMsRUFBRTtJQUNWLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLE9BQU8sRUFBQyxLQUFLO0lBQ2IsZ0JBQWdCLEVyR3BEakIsSUFBSTtJcUdxREgsS0FBSyxFQUFDLEdBQUc7SUFDVCxNQUFNLEVBQUMsTUFBTTtJQUNiLEdBQUcsRUFBQyxHQUFHO0lBQ1AsU0FBUyxFQUFFLGdCQUFnQjtHQUM1Qjs7O0FBS0gsQUFDRSxTQURPLENBeEJaLGtCQUFNLEFBc0JKLE1BQU0sQ0FHSCxrQkFBa0IsRUFEcEIsU0FBUyxDQXhCWixrQkFBTSxBQXVCSixNQUFNLENBRUgsa0JBQWtCLENBQUM7RUFDakIsS0FBSyxFckd4RFAsT0FBTztDcUd5RE47O0FBM0JOLEFBOEJDLGtCQTlCSyxDQThCTCxrQkFBa0IsQ0FBQztFQUNqQixPQUFPLEVBQUMsSUFBSTtDQUNiOztBQUVGLEFBQUQsa0JBQU8sQ0FBQztFQUNOLE9BQU8sRUFBQyxZQUFZO0VBQ3BCLGNBQWMsRUFBRSxNQUFNO0VBQ3RCLE1BQU0sRXBHMUVBLFVBQThCO0VvRzJFcEMsV0FBVyxFcEczRUwsVUFBOEI7RUNjcEMsWUFBWSxFbUc4REUsSUFBSTtFbkc3RGxCLGFBQWEsRW1HNkRDLElBQUk7RUFDbEIsY0FBYyxFQUFFLFNBQVM7RUFDekIsU0FBUyxFQUFDLE1BQU07RUFDaEIsY0FBYyxFQUFFLEtBQUs7Q0FpRXRCOztBQWhFQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFUekIsQUFBRCxrQkFBTyxDQUFDO0lBVUosTUFBTSxFcEdqRkYsVUFBOEI7SW9Ha0ZsQyxXQUFXLEVwR2xGUCxVQUE4QjtJb0dtRmxDLFNBQVMsRUFBQyxNQUFNO0dBNkRuQjs7O0FBM0RDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQWR6QixBQUFELGtCQUFPLENBQUM7SUFlSixNQUFNLEVBQUMsTUFBTTtHQTBEaEI7OztBQXpFQSxBQWlCQyxrQkFqQkssR0FpQkgsSUFBSSxDQUFDO0VBQ0wsT0FBTyxFQUFFLFlBQVk7RUFDckIsY0FBYyxFQUFFLE1BQU07RUFDdEIsV0FBVyxFQUFFLEdBQUc7Q0FDakI7O0FBQ0QsQUFBQSxhQUFhLENBdEJkLGtCQUFNLENBc0JXO0VBRWQsUUFBUSxFQUFDLFFBQVE7RUFDakIsYUFBYSxFQUFDLE1BQU07Q0FhckI7O0FBaEJELEE5RjBEQSxhOEYxRGEsQ0F0QmQsa0JBQU0sQTlGZ0ZKLE1BQU0sQ0FBTTtFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUFsR0EsSUFBTztDQW1HakI7O0E4RmpFRCxBOUYwREEsYThGMURhLENBdEJkLGtCQUFNLEE5RmdGSixNQUFNLEM4RnRERztFQUNOLFFBQVEsRUFBQyxRQUFRO0VBQ2pCLEdBQUcsRUFBQyxHQUFHO0VBQ1AsS0FBSyxFQUFFLElBQUk7RUFDWCxTQUFTLEVBQUUsSUFBSTtFQUNmLEtBQUssRUFBQyxJQUFJO0VBQ1YsTUFBTSxFQUFDLElBQUk7RUFDWCxjQUFjLEVBQUUsTUFBTTtFQUN0QixTQUFTLEVBQUUsYUFBYSxDQUFDLGdCQUFnQjtFQUN6QyxXQUFXLEVBQUMsTUFBTTtFQUNsQixVQUFVLEVBQUUsT0FBTztDQUNwQjs7QUFFSCxBOUZ5Q0EsSzhGekNLLENBdkNOLGtCQUFNLENBdUNHLElBQUksQTlGeUNYLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUE3RUEsSUFBTztDQThFakI7O0E4RmhERCxBOUZ5Q0EsSzhGekNLLENBdkNOLGtCQUFNLENBdUNHLElBQUksQTlGeUNYLE9BQU8sQzhGdkNHO0VBQ1AsY0FBYyxFQUFFLE1BQU07RUFDdEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsU0FBUyxFQUFFLE1BQU07RUFDakIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLE1BQU07Q0FDWjs7QUFFSCxBQUFBLE9BQU8sQ0FqRFIsa0JBQU0sQ0FpREk7RUFDUCxXQUFXLEVBQUMsR0FBRztDQWNoQjs7QUFiQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFGMUIsQUFBQSxPQUFPLENBakRSLGtCQUFNLENBaURJO0lBR0wsUUFBUSxFQUFDLFFBQVE7R0FZcEI7RUFmRCxBQUlJLE9BSkcsQ0FqRFIsa0JBQU0sQUFxREEsT0FBTyxDQUFDO0lBQ1AsT0FBTyxFQUFDLEVBQUU7SUFDVixPQUFPLEVBQUMsS0FBSztJQUNiLE1BQU0sRUFBQyxHQUFHO0lBQ1YsZ0JBQWdCLEVyR2pJakIsSUFBSTtJcUdrSUgsUUFBUSxFQUFDLFFBQVE7SUFDakIsTUFBTSxFQUFDLENBQUM7SUFDUixJQUFJLEVBQUMsQ0FBQztJQUNOLEtBQUssRUFBQyxDQUFDO0dBQ1I7OztBQUdMLEFBQUEsTUFBTSxDQUFDLEtBQUssQ0FqRWIsa0JBQU0sQ0FpRVU7RUFDYixLQUFLLEVyR2xJSCxPQUFPO0NxR21JVjs7QUFFQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUssT0FBTyxTQUFTLEVBQUUsTUFBTTtFQURsRCxBQUFBLEtBQUssQ0FwRU4sa0JBQU0sQ0FvRUcsS0FBSyxDQUFDO0lBRVYsT0FBTyxFQUFFLElBQUk7R0FFaEI7OztBQUVGLEFBQUQsbUJBQVEsQ0FBQztFQUNQLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBQyxDQUFDO0VBQ0wsS0FBSyxFQUFFLENBQUM7RUFDUixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJO0VBQ1osV0FBVyxFQUFDLElBQUk7RUFDaEIsU0FBUyxFQUFDLElBQUk7RUFDZCxLQUFLLEVyR2xKRCxPQUFPO0NxR3NKWjs7QUFIQyxBQUFBLFNBQVMsQ0FUVixtQkFBTyxDQVNNO0VBQ1YsT0FBTyxFQUFDLElBQUk7Q0FDYjs7QUFHTCxBQUFBLDJCQUEyQixDQUFDO0VBQzFCLE1BQU0sRXBHaEtFLFVBQThCO0NvR2lLdkM7O0FBRUQsQUFBQSxnQkFBZ0IsQ0FBQztFQUNmLE9BQU8sRUFBQyxJQUFJO0VBQ1osUUFBUSxFQUFFLFFBQVE7RUFDbEIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENyRy9KWCxPQUFPO0VxR2dLYixnQkFBZ0IsRXJHektULElBQUk7RXFHMEtYLFFBQVEsRUFBRSxNQUFNO0VBQ2hCLFdBQVcsRUFBQyxNQUFNO0VuRzVIaEIsVUFBVSxFRlpBLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxtQkFBa0I7RXFHMEkzQyxVQUFVLEVBQUMsSUFBSTtFQUNmLE9BQU8sRUFBRSxHQUFHO0NBdUNiOztBQXRDQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFWMUIsQUFBQSxnQkFBZ0IsQ0FBQztJQVdiLElBQUksRUFBRSxJQUFJO0lBQ1YsS0FBSyxFQUFFLElBQUk7SUFDWCxVQUFVLEVBQUUsSUFBSTtJQUNoQixZQUFZLEVBQUUsR0FBRztJQUNqQixXQUFXLEVBQUUsTUFBTTtHQWlDdEI7OztBQS9CQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFqQjFCLEFBQUEsZ0JBQWdCLENBQUM7SUFrQmIsVUFBVSxFQUFDLEtBQUs7SUFDaEIsU0FBUyxFQUFFLElBQUk7SUFDZixXQUFXLEVBQUUsTUFBTTtHQTRCdEI7OztBQTFCQyxBQUFBLE1BQU0sQ0F0QlIsZ0JBQWdCLENBc0JMO0VBQ1AsVUFBVSxFQUFFLG1CQUFtQjtFQUMvQixVQUFVLEVBQUUsSUFBSTtDQUNqQjs7QUFFQSxBQUFELHNCQUFPLENBQUM7RUFDTixPQUFPLEVBQUMsS0FBSztFQUNiLE9BQU8sRUFBRSxJQUFJO0NBU2Q7O0FBUEcsQUFBQSxTQUFTLENBSlosc0JBQU0sQUFHSixNQUFNLENBQ087RUFDVixnQkFBZ0IsRWhKaURTLE9BQU87Q2dKaERqQzs7QUFFSCxBQUFBLE1BQU0sQ0FSUCxzQkFBTSxDQVFJO0VBQ1AsYUFBYSxFQUFDLElBQUk7Q0FDbkI7O0FBSUQsQUFBQSxTQUFTLENBRlgsa0JBQWtCLEFBQUEsTUFBTSxDQXZDMUIsZ0JBQWdCLEVBeUNaLFNBQVM7QUFEWCxrQkFBa0IsQUFBQSxNQUFNLENBeEMxQixnQkFBZ0IsQ0F5Q0E7RUFDVixPQUFPLEVBQUMsS0FBSztDQUNkOztBQUVILEFBQUEsTUFBTSxDQUFDLEtBQUssQ0E3Q2QsZ0JBQWdCLENBNkNDO0VBQ2IsT0FBTyxFQUFDLEtBQUs7Q0FDZDs7QUMxTkg7O2dGQUVnRjtBQUc5RSxNQUFNLENBQUMsS0FBSztFQUVWLEFBQUEsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQ3RCO0lBQ0ksT0FBTyxFQUFFLGVBQWU7R0FDM0I7OztBQ1ZMLFlBQVk7QUFFWixBQUFBLGFBQWEsQ0FBQztFQUNWLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE9BQU8sRUFBRSxLQUFLO0VBQ2QsVUFBVSxFQUFFLFVBQVU7RUFDdEIscUJBQXFCLEVBQUUsSUFBSTtFQUMzQixtQkFBbUIsRUFBRSxJQUFJO0VBQ3pCLGtCQUFrQixFQUFFLElBQUk7RUFDeEIsZ0JBQWdCLEVBQUUsSUFBSTtFQUN0QixlQUFlLEVBQUUsSUFBSTtFQUNyQixXQUFXLEVBQUUsSUFBSTtFQUNqQixnQkFBZ0IsRUFBRSxLQUFLO0VBQ3ZCLFlBQVksRUFBRSxLQUFLO0VBQ25CLDJCQUEyQixFQUFFLFdBQVc7Q0FDM0M7O0FBQ0QsQUFBQSxXQUFXLENBQUM7RUFDUixRQUFRLEVBQUUsUUFBUTtFQUNsQixRQUFRLEVBQUUsTUFBTTtFQUNoQixPQUFPLEVBQUUsS0FBSztFQUNkLE1BQU0sRUFBRSxDQUFDO0VBQ1QsT0FBTyxFQUFFLENBQUM7Q0FVYjs7QUFmRCxBQU9JLFdBUE8sQUFPTixNQUFNLENBQUM7RUFDSixPQUFPLEVBQUUsSUFBSTtDQUNoQjs7QUFUTCxBQVdJLFdBWE8sQUFXTixTQUFTLENBQUM7RUFDUCxNQUFNLEVBQUUsT0FBTztFQUNmLE1BQU0sRUFBRSxJQUFJO0NBQ2Y7O0FBRUwsQUFBQSxhQUFhLENBQUMsWUFBWTtBQUMxQixhQUFhLENBQUMsV0FBVyxDQUFDO0VBQ3RCLGlCQUFpQixFQUFFLG9CQUFvQjtFQUN2QyxjQUFjLEVBQUUsb0JBQW9CO0VBQ3BDLGFBQWEsRUFBRSxvQkFBb0I7RUFDbkMsWUFBWSxFQUFFLG9CQUFvQjtFQUNsQyxTQUFTLEVBQUUsb0JBQW9CO0NBQ2xDOztBQUVELEFBQUEsWUFBWSxDQUFDO0VBQ1QsUUFBUSxFQUFFLFFBQVE7RUFDbEIsSUFBSSxFQUFFLENBQUM7RUFDUCxHQUFHLEVBQUUsQ0FBQztFQUNOLE9BQU8sRUFBRSxLQUFLO0VBRWQsV0FBVyxFQUFFLElBQUk7RUFDakIsWUFBWSxFQUFFLElBQUk7Q0FlckI7O0FBdEJELEFBU0ksWUFUUSxBQVNQLE9BQU8sRUFUWixZQUFZLEFBVVAsTUFBTSxDQUFDO0VBQ0osT0FBTyxFQUFFLEVBQUU7RUFDWCxPQUFPLEVBQUUsS0FBSztDQUNqQjs7QUFiTCxBQWVJLFlBZlEsQUFlUCxNQUFNLENBQUM7RUFDSixLQUFLLEVBQUUsSUFBSTtDQUNkOztBQUVELEFBQUEsY0FBYyxDQW5CbEIsWUFBWSxDQW1CUztFQUNiLFVBQVUsRUFBRSxNQUFNO0NBQ3JCOztBQUVMLEFBQUEsWUFBWSxDQUFDO0VBQ1QsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLFVBQVUsRUFBRSxHQUFHO0VBZ0JmLE9BQU8sRUFBRSxJQUFJO0NBbUJoQjs7QUF0Q0QsQUFJSSxZQUpRLEFBSVAsTUFBTSxDQUFDO0VBQ04sT0FBTyxFQUFFLElBQUk7Q0FDZDs7Q0FDRCxBQUFBLEFBQUEsR0FBQyxDQUFJLEtBQUssQUFBVCxFQVBMLFlBQVksQ0FPTTtFQUNWLEtBQUssRUFBRSxLQUFLO0NBQ2Y7O0FBVEwsQUFVSSxZQVZRLENBVVIsR0FBRyxDQUFDO0VBQ0EsT0FBTyxFQUFFLEtBQUs7RUFDZCxZQUFZLEVBQUMsSUFBSTtFQUNqQixXQUFXLEVBQUMsSUFBSTtDQUNuQjs7QUFkTCxBQWVJLFlBZlEsQUFlUCxjQUFjLENBQUMsR0FBRyxDQUFDO0VBQ2hCLE9BQU8sRUFBRSxJQUFJO0NBQ2hCOztBQWpCTCxBQXFCSSxZQXJCUSxBQXFCUCxTQUFTLENBQUMsR0FBRyxDQUFDO0VBQ1gsY0FBYyxFQUFFLElBQUk7Q0FDdkI7O0FBRUQsQUFBQSxrQkFBa0IsQ0F6QnRCLFlBQVksQ0F5QmE7RUFDakIsT0FBTyxFQUFFLEtBQUs7Q0FDakI7O0FBRUQsQUFBQSxjQUFjLENBN0JsQixZQUFZLENBNkJTO0VBQ2IsVUFBVSxFQUFFLE1BQU07Q0FDckI7O0FBRUQsQUFBQSxlQUFlLENBakNuQixZQUFZLENBaUNVO0VBQ2QsT0FBTyxFQUFFLEtBQUs7RUFDZCxNQUFNLEVBQUUsSUFBSTtFQUNaLE1BQU0sRUFBRSxxQkFBcUI7Q0FDaEM7O0FBRUwsQUFBQSxZQUFZLEFBQUEsYUFBYSxDQUFDO0VBQ3RCLE9BQU8sRUFBRSxJQUFJO0NBQ2hCOztBQ2hFRCxZQUFZO0FBR1IsQUFBQSxjQUFjLENBRGxCLFdBQVcsQ0FDVTtFQUNiLFVBQVUsRUFBRSxJQUFJLENBakJSLGdDQUE4QixDQWlCYyxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVM7Q0FDOUU7O0FBR0wsV0FBVztBQUVQLFVBQVU7RUFDTixXQUFXLEVBQUUsT0FBTztFQUNwQixHQUFHLEVBaEJLLHdCQUE0QjtFQWlCcEMsR0FBRyxFQWpCSywrQkFBNEIsQ0FpQkksMkJBQTJCLEVBakIzRCx5QkFBNEIsQ0FpQjhELGNBQWMsRUFqQnhHLHdCQUE0QixDQWlCMEcsa0JBQWtCLEVBakJ4Siw4QkFBNEIsQ0FpQmdLLGFBQWE7RUFDak4sV0FBVyxFQUFFLE1BQU07RUFDbkIsVUFBVSxFQUFFLE1BQU07OztBQUkxQixZQUFZO0FBRVosQUFBQSxXQUFXO0FBQ1gsV0FBVyxDQUFDO0V0R2lCUixRQUFRLEVzR2hCVyxRQUFRO0VBQzNCLE9BQU8sRUFBRSxLQUFLO0VBQ2QsTUFBTSxFQUFFLElBQUk7RUFDWixLQUFLLEVBQUUsSUFBSTtFQUNYLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLFNBQVMsRUFBRSxHQUFHO0VBQ2QsTUFBTSxFQUFFLE9BQU87RUFDZixVQUFVLEVBQUUsV0FBVztFQUN2QixLQUFLLEVBQUUsV0FBVztFQUNsQixHQUFHLEVBQUUsR0FBRztFQUNSLGlCQUFpQixFQUFFLGtCQUFrQjtFQUNyQyxhQUFhLEVBQUUsa0JBQWtCO0VBQ2pDLFNBQVMsRUFBRSxrQkFBa0I7RUFDN0IsT0FBTyxFQUFFLENBQUM7RUFDVixNQUFNLEVBQUUsSUFBSTtFQUNaLE9BQU8sRUFBRSxJQUFJO0NBc0JoQjs7QUF2Q0QsQXRHbUJJLFdzR25CTyxBdEdtQk4sT0FBTztBc0dsQlosV0FBVyxBdEdrQk4sT0FBTyxDQUFLO0VBQ1QsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLEdBQUc7RUFDUixJQUFJLEVBQUUsR0FBRztFQUNULFNBQVMsRUFBRSxxQkFBcUI7Q0FDbkM7O0FzR3hCTCxBQWtCSSxXQWxCTyxBQWtCTixNQUFNO0FBakJYLFdBQVcsQUFpQk4sTUFBTSxDQUFDO0VBQ04sT0FBTyxFQUFFLElBQUk7Q0FLZDs7QUF4QkwsQUFxQk0sV0FyQkssQUFrQk4sTUFBTSxBQUdKLE9BQU87QUFwQmQsV0FBVyxBQWlCTixNQUFNLEFBR0osT0FBTyxDQUFDO0VBQ1AsT0FBTyxFQWhFVSxDQUFDO0NBaUVuQjs7QUF2QlAsQUEwQk0sV0ExQkssQUF5Qk4sZUFBZSxBQUNiLE9BQU87QUF6QmQsV0FBVyxBQXdCTixlQUFlLEFBQ2IsT0FBTyxDQUFDO0VBQ1AsT0FBTyxFQXBFWSxJQUFJO0NBcUV4Qjs7QUE1QlAsQXRHbUJJLFdzR25CTyxBdEdtQk4sT0FBTztBc0dsQlosV0FBVyxBdEdrQk4sT0FBTyxDc0dXQztFQUNMLFdBQVcsRUFuRkMsT0FBTztFQW9GbkIsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsQ0FBQztFQUNkLEtBQUssRUFwRk8sS0FBYTtFQXFGekIsT0FBTyxFQTlFUyxJQUFJO0VBK0VwQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7Q0FDckM7O0FBRUwsQUFHSSxTQUhLLENBQ1AsV0FBVyxBQUVSLE1BQU07QUFIWCxTQUFTLENBRVAsV0FBVyxBQUNSLE1BQU0sQ0FBQztFQUNOLE9BQU8sRUFBRSxJQUFJO0NBV2Q7O0FBZkwsQUFNTSxTQU5HLENBQ1AsV0FBVyxBQUVSLE1BQU0sQUFHSixPQUFPO0FBTmQsU0FBUyxDQUVQLFdBQVcsQUFDUixNQUFNLEFBR0osT0FBTyxDQUFDO0VBQ1AsT0FBTyxFQXpGVSxDQUFDO0NBMEZuQjs7QUFSUCxBQVNNLFNBVEcsQ0FDUCxXQUFXLEFBRVIsTUFBTSxBQU1KLGVBQWU7QUFUdEIsU0FBUyxDQUVQLFdBQVcsQUFDUixNQUFNLEFBTUosZUFBZSxDQUFDO0VBQ2YsTUFBTSxFQUFDLE9BQU87Q0FJZjs7QUFkUCxBQVdRLFNBWEMsQ0FDUCxXQUFXLEFBRVIsTUFBTSxBQU1KLGVBQWUsQUFFYixPQUFPO0FBWGhCLFNBQVMsQ0FFUCxXQUFXLEFBQ1IsTUFBTSxBQU1KLGVBQWUsQUFFYixPQUFPLENBQUM7RUFDUCxPQUFPLEVBN0ZVLElBQUk7Q0E4RnRCOztBQU9ULEFBQUEsV0FBVyxDQUFDO0VBQ1YsSUFBSSxFQUZXLEtBQUk7Q0FTcEI7O0FBUkQsQWpHcUNJLFdpR3JDTyxBakdxQ04sT0FBTyxDQUFLO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQXpDQSxJQUFPO0NBMENqQjs7Q2lHekNILEFBQUEsQUFBQSxHQUFDLENBQUksS0FBSyxBQUFULEVBSEgsV0FBVyxDQUdLO0VBRVosSUFBSSxFQUFFLElBQUk7RUFDVixLQUFLLEVBUFEsS0FBSTtDQVFsQjs7Q0FKRCxBQUFBLEFqR2tDRSxHaUdsQ0QsQ0FBSSxLQUFLLEFBQVQsRUFISCxXQUFXLEFqR3FDTixPQUFPLENBQUs7RUF6SmIsV0FBVyxFQUFFLFVBQVU7RUFDbkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTO0VBQ3RDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxNQUFNO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBRW5CLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxJQUFJO0VBdUpoQixPQUFPLEVBdENBLElBQU87Q0F1Q2pCOztBaUdsQ0wsQUFBQSxXQUFXLENBQUM7RUFFVixLQUFLLEVBYlUsS0FBSTtDQW1CcEI7O0FBUkQsQWpHMkJJLFdpRzNCTyxBakcyQk4sT0FBTyxDQUFLO0VBekpiLFdBQVcsRUFBRSxVQUFVO0VBQ25CLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztFQUN0QyxVQUFVLEVBQUUsTUFBTTtFQUNsQixZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUVuQixlQUFlLEVBQUUsSUFBSTtFQUNyQixjQUFjLEVBQUUsSUFBSTtFQXVKaEIsT0FBTyxFQXRDQSxJQUFPO0NBdUNqQjs7Q2lHL0JILEFBQUEsQUFBQSxHQUFDLENBQUksS0FBSyxBQUFULEVBSEgsV0FBVyxDQUdLO0VBRVosSUFBSSxFQWhCUyxLQUFJO0VBaUJqQixLQUFLLEVBQUUsSUFBSTtDQUNaOztDQUpELEFBQUEsQWpHd0JFLEdpR3hCRCxDQUFJLEtBQUssQUFBVCxFQUhILFdBQVcsQWpHMkJOLE9BQU8sQ0FBSztFQXpKYixXQUFXLEVBQUUsVUFBVTtFQUNuQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVM7RUFDdEMsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLE1BQU07RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFFbkIsZUFBZSxFQUFFLElBQUk7RUFDckIsY0FBYyxFQUFFLElBQUk7RUF1SmhCLE9BQU8sRUF0Q0EsSUFBTztDQXVDakI7O0FpR3hCTCxVQUFVO0FBRVYsQUFBQSxhQUFhLEFBQUEsYUFBYSxDQUFDO0VBQ3ZCLGFBQWEsRUFBRSxDQUFDO0NBQ25COztBQUVELEFBQUEsV0FBVyxDQUFDO0VBQ1IsUUFBUSxFQUFFLFFBQVE7RUFDbEIsTUFBTSxFQUFFLEtBQUs7RUFDYixVQUFVLEVBQUUsSUFBSTtFQUNoQixPQUFPLEVBQUUsS0FBSztFQUNkLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLE9BQU8sRUFBRSxDQUFDO0VBQ1YsTUFBTSxFQUFFLENBQUM7RUFDVCxLQUFLLEVBQUUsSUFBSTtDQWlEZDs7QUF6REQsQUFTSSxXQVRPLENBU1AsRUFBRSxDQUFDO0VBQ0MsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLFlBQVk7RUFDckIsTUFBTSxFQUFFLElBQUk7RUFDWixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxLQUFLO0VBQ2IsT0FBTyxFQUFFLENBQUM7RUFDVixNQUFNLEVBQUUsT0FBTztDQXdDbEI7O0FBeERMLEFBaUJRLFdBakJHLENBU1AsRUFBRSxDQVFFLE1BQU0sQ0FBQztFQUNILE1BQU0sRUFBRSxDQUFDO0VBQ1QsVUFBVSxFQUFFLFdBQVc7RUFDdkIsT0FBTyxFQUFFLEtBQUs7RUFDZCxNQUFNLEVBQUUsSUFBSTtFQUNaLEtBQUssRUFBRSxJQUFJO0VBQ1gsT0FBTyxFQUFFLElBQUk7RUFDYixXQUFXLEVBQUUsR0FBRztFQUNoQixTQUFTLEVBQUUsR0FBRztFQUNkLEtBQUssRUFBRSxXQUFXO0VBQ2xCLE9BQU8sRUFBRSxHQUFHO0VBQ1osTUFBTSxFQUFFLE9BQU87Q0F1QmxCOztBQW5EVCxBQTZCWSxXQTdCRCxDQVNQLEVBQUUsQ0FRRSxNQUFNLEFBWUQsTUFBTSxFQTdCbkIsV0FBVyxDQVNQLEVBQUUsQ0FRRSxNQUFNLEFBWVEsTUFBTSxDQUFDO0VBQ2IsT0FBTyxFQUFFLElBQUk7Q0FJaEI7O0FBbENiLEFBK0JnQixXQS9CTCxDQVNQLEVBQUUsQ0FRRSxNQUFNLEFBWUQsTUFBTSxBQUVGLE9BQU8sRUEvQnhCLFdBQVcsQ0FTUCxFQUFFLENBUUUsTUFBTSxBQVlRLE1BQU0sQUFFWCxPQUFPLENBQUM7RUFDTCxPQUFPLEVBQUUsQ0FBQztDQUNiOztBQWpDakIsQUFtQ1ksV0FuQ0QsQ0FTUCxFQUFFLENBUUUsTUFBTSxBQWtCRCxPQUFPLENBQUM7RUFDTCxRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsQ0FBQztFQUNOLElBQUksRUFBRSxDQUFDO0VBQ1AsT0FBTyxFQTFLRCxJQUFPO0VBMktiLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixXQUFXLEVBcExQLE9BQU87RUFxTFgsU0FBUyxFQTdLUixJQUFJO0VBOEtMLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLEtBQUssRUFyTEgsSUFBSTtFQXNMTixPQUFPLEVBQUUsQ0FBQztFQUNWLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUztDQUNyQzs7QUFsRGIsQUFvRFEsV0FwREcsQ0FTUCxFQUFFLEFBMkNHLGFBQWEsQ0FBQyxNQUFNLEFBQUEsT0FBTyxDQUFDO0VBQ3pCLEtBQUssRUEzTFEsSUFBSTtFQTRMakIsT0FBTyxFQUFFLENBQUM7Q0FDYjs7QUMzTVQsQUFBQSxZQUFZLENBQUM7RUFDWCxPQUFPLEVBQUUsS0FBSztFQUNkLFFBQVEsRUFBRSxRQUFRO0NBZ0RuQjs7QUFsREQsQUFJRSxZQUpVLEVBSVYsQUFBQSxNQUFDLEFBQUEsRUFBUTtFQUNQLE9BQU8sRUFBRSxJQUFJO0NBQ2Q7O0FBTkgsQUFPRSxZQVBVLENBT1YsZ0JBQWdCLENBQUM7RUFDZixRQUFRLEVBQUUsUUFBUTtFQUNsQixJQUFJLEVBQUUsZ0JBQWdCO0NBQ3ZCOztBQVZILEFBV0UsWUFYVSxHQVdSLEtBQUssQ0FBQztFQUNOLE9BQU8sRUFBRSxLQUFLO0NBQ2Y7O0FBYkgsQUFjRSxZQWRVLEdBY1IsRUFBRSxDQUFDO0VBQ0gsUUFBUSxFQUFFLFFBQVE7RUFDbEIsSUFBSSxFQUFFLENBQUM7RUFDUCxPQUFPLEVBQUUsQ0FBQztFQUNWLFNBQVMsRUFBRSxJQUFJO0VBQ2YsVUFBVSxFQUFFLFVBQVU7RUFDdEIsVUFBVSxFQUFFLElBQUk7RUFDaEIsT0FBTyxFQUFFLENBQUM7RUFLVixNQUFNLEVBQUUsUUFBUTtFQUNoQixVQUFVLEV6R3JCTCxJQUFJO0V5R3NCVCxXQUFXLEVBQUUsSUFBSTtFQUNqQixVQUFVLEVBQUUsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDekd0QnRCLGtCQUFJO0N5R3FDVjs7QUE1Q0gsQUFzQkksWUF0QlEsR0FjUixFQUFFLEFBUUQsTUFBTSxDQUFDO0VBQ04sT0FBTyxFQUFFLElBQUk7Q0FDZDs7QUF4QkwsQUE4QkksWUE5QlEsR0FjUixFQUFFLEdBZ0JBLEVBQUUsQ0FBQztFQUNILFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE9BQU8sRUFBRSxTQUFTO0VBQ2xCLE1BQU0sRUFBRSxPQUFPO0VBQ2YsVUFBVSxFQUFDLElBQUk7RUFDZixTQUFTLEVBQUMsTUFBTTtDQVFqQjs7QUEzQ0wsQUFvQ00sWUFwQ00sR0FjUixFQUFFLEdBZ0JBLEVBQUUsQUFNRCxNQUFNLEVBcENiLFlBQVksR0FjUixFQUFFLEdBZ0JBLEVBQUUsQ0FPRCxBQUFBLGFBQUMsQ0FBYyxNQUFNLEFBQXBCLEVBQXNCO0VBQ3RCLFVBQVUsRXpHN0JMLE9BQU87Q3lHOEJiOztBQUNELE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSztFQXhDN0IsQUE4QkksWUE5QlEsR0FjUixFQUFFLEdBZ0JBLEVBQUUsQ0FBQztJQVdELE9BQU8sRUFBRSxTQUFTO0dBRXJCOzs7QUEzQ0wsQUE2Q0UsWUE3Q1UsQ0E2Q1YsSUFBSSxDQUFDO0VBQ0gsS0FBSyxFekcvQkQsT0FBTztFeUdnQ1gsV0FBVyxFQUFDLElBQUk7RUFDaEIsZ0JBQWdCLEVBQUMsV0FBVztDQUM3Qjs7QUN2QkgsQUFBQSxNQUFNLEFBQUEsaUJBQWlCO0FBQ3ZCLE1BQU0sQUFBQSxhQUFhLENBQUM7RUFDbEIsT0FBTyxFQUFFLGVBQWU7Q0FDekI7O0FBRUQsQUFBQSxpQkFBaUIsQ0FBQztFQUNoQixLQUFLLEVBQUUsUUFBUTtFQUFFLGlCQUFpQjtDQXFEbkM7O0FBdERELEFBSUUsaUJBSmUsR0FJYixnQkFBZ0IsQ0FBQztFQUNqQixLQUFLLEVBQUUsSUFBSTtFQUNYLGFBQWEsRUFBRSxJQUFJO0VBQ25CLE9BQU8sRUFBRSxDQUFDO0NBTVg7O0FBYkgsQUFTSSxpQkFUYSxHQUliLGdCQUFnQixBQUtmLGVBQWUsRUFUcEIsaUJBQWlCLEdBSWIsZ0JBQWdCLEFBTWYsZUFBZSxBQUFBLE1BQU0sRUFWMUIsaUJBQWlCLEdBSWIsZ0JBQWdCLEFBT2YsZUFBZSxBQUFBLE1BQU0sRUFYMUIsaUJBQWlCLEdBSWIsZ0JBQWdCLEFBUWYsZUFBZSxBQUFBLE9BQU8sQ0FBQztFQUFFLEtBQUssRXJKdUtGLElBQUk7Q3FKdks0Qjs7QUFaakUsQUFlRSxpQkFmZSxHQWViLE1BQU0sQ0FBQztFQUNQLFFBQVEsRUFBRSxtQkFBbUI7RUFDN0IsTUFBTSxFQUFFLENBQUM7RUFDVCxJQUFJLEVBQUUsR0FBRztFQUNULE9BQU8sRUFBRSxnQkFBZ0I7RUFDekIsS0FBSyxFQUFFLGdCQUFnQjtFQUN2QixNQUFNLEVBQUUsZUFBZTtFQUN2QixPQUFPLEVBQUUsWUFBWTtFQUNyQixPQUFPLEVBQUUsWUFBWTtFQUNyQixNQUFNLEVBQUUsSUFBSTtDQVNiOztBQWpDSCxBQTBCSSxpQkExQmEsR0FlYixNQUFNLEFBV0wsY0FBYyxDQUFDO0VBQ2QsR0FBRyxFQUFFLENBQUM7RUFDTixJQUFJLEVBQUUsQ0FBQztFQUNQLE9BQU8sRUFBRSxnQkFBZ0I7RUFDekIsS0FBSyxFQUFFLGVBQWU7RUFDdEIsT0FBTyxFQUFFLENBQUM7Q0FDWDs7QUFJSCxBQUFBLFVBQVUsQ0FwQ1osaUJBQWlCLENBb0NGLGdCQUFnQjtBQUM3QixNQUFNLENBckNSLGlCQUFpQixDQXFDTixnQkFBZ0IsQ0FBQztFQUN4QixZQUFZLEVDckVFLE9BQWdCO0NEc0UvQjs7QUF2Q0gsQUF5Q0UsaUJBekNlLEFBeUNkLFVBQVUsQ0FBQztFQUNWLEtBQUssRUFBRSxlQUFlO0NBQ3ZCOztBQTNDSCxBQTZDRSxpQkE3Q2UsQUE2Q2QsSUFBSyxFcEU0Q21CLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixFb0U1Q0osSUFBSyxFcEU0Q21CLEFBQUEsS0FBQyxFQUFPLGNBQWMsQUFBckIsRW9FNUNJLElBQUssQy9HMEQxRCxnQkFBZ0IsRStHMUQ0RDtFQUN4RSxLQUFLLEVDMUVPLEtBQUs7Q0QyRWxCOztBQS9DSCxBQWlERSxpQkFqRGUsQ0FpRGYsZ0JBQWdCLEFBQUEsTUFBTSxDQUFDO0VBQ3JCLE9BQU8sRUFBRSw4QkFBOEI7RUFDdkMsT0FBTyxFQUFFLDRDQUE0QztFQUNyRCxjQUFjLEVBQUUsSUFBSTtDQUNyQjs7QUFHSCxBQUFBLGlCQUFpQixBQUFBLGFBQWEsQ0FBQztFQUM3QixhQUFhLEVBQUUsQ0FBQztFQUNoQixPQUFPLEVBQUUsQ0FBQztFQUNWLE1BQU0sRUFBRSxJQUFJO0NBZWI7O0FBbEJELEFBS0UsaUJBTGUsQUFBQSxhQUFhLEFBSzNCLElBQUssRXBFNEJtQixBQUFBLEtBQUMsRUFBTyxNQUFNLEFBQWIsR29FNUJIO0VBQ3JCLEtBQUssRUFBRSxJQUFJO0NBQ1o7O0FBUEgsQUFTRSxpQkFUZSxBQUFBLGFBQWEsQUFTM0IsZ0JBQWdCLENBQUM7RUFDaEIsT0FBTyxFQUFFLElBQUk7Q0FPZDs7QUFqQkgsQUFhTSxpQkFiVyxBQUFBLGFBQWEsQUFTM0IsZ0JBQWdCLEFBR2QsSUFBSyxDaEhqRFksWUFBWSxDZ0hpRFgsSUFBSyxDaEhqRFksV0FBVyxJZ0hrRDNDLElBQUksQ0FBQztFQUNMLGFBQWEsRUFBRSxDQUFDO0NBQ2pCOztBQU1QLEFBQ0UsaUJBRGUsQUFBQSxVQUFVLEFBQ3hCLElBQUssQy9HeUJSLGdCQUFnQixHK0cxQmhCLGlCQUFpQixBQUFBLFVBQVUsQ0FFeEIsQUFBQSxLQUFDLEVBQU8sTUFBTSxBQUFiLEVBQWU7RUFDZixLQUFLLEVBQUUsSUFBSTtFQUNYLE9BQU8sRUFBRSxZQUFZO0VBQ3JCLFdBQVcsRUFBRSxDQUFDO0NBQ2Y7O0FBTkgsQUFZSSxpQkFaYSxBQUFBLFVBQVUsQUFZdEIsb0JBQW9CLEVBWnpCLGlCQUFpQixBQUFBLFVBQVUsQ0FVeEIsQUFBQSxLQUFDLEVBQU8sTUFBTSxBQUFiLENBRUMsb0JBQW9CO0FBRHZCLElBQUksQ0FYTixpQkFBaUIsQUFBQSxVQUFVLENBV25CLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQUNKLG9CQUFvQixDQUFDO0VBQ3BCLEtBQUssRUFBRSxLQUFLO0NBQ2I7O0FBR0gsQUFBQSxZQUFZLENBakJkLGlCQUFpQixBQUFBLFVBQVU7QUFrQnpCLGdCQUFnQixDQWxCbEIsaUJBQWlCLEFBQUEsVUFBVTtBQW1CekIsV0FBVyxDQW5CYixpQkFBaUIsQUFBQSxVQUFVLENBbUJYO0VBQ1osYUFBYSxFQUFFLENBQUM7Q0FDakI7O0FBRUQsQUFBQSxjQUFjLENBdkJoQixpQkFBaUIsQUFBQSxVQUFVLEFBdUJULGFBQWE7QUFDN0IsY0FBYyxDQXhCaEIsaUJBQWlCLEFBQUEsVUFBVSxBQXdCVCxhQUFhLENBQUM7RUFDNUIsT0FBTyxFQUFFLENBQUM7Q0FRWDs7QUFWRCxBQUlFLGNBSlksQ0F2QmhCLGlCQUFpQixBQUFBLFVBQVUsQUF1QlQsYUFBYSxDQUkzQixnQkFBZ0I7QUFIbEIsY0FBYyxDQXhCaEIsaUJBQWlCLEFBQUEsVUFBVSxBQXdCVCxhQUFhLENBRzNCLGdCQUFnQixDQUFDO0VBQ2YsTUFBTSxFQUFFLElBQUk7RUFDWixTQUFTLEVBQUUsT0FBTztFQUNsQixXQUFXLEVBQUUsT0FBTztFQUNwQixhQUFhLEVBQUUsT0FBTztDQUN2Qjs7QUFLSCxBQUFBLFlBQVksQ0FyQ2QsaUJBQWlCLEFBQUEsVUFBVSxDQXFDVixhQUFhLENBQUM7RUFDM0IsS0FBSyxFQUFFLElBQUk7Q0FDWjs7QUF2Q0gsQUF5Q0UsaUJBekNlLEFBQUEsVUFBVSxBQXlDeEIsU0FBUztBQXpDWixpQkFBaUIsQUFBQSxVQUFVLEdBMEN2QixTQUFTLENBQUM7RUFsSlosTUFBTSxFQUFFLFdBQVc7Q0F3SmxCOztBQWhESCxBQTZDSSxpQkE3Q2EsQUFBQSxVQUFVLEFBeUN4QixTQUFTLEFBSVAsTUFBTTtBQTdDWCxpQkFBaUIsQUFBQSxVQUFVLEdBMEN2QixTQUFTLEFBR1IsTUFBTSxDQUFDO0VBQ04sT0FBTyxFQUFFLGVBQWU7Q0FDekI7O0FBL0NMLEFBa0RFLGlCQWxEZSxBQUFBLFVBQVUsQUFrRHhCLGFBQWEsQ0FBQztFQUNiLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE1BQU0sRUFBRSxZQUFZO0VBQ3BCLE9BQU8sRUFBRSxZQUFZO0NBS3RCOztBQTFESCxBQXVESSxpQkF2RGEsQUFBQSxVQUFVLEFBa0R4QixhQUFhLENBS1osY0FBYyxDQUFDO0VBQ2IsT0FBTyxFQy9KWSxJQUFJO0NEZ0t4Qjs7QUF6REwsQUE4REksaUJBOURhLEFBQUEsVUFBVSxDQTZEekIsZ0JBQWdCLENBQ2QsY0FBYyxDQUFDO0VBQ2IsT0FBTyxFQUFFLFlBQVk7RUFDckIsUUFBUSxFQUFFLE1BQU07RUFDaEIsS0FBSyxFQUFFLElBQUk7RUFDWCxVQUFVLEVBQUUsSUFBSTtDQUNqQjs7QUFuRUwsQUFxRUksaUJBckVhLEFBQUEsVUFBVSxDQTZEekIsZ0JBQWdCLENBUWQsTUFBTSxDQUFDO0VBQ0wsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLEdBQUc7RUFDUixLQUFLLEVBQUUsSUFBSTtFQUNYLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLGNBQWMsRUFBRSxNQUFNO0NBQ3ZCOztBQTNFTCxBQThFRSxpQkE5RWUsQUFBQSxVQUFVLENBOEV4QixBQUFBLEtBQUMsRUFBTyxNQUFNLEFBQWIsRUFBZSxnQkFBZ0IsQ0FBQztFQUNoQyxLQUFLLEVBQUUsSUFBSTtDQUNaOztBQWhGSCxBQW1GRSxpQkFuRmUsQUFBQSxVQUFVLENBbUZ6QixjQUFjLENBQUM7RUFDYixTQUFTLEVBQUUsSUFBSTtFQXhMakIsa0JBQWtCLEVBeUxJLFVBQVU7RUF4TDdCLGVBQWUsRUF3TEksVUFBVTtFQXZMeEIsVUFBVSxFQXVMSSxVQUFVO0NBNEQvQjs7QUFqSkgsQUF1RkksaUJBdkZhLEFBQUEsVUFBVSxDQW1GekIsY0FBYyxBQUlYLE1BQU0sQ0FBQztFQUNOLFFBQVEsRUFBRSxNQUFNO0VBQ2hCLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLENBQUM7RUFDVCxPQUFPLEVBQUUsQ0FBQztFQUNWLE1BQU0sRUFBRSxDQUFDO0VBQ1QsYUFBYSxFQUFFLENBQUM7RUFDaEIsVUFBVSxFQUFFLElBQUk7Q0FDakI7O0FBL0ZMLEFBaUdJLGlCQWpHYSxBQUFBLFVBQVUsQ0FtRnpCLGNBQWMsQ0FjWixFQUFFLENBQUM7RUFDRCxRQUFRLEVBQUUsUUFBUTtDQStCbkI7O0FBaklMLEFBb0dNLGlCQXBHVyxBQUFBLFVBQVUsQ0FtRnpCLGNBQWMsQ0FjWixFQUFFLEFBR0MsT0FBTyxDQUFDLEtBQUssQ0FBQztFQUNiLEtBQUssRUFBRSxJQUFJO0NBQ1o7O0FBdEdQLEFBd0dNLGlCQXhHVyxBQUFBLFVBQVUsQ0FtRnpCLGNBQWMsQ0FjWixFQUFFLEFBT0MsU0FBUyxDQUFDLENBQUMsQ0FBQztFQWhOakIsTUFBTSxFQUFFLFdBQVc7Q0FrTmQ7O0FBMUdQLEFBNEdNLGlCQTVHVyxBQUFBLFVBQVUsQ0FtRnpCLGNBQWMsQ0FjWixFQUFFLENBV0EsQ0FBQyxDQUFDO0VBQ0EsTUFBTSxFQUFFLE9BQU87RUFDZixXQUFXLEVBQUUsSUFBSTtDQWNsQjs7QUE1SFAsQUFnSFEsaUJBaEhTLEFBQUEsVUFBVSxDQW1GekIsY0FBYyxDQWNaLEVBQUUsQ0FXQSxDQUFDLEFBSUUsSUFBSSxDQUFDO0VBQ0osUUFBUSxFQUFFLFFBQVE7RUFDbEIsWUFBWSxFQUFFLE1BQU07Q0FDckI7O0FBbkhULEFBcUhRLGlCQXJIUyxBQUFBLFVBQVUsQ0FtRnpCLGNBQWMsQ0FjWixFQUFFLENBV0EsQ0FBQyxDQVNDLElBQUksQUFBQSxXQUFXLENBQUM7RUFDZCxPQUFPLEVBQUUsSUFBSTtDQUNkOztBQXZIVCxBQXlIUSxpQkF6SFMsQUFBQSxVQUFVLENBbUZ6QixjQUFjLENBY1osRUFBRSxDQVdBLENBQUMsQ0FhQyxJQUFJLEFBQUEsS0FBSyxDQUFDO0VBQ1IsT0FBTyxFQUFFLFlBQVk7Q0FDdEI7O0FBM0hULEFBOEhNLGlCQTlIVyxBQUFBLFVBQVUsQ0FtRnpCLGNBQWMsQ0FjWixFQUFFLENBNkJBLEtBQUssQ0FBQztFQUNKLFlBQVksRUFBRSxLQUFLO0NBQ3BCOztBQWhJUCxBQW1JSSxpQkFuSWEsQUFBQSxVQUFVLENBbUZ6QixjQUFjLENBZ0RaLE9BQU8sQ0FBQztFQUNOLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE1BQU0sRUFBRSxHQUFHO0VBQ1gsS0FBSyxFQUFFLEdBQUc7RUFDVixNQUFNLEVBQUUsSUFBSTtFQUNaLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLE9BQU8sRUFBRSxPQUFPO0VBQ2hCLFVBQVUsRUFBRSxVQUFrQjtFQUM5QixNQUFNLEVBQUUsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFrQjtFQXpPeEMsa0JBQWtCLEVBME9NLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBTSxtQkFBWTtFQXpPakQsVUFBVSxFQXlPTSxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQU0sbUJBQVk7RUFDckQsY0FBYyxFQUFFLElBQUk7RUFDcEIsT0FBTyxFQUFFLEdBQUc7RUFsUGhCLGtCQUFrQixFQW1QTSxVQUFVO0VBbFAvQixlQUFlLEVBa1BNLFVBQVU7RUFqUDFCLFVBQVUsRUFpUE0sVUFBVTtDQUMvQjs7QUFoSkwsQUFtSkUsaUJBbkplLEFBQUEsVUFBVSxDQW1KekIsV0FBVyxDQUFDO0VBQ1YsT0FBTyxFQUFFLEdBQUc7RUFDWixVQUFVLEVBQUUsT0FBTztFQUNuQixNQUFNLEVBQUUsS0FBSztFQUNiLFdBQVcsRUFBRSxNQUFNO0NBQ3BCOztBQXhKSCxBQTJKSSxpQkEzSmEsQUFBQSxVQUFVLEFBMEp4QixVQUFVLENBQUMsZ0JBQWdCLENBQzFCLGNBQWMsQ0FBQztFQUNiLFFBQVEsRUFBRSxNQUFNO0NBQ2pCOztBQTdKTCxBQStKSSxpQkEvSmEsQUFBQSxVQUFVLEFBMEp4QixVQUFVLENBQUMsZ0JBQWdCLENBSzFCLE1BQU0sQ0FBQztFQUNMLFFBQVEsRUFBRSxNQUFNO0VBQ2hCLEdBQUcsRUFBRSxJQUFJO0VBQ1QsVUFBVSxFQUFFLElBQUk7Q0FDakI7O0FBbktMLEFBdUtJLGlCQXZLYSxBQUFBLFVBQVUsQUFzS3hCLFVBQVUsQ0FBQyxjQUFjLENBQUMsRUFBRSxBQUMxQixTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQUFBQSxXQUFXLENBQUM7RUFDM0IsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLFlBQVk7RUFDckIsS0FBSyxFQUFFLElBQUk7RUFDWCxVQUFVLEVBQUUsR0FBRztDQUNoQjs7QUE1S0wsQUE4S0ksaUJBOUthLEFBQUEsVUFBVSxBQXNLeEIsVUFBVSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBUTNCLENBQUMsQ0FBQyxJQUFJLEFBQUEsS0FBSyxDQUFDO0VBQ1YsWUFBWSxFQUFFLElBQUk7Q0FDbkI7O0FBSUwsQUFDRSxpQkFEZSxBQUFBLGdCQUFnQixBQUM5QixLQUFLLEdBQUcsZ0JBQWdCLENBQUM7RUFDeEIsT0FBTyxFQzdSYyxJQUFJO0NEOFIxQjs7QUFISCxBQU1JLGlCQU5hLEFBQUEsZ0JBQWdCLENBSy9CLGdCQUFnQixBQUNiLE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBRSxFQUFFO0VBQ1gsV0FBVyxFQUFFLHFCQUFxQjtFQUNsQyxZQUFZLEVBQUUscUJBQXFCO0VBQ25DLGFBQWEsRUFBRSxHQUFHLENBQUMsS0FBSyxDQ3pTWCx3QkFBd0I7RUQwU3JDLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE1BQU0sRUFBRSxJQUFJO0VBQ1osSUFBSSxFQUFFLEdBQUc7RUFDVCxPQUFPLEVBQUUsSUFBSTtDQUNkOztBQWZMLEFBaUJJLGlCQWpCYSxBQUFBLGdCQUFnQixDQUsvQixnQkFBZ0IsQUFZYixNQUFNLENBQUM7RUFDTixPQUFPLEVBQUUsRUFBRTtFQUNYLFdBQVcsRUFBRSxxQkFBcUI7RUFDbEMsWUFBWSxFQUFFLHFCQUFxQjtFQUNuQyxhQUFhLEVBQUUsZUFBZTtFQUM5QixRQUFRLEVBQUUsUUFBUTtFQUNsQixNQUFNLEVBQUUsSUFBSTtFQUNaLElBQUksRUFBRSxJQUFJO0VBQ1YsT0FBTyxFQUFFLElBQUk7Q0FDZDs7QUExQkwsQUE4QkksaUJBOUJhLEFBQUEsZ0JBQWdCLEFBNkI5QixPQUFPLENBQUMsZ0JBQWdCLEFBQ3RCLE9BQU8sQ0FBQztFQUNQLE1BQU0sRUFBRSxJQUFJO0VBQ1osR0FBRyxFQUFFLElBQUk7RUFDVCxVQUFVLEVBQUUsR0FBRyxDQUFDLEtBQUssQ0NoVVIsd0JBQXdCO0VEaVVyQyxhQUFhLEVBQUUsQ0FBQztDQUNqQjs7QUFuQ0wsQUFxQ0ksaUJBckNhLEFBQUEsZ0JBQWdCLEFBNkI5QixPQUFPLENBQUMsZ0JBQWdCLEFBUXRCLE1BQU0sQ0FBQztFQUNOLE1BQU0sRUFBRSxJQUFJO0VBQ1osR0FBRyxFQUFFLElBQUk7RUFDVCxVQUFVLEVBQUUsZUFBZTtFQUMzQixhQUFhLEVBQUUsQ0FBQztDQUNqQjs7QUExQ0wsQUE4Q0ksaUJBOUNhLEFBQUEsZ0JBQWdCLEFBNkM5QixXQUFXLENBQUMsZ0JBQWdCLEFBQzFCLE9BQU8sQ0FBQztFQUNQLEtBQUssRUFBRSxJQUFJO0VBQ1gsSUFBSSxFQUFFLElBQUk7Q0FDWDs7QUFqREwsQUFtREksaUJBbkRhLEFBQUEsZ0JBQWdCLEFBNkM5QixXQUFXLENBQUMsZ0JBQWdCLEFBTTFCLE1BQU0sQ0FBQztFQUNOLEtBQUssRUFBRSxJQUFJO0VBQ1gsSUFBSSxFQUFFLElBQUk7Q0FDWDs7QUF0REwsQUEwREksaUJBMURhLEFBQUEsZ0JBQWdCLEFBeUQ5QixLQUFLLEdBQUcsZ0JBQWdCLEFBQ3RCLE9BQU8sRUExRFosaUJBQWlCLEFBQUEsZ0JBQWdCLEFBeUQ5QixLQUFLLEdBQUcsZ0JBQWdCLEFBRXRCLE1BQU0sQ0FBQztFQUNOLE9BQU8sRUFBRSxLQUFLO0NBQ2Y7O0FBSUwsQUFBQSxhQUFhO0FBQ2IsY0FBYztBQUNkLGNBQWMsQ0FBQztFQUNiLE9BQU8sRUFBRSxPQUFPO0NBQ2pCOztBQUVELEFBQUEsY0FBYyxDQUFDO0VBQ2IsS0FBSyxFQUFFLElBQUk7RUFoV1gsa0JBQWtCLEVBaVdFLFVBQVU7RUFoVzNCLGVBQWUsRUFnV0UsVUFBVTtFQS9WdEIsVUFBVSxFQStWRSxVQUFVO0NBSy9COztBQVBELEFBSUUsY0FKWSxDQUlWLFVBQVUsQ0FBQyxNQUFNLENBQUM7RUFDbEIsS0FBSyxFQUFFLEdBQUc7Q0FDWDs7QUFHSCxBQUFBLGNBQWMsQ0FBQztFQUNiLEtBQUssRUFBRSxJQUFJO0VBQ1gsS0FBSyxFQUFFLElBQUk7RUExV1gsa0JBQWtCLEVBMldFLFVBQVU7RUExVzNCLGVBQWUsRUEwV0UsVUFBVTtFQXpXdEIsVUFBVSxFQXlXRSxVQUFVO0NBSy9COztBQVJELEFBS0UsY0FMWSxDQUtWLFVBQVUsQ0FBQyxNQUFNLENBQUM7RUFDbEIsS0FBSyxFQUFFLElBQUk7Q0FDWjs7QUFHSCxBQUNFLGFBRFcsR0FDUCxjQUFjLENBQUM7RUFDakIsT0FBTyxFQUFFLFNBQVM7Q0FDbkI7O0FqR3BTRCxBQUFBLGFBQWEsQ0F6QmYsYUFBYSxDaUcrVEs7RUFDZCxhQUFhLEVBQUUsQ0FBQztFQUNoQixLQUFLLEVBQUUsSUFBSTtFQUNYLEtBQUssRUFBRSxJQUFJO0NBQ1o7O0FFbllIOzs7O0dBSUc7QUFFSCxBQUFBLFdBQVcsQ0FBQztFQUNWLGFBQWEsRUFBRSxHQUFHO0VBQ2xCLFNBQVMsRUFBRSxHQUFHO0NBQ2Y7O0FBQ0QsQUFBQSxrQkFBa0IsQ0FBQztFQUNqQixLQUFLLEVBQUUsS0FBSztDQUNiOztBQUNELEFBQUEsZUFBZSxDQUFDO0VBQ2QsU0FBUyxFQUFFLEdBQUc7Q0FDZjs7QUFDRCxBQUFBLGVBQWUsQUFBQSxjQUFjLENBQUM7RUFDNUIsSUFBSSxFQUFFLElBQUk7Q0FDWDs7QUFDRCxBQUFBLGVBQWUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUM7RUFDL0IsS0FBSyxFQUFFLEtBQUs7Q0FDYjs7QUFDRCxBQUFBLG9CQUFvQixDQUFDO0VBQ25CLEdBQUcsRUFBRSxDQUFDO0VBQ04sSUFBSSxFQUFFLENBQUM7RUFDUCxPQUFPLEVBQUUsR0FBRztDQUNiOztBQUNELEFBQUEsb0JBQW9CLEFBQUEsT0FBTyxDQUFDO0VBQzFCLE9BQU8sRUFBRSxFQUFFO0VBQ1gsT0FBTyxFQUFFLFlBQVk7RUFDckIsV0FBVyxFQUFFLHFCQUFxQjtFQUNsQyxZQUFZLEVBQUUscUJBQXFCO0VBQ25DLGFBQWEsRUFBRSxHQUFHLENBQUMsS0FBSyxDQUFDLG1CQUFtQjtFQUM1QyxVQUFVLEVBQUUsQ0FBQztFQUNiLG1CQUFtQixFQUFFLGtCQUFrQjtFQUN2QyxRQUFRLEVBQUUsUUFBUTtDQUNuQjs7QUFDRCxBQUFBLG9CQUFvQixBQUFBLE1BQU0sQ0FBQztFQUN6QixPQUFPLEVBQUUsRUFBRTtFQUNYLE9BQU8sRUFBRSxZQUFZO0VBQ3JCLFdBQVcsRUFBRSxxQkFBcUI7RUFDbEMsWUFBWSxFQUFFLHFCQUFxQjtFQUNuQyxhQUFhLEVBQUUsY0FBYztFQUM3QixVQUFVLEVBQUUsQ0FBQztFQUNiLFFBQVEsRUFBRSxRQUFRO0NBQ25COztBQUNELEFBQUEsb0JBQW9CLEFBQUEsdUJBQXVCLEFBQUEsT0FBTyxDQUFDO0VBQ2pELElBQUksRUFBRSxHQUFHO0NBQ1Y7O0FBQ0QsQUFBQSxvQkFBb0IsQUFBQSx1QkFBdUIsQUFBQSxNQUFNLENBQUM7RUFDaEQsSUFBSSxFQUFFLEdBQUc7Q0FDVjs7QUFDRCxBQUFBLG9CQUFvQixBQUFBLHdCQUF3QixBQUFBLE9BQU8sQ0FBQztFQUNsRCxLQUFLLEVBQUUsR0FBRztDQUNYOztBQUNELEFBQUEsb0JBQW9CLEFBQUEsd0JBQXdCLEFBQUEsTUFBTSxDQUFDO0VBQ2pELEtBQUssRUFBRSxHQUFHO0NBQ1g7O0FBQ0QsQUFBQSxvQkFBb0IsQUFBQSx5QkFBeUIsQUFBQSxPQUFPLENBQUM7RUFDbkQsR0FBRyxFQUFFLElBQUk7Q0FDVjs7QUFDRCxBQUFBLG9CQUFvQixBQUFBLHlCQUF5QixBQUFBLE1BQU0sQ0FBQztFQUNsRCxHQUFHLEVBQUUsSUFBSTtDQUNWOztBQUNELEFBQUEsb0JBQW9CLEFBQUEsc0JBQXNCLEFBQUEsT0FBTyxDQUFDO0VBQ2hELE1BQU0sRUFBRSxJQUFJO0VBQ1osYUFBYSxFQUFFLENBQUM7RUFDaEIsVUFBVSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENBQUMsbUJBQW1CO0NBQzFDOztBQUNELEFBQUEsb0JBQW9CLEFBQUEsc0JBQXNCLEFBQUEsTUFBTSxDQUFDO0VBQy9DLE1BQU0sRUFBRSxJQUFJO0VBQ1osYUFBYSxFQUFFLENBQUM7RUFDaEIsVUFBVSxFQUFFLGNBQWM7Q0FDM0I7O0FBQ0QsQUFBQSxXQUFXLENBQUMsS0FBSyxDQUFDO0VBQ2hCLE1BQU0sRUFBRSxDQUFDO0VBQ1QscUJBQXFCLEVBQUUsSUFBSTtFQUMzQixtQkFBbUIsRUFBRSxJQUFJO0VBQ3pCLGtCQUFrQixFQUFFLElBQUk7RUFDeEIsZ0JBQWdCLEVBQUUsSUFBSTtFQUN0QixlQUFlLEVBQUUsSUFBSTtFQUNyQixXQUFXLEVBQUUsSUFBSTtDQUNsQjs7QUFDRCxBQUFBLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUU7QUFDdkIsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO0VBQ3RCLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixhQUFhLEVBQUUsR0FBRztFQUNsQixNQUFNLEVBQUUsSUFBSTtDQUNiOztBQUNELEFBQUEsY0FBYyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUU7QUFDdEMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQztFQUNyQyxnQkFBZ0IsRUFBRSxXQUFXO0NBQzlCOztBQUNELEFBQUEsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLElBQUk7QUFDM0IsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLElBQUksQ0FBQztFQUMxQixLQUFLLEVBQUUsT0FBTztDQUNmOztBQUNELEFBQUEsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLElBQUksQUFBQSxNQUFNO0FBQ2pDLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQUFBQSxRQUFRLENBQUM7RUFDOUIsVUFBVSxFQUFFLE9BQU87RUFDbkIsTUFBTSxFQUFFLE9BQU87Q0FDaEI7O0FBQ0QsQUFBQSxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsU0FBUztBQUNoQyxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsU0FBUyxBQUFBLE1BQU0sQ0FBQztFQUNyQyxVQUFVLEVBQUUsSUFBSTtFQUNoQixLQUFLLEVBQUUsT0FBTztFQUNkLE1BQU0sRUFBRSxPQUFPO0NBQ2hCOztBQUNELEFBQUEsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLFlBQVksQ0FBQztFQUNsQyxLQUFLLEVBQUUsSUFBSTtFQUNYLGdCQUFnQixFQUFFLE9BQU87RUFDekIsWUFBWSxFQUFFLE9BQU87RUFDckIsYUFBYSxFQUFFLENBQUM7Q0FDakI7O0FBQ0QsQUFBQSxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsWUFBWSxBQUFBLE1BQU07QUFDekMsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLFlBQVksQUFBQSxNQUFNLENBQUM7RUFDeEMsS0FBSyxFQUFFLElBQUk7RUFDWCxnQkFBZ0IsRUFBRSxPQUFPO0VBQ3pCLFlBQVksRUFBRSxPQUFPO0NBQ3RCOztBQUNELEFBQUEsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLFlBQVksQUFBQSxNQUFNLENBQUM7RUFDeEMsS0FBSyxFQUFFLElBQUk7RUFDWCxnQkFBZ0IsRUFBRSxPQUFPO0VBQ3pCLFlBQVksRUFBRSxPQUFPO0NBQ3RCOztBQUNELEFBQUEsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLFlBQVksQUFBQSxPQUFPO0FBQzFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQUFBQSxZQUFZLEFBQUEsT0FBTyxDQUFDO0VBQ3pDLEtBQUssRUFBRSxJQUFJO0VBQ1gsZ0JBQWdCLEVBQUUsT0FBTztFQUN6QixZQUFZLEVBQUUsT0FBTztDQUN0Qjs7QUFDRCxBQUFBLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQUFBQSxZQUFZLEFBQUEsT0FBTyxBQUFBLE1BQU07QUFDaEQsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLFlBQVksQUFBQSxPQUFPLEFBQUEsTUFBTTtBQUNoRCxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsWUFBWSxBQUFBLE9BQU8sQUFBQSxNQUFNO0FBQ2hELFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQUFBQSxZQUFZLEFBQUEsT0FBTyxBQUFBLE1BQU07QUFDaEQsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLFlBQVksQUFBQSxPQUFPLEFBQUEsTUFBTTtBQUNoRCxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsWUFBWSxBQUFBLE9BQU8sQUFBQSxNQUFNLENBQUM7RUFDL0MsS0FBSyxFQUFFLElBQUk7RUFDWCxnQkFBZ0IsRUFBRSxPQUFPO0VBQ3pCLFlBQVksRUFBRSxPQUFPO0NBQ3RCOztBQUNELEFBQUEsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLFlBQVksQUFBQSxTQUFTLEFBQUEsTUFBTTtBQUNsRCxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsWUFBWSxDQUFBLEFBQUEsUUFBQyxBQUFBLENBQVMsTUFBTTtBQUNuRCxRQUFRLENBQUEsQUFBQSxRQUFDLEFBQUEsRUFBVSxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsWUFBWSxBQUFBLE1BQU07QUFDNUQsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLFlBQVksQUFBQSxTQUFTLEFBQUEsTUFBTTtBQUNsRCxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsWUFBWSxDQUFBLEFBQUEsUUFBQyxBQUFBLENBQVMsTUFBTTtBQUNuRCxRQUFRLENBQUEsQUFBQSxRQUFDLEFBQUEsRUFBVSxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsWUFBWSxBQUFBLE1BQU07QUFDNUQsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLFlBQVksQUFBQSxTQUFTLEFBQUEsTUFBTTtBQUNsRCxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsWUFBWSxDQUFBLEFBQUEsUUFBQyxBQUFBLENB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QUFPLEFBQUEsTUFBTTtBQUMxQyxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsTUFBTSxBQUFBLE9BQU8sQUFBQSxNQUFNO0FBQzFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQUFBQSxNQUFNLEFBQUEsT0FBTyxBQUFBLE1BQU07QUFDMUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLE1BQU0sQUFBQSxPQUFPLEFBQUEsTUFBTSxDQUFDO0VBQ3pDLEtBQUssRUFBRSxJQUFJO0VBQ1gsZ0JBQWdCLEVBQUUsT0FBTztFQUN6QixZQUFZLEVBQUUsT0FBTztDQUN0Qjs7QUFDRCxBQUFBLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQUFBQSxNQUFNLEFBQUEsU0FBUyxBQUFBLE1BQU07QUFDNUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLE1BQU0sQ0FBQSxBQUFBLFFBQUMsQUFBQSxDQUFTLE1BQU07QUFDN0MsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBLEVBQVUsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLE1BQU0sQUFBQSxNQUFNO0FBQ3RELFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQUFBQSxNQUFNLEFBQUEsU0FBUyxBQUFBLE1BQU07QUFDNUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLE1BQU0sQ0FBQSxBQUFBLFFBQUMsQUFBQSxDQUFTLE1BQU07QUFDN0MsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBLEVBQVUsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLE1BQU0sQUFBQSxNQUFNO0FBQ3RELFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQUFBQSxNQUFNLEFBQUEsU0FBUyxBQUFBLE1BQU07QUFDNUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMs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LEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLE1BQU0sQUFBQSxZQUFZLEFBQUEsU0FBUyxBQUFBLE1BQU07QUFDeEQsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLE1BQU0sQUFBQSxZQUFZLENBQUEsQUFBQSxRQUFDLEFBQUEsQ0FBUyxNQUFNO0FBQ3pELFFBQVEsQ0FBQSxBQUFBLFFBQUMsQUFBQSxFQUFVLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQUFBQSxNQUFNLEFBQUEsWUFBWSxBQUFBLE1BQU07QUFDbEUsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLE1BQU0sQUFBQSxZQUFZLEFBQUEsU0FBUyxBQUFBLE1BQU07QUFDeEQsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLE1BQU0sQUFBQSxZQUFZLENBQUEsQUFBQSxRQUFDLEFBQUEsQ0FBUyxNQUFNO0FBQ3pELFFBQVEsQ0FBQSxBQUFBLFFBQUMsQUFBQSxFQUFVLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQUFBQSxNQUFNLEFBQUEsWUFBWSxBQUFBLE1BQU07QUFDbEUsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLE1BQU0sQUFBQSxZQUFZLEFBQUEsU0FBUyxBQUFBLE1BQU07QUFDeEQsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLE1BQU0sQUFBQSxZQUFZLENBQUEsQUFBQSxRQUFDLEFBQUEsQ0FBUyxNQUFNO0FBQ3pELFFBQVEsQ0FBQSxBQUFBLFFBQUMsQUFBQSxFQUFVLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQUFBQSxNQUFNLEFBQUEsWUFBWSxBQUFBLE1BQU0sQ0FBQztFQUNqRSxnQkFBZ0IsRUFBRSxPQUFPO0VBQ3pCLFlBQVksRUFBRSxPQUFPO0NBQ3RCOztBQUNELEFBQUEsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMs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LEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLE1BQU0sQUFBQSxNQUFNLEFBQUEsTUFBTTtBQUM1RCxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsTUFBTSxBQUFBLE1BQU0sQUFBQSxTQUFTLEFBQUEsTUFBTTtBQUNsRCxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsTUFBTSxBQUFBLE1BQU0sQ0FBQSxBQUFBLFFBQUMsQUFBQSxDQUFTLE1BQU07QUFDbkQsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBLEVBQVUsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLE1BQU0sQUFBQSxNQUFNLEFBQUEsTUFBTTtBQUM1RCxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsTUFBTSxBQUFBLE1BQU0sQUFBQSxTQUFTLEFBQUEsTUFBTTtBQUNsRCxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsTUFBTSxBQUFBLE1BQU0sQ0FBQSxBQUFBLFFBQUMsQUFBQSxDQUFTLE1BQU07QUFDbkQsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBLEVBQVUsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLE1BQU0sQUFBQSxNQUFNLEFBQUEsTUFBTSxDQUFDO0VBQzNELGdCQUFnQixFQUFFLE9BQU87RUFDekIsWUFBWSxFQUFFLE9BQU87Q0FDdEI7O0FBQ0QsQUFBQSxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsTUFBTSxBQUFBLE1BQU0sQUFBQSxTQUFTO0FBQzVDLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQUFBQSxNQUFNLEFBQUEsTUFBTSxBQUFBLFNBQVMsQUFBQSxPQUFPLENBQUM7RUFDbEQsVUFBVSxFQUFFLE9BQU87RUFDbkIsS0FBSyxFQUFFLE9BQU87Q0FDZjs7QUFDRCxBQUFBLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFB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LFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQUFBQSxTQUFTLEFBQUEsWUFBWSxBQUFBLFNBQVMsQUFBQSxNQUFNO0FBQzNELFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQUFBQSxTQUFTLENBQUEsQUFBQSxRQUFDLEFBQUEsQ0FBUyxNQUFNO0FBQ2hELFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQUFBQSxTQUFTLEFBQUEsWUFBWSxDQUFBLEFBQUEsUUFBQyxBQUFBLENBQVMsTUFBTTtBQUM1RCxRQUFRLENBQUEsQUFBQSxRQUFDLEFBQUEsRUFBVSxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsU0FBUyxBQUFBLE1BQU07QUFDekQsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBLEVBQVUsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLFNBQVMsQUFBQSxZQUFZLEFBQUEsTUFBTTtBQUNyRSxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsU0FBUyxBQUFBLFNBQVMsQUFBQSxNQUFNO0FBQy9DLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQUFBQSxTQUFTLEFBQUEsWUFBWSxBQUFBLFNBQVMsQUFBQSxNQUFNO0FBQzNELFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQUFBQSxTQUFTLENBQUEsQUFBQSxRQUFDLEFBQUEsQ0FBUyxNQUFNO0FBQ2hELFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQUFBQSxTQUFTLEFBQUEsWUFBWSxDQUFBLEFBQUEsUUFBQyxBQUFBLENBQVMsTUFBTTtBQUM1RCxRQUFRLENBQUEsQUFBQSxRQUFDLEFBQUEsRUFBVSxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsU0FBUyxBQUFBLE1BQU07QUFDekQsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBLEVBQVUsV0FBVyxDQUFD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QUFVLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQUFBQSxPQUFPLEFBQUEsWUFBWSxBQUFBLE1BQU07QUFDbkUsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLE9BQU8sQUFBQSxTQUFTLEFBQUEsTUFBTTtBQUM3QyxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsT0FBTyxBQUFBLFlBQVksQUFBQSxTQUFTLEFBQUEsTUFBTTtBQUN6RCxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsT0FBTyxDQUFBLEFBQUEsUUFBQyxBQUFBLENBQVMsTUFBTTtBQUM5QyxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsT0FBTyxBQUFBLFlBQVksQ0FBQSxBQUFBLFFBQUMsQUFBQSxDQUFTLE1BQU07QUFDMUQsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBLEVBQVUsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLE9BQU8sQUFBQSxNQUFNO0FBQ3ZELFFBQVEsQ0FBQSxBQUFBLFFBQUMsQUFBQSxFQUFVLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQUFBQSxPQUFPLEFBQUEsWUFBWSxBQUFBLE1BQU07QUFDbkUsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLE9BQU8sQUFBQSxTQUFTLEFBQUEsTUFBTTtBQUM3QyxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsT0FBTyxBQUFBLFlBQVksQUFBQSxTQUFTLEFBQUEsTUFBTTtBQUN6RCxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsT0FBTyxDQUFBLEFBQUEsUUFBQyxBQUFBLENBQVMsTUFBTTtBQUM5QyxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsT0FBTyxBQUFBLFlBQVksQ0FBQSxBQUFBLFFBQUMsQUFBQSxD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SyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxBQUFBLE9BQU8sQUFBQSxNQUFNLEFBQUEsT0FBTyxBQUFBLE1BQU07QUFDdEQsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQUFBQSxPQUFPLEFBQUEsU0FBUyxBQUFBLE9BQU8sQUFBQSxNQUFNO0FBQ3pELFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEFBQUEsT0FBTyxBQUFBLFNBQVMsQUFBQSxNQUFNLEFBQUEsT0FBTyxBQUFBLE1BQU07QUFDL0QsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQUFBQSxPQUFPLEFBQUEsT0FBTyxBQUFBLE1BQU07QUFDaEQsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQUFBQSxPQUFPLEFBQUEsTUFBTSxBQUFBLE9BQU8sQUFBQSxNQUFNO0FBQ3RELFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEFBQUEsT0FBTyxBQUFBLFNBQVMsQUFBQSxPQUFPLEFBQUEsTUFBTTtBQUN6RCxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxBQUFBLE9BQU8sQUFBQSxTQUFTLEFBQUEsTUFBTSxBQUFBLE9BQU8sQUFBQSxNQUFNO0FBQy9ELFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEFBQUEsT0FBTyxBQUFBLE9BQU8sQUFBQSxNQUFNO0FBQ2hELFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEFBQUEsT0FBTyxBQUFBLE1BQU0sQUFBQSxPQUFPLEFBQUEsTUFBTTtBQUN0RCxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxBQUFBLE9BQU8sQUFBQSxTQUFTLEFBQUEsT0FBTyxBQUFBLE1BQU07QUFDekQsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQUFBQSxPQUFPLEFBQUEsU0FBUyxBQUFBLE1BQU0sQUFBQSxPQUFPLEFBQUEsTUFBTTtBQUMvRCxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxBQUFBLE9BQU8sQUFBQSxPQUFPLEFBQUEsTUFBTTtBQUNoRCxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxBQUFBLE9BQU8sQUFBQSxNQUFNLEFBQUEsT0FBTyxBQUFBLE1BQU07QUFDdEQsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQUFBQSxPQUFPLEFBQUEsU0FBUyxBQUFBLE9BQU8sQUFBQSxNQUFNO0FBQ3pELFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEFBQUEsT0FBTyxBQUFBLFNBQVMsQUFBQSxNQUFNLEFBQUEsT0FBTyxBQUFBLE1BQU07QUFDL0QsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQUFBQSxPQUFPLEFBQUEsT0FBTyxBQUFBLE1BQU07QUFDaEQsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQUFBQSxPQUFPLEFBQUEsTUFBTSxBQUFBLE9BQU8sQUFBQSxNQUFNO0FBQ3RELFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEFBQUEsT0FBTyxBQUFBLFNBQVMsQUFBQSxPQUFPLEFBQUEsTUFBTTtBQUN6RCxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxBQUFBLE9BQU8sQUFBQSxTQUFTLEFBQUEsTUFBTSxBQUFBLE9BQU8sQUFBQSxNQUFNLENBQUM7RUFDOUQsS0FBSyxFQUFFLElBQUk7RUFDWCxnQkFBZ0IsRUFBRSxPQUFPO0VBQ3pCLFlBQVksRUFBRSxPQUFPO0NBQ3RCOztBQUNELEFBQUEsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQUFBQSxPQUFPLEFBQUEsU0FBUyxBQUFBLE1BQU07QUFDbEQsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQUFBQSxPQUFPLEFBQUEsTUFBTSxBQUFBLFNBQVMsQUFBQSxNQUFNO0FBQ3hELFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEFBQUEsT0FBTyxBQUFBLFNBQVMsQUFBQSxTQUFTLEFBQUEsTUFBTTtBQUMzRCxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxBQUFBLE9BQU8sQUFBQSxTQUFTLEFBQUEsTUFBTSxBQUFBLFNBQVMsQUFBQSxNQUFNO0FBQ2pFLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEFBQUEsT0FBTyxDQUFBLEFBQUEsUUFBQyxBQUFBLENBQVMsTUFBTTtBQUNuRCxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxBQUFBLE9BQU8sQUFBQSxNQUFNLENBQUEsQUFBQSxRQUFDLEFBQUEsQ0FBUyxNQUFNO0FBQ3pELFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEFBQUEsT0FBTyxBQUFBLFNBQVMsQ0FBQSxBQUFBLFFBQUMsQUFBQSxDQUFTLE1BQU07QUFDNUQsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQUFBQSxPQUFPLEFBQUEsU0FBUyxBQUFBLE1BQU0sQ0FBQSxBQUFBLFFBQUMsQUFBQSxDQUFTLE1BQU07QUFDbEUsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBLEVBQVUsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQUFBQSxPQUFPLEFBQUEsTUFBTTtBQUM1RCxRQUFRLENBQUEsQUFBQSxRQUFDLEFBQUEsRUFBVSxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxBQUFBLE9BQU8sQUFBQSxNQUFNLEFBQUEsTUFBTTtBQUNsRSxRQUFRLENBQUEsQUFBQSxRQUFDLEFBQUEsRUFBVSxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxBQUFBLE9BQU8sQUFBQSxTQUFTLEFBQUEsTUFBTTtBQUNyRSxRQUFRLENBQUEsQUFBQSxRQUFDLEFBQUEsRUFBVSxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxBQUFBLE9BQU8sQUFBQSxTQUFTLEFBQUEsTUFBTSxBQUFBLE1BQU07QUFDM0UsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQUFBQSxPQUFPLEFBQUEsU0FBUyxBQUFBLE1BQU07QUFDbEQsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQUFBQSxPQUFPLEFBQUEsTUFBTSxBQUFBLFNBQVMsQUFBQSxNQUFNO0FBQ3hELFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEFBQUEsT0FBTyxBQUFBLFNBQVMsQUFBQSxTQUFTLEFBQUEsTUFBTTtBQUMzRCxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxBQUFBLE9BQU8sQUFBQSxTQUFTLEFBQUEsTUFBTSxBQUFBLFNBQVMsQUFBQSxNQUFNO0FBQ2pFLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEFBQUEsT0FBTyxDQUFBLEFBQUEsUUFBQyxBQUFBLENBQVMsTUFBTTtBQUNuRCxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxBQUFBLE9BQU8sQUFBQSxNQUFNLENBQUEsQUFBQSxRQUFDLEFBQUEsQ0FBUyxNQUFNO0FBQ3pELFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEFBQUEsT0FBTyxBQUFBLFNBQVMsQ0FBQSxBQUFBLFFBQUMsQUFBQSxDQUFTLE1BQU07QUFDNUQsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQUFBQSxPQUFPLEFBQUEsU0FBUyxBQUFBLE1BQU0sQ0FBQSxBQUFBLFFBQUMsQUFBQSxDQUFTLE1BQU07QUFDbEUsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBLEVBQVUsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQUFBQSxPQUFPLEFBQUEsTUFBTTtBQUM1RCxRQUFRLENBQUEsQUFBQSxRQUFDLEFBQUEsRUFBVSxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxBQUFBLE9BQU8sQUFBQSxNQUFNLEFBQUEsTUFBTTtBQUNsRSxRQUFRLENBQUEsQUFBQSxRQUFDLEFBQUEsRUFBVSxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxBQUFBLE9BQU8sQUFBQSxTQUFTLEFBQUEsTUFBTTtBQUNyRSxRQUFRLENBQUEsQUFBQSxRQUFDLEFBQUEsRUFBVSxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxBQUFBLE9BQU8sQUFBQSxTQUFTLEFBQUEsTUFBTSxBQUFBLE1BQU07QUFDM0UsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQUFBQSxPQUFPLEFBQUEsU0FBUyxBQUFBLE1BQU07QUFDbEQsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQUFBQSxPQUFPLEFBQUEsTUFBTSxBQUFBLFNBQVMsQUFBQSxNQUFNO0FBQ3hELFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEFBQUEsT0FBTyxBQUFBLFNBQVMsQUFBQSxTQUFTLEFBQUEsTUFBTTtBQUMzRCxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxBQUFBLE9BQU8sQUFBQSxTQUFTLEFBQUEsTUFBTSxBQUFBLFNBQVMsQUFBQSxNQUFNO0FBQ2pFLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEFBQUEsT0FBTyxDQUFBLEFBQUEsUUFBQyxBQUFBLENBQVMsTUFBTTtBQUNuRCxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxBQUFBLE9BQU8sQUFBQSxNQUFNLENBQUEsQUFBQSxRQUFDLEFBQUEsQ0FBUyxNQUFNO0FBQ3pELFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEFBQUEsT0FBTyxBQUFBLFNBQVMsQ0FBQSxBQUFBLFFBQUMsQUFBQSxDQUFTLE1BQU07QUFDNUQsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQUFBQSxPQUFPLEFBQUEsU0FBUyxBQUFBLE1BQU0sQ0FBQSxBQUFBLFFBQUMsQUFBQSxDQUFTLE1BQU07QUFDbEUsUUFBUSxDQUFBLEFBQUEsUUFBQyxBQUFBLEVBQVUsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQUFBQSxPQUFPLEFBQUEsTUFBTTtBQUM1RCxRQUFRLENBQUEsQUFBQSxRQUFDLEFBQUEsRUFBVSxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxBQUFBLE9BQU8sQUFBQSxNQUFNLEFBQUEsTUFBTTtBQUNsRSxRQUFRLENBQUEsQUFBQSxRQUFDLEFBQUEsRUFBVSxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxBQUFBLE9BQU8sQUFBQSxTQUFTLEFBQUEsTUFBTTtBQUNyRSxRQUFRLENBQUEsQUFBQSxRQUFDLEFBQUEsRUFBVSxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxBQUFB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 */
