/* 1. Configuration and helpers*/
/* 2- Vendor extensions*/
/* main: ../main.scss*/
/* -----------------------------------------------------------------------------*/
/* This file contains bootstrap variables overwrites.*/
/* -----------------------------------------------------------------------------*/
/*== Media queries breakpoints*/
/**/
/*## Define the breakpoints at which your layout will change, adapting to different screen sizes.*/
/* Extra small screen / phone*/
/*** Deprecated `$screen-xs` as of v3.0.1*/
/*** Deprecated `$screen-xs-min` as of v3.2.0*/
/*** Deprecated `$screen-phone` as of v3.0.1*/
/* Small screen / tablet*/
/*** Deprecated `$screen-sm` as of v3.0.1*/
/*** Deprecated `$screen-tablet` as of v3.0.1*/
/* Medium screen / desktop*/
/*** Deprecated `$screen-md` as of v3.0.1*/
/*** Deprecated `$screen-desktop` as of v3.0.1*/
/* Large screen / wide desktop*/
/*** Deprecated `$screen-lg` as of v3.0.1*/
/*** Deprecated `$screen-lg-desktop` as of v3.0.1*/
/* So media queries don't overlap when required, provide a maximum*/
/*== Grid system*/
/**/
/*## Define your custom responsive grid.*/
/*** Number of columns in the grid.*/
/*** Padding between columns. Gets divided in half for the left and right.*/
/* Navbar collapse*/
/*** Point at which the navbar becomes uncollapsed.*/
/*** Point at which the navbar begins collapsing.*/
/*== Container sizes*/
/**/
/*## Define the maximum width of `.container` for different screen sizes.*/
/* Small screen / tablet*/
/*** For `$screen-sm-min` and up.*/
/* Medium screen / desktop*/
/*** For `$screen-md-min` and up.*/
/* Large screen / wide desktop*/
/*** For `$screen-lg-min` and up.*/
@media (min-width: 768px) {
  .container--sm {
    width: 756px !important;
  }
}

@media (min-width: 992px) {
  .container--sm {
    width: 956px !important;
  }
}

@media (min-width: 1460px) {
  .container--sm {
    width: 1336px !important;
  }
}

/* 3. Vendors*/
/*!
 * 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;
}

/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  .navbar {
    display: none;
  }
  .btn > .caret,
  .dropup > .btn > .caret {
    border-top-color: #000 !important;
  }
  .label {
    border: 1px solid #000;
  }
  .table {
    border-collapse: collapse !important;
  }
  .table td,
  .table th {
    background-color: #fff !important;
  }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #ddd !important;
  }
}

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

.container:before, .container:after {
  content: " ";
  display: table;
}

.container:after {
  clear: both;
}

@media (min-width: 768px) {
  .container {
    width: 756px;
  }
}

@media (min-width: 992px) {
  .container {
    width: 956px;
  }
}

@media (min-width: 1460px) {
  .container {
    width: 1460px;
  }
}

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

.container-fluid:before, .container-fluid:after {
  content: " ";
  display: table;
}

.container-fluid:after {
  clear: both;
}

.row {
  margin-left: -18px;
  margin-right: -18px;
}

.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 {
  position: relative;
  min-height: 1px;
  padding-left: 18px;
  padding-right: 18px;
}

.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 {
  float: left;
}

.col-xs-1 {
  width: 8.33333%;
}

.col-xs-2 {
  width: 16.66667%;
}

.col-xs-3 {
  width: 25%;
}

.col-xs-4 {
  width: 33.33333%;
}

.col-xs-5 {
  width: 41.66667%;
}

.col-xs-6 {
  width: 50%;
}

.col-xs-7 {
  width: 58.33333%;
}

.col-xs-8 {
  width: 66.66667%;
}

.col-xs-9 {
  width: 75%;
}

.col-xs-10 {
  width: 83.33333%;
}

.col-xs-11 {
  width: 91.66667%;
}

.col-xs-12 {
  width: 100%;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.col-xs-offset-0 {
  margin-left: 0%;
}

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

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

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

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

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

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

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

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

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

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

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

.col-xs-offset-12 {
  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 {
    float: left;
  }
  .col-sm-1 {
    width: 8.33333%;
  }
  .col-sm-2 {
    width: 16.66667%;
  }
  .col-sm-3 {
    width: 25%;
  }
  .col-sm-4 {
    width: 33.33333%;
  }
  .col-sm-5 {
    width: 41.66667%;
  }
  .col-sm-6 {
    width: 50%;
  }
  .col-sm-7 {
    width: 58.33333%;
  }
  .col-sm-8 {
    width: 66.66667%;
  }
  .col-sm-9 {
    width: 75%;
  }
  .col-sm-10 {
    width: 83.33333%;
  }
  .col-sm-11 {
    width: 91.66667%;
  }
  .col-sm-12 {
    width: 100%;
  }
  .col-sm-pull-0 {
    right: auto;
  }
  .col-sm-pull-1 {
    right: 8.33333%;
  }
  .col-sm-pull-2 {
    right: 16.66667%;
  }
  .col-sm-pull-3 {
    right: 25%;
  }
  .col-sm-pull-4 {
    right: 33.33333%;
  }
  .col-sm-pull-5 {
    right: 41.66667%;
  }
  .col-sm-pull-6 {
    right: 50%;
  }
  .col-sm-pull-7 {
    right: 58.33333%;
  }
  .col-sm-pull-8 {
    right: 66.66667%;
  }
  .col-sm-pull-9 {
    right: 75%;
  }
  .col-sm-pull-10 {
    right: 83.33333%;
  }
  .col-sm-pull-11 {
    right: 91.66667%;
  }
  .col-sm-pull-12 {
    right: 100%;
  }
  .col-sm-push-0 {
    left: auto;
  }
  .col-sm-push-1 {
    left: 8.33333%;
  }
  .col-sm-push-2 {
    left: 16.66667%;
  }
  .col-sm-push-3 {
    left: 25%;
  }
  .col-sm-push-4 {
    left: 33.33333%;
  }
  .col-sm-push-5 {
    left: 41.66667%;
  }
  .col-sm-push-6 {
    left: 50%;
  }
  .col-sm-push-7 {
    left: 58.33333%;
  }
  .col-sm-push-8 {
    left: 66.66667%;
  }
  .col-sm-push-9 {
    left: 75%;
  }
  .col-sm-push-10 {
    left: 83.33333%;
  }
  .col-sm-push-11 {
    left: 91.66667%;
  }
  .col-sm-push-12 {
    left: 100%;
  }
  .col-sm-offset-0 {
    margin-left: 0%;
  }
  .col-sm-offset-1 {
    margin-left: 8.33333%;
  }
  .col-sm-offset-2 {
    margin-left: 16.66667%;
  }
  .col-sm-offset-3 {
    margin-left: 25%;
  }
  .col-sm-offset-4 {
    margin-left: 33.33333%;
  }
  .col-sm-offset-5 {
    margin-left: 41.66667%;
  }
  .col-sm-offset-6 {
    margin-left: 50%;
  }
  .col-sm-offset-7 {
    margin-left: 58.33333%;
  }
  .col-sm-offset-8 {
    margin-left: 66.66667%;
  }
  .col-sm-offset-9 {
    margin-left: 75%;
  }
  .col-sm-offset-10 {
    margin-left: 83.33333%;
  }
  .col-sm-offset-11 {
    margin-left: 91.66667%;
  }
  .col-sm-offset-12 {
    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 {
    float: left;
  }
  .col-md-1 {
    width: 8.33333%;
  }
  .col-md-2 {
    width: 16.66667%;
  }
  .col-md-3 {
    width: 25%;
  }
  .col-md-4 {
    width: 33.33333%;
  }
  .col-md-5 {
    width: 41.66667%;
  }
  .col-md-6 {
    width: 50%;
  }
  .col-md-7 {
    width: 58.33333%;
  }
  .col-md-8 {
    width: 66.66667%;
  }
  .col-md-9 {
    width: 75%;
  }
  .col-md-10 {
    width: 83.33333%;
  }
  .col-md-11 {
    width: 91.66667%;
  }
  .col-md-12 {
    width: 100%;
  }
  .col-md-pull-0 {
    right: auto;
  }
  .col-md-pull-1 {
    right: 8.33333%;
  }
  .col-md-pull-2 {
    right: 16.66667%;
  }
  .col-md-pull-3 {
    right: 25%;
  }
  .col-md-pull-4 {
    right: 33.33333%;
  }
  .col-md-pull-5 {
    right: 41.66667%;
  }
  .col-md-pull-6 {
    right: 50%;
  }
  .col-md-pull-7 {
    right: 58.33333%;
  }
  .col-md-pull-8 {
    right: 66.66667%;
  }
  .col-md-pull-9 {
    right: 75%;
  }
  .col-md-pull-10 {
    right: 83.33333%;
  }
  .col-md-pull-11 {
    right: 91.66667%;
  }
  .col-md-pull-12 {
    right: 100%;
  }
  .col-md-push-0 {
    left: auto;
  }
  .col-md-push-1 {
    left: 8.33333%;
  }
  .col-md-push-2 {
    left: 16.66667%;
  }
  .col-md-push-3 {
    left: 25%;
  }
  .col-md-push-4 {
    left: 33.33333%;
  }
  .col-md-push-5 {
    left: 41.66667%;
  }
  .col-md-push-6 {
    left: 50%;
  }
  .col-md-push-7 {
    left: 58.33333%;
  }
  .col-md-push-8 {
    left: 66.66667%;
  }
  .col-md-push-9 {
    left: 75%;
  }
  .col-md-push-10 {
    left: 83.33333%;
  }
  .col-md-push-11 {
    left: 91.66667%;
  }
  .col-md-push-12 {
    left: 100%;
  }
  .col-md-offset-0 {
    margin-left: 0%;
  }
  .col-md-offset-1 {
    margin-left: 8.33333%;
  }
  .col-md-offset-2 {
    margin-left: 16.66667%;
  }
  .col-md-offset-3 {
    margin-left: 25%;
  }
  .col-md-offset-4 {
    margin-left: 33.33333%;
  }
  .col-md-offset-5 {
    margin-left: 41.66667%;
  }
  .col-md-offset-6 {
    margin-left: 50%;
  }
  .col-md-offset-7 {
    margin-left: 58.33333%;
  }
  .col-md-offset-8 {
    margin-left: 66.66667%;
  }
  .col-md-offset-9 {
    margin-left: 75%;
  }
  .col-md-offset-10 {
    margin-left: 83.33333%;
  }
  .col-md-offset-11 {
    margin-left: 91.66667%;
  }
  .col-md-offset-12 {
    margin-left: 100%;
  }
}

@media (min-width: 1460px) {
  .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 {
    float: left;
  }
  .col-lg-1 {
    width: 8.33333%;
  }
  .col-lg-2 {
    width: 16.66667%;
  }
  .col-lg-3 {
    width: 25%;
  }
  .col-lg-4 {
    width: 33.33333%;
  }
  .col-lg-5 {
    width: 41.66667%;
  }
  .col-lg-6 {
    width: 50%;
  }
  .col-lg-7 {
    width: 58.33333%;
  }
  .col-lg-8 {
    width: 66.66667%;
  }
  .col-lg-9 {
    width: 75%;
  }
  .col-lg-10 {
    width: 83.33333%;
  }
  .col-lg-11 {
    width: 91.66667%;
  }
  .col-lg-12 {
    width: 100%;
  }
  .col-lg-pull-0 {
    right: auto;
  }
  .col-lg-pull-1 {
    right: 8.33333%;
  }
  .col-lg-pull-2 {
    right: 16.66667%;
  }
  .col-lg-pull-3 {
    right: 25%;
  }
  .col-lg-pull-4 {
    right: 33.33333%;
  }
  .col-lg-pull-5 {
    right: 41.66667%;
  }
  .col-lg-pull-6 {
    right: 50%;
  }
  .col-lg-pull-7 {
    right: 58.33333%;
  }
  .col-lg-pull-8 {
    right: 66.66667%;
  }
  .col-lg-pull-9 {
    right: 75%;
  }
  .col-lg-pull-10 {
    right: 83.33333%;
  }
  .col-lg-pull-11 {
    right: 91.66667%;
  }
  .col-lg-pull-12 {
    right: 100%;
  }
  .col-lg-push-0 {
    left: auto;
  }
  .col-lg-push-1 {
    left: 8.33333%;
  }
  .col-lg-push-2 {
    left: 16.66667%;
  }
  .col-lg-push-3 {
    left: 25%;
  }
  .col-lg-push-4 {
    left: 33.33333%;
  }
  .col-lg-push-5 {
    left: 41.66667%;
  }
  .col-lg-push-6 {
    left: 50%;
  }
  .col-lg-push-7 {
    left: 58.33333%;
  }
  .col-lg-push-8 {
    left: 66.66667%;
  }
  .col-lg-push-9 {
    left: 75%;
  }
  .col-lg-push-10 {
    left: 83.33333%;
  }
  .col-lg-push-11 {
    left: 91.66667%;
  }
  .col-lg-push-12 {
    left: 100%;
  }
  .col-lg-offset-0 {
    margin-left: 0%;
  }
  .col-lg-offset-1 {
    margin-left: 8.33333%;
  }
  .col-lg-offset-2 {
    margin-left: 16.66667%;
  }
  .col-lg-offset-3 {
    margin-left: 25%;
  }
  .col-lg-offset-4 {
    margin-left: 33.33333%;
  }
  .col-lg-offset-5 {
    margin-left: 41.66667%;
  }
  .col-lg-offset-6 {
    margin-left: 50%;
  }
  .col-lg-offset-7 {
    margin-left: 58.33333%;
  }
  .col-lg-offset-8 {
    margin-left: 66.66667%;
  }
  .col-lg-offset-9 {
    margin-left: 75%;
  }
  .col-lg-offset-10 {
    margin-left: 83.33333%;
  }
  .col-lg-offset-11 {
    margin-left: 91.66667%;
  }
  .col-lg-offset-12 {
    margin-left: 100%;
  }
}

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

.fade.in {
  opacity: 1;
}

.collapse {
  display: none;
}

.collapse.in {
  display: block;
}

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

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

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

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

.nav:before, .nav:after {
  content: " ";
  display: table;
}

.nav:after {
  clear: both;
}

.nav > li {
  position: relative;
  display: block;
}

.nav > li > a {
  position: relative;
  display: block;
  padding: 10px 15px;
}

.nav > li > a:hover, .nav > li > a:focus {
  text-decoration: none;
  background-color: #eeeeee;
}

.nav > li.disabled > a {
  color: #777777;
}

.nav > li.disabled > a:hover, .nav > li.disabled > a:focus {
  color: #777777;
  text-decoration: none;
  background-color: transparent;
  cursor: not-allowed;
}

.nav .open > a, .nav .open > a:hover, .nav .open > a:focus {
  background-color: #eeeeee;
  border-color: #337ab7;
}

.nav .nav-divider {
  height: 1px;
  margin: 17px 0;
  overflow: hidden;
  background-color: #e5e5e5;
}

.nav > li > a > img {
  max-width: none;
}

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

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

.nav-tabs > li > a {
  margin-right: 2px;
  line-height: 2;
  border: 1px solid transparent;
  border-radius: 4px 4px 0 0;
}

.nav-tabs > li > a:hover {
  border-color: #eeeeee #eeeeee #ddd;
}

.nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
  color: #555555;
  background-color: #fff;
  border: 1px solid #ddd;
  border-bottom-color: transparent;
  cursor: default;
}

.nav-pills > li {
  float: left;
}

.nav-pills > li > a {
  border-radius: 4px;
}

.nav-pills > li + li {
  margin-left: 2px;
}

.nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus {
  color: #fff;
  background-color: #337ab7;
}

.nav-stacked > li {
  float: none;
}

.nav-stacked > li + li {
  margin-top: 2px;
  margin-left: 0;
}

.nav-justified, .nav-tabs.nav-justified {
  width: 100%;
}

.nav-justified > li, .nav-tabs.nav-justified > li {
  float: none;
}

.nav-justified > li > a, .nav-tabs.nav-justified > li > a {
  text-align: center;
  margin-bottom: 5px;
}

.nav-justified > .dropdown .dropdown-menu {
  top: auto;
  left: auto;
}

@media (min-width: 768px) {
  .nav-justified > li, .nav-tabs.nav-justified > li {
    display: table-cell;
    width: 1%;
  }
  .nav-justified > li > a, .nav-tabs.nav-justified > li > a {
    margin-bottom: 0;
  }
}

.nav-tabs-justified, .nav-tabs.nav-justified {
  border-bottom: 0;
}

.nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a {
  margin-right: 0;
  border-radius: 4px;
}

.nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a,
.nav-tabs-justified > .active > a:hover, .nav-tabs.nav-justified > .active > a:hover,
.nav-tabs-justified > .active > a:focus, .nav-tabs.nav-justified > .active > a:focus {
  border: 1px solid #ddd;
}

@media (min-width: 768px) {
  .nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a {
    border-bottom: 1px solid #ddd;
    border-radius: 4px 4px 0 0;
  }
  .nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a,
  .nav-tabs-justified > .active > a:hover, .nav-tabs.nav-justified > .active > a:hover,
  .nav-tabs-justified > .active > a:focus, .nav-tabs.nav-justified > .active > a:focus {
    border-bottom-color: #fff;
  }
}

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

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

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

@-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: 1459px) {
  .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: 1459px) {
  .visible-md-block {
    display: block !important;
  }
}

@media (min-width: 992px) and (max-width: 1459px) {
  .visible-md-inline {
    display: inline !important;
  }
}

@media (min-width: 992px) and (max-width: 1459px) {
  .visible-md-inline-block {
    display: inline-block !important;
  }
}

@media (min-width: 1460px) {
  .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: 1460px) {
  .visible-lg-block {
    display: block !important;
  }
}

@media (min-width: 1460px) {
  .visible-lg-inline {
    display: inline !important;
  }
}

@media (min-width: 1460px) {
  .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: 1459px) {
  .hidden-md {
    display: none !important;
  }
}

@media (min-width: 1460px) {
  .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;
  }
}

body[data-aos-duration='50'] [data-aos], [data-aos][data-aos][data-aos-duration='50'] {
  transition-duration: 50ms;
}

body[data-aos-delay='50'] [data-aos], [data-aos][data-aos][data-aos-delay='50'] {
  transition-delay: 0;
}

body[data-aos-delay='50'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='50'].aos-animate {
  transition-delay: 50ms;
}

body[data-aos-duration='100'] [data-aos], [data-aos][data-aos][data-aos-duration='100'] {
  transition-duration: 100ms;
}

body[data-aos-delay='100'] [data-aos], [data-aos][data-aos][data-aos-delay='100'] {
  transition-delay: 0;
}

body[data-aos-delay='100'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='100'].aos-animate {
  transition-delay: 100ms;
}

body[data-aos-duration='150'] [data-aos], [data-aos][data-aos][data-aos-duration='150'] {
  transition-duration: 150ms;
}

body[data-aos-delay='150'] [data-aos], [data-aos][data-aos][data-aos-delay='150'] {
  transition-delay: 0;
}

body[data-aos-delay='150'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='150'].aos-animate {
  transition-delay: 150ms;
}

body[data-aos-duration='200'] [data-aos], [data-aos][data-aos][data-aos-duration='200'] {
  transition-duration: 200ms;
}

body[data-aos-delay='200'] [data-aos], [data-aos][data-aos][data-aos-delay='200'] {
  transition-delay: 0;
}

body[data-aos-delay='200'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='200'].aos-animate {
  transition-delay: 200ms;
}

body[data-aos-duration='250'] [data-aos], [data-aos][data-aos][data-aos-duration='250'] {
  transition-duration: 250ms;
}

body[data-aos-delay='250'] [data-aos], [data-aos][data-aos][data-aos-delay='250'] {
  transition-delay: 0;
}

body[data-aos-delay='250'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='250'].aos-animate {
  transition-delay: 250ms;
}

body[data-aos-duration='300'] [data-aos], [data-aos][data-aos][data-aos-duration='300'] {
  transition-duration: 300ms;
}

body[data-aos-delay='300'] [data-aos], [data-aos][data-aos][data-aos-delay='300'] {
  transition-delay: 0;
}

body[data-aos-delay='300'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='300'].aos-animate {
  transition-delay: 300ms;
}

body[data-aos-duration='350'] [data-aos], [data-aos][data-aos][data-aos-duration='350'] {
  transition-duration: 350ms;
}

body[data-aos-delay='350'] [data-aos], [data-aos][data-aos][data-aos-delay='350'] {
  transition-delay: 0;
}

body[data-aos-delay='350'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='350'].aos-animate {
  transition-delay: 350ms;
}

body[data-aos-duration='400'] [data-aos], [data-aos][data-aos][data-aos-duration='400'] {
  transition-duration: 400ms;
}

body[data-aos-delay='400'] [data-aos], [data-aos][data-aos][data-aos-delay='400'] {
  transition-delay: 0;
}

body[data-aos-delay='400'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='400'].aos-animate {
  transition-delay: 400ms;
}

body[data-aos-duration='450'] [data-aos], [data-aos][data-aos][data-aos-duration='450'] {
  transition-duration: 450ms;
}

body[data-aos-delay='450'] [data-aos], [data-aos][data-aos][data-aos-delay='450'] {
  transition-delay: 0;
}

body[data-aos-delay='450'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='450'].aos-animate {
  transition-delay: 450ms;
}

body[data-aos-duration='500'] [data-aos], [data-aos][data-aos][data-aos-duration='500'] {
  transition-duration: 500ms;
}

body[data-aos-delay='500'] [data-aos], [data-aos][data-aos][data-aos-delay='500'] {
  transition-delay: 0;
}

body[data-aos-delay='500'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='500'].aos-animate {
  transition-delay: 500ms;
}

body[data-aos-duration='550'] [data-aos], [data-aos][data-aos][data-aos-duration='550'] {
  transition-duration: 550ms;
}

body[data-aos-delay='550'] [data-aos], [data-aos][data-aos][data-aos-delay='550'] {
  transition-delay: 0;
}

body[data-aos-delay='550'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='550'].aos-animate {
  transition-delay: 550ms;
}

body[data-aos-duration='600'] [data-aos], [data-aos][data-aos][data-aos-duration='600'] {
  transition-duration: 600ms;
}

body[data-aos-delay='600'] [data-aos], [data-aos][data-aos][data-aos-delay='600'] {
  transition-delay: 0;
}

body[data-aos-delay='600'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='600'].aos-animate {
  transition-delay: 600ms;
}

body[data-aos-duration='650'] [data-aos], [data-aos][data-aos][data-aos-duration='650'] {
  transition-duration: 650ms;
}

body[data-aos-delay='650'] [data-aos], [data-aos][data-aos][data-aos-delay='650'] {
  transition-delay: 0;
}

body[data-aos-delay='650'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='650'].aos-animate {
  transition-delay: 650ms;
}

body[data-aos-duration='700'] [data-aos], [data-aos][data-aos][data-aos-duration='700'] {
  transition-duration: 700ms;
}

body[data-aos-delay='700'] [data-aos], [data-aos][data-aos][data-aos-delay='700'] {
  transition-delay: 0;
}

body[data-aos-delay='700'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='700'].aos-animate {
  transition-delay: 700ms;
}

body[data-aos-duration='750'] [data-aos], [data-aos][data-aos][data-aos-duration='750'] {
  transition-duration: 750ms;
}

body[data-aos-delay='750'] [data-aos], [data-aos][data-aos][data-aos-delay='750'] {
  transition-delay: 0;
}

body[data-aos-delay='750'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='750'].aos-animate {
  transition-delay: 750ms;
}

body[data-aos-duration='800'] [data-aos], [data-aos][data-aos][data-aos-duration='800'] {
  transition-duration: 800ms;
}

body[data-aos-delay='800'] [data-aos], [data-aos][data-aos][data-aos-delay='800'] {
  transition-delay: 0;
}

body[data-aos-delay='800'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='800'].aos-animate {
  transition-delay: 800ms;
}

body[data-aos-duration='850'] [data-aos], [data-aos][data-aos][data-aos-duration='850'] {
  transition-duration: 850ms;
}

body[data-aos-delay='850'] [data-aos], [data-aos][data-aos][data-aos-delay='850'] {
  transition-delay: 0;
}

body[data-aos-delay='850'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='850'].aos-animate {
  transition-delay: 850ms;
}

body[data-aos-duration='900'] [data-aos], [data-aos][data-aos][data-aos-duration='900'] {
  transition-duration: 900ms;
}

body[data-aos-delay='900'] [data-aos], [data-aos][data-aos][data-aos-delay='900'] {
  transition-delay: 0;
}

body[data-aos-delay='900'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='900'].aos-animate {
  transition-delay: 900ms;
}

body[data-aos-duration='950'] [data-aos], [data-aos][data-aos][data-aos-duration='950'] {
  transition-duration: 950ms;
}

body[data-aos-delay='950'] [data-aos], [data-aos][data-aos][data-aos-delay='950'] {
  transition-delay: 0;
}

body[data-aos-delay='950'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='950'].aos-animate {
  transition-delay: 950ms;
}

body[data-aos-duration='1000'] [data-aos], [data-aos][data-aos][data-aos-duration='1000'] {
  transition-duration: 1000ms;
}

body[data-aos-delay='1000'] [data-aos], [data-aos][data-aos][data-aos-delay='1000'] {
  transition-delay: 0;
}

body[data-aos-delay='1000'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1000'].aos-animate {
  transition-delay: 1000ms;
}

body[data-aos-duration='1050'] [data-aos], [data-aos][data-aos][data-aos-duration='1050'] {
  transition-duration: 1050ms;
}

body[data-aos-delay='1050'] [data-aos], [data-aos][data-aos][data-aos-delay='1050'] {
  transition-delay: 0;
}

body[data-aos-delay='1050'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1050'].aos-animate {
  transition-delay: 1050ms;
}

body[data-aos-duration='1100'] [data-aos], [data-aos][data-aos][data-aos-duration='1100'] {
  transition-duration: 1100ms;
}

body[data-aos-delay='1100'] [data-aos], [data-aos][data-aos][data-aos-delay='1100'] {
  transition-delay: 0;
}

body[data-aos-delay='1100'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1100'].aos-animate {
  transition-delay: 1100ms;
}

body[data-aos-duration='1150'] [data-aos], [data-aos][data-aos][data-aos-duration='1150'] {
  transition-duration: 1150ms;
}

body[data-aos-delay='1150'] [data-aos], [data-aos][data-aos][data-aos-delay='1150'] {
  transition-delay: 0;
}

body[data-aos-delay='1150'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1150'].aos-animate {
  transition-delay: 1150ms;
}

body[data-aos-duration='1200'] [data-aos], [data-aos][data-aos][data-aos-duration='1200'] {
  transition-duration: 1200ms;
}

body[data-aos-delay='1200'] [data-aos], [data-aos][data-aos][data-aos-delay='1200'] {
  transition-delay: 0;
}

body[data-aos-delay='1200'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1200'].aos-animate {
  transition-delay: 1200ms;
}

body[data-aos-duration='1250'] [data-aos], [data-aos][data-aos][data-aos-duration='1250'] {
  transition-duration: 1250ms;
}

body[data-aos-delay='1250'] [data-aos], [data-aos][data-aos][data-aos-delay='1250'] {
  transition-delay: 0;
}

body[data-aos-delay='1250'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1250'].aos-animate {
  transition-delay: 1250ms;
}

body[data-aos-duration='1300'] [data-aos], [data-aos][data-aos][data-aos-duration='1300'] {
  transition-duration: 1300ms;
}

body[data-aos-delay='1300'] [data-aos], [data-aos][data-aos][data-aos-delay='1300'] {
  transition-delay: 0;
}

body[data-aos-delay='1300'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1300'].aos-animate {
  transition-delay: 1300ms;
}

body[data-aos-duration='1350'] [data-aos], [data-aos][data-aos][data-aos-duration='1350'] {
  transition-duration: 1350ms;
}

body[data-aos-delay='1350'] [data-aos], [data-aos][data-aos][data-aos-delay='1350'] {
  transition-delay: 0;
}

body[data-aos-delay='1350'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1350'].aos-animate {
  transition-delay: 1350ms;
}

body[data-aos-duration='1400'] [data-aos], [data-aos][data-aos][data-aos-duration='1400'] {
  transition-duration: 1400ms;
}

body[data-aos-delay='1400'] [data-aos], [data-aos][data-aos][data-aos-delay='1400'] {
  transition-delay: 0;
}

body[data-aos-delay='1400'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1400'].aos-animate {
  transition-delay: 1400ms;
}

body[data-aos-duration='1450'] [data-aos], [data-aos][data-aos][data-aos-duration='1450'] {
  transition-duration: 1450ms;
}

body[data-aos-delay='1450'] [data-aos], [data-aos][data-aos][data-aos-delay='1450'] {
  transition-delay: 0;
}

body[data-aos-delay='1450'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1450'].aos-animate {
  transition-delay: 1450ms;
}

body[data-aos-duration='1500'] [data-aos], [data-aos][data-aos][data-aos-duration='1500'] {
  transition-duration: 1500ms;
}

body[data-aos-delay='1500'] [data-aos], [data-aos][data-aos][data-aos-delay='1500'] {
  transition-delay: 0;
}

body[data-aos-delay='1500'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1500'].aos-animate {
  transition-delay: 1500ms;
}

body[data-aos-duration='1550'] [data-aos], [data-aos][data-aos][data-aos-duration='1550'] {
  transition-duration: 1550ms;
}

body[data-aos-delay='1550'] [data-aos], [data-aos][data-aos][data-aos-delay='1550'] {
  transition-delay: 0;
}

body[data-aos-delay='1550'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1550'].aos-animate {
  transition-delay: 1550ms;
}

body[data-aos-duration='1600'] [data-aos], [data-aos][data-aos][data-aos-duration='1600'] {
  transition-duration: 1600ms;
}

body[data-aos-delay='1600'] [data-aos], [data-aos][data-aos][data-aos-delay='1600'] {
  transition-delay: 0;
}

body[data-aos-delay='1600'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1600'].aos-animate {
  transition-delay: 1600ms;
}

body[data-aos-duration='1650'] [data-aos], [data-aos][data-aos][data-aos-duration='1650'] {
  transition-duration: 1650ms;
}

body[data-aos-delay='1650'] [data-aos], [data-aos][data-aos][data-aos-delay='1650'] {
  transition-delay: 0;
}

body[data-aos-delay='1650'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1650'].aos-animate {
  transition-delay: 1650ms;
}

body[data-aos-duration='1700'] [data-aos], [data-aos][data-aos][data-aos-duration='1700'] {
  transition-duration: 1700ms;
}

body[data-aos-delay='1700'] [data-aos], [data-aos][data-aos][data-aos-delay='1700'] {
  transition-delay: 0;
}

body[data-aos-delay='1700'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1700'].aos-animate {
  transition-delay: 1700ms;
}

body[data-aos-duration='1750'] [data-aos], [data-aos][data-aos][data-aos-duration='1750'] {
  transition-duration: 1750ms;
}

body[data-aos-delay='1750'] [data-aos], [data-aos][data-aos][data-aos-delay='1750'] {
  transition-delay: 0;
}

body[data-aos-delay='1750'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1750'].aos-animate {
  transition-delay: 1750ms;
}

body[data-aos-duration='1800'] [data-aos], [data-aos][data-aos][data-aos-duration='1800'] {
  transition-duration: 1800ms;
}

body[data-aos-delay='1800'] [data-aos], [data-aos][data-aos][data-aos-delay='1800'] {
  transition-delay: 0;
}

body[data-aos-delay='1800'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1800'].aos-animate {
  transition-delay: 1800ms;
}

body[data-aos-duration='1850'] [data-aos], [data-aos][data-aos][data-aos-duration='1850'] {
  transition-duration: 1850ms;
}

body[data-aos-delay='1850'] [data-aos], [data-aos][data-aos][data-aos-delay='1850'] {
  transition-delay: 0;
}

body[data-aos-delay='1850'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1850'].aos-animate {
  transition-delay: 1850ms;
}

body[data-aos-duration='1900'] [data-aos], [data-aos][data-aos][data-aos-duration='1900'] {
  transition-duration: 1900ms;
}

body[data-aos-delay='1900'] [data-aos], [data-aos][data-aos][data-aos-delay='1900'] {
  transition-delay: 0;
}

body[data-aos-delay='1900'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1900'].aos-animate {
  transition-delay: 1900ms;
}

body[data-aos-duration='1950'] [data-aos], [data-aos][data-aos][data-aos-duration='1950'] {
  transition-duration: 1950ms;
}

body[data-aos-delay='1950'] [data-aos], [data-aos][data-aos][data-aos-delay='1950'] {
  transition-delay: 0;
}

body[data-aos-delay='1950'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1950'].aos-animate {
  transition-delay: 1950ms;
}

body[data-aos-duration='2000'] [data-aos], [data-aos][data-aos][data-aos-duration='2000'] {
  transition-duration: 2000ms;
}

body[data-aos-delay='2000'] [data-aos], [data-aos][data-aos][data-aos-delay='2000'] {
  transition-delay: 0;
}

body[data-aos-delay='2000'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2000'].aos-animate {
  transition-delay: 2000ms;
}

body[data-aos-duration='2050'] [data-aos], [data-aos][data-aos][data-aos-duration='2050'] {
  transition-duration: 2050ms;
}

body[data-aos-delay='2050'] [data-aos], [data-aos][data-aos][data-aos-delay='2050'] {
  transition-delay: 0;
}

body[data-aos-delay='2050'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2050'].aos-animate {
  transition-delay: 2050ms;
}

body[data-aos-duration='2100'] [data-aos], [data-aos][data-aos][data-aos-duration='2100'] {
  transition-duration: 2100ms;
}

body[data-aos-delay='2100'] [data-aos], [data-aos][data-aos][data-aos-delay='2100'] {
  transition-delay: 0;
}

body[data-aos-delay='2100'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2100'].aos-animate {
  transition-delay: 2100ms;
}

body[data-aos-duration='2150'] [data-aos], [data-aos][data-aos][data-aos-duration='2150'] {
  transition-duration: 2150ms;
}

body[data-aos-delay='2150'] [data-aos], [data-aos][data-aos][data-aos-delay='2150'] {
  transition-delay: 0;
}

body[data-aos-delay='2150'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2150'].aos-animate {
  transition-delay: 2150ms;
}

body[data-aos-duration='2200'] [data-aos], [data-aos][data-aos][data-aos-duration='2200'] {
  transition-duration: 2200ms;
}

body[data-aos-delay='2200'] [data-aos], [data-aos][data-aos][data-aos-delay='2200'] {
  transition-delay: 0;
}

body[data-aos-delay='2200'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2200'].aos-animate {
  transition-delay: 2200ms;
}

body[data-aos-duration='2250'] [data-aos], [data-aos][data-aos][data-aos-duration='2250'] {
  transition-duration: 2250ms;
}

body[data-aos-delay='2250'] [data-aos], [data-aos][data-aos][data-aos-delay='2250'] {
  transition-delay: 0;
}

body[data-aos-delay='2250'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2250'].aos-animate {
  transition-delay: 2250ms;
}

body[data-aos-duration='2300'] [data-aos], [data-aos][data-aos][data-aos-duration='2300'] {
  transition-duration: 2300ms;
}

body[data-aos-delay='2300'] [data-aos], [data-aos][data-aos][data-aos-delay='2300'] {
  transition-delay: 0;
}

body[data-aos-delay='2300'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2300'].aos-animate {
  transition-delay: 2300ms;
}

body[data-aos-duration='2350'] [data-aos], [data-aos][data-aos][data-aos-duration='2350'] {
  transition-duration: 2350ms;
}

body[data-aos-delay='2350'] [data-aos], [data-aos][data-aos][data-aos-delay='2350'] {
  transition-delay: 0;
}

body[data-aos-delay='2350'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2350'].aos-animate {
  transition-delay: 2350ms;
}

body[data-aos-duration='2400'] [data-aos], [data-aos][data-aos][data-aos-duration='2400'] {
  transition-duration: 2400ms;
}

body[data-aos-delay='2400'] [data-aos], [data-aos][data-aos][data-aos-delay='2400'] {
  transition-delay: 0;
}

body[data-aos-delay='2400'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2400'].aos-animate {
  transition-delay: 2400ms;
}

body[data-aos-duration='2450'] [data-aos], [data-aos][data-aos][data-aos-duration='2450'] {
  transition-duration: 2450ms;
}

body[data-aos-delay='2450'] [data-aos], [data-aos][data-aos][data-aos-delay='2450'] {
  transition-delay: 0;
}

body[data-aos-delay='2450'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2450'].aos-animate {
  transition-delay: 2450ms;
}

body[data-aos-duration='2500'] [data-aos], [data-aos][data-aos][data-aos-duration='2500'] {
  transition-duration: 2500ms;
}

body[data-aos-delay='2500'] [data-aos], [data-aos][data-aos][data-aos-delay='2500'] {
  transition-delay: 0;
}

body[data-aos-delay='2500'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2500'].aos-animate {
  transition-delay: 2500ms;
}

body[data-aos-duration='2550'] [data-aos], [data-aos][data-aos][data-aos-duration='2550'] {
  transition-duration: 2550ms;
}

body[data-aos-delay='2550'] [data-aos], [data-aos][data-aos][data-aos-delay='2550'] {
  transition-delay: 0;
}

body[data-aos-delay='2550'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2550'].aos-animate {
  transition-delay: 2550ms;
}

body[data-aos-duration='2600'] [data-aos], [data-aos][data-aos][data-aos-duration='2600'] {
  transition-duration: 2600ms;
}

body[data-aos-delay='2600'] [data-aos], [data-aos][data-aos][data-aos-delay='2600'] {
  transition-delay: 0;
}

body[data-aos-delay='2600'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2600'].aos-animate {
  transition-delay: 2600ms;
}

body[data-aos-duration='2650'] [data-aos], [data-aos][data-aos][data-aos-duration='2650'] {
  transition-duration: 2650ms;
}

body[data-aos-delay='2650'] [data-aos], [data-aos][data-aos][data-aos-delay='2650'] {
  transition-delay: 0;
}

body[data-aos-delay='2650'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2650'].aos-animate {
  transition-delay: 2650ms;
}

body[data-aos-duration='2700'] [data-aos], [data-aos][data-aos][data-aos-duration='2700'] {
  transition-duration: 2700ms;
}

body[data-aos-delay='2700'] [data-aos], [data-aos][data-aos][data-aos-delay='2700'] {
  transition-delay: 0;
}

body[data-aos-delay='2700'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2700'].aos-animate {
  transition-delay: 2700ms;
}

body[data-aos-duration='2750'] [data-aos], [data-aos][data-aos][data-aos-duration='2750'] {
  transition-duration: 2750ms;
}

body[data-aos-delay='2750'] [data-aos], [data-aos][data-aos][data-aos-delay='2750'] {
  transition-delay: 0;
}

body[data-aos-delay='2750'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2750'].aos-animate {
  transition-delay: 2750ms;
}

body[data-aos-duration='2800'] [data-aos], [data-aos][data-aos][data-aos-duration='2800'] {
  transition-duration: 2800ms;
}

body[data-aos-delay='2800'] [data-aos], [data-aos][data-aos][data-aos-delay='2800'] {
  transition-delay: 0;
}

body[data-aos-delay='2800'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2800'].aos-animate {
  transition-delay: 2800ms;
}

body[data-aos-duration='2850'] [data-aos], [data-aos][data-aos][data-aos-duration='2850'] {
  transition-duration: 2850ms;
}

body[data-aos-delay='2850'] [data-aos], [data-aos][data-aos][data-aos-delay='2850'] {
  transition-delay: 0;
}

body[data-aos-delay='2850'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2850'].aos-animate {
  transition-delay: 2850ms;
}

body[data-aos-duration='2900'] [data-aos], [data-aos][data-aos][data-aos-duration='2900'] {
  transition-duration: 2900ms;
}

body[data-aos-delay='2900'] [data-aos], [data-aos][data-aos][data-aos-delay='2900'] {
  transition-delay: 0;
}

body[data-aos-delay='2900'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2900'].aos-animate {
  transition-delay: 2900ms;
}

body[data-aos-duration='2950'] [data-aos], [data-aos][data-aos][data-aos-duration='2950'] {
  transition-duration: 2950ms;
}

body[data-aos-delay='2950'] [data-aos], [data-aos][data-aos][data-aos-delay='2950'] {
  transition-delay: 0;
}

body[data-aos-delay='2950'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2950'].aos-animate {
  transition-delay: 2950ms;
}

body[data-aos-duration='3000'] [data-aos], [data-aos][data-aos][data-aos-duration='3000'] {
  transition-duration: 3000ms;
}

body[data-aos-delay='3000'] [data-aos], [data-aos][data-aos][data-aos-delay='3000'] {
  transition-delay: 0;
}

body[data-aos-delay='3000'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='3000'].aos-animate {
  transition-delay: 3000ms;
}

body[data-aos-easing="linear"] [data-aos], [data-aos][data-aos][data-aos-easing="linear"] {
  transition-timing-function: cubic-bezier(0.25, 0.25, 0.75, 0.75);
}

body[data-aos-easing="ease"] [data-aos], [data-aos][data-aos][data-aos-easing="ease"] {
  transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
}

body[data-aos-easing="ease-in"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in"] {
  transition-timing-function: cubic-bezier(0.42, 0, 1, 1);
}

body[data-aos-easing="ease-out"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-out"] {
  transition-timing-function: cubic-bezier(0, 0, 0.58, 1);
}

body[data-aos-easing="ease-in-out"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-out"] {
  transition-timing-function: cubic-bezier(0.42, 0, 0.58, 1);
}

body[data-aos-easing="ease-in-back"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-back"] {
  transition-timing-function: cubic-bezier(0.6, -0.28, 0.735, 0.045);
}

body[data-aos-easing="ease-out-back"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-out-back"] {
  transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

body[data-aos-easing="ease-in-out-back"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-out-back"] {
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

body[data-aos-easing="ease-in-sine"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-sine"] {
  transition-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715);
}

body[data-aos-easing="ease-out-sine"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-out-sine"] {
  transition-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1);
}

body[data-aos-easing="ease-in-out-sine"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-out-sine"] {
  transition-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

body[data-aos-easing="ease-in-quad"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-quad"] {
  transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

body[data-aos-easing="ease-out-quad"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-out-quad"] {
  transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

body[data-aos-easing="ease-in-out-quad"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-out-quad"] {
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

body[data-aos-easing="ease-in-cubic"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-cubic"] {
  transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

body[data-aos-easing="ease-out-cubic"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-out-cubic"] {
  transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

body[data-aos-easing="ease-in-out-cubic"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-out-cubic"] {
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

body[data-aos-easing="ease-in-quart"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-quart"] {
  transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

body[data-aos-easing="ease-out-quart"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-out-quart"] {
  transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

body[data-aos-easing="ease-in-out-quart"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-out-quart"] {
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

/**
 * Fade animations:
 * fade
 * fade-up, fade-down, fade-left, fade-right
 * fade-up-right, fade-up-left, fade-down-right, fade-down-left
 */
[data-aos^='fade'][data-aos^='fade'] {
  opacity: 0;
  transition-property: opacity, transform;
}

[data-aos^='fade'][data-aos^='fade'].aos-animate {
  opacity: 1;
  transform: translate(0, 0);
}

[data-aos='fade-up'] {
  transform: translate(0, 100px);
}

[data-aos='fade-down'] {
  transform: translate(0, -100px);
}

[data-aos='fade-right'] {
  transform: translate(-100px, 0);
}

[data-aos='fade-left'] {
  transform: translate(100px, 0);
}

[data-aos='fade-up-right'] {
  transform: translate(-100px, 100px);
}

[data-aos='fade-up-left'] {
  transform: translate(100px, 100px);
}

[data-aos='fade-down-right'] {
  transform: translate(-100px, -100px);
}

[data-aos='fade-down-left'] {
  transform: translate(100px, -100px);
}

/**
 * Zoom animations:
 * zoom-in, zoom-in-up, zoom-in-down, zoom-in-left, zoom-in-right
 * zoom-out, zoom-out-up, zoom-out-down, zoom-out-left, zoom-out-right
 */
[data-aos^='zoom'][data-aos^='zoom'] {
  opacity: 0;
  transition-property: opacity, transform;
}

[data-aos^='zoom'][data-aos^='zoom'].aos-animate {
  opacity: 1;
  transform: translate(0, 0) scale(1);
}

[data-aos='zoom-in'] {
  transform: scale(0.6);
}

[data-aos='zoom-in-up'] {
  transform: translate(0, 100px) scale(0.6);
}

[data-aos='zoom-in-down'] {
  transform: translate(0, -100px) scale(0.6);
}

[data-aos='zoom-in-right'] {
  transform: translate(-100px, 0) scale(0.6);
}

[data-aos='zoom-in-left'] {
  transform: translate(100px, 0) scale(0.6);
}

[data-aos='zoom-out'] {
  transform: scale(1.2);
}

[data-aos='zoom-out-up'] {
  transform: translate(0, 100px) scale(1.2);
}

[data-aos='zoom-out-down'] {
  transform: translate(0, -100px) scale(1.2);
}

[data-aos='zoom-out-right'] {
  transform: translate(-100px, 0) scale(1.2);
}

[data-aos='zoom-out-left'] {
  transform: translate(100px, 0) scale(1.2);
}

/**
 * Slide animations
 */
[data-aos^='slide'][data-aos^='slide'] {
  transition-property: transform;
}

[data-aos^='slide'][data-aos^='slide'].aos-animate {
  transform: translate(0, 0);
}

[data-aos='slide-up'] {
  transform: translateY(100%);
}

[data-aos='slide-down'] {
  transform: translateY(-100%);
}

[data-aos='slide-right'] {
  transform: translateX(-100%);
}

[data-aos='slide-left'] {
  transform: translateX(100%);
}

/**
 * Flip animations:
 * flip-left, flip-right, flip-up, flip-down
 */
[data-aos^='flip'][data-aos^='flip'] {
  backface-visibility: hidden;
  transition-property: transform;
}

[data-aos='flip-left'] {
  transform: perspective(2500px) rotateY(-100deg);
}

[data-aos='flip-left'].aos-animate {
  transform: perspective(2500px) rotateY(0);
}

[data-aos='flip-right'] {
  transform: perspective(2500px) rotateY(100deg);
}

[data-aos='flip-right'].aos-animate {
  transform: perspective(2500px) rotateY(0);
}

[data-aos='flip-up'] {
  transform: perspective(2500px) rotateX(-100deg);
}

[data-aos='flip-up'].aos-animate {
  transform: perspective(2500px) rotateX(0);
}

[data-aos='flip-down'] {
  transform: perspective(2500px) rotateX(100deg);
}

[data-aos='flip-down'].aos-animate {
  transform: perspective(2500px) rotateX(0);
}

/* 4. Base stuff*/
/* main: ../main.scss*/
/* -----------------------------------------------------------------------------*/
/* This file contains very basic styles.*/
/* -----------------------------------------------------------------------------*/
/**
 * Set up a decent box model on the root element
 */
html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/**
 * Make all elements from the DOM inherit from the parent box-sizing
 * Since `*` has a specificity of 0, it does not override the `html` value
 * making all elements inheriting from the root box-sizing value
 * See: https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/
 */
*, *::before, *::after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

/* Links*/
a {
  color: #cb0c44;
  text-decoration: underline;
}

a:hover, a:active, a:focus {
  color: #5a6571;
  text-decoration: underline;
}

/* Images*/
img {
  vertical-align: middle;
}

/* Responsive images (ensure images don't scale beyond their parents)*/
.img-responsive {
  display: block;
  max-width: 100%;
  height: auto;
}

/* Sectioning elements*/
section {
  padding-bottom: 72px;
}

@media screen and (max-width: 767px) {
  section {
    padding-bottom: 54px;
  }
}

@media screen and (max-width: 479px) {
  section {
    padding-bottom: 36px;
  }
}

.section--white {
  background-color: #fff;
}

article {
  position: relative;
}

figure {
  margin: 0;
}

ul {
  margin: 18px 0;
  list-style-type: none;
  padding: 0;
}

ul li {
  line-height: 36px;
}

@font-face {
  font-family: 'QanelasSoftDEMO-ExtraBold';
  src: url("../fonts/QanelasSoftDEMO-ExtraBold.woff") format("woff"), url("../fonts/QanelasSoftDEMO-ExtraBold.ttf") format("truetype");
}

body {
  font-family: "Roboto Slab", serif;
  font-size: 18px;
  font-weight: 400;
  color: #5a6571;
}

@media screen and (max-width: 480px) {
  body {
    font-size: 16px;
  }
}

p {
  font-family: "Roboto Slab", serif;
  font-size: 18px;
  line-height: 36px;
  margin-top: 36px;
  margin-bottom: 54px;
}

@media screen and (max-width: 1459px) {
  p {
    margin-bottom: 27px;
  }
}

@media screen and (max-width: 991px) {
  p {
    font-size: 16px;
    line-height: 32px;
    margin-bottom: 18px;
  }
}

@media screen and (max-width: 479px) {
  p {
    font-size: 16px;
    line-height: 32px;
    margin-top: 18px;
    margin-bottom: 36px;
  }
}

.heading-section {
  font-family: "Open Sans", "Helvetica Neue Light", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-weight: 700;
  font-size: 48px;
  line-height: 72px;
  margin-top: 72px;
  margin-bottom: 0;
  color: #272323;
}

@media screen and (max-width: 1459px) {
  .heading-section {
    font-size: 42px;
    line-height: 54px;
    margin-top: 54px;
  }
}

@media screen and (max-width: 991px) {
  .heading-section {
    font-size: 40px;
    line-height: 54px;
  }
}

@media screen and (max-width: 479px) {
  .heading-section {
    font-size: 28px;
    line-height: 48px;
    margin-top: 54px;
  }
}

.heading-section--inverted, .heading-section-sub--inverted {
  color: #fff;
}

.heading-section-sub {
  font-weight: 400;
  font-size: 24px;
  line-height: 36px;
  margin-top: 0;
  margin-bottom: 0;
}

@media screen and (max-width: 1459px) {
  .heading-section-sub {
    font-size: 21px;
  }
}

@media screen and (max-width: 991px) {
  .heading-section-sub {
    font-size: 22px;
  }
}

@media screen and (max-width: 479px) {
  .heading-section-sub {
    font-size: 18px;
    line-height: 32px;
  }
}

.heading-article, .heading-article-sm {
  font-family: "Open Sans", "Helvetica Neue Light", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-weight: 700;
}

.heading-article {
  font-size: 30px;
  line-height: 36px;
  margin-top: 0;
  margin-bottom: 36px;
  color: #272323;
}

@media screen and (max-width: 1459px) {
  .heading-article {
    font-size: 28px;
  }
}

@media screen and (max-width: 991px) {
  .heading-article {
    font-size: 26px;
  }
}

@media screen and (max-width: 479px) {
  .heading-article {
    font-size: 20px;
    margin-bottom: 18px;
  }
}

.heading-article-sm {
  font-size: 21px;
  line-height: 36px;
  margin-top: 0;
  margin-bottom: 0;
  color: #272323;
}

.heading-accent {
  font-weight: 700;
  font-size: 24px;
  line-height: 36px;
  margin-top: 0;
  margin-bottom: 36px;
}

@media screen and (max-width: 1459px) {
  .heading-accent {
    font-size: 22px;
  }
}

@media screen and (max-width: 991px) {
  .heading-accent {
    font-size: 20px;
    line-height: 32px;
    margin-bottom: 18px;
  }
}

@media screen and (max-width: 479px) {
  .heading-accent {
    font-size: 18px;
    line-height: 32px;
    margin-bottom: 0;
  }
}

.heading-tile {
  font-size: 20px;
  font-weight: 600;
  line-height: 36px;
  font-family: "Open Sans", "Helvetica Neue Light", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

.text-center {
  text-align: center;
}

.text-small {
  font-size: 16px;
}

.bold {
  font-weight: 700;
}

.dark {
  color: #272323;
}

.primary {
  color: #cb0c44;
}

.primary-soft {
  color: #f95384;
}

.uppercase {
  text-transform: uppercase;
}

/* main: ../main.scss*/
/* -----------------------------------------------------------------------------*/
/* This file contains CSS helper classes.*/
/* -----------------------------------------------------------------------------*/
/**
 * Clear inner floats
 */
.clearfix::after {
  clear: both;
  content: '';
  display: table;
}

/**
 * Main content containers
 * 1. Make the container full-width with a maximum width
 * 2. Center it in the viewport
 * 3. Leave some space on the edges, especially valuable on small screens
 */
/* .container {*/
/*   max-width: $max-width; */
/* 1 */
/**/
/*   margin-left: auto; */
/* 2 */
/**/
/*   margin-right: auto; */
/* 2 */
/**/
/*   padding-left: 18px; */
/* 3 */
/**/
/*   padding-right: 18px; */
/* 3 */
/**/
/*   width: 100%; */
/* 1 */
/**/
/*  }*/
/**
 * Hide text while making it readable for screen readers
 * 1. Needed in WebKit-based browsers because of an implementation bug;
 *    See: https://code.google.com/p/chromium/issues/detail?id=457146
 */
.hide-text {
  overflow: hidden;
  padding: 0;
  /* 1 */
  text-indent: 101%;
  white-space: nowrap;
}

/**
 * Hide element while making it readable for screen readers
 * Shamelessly borrowed from HTML5Boilerplate:
 * https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css#L119-L133
 */
.visually-hidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

/**
 * Float left
 */
.pull-left {
  float: left;
}

/**
 * Float right
 */
.pull-right {
  float: right;
}

/* Padding, margin helpers*/
.pr0 {
  padding-right: 0 !important;
}

@media screen and (max-width: 767px) {
  .pr0 {
    padding-right: 18px !important;
  }
}

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

@media screen and (max-width: 767px) {
  .pl0 {
    padding-left: 18px !important;
  }
}

.pb0 {
  padding-bottom: 0;
}

.mt0 {
  margin-top: 0;
}

.mb0 {
  margin-bottom: 0;
}

.mb18 {
  margin-bottom: 18px;
}

.mt18 {
  margin-top: 18px;
}

/* Grid helpers*/
.container-sm {
  padding-left: 18px;
  padding-right: 18px;
  position: relative;
  margin: 0 auto;
  /* @media screen and (min-width: 480px) {*/
  /*   width: 450px;*/
  /* }*/
  /* @media screen and (min-width: px) {*/
  /*   width: 720px;*/
  /* }*/
}

@media screen and (min-width: 768px) {
  .container-sm {
    width: 756px;
  }
}

@media screen and (min-width: 992px) {
  .container-sm {
    width: 960px;
  }
}

.col-45 {
  width: 45%;
}

.col-55 {
  width: 55%;
}

@media screen and (max-width: 991px) {
  .col-45, .col-55 {
    width: auto;
  }
}

.col-push-45 {
  left: 45%;
}

@media screen and (max-width: 991px) {
  .col-push-45 {
    left: 0;
  }
}

@media screen and (max-width: 767px) {
  .col-push-45 {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
}

.col-pull-55 {
  right: 55%;
}

@media screen and (max-width: 991px) {
  .col-pull-55 {
    right: 0;
  }
}

@media screen and (max-width: 767px) {
  .col-pull-55 {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
}

.relative {
  position: relative;
}

.parallax-window {
  height: 100vh;
  min-height: 500px;
  background: transparent;
}

.img-responsive-inline {
  display: inline-block;
  max-width: 100%;
  height: auto;
}

#page {
  display: none;
}

#loading {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100vw;
  height: 100vh;
  background-color: rgba(192, 192, 192, 0.5);
  background-image: url("http://i.stack.imgur.com/MnyxU.gif");
  background-repeat: no-repeat;
  background-position: center;
}

.no-scroll {
  position: fixed;
  overflow: hidden;
  position: relative;
}

/* 5. Layout-related sections*/
/* main: ../main.scss*/
/* -----------------------------------------------------------------------------*/
/* This file contains all styles related to the header of the site/application.*/
/* -----------------------------------------------------------------------------*/
/* Main header*/
.main-nav {
  position: fixed;
  z-index: 100;
  width: 100%;
  top: 0;
}

@media screen and (max-width: 991px) {
  .main-nav {
    height: 94px;
    /* background-color: #fff;*/
    /* border-bottom: 1px solid $color-very-light-gray;*/
    position: relative;
  }
}

@media screen and (max-width: 767px) {
  .main-nav {
    height: 60px;
  }
}

.logo-holder,
.menu-icon-holder {
  height: 96px;
}

.logo-fixed-container,
.menu-icon-fixed-container {
  pointer-events: none;
}

.logo-fixed-container a,
.menu-icon-fixed-container a {
  pointer-events: auto;
}

@media screen and (max-width: 991px) {
  .logo-fixed-container {
    position: static !important;
  }
}

.logo {
  width: 180px;
  margin-top: 36px;
  margin-left: 36px;
}

@media screen and (max-width: 991px) {
  .logo {
    margin-top: 18px;
    margin-left: 18px;
  }
}

@media screen and (max-width: 767px) {
  .logo {
    width: 120px;
    margin-top: 12px;
    margin-left: 18px;
  }
}

.menu-icon {
  position: fixed;
  right: 36px;
  top: 50px;
  color: #fff;
  border-color: #fff;
  text-decoration: none;
  z-index: 3;
}

@media screen and (max-width: 991px) {
  .menu-icon {
    top: 36px;
    color: #e51e4a;
    border-color: #e51e4a;
  }
}

@media screen and (max-width: 767px) {
  .menu-icon {
    top: 22px;
    right: 18px;
  }
}

.menu-icon:hover .menu-icon-text {
  color: #e51e4a !important;
}

.menu-icon:hover .menu-icon-hamburger,
.menu-icon:hover .menu-icon-hamburger:after,
.menu-icon:hover .menu-icon-hamburger:before {
  border-color: #e51e4a !important;
}

.menu-icon:hover .menu-icon-hamburger:before {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  top: 0;
  width: 23px;
  left: 1px;
}

.menu-icon:hover .menu-icon-hamburger:after {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  top: 0;
  width: 23px;
  left: 1px;
}

.menu-icon:hover .menu-icon-hamburger {
  border: 0;
}

.menu-icon .menu-icon-text {
  float: left;
  margin-right: 9px;
  font-weight: 700;
}

.menu-icon .menu-icon-hamburger {
  float: left;
  width: 25px;
  border: 2px solid;
  position: relative;
  margin-top: 9px;
}

.menu-icon .menu-icon-hamburger:after, .menu-icon .menu-icon-hamburger:before {
  content: '';
  position: absolute;
  left: -2px;
  width: 25px;
  border: 2px solid;
  -webkit-transition: -webkit-transform 200ms;
  transition: -webkit-transform 200ms;
  transition: transform 200ms;
  transition: transform 200ms, -webkit-transform 200ms;
}

.menu-icon .menu-icon-hamburger:before {
  top: 5px;
}

.menu-icon .menu-icon-hamburger:after {
  top: -9px;
}

.menu-icon .menu-icon-x {
  float: left;
  width: 25px;
  height: 25px;
  position: relative;
  margin-top: 11px;
}

.menu-icon .menu-icon-x:after, .menu-icon .menu-icon-x:before {
  content: '';
  position: absolute;
  left: -2px;
  width: 25px;
  border: 2px solid #fff;
  -webkit-transition: -webkit-transform 200ms;
  transition: -webkit-transform 200ms;
  transition: transform 200ms;
  transition: transform 200ms, -webkit-transform 200ms;
}

.menu-icon .menu-icon-x:before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.menu-icon .menu-icon-x:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.menu-icon .menu-icon-x:hover:after, .menu-icon .menu-icon-x:hover:before {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}

@media screen and (min-width: 992px) {
  .midnightHeader.white .menu-icon.aos-animate {
    color: #fff;
    border-color: #fff;
  }
  .midnightHeader.white img {
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
  }
}

/* Section header*/
.section-header {
  text-align: center;
  margin-bottom: 54px;
}

@media screen and (max-width: 480px) {
  .section-header {
    margin-bottom: 36px;
  }
}

/* main: ../main.scss*/
/* -----------------------------------------------------------------------------*/
/* This file contains all styles related to the footer of the site/application.*/
/* -----------------------------------------------------------------------------*/
footer {
  padding-top: 36px;
  font-size: 18px;
  font-weight: 300;
  line-height: 36px;
}

@media screen and (max-width: 767px) {
  footer {
    font-size: 16px;
    line-height: 27px;
  }
}

footer .footer-border {
  border-top: 3px solid #e3e3e3;
  border-bottom: 3px solid #e3e3e3;
  padding: 36px 18px;
  margin-bottom: 72px;
  position: relative;
}

@media screen and (max-width: 767px) {
  footer .footer-border {
    margin-bottom: 36px;
  }
}

.copyright {
  text-align: center;
  margin-bottom: 90px;
}

@media screen and (max-width: 767px) {
  .copyright {
    margin-bottom: 36px;
  }
}

.social-nav {
  position: absolute;
  right: 18px;
  top: -2px;
}

@media screen and (max-width: 767px) {
  .social-nav {
    position: absolute;
    right: 0;
    top: -63px;
  }
}

.social1, .social2, .social3 {
  width: 62px;
  height: 62px;
  border: 2px solid #e3e3e3;
  position: relative;
}

.social1 a, .social2 a, .social3 a {
  width: 100%;
  height: 100%;
  display: block;
}

.social1 img, .social2 img, .social3 img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.social2 {
  right: 60px;
  top: -2px;
  height: 63px;
}

.social3 {
  top: -4px;
}

/* main: ../main.scss*/
/* -----------------------------------------------------------------------------*/
/* This file contains all styles related to the menu of the site/application.*/
/* -----------------------------------------------------------------------------*/
.menu {
  position: fixed;
  width: 40%;
  background: #e51e4a;
  /* Old browsers */
  /* FF3.6-15 */
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, #e51e4a 0%, #561454 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e51e4a', endColorstr='#561454',GradientType=1 );
  /* IE6-9 fallback on horizontal gradient */
  z-index: 200;
  top: 0;
  bottom: 0;
  right: 0;
  padding-top: 130px;
  padding-left: 36px;
}

@media screen and (max-width: 1199px) {
  .menu {
    width: 50%;
  }
}

@media screen and (max-width: 767px) {
  .menu {
    width: 100%;
    padding-top: 60px;
    padding-left: 0;
    overflow-y: scroll;
    overflow-x: hidden;
  }
}

.menu ul > li > a {
  color: #fff;
  padding: 18px 72px;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 36px;
  line-height: 72px;
  font-weight: 600;
  display: block;
  -webkit-transition: -webkit-transform 300ms;
  transition: -webkit-transform 300ms;
  transition: transform 300ms;
  transition: transform 300ms, -webkit-transform 300ms;
}

@media screen and (max-width: 1199px) {
  .menu ul > li > a {
    font-size: 30px;
    line-height: 54px;
  }
}

@media screen and (max-width: 767px) {
  .menu ul > li > a {
    font-size: 24px;
    line-height: 36px;
  }
}

.menu ul > li > a:hover {
  color: #f95384;
  -webkit-transform: translateX(-18px);
  transform: translateX(-18px);
}

.menu ul > li.active a {
  color: #f95384;
  /* transform: translateX(-18px);*/
}

#up-anchor {
  background-color: #fff;
}

/* main: ../main.scss*/
/* -----------------------------------------------------------------------------*/
/* This file contains all styles related to the page navigation of the site/application.*/
/* -----------------------------------------------------------------------------*/
.page-nav {
  position: fixed;
  bottom: 36px;
  right: 36px;
}

.tile--nav {
  width: 50px;
  height: 50px;
  padding: 10px;
  display: block;
  margin-top: 18px;
  width: 50px;
  height: 50px;
  padding: 10px;
}

/* main: ../main.scss*/
/* -----------------------------------------------------------------------------*/
/* This file contains all styles related to the form of the site/application.*/
/* -----------------------------------------------------------------------------*/
.form-group {
  margin-bottom: 18px;
}

.form-label {
  display: block;
  font-size: 16px;
  line-height: 36px;
  font-weight: 600;
}

.form-control {
  width: 100%;
  background-color: #f1f1f1;
  border: 1px solid #e4e4e4;
  border-radius: 0;
  line-height: 54px;
  padding: 0 9px;
}

.form-control:focus {
  outline-width: 1px;
  outline-color: #e4e4e4;
}

.form-control.input-validation-error {
  border-color: #cb0c44;
}

/* 6. Components*/
/* main: ../main.scss*/
/* -----------------------------------------------------------------------------*/
/* This file contains all styles related to the button component.*/
/* -----------------------------------------------------------------------------*/
.btn {
  background-color: gray;
  border: 0;
  padding: 9px 54px;
  color: #fff;
  font-size: 16px;
  line-height: 36px;
  margin-top: 18px;
  margin-bottom: 18px;
  text-decoration: none;
}

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

.btn--primary {
  background-color: #cb0c44;
}

.btn--primary:hover {
  background-color: #6b0624;
}

.btn--white {
  background-color: #fff;
  color: #cb0c44;
}

.btn--white:hover {
  background-color: #f95384;
  color: #fff;
}

/* main: ../main.scss*/
/* -----------------------------------------------------------------------------*/
/* This file contains all styles related to the panel component.*/
/* -----------------------------------------------------------------------------*/
.panel {
  padding: 72px 90px;
}

@media screen and (max-width: 1459px) {
  .panel {
    padding: 54px 54px 72px;
  }
}

@media screen and (max-width: 767px) {
  .panel {
    padding: 36px 36px 54px;
  }
}

.panel--shadow {
  -webkit-box-shadow: 0 0 40px rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 40px rgba(0, 0, 0, 0.1);
}

.panel--primary {
  color: #fff;
  background: #e51e4a;
  /* Old browsers */
  /* FF3.6-15 */
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, #e51e4a 0%, #561454 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e51e4a', endColorstr='#561454',GradientType=1 );
  /* IE6-9 fallback on horizontal gradient */
}

.panel--primary h1, .panel--primary h2, .panel--primary h3 {
  color: #fff;
}

.panel--primary a {
  color: #f95384;
}

.panel--lower {
  margin-top: 126px;
}

@media screen and (min-width: 992px) and (max-width: 1459px) {
  .panel--lower {
    margin-top: 108px;
  }
}

.panel--lower-sm {
  margin-top: 72px;
}

@media screen and (min-width: 992px) and (max-width: 1459px) {
  .panel--lower-sm {
    margin-top: 0;
  }
}

@media screen and (max-width: 991px) {
  .panel--lower, .panel--lower-sm {
    margin-top: 0;
  }
}

.panel--narrow-right {
  padding-right: 144px;
}

@media screen and (max-width: 1459px) {
  .panel--narrow-right {
    padding: 36px 0;
  }
}

.panel--condensed {
  padding: 54px 54px 72px;
}

@media screen and (max-width: 767px) {
  .panel--condensed {
    padding: 36px 0 36px;
  }
}

.tile {
  color: #5a6571;
}

.tile--border {
  position: relative;
  z-index: auto;
  box-shadow: inset 0 0 0 3px #e5e5e5;
}

@media screen and (max-width: 767px) {
  .tile--border {
    margin-bottom: -3px;
  }
}

@media screen and (min-width: 768px) {
  .tile--border.collapse-border {
    margin-left: -3px;
    margin-right: -3px;
  }
  .tile--border.collapse-border-bottom {
    margin-bottom: -3px;
  }
  .tile--border:hover {
    border-color: #cb0c44;
    z-index: 10;
  }
}

.tile--border::after, .tile--border::before {
  box-sizing: inherit;
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  border: 3px solid transparent;
  width: 0;
  height: 0;
}

.tile--border::before {
  top: 0;
  left: 0;
}

.tile--border::after {
  bottom: 0;
  right: 0;
}

@media screen and (min-width: 768px) {
  .tile--border:hover::after, .tile--border:hover::before {
    width: 100%;
    height: 100%;
  }
}

@media screen and (min-width: 768px) {
  .tile--border:hover::before {
    border-top-color: #cb0c44;
    border-right-color: #cb0c44;
    transition: width 0.15s ease-out, height 0.15s ease-out 0.15s;
  }
}

@media screen and (min-width: 768px) {
  .tile--border:hover::after {
    border-bottom-color: #cb0c44;
    border-left-color: #cb0c44;
    transition: border-color 0s ease-out 0.3s, width 0.15s ease-out 0.3s, height 0.15s ease-out 0.45s;
  }
}

.tile--primary {
  color: #fff;
  background: #e51e4a;
  /* Old browsers */
  background: -moz-linear-gradient(-45deg, #e51e4a 0%, #561454 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, #e51e4a 0%, #561454 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, #e51e4a 0%, #561454 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e51e4a', endColorstr='#561454',GradientType=1 );
  /* IE6-9 fallback on horizontal gradient */
}

.tile--primary a {
  color: #f95384;
}

.tile--gray {
  background-color: #f4f4f4;
  color: #272323;
}

.tile--light-pink {
  background-color: #e7234d;
  color: #fff;
}

.tile--pink {
  background-color: #c61c4c;
  color: #fff;
}

.tile--purple {
  background-color: #871751;
  color: #fff;
}

.tile__content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  white-space: nowrap;
}

/* main: ../main.scss*/
/* -----------------------------------------------------------------------------*/
/* This file contains all styles related to the social nav component.*/
/* -----------------------------------------------------------------------------*/
.social-bar-wrap {
  margin-top: 54px;
}

@media screen and (max-width: 767px) {
  .social-bar-wrap {
    margin-top: 0;
    margin-bottom: 18px;
  }
}

.social-bar {
  border: 3px solid #cb0c44;
  display: inline-block;
  padding: 36px 18px;
}

.social-bar__item {
  width: 36px;
  height: 36px;
  border-radius: 36px;
  border: 3px solid #cb0c44;
  float: left;
  margin-right: 18px;
}

.social-bar__item:first-of-type {
  margin-left: 18px;
}

/* main: ../main.scss*/
/* -----------------------------------------------------------------------------*/
/* This file contains all css for custom animations.*/
/* -----------------------------------------------------------------------------*/
/* Hide top background layer*/
[data-aos="hide"] {
  opacity: 1;
  -webkit-transition-property: opacity;
  transition-property: opacity;
}

[data-aos="hide"].aos-animate {
  opacity: 0;
}

/* Invert logo color*/
[data-aos="invert-logo"] {
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1);
  transition-property: -webkit-filter;
  -webkit-transition-property: -webkit-filter;
  transition-property: filter;
  transition-property: filter, -webkit-filter;
}

[data-aos="invert-logo"].aos-animate {
  -webkit-filter: brightness(1) invert(0);
  filter: brightness(1) invert(0);
}

/* Invert menu icon color*/
[data-aos][data-aos][data-aos-delay='1000'].aos-animate:after,
[data-aos][data-aos][data-aos-delay='1000'].aos-animate:before {
  -webkit-transition-delay: 1000ms;
  transition-delay: 1000ms;
}

[data-aos][data-aos][data-aos-duration='1000']:after,
[data-aos][data-aos][data-aos-duration='1000']:before {
  -webkit-transition-duration: 1000ms;
  transition-duration: 1000ms;
}

[data-aos="invert-menu"] {
  -webkit-transition-property: color, border-color;
  transition-property: color, border-color;
}

[data-aos="invert-menu"].aos-animate {
  border-color: #272323;
  color: #272323;
}

/* Move tritim text*/
@media screen and (min-width: 1460px) {
  [data-aos="move-tritim"] {
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
  }
  [data-aos="move-tritim"].aos-animate {
    -webkit-transform: translateX(-370px);
    transform: translateX(-370px);
  }
  [data-aos="move-tritim-text"] {
    -webkit-transition-property: margin-right;
    transition-property: margin-right;
  }
  [data-aos="move-tritim-text"].aos-animate {
    margin-right: 250px;
  }
  [data-aos="move-tritim-bg"] {
    -webkit-transition-property: background-position;
    transition-property: background-position;
  }
  [data-aos="move-tritim-bg"].aos-animate {
    background-position-x: 370px !important;
  }
}

[data-aos="tile-color"] {
  background: #5a6571;
  -webkit-transition-property: background;
  transition-property: background;
}

[data-aos="tile-color"].aos-animate {
  background: #e51e4a;
  background: linear-gradient(135deg, #e51e4a 0%, #561454 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr= '#e51e4a', endColorstr='#561454',GradientType=1 );
}

/* Phone animation*/
[data-aos="buzz-out"] {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  -webkit-box-shadow: 0 0 1px transparent;
  box-shadow: 0 0 1px transparent;
}

[data-aos="buzz-out"].aos-animate {
  -webkit-animation-name: hvr-buzz-out;
  animation-name: hvr-buzz-out;
  -webkit-animation-duration: 1.75s;
  animation-duration: 1.75s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: 3;
  animation-iteration-count: 3;
}

@-webkit-keyframes hvr-buzz-out {
  10% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }
  15% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
  20% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }
  25% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
  30% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }
  35% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }
  40% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }
  45% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }
  50% {
    -webkit-transform: translateX(1px) rotate(0);
    transform: translateX(1px) rotate(0);
  }
  55% {
    -webkit-transform: translateX(0) rotate(0);
    transform: translateX(0) rotate(0);
  }
}

.wifi-symbol {
  display: none;
}

.wifi-symbol,
.wifi-symbol [foo] {
  display: block;
  position: absolute;
  right: 442px;
  top: -70px;
  display: inline-block;
  width: 125px;
  height: 125px;
}

@media screen and (max-width: 1459px) {
  .wifi-symbol,
  .wifi-symbol [foo] {
    right: 204px;
  }
}

@media screen and (max-width: 991px) {
  .wifi-symbol,
  .wifi-symbol [foo] {
    right: 120px;
  }
}

@media screen and (max-width: 767px) {
  .wifi-symbol,
  .wifi-symbol [foo] {
    display: none;
  }
}

.wifi-symbol .wifi-circle {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  display: block;
  width: 100%;
  height: 100%;
  font-size: 17.85714px;
  position: absolute;
  bottom: 0;
  left: 0;
  border-color: #fff;
  border-style: solid;
  border-width: 4px 4px 0 0;
  border-radius: 0 100% 0 0;
  opacity: 0;
}

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

[data-aos="wifi"].aos-animate .wifi-circle {
  -webkit-animation: 1.75s wifianimation 3;
  animation: 1.75s wifianimation 3;
}

[data-aos="wifi"].aos-animate .wifi-circle.first {
  -webkit-animation-delay: 500ms;
  animation-delay: 500ms;
}

[data-aos="wifi"].aos-animate .wifi-circle.second {
  width: 5em;
  height: 5em;
  -webkit-animation-delay: 400ms;
  animation-delay: 400ms;
}

[data-aos="wifi"].aos-animate .wifi-circle.third {
  width: 3em;
  height: 3em;
  -webkit-animation-delay: 300ms;
  animation-delay: 300ms;
}

/* main: ../main.scss*/
/* -----------------------------------------------------------------------------*/
/* This file contains all styles related to the button component.*/
/* -----------------------------------------------------------------------------*/
.cookies-container {
  position: fixed;
  bottom: 30px;
  left: 30px;
  width: 400px;
  padding: 30px;
  background-color: #cb0c44;
  color: #fff;
  z-index: 500000;
  font-size: 14px;
  line-height: 27px;
}

@media screen and (max-width: 500px) {
  .cookies-container {
    width: 250px;
    padding: 15px 30px;
  }
  .cookies-container br {
    display: none;
  }
}

.cookies-text {
  margin-bottom: 15px;
}

/* 7. Page-specific styles*/
/* main: ../main.scss*/
/* -----------------------------------------------------------------------------*/
/* This file contains styles that are specific to the home page.*/
/* -----------------------------------------------------------------------------*/
/* Section Intro*/
.backgroundcliptext .section-intro__background-bottom {
  position: relative;
  width: 100%;
  height: 100vh;
  min-height: 540px;
  color: #fff;
  background: -webkit-linear-gradient(transparent, transparent), url("../images/img_intro_desk.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
  -webkit-text-fill-color: transparent;
  background: -o-linear-gradient(transparent, transparent);
  -webkit-background-clip: text;
}

@media (max-width: 767px) {
  .backgroundcliptext .section-intro__background-bottom {
    background-attachment: scroll;
  }
}

.backgroundcliptext .section-intro__background-bottom span.primary {
  -webkit-text-fill-color: #cb0c44;
}

@supports (-ms-ime-align: auto) {
  .section-intro__background-bottom {
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
  }
}

.section-intro__background-top {
  background: url("../images/img_intro_desk.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
  width: 100%;
  height: 100vh;
  color: #fff;
  min-height: 540px;
  position: absolute;
  top: 0;
  pointer-events: none;
}

@media (max-width: 767px) {
  .section-intro__background-top {
    background-attachment: scroll;
  }
}

.text-tritim {
  font-family: 'QanelasSoftDEMO-ExtraBold';
  font-size: 276px;
  margin-top: 27vh;
  text-align: center;
}

@media screen and (max-width: 991px) {
  .text-tritim {
    font-size: 170px;
  }
}

@media screen and (max-width: 479px) {
  .text-tritim {
    font-size: 115px;
  }
}

.text-intro {
  text-align: center;
}

@media screen and (min-width: 1460px) {
  .text-intro {
    text-align: left;
    float: right;
    margin-right: 70px;
    margin-top: 18px;
  }
}

.section-intro__background-bottom .text-intro {
  color: #5a6571;
  -webkit-text-fill-color: #5a6571;
}

.animation-intro-wrap {
  position: relative;
  top: 0;
}

.animation-intro {
  position: absolute;
  top: 16vh;
  right: 0;
}

/* Section Hero*/
.section-hero {
  width: 100%;
  height: 360px;
  position: relative;
  background: #e51e4a;
  /* Old browsers */
  /* FF3.6-15 */
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(238deg, #e62951, #731e53, #402752);
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient (GradientType=0, startColorstr=#e62951, endColorstr=#402752)";
  background-size: 200% 200%;
  -webkit-animation: AnimationName 2s ease infinite;
  animation: AnimationName 2s ease infinite;
}

@media screen and (max-width: 767px) {
  .section-hero {
    height: 45vw;
  }
}

@media screen and (max-width: 767px) {
  .section-hero {
    height: 0;
    padding: 0;
    visibility: hidden;
  }
}

@-webkit-keyframes AnimationName {
  0% {
    background-position: 0 87%;
  }
  50% {
    background-position: 100% 14%;
  }
  100% {
    background-position: 0 87%;
  }
}

@keyframes AnimationName {
  0% {
    background-position: 0 87%;
  }
  50% {
    background-position: 100% 14%;
  }
  100% {
    background-position: 0 87%;
  }
}

.hero-text1 {
  top: 100px;
  display: block;
  position: relative;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .hero-text1 {
    top: 12vw;
  }
}

.hero-text2 {
  top: 100px;
  display: block;
  position: relative;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .hero-text2 {
    top: 12vw;
  }
}

.hero-bulb-wrap {
  position: relative;
  text-align: center;
}

.hero-bulb {
  position: absolute;
  right: 10%;
  top: 71px;
}

@media screen and (max-width: 1459px) {
  .hero-bulb {
    right: -9%;
  }
}

@media screen and (max-width: 1120px) {
  .hero-bulb {
    display: none;
  }
}

.hero-bulb-glow {
  position: absolute;
  right: 10%;
  top: 71px;
  opacity: 0;
  -webkit-animation: 2s glow ease infinite;
  animation: 2s glow ease infinite;
  -webkit-filter: sepia(1) contrast(3);
  filter: sepia(1) contrast(3);
}

@media screen and (max-width: 1459px) {
  .hero-bulb-glow {
    right: -9%;
  }
}

@media screen and (max-width: 1120px) {
  .hero-bulb-glow {
    display: none;
  }
}

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

@keyframes glow {
  0% {
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

/* Section Latest project*/
.article-latest-project {
  margin-bottom: 54px;
}

.article-latest-project__img-phone {
  position: absolute;
  top: 396px;
  left: 160px;
}

@media screen and (min-width: 768px) and (max-width: 991px) {
  .article-latest-project__img-phone {
    bottom: -135px;
    right: 108px;
    top: auto;
    left: auto;
  }
}

.shapes .article-latest-project__shape-phone {
  float: right;
  -webkit-shape-outside: polygon(100% 56%, 60% 100%, 63% 60%);
  shape-outside: polygon(100% 56%, 60% 100%, 63% 60%);
  width: 100%;
  height: 252px;
}

.article-latest-project__quote {
  float: right;
  width: 578px;
  padding: 36px 54px;
  position: relative;
  z-index: 2;
}

@media screen and (max-width: 1459px) {
  .article-latest-project__quote {
    float: none;
    width: auto;
  }
}

.quote__icon {
  position: absolute;
  right: 54px;
}

/* Section Latest blog*/
.article-latest-post {
  margin-top: 135px;
}

@media screen and (max-width: 479px) {
  .article-latest-post {
    margin-top: 108px;
  }
}

@media screen and (max-width: 767px) {
  .article-latest-post .panel--lower-sm {
    padding-bottom: 0;
  }
}

.article-latest-post__heading {
  margin-left: 36px;
}

@media screen and (max-width: 991px) {
  .article-latest-post__heading {
    margin-left: 0;
  }
}

.article-latest-post__tile {
  top: -85px;
  right: 44%;
  width: 265px;
  height: 265px;
  position: absolute;
  text-align: center;
}

@media screen and (max-width: 1459px) {
  .article-latest-post__tile {
    top: -75px;
    width: 200px;
    height: 200px;
  }
}

@media screen and (max-width: 991px) {
  .article-latest-post__tile {
    top: -85px;
    left: 36px;
    width: 200px;
    height: 200px;
  }
}

@media screen and (max-width: 479px) {
  .article-latest-post__tile {
    width: 160px;
    height: 160px;
    left: 36px;
    top: -72px;
  }
}

/* Section services*/
.tile--service {
  height: 320px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .tile--service {
    height: 275px;
    font-size: 18px;
  }
}

.icon-service {
  margin-bottom: 36px;
}

/* Section contact*/
.section-contact {
  background: url("../images/img_contact_bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  width: 100%;
  height: 100vh;
  margin-bottom: 0;
  color: #fff;
  min-height: 656px;
}

.section-contact__img-phone {
  display: inline-block;
  padding-top: 18px;
}

.section-contact__img-phone img {
  max-height: 65vh;
  min-height: 371px;
}

.section-contact__mail {
  display: block;
  color: #fff;
  position: absolute;
  width: 50%;
  left: 25%;
  height: 150px;
  top: 145px;
  padding-top: 70px;
}

.section-contact__mail:hover {
  color: #f95384;
}

@media screen and (max-width: 560px) {
  .section-contact__mail {
    top: 24vw;
  }
}

@media screen and (max-width: 419px) {
  .section-contact__mail {
    height: 100px;
    padding-top: 60px;
  }
}

@media screen and (max-height: 900px) {
  .section-contact__mail {
    top: 14vh;
  }
}

@media screen and (max-height: 400px) {
  .section-contact__mail {
    top: 24vh;
  }
}

.section-contact__phone {
  display: block;
  color: #fff;
  position: absolute;
  width: 50%;
  left: 25%;
  height: 150px;
  top: 360px;
  padding-top: 70px;
}

.section-contact__phone:hover {
  color: #f95384;
}

@media screen and (max-width: 560px) {
  .section-contact__phone {
    top: 61vw;
  }
}

@media screen and (max-width: 419px) {
  .section-contact__phone {
    height: 100px;
    padding-top: 60px;
  }
}

@media screen and (max-height: 900px) {
  .section-contact__phone {
    top: 36vh;
  }
}

@media screen and (max-height: 650px) {
  .section-contact__phone {
    top: 40vh;
  }
}

@media screen and (max-height: 450px) {
  .section-contact__phone {
    top: 50vh;
  }
}

@media screen and (max-height: 400px) {
  .section-contact__phone {
    top: 57vh;
  }
}

/* main: ../main.scss*/
/* -----------------------------------------------------------------------------*/
/* This file contains styles that are specific to the refrences page.*/
/* -----------------------------------------------------------------------------*/
/* Section References*/
@media screen and (min-width: 991px) {
  .section-references {
    margin-top: 72px;
  }
}

.nav-references {
  text-align: center;
  margin-bottom: 36px;
  padding-top: 18px;
}

.nav-references .nav {
  border: 0;
  display: inline-block;
  margin: 0;
}

.nav-references .nav li a {
  border: 0;
  margin: 36px 126px;
  padding: 0;
  padding-bottom: 18px;
  font-size: 24px;
  line-height: 36px;
  font-family: "Open Sans", "Helvetica Neue Light", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-weight: 700;
  text-decoration: none;
  color: #b8b8b8;
  border-bottom: 5px solid #b8b8b8;
  -webkit-transition: all 300ms;
  transition: all 300ms;
}

@media screen and (max-width: 767px) {
  .nav-references .nav li a {
    margin: 0 18px;
    max-width: 100%;
    font-size: 20px;
    padding-bottom: 9px;
  }
}

.nav-references .nav li a:hover, .nav-references .nav li a:focus {
  border: 0;
  background-color: transparent;
  color: #5a6571;
  border-bottom: 5px solid #cb0c44;
}

.nav-references .nav li.active a {
  color: #5a6571;
  border-bottom: 5px solid #cb0c44;
}

.reference {
  position: relative;
  margin-bottom: 90px;
  height: 455px;
}

@media screen and (min-width: 768px) and (max-width: 1459px) {
  .reference > a {
    width: 100%;
    height: 100%;
    overflow: hidden;
    display: inline-block;
  }
}

@media screen and (max-width: 767px) {
  .reference {
    height: auto;
    margin-bottom: 54px;
  }
}

.reference img {
  width: 100%;
}

@media screen and (min-width: 768px) and (max-width: 1459px) {
  .reference img {
    min-height: 100%;
    min-width: 100%;
    width: auto;
    max-width: none;
    position: relative;
    left: -30%;
  }
}

.reference:hover .reference__description {
  opacity: 1;
}

.reference:hover .reference__background img {
  z-index: 4;
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1);
}

#customers .reference {
  margin-bottom: 36px;
}

@media screen and (max-width: 767px) {
  #customers .reference {
    margin-bottom: 18px;
  }
  #customers .reference .reference__description {
    display: none;
  }
}

#customers .reference:hover img {
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1);
}

#customers .reference img {
  -webkit-filter: brightness(0) invert(0.8);
  filter: brightness(0) invert(0.8);
}

@media screen and (min-width: 768px) and (max-width: 1459px) {
  #customers .reference img {
    min-height: initial;
    min-width: initial;
    width: 45%;
    max-width: initial;
    position: relative;
  }
}

.reference__description {
  opacity: 0;
  position: absolute;
  z-index: 3;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transition: all 300ms;
  transition: all 300ms;
  padding: 72px;
}

@media screen and (max-width: 1459px) {
  .reference__description {
    padding: 36px;
  }
}

@media screen and (max-width: 767px) {
  .reference__description {
    opacity: 1;
    position: static;
    height: auto;
    padding: 36px 36px 54px;
    margin-top: 18px;
  }
}

.reference__background {
  width: 100%;
  height: 455px;
  background-color: #f2f2f2;
  position: relative;
}

@media screen and (max-width: 767px) {
  .reference__background {
    height: 320px;
    background-color: #abb4bc;
  }
}

.reference__background img {
  width: 45%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

@media screen and (max-width: 767px) {
  .reference__background img {
    -webkit-filter: brightness(0) invert(1) !important;
    filter: brightness(0) invert(1) !important;
  }
}

/* main: ../main.scss*/
/* -----------------------------------------------------------------------------*/
/* This file contains styles that are specific to the projects pages.*/
/* -----------------------------------------------------------------------------*/
.article-project {
  margin-top: 108px;
  margin-bottom: 360px;
}

@media screen and (max-width: 767px) {
  .article-project {
    margin-bottom: 0;
  }
}

.article-project__tile {
  position: absolute;
  right: -36px;
  top: -72px;
  width: 265px;
  height: 265px;
  position: absolute;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .article-project__tile {
    width: 140px;
    height: 140px;
    right: 0px;
  }
}

.article-project__img2 {
  position: absolute;
  right: 0;
  /* top: -162px;*/
}

/* main: ../main.scss*/
/* -----------------------------------------------------------------------------*/
/* This file contains styles that are specific to the projects pages.*/
/* -----------------------------------------------------------------------------*/
@media screen and (min-width: 991px) {
  .section-services, .section-service {
    margin-top: 72px;
  }
}

.service-wrap {
  width: 20%;
  float: left;
  padding-left: 18px;
  padding-right: 18px;
}

@media screen and (max-width: 1459px) {
  .service-wrap {
    width: 33.3333%;
  }
}

@media screen and (max-width: 767px) {
  .service-wrap {
    width: 50%;
  }
}

@media screen and (max-width: 500px) {
  .service-wrap {
    width: 100%;
  }
}

.service {
  text-decoration: none;
  margin-top: 36px;
  display: block;
  -webkit-transition: all 300ms;
  transition: all 300ms;
  height: 410px;
}

@media screen and (min-width: 768px) {
  .service:hover {
    -webkit-box-shadow: 8px 53px 60px rgba(0, 0, 0, 0.5);
    box-shadow: 8px 53px 60px rgba(0, 0, 0, 0.5);
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
  }
}

.service:hover {
  text-decoration: none;
}

.service .tile {
  margin-bottom: 36px;
  position: relative;
  height: 410px;
  top: -160px;
}

.service .tile__content__wrap {
  padding: 178px 18px 18px;
  text-align: center;
}

.img-service-tile {
  width: 100%;
  height: 160px;
  overflow: hidden;
  position: relative;
  z-index: 2;
}

@media screen and (max-width: 767px) {
  .section-service .panel {
    padding: 36px 18px !important;
  }
}

@media screen and (max-width: 767px) {
  .article-service {
    margin-bottom: 72px;
  }
}

.article-service ul {
  padding-left: 18px;
}

/* main: ../main.scss*/
/* -----------------------------------------------------------------------------*/
/* This file contains styles that are specific to the blog page.*/
/* -----------------------------------------------------------------------------*/
/* Section Blog*/
@media screen and (min-width: 991px) {
  .section-blog {
    margin-top: 72px;
  }
}

.article-post, .article-post-detail {
  margin-bottom: 54px;
}

@media screen and (max-width: 767px) {
  .article-post, .article-post-detail {
    margin-bottom: 0;
  }
}

.article-post:first-of-type, .article-post-detail:first-of-type {
  margin-top: 90px;
}

.article-post__tile {
  position: absolute;
  left: -36px;
  top: -72px;
  width: 265px;
  height: 265px;
  position: absolute;
  text-align: center;
}

@media screen and (max-width: 1459px) {
  .article-post__tile {
    width: 220px;
    height: 220px;
  }
}

@media screen and (max-width: 767px) {
  .article-post__tile {
    left: 18px;
    top: -72px;
    width: 180px;
    height: 180px;
  }
}

@media screen and (max-width: 479px) {
  .article-post__tile {
    width: 140px;
    height: 140px;
  }
}

.article-post__panel {
  margin-left: -108px;
  position: relative;
  z-index: 2;
  background-color: #fff;
}

@media screen and (max-width: 1459px) {
  .article-post__panel {
    margin-left: 0;
  }
}

.article-post-detail__panel {
  position: absolute;
  right: -160px;
  z-index: 2;
  top: 20%;
  background-color: #fff;
  width: 500px;
}

@media screen and (max-width: 767px) {
  .article-post-detail__panel {
    position: static;
    width: auto;
  }
}

/* main: ../main.scss*/
/* -----------------------------------------------------------------------------*/
/* This file contains styles that are specific to the blog page.*/
/* -----------------------------------------------------------------------------*/
/* Section Blog*/
@media screen and (min-width: 991px) {
  .section-about {
    margin-top: 72px;
  }
}

.article-about {
  margin-bottom: 54px;
  margin-top: 90px;
}

.article-about__panel {
  margin-top: -144px;
  position: relative;
  z-index: 2;
  background-color: #fff;
  width: 80%;
  left: 10%;
}

@media screen and (max-width: 767px) {
  .article-about__panel {
    margin-top: 0;
    width: auto;
    position: static;
    padding-left: 0;
    padding-right: 0;
  }
}

.form-about {
  padding: 18px 54px;
}

@media screen and (max-width: 767px) {
  .form-about .pl0 {
    padding: 0 !important;
  }
}

@media screen and (max-width: 767px) {
  .form-about {
    padding: 18px 0;
    border-top: 1px solid #e3e3e3;
  }
}

.form-about .border {
  border-right: 1px solid #e3e3e3;
  padding-right: 54px;
}

@media screen and (max-width: 767px) {
  .form-about .border {
    padding: 0;
    border: 0;
  }
}

#js-map {
  position: fixed;
  top: 0;
  bottom: 0;
  z-index: 4000;
  left: 0;
  right: 0;
  visibility: hidden;
}

#map {
  width: 100%;
  height: 100%;
}

.tile--map {
  width: 50px;
  height: 50px;
  position: fixed;
  z-index: 5;
  right: 18px;
  top: 18px;
  cursor: pointer;
  padding: 10px;
}

/* main: ../main.scss*/
/* -----------------------------------------------------------------------------*/
/* This file contains styles that are specific to the 404 page.*/
/* -----------------------------------------------------------------------------*/
.wrap-404 {
  position: relative;
  text-align: center;
  margin-top: 15vh;
}

@media screen and (max-width: 767px) {
  .wrap-404 {
    margin-top: 7vh;
  }
}

.text-404 {
  position: absolute;
  top: 0;
  left: 15%;
  z-index: 1;
  width: 70%;
  border-radius: 20px;
}

.img-404 {
  width: 70%;
  position: relative;
  z-index: 2;
}

.tile-404 {
  width: 255px;
  height: 255px;
  position: absolute;
  top: 160px;
  z-index: 3;
  left: 90px;
  display: block;
}

.tile-404:hover {
  color: #fff;
}

@media screen and (max-width: 1459px) {
  .tile-404 {
    width: 180px;
    height: 180px;
    top: 100px;
  }
}

@media screen and (max-width: 991px) {
  .tile-404 {
    top: 66px;
    left: 25px;
  }
}

@media screen and (max-width: 767px) {
  .tile-404 {
    position: relative;
    display: inline-block;
    text-align: center;
    top: 18px;
    left: 0;
  }
}

.noiseContain {
  position: absolute;
  top: 0;
  left: 15%;
  width: 70%;
  height: 600px;
}

@media screen and (max-width: 1459px) {
  .noiseContain {
    height: 400px;
  }
}

@media screen and (max-width: 991px) {
  .noiseContain {
    height: 300px;
  }
}

@media screen and (max-width: 767px) {
  .noiseContain {
    height: 41vw;
  }
}

.noiseContain div {
  border-radius: 20px;
  opacity: 0.9;
  background-image: url("../images/noise.jpg");
  background-repeat: repeat;
  background-position: 0 0;
  width: 100%;
  height: 100%;
  -webkit-animation: noiseAnim 0.5s infinite linear alternate;
  animation: noiseAnim 0.5s infinite linear alternate;
}

@-webkit-keyframes noiseAnim {
  0% {
    background-position: 10px 200px;
  }
  20% {
    background-position: -50px 0;
  }
  40% {
    background-position: 100px -10px;
  }
  60% {
    background-position: 0 -150px;
  }
  80% {
    background-position: -100px -30px;
  }
  100% {
    background-position: 160px -60px;
  }
}

@keyframes noiseAnim {
  0% {
    background-position: 10px 200px;
  }
  20% {
    background-position: -50px 0;
  }
  40% {
    background-position: 100px -10px;
  }
  60% {
    background-position: 0 -150px;
  }
  80% {
    background-position: -100px -30px;
  }
  100% {
    background-position: 160px -60px;
  }
}

/*# sourceMappingURL=data:application/json;base64,ewoJInZlcnNpb24iOiAzLAoJImZpbGUiOiAibWFpbi5jc3MiLAoJInNvdXJjZXMiOiBbCgkJIm1haW4uc2NzcyIsCgkJImFic3RyYWN0cy9fdmFyaWFibGVzLnNjc3MiLAoJCSJhYnN0cmFjdHMvX2Z1bmN0aW9ucy5zY3NzIiwKCQkiYWJzdHJhY3RzL19taXhpbnMuc2NzcyIsCgkJInZlbmRvci1leHRlbnNpb25zL19ib290c3RyYXAuc2NzcyIsCgkJInZlbmRvci9fYm9vdHN0cmFwLnNjc3MiLAoJCSJ2ZW5kb3IvYm9vdHN0cmFwL192YXJpYWJsZXMuc2NzcyIsCgkJInZlbmRvci9ib290c3RyYXAvX21peGlucy5zY3NzIiwKCQkidmVuZG9yL2Jvb3RzdHJhcC9taXhpbnMvX2hpZGUtdGV4dC5zY3NzIiwKCQkidmVuZG9yL2Jvb3RzdHJhcC9taXhpbnMvX29wYWNpdHkuc2NzcyIsCgkJInZlbmRvci9ib290c3RyYXAvbWl4aW5zL19pbWFnZS5zY3NzIiwKCQkidmVuZG9yL2Jvb3RzdHJhcC9taXhpbnMvX2xhYmVscy5zY3NzIiwKCQkidmVuZG9yL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc2V0LWZpbHRlci5zY3NzIiwKCQkidmVuZG9yL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc2l6ZS5zY3NzIiwKCQkidmVuZG9yL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc3BvbnNpdmUtdmlzaWJpbGl0eS5zY3NzIiwKCQkidmVuZG9yL2Jvb3RzdHJhcC9taXhpbnMvX3NpemUuc2NzcyIsCgkJInZlbmRvci9ib290c3RyYXAvbWl4aW5zL190YWItZm9jdXMuc2NzcyIsCgkJInZlbmRvci9ib290c3RyYXAvbWl4aW5zL19yZXNldC10ZXh0LnNjc3MiLAoJCSJ2ZW5kb3IvYm9vdHN0cmFwL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwKCQkidmVuZG9yL2Jvb3RzdHJhcC9taXhpbnMvX3RleHQtb3ZlcmZsb3cuc2NzcyIsCgkJInZlbmRvci9ib290c3RyYXAvbWl4aW5zL192ZW5kb3ItcHJlZml4ZXMuc2NzcyIsCgkJInZlbmRvci9ib290c3RyYXAvbWl4aW5zL19hbGVydHMuc2NzcyIsCgkJInZlbmRvci9ib290c3RyYXAvbWl4aW5zL19idXR0b25zLnNjc3MiLAoJCSJ2ZW5kb3IvYm9vdHN0cmFwL21peGlucy9fcGFuZWxzLnNjc3MiLAoJCSJ2ZW5kb3IvYm9vdHN0cmFwL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwKCQkidmVuZG9yL2Jvb3RzdHJhcC9taXhpbnMvX2xpc3QtZ3JvdXAuc2NzcyIsCgkJInZlbmRvci9ib290c3RyYXAvbWl4aW5zL19uYXYtZGl2aWRlci5zY3NzIiwKCQkidmVuZG9yL2Jvb3RzdHJhcC9taXhpbnMvX2Zvcm1zLnNjc3MiLAoJCSJ2ZW5kb3IvYm9vdHN0cmFwL21peGlucy9fcHJvZ3Jlc3MtYmFyLnNjc3MiLAoJCSJ2ZW5kb3IvYm9vdHN0cmFwL21peGlucy9fdGFibGUtcm93LnNjc3MiLAoJCSJ2ZW5kb3IvYm9vdHN0cmFwL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLAoJCSJ2ZW5kb3IvYm9vdHN0cmFwL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwKCQkidmVuZG9yL2Jvb3RzdHJhcC9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwKCQkidmVuZG9yL2Jvb3RzdHJhcC9taXhpbnMvX2NsZWFyZml4LnNjc3MiLAoJCSJ2ZW5kb3IvYm9vdHN0cmFwL21peGlucy9fY2VudGVyLWJsb2NrLnNjc3MiLAoJCSJ2ZW5kb3IvYm9vdHN0cmFwL21peGlucy9fbmF2LXZlcnRpY2FsLWFsaWduLnNjc3MiLAoJCSJ2ZW5kb3IvYm9vdHN0cmFwL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsCgkJInZlbmRvci9ib290c3RyYXAvbWl4aW5zL19ncmlkLnNjc3MiLAoJCSJ2ZW5kb3IvYm9vdHN0cmFwL19ub3JtYWxpemUuc2NzcyIsCgkJInZlbmRvci9ib290c3RyYXAvX3ByaW50LnNjc3MiLAoJCSJ2ZW5kb3IvYm9vdHN0cmFwL19ncmlkLnNjc3MiLAoJCSJ2ZW5kb3IvYm9vdHN0cmFwL19jb21wb25lbnQtYW5pbWF0aW9ucy5zY3NzIiwKCQkidmVuZG9yL2Jvb3RzdHJhcC9fbmF2cy5zY3NzIiwKCQkidmVuZG9yL2Jvb3RzdHJhcC9fcmVzcG9uc2l2ZS11dGlsaXRpZXMuc2NzcyIsCgkJInZlbmRvci9fYW9zLnNjc3MiLAoJCSJ2ZW5kb3IvYW9zL19jb3JlLnNjc3MiLAoJCSJ2ZW5kb3IvYW9zL19lYXNpbmcuc2NzcyIsCgkJInZlbmRvci9hb3MvX2FuaW1hdGlvbnMuc2NzcyIsCgkJImJhc2UvX2Jhc2Uuc2NzcyIsCgkJImJhc2UvX2ZvbnRzLnNjc3MiLAoJCSJiYXNlL190eXBvZ3JhcGh5LnNjc3MiLAoJCSJiYXNlL19oZWxwZXJzLnNjc3MiLAoJCSJsYXlvdXQvX2hlYWRlci5zY3NzIiwKCQkibGF5b3V0L19mb290ZXIuc2NzcyIsCgkJImxheW91dC9fbWVudS5zY3NzIiwKCQkibGF5b3V0L19wYWdlX25hdi5zY3NzIiwKCQkibGF5b3V0L19mb3JtLnNjc3MiLAoJCSJjb21wb25lbnRzL19idXR0b24uc2NzcyIsCgkJImNvbXBvbmVudHMvX3BhbmVsLnNjc3MiLAoJCSJjb21wb25lbnRzL190aWxlLnNjc3MiLAoJCSJjb21wb25lbnRzL19zb2NpYWwuc2NzcyIsCgkJImNvbXBvbmVudHMvX2N1c3RvbV9hbmltYXRpb25zLnNjc3MiLAoJCSJjb21wb25lbnRzL19jb29raWVzLnNjc3MiLAoJCSJwYWdlcy9faG9tZS5zY3NzIiwKCQkicGFnZXMvX3JlZmVyZW5jZXMuc2NzcyIsCgkJInBhZ2VzL19wcm9qZWN0cy5zY3NzIiwKCQkicGFnZXMvX3NlcnZpY2VzLnNjc3MiLAoJCSJwYWdlcy9fYmxvZy5zY3NzIiwKCQkicGFnZXMvX2Fib3V0LnNjc3MiLAoJCSJwYWdlcy9fNDA0LnNjc3MiCgldLAoJInNvdXJjZXNDb250ZW50IjogWwoJCSJAY2hhcnNldCAnVVRGLTgnO1xuXG4vKiAxLiBDb25maWd1cmF0aW9uIGFuZCBoZWxwZXJzKi9cbkBpbXBvcnRcbiAgJ2Fic3RyYWN0cy92YXJpYWJsZXMnLFxuICAnYWJzdHJhY3RzL2Z1bmN0aW9ucycsXG4gICdhYnN0cmFjdHMvbWl4aW5zJztcblxuLyogMi0gVmVuZG9yIGV4dGVuc2lvbnMqL1xuQGltcG9ydFxuICAndmVuZG9yLWV4dGVuc2lvbnMvYm9vdHN0cmFwJztcblxuLyogMy4gVmVuZG9ycyovXG5AaW1wb3J0XG4gICd2ZW5kb3IvYm9vdHN0cmFwJyxcbiAgJ3ZlbmRvci9hb3MnO1xuXG4vKiA0LiBCYXNlIHN0dWZmKi9cbkBpbXBvcnRcbiAgJ2Jhc2UvYmFzZScsXG4gICdiYXNlL2ZvbnRzJyxcbiAgJ2Jhc2UvdHlwb2dyYXBoeScsXG4gICdiYXNlL2hlbHBlcnMnO1xuXG4vKiA1LiBMYXlvdXQtcmVsYXRlZCBzZWN0aW9ucyovXG5AaW1wb3J0XG4gICdsYXlvdXQvaGVhZGVyJyxcbiAgJ2xheW91dC9mb290ZXInLFxuICAnbGF5b3V0L21lbnUnLFxuICAnbGF5b3V0L3BhZ2VfbmF2JyxcbiAgJ2xheW91dC9mb3JtJztcblxuLyogNi4gQ29tcG9uZW50cyovXG5AaW1wb3J0XG4gICdjb21wb25lbnRzL2J1dHRvbicsXG4gICdjb21wb25lbnRzL3BhbmVsJyxcbiAgJ2NvbXBvbmVudHMvdGlsZScsXG4gICdjb21wb25lbnRzL3NvY2lhbCcsXG4gICdjb21wb25lbnRzL2N1c3RvbV9hbmltYXRpb25zJyxcbiAgJ2NvbXBvbmVudHMvY29va2llcyc7XG5cbi8qIDcuIFBhZ2Utc3BlY2lmaWMgc3R5bGVzKi9cbkBpbXBvcnRcbiAgJ3BhZ2VzL2hvbWUnLFxuICAncGFnZXMvcmVmZXJlbmNlcycsXG4gICdwYWdlcy9wcm9qZWN0cycsXG4gICdwYWdlcy9zZXJ2aWNlcycsXG4gICdwYWdlcy9ibG9nJyxcbiAgJ3BhZ2VzL2Fib3V0JyxcbiAgJ3BhZ2VzLzQwNCc7XG4iLAoJCSIvLyBtYWluOiAuLi9tYWluLnNjc3Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBUaGlzIGZpbGUgY29udGFpbnMgYWxsIGFwcGxpY2F0aW9uLXdpZGUgU2FzcyB2YXJpYWJsZXMuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cblxuXG5cbi8vLyBGb250c1xuJGZvbnQtc2l6ZS1iYXNlOiAxOHB4O1xuJGZvbnQtc2l6ZS1zbTogMTZweDtcbiRsaW5lLWhlaWdodC1iYXNlOiAyO1xuJGZvbnQtd2VpZ2h0LWJhc2U6IDQwMDtcblxuXG4vLy8gRm9udCBmYW1pbHkgc3RhY2tzXG4kdGV4dC1mb250LXN0YWNrOiAnT3BlbiBTYW5zJywgJ0hlbHZldGljYSBOZXVlIExpZ2h0JywgJ0hlbHZldGljYSBOZXVlJywgJ0hlbHZldGljYScsICdBcmlhbCcsIHNhbnMtc2VyaWY7XG4kdGV4dC1mb250LXN0YWNrLWFsdDogJ1JvYm90byBTbGFiJywgc2VyaWY7XG5cblxuXG5cblxuXG4vLy8gQ3Jvc3MtcHJvamVjdCBjb2xvcnNcbiRjb2xvci1tb3N0bHktYmxhY2stcmVkOiAjMjcyMzIzO1xuJGNvbG9yLXZlcnktZGFyay1ncmF5aXNoLWJsdWU6ICM1YTY1NzE7XG4kY29sb3ItdmVyeS1saWdodC1ncmF5OiAjZTVlNWU1O1xuXG4kY29sb3ItdmVyeS1kYXJrLW1hZ2VudGE6ICM1NjE0NTQ7XG4kY29sb3Itc3Ryb25nLXBpbms6ICNjYjBjNDQ7XG4kY29sb3Itdml2aWQtcmVkOiAjZTUxZTRhO1xuJGNvbG9yLXNvZnQtcGluazogI2Y5NTM4NDtcblxuXG4vLy8gVGV4dCBjb2xvclxuJHRleHQtY29sb3I6ICRjb2xvci12ZXJ5LWRhcmstZ3JheWlzaC1ibHVlO1xuXG5cbi8vLyBIZWFkaW5ncyBjb2xvclxuJGhlYWRpbmctY29sb3I6ICRjb2xvci1tb3N0bHktYmxhY2stcmVkO1xuXG5cbi8vLyBCcmFuZCBwcmltYXJ5IGNvbG9yXG4kYnJhbmQtY29sb3ItcHJpbWFyeTogJGNvbG9yLXN0cm9uZy1waW5rO1xuXG5cblxuXG5cblxuLy8vIENvbnRhaW5lcidzIG1heGltdW0gd2lkdGhcbi8vLyBAdHlwZSBMZW5ndGhcbi8vICRtYXgtd2lkdGg6IDE0NjBweDtcblxuXG5cblxuXG4vLy8gQnJlYWtwb2ludHMgbWFwXG4vLy8gQHByb3Age1N0cmluZ30ga2V5cyAtIEtleXMgYXJlIGlkZW50aWZpZXJzIG1hcHBlZCB0byBhIGdpdmVuIGxlbmd0aFxuLy8vIEBwcm9wIHtNYXB9IHZhbHVlcyAtIFZhbHVlcyBhcmUgYWN0dWFsIGJyZWFrcG9pbnRzIGV4cHJlc3NlZCBpbiBwaXhlbHNcbi8vICRicmVha3BvaW50czogKFxuLy8gICAnc21hbGwnOiAzMjBweCxcbi8vICAgJ21lZGl1bSc6IDc2OHB4LFxuLy8gICAnbGFyZ2UnOiAxMDI0cHgsXG4vLyApO1xuXG5cblxuXG5cblxuLy8vIFJlbGF0aXZlIG9yIGFic29sdXRlIFVSTCB3aGVyZSBhbGwgYXNzZXRzIGFyZSBzZXJ2ZWQgZnJvbVxuLy8vIEB0eXBlIFN0cmluZ1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaGVuIHVzaW5nIGEgQ0ROXG4vLy8gICAkYmFzZS11cmw6ICdodHRwOi8vY2RuLmV4YW1wbGUuY29tL2Fzc2V0cy8nO1xuJGJhc2UtdXJsOiAnL2Fzc2V0cy8nICFkZWZhdWx0O1xuIiwKCQkiLy8gbWFpbjogLi4vbWFpbi5zY3NzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVGhpcyBmaWxlIGNvbnRhaW5zIGFsbCBhcHBsaWNhdGlvbi13aWRlIFNhc3MgZnVuY3Rpb25zLlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8vIE5hdGl2ZSBgdXJsKC4uKWAgZnVuY3Rpb24gd3JhcHBlclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYmFzZSAtIGJhc2UgVVJMIGZvciB0aGUgYXNzZXRcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHR5cGUgLSBhc3NldCB0eXBlIGZvbGRlciAoZS5nLiBgZm9udHMvYClcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHBhdGggLSBhc3NldCBwYXRoXG4vLy8gQHJldHVybiB7VXJsfVxuQGZ1bmN0aW9uIGFzc2V0KCRiYXNlLCAkdHlwZSwgJHBhdGgpIHtcbiAgQHJldHVybiB1cmwoJGJhc2UgKyAkdHlwZSArICRwYXRoKTtcbn1cblxuLy8vIFJldHVybnMgVVJMIHRvIGFuIGltYWdlIGJhc2VkIG9uIGl0cyBwYXRoXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRwYXRoIC0gaW1hZ2UgcGF0aFxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYmFzZSBbJGJhc2UtdXJsXSAtIGJhc2UgVVJMXG4vLy8gQHJldHVybiB7VXJsfVxuLy8vIEByZXF1aXJlICRiYXNlLXVybFxuQGZ1bmN0aW9uIGltYWdlKCRwYXRoLCAkYmFzZTogJGJhc2UtdXJsKSB7XG4gIEByZXR1cm4gYXNzZXQoJGJhc2UsICdpbWFnZXMvJywgJHBhdGgpO1xufVxuXG4vLy8gUmV0dXJucyBVUkwgdG8gYSBmb250IGJhc2VkIG9uIGl0cyBwYXRoXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRwYXRoIC0gZm9udCBwYXRoXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRiYXNlIFskYmFzZS11cmxdIC0gYmFzZSBVUkxcbi8vLyBAcmV0dXJuIHtVcmx9XG4vLy8gQHJlcXVpcmUgJGJhc2UtdXJsXG5AZnVuY3Rpb24gZm9udCgkcGF0aCwgJGJhc2U6ICRiYXNlLXVybCkge1xuICBAcmV0dXJuIGFzc2V0KCRiYXNlLCAnZm9udHMvJywgJHBhdGgpO1xufVxuIiwKCQkiLy8gbWFpbjogLi4vbWFpbi5zY3NzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVGhpcyBmaWxlIGNvbnRhaW5zIGFsbCBhcHBsaWNhdGlvbi13aWRlIFNhc3MgbWl4aW5zLlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8vIEV2ZW50IHdyYXBwZXJcbi8vLyBAYXV0aG9yIEhhcnJ5IFJvYmVydHNcbi8vLyBAcGFyYW0ge0Jvb2x9ICRzZWxmIFtmYWxzZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBpbmNsdWRlIGN1cnJlbnQgc2VsZWN0b3Jcbi8vLyBAbGluayBodHRwczovL3R3aXR0ZXIuY29tL2Nzc3dpemFyZHJ5L3N0YXR1cy80Nzg5Mzg1MzAzNDIwMDY3ODQgT3JpZ2luYWwgdHdlZXQgZnJvbSBIYXJyeSBSb2JlcnRzXG5AbWl4aW4gb24tZXZlbnQoJHNlbGY6IGZhbHNlKSB7XG4gIEBpZiAkc2VsZiB7XG4gICAgJixcbiAgICAmOmhvdmVyLFxuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAmOmhvdmVyLFxuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBNYWtlIGEgY29udGV4dCBiYXNlZCBzZWxlY3RvciBhIGxpdHRsZSBtb3JlIGZyaWVuZGx5XG4vLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRjb250ZXh0XG5AbWl4aW4gd2hlbi1pbnNpZGUoJGNvbnRleHQpIHtcbiAgI3skY29udGV4dH0gJiB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsCgkJIi8qIG1haW46IC4uL21haW4uc2NzcyovXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLyogVGhpcyBmaWxlIGNvbnRhaW5zIGJvb3RzdHJhcCB2YXJpYWJsZXMgb3ZlcndyaXRlcy4qL1xyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG4vKj09IE1lZGlhIHF1ZXJpZXMgYnJlYWtwb2ludHMqL1xyXG4vKiovXHJcbi8qIyMgRGVmaW5lIHRoZSBicmVha3BvaW50cyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSwgYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcy4qL1xyXG5cclxuLyogRXh0cmEgc21hbGwgc2NyZWVuIC8gcGhvbmUqL1xyXG4vKioqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHNgIGFzIG9mIHYzLjAuMSovXHJcbiRzY3JlZW4teHM6ICAgICAgICAgICAgICAgICAgNDgwcHggIWRlZmF1bHQ7XHJcbi8qKiogRGVwcmVjYXRlZCBgJHNjcmVlbi14cy1taW5gIGFzIG9mIHYzLjIuMCovXHJcbiRzY3JlZW4teHMtbWluOiAgICAgICAgICAgICAgJHNjcmVlbi14cyAhZGVmYXVsdDtcclxuLyoqKiBEZXByZWNhdGVkIGAkc2NyZWVuLXBob25lYCBhcyBvZiB2My4wLjEqL1xyXG4kc2NyZWVuLXBob25lOiAgICAgICAgICAgICAgICRzY3JlZW4teHMtbWluICFkZWZhdWx0O1xyXG5cclxuLyogU21hbGwgc2NyZWVuIC8gdGFibGV0Ki9cclxuLyoqKiBEZXByZWNhdGVkIGAkc2NyZWVuLXNtYCBhcyBvZiB2My4wLjEqL1xyXG4kc2NyZWVuLXNtOiAgICAgICAgICAgICAgICAgIDc2OHB4ICFkZWZhdWx0O1xyXG4kc2NyZWVuLXNtLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tc20gIWRlZmF1bHQ7XHJcbi8qKiogRGVwcmVjYXRlZCBgJHNjcmVlbi10YWJsZXRgIGFzIG9mIHYzLjAuMSovXHJcbiRzY3JlZW4tdGFibGV0OiAgICAgICAgICAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XHJcblxyXG4vKiBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcCovXHJcbi8qKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1tZGAgYXMgb2YgdjMuMC4xKi9cclxuJHNjcmVlbi1tZDogICAgICAgICAgICAgICAgICA5OTJweCAhZGVmYXVsdDtcclxuJHNjcmVlbi1tZC1taW46ICAgICAgICAgICAgICAkc2NyZWVuLW1kICFkZWZhdWx0O1xyXG4vKioqIERlcHJlY2F0ZWQgYCRzY3JlZW4tZGVza3RvcGAgYXMgb2YgdjMuMC4xKi9cclxuJHNjcmVlbi1kZXNrdG9wOiAgICAgICAgICAgICAkc2NyZWVuLW1kLW1pbiAhZGVmYXVsdDtcclxuXHJcbi8qIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcCovXHJcbi8qKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZ2AgYXMgb2YgdjMuMC4xKi9cclxuJHNjcmVlbi1sZzogICAgICAgICAgICAgICAgICAxNDYwcHggIWRlZmF1bHQ7XHJcbiRzY3JlZW4tbGctbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1sZyAhZGVmYXVsdDtcclxuLyoqKiBEZXByZWNhdGVkIGAkc2NyZWVuLWxnLWRlc2t0b3BgIGFzIG9mIHYzLjAuMSovXHJcbiRzY3JlZW4tbGctZGVza3RvcDogICAgICAgICAgJHNjcmVlbi1sZy1taW4gIWRlZmF1bHQ7XHJcblxyXG4vKiBTbyBtZWRpYSBxdWVyaWVzIGRvbid0IG92ZXJsYXAgd2hlbiByZXF1aXJlZCwgcHJvdmlkZSBhIG1heGltdW0qL1xyXG4kc2NyZWVuLXhzLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLXNtLW1pbiAtIDEpICFkZWZhdWx0O1xyXG4kc2NyZWVuLXNtLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLW1kLW1pbiAtIDEpICFkZWZhdWx0O1xyXG4kc2NyZWVuLW1kLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLWxnLW1pbiAtIDEpICFkZWZhdWx0O1xyXG5cclxuXHJcbi8qPT0gR3JpZCBzeXN0ZW0qL1xyXG4vKiovXHJcbi8qIyMgRGVmaW5lIHlvdXIgY3VzdG9tIHJlc3BvbnNpdmUgZ3JpZC4qL1xyXG5cclxuLyoqKiBOdW1iZXIgb2YgY29sdW1ucyBpbiB0aGUgZ3JpZC4qL1xyXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XHJcbi8qKiogUGFkZGluZyBiZXR3ZWVuIGNvbHVtbnMuIEdldHMgZGl2aWRlZCBpbiBoYWxmIGZvciB0aGUgbGVmdCBhbmQgcmlnaHQuKi9cclxuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgIDM2cHg7XHJcbi8qIE5hdmJhciBjb2xsYXBzZSovXHJcbi8qKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWNvbWVzIHVuY29sbGFwc2VkLiovXHJcbiRncmlkLWZsb2F0LWJyZWFrcG9pbnQ6ICAgICAkc2NyZWVuLXNtLW1pbiAhZGVmYXVsdDtcclxuLyoqKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlZ2lucyBjb2xsYXBzaW5nLiovXHJcbiRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4OiAoJGdyaWQtZmxvYXQtYnJlYWtwb2ludCAtIDEpICFkZWZhdWx0O1xyXG5cclxuXHJcbi8qPT0gQ29udGFpbmVyIHNpemVzKi9cclxuLyoqL1xyXG4vKiMjIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuKi9cclxuXHJcbi8qIFNtYWxsIHNjcmVlbiAvIHRhYmxldCovXHJcbiRjb250YWluZXItdGFibGV0OiAgICAgICAgICAgICAoNzIwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xyXG4vKioqIEZvciBgJHNjcmVlbi1zbS1taW5gIGFuZCB1cC4qL1xyXG4kY29udGFpbmVyLXNtOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci10YWJsZXQgIWRlZmF1bHQ7XHJcblxyXG4vKiBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcCovXHJcbiRjb250YWluZXItZGVza3RvcDogICAgICAgICAgICAoOTIwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xyXG4vKioqIEZvciBgJHNjcmVlbi1tZC1taW5gIGFuZCB1cC4qL1xyXG4kY29udGFpbmVyLW1kOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1kZXNrdG9wICFkZWZhdWx0O1xyXG5cclxuLyogTGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wKi9cclxuJGNvbnRhaW5lci1sYXJnZS1kZXNrdG9wOiAgICAgICgxNDI0cHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xyXG4vKioqIEZvciBgJHNjcmVlbi1sZy1taW5gIGFuZCB1cC4qL1xyXG4kY29udGFpbmVyLWxnOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1sYXJnZS1kZXNrdG9wICFkZWZhdWx0O1xyXG5cclxuXHJcbi5jb250YWluZXItLXNtIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuICAgIHdpZHRoOiAkY29udGFpbmVyLXNtICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xyXG4gICAgd2lkdGg6ICRjb250YWluZXItbWQgIWltcG9ydGFudDtcclxuICB9XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XHJcbiAgICB3aWR0aDogMTMzNnB4ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbiIsCgkJIi8qIVxuICogQm9vdHN0cmFwIHYzLjMuNyAoaHR0cDovL2dldGJvb3RzdHJhcC5jb20pXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDE2IFR3aXR0ZXIsIEluYy5cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFzdGVyL0xJQ0VOU0UpXG4gKi9cblxuLy8gQ29yZSB2YXJpYWJsZXMgYW5kIG1peGluc1xuQGltcG9ydCBcImJvb3RzdHJhcC92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvbWl4aW5zXCI7XG5cbi8vIFJlc2V0IGFuZCBkZXBlbmRlbmNpZXNcbkBpbXBvcnQgXCJib290c3RyYXAvbm9ybWFsaXplXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3ByaW50XCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL2dseXBoaWNvbnNcIjtcblxuLy8gQ29yZSBDU1Ncbi8vIEBpbXBvcnQgXCJib290c3RyYXAvc2NhZmZvbGRpbmdcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvdHlwZVwiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9jb2RlXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2dyaWRcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvdGFibGVzXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL2Zvcm1zXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL2J1dHRvbnNcIjtcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCBcImJvb3RzdHJhcC9jb21wb25lbnQtYW5pbWF0aW9uc1wiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9kcm9wZG93bnNcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvYnV0dG9uLWdyb3Vwc1wiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9pbnB1dC1ncm91cHNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvbmF2c1wiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9uYXZiYXJcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvYnJlYWRjcnVtYnNcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvcGFnaW5hdGlvblwiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9wYWdlclwiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9sYWJlbHNcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvYmFkZ2VzXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL2p1bWJvdHJvblwiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC90aHVtYm5haWxzXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL2FsZXJ0c1wiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9wcm9ncmVzcy1iYXJzXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL21lZGlhXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL2xpc3QtZ3JvdXBcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvcGFuZWxzXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL3Jlc3BvbnNpdmUtZW1iZWRcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvd2VsbHNcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvY2xvc2VcIjtcblxuLy8gQ29tcG9uZW50cyB3LyBKYXZhU2NyaXB0XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL21vZGFsc1wiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC90b29sdGlwXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL3BvcG92ZXJzXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL2Nhcm91c2VsXCI7XG5cbi8vIFV0aWxpdHkgY2xhc3Nlc1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC91dGlsaXRpZXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcmVzcG9uc2l2ZS11dGlsaXRpZXNcIjtcbiIsCgkJIiRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXI6IGZhbHNlICFkZWZhdWx0O1xuLy9cbi8vIFZhcmlhYmxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLz09IENvbG9yc1xuLy9cbi8vIyMgR3JheSBhbmQgYnJhbmQgY29sb3JzIGZvciB1c2UgYWNyb3NzIEJvb3RzdHJhcC5cblxuJGdyYXktYmFzZTogICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kZ3JheS1kYXJrZXI6ICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAxMy41JSkgIWRlZmF1bHQ7IC8vICMyMjJcbiRncmF5LWRhcms6ICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDIwJSkgIWRlZmF1bHQ7ICAgLy8gIzMzM1xuJGdyYXk6ICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMzMuNSUpICFkZWZhdWx0OyAvLyAjNTU1XG4kZ3JheS1saWdodDogICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCA0Ni43JSkgIWRlZmF1bHQ7IC8vICM3NzdcbiRncmF5LWxpZ2h0ZXI6ICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDkzLjUlKSAhZGVmYXVsdDsgLy8gI2VlZVxuXG4kYnJhbmQtcHJpbWFyeTogICAgICAgICBkYXJrZW4oIzQyOGJjYSwgNi41JSkgIWRlZmF1bHQ7IC8vICMzMzdhYjdcbiRicmFuZC1zdWNjZXNzOiAgICAgICAgICM1Y2I4NWMgIWRlZmF1bHQ7XG4kYnJhbmQtaW5mbzogICAgICAgICAgICAjNWJjMGRlICFkZWZhdWx0O1xuJGJyYW5kLXdhcm5pbmc6ICAgICAgICAgI2YwYWQ0ZSAhZGVmYXVsdDtcbiRicmFuZC1kYW5nZXI6ICAgICAgICAgICNkOTUzNGYgIWRlZmF1bHQ7XG5cblxuLy89PSBTY2FmZm9sZGluZ1xuLy9cbi8vIyMgU2V0dGluZ3MgZm9yIHNvbWUgb2YgdGhlIG1vc3QgZ2xvYmFsIHN0eWxlcy5cblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIGZvciBgPGJvZHk+YC5cbiRib2R5LWJnOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIEdsb2JhbCB0ZXh0IGNvbG9yIG9uIGA8Ym9keT5gLlxuJHRleHQtY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcblxuLy8qKiBHbG9iYWwgdGV4dHVhbCBsaW5rIGNvbG9yLlxuJGxpbmstY29sb3I6ICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4vLyoqIExpbmsgaG92ZXIgY29sb3Igc2V0IHZpYSBgZGFya2VuKClgIGZ1bmN0aW9uLlxuJGxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xuLy8qKiBMaW5rIGhvdmVyIGRlY29yYXRpb24uXG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWRlZmF1bHQ7XG5cblxuLy89PSBUeXBvZ3JhcGh5XG4vL1xuLy8jIyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktc2VyaWY6ICAgICAgIEdlb3JnaWEsIFwiVGltZXMgTmV3IFJvbWFuXCIsIFRpbWVzLCBzZXJpZiAhZGVmYXVsdDtcbi8vKiogRGVmYXVsdCBtb25vc3BhY2UgZm9udHMgZm9yIGA8Y29kZT5gLCBgPGtiZD5gLCBhbmQgYDxwcmU+YC5cbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAxNHB4ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sYXJnZTogICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSkgIWRlZmF1bHQ7IC8vIH4xOHB4XG4kZm9udC1zaXplLXNtYWxsOiAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDAuODUpKSAhZGVmYXVsdDsgLy8gfjEycHhcblxuJGZvbnQtc2l6ZS1oMTogICAgICAgICAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMi42KSkgIWRlZmF1bHQ7IC8vIH4zNnB4XG4kZm9udC1zaXplLWgyOiAgICAgICAgICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAyLjE1KSkgIWRlZmF1bHQ7IC8vIH4zMHB4XG4kZm9udC1zaXplLWgzOiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNykpICFkZWZhdWx0OyAvLyB+MjRweFxuJGZvbnQtc2l6ZS1oNDogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSkgIWRlZmF1bHQ7IC8vIH4xOHB4XG4kZm9udC1zaXplLWg1OiAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRmb250LXNpemUtaDY6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMC44NSkpICFkZWZhdWx0OyAvLyB+MTJweFxuXG4vLyoqIFVuaXQtbGVzcyBgbGluZS1oZWlnaHRgIGZvciB1c2UgaW4gY29tcG9uZW50cyBsaWtlIGJ1dHRvbnMuXG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgIDEuNDI4NTcxNDI5ICFkZWZhdWx0OyAvLyAyMC8xNFxuLy8qKiBDb21wdXRlZCBcImxpbmUtaGVpZ2h0XCIgKGBmb250LXNpemVgICogYGxpbmUtaGVpZ2h0YCkgZm9yIHVzZSB3aXRoIGBtYXJnaW5gLCBgcGFkZGluZ2AsIGV0Yy5cbiRsaW5lLWhlaWdodC1jb21wdXRlZDogICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlKSkgIWRlZmF1bHQ7IC8vIH4yMHB4XG5cbi8vKiogQnkgZGVmYXVsdCwgdGhpcyBpbmhlcml0cyBmcm9tIHRoZSBgPGJvZHk+YC5cbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAxLjEgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG5cblxuLy89PSBJY29ub2dyYXBoeVxuLy9cbi8vIyMgU3BlY2lmeSBjdXN0b20gbG9jYXRpb24gYW5kIGZpbGVuYW1lIG9mIHRoZSBpbmNsdWRlZCBHbHlwaGljb25zIGljb24gZm9udC4gVXNlZnVsIGZvciB0aG9zZSBpbmNsdWRpbmcgQm9vdHN0cmFwIHZpYSBCb3dlci5cblxuLy8qKiBMb2FkIGZvbnRzIGZyb20gdGhpcyBkaXJlY3RvcnkuXG5cbi8vIFtjb252ZXJ0ZXJdIElmICRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIgaWYgdXNlZCwgcHJvdmlkZSBwYXRoIHJlbGF0aXZlIHRvIHRoZSBhc3NldHMgbG9hZCBwYXRoLlxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBiZWNhdXNlIHNvbWUgYXNzZXQgaGVscGVycywgc3VjaCBhcyBTcHJvY2tldHMsIGRvIG5vdCB3b3JrIHdpdGggZmlsZS1yZWxhdGl2ZSBwYXRocy5cbiRpY29uLWZvbnQtcGF0aDogaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgXCJib290c3RyYXAvXCIsIFwiLi4vZm9udHMvYm9vdHN0cmFwL1wiKSAhZGVmYXVsdDtcblxuLy8qKiBGaWxlIG5hbWUgZm9yIGFsbCBmb250IGZpbGVzLlxuJGljb24tZm9udC1uYW1lOiAgICAgICAgICBcImdseXBoaWNvbnMtaGFsZmxpbmdzLXJlZ3VsYXJcIiAhZGVmYXVsdDtcbi8vKiogRWxlbWVudCBJRCB3aXRoaW4gU1ZHIGljb24gZmlsZS5cbiRpY29uLWZvbnQtc3ZnLWlkOiAgICAgICAgXCJnbHlwaGljb25zX2hhbGZsaW5nc3JlZ3VsYXJcIiAhZGVmYXVsdDtcblxuXG4vLz09IENvbXBvbmVudHNcbi8vXG4vLyMjIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS4gVmFsdWVzIGJhc2VkIG9uIDE0cHggdGV4dCBhbmQgMS40MjggbGluZS1oZWlnaHQgKH4yMHB4IHRvIHN0YXJ0KS5cblxuJHBhZGRpbmctYmFzZS12ZXJ0aWNhbDogICAgIDZweCAhZGVmYXVsdDtcbiRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDogICAxMnB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy1sYXJnZS12ZXJ0aWNhbDogICAgMTBweCAhZGVmYXVsdDtcbiRwYWRkaW5nLWxhcmdlLWhvcml6b250YWw6ICAxNnB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy1zbWFsbC12ZXJ0aWNhbDogICAgNXB4ICFkZWZhdWx0O1xuJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDogIDEwcHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLXhzLXZlcnRpY2FsOiAgICAgICAxcHggIWRlZmF1bHQ7XG4kcGFkZGluZy14cy1ob3Jpem9udGFsOiAgICAgNXB4ICFkZWZhdWx0O1xuXG4kbGluZS1oZWlnaHQtbGFyZ2U6ICAgICAgICAgMS4zMzMzMzMzICFkZWZhdWx0OyAvLyBleHRyYSBkZWNpbWFscyBmb3IgV2luIDguMSBDaHJvbWVcbiRsaW5lLWhlaWdodC1zbWFsbDogICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICA0cHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgNnB4ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgIDNweCAhZGVmYXVsdDtcblxuLy8qKiBHbG9iYWwgY29sb3IgZm9yIGFjdGl2ZSBpdGVtcyAoZS5nLiwgbmF2cyBvciBkcm9wZG93bnMpLlxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIEdsb2JhbCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuLy8qKiBXaWR0aCBvZiB0aGUgYGJvcmRlcmAgZm9yIGdlbmVyYXRpbmcgY2FyZXRzIHRoYXQgaW5kaWNhdGUgZHJvcGRvd25zLlxuJGNhcmV0LXdpZHRoLWJhc2U6ICAgICAgICAgIDRweCAhZGVmYXVsdDtcbi8vKiogQ2FyZXRzIGluY3JlYXNlIHNsaWdodGx5IGluIHNpemUgZm9yIGxhcmdlciBjb21wb25lbnRzLlxuJGNhcmV0LXdpZHRoLWxhcmdlOiAgICAgICAgIDVweCAhZGVmYXVsdDtcblxuXG4vLz09IFRhYmxlc1xuLy9cbi8vIyMgQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4vLyoqIFBhZGRpbmcgZm9yIGA8dGg+YHMgYW5kIGA8dGQ+YHMuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAgIDhweCAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBmb3IgY2VsbHMgaW4gYC50YWJsZS1jb25kZW5zZWRgLlxuJHRhYmxlLWNvbmRlbnNlZC1jZWxsLXBhZGRpbmc6ICA1cHggIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGFsbCB0YWJsZXMuXG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGAudGFibGUtc3RyaXBlZGAuXG4kdGFibGUtYmctYWNjZW50OiAgICAgICAgICAgICAgICNmOWY5ZjkgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1ob3ZlcmAuXG4kdGFibGUtYmctaG92ZXI6ICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kdGFibGUtYmctYWN0aXZlOiAgICAgICAgICAgICAgICR0YWJsZS1iZy1ob3ZlciAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRhYmxlIGFuZCBjZWxsIGJvcmRlcnMuXG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PSBCdXR0b25zXG4vL1xuLy8jIyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBub3JtYWwgIWRlZmF1bHQ7XG5cbiRidG4tZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcblxuJGJ0bi1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tcHJpbWFyeS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4tcHJpbWFyeS1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1zdWNjZXNzLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4taW5mby1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcbiRidG4taW5mby1ib3JkZXI6ICAgICAgICAgICAgICAgIGRhcmtlbigkYnRuLWluZm8tYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi13YXJuaW5nLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4td2FybmluZy1iZzogICAgICAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4td2FybmluZy1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbiRidG4tZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbigkYnRuLWRhbmdlci1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG5cblxuLy89PSBGb3Jtc1xuLy9cbi8vIyNcblxuLy8qKiBgPGlucHV0PmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYDxpbnB1dCBkaXNhYmxlZD5gIGJhY2tncm91bmQgY29sb3JcbiRpbnB1dC1iZy1kaXNhYmxlZDogICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBmb3IgYDxpbnB1dD5gc1xuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4vLyoqIGA8aW5wdXQ+YCBib3JkZXIgY29sb3JcbiRpbnB1dC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IFJlbmFtZSBgJGlucHV0LWJvcmRlci1yYWRpdXNgIHRvIGAkaW5wdXQtYm9yZGVyLXJhZGl1cy1iYXNlYCBpbiB2NFxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4vLyBUaGlzIGhhcyBubyBlZmZlY3Qgb24gYDxzZWxlY3Q+YHMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4vLyoqIExhcmdlIGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAkYm9yZGVyLXJhZGl1cy1sYXJnZSAhZGVmYXVsdDtcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICRib3JkZXItcmFkaXVzLXNtYWxsICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgaW5wdXRzIG9uIGZvY3VzXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAgICAgICAgICAgICAjNjZhZmU5ICFkZWZhdWx0O1xuXG4vLyoqIFBsYWNlaG9sZGVyIHRleHQgY29sb3JcbiRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcjogICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgICAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKiAyKSArIDIpICFkZWZhdWx0O1xuLy8qKiBMYXJnZSBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LWxhcmdlOiAgICAgICAgICAgICAoY2VpbCgkZm9udC1zaXplLWxhcmdlICogJGxpbmUtaGVpZ2h0LWxhcmdlKSArICgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG4vLyoqIFNtYWxsIGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtc21hbGw6ICAgICAgICAgICAgIChmbG9vcigkZm9udC1zaXplLXNtYWxsICogJGxpbmUtaGVpZ2h0LXNtYWxsKSArICgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG5cbi8vKiogYC5mb3JtLWdyb3VwYCBtYXJnaW5cbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRsZWdlbmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kbGVnZW5kLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZTVlNWU1ICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyICFkZWZhdWx0O1xuXG4vLyoqIERpc2FibGVkIGN1cnNvciBmb3IgZm9ybSBjb250cm9scyBhbmQgYnV0dG9ucy5cbiRjdXJzb3ItZGlzYWJsZWQ6ICAgICAgICAgICAgICAgIG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG5cbi8vPT0gRHJvcGRvd25zXG4vL1xuLy8jIyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbi8vKiogQmFja2dyb3VuZCBmb3IgdGhlIGRyb3Bkb3duIG1lbnUuXG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgLlxuJGRyb3Bkb3duLWJvcmRlcjogICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMTUpICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgICoqZm9yIElFOCoqLlxuJGRyb3Bkb3duLWZhbGxiYWNrLWJvcmRlcjogICAgICAgI2NjYyAhZGVmYXVsdDtcbi8vKiogRGl2aWRlciBjb2xvciBmb3IgYmV0d2VlbiBkcm9wZG93biBpdGVtcy5cbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XG5cbi8vKiogRHJvcGRvd24gbGluayB0ZXh0IGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbi8vKiogSG92ZXIgY29sb3IgZm9yIGRyb3Bkb3duIGxpbmtzLlxuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRncmF5LWRhcmssIDUlKSAhZGVmYXVsdDtcbi8vKiogSG92ZXIgYmFja2dyb3VuZCBmb3IgZHJvcGRvd24gbGlua3MuXG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gdGV4dCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBBY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtIGJhY2tncm91bmQgY29sb3IuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuLy8qKiBEaXNhYmxlZCBkcm9wZG93biBtZW51IGl0ZW0gYmFja2dyb3VuZCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3IgZm9yIGhlYWRlcnMgd2l0aGluIGRyb3Bkb3duIG1lbnVzLlxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogRGVwcmVjYXRlZCBgJGRyb3Bkb3duLWNhcmV0LWNvbG9yYCBhcyBvZiB2My4xLjBcbiRkcm9wZG93bi1jYXJldC1jb2xvcjogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG5cblxuLy8tLSBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG4vL1xuLy8gTm90ZTogVGhlc2UgdmFyaWFibGVzIGFyZSBub3QgZ2VuZXJhdGVkIGludG8gdGhlIEN1c3RvbWl6ZXIuXG5cbiR6aW5kZXgtbmF2YmFyOiAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG4kemluZGV4LW5hdmJhci1maXhlZDogICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kOiAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG5cblxuLy89PSBNZWRpYSBxdWVyaWVzIGJyZWFrcG9pbnRzXG4vL1xuLy8jIyBEZWZpbmUgdGhlIGJyZWFrcG9pbnRzIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLCBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBFeHRyYSBzbWFsbCBzY3JlZW4gLyBwaG9uZVxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXhzYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4teHM6ICAgICAgICAgICAgICAgICAgNDgwcHggIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHMtbWluYCBhcyBvZiB2My4yLjBcbiRzY3JlZW4teHMtbWluOiAgICAgICAgICAgICAgJHNjcmVlbi14cyAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1waG9uZWAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXBob25lOiAgICAgICAgICAgICAgICRzY3JlZW4teHMtbWluICFkZWZhdWx0O1xuXG4vLyBTbWFsbCBzY3JlZW4gLyB0YWJsZXRcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1zbWAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXNtOiAgICAgICAgICAgICAgICAgIDc2OHB4ICFkZWZhdWx0O1xuJHNjcmVlbi1zbS1taW46ICAgICAgICAgICAgICAkc2NyZWVuLXNtICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXRhYmxldGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXRhYmxldDogICAgICAgICAgICAgICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLW1kYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbWQ6ICAgICAgICAgICAgICAgICAgOTkycHggIWRlZmF1bHQ7XG4kc2NyZWVuLW1kLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tbWQgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tZGVza3RvcGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWRlc2t0b3A6ICAgICAgICAgICAgICRzY3JlZW4tbWQtbWluICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3Bcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZ2AgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWxnOiAgICAgICAgICAgICAgICAgIDEyMDBweCAhZGVmYXVsdDtcbiRzY3JlZW4tbGctbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1sZyAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZy1kZXNrdG9wYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbGctZGVza3RvcDogICAgICAgICAgJHNjcmVlbi1sZy1taW4gIWRlZmF1bHQ7XG5cbi8vIFNvIG1lZGlhIHF1ZXJpZXMgZG9uJ3Qgb3ZlcmxhcCB3aGVuIHJlcXVpcmVkLCBwcm92aWRlIGEgbWF4aW11bVxuJHNjcmVlbi14cy1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1zbS1taW4gLSAxKSAhZGVmYXVsdDtcbiRzY3JlZW4tc20tbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tbWQtbWluIC0gMSkgIWRlZmF1bHQ7XG4kc2NyZWVuLW1kLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLWxnLW1pbiAtIDEpICFkZWZhdWx0O1xuXG5cbi8vPT0gR3JpZCBzeXN0ZW1cbi8vXG4vLyMjIERlZmluZSB5b3VyIGN1c3RvbSByZXNwb25zaXZlIGdyaWQuXG5cbi8vKiogTnVtYmVyIG9mIGNvbHVtbnMgaW4gdGhlIGdyaWQuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4vLyoqIFBhZGRpbmcgYmV0d2VlbiBjb2x1bW5zLiBHZXRzIGRpdmlkZWQgaW4gaGFsZiBmb3IgdGhlIGxlZnQgYW5kIHJpZ2h0LlxuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4vLyBOYXZiYXIgY29sbGFwc2Vcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWNvbWVzIHVuY29sbGFwc2VkLlxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludDogICAgICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlZ2lucyBjb2xsYXBzaW5nLlxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXg6ICgkZ3JpZC1mbG9hdC1icmVha3BvaW50IC0gMSkgIWRlZmF1bHQ7XG5cblxuLy89PSBDb250YWluZXIgc2l6ZXNcbi8vXG4vLyMjIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxuJGNvbnRhaW5lci10YWJsZXQ6ICAgICAgICAgICAgICg3MjBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1zbS1taW5gIGFuZCB1cC5cbiRjb250YWluZXItc206ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLXRhYmxldCAhZGVmYXVsdDtcblxuLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3BcbiRjb250YWluZXItZGVza3RvcDogICAgICAgICAgICAoOTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tbWQtbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLW1kOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1kZXNrdG9wICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3BcbiRjb250YWluZXItbGFyZ2UtZGVza3RvcDogICAgICAoMTE0MHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLWxnLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1sZzogICAgICAgICAgICAgICAgICRjb250YWluZXItbGFyZ2UtZGVza3RvcCAhZGVmYXVsdDtcblxuXG4vLz09IE5hdmJhclxuLy9cbi8vIyNcblxuLy8gQmFzaWNzIG9mIGEgbmF2YmFyXG4kbmF2YmFyLWhlaWdodDogICAgICAgICAgICAgICAgICAgIDUwcHggIWRlZmF1bHQ7XG4kbmF2YmFyLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICRsaW5lLWhlaWdodC1jb21wdXRlZCAhZGVmYXVsdDtcbiRuYXZiYXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgKCgkbmF2YmFyLWhlaWdodCAtICRsaW5lLWhlaWdodC1jb21wdXRlZCkgLyAyKSAhZGVmYXVsdDtcbiRuYXZiYXItY29sbGFwc2UtbWF4LWhlaWdodDogICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgIzc3NyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgI2Y4ZjhmOCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1iZywgNi41JSkgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBsaW5rc1xuJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYmcsIDYuNSUpICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZzogICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3IsIDEwJSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciB0b2dnbGVcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICM4ODggIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09PSBJbnZlcnRlZCBuYXZiYXJcbi8vIFJlc2V0IGludmVydGVkIG5hdmJhciBiYXNpY3NcbiRuYXZiYXItaW52ZXJzZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1saWdodCwgMTUlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1iZzogICAgICAgICAgICAgICAgICAgICAgICAgIzIyMiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGxpbmtzXG4kbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktbGlnaHQsIDE1JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciB0b2dnbGVcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaWNvbi1iYXItYmc6ICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IE5hdnNcbi8vXG4vLyMjXG5cbi8vPT09IFNoYXJlZCBuYXYgc3R5bGVzXG4kbmF2LWxpbmstcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcbiRuYXYtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRuYXYtZGlzYWJsZWQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vPT0gVGFic1xuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjogICAgICRib2R5LWJnICFkZWZhdWx0O1xuXG4vLz09IFBpbGxzXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLz09IFBhZ2luYXRpb25cbi8vXG4vLyMjXG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjogICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXI6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXI6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFnZXJcbi8vXG4vLyMjXG5cbiRwYWdlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWJnICFkZWZhdWx0O1xuJHBhZ2VyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYm9yZGVyICFkZWZhdWx0O1xuJHBhZ2VyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuJHBhZ2VyLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24taG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwYWdlci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdlci1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuJHBhZ2VyLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy89PSBKdW1ib3Ryb25cbi8vXG4vLyMjXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRqdW1ib3Ryb24taGVhZGluZy1jb2xvcjogICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWZvbnQtc2l6ZTogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjUpKSAhZGVmYXVsdDtcbiRqdW1ib3Ryb24taGVhZGluZy1mb250LXNpemU6ICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDQuNSkpICFkZWZhdWx0O1xuXG5cbi8vPT0gRm9ybSBzdGF0ZXMgYW5kIGFsZXJ0c1xuLy9cbi8vIyMgRGVmaW5lIGNvbG9ycyBmb3IgZm9ybSBmZWVkYmFjayBzdGF0ZXMgYW5kLCBieSBkZWZhdWx0LCBhbGVydHMuXG5cbiRzdGF0ZS1zdWNjZXNzLXRleHQ6ICAgICAgICAgICAgICMzYzc2M2QgIWRlZmF1bHQ7XG4kc3RhdGUtc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAjZGZmMGQ4ICFkZWZhdWx0O1xuJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXN1Y2Nlc3MtYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuJHN0YXRlLWluZm8tdGV4dDogICAgICAgICAgICAgICAgIzMxNzA4ZiAhZGVmYXVsdDtcbiRzdGF0ZS1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICNkOWVkZjcgIWRlZmF1bHQ7XG4kc3RhdGUtaW5mby1ib3JkZXI6ICAgICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtaW5mby1iZywgLTEwKSwgNyUpICFkZWZhdWx0O1xuXG4kc3RhdGUtd2FybmluZy10ZXh0OiAgICAgICAgICAgICAjOGE2ZDNiICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcbiRzdGF0ZS13YXJuaW5nLWJvcmRlcjogICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS13YXJuaW5nLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS1kYW5nZXItdGV4dDogICAgICAgICAgICAgICNhOTQ0NDIgIWRlZmF1bHQ7XG4kc3RhdGUtZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAjZjJkZWRlICFkZWZhdWx0O1xuJHN0YXRlLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLWRhbmdlci1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG5cbi8vPT0gVG9vbHRpcHNcbi8vXG4vLyMjXG5cbi8vKiogVG9vbHRpcCBtYXggd2lkdGhcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIHRleHQgY29sb3JcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgYmFja2dyb3VuZCBjb2xvclxuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuXG4vLyoqIFRvb2x0aXAgYXJyb3cgd2lkdGhcbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgIDVweCAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCBhcnJvdyBjb2xvclxuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBQb3BvdmVyc1xuLy9cbi8vIyNcblxuLy8qKiBQb3BvdmVyIGJvZHkgYmFja2dyb3VuZCBjb2xvclxuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG1heGltdW0gd2lkdGhcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgYm9yZGVyIGNvbG9yXG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjIpICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGZhbGxiYWNrIGJvcmRlciBjb2xvclxuJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAjY2NjICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgdGl0bGUgYmFja2dyb3VuZCBjb2xvclxuJHBvcG92ZXItdGl0bGUtYmc6ICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJHBvcG92ZXItYmcsIDMlKSAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIGFycm93IHdpZHRoXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgYXJyb3cgY29sb3JcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyB3aWR0aFxuJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg6ICAgICAgICAgICAoJHBvcG92ZXItYXJyb3ctd2lkdGggKyAxKSAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyBjb2xvclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgICBmYWRlX2luKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgMC4wNSkgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgZmFsbGJhY2sgY29sb3JcbiRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOiAgZGFya2VuKCRwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvciwgMjAlKSAhZGVmYXVsdDtcblxuXG4vLz09IExhYmVsc1xuLy9cbi8vIyNcblxuLy8qKiBEZWZhdWx0IGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1kZWZhdWx0LWJnOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBQcmltYXJ5IGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1wcmltYXJ5LWJnOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBTdWNjZXNzIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuLy8qKiBJbmZvIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1pbmZvLWJnOiAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuLy8qKiBXYXJuaW5nIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC13YXJuaW5nLWJnOiAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuLy8qKiBEYW5nZXIgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWRhbmdlci1iZzogICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGxhYmVsIHRleHQgY29sb3JcbiRsYWJlbC1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIERlZmF1bHQgdGV4dCBjb2xvciBvZiBhIGxpbmtlZCBsYWJlbFxuJGxhYmVsLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IE1vZGFsc1xuLy9cbi8vIyNcblxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbi8vKiogUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCB0aXRsZVxuJG1vZGFsLXRpdGxlLXBhZGRpbmc6ICAgICAgICAgMTVweCAhZGVmYXVsdDtcbi8vKiogTW9kYWwgdGl0bGUgbGluZS1oZWlnaHRcbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgbW9kYWwgY29udGVudCBhcmVhXG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yXG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjIpICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBjb250ZW50IGJvcmRlciBjb2xvciAqKmZvciBJRTgqKlxuJG1vZGFsLWNvbnRlbnQtZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAgICAjOTk5ICFkZWZhdWx0O1xuXG4vLyoqIE1vZGFsIGJhY2tkcm9wIGJhY2tncm91bmQgY29sb3JcbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGJhY2tkcm9wIG9wYWNpdHlcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgIC41ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBoZWFkZXIgYm9yZGVyIGNvbG9yXG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAjZTVlNWU1ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBmb290ZXIgYm9yZGVyIGNvbG9yXG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgOTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICA2MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gQWxlcnRzXG4vL1xuLy8jIyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmc6ICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICBib2xkICFkZWZhdWx0O1xuXG4kYWxlcnQtc3VjY2Vzcy1iZzogICAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1pbmZvLWJnOiAgICAgICAgICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LXdhcm5pbmctYmc6ICAgICAgICAgICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XG5cblxuLy89PSBQcm9ncmVzcyBiYXJzXG4vL1xuLy8jI1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIHdob2xlIHByb2dyZXNzIGNvbXBvbmVudFxuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogUHJvZ3Jlc3MgYmFyIHRleHQgY29sb3JcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFZhcmlhYmxlIGZvciBzZXR0aW5nIHJvdW5kZWQgY29ybmVycyBvbiBwcm9ncmVzcyBiYXIuXG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogU3VjY2VzcyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItc3VjY2Vzcy1iZzogICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuLy8qKiBXYXJuaW5nIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci13YXJuaW5nLWJnOiAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4vLyoqIERhbmdlciBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItZGFuZ2VyLWJnOiAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG4vLyoqIEluZm8gcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWluZm8tYmc6ICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcblxuXG4vLz09IExpc3QgZ3JvdXBcbi8vXG4vLyMjXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvbiBgLmxpc3QtZ3JvdXAtaXRlbWBcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYC5saXN0LWdyb3VwLWl0ZW1gIGJvcmRlciBjb2xvclxuJGxpc3QtZ3JvdXAtYm9yZGVyOiAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBMaXN0IGdyb3VwIGJvcmRlciByYWRpdXNcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHNpbmdsZSBsaXN0IGl0ZW1zIG9uIGhvdmVyXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyoqIEJvcmRlciBjb2xvciBvZiBhY3RpdmUgbGlzdCBlbGVtZW50c1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjogICAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3IgZm9yIGNvbnRlbnQgd2l0aGluIGFjdGl2ZSBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjogIGxpZ2h0ZW4oJGxpc3QtZ3JvdXAtYWN0aXZlLWJnLCA0MCUpICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtdGV4dC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWxpbmstY29sb3I6ICAgICAgICAgIzU1NSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaG92ZXItY29sb3I6ICAgJGxpc3QtZ3JvdXAtbGluay1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaGVhZGluZy1jb2xvcjogIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IFBhbmVsc1xuLy9cbi8vIyNcblxuJHBhbmVsLWJnOiAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYW5lbC1ib2R5LXBhZGRpbmc6ICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtaGVhZGluZy1wYWRkaW5nOiAgICAgICAxMHB4IDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLXBhZGRpbmc6ICAgICAgICAkcGFuZWwtaGVhZGluZy1wYWRkaW5nICFkZWZhdWx0O1xuJHBhbmVsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIGVsZW1lbnRzIHdpdGhpbiBwYW5lbHNcbiRwYW5lbC1pbm5lci1ib3JkZXI6ICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLWJnOiAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4kcGFuZWwtZGVmYXVsdC10ZXh0OiAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHBhbmVsLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmc6ICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbiRwYW5lbC1wcmltYXJ5LXRleHQ6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFuZWwtcHJpbWFyeS1ib3JkZXI6ICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYW5lbC1wcmltYXJ5LWhlYWRpbmctYmc6ICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFuZWwtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtaGVhZGluZy1iZzogICAgJHN0YXRlLXN1Y2Nlc3MtYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC1pbmZvLXRleHQ6ICAgICAgICAgICAgICRzdGF0ZS1pbmZvLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1ib3JkZXI6ICAgICAgICAgICAkc3RhdGUtaW5mby1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1oZWFkaW5nLWJnOiAgICAgICAkc3RhdGUtaW5mby1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLXdhcm5pbmctdGV4dDogICAgICAgICAgJHN0YXRlLXdhcm5pbmctdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWhlYWRpbmctYmc6ICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1kYW5nZXItaGVhZGluZy1iZzogICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBUaHVtYm5haWxzXG4vL1xuLy8jI1xuXG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgaW1hZ2VcbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgIDRweCAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJhY2tncm91bmQgY29sb3JcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIGNvbG9yXG4kdGh1bWJuYWlsLWJvcmRlcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIHJhZGl1c1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBDdXN0b20gdGV4dCBjb2xvciBmb3IgdGh1bWJuYWlsIGNhcHRpb25zXG4kdGh1bWJuYWlsLWNhcHRpb24tY29sb3I6ICAgICAkdGV4dC1jb2xvciAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBhcm91bmQgdGhlIHRodW1ibmFpbCBjYXB0aW9uXG4kdGh1bWJuYWlsLWNhcHRpb24tcGFkZGluZzogICA5cHggIWRlZmF1bHQ7XG5cblxuLy89PSBXZWxsc1xuLy9cbi8vIyNcblxuJHdlbGwtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR3ZWxsLWJvcmRlcjogICAgICAgICAgICAgICAgIGRhcmtlbigkd2VsbC1iZywgNyUpICFkZWZhdWx0O1xuXG5cbi8vPT0gQmFkZ2VzXG4vL1xuLy8jI1xuXG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBMaW5rZWQgYmFkZ2UgdGV4dCBjb2xvciBvbiBob3ZlclxuJGJhZGdlLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRiYWRnZS1iZzogICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIEJhZGdlIHRleHQgY29sb3IgaW4gYWN0aXZlIG5hdiBsaW5rXG4kYmFkZ2UtYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbi8vKiogQmFkZ2UgYmFja2dyb3VuZCBjb2xvciBpbiBhY3RpdmUgbmF2IGxpbmtcbiRiYWRnZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAxICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgMTBweCAhZGVmYXVsdDtcblxuXG4vLz09IEJyZWFkY3J1bWJzXG4vL1xuLy8jI1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXZlcnRpY2FsOiAgIDhweCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmctaG9yaXpvbnRhbDogMTVweCAhZGVmYXVsdDtcbi8vKiogQnJlYWRjcnVtYiBiYWNrZ3JvdW5kIGNvbG9yXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIEJyZWFkY3J1bWIgdGV4dCBjb2xvclxuJGJyZWFkY3J1bWItY29sb3I6ICAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIG9mIGN1cnJlbnQgcGFnZSBpbiB0aGUgYnJlYWRjcnVtYlxuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogVGV4dHVhbCBzZXBhcmF0b3IgZm9yIGJldHdlZW4gYnJlYWRjcnVtYiBlbGVtZW50c1xuJGJyZWFkY3J1bWItc2VwYXJhdG9yOiAgICAgICAgICBcIi9cIiAhZGVmYXVsdDtcblxuXG4vLz09IENhcm91c2VsXG4vL1xuLy8jI1xuXG4kY2Fyb3VzZWwtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjYpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBDbG9zZVxuLy9cbi8vIyNcblxuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAwIDFweCAwICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBDb2RlXG4vL1xuLy8jI1xuXG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAjYzcyNTRlICFkZWZhdWx0O1xuJGNvZGUtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y5ZjJmNCAhZGVmYXVsdDtcblxuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG5cbiRwcmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHByZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgIDM0MHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gVHlwZVxuLy9cbi8vIyNcblxuLy8qKiBIb3Jpem9udGFsIG9mZnNldCBmb3IgZm9ybXMgYW5kIGxpc3RzLlxuJGNvbXBvbmVudC1vZmZzZXQtaG9yaXpvbnRhbDogMTgwcHggIWRlZmF1bHQ7XG4vLyoqIFRleHQgbXV0ZWQgY29sb3JcbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBBYmJyZXZpYXRpb25zIGFuZCBhY3JvbnltcyBib3JkZXIgY29sb3JcbiRhYmJyLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBIZWFkaW5ncyBzbWFsbCBjb2xvclxuJGhlYWRpbmdzLXNtYWxsLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgc21hbGwgY29sb3JcbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIGZvbnQgc2l6ZVxuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgKCRmb250LXNpemUtYmFzZSAqIDEuMjUpICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIGJvcmRlciBjb2xvclxuJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogUGFnZSBoZWFkZXIgYm9yZGVyIGNvbG9yXG4kcGFnZS1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBXaWR0aCBvZiBob3Jpem9udGFsIGRlc2NyaXB0aW9uIGxpc3QgdGl0bGVzXG4kZGwtaG9yaXpvbnRhbC1vZmZzZXQ6ICAgICAgICAkY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsICFkZWZhdWx0O1xuLy8qKiBQb2ludCBhdCB3aGljaCAuZGwtaG9yaXpvbnRhbCBiZWNvbWVzIGhvcml6b250YWxcbiRkbC1ob3Jpem9udGFsLWJyZWFrcG9pbnQ6ICAgICRncmlkLWZsb2F0LWJyZWFrcG9pbnQgIWRlZmF1bHQ7XG4vLyoqIEhvcml6b250YWwgbGluZSBjb2xvci5cbiRoci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4iLAoJCSIvLyBNaXhpbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFV0aWxpdGllc1xuQGltcG9ydCBcIm1peGlucy9oaWRlLXRleHRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvb3BhY2l0eVwiO1xuQGltcG9ydCBcIm1peGlucy9pbWFnZVwiO1xuQGltcG9ydCBcIm1peGlucy9sYWJlbHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtZmlsdGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNwb25zaXZlLXZpc2liaWxpdHlcIjtcbkBpbXBvcnQgXCJtaXhpbnMvc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy90YWItZm9jdXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtdGV4dFwiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LWVtcGhhc2lzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtb3ZlcmZsb3dcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdmVuZG9yLXByZWZpeGVzXCI7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgXCJtaXhpbnMvYWxlcnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcGFuZWxzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3BhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGlzdC1ncm91cFwiO1xuQGltcG9ydCBcIm1peGlucy9uYXYtZGl2aWRlclwiO1xuQGltcG9ydCBcIm1peGlucy9mb3Jtc1wiO1xuQGltcG9ydCBcIm1peGlucy9wcm9ncmVzcy1iYXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGFibGUtcm93XCI7XG5cbi8vIFNraW5zXG5AaW1wb3J0IFwibWl4aW5zL2JhY2tncm91bmQtdmFyaWFudFwiO1xuQGltcG9ydCBcIm1peGlucy9ib3JkZXItcmFkaXVzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyYWRpZW50c1wiO1xuXG4vLyBMYXlvdXRcbkBpbXBvcnQgXCJtaXhpbnMvY2xlYXJmaXhcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY2VudGVyLWJsb2NrXCI7XG5AaW1wb3J0IFwibWl4aW5zL25hdi12ZXJ0aWNhbC1hbGlnblwiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkLWZyYW1ld29ya1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkXCI7XG4iLAoJCSIvLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbi8vXG4vLyBIZWFkcyB1cCEgdjMgbGF1bmNoZWQgd2l0aCBvbmx5IGAuaGlkZS10ZXh0KClgLCBidXQgcGVyIG91ciBwYXR0ZXJuIGZvclxuLy8gbWl4aW5zIGJlaW5nIHJldXNlZCBhcyBjbGFzc2VzIHdpdGggdGhlIHNhbWUgbmFtZSwgdGhpcyBkb2Vzbid0IGhvbGQgdXAuIEFzXG4vLyBvZiB2My4wLjEgd2UgaGF2ZSBhZGRlZCBgLnRleHQtaGlkZSgpYCBhbmQgZGVwcmVjYXRlZCBgLmhpZGUtdGV4dCgpYC5cbi8vXG4vLyBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2NvbW1pdC9hYTAzOTZlYWU3NTdcblxuLy8gRGVwcmVjYXRlZCBhcyBvZiB2My4wLjEgKGhhcyBiZWVuIHJlbW92ZWQgaW4gdjQpXG5AbWl4aW4gaGlkZS10ZXh0KCkge1xuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gTmV3IG1peGluIHRvIHVzZSBhcyBvZiB2My4wLjFcbkBtaXhpbiB0ZXh0LWhpZGUoKSB7XG4gIEBpbmNsdWRlIGhpZGUtdGV4dDtcbn1cbiIsCgkJIi8vIE9wYWNpdHlcblxuQG1peGluIG9wYWNpdHkoJG9wYWNpdHkpIHtcbiAgb3BhY2l0eTogJG9wYWNpdHk7XG4gIC8vIElFOCBmaWx0ZXJcbiAgJG9wYWNpdHktaWU6ICgkb3BhY2l0eSAqIDEwMCk7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0kb3BhY2l0eS1pZSk7XG59XG4iLAoJCSIvLyBJbWFnZSBNaXhpbnNcbi8vIC0gUmVzcG9uc2l2ZSBpbWFnZVxuLy8gLSBSZXRpbmEgaW1hZ2VcblxuXG4vLyBSZXNwb25zaXZlIGltYWdlXG4vL1xuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cbkBtaXhpbiBpbWctcmVzcG9uc2l2ZSgkZGlzcGxheTogYmxvY2spIHtcbiAgZGlzcGxheTogJGRpc3BsYXk7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgaGVpZ2h0OiBhdXRvOyAvLyBQYXJ0IDI6IFNjYWxlIHRoZSBoZWlnaHQgYWNjb3JkaW5nIHRvIHRoZSB3aWR0aCwgb3RoZXJ3aXNlIHlvdSBnZXQgc3RyZXRjaGluZ1xufVxuXG5cbi8vIFJldGluYSBpbWFnZVxuLy9cbi8vIFNob3J0IHJldGluYSBtaXhpbiBmb3Igc2V0dGluZyBiYWNrZ3JvdW5kLWltYWdlIGFuZCAtc2l6ZS4gTm90ZSB0aGF0IHRoZVxuLy8gc3BlbGxpbmcgb2YgYG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpb2AgaXMgaW50ZW50aW9uYWwuXG5AbWl4aW4gaW1nLXJldGluYSgkZmlsZS0xeCwgJGZpbGUtMngsICR3aWR0aC0xeCwgJGhlaWdodC0xeCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1pbWFnZS1wYXRoKFwiI3skZmlsZS0xeH1cIiksIFwiI3skZmlsZS0xeH1cIikpO1xuXG4gIEBtZWRpYVxuICBvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgbWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgb25seSBzY3JlZW4gYW5kICggICAgIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIvMSksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAgICBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246IDE5MmRwaSksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAgICAgICAgICAgIG1pbi1yZXNvbHV0aW9uOiAyZHBweCkge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWltYWdlLXBhdGgoXCIjeyRmaWxlLTJ4fVwiKSwgXCIjeyRmaWxlLTJ4fVwiKSk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGgtMXggJGhlaWdodC0xeDtcbiAgfVxufVxuIiwKCQkiLy8gTGFiZWxzXG5cbkBtaXhpbiBsYWJlbC12YXJpYW50KCRjb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgJltocmVmXSB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gICAgfVxuICB9XG59XG4iLAoJCSIvLyBSZXNldCBmaWx0ZXJzIGZvciBJRVxuLy9cbi8vIFdoZW4geW91IG5lZWQgdG8gcmVtb3ZlIGEgZ3JhZGllbnQgYmFja2dyb3VuZCwgZG8gbm90IGZvcmdldCB0byB1c2UgdGhpcyB0byByZXNldFxuLy8gdGhlIElFIGZpbHRlciBmb3IgSUU5IGFuZCBiZWxvdy5cblxuQG1peGluIHJlc2V0LWZpbHRlcigpIHtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZCA9IGZhbHNlKTtcbn1cbiIsCgkJIi8vIFJlc2l6ZSBhbnl0aGluZ1xuXG5AbWl4aW4gcmVzaXphYmxlKCRkaXJlY3Rpb24pIHtcbiAgcmVzaXplOiAkZGlyZWN0aW9uOyAvLyBPcHRpb25zOiBob3Jpem9udGFsLCB2ZXJ0aWNhbCwgYm90aFxuICBvdmVyZmxvdzogYXV0bzsgLy8gUGVyIENTUzMgVUksIGByZXNpemVgIG9ubHkgYXBwbGllcyB3aGVuIGBvdmVyZmxvd2AgaXNuJ3QgYHZpc2libGVgXG59XG4iLAoJCSIvLyBSZXNwb25zaXZlIHV0aWxpdGllc1xuXG4vL1xuLy8gTW9yZSBlYXNpbHkgaW5jbHVkZSBhbGwgdGhlIHN0YXRlcyBmb3IgcmVzcG9uc2l2ZS11dGlsaXRpZXMubGVzcy5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgkcGFyZW50KSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGFibGUjeyRwYXJlbnR9ICB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgdHIjeyRwYXJlbnR9ICAgICB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRoI3skcGFyZW50fSxcbiAgdGQjeyRwYXJlbnR9ICAgICB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxufVxuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiByZXNwb25zaXZlLWludmlzaWJpbGl0eSgkcGFyZW50KSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwKCQkiLy8gU2l6aW5nIHNob3J0Y3V0c1xuXG5AbWl4aW4gc2l6ZSgkd2lkdGgsICRoZWlnaHQpIHtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xufVxuXG5AbWl4aW4gc3F1YXJlKCRzaXplKSB7XG4gIEBpbmNsdWRlIHNpemUoJHNpemUsICRzaXplKTtcbn1cbiIsCgkJIi8vIFdlYktpdC1zdHlsZSBmb2N1c1xuXG5AbWl4aW4gdGFiLWZvY3VzKCkge1xuICAvLyBXZWJLaXQtc3BlY2lmaWMuIE90aGVyIGJyb3dzZXJzIHdpbGwga2VlcCB0aGVpciBkZWZhdWx0IG91dGxpbmUgc3R5bGUuXG4gIC8vIChJbml0aWFsbHkgdHJpZWQgdG8gYWxzbyBmb3JjZSBkZWZhdWx0IHZpYSBgb3V0bGluZTogaW5pdGlhbGAsXG4gIC8vIGJ1dCB0aGF0IHNlZW1zIHRvIGVycm9uZW91c2x5IHJlbW92ZSB0aGUgb3V0bGluZSBpbiBGaXJlZm94IGFsdG9nZXRoZXIuKVxuICBvdXRsaW5lOiA1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xufVxuIiwKCQkiQG1peGluIHJlc2V0LXRleHQoKSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC13cmFwOiBub3JtYWw7XG59XG4iLAoJCSIvLyBUeXBvZ3JhcGh5XG5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHRleHQtZW1waGFzaXMtdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuICBhI3skcGFyZW50fTpob3ZlcixcbiAgYSN7JHBhcmVudH06Zm9jdXMge1xuICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLAoJCSIvLyBUZXh0IG92ZXJmbG93XG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LW92ZXJmbG93KCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsCgkJIi8vIFZlbmRvciBQcmVmaXhlc1xuLy9cbi8vIEFsbCB2ZW5kb3IgbWl4aW5zIGFyZSBkZXByZWNhdGVkIGFzIG9mIHYzLjIuMCBkdWUgdG8gdGhlIGludHJvZHVjdGlvbiBvZlxuLy8gQXV0b3ByZWZpeGVyIGluIG91ciBHcnVudGZpbGUuIFRoZXkgaGF2ZSBiZWVuIHJlbW92ZWQgaW4gdjQuXG5cbi8vIC0gQW5pbWF0aW9uc1xuLy8gLSBCYWNrZmFjZSB2aXNpYmlsaXR5XG4vLyAtIEJveCBzaGFkb3dcbi8vIC0gQm94IHNpemluZ1xuLy8gLSBDb250ZW50IGNvbHVtbnNcbi8vIC0gSHlwaGVuc1xuLy8gLSBQbGFjZWhvbGRlciB0ZXh0XG4vLyAtIFRyYW5zZm9ybWF0aW9uc1xuLy8gLSBUcmFuc2l0aW9uc1xuLy8gLSBVc2VyIFNlbGVjdFxuXG5cbi8vIEFuaW1hdGlvbnNcbkBtaXhpbiBhbmltYXRpb24oJGFuaW1hdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbiAgICAgICAtby1hbmltYXRpb246ICRhbmltYXRpb247XG4gICAgICAgICAgYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1uYW1lKCRuYW1lKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ICRuYW1lO1xuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcbn1cbkBtaXhpbiBhbmltYXRpb24tZHVyYXRpb24oJGR1cmF0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG59XG5AbWl4aW4gYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbigkdGltaW5nLWZ1bmN0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1kZWxheSgkZGVsYXkpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6ICRkZWxheTtcbiAgICAgICAgICBhbmltYXRpb24tZGVsYXk6ICRkZWxheTtcbn1cbkBtaXhpbiBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50KCRpdGVyYXRpb24tY291bnQpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkaXRlcmF0aW9uLWNvdW50O1xuICAgICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6ICRpdGVyYXRpb24tY291bnQ7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWRpcmVjdGlvbigkZGlyZWN0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1maWxsLW1vZGUoJGZpbGwtbW9kZSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XG4gICAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogJGZpbGwtbW9kZTtcbn1cblxuLy8gQmFja2ZhY2UgdmlzaWJpbGl0eVxuLy8gUHJldmVudCBicm93c2VycyBmcm9tIGZsaWNrZXJpbmcgd2hlbiB1c2luZyBDU1MgM0QgdHJhbnNmb3Jtcy5cbi8vIERlZmF1bHQgdmFsdWUgaXMgYHZpc2libGVgLCBidXQgY2FuIGJlIGNoYW5nZWQgdG8gYGhpZGRlbmBcblxuQG1peGluIGJhY2tmYWNlLXZpc2liaWxpdHkoJHZpc2liaWxpdHkpIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbiAgICAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbn1cblxuLy8gRHJvcCBzaGFkb3dzXG4vL1xuLy8gTm90ZTogRGVwcmVjYXRlZCBgLmJveC1zaGFkb3coKWAgYXMgb2YgdjMuMS4wIHNpbmNlIGFsbCBvZiBCb290c3RyYXAnc1xuLy8gc3VwcG9ydGVkIGJyb3dzZXJzIHRoYXQgaGF2ZSBib3ggc2hhZG93IGNhcGFiaWxpdGllcyBub3cgc3VwcG9ydCBpdC5cblxuQG1peGluIGJveC1zaGFkb3coJHNoYWRvdy4uLikge1xuICAtd2Via2l0LWJveC1zaGFkb3c6ICRzaGFkb3c7IC8vIGlPUyA8NC4zICYgQW5kcm9pZCA8NC4xXG4gICAgICAgICAgYm94LXNoYWRvdzogJHNoYWRvdztcbn1cblxuLy8gQm94IHNpemluZ1xuQG1peGluIGJveC1zaXppbmcoJGJveG1vZGVsKSB7XG4gIC13ZWJraXQtYm94LXNpemluZzogJGJveG1vZGVsO1xuICAgICAtbW96LWJveC1zaXppbmc6ICRib3htb2RlbDtcbiAgICAgICAgICBib3gtc2l6aW5nOiAkYm94bW9kZWw7XG59XG5cbi8vIENTUzMgQ29udGVudCBDb2x1bW5zXG5AbWl4aW4gY29udGVudC1jb2x1bW5zKCRjb2x1bW4tY291bnQsICRjb2x1bW4tZ2FwOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgLXdlYmtpdC1jb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gICAgIC1tb3otY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAgICAgICAgIGNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgLXdlYmtpdC1jb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbiAgICAgLW1vei1jb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbiAgICAgICAgICBjb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbn1cblxuLy8gT3B0aW9uYWwgaHlwaGVuYXRpb25cbkBtaXhpbiBoeXBoZW5zKCRtb2RlOiBhdXRvKSB7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLXdlYmtpdC1oeXBoZW5zOiAkbW9kZTtcbiAgICAgLW1vei1oeXBoZW5zOiAkbW9kZTtcbiAgICAgIC1tcy1oeXBoZW5zOiAkbW9kZTsgLy8gSUUxMCtcbiAgICAgICAtby1oeXBoZW5zOiAkbW9kZTtcbiAgICAgICAgICBoeXBoZW5zOiAkbW9kZTtcbn1cblxuLy8gUGxhY2Vob2xkZXIgdGV4dFxuQG1peGluIHBsYWNlaG9sZGVyKCRjb2xvcjogJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyKSB7XG4gIC8vIEZpcmVmb3hcbiAgJjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBvcGFjaXR5OiAxOyAvLyBPdmVycmlkZSBGaXJlZm94J3MgdW51c3VhbCBkZWZhdWx0IG9wYWNpdHk7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMTUyNlxuICB9XG4gICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgY29sb3I6ICRjb2xvcjsgfSAvLyBJbnRlcm5ldCBFeHBsb3JlciAxMCtcbiAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciAgeyBjb2xvcjogJGNvbG9yOyB9IC8vIFNhZmFyaSBhbmQgQ2hyb21lXG59XG5cbi8vIFRyYW5zZm9ybWF0aW9uc1xuQG1peGluIHNjYWxlKCRyYXRpby4uLikge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbn1cblxuQG1peGluIHNjYWxlWCgkcmF0aW8pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xufVxuQG1peGluIHNjYWxlWSgkcmF0aW8pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xufVxuQG1peGluIHNrZXcoJHgsICR5KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTsgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvNDg4NTsgSUU5K1xuICAgICAgIC1vLXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG59XG5AbWl4aW4gdHJhbnNsYXRlKCR4LCAkeSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG59XG5AbWl4aW4gdHJhbnNsYXRlM2QoJHgsICR5LCAkeikge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHgsICR5LCAkeik7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KTtcbn1cbkBtaXhpbiByb3RhdGUoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG59XG5AbWl4aW4gcm90YXRlWCgkZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XG59XG5AbWl4aW4gcm90YXRlWSgkZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XG59XG5AbWl4aW4gcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbiAgICAgLW1vei1wZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xuICAgICAgICAgIHBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG59XG5AbWl4aW4gcGVyc3BlY3RpdmUtb3JpZ2luKCRwZXJzcGVjdGl2ZSkge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xuICAgICAtbW96LXBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xuICAgICAgICAgIHBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xufVxuQG1peGluIHRyYW5zZm9ybS1vcmlnaW4oJG9yaWdpbikge1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbiAgICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luOyAvLyBJRTkgb25seVxuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG59XG5cblxuLy8gVHJhbnNpdGlvbnNcblxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICAgICAtby10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLXByb3BlcnR5KCR0cmFuc2l0aW9uLXByb3BlcnR5Li4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogJHRyYW5zaXRpb24tcHJvcGVydHk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogJHRyYW5zaXRpb24tcHJvcGVydHk7XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1kZWxheSgkdHJhbnNpdGlvbi1kZWxheSkge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6ICR0cmFuc2l0aW9uLWRlbGF5O1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6ICR0cmFuc2l0aW9uLWRlbGF5O1xufVxuQG1peGluIHRyYW5zaXRpb24tZHVyYXRpb24oJHRyYW5zaXRpb24tZHVyYXRpb24uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbigkdGltaW5nLWZ1bmN0aW9uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG4gICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi10cmFuc2Zvcm0oJHRyYW5zaXRpb24uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICAgICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xufVxuXG5cbi8vIFVzZXIgc2VsZWN0XG4vLyBGb3Igc2VsZWN0aW5nIHRleHQgb24gdGhlIHBhZ2VcblxuQG1peGluIHVzZXItc2VsZWN0KCRzZWxlY3QpIHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogJHNlbGVjdDtcbiAgICAgLW1vei11c2VyLXNlbGVjdDogJHNlbGVjdDtcbiAgICAgIC1tcy11c2VyLXNlbGVjdDogJHNlbGVjdDsgLy8gSUUxMCtcbiAgICAgICAgICB1c2VyLXNlbGVjdDogJHNlbGVjdDtcbn1cbiIsCgkJIi8vIEFsZXJ0c1xuXG5AbWl4aW4gYWxlcnQtdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJHRleHQtY29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuXG4gIGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgNSUpO1xuICB9XG4gIC5hbGVydC1saW5rIHtcbiAgICBjb2xvcjogZGFya2VuKCR0ZXh0LWNvbG9yLCAxMCUpO1xuICB9XG59XG4iLAoJCSIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuQG1peGluIGJ1dHRvbi12YXJpYW50KCRjb2xvciwgJGJhY2tncm91bmQsICRib3JkZXIpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMjUlKTtcbiAgfVxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMTIlKTtcbiAgfVxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gIC5vcGVuID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpO1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAxMiUpO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTclKTtcbiAgICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAyNSUpO1xuICAgIH1cbiAgfVxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gIC5vcGVuID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICB9XG5cbiAgLmJhZGdlIHtcbiAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vIEJ1dHRvbiBzaXplc1xuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG59XG4iLAoJCSIvLyBQYW5lbHNcblxuQG1peGluIHBhbmVsLXZhcmlhbnQoJGJvcmRlciwgJGhlYWRpbmctdGV4dC1jb2xvciwgJGhlYWRpbmctYmctY29sb3IsICRoZWFkaW5nLWJvcmRlcikge1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgJiA+IC5wYW5lbC1oZWFkaW5nIHtcbiAgICBjb2xvcjogJGhlYWRpbmctdGV4dC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRoZWFkaW5nLWJvcmRlcjtcblxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gICAgLmJhZGdlIHtcbiAgICAgIGNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkaW5nLXRleHQtY29sb3I7XG4gICAgfVxuICB9XG4gICYgPiAucGFuZWwtZm9vdGVyIHtcbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICB9XG59XG4iLAoJCSIvLyBQYWdpbmF0aW9uXG5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgPiBsaSB7XG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgICB9XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLAoJCSIvLyBMaXN0IEdyb3Vwc1xuXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGNvbG9yKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gICAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmLCBidXR0b24mIHRvIGEubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSwgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX1cbiAgfVxuXG4gIGEubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcbiAgICB9XG4gICAgJi5hY3RpdmUsXG4gICAgJi5hY3RpdmU6aG92ZXIsXG4gICAgJi5hY3RpdmU6Zm9jdXMge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cbn1cbiIsCgkJIi8vIEhvcml6b250YWwgZGl2aWRlcnNcbi8vXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gZHJvcGRvd25zIGFuZCBuYXYgbGlzdHNcblxuQG1peGluIG5hdi1kaXZpZGVyKCRjb2xvcjogI2U1ZTVlNSkge1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpIC0gMSkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xufVxuIiwKCQkiLy8gRm9ybSB2YWxpZGF0aW9uIHN0YXRlc1xuLy9cbi8vIFVzZWQgaW4gZm9ybXMubGVzcyB0byBnZW5lcmF0ZSB0aGUgZm9ybSB2YWxpZGF0aW9uIENTUyBmb3Igd2FybmluZ3MsIGVycm9ycyxcbi8vIGFuZCBzdWNjZXNzZXMuXG5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkdGV4dC1jb2xvcjogIzU1NSwgJGJvcmRlci1jb2xvcjogI2NjYywgJGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjUpIHtcbiAgLy8gQ29sb3IgdGhlIGxhYmVsIGFuZCBoZWxwIHRleHRcbiAgLmhlbHAtYmxvY2ssXG4gIC5jb250cm9sLWxhYmVsLFxuICAucmFkaW8sXG4gIC5jaGVja2JveCxcbiAgLnJhZGlvLWlubGluZSxcbiAgLmNoZWNrYm94LWlubGluZSxcbiAgJi5yYWRpbyBsYWJlbCxcbiAgJi5jaGVja2JveCBsYWJlbCxcbiAgJi5yYWRpby1pbmxpbmUgbGFiZWwsXG4gICYuY2hlY2tib3gtaW5saW5lIGxhYmVsICB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICB9XG4gIC8vIFNldCB0aGUgYm9yZGVyIGFuZCBib3ggc2hhZG93IG9uIHNwZWNpZmljIGlucHV0cyB0byBtYXRjaFxuICAuZm9ybS1jb250cm9sIHtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSk7IC8vIFJlZGVjbGFyZSBzbyB0cmFuc2l0aW9ucyB3b3JrXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLWNvbG9yLCAxMCUpO1xuICAgICAgJHNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSksIDAgMCA2cHggbGlnaHRlbigkYm9yZGVyLWNvbG9yLCAyMCUpO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkc2hhZG93KTtcbiAgICB9XG4gIH1cbiAgLy8gU2V0IHZhbGlkYXRpb24gc3RhdGVzIGFsc28gZm9yIGFkZG9uc1xuICAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtY29sb3I7XG4gIH1cbiAgLy8gT3B0aW9uYWwgZmVlZGJhY2sgaWNvblxuICAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gIH1cbn1cblxuXG4vLyBGb3JtIGNvbnRyb2wgZm9jdXMgc3RhdGVcbi8vXG4vLyBHZW5lcmF0ZSBhIGN1c3RvbWl6ZWQgZm9jdXMgc3RhdGUgYW5kIGZvciBhbnkgaW5wdXQgd2l0aCB0aGUgc3BlY2lmaWVkIGNvbG9yLFxuLy8gd2hpY2ggZGVmYXVsdHMgdG8gdGhlIGAkaW5wdXQtYm9yZGVyLWZvY3VzYCB2YXJpYWJsZS5cbi8vXG4vLyBXZSBoaWdobHkgZW5jb3VyYWdlIHlvdSB0byBub3QgY3VzdG9taXplIHRoZSBkZWZhdWx0IHZhbHVlLCBidXQgaW5zdGVhZCB1c2Vcbi8vIHRoaXMgdG8gdHdlYWsgY29sb3JzIG9uIGFuIGFzLW5lZWRlZCBiYXNpcy4gVGhpcyBhZXN0aGV0aWMgY2hhbmdlIGlzIGJhc2VkIG9uXG4vLyBXZWJLaXQncyBkZWZhdWx0IHN0eWxlcywgYnV0IGFwcGxpY2FibGUgdG8gYSB3aWRlciByYW5nZSBvZiBicm93c2Vycy4gSXRzXG4vLyB1c2FiaWxpdHkgYW5kIGFjY2Vzc2liaWxpdHkgc2hvdWxkIGJlIHRha2VuIGludG8gYWNjb3VudCB3aXRoIGFueSBjaGFuZ2UuXG4vL1xuLy8gRXhhbXBsZSB1c2FnZTogY2hhbmdlIHRoZSBkZWZhdWx0IGJsdWUgYm9yZGVyIGFuZCBzaGFkb3cgdG8gd2hpdGUgZm9yIGJldHRlclxuLy8gY29udHJhc3QgYWdhaW5zdCBhIGRhcmsgZ3JheSBiYWNrZ3JvdW5kLlxuQG1peGluIGZvcm0tY29udHJvbC1mb2N1cygkY29sb3I6ICRpbnB1dC1ib3JkZXItZm9jdXMpIHtcbiAgJGNvbG9yLXJnYmE6IHJnYmEocmVkKCRjb2xvciksIGdyZWVuKCRjb2xvciksIGJsdWUoJGNvbG9yKSwgLjYpO1xuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSksIDAgMCA4cHggJGNvbG9yLXJnYmEpO1xuICB9XG59XG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBSZWxhdGl2ZSB0ZXh0IHNpemUsIHBhZGRpbmcsIGFuZCBib3JkZXItcmFkaWkgY2hhbmdlcyBmb3IgZm9ybSBjb250cm9scy4gRm9yXG4vLyBob3Jpem9udGFsIHNpemluZywgd3JhcCBjb250cm9scyBpbiB0aGUgcHJlZGVmaW5lZCBncmlkIGNsYXNzZXMuIGA8c2VsZWN0PmBcbi8vIGVsZW1lbnQgZ2V0cyBzcGVjaWFsIGxvdmUgYmVjYXVzZSBpdCdzIHNwZWNpYWwsIGFuZCB0aGF0J3MgYSBmYWN0IVxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gaW5wdXQtc2l6ZSgkcGFyZW50LCAkaW5wdXQtaGVpZ2h0LCAkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICAjeyRwYXJlbnR9IHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gICAgcGFkZGluZzogJHBhZGRpbmctdmVydGljYWwgJHBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gIHNlbGVjdCN7JHBhcmVudH0ge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgfVxuXG4gIHRleHRhcmVhI3skcGFyZW50fSxcbiAgc2VsZWN0W211bHRpcGxlXSN7JHBhcmVudH0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuIiwKCQkiLy8gUHJvZ3Jlc3MgYmFyc1xuXG5AbWl4aW4gcHJvZ3Jlc3MtYmFyLXZhcmlhbnQoJGNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblxuICAvLyBEZXByZWNhdGVkIHBhcmVudCBjbGFzcyByZXF1aXJlbWVudCBhcyBvZiB2My4yLjBcbiAgLnByb2dyZXNzLXN0cmlwZWQgJiB7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZDtcbiAgfVxufVxuIiwKCQkiLy8gVGFibGVzXG5cbkBtaXhpbiB0YWJsZS1yb3ctdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kKSB7XG4gIC8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4gIC8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG4gIC50YWJsZSA+IHRoZWFkID4gdHIsXG4gIC50YWJsZSA+IHRib2R5ID4gdHIsXG4gIC50YWJsZSA+IHRmb290ID4gdHIge1xuICAgID4gdGQuI3skc3RhdGV9LFxuICAgID4gdGguI3skc3RhdGV9LFxuICAgICYuI3skc3RhdGV9ID4gdGQsXG4gICAgJi4jeyRzdGF0ZX0gPiB0aCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZXMgZm9yIGAudGFibGUtaG92ZXJgXG4gIC8vIE5vdGU6IHRoaXMgaXMgbm90IGF2YWlsYWJsZSBmb3IgY2VsbHMgb3Igcm93cyB3aXRoaW4gYHRoZWFkYCBvciBgdGZvb3RgLlxuICAudGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyIHtcbiAgICA+IHRkLiN7JHN0YXRlfTpob3ZlcixcbiAgICA+IHRoLiN7JHN0YXRlfTpob3ZlcixcbiAgICAmLiN7JHN0YXRlfTpob3ZlciA+IHRkLFxuICAgICY6aG92ZXIgPiAuI3skc3RhdGV9LFxuICAgICYuI3skc3RhdGV9OmhvdmVyID4gdGgge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgfVxuICB9XG59XG4iLAoJCSIvLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxuICBhI3skcGFyZW50fTpob3ZlcixcbiAgYSN7JHBhcmVudH06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsCgkJIi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cbiIsCgkJIi8vIEdyYWRpZW50c1xuXG5cblxuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbi8vIENvbG9yIHN0b3BzIGFyZSBub3QgYXZhaWxhYmxlIGluIElFOSBhbmQgYmVsb3cuXG5AbWl4aW4gZ3JhZGllbnQtaG9yaXpvbnRhbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTYWZhcmkgNS4xLTYsIENocm9tZSAxMCtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBPcGVyYSAxMlxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MSk7IC8vIElFOSBhbmQgZG93blxufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbi8vIENvbG9yIHN0b3BzIGFyZSBub3QgYXZhaWxhYmxlIGluIElFOSBhbmQgYmVsb3cuXG5AbWl4aW4gZ3JhZGllbnQtdmVydGljYWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0wKTsgLy8gSUU5IGFuZCBkb3duXG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpOyAvLyBPcGVyYSAxMlxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xufVxuQG1peGluIGdyYWRpZW50LWhvcml6b250YWwtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0xKTsgLy8gSUU5IGFuZCBkb3duLCBnZXRzIG5vIGNvbG9yLXN0b3AgYXQgYWxsIGZvciBwcm9wZXIgZmFsbGJhY2tcbn1cbkBtaXhpbiBncmFkaWVudC12ZXJ0aWNhbC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAjMDBiM2VlLCAkbWlkLWNvbG9yOiAjN2E0M2I2LCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAjYzMzMjVmKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MCk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXG59XG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogIzU1NSwgJG91dGVyLWNvbG9yOiAjMzMzKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG59XG4iLAoJCSIvLyBDbGVhcmZpeFxuLy9cbi8vIEZvciBtb2Rlcm4gYnJvd3NlcnNcbi8vIDEuIFRoZSBzcGFjZSBjb250ZW50IGlzIG9uZSB3YXkgdG8gYXZvaWQgYW4gT3BlcmEgYnVnIHdoZW4gdGhlXG4vLyAgICBjb250ZW50ZWRpdGFibGUgYXR0cmlidXRlIGlzIGluY2x1ZGVkIGFueXdoZXJlIGVsc2UgaW4gdGhlIGRvY3VtZW50LlxuLy8gICAgT3RoZXJ3aXNlIGl0IGNhdXNlcyBzcGFjZSB0byBhcHBlYXIgYXQgdGhlIHRvcCBhbmQgYm90dG9tIG9mIGVsZW1lbnRzXG4vLyAgICB0aGF0IGFyZSBjbGVhcmZpeGVkLlxuLy8gMi4gVGhlIHVzZSBvZiBgdGFibGVgIHJhdGhlciB0aGFuIGBibG9ja2AgaXMgb25seSBuZWNlc3NhcnkgaWYgdXNpbmdcbi8vICAgIGA6YmVmb3JlYCB0byBjb250YWluIHRoZSB0b3AtbWFyZ2lucyBvZiBjaGlsZCBlbGVtZW50cy5cbi8vXG4vLyBTb3VyY2U6IGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrL1xuXG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjsgLy8gMVxuICAgIGRpc3BsYXk6IHRhYmxlOyAvLyAyXG4gIH1cbiAgJjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cbiIsCgkJIi8vIENlbnRlci1hbGlnbiBhIGJsb2NrIGxldmVsIGVsZW1lbnRcblxuQG1peGluIGNlbnRlci1ibG9jaygpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4iLAoJCSIvLyBOYXZiYXIgdmVydGljYWwgYWxpZ25cbi8vXG4vLyBWZXJ0aWNhbGx5IGNlbnRlciBlbGVtZW50cyBpbiB0aGUgbmF2YmFyLlxuLy8gRXhhbXBsZTogYW4gZWxlbWVudCBoYXMgYSBoZWlnaHQgb2YgMzBweCwgc28gd3JpdGUgb3V0IGAubmF2YmFyLXZlcnRpY2FsLWFsaWduKDMwcHgpO2AgdG8gY2FsY3VsYXRlIHRoZSBhcHByb3ByaWF0ZSB0b3AgbWFyZ2luLlxuXG5AbWl4aW4gbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRlbGVtZW50LWhlaWdodCkge1xuICBtYXJnaW4tdG9wOiAoKCRuYXZiYXItaGVpZ2h0IC0gJGVsZW1lbnQtaGVpZ2h0KSAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAoKCRuYXZiYXItaGVpZ2h0IC0gJGVsZW1lbnQtaGVpZ2h0KSAvIDIpO1xufVxuIiwKCQkiLy8gRnJhbWV3b3JrIGdyaWQgZ2VuZXJhdGlvblxuLy9cbi8vIFVzZWQgb25seSBieSBCb290c3RyYXAgdG8gZ2VuZXJhdGUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIGdyaWQgY2xhc3NlcyBnaXZlblxuLy8gYW55IHZhbHVlIG9mIGAkZ3JpZC1jb2x1bW5zYC5cblxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGluIExFU1MsIGJ1dCBTYXNzIHN1cHBvcnRzIHJlYWwgbG9vcHNcbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkaTogMSwgJGxpc3Q6IFwiLmNvbC14cy0jeyRpfSwgLmNvbC1zbS0jeyRpfSwgLmNvbC1tZC0jeyRpfSwgLmNvbC1sZy0jeyRpfVwiKSB7XG4gIEBmb3IgJGkgZnJvbSAoMSArIDEpIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgJGxpc3Q6IFwiI3skbGlzdH0sIC5jb2wteHMtI3skaX0sIC5jb2wtc20tI3skaX0sIC5jb2wtbWQtI3skaX0sIC5jb2wtbGctI3skaX1cIjtcbiAgfVxuICAjeyRsaXN0fSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGNvbGxhcHNpbmcgd2hlbiBlbXB0eVxuICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgICAvLyBJbm5lciBndXR0ZXIgdmlhIHBhZGRpbmdcbiAgICBwYWRkaW5nLWxlZnQ6ICBjZWlsKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gICAgcGFkZGluZy1yaWdodDogZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKTtcbiAgfVxufVxuXG5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgZGVmaW5lZCByZWN1cnNpdmVseSBpbiBMRVNTLCBidXQgU2FzcyBzdXBwb3J0cyByZWFsIGxvb3BzXG5AbWl4aW4gZmxvYXQtZ3JpZC1jb2x1bW5zKCRjbGFzcywgJGk6IDEsICRsaXN0OiBcIi5jb2wtI3skY2xhc3N9LSN7JGl9XCIpIHtcbiAgQGZvciAkaSBmcm9tICgxICsgMSkgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAkbGlzdDogXCIjeyRsaXN0fSwgLmNvbC0jeyRjbGFzc30tI3skaX1cIjtcbiAgfVxuICAjeyRsaXN0fSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuXG5AbWl4aW4gY2FsYy1ncmlkLWNvbHVtbigkaW5kZXgsICRjbGFzcywgJHR5cGUpIHtcbiAgQGlmICgkdHlwZSA9PSB3aWR0aCkgYW5kICgkaW5kZXggPiAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tI3skaW5kZXh9IHtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkaW5kZXggLyAkZ3JpZC1jb2x1bW5zKSk7XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVzaCkgYW5kICgkaW5kZXggPiAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVzaC0jeyRpbmRleH0ge1xuICAgICAgbGVmdDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1c2gpIGFuZCAoJGluZGV4ID09IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS1wdXNoLTAge1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdWxsKSBhbmQgKCRpbmRleCA+IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS1wdWxsLSN7JGluZGV4fSB7XG4gICAgICByaWdodDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1bGwpIGFuZCAoJGluZGV4ID09IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS1wdWxsLTAge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gb2Zmc2V0KSB7XG4gICAgLmNvbC0jeyRjbGFzc30tb2Zmc2V0LSN7JGluZGV4fSB7XG4gICAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xuQG1peGluIGxvb3AtZ3JpZC1jb2x1bW5zKCRjb2x1bW5zLCAkY2xhc3MsICR0eXBlKSB7XG4gIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xuICAgIEBpbmNsdWRlIGNhbGMtZ3JpZC1jb2x1bW4oJGksICRjbGFzcywgJHR5cGUpO1xuICB9XG59XG5cblxuLy8gQ3JlYXRlIGdyaWQgZm9yIHNwZWNpZmljIGNsYXNzXG5AbWl4aW4gbWFrZS1ncmlkKCRjbGFzcykge1xuICBAaW5jbHVkZSBmbG9hdC1ncmlkLWNvbHVtbnMoJGNsYXNzKTtcbiAgQGluY2x1ZGUgbG9vcC1ncmlkLWNvbHVtbnMoJGdyaWQtY29sdW1ucywgJGNsYXNzLCB3aWR0aCk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgcHVsbCk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgcHVzaCk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgb2Zmc2V0KTtcbn1cbiIsCgkJIi8vIEdyaWQgc3lzdGVtXG4vL1xuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxuXG4vLyBDZW50ZXJlZCBjb250YWluZXIgZWxlbWVudFxuQG1peGluIGNvbnRhaW5lci1maXhlZCgkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgcGFkZGluZy1sZWZ0OiAgZmxvb3IoKCRndXR0ZXIgLyAyKSk7XG4gIHBhZGRpbmctcmlnaHQ6IGNlaWwoKCRndXR0ZXIgLyAyKSk7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4vLyBDcmVhdGVzIGEgd3JhcHBlciBmb3IgYSBzZXJpZXMgb2YgY29sdW1uc1xuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBtYXJnaW4tbGVmdDogIGNlaWwoKCRndXR0ZXIgLyAtMikpO1xuICBtYXJnaW4tcmlnaHQ6IGZsb29yKCgkZ3V0dGVyIC8gLTIpKTtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBleHRyYSBzbWFsbCBjb2x1bW5zXG5AbWl4aW4gbWFrZS14cy1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcbn1cbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuQG1peGluIG1ha2UteHMtY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG59XG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBzbWFsbCBjb2x1bW5zXG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2Utc20tY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBtZWRpdW0gY29sdW1uc1xuQG1peGluIG1ha2UtbWQtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbWQtY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuXG4vLyBHZW5lcmF0ZSB0aGUgbGFyZ2UgY29sdW1uc1xuQG1peGluIG1ha2UtbGctY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbGctY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuIiwKCQkiLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4zIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vL1xuLy8gMS4gU2V0IGRlZmF1bHQgZm9udCBmYW1pbHkgdG8gc2Fucy1zZXJpZi5cbi8vIDIuIFByZXZlbnQgaU9TIGFuZCBJRSB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIGRldmljZSBvcmllbnRhdGlvbiBjaGFuZ2UsXG4vLyAgICB3aXRob3V0IGRpc2FibGluZyB1c2VyIHpvb20uXG4vL1xuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8vIDFcbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG59XG5cbi8vXG4vLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4uXG4vL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vLyBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGFueSBIVE1MNSBlbGVtZW50IGluIElFIDgvOS5cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExXG4vLyBhbmQgRmlyZWZveC5cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgbWFpbmAgaW4gSUUgMTEuXG4vL1xuXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1haW4sXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy9cbi8vIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXG4vLyAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4vL1xuXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIDFcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvLyAyXG59XG5cbi8vXG4vLyBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuLy8gUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbi8vXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cbi8vIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbi8vXG5cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vLyBMaW5rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuLy9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vL1xuLy8gSW1wcm92ZSByZWFkYWJpbGl0eSBvZiBmb2N1c2VkIGVsZW1lbnRzIHdoZW4gdGhleSBhcmUgYWxzbyBpbiBhblxuLy8gYWN0aXZlL2hvdmVyIHN0YXRlLlxuLy9cblxuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gVGV4dC1sZXZlbCBzZW1hbnRpY3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4vL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XG59XG5cbi8vXG4vLyBBZGRyZXNzIHN0eWxlIHNldCB0byBgYm9sZGVyYCBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4vL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8vXG4vLyBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4vL1xuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8vXG4vLyBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4vLyBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4vL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cbi8vXG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kOiAjZmYwO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cbi8vXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbi8vIEVtYmVkZGVkIGNvbnRlbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cbi8vXG5cbmltZyB7XG4gIGJvcmRlcjogMDtcbn1cblxuLy9cbi8vIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA5LzEwLzExLlxuLy9cblxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLyBHcm91cGluZyBjb250ZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkuXG4vL1xuXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4O1xufVxuXG4vL1xuLy8gQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxuLy9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vL1xuLy8gQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLy9cbi8vIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cbi8vXG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLy8gRm9ybXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxuLy8gc3R5bGluZyBvZiBgc2VsZWN0YCwgdW5sZXNzIGEgYGJvcmRlcmAgcHJvcGVydHkgaXMgc2V0LlxuLy9cblxuLy9cbi8vIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cbi8vICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxuLy8gMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cbi8vIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgY29sb3I6IGluaGVyaXQ7IC8vIDFcbiAgZm9udDogaW5oZXJpdDsgLy8gMlxuICBtYXJnaW46IDA7IC8vIDNcbn1cblxuLy9cbi8vIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxuLy9cblxuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXG4vLyBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxuLy8gQ29ycmVjdCBgYnV0dG9uYCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LCBJRSA4LzkvMTAvMTEsIGFuZCBPcGVyYS5cbi8vIENvcnJlY3QgYHNlbGVjdGAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveC5cbi8vXG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vL1xuLy8gMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2Bcbi8vICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxuLy8gMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxuLy8gMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbi8vICAgIGBpbnB1dGAgYW5kIG90aGVycy5cbi8vXG5cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG4gIGN1cnNvcjogcG9pbnRlcjsgLy8gM1xufVxuXG4vL1xuLy8gUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cbi8vXG5cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLy9cbi8vIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cbi8vXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxuLy8gdGhlIFVBIHN0eWxlc2hlZXQuXG4vL1xuXG5pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbi8vXG4vLyBJdCdzIHJlY29tbWVuZGVkIHRoYXQgeW91IGRvbid0IGF0dGVtcHQgdG8gc3R5bGUgdGhlc2UgZWxlbWVudHMuXG4vLyBGaXJlZm94J3MgaW1wbGVtZW50YXRpb24gZG9lc24ndCByZXNwZWN0IGJveC1zaXppbmcsIHBhZGRpbmcsIG9yIHdpZHRoLlxuLy9cbi8vIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXG4vLyAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxuLy9cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICBwYWRkaW5nOiAwOyAvLyAyXG59XG5cbi8vXG4vLyBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxuLy8gYGZvbnQtc2l6ZWAgdmFsdWVzIG9mIHRoZSBgaW5wdXRgLCBpdCBjYXVzZXMgdGhlIGN1cnNvciBzdHlsZSBvZiB0aGVcbi8vIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cbi8vXG5cbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vL1xuLy8gMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4vLyAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuLy9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAxXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLzJcbn1cblxuLy9cbi8vIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgYW5kIENocm9tZSBvbiBPUyBYLlxuLy8gU2FmYXJpIChidXQgbm90IENocm9tZSkgY2xpcHMgdGhlIGNhbmNlbCBidXR0b24gd2hlbiB0aGUgc2VhcmNoIGlucHV0IGhhc1xuLy8gcGFkZGluZyAoYW5kIGB0ZXh0ZmllbGRgIGFwcGVhcmFuY2UpLlxuLy9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vXG4vLyBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXG4vL1xuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbn1cblxuLy9cbi8vIDEuIENvcnJlY3QgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDgvOS8xMC8xMS5cbi8vIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cbi8vXG5cbmxlZ2VuZCB7XG4gIGJvcmRlcjogMDsgLy8gMVxuICBwYWRkaW5nOiAwOyAvLyAyXG59XG5cbi8vXG4vLyBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LzEwLzExLlxuLy9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLy9cbi8vIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cbi8vIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuLy9cblxub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLy8gVGFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxuLy9cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxudGQsXG50aCB7XG4gIHBhZGRpbmc6IDA7XG59XG4iLAoJCSIvKiEgU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9ibG9iL21hc3Rlci9zcmMvY3NzL21haW4uY3NzICovXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBQcmludCBzdHlsZXMuXG4vLyBJbmxpbmVkIHRvIGF2b2lkIHRoZSBhZGRpdGlvbmFsIEhUVFAgcmVxdWVzdDogaDVicC5jb20vclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQG1lZGlhIHByaW50IHtcbiAgICAqLFxuICAgICo6YmVmb3JlLFxuICAgICo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cblxuICAgIGFbaHJlZl06YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgICB9XG5cbiAgICBhYmJyW3RpdGxlXTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjtcbiAgICB9XG5cbiAgICAvLyBEb24ndCBzaG93IGxpbmtzIHRoYXQgYXJlIGZyYWdtZW50IGlkZW50aWZpZXJzLFxuICAgIC8vIG9yIHVzZSB0aGUgYGphdmFzY3JpcHQ6YCBwc2V1ZG8gcHJvdG9jb2xcbiAgICBhW2hyZWZePVwiI1wiXTphZnRlcixcbiAgICBhW2hyZWZePVwiamF2YXNjcmlwdDpcIl06YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgIH1cblxuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzk5OTtcbiAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIHRoZWFkIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyAvLyBoNWJwLmNvbS90XG4gICAgfVxuXG4gICAgdHIsXG4gICAgaW1nIHtcbiAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgICBvcnBoYW5zOiAzO1xuICAgICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBzdGFydFxuXG4gICAgLy8gQm9vdHN0cmFwIGNvbXBvbmVudHNcbiAgICAubmF2YmFyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmJ0bixcbiAgICAuZHJvcHVwID4gLmJ0biB7XG4gICAgICAgID4gLmNhcmV0IHtcbiAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubGFiZWwge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwO1xuICAgIH1cblxuICAgIC50YWJsZSB7XG4gICAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2UgIWltcG9ydGFudDtcblxuICAgICAgICB0ZCxcbiAgICAgICAgdGgge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICAgIHRoLFxuICAgICAgICB0ZCB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBlbmRcbn1cbiIsCgkJIi8vXG4vLyBHcmlkIHN5c3RlbVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBDb250YWluZXIgd2lkdGhzXG4vL1xuLy8gU2V0IHRoZSBjb250YWluZXIgd2lkdGgsIGFuZCBvdmVycmlkZSBpdCBmb3IgZml4ZWQgbmF2YmFycyBpbiBtZWRpYSBxdWVyaWVzLlxuXG4uY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgY29udGFpbmVyLWZpeGVkO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIHdpZHRoOiAkY29udGFpbmVyLXNtO1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIHdpZHRoOiAkY29udGFpbmVyLW1kO1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIHdpZHRoOiAkY29udGFpbmVyLWxnO1xuICB9XG59XG5cblxuLy8gRmx1aWQgY29udGFpbmVyXG4vL1xuLy8gVXRpbGl6ZXMgdGhlIG1peGluIG1lYW50IGZvciBmaXhlZCB3aWR0aCBjb250YWluZXJzLCBidXQgd2l0aG91dCBhbnkgZGVmaW5lZFxuLy8gd2lkdGggZm9yIGZsdWlkLCBmdWxsIHdpZHRoIGxheW91dHMuXG5cbi5jb250YWluZXItZmx1aWQge1xuICBAaW5jbHVkZSBjb250YWluZXItZml4ZWQ7XG59XG5cblxuLy8gUm93XG4vL1xuLy8gUm93cyBjb250YWluIGFuZCBjbGVhciB0aGUgZmxvYXRzIG9mIHlvdXIgY29sdW1ucy5cblxuLnJvdyB7XG4gIEBpbmNsdWRlIG1ha2Utcm93O1xufVxuXG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zO1xuXG5cbi8vIEV4dHJhIHNtYWxsIGdyaWRcbi8vXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgZXh0cmEgc21hbGwgZGV2aWNlcyBsaWtlXG4vLyBzbWFydHBob25lcy5cblxuQGluY2x1ZGUgbWFrZS1ncmlkKHhzKTtcblxuXG4vLyBTbWFsbCBncmlkXG4vL1xuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIHRoZSBzbWFsbCBkZXZpY2UgcmFuZ2UsIGZyb20gcGhvbmVzXG4vLyB0byB0YWJsZXRzLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkKHNtKTtcbn1cblxuXG4vLyBNZWRpdW0gZ3JpZFxuLy9cbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciB0aGUgZGVza3RvcCBkZXZpY2UgcmFuZ2UuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQobWQpO1xufVxuXG5cbi8vIExhcmdlIGdyaWRcbi8vXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgdGhlIGxhcmdlIGRlc2t0b3AgZGV2aWNlIHJhbmdlLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkKGxnKTtcbn1cbiIsCgkJIi8vXG4vLyBDb21wb25lbnQgYW5pbWF0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gSGVhZHMgdXAhXG4vL1xuLy8gV2UgZG9uJ3QgdXNlIHRoZSBgLm9wYWNpdHkoKWAgbWl4aW4gaGVyZSBzaW5jZSBpdCBjYXVzZXMgYSBidWcgd2l0aCB0ZXh0XG4vLyBmaWVsZHMgaW4gSUU3LTguIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzU1Mi5cblxuLmZhZGUge1xuICBvcGFjaXR5OiAwO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgLjE1cyBsaW5lYXIpO1xuICAmLmluIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5jb2xsYXBzZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgJi5pbiAgICAgIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIHRyJi5pbiB0byB0ci5jb2xsYXBzZS5pblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgdGJvZHkmLmluIHRvIHRib2R5LmNvbGxhcHNlLmluXG59XG5cbnRyLmNvbGxhcHNlLmluICAgIHsgZGlzcGxheTogdGFibGUtcm93OyB9XG5cbnRib2R5LmNvbGxhcHNlLmluIHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwOyB9XG5cbi5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tcHJvcGVydHkoaGVpZ2h0LCB2aXNpYmlsaXR5KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1kdXJhdGlvbiguMzVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oZWFzZSk7XG59XG4iLAoJCSIvL1xuLy8gTmF2c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubmF2IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IHVsL29sXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gID4gbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgID4gYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6ICRuYXYtbGluay1wYWRkaW5nO1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtbGluay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBzdGF0ZSBzZXRzIHRleHQgdG8gZ3JheSBhbmQgbnVrZXMgaG92ZXIvdGFiIGVmZmVjdHNcbiAgICAmLmRpc2FibGVkID4gYSB7XG4gICAgICBjb2xvcjogJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2LWRpc2FibGVkLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBPcGVuIGRyb3Bkb3duc1xuICAub3BlbiA+IGEge1xuICAgICYsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtbGluay1ob3Zlci1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJGxpbmstY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gTmF2IGRpdmlkZXJzIChkZXByZWNhdGVkIHdpdGggdjMuMC4xKVxuICAvL1xuICAvLyBUaGlzIHNob3VsZCBoYXZlIGJlZW4gcmVtb3ZlZCBpbiB2MyB3aXRoIHRoZSBkcm9wcGluZyBvZiBgLm5hdi1saXN0YCwgYnV0XG4gIC8vIHdlIG1pc3NlZCBpdC4gV2UgZG9uJ3QgY3VycmVudGx5IHN1cHBvcnQgdGhpcyBhbnl3aGVyZSwgYnV0IGluIHRoZSBpbnRlcmVzdFxuICAvLyBvZiBtYWludGFpbmluZyBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IGluIGNhc2UgeW91IHVzZSBpdCwgaXQncyBkZXByZWNhdGVkLlxuICAubmF2LWRpdmlkZXIge1xuICAgIEBpbmNsdWRlIG5hdi1kaXZpZGVyO1xuICB9XG5cbiAgLy8gUHJldmVudCBJRTggZnJvbSBtaXNwbGFjaW5nIGltZ3NcbiAgLy9cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2lzc3Vlcy85ODQjaXNzdWVjb21tZW50LTM5ODU5ODlcbiAgPiBsaSA+IGEgPiBpbWcge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxufVxuXG5cbi8vIFRhYnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gR2l2ZSB0aGUgdGFicyBzb21ldGhpbmcgdG8gc2l0IG9uXG4ubmF2LXRhYnMge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcbiAgPiBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgLy8gTWFrZSB0aGUgbGlzdC1pdGVtcyBvdmVybGF5IHRoZSBib3R0b20gYm9yZGVyXG4gICAgbWFyZ2luLWJvdHRvbTogLTFweDtcblxuICAgIC8vIEFjdHVhbCB0YWJzIChhcyBsaW5rcylcbiAgICA+IGEge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2UgJGJvcmRlci1yYWRpdXMtYmFzZSAwIDA7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IgJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlLCBhbmQgaXRzIDpob3ZlciB0byBvdmVycmlkZSBub3JtYWwgOmhvdmVyXG4gICAgJi5hY3RpdmUgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gcHVsbGluZyB0aGlzIGluIG1haW5seSBmb3IgbGVzcyBzaG9ydGhhbmRcbiAgJi5uYXYtanVzdGlmaWVkIHtcbiAgICBAZXh0ZW5kIC5uYXYtanVzdGlmaWVkO1xuICAgIEBleHRlbmQgLm5hdi10YWJzLWp1c3RpZmllZDtcbiAgfVxufVxuXG5cbi8vIFBpbGxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ubmF2LXBpbGxzIHtcbiAgPiBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAvLyBMaW5rcyByZW5kZXJlZCBhcyBwaWxsc1xuICAgID4gYSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAkbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM7XG4gICAgfVxuICAgICsgbGkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAmLmFjdGl2ZSA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gU3RhY2tlZCBwaWxsc1xuLm5hdi1zdGFja2VkIHtcbiAgPiBsaSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgKyBsaSB7XG4gICAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgLy8gbm8gbmVlZCBmb3IgdGhpcyBnYXAgYmV0d2VlbiBuYXYgaXRlbXNcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXYgdmFyaWF0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gSnVzdGlmaWVkIG5hdiBsaW5rc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubmF2LWp1c3RpZmllZCB7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gbGkge1xuICAgIGZsb2F0OiBub25lO1xuICAgID4gYSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgfVxuICB9XG5cbiAgPiAuZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgPiBhIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gTW92ZSBib3JkZXJzIHRvIGFuY2hvcnMgaW5zdGVhZCBvZiBib3R0b20gb2YgbGlzdFxuLy9cbi8vIE1peGluIGZvciBhZGRpbmcgb24gdG9wIHRoZSBzaGFyZWQgYC5uYXYtanVzdGlmaWVkYCBzdHlsZXMgZm9yIG91ciB0YWJzXG4ubmF2LXRhYnMtanVzdGlmaWVkIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcblxuICA+IGxpID4gYSB7XG4gICAgLy8gT3ZlcnJpZGUgbWFyZ2luIGZyb20gLm5hdi10YWJzXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIH1cblxuICA+IC5hY3RpdmUgPiBhLFxuICA+IC5hY3RpdmUgPiBhOmhvdmVyLFxuICA+IC5hY3RpdmUgPiBhOmZvY3VzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRuYXYtdGFicy1qdXN0aWZpZWQtbGluay1ib3JkZXItY29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlICRib3JkZXItcmFkaXVzLWJhc2UgMCAwO1xuICAgIH1cbiAgICA+IC5hY3RpdmUgPiBhLFxuICAgID4gLmFjdGl2ZSA+IGE6aG92ZXIsXG4gICAgPiAuYWN0aXZlID4gYTpmb2N1cyB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEhpZGUgdGFiYmFibGUgcGFuZXMgdG8gc3RhcnQsIHNob3cgdGhlbSB3aGVuIGAuYWN0aXZlYFxuLnRhYi1jb250ZW50IHtcbiAgPiAudGFiLXBhbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgPiAuYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5cbi8vIERyb3Bkb3duc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBTcGVjaWZpYyBkcm9wZG93bnNcbi5uYXYtdGFicyAuZHJvcGRvd24tbWVudSB7XG4gIC8vIG1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxuICBtYXJnaW4tdG9wOiAtMXB4O1xuICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbn1cbiIsCgkJIi8vXG4vLyBSZXNwb25zaXZlOiBVdGlsaXR5IGNsYXNzZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gSUUxMCBpbiBXaW5kb3dzIChQaG9uZSkgOFxuLy9cbi8vIFN1cHBvcnQgZm9yIHJlc3BvbnNpdmUgdmlld3MgdmlhIG1lZGlhIHF1ZXJpZXMgaXMga2luZCBvZiBib3JrZWQgaW4gSUUxMCwgZm9yXG4vLyBTdXJmYWNlL2Rlc2t0b3AgaW4gc3BsaXQgdmlldyBhbmQgZm9yIFdpbmRvd3MgUGhvbmUgOC4gVGhpcyBwYXJ0aWN1bGFyIGZpeFxuLy8gbXVzdCBiZSBhY2NvbXBhbmllZCBieSBhIHNuaXBwZXQgb2YgSmF2YVNjcmlwdCB0byBzbmlmZiB0aGUgdXNlciBhZ2VudCBhbmRcbi8vIGFwcGx5IHNvbWUgY29uZGl0aW9uYWwgQ1NTIHRvICpvbmx5KiB0aGUgU3VyZmFjZS9kZXNrdG9wIFdpbmRvd3MgOC4gTG9vayBhdFxuLy8gb3VyIEdldHRpbmcgU3RhcnRlZCBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uIG9uIHRoaXMgYnVnLlxuLy9cbi8vIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIGZvbGxvd2luZzpcbi8vXG4vLyBJc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMDQ5N1xuLy8gRG9jczogaHR0cDovL2dldGJvb3RzdHJhcC5jb20vZ2V0dGluZy1zdGFydGVkLyNzdXBwb3J0LWllMTAtd2lkdGhcbi8vIFNvdXJjZTogaHR0cDovL3RpbWthZGxlYy5jb20vMjAxMy8wMS93aW5kb3dzLXBob25lLTgtYW5kLWRldmljZS13aWR0aC9cbi8vIFNvdXJjZTogaHR0cDovL3RpbWthZGxlYy5jb20vMjAxMi8xMC9pZTEwLXNuYXAtbW9kZS1hbmQtcmVzcG9uc2l2ZS1kZXNpZ24vXG5cbkBhdC1yb290IHtcbiAgQC1tcy12aWV3cG9ydCB7XG4gICAgd2lkdGg6IGRldmljZS13aWR0aDtcbiAgfVxufVxuXG5cbi8vIFZpc2liaWxpdHkgdXRpbGl0aWVzXG4vLyBOb3RlOiBEZXByZWNhdGVkIC52aXNpYmxlLXhzLCAudmlzaWJsZS1zbSwgLnZpc2libGUtbWQsIGFuZCAudmlzaWJsZS1sZyBhcyBvZiB2My4yLjBcblxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLXhzJyk7XG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtc20nKTtcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1tZCcpO1xuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLWxnJyk7XG5cbi52aXNpYmxlLXhzLWJsb2NrLFxuLnZpc2libGUteHMtaW5saW5lLFxuLnZpc2libGUteHMtaW5saW5lLWJsb2NrLFxuLnZpc2libGUtc20tYmxvY2ssXG4udmlzaWJsZS1zbS1pbmxpbmUsXG4udmlzaWJsZS1zbS1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1tZC1ibG9jayxcbi52aXNpYmxlLW1kLWlubGluZSxcbi52aXNpYmxlLW1kLWlubGluZS1ibG9jayxcbi52aXNpYmxlLWxnLWJsb2NrLFxuLnZpc2libGUtbGctaW5saW5lLFxuLnZpc2libGUtbGctaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS14cycpO1xufVxuLnZpc2libGUteHMtYmxvY2sge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS14cy1pbmxpbmUge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUteHMtaW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1zbScpO1xufVxuLnZpc2libGUtc20tYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXNtLWlubGluZSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXNtLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1tZCcpO1xufVxuLnZpc2libGUtbWQtYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLW1kLWlubGluZSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLW1kLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtbGcnKTtcbn1cbi52aXNpYmxlLWxnLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbGctaW5saW5lIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLWxnLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi14cycpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1zbScpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1tZCcpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tbGcnKTtcbn1cblxuXG4vLyBQcmludCB1dGlsaXRpZXNcbi8vXG4vLyBNZWRpYSBxdWVyaWVzIGFyZSBwbGFjZWQgb24gdGhlIGluc2lkZSB0byBiZSBtaXhpbi1mcmllbmRseS5cblxuLy8gTm90ZTogRGVwcmVjYXRlZCAudmlzaWJsZS1wcmludCBhcyBvZiB2My4yLjBcblxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLXByaW50Jyk7XG5cbkBtZWRpYSBwcmludCB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtcHJpbnQnKTtcbn1cbi52aXNpYmxlLXByaW50LWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtcHJpbnQtaW5saW5lIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXByaW50LWlubGluZS1ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICBAbWVkaWEgcHJpbnQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXByaW50Jyk7XG59XG4iLAoJCSJAaW1wb3J0ICdhb3MvY29yZSc7XG5AaW1wb3J0ICdhb3MvZWFzaW5nJztcbkBpbXBvcnQgJ2Fvcy9hbmltYXRpb25zJztcbiIsCgkJIi8vIEdlbmVyYXRlIER1cmF0aW9uICYmIERlbGF5XG5bZGF0YS1hb3NdIHtcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCA2MCB7XG4gICAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nI3skaSAqIDUwfSddICYsXG4gICAgJltkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JyN7JGkgKiA1MH0nXSB7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAjeyRpICogNTB9bXM7XG4gICAgfVxuXG4gICAgYm9keVtkYXRhLWFvcy1kZWxheT0nI3skaSAqIDUwfSddICYsXG4gICAgJltkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JyN7JGkgKiA1MH0nXSB7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwO1xuXG4gICAgICAmLmFvcy1hbmltYXRlIHtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogI3skaSAqIDUwfW1zO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwKCQkiJGFvcy1lYXNpbmc6IChcbiAgbGluZWFyOiBjdWJpYy1iZXppZXIoLjI1MCwgLjI1MCwgLjc1MCwgLjc1MCksXG5cbiAgZWFzZTogY3ViaWMtYmV6aWVyKC4yNTAsIC4xMDAsIC4yNTAsIDEpLFxuICBlYXNlLWluOiBjdWJpYy1iZXppZXIoLjQyMCwgMCwgMSwgMSksXG4gIGVhc2Utb3V0OiBjdWJpYy1iZXppZXIoLjAwMCwgMCwgLjU4MCwgMSksXG4gIGVhc2UtaW4tb3V0OiBjdWJpYy1iZXppZXIoLjQyMCwgMCwgLjU4MCwgMSksXG5cbiAgZWFzZS1pbi1iYWNrOiBjdWJpYy1iZXppZXIoLjYsIC0uMjgsIC43MzUsIC4wNDUpLFxuICBlYXNlLW91dC1iYWNrOiBjdWJpYy1iZXppZXIoLjE3NSwgLjg4NSwgLjMyLCAxLjI3NSksXG4gIGVhc2UtaW4tb3V0LWJhY2s6IGN1YmljLWJlemllciguNjgsIC0uNTUsIC4yNjUsIDEuNTUpLFxuXG4gIGVhc2UtaW4tc2luZTogY3ViaWMtYmV6aWVyKC40NywgMCwgLjc0NSwgLjcxNSksXG4gIGVhc2Utb3V0LXNpbmU6IGN1YmljLWJlemllciguMzksIC41NzUsIC41NjUsIDEpLFxuICBlYXNlLWluLW91dC1zaW5lOiBjdWJpYy1iZXppZXIoLjQ0NSwgLjA1LCAuNTUsIC45NSksXG5cbiAgZWFzZS1pbi1xdWFkOiBjdWJpYy1iZXppZXIoLjU1LCAuMDg1LCAuNjgsIC41MyksXG4gIGVhc2Utb3V0LXF1YWQ6IGN1YmljLWJlemllciguMjUsIC40NiwgLjQ1LCAuOTQpLFxuICBlYXNlLWluLW91dC1xdWFkOiBjdWJpYy1iZXppZXIoLjQ1NSwgLjAzLCAuNTE1LCAuOTU1KSxcblxuICBlYXNlLWluLWN1YmljOiBjdWJpYy1iZXppZXIoLjU1LCAuMDg1LCAuNjgsIC41MyksXG4gIGVhc2Utb3V0LWN1YmljOiBjdWJpYy1iZXppZXIoLjI1LCAuNDYsIC40NSwgLjk0KSxcbiAgZWFzZS1pbi1vdXQtY3ViaWM6IGN1YmljLWJlemllciguNDU1LCAuMDMsIC41MTUsIC45NTUpLFxuXG4gIGVhc2UtaW4tcXVhcnQ6IGN1YmljLWJlemllciguNTUsIC4wODUsIC42OCwgLjUzKSxcbiAgZWFzZS1vdXQtcXVhcnQ6IGN1YmljLWJlemllciguMjUsIC40NiwgLjQ1LCAuOTQpLFxuICBlYXNlLWluLW91dC1xdWFydDogY3ViaWMtYmV6aWVyKC40NTUsIC4wMywgLjUxNSwgLjk1NSlcbik7XG5cbi8vIEVhc2luZ3MgaW1wbGVtZW50YXRpb25zXG4vLyBEZWZhdWx0IHRpbWluZyBmdW5jdGlvbjogJ2Vhc2UnXG5cbltkYXRhLWFvc10ge1xuICBAZWFjaCAka2V5LCAkdmFsIGluICRhb3MtZWFzaW5nIHtcbiAgICBib2R5W2RhdGEtYW9zLWVhc2luZz1cIiN7JGtleX1cIl0gJixcbiAgICAmW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9XCIjeyRrZXl9XCJdIHtcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdmFsO1xuICAgIH1cbiAgfVxufVxuIiwKCQkiLy8gQW5pbWF0aW9ucyB2YXJpYWJsZXNcbiRhb3MtZGlzdGFuY2U6IDEwMHB4ICFkZWZhdWx0O1xuXG5cblxuXG4vKipcbiAqIEZhZGUgYW5pbWF0aW9uczpcbiAqIGZhZGVcbiAqIGZhZGUtdXAsIGZhZGUtZG93biwgZmFkZS1sZWZ0LCBmYWRlLXJpZ2h0XG4gKiBmYWRlLXVwLXJpZ2h0LCBmYWRlLXVwLWxlZnQsIGZhZGUtZG93bi1yaWdodCwgZmFkZS1kb3duLWxlZnRcbiAqL1xuXG5bZGF0YS1hb3NePSdmYWRlJ11bZGF0YS1hb3NePSdmYWRlJ10ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCB0cmFuc2Zvcm07XG5cbiAgJi5hb3MtYW5pbWF0ZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxufVxuXG5bZGF0YS1hb3M9J2ZhZGUtdXAnXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsICRhb3MtZGlzdGFuY2UpO1xufVxuXG5bZGF0YS1hb3M9J2ZhZGUtZG93biddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLSRhb3MtZGlzdGFuY2UpO1xufVxuXG5bZGF0YS1hb3M9J2ZhZGUtcmlnaHQnXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0kYW9zLWRpc3RhbmNlLCAwKTtcbn1cblxuW2RhdGEtYW9zPSdmYWRlLWxlZnQnXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKCRhb3MtZGlzdGFuY2UsIDApO1xufVxuXG5bZGF0YS1hb3M9J2ZhZGUtdXAtcmlnaHQnXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0kYW9zLWRpc3RhbmNlLCAkYW9zLWRpc3RhbmNlKTtcbn1cblxuW2RhdGEtYW9zPSdmYWRlLXVwLWxlZnQnXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKCRhb3MtZGlzdGFuY2UsICRhb3MtZGlzdGFuY2UpO1xufVxuXG5bZGF0YS1hb3M9J2ZhZGUtZG93bi1yaWdodCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLSRhb3MtZGlzdGFuY2UsIC0kYW9zLWRpc3RhbmNlKTtcbn1cblxuW2RhdGEtYW9zPSdmYWRlLWRvd24tbGVmdCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoJGFvcy1kaXN0YW5jZSwgLSRhb3MtZGlzdGFuY2UpO1xufVxuXG5cblxuXG4vKipcbiAqIFpvb20gYW5pbWF0aW9uczpcbiAqIHpvb20taW4sIHpvb20taW4tdXAsIHpvb20taW4tZG93biwgem9vbS1pbi1sZWZ0LCB6b29tLWluLXJpZ2h0XG4gKiB6b29tLW91dCwgem9vbS1vdXQtdXAsIHpvb20tb3V0LWRvd24sIHpvb20tb3V0LWxlZnQsIHpvb20tb3V0LXJpZ2h0XG4gKi9cblxuW2RhdGEtYW9zXj0nem9vbSddW2RhdGEtYW9zXj0nem9vbSddIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtO1xuXG4gICYuYW9zLWFuaW1hdGUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCkgc2NhbGUoMSk7XG4gIH1cbn1cblxuW2RhdGEtYW9zPSd6b29tLWluJ10ge1xuICB0cmFuc2Zvcm06IHNjYWxlKC42KTtcbn1cblxuW2RhdGEtYW9zPSd6b29tLWluLXVwJ10ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAkYW9zLWRpc3RhbmNlKSBzY2FsZSguNik7XG59XG5cbltkYXRhLWFvcz0nem9vbS1pbi1kb3duJ10ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtJGFvcy1kaXN0YW5jZSkgc2NhbGUoLjYpO1xufVxuXG5bZGF0YS1hb3M9J3pvb20taW4tcmlnaHQnXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0kYW9zLWRpc3RhbmNlLCAwKSBzY2FsZSguNik7XG59XG5cbltkYXRhLWFvcz0nem9vbS1pbi1sZWZ0J10ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgkYW9zLWRpc3RhbmNlLCAwKSBzY2FsZSguNik7XG59XG5cbltkYXRhLWFvcz0nem9vbS1vdXQnXSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbn1cblxuW2RhdGEtYW9zPSd6b29tLW91dC11cCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgJGFvcy1kaXN0YW5jZSkgc2NhbGUoMS4yKTtcbn1cblxuW2RhdGEtYW9zPSd6b29tLW91dC1kb3duJ10ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtJGFvcy1kaXN0YW5jZSkgc2NhbGUoMS4yKTtcbn1cblxuW2RhdGEtYW9zPSd6b29tLW91dC1yaWdodCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLSRhb3MtZGlzdGFuY2UsIDApIHNjYWxlKDEuMik7XG59XG5cbltkYXRhLWFvcz0nem9vbS1vdXQtbGVmdCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoJGFvcy1kaXN0YW5jZSwgMCkgc2NhbGUoMS4yKTtcbn1cblxuXG5cblxuLyoqXG4gKiBTbGlkZSBhbmltYXRpb25zXG4gKi9cblxuW2RhdGEtYW9zXj0nc2xpZGUnXVtkYXRhLWFvc149J3NsaWRlJ10ge1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG5cbiAgJi5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIH1cbn1cblxuW2RhdGEtYW9zPSdzbGlkZS11cCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xufVxuXG5bZGF0YS1hb3M9J3NsaWRlLWRvd24nXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG59XG5cbltkYXRhLWFvcz0nc2xpZGUtcmlnaHQnXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG59XG5cbltkYXRhLWFvcz0nc2xpZGUtbGVmdCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG5cblxuXG4vKipcbiAqIEZsaXAgYW5pbWF0aW9uczpcbiAqIGZsaXAtbGVmdCwgZmxpcC1yaWdodCwgZmxpcC11cCwgZmxpcC1kb3duXG4gKi9cblxuW2RhdGEtYW9zXj0nZmxpcCddW2RhdGEtYW9zXj0nZmxpcCddIHtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG59XG5cbltkYXRhLWFvcz0nZmxpcC1sZWZ0J10ge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWSgtMTAwZGVnKTtcbiAgJi5hb3MtYW5pbWF0ZSB7dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVkoMCk7fVxufVxuXG5bZGF0YS1hb3M9J2ZsaXAtcmlnaHQnXSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVZKDEwMGRlZyk7XG4gICYuYW9zLWFuaW1hdGUge3RyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVZKDApO31cbn1cblxuW2RhdGEtYW9zPSdmbGlwLXVwJ10ge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWCgtMTAwZGVnKTtcbiAgJi5hb3MtYW5pbWF0ZSB7dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVgoMCk7fVxufVxuXG5bZGF0YS1hb3M9J2ZsaXAtZG93biddIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVgoMTAwZGVnKTtcbiAgJi5hb3MtYW5pbWF0ZSB7dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVgoMCk7fVxufVxuIiwKCQkiLyogbWFpbjogLi4vbWFpbi5zY3NzKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgZmlsZSBjb250YWlucyB2ZXJ5IGJhc2ljIHN0eWxlcy4qL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKipcbiAqIFNldCB1cCBhIGRlY2VudCBib3ggbW9kZWwgb24gdGhlIHJvb3QgZWxlbWVudFxuICovXG5odG1sIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi8qKlxuICogTWFrZSBhbGwgZWxlbWVudHMgZnJvbSB0aGUgRE9NIGluaGVyaXQgZnJvbSB0aGUgcGFyZW50IGJveC1zaXppbmdcbiAqIFNpbmNlIGAqYCBoYXMgYSBzcGVjaWZpY2l0eSBvZiAwLCBpdCBkb2VzIG5vdCBvdmVycmlkZSB0aGUgYGh0bWxgIHZhbHVlXG4gKiBtYWtpbmcgYWxsIGVsZW1lbnRzIGluaGVyaXRpbmcgZnJvbSB0aGUgcm9vdCBib3gtc2l6aW5nIHZhbHVlXG4gKiBTZWU6IGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vaW5oZXJpdGluZy1ib3gtc2l6aW5nLXByb2JhYmx5LXNsaWdodGx5LWJldHRlci1iZXN0LXByYWN0aWNlL1xuICovXG4qLCAqOjpiZWZvcmUsICo6OmFmdGVyIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBpbmhlcml0O1xuICAgICAgICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbi8qIExpbmtzKi9cbmEge1xuICBjb2xvcjogJGJyYW5kLWNvbG9yLXByaW1hcnk7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXG4gIEBpbmNsdWRlIG9uLWV2ZW50IHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbn1cblxuLyogSW1hZ2VzKi9cblxuaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLyogUmVzcG9uc2l2ZSBpbWFnZXMgKGVuc3VyZSBpbWFnZXMgZG9uJ3Qgc2NhbGUgYmV5b25kIHRoZWlyIHBhcmVudHMpKi9cbi5pbWctcmVzcG9uc2l2ZSB7XG4gIEBpbmNsdWRlIGltZy1yZXNwb25zaXZlO1xufVxuXG4vKiBTZWN0aW9uaW5nIGVsZW1lbnRzKi9cbnNlY3Rpb24ge1xuICBwYWRkaW5nLWJvdHRvbTogNzJweDtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIHBhZGRpbmctYm90dG9tOiA1NHB4O1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDc5cHgpIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzZweDtcbiAgfVxufVxuXG4uc2VjdGlvbi0td2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG5hcnRpY2xlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cbnVsIHtcbiAgbWFyZ2luOiAxOHB4IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgcGFkZGluZzogMDtcblxuICBsaSB7XG4gICAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gIH1cbn1cbiIsCgkJIi8vIG1haW46IC4uL21haW4uc2Nzc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRoaXMgZmlsZSBjb250YWlucyBhbGwgQGZvbnQtZmFjZSBkZWNsYXJhdGlvbnMsIGlmIGFueS5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUWFuZWxhc1NvZnRERU1PLUV4dHJhQm9sZCc7XG4gIHNyYzogdXJsKCcuLi9mb250cy9RYW5lbGFzU29mdERFTU8tRXh0cmFCb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICB1cmwoJy4uL2ZvbnRzL1FhbmVsYXNTb2Z0REVNTy1FeHRyYUJvbGQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xufVxuIiwKCQkiLy8gbWFpbjogLi4vbWFpbi5zY3NzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVGhpcyBmaWxlIGNvbnRhaW5zIHR5cG9ncmFwaHkgc3R5bGVzLlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gQm9keSB0ZXh0XG4gYm9keSB7XG4gIGZvbnQtZmFtaWx5OiAkdGV4dC1mb250LXN0YWNrLWFsdDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYmFzZTtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICB9XG59XG5cbiBwIHtcbiAgZm9udC1mYW1pbHk6ICR0ZXh0LWZvbnQtc3RhY2stYWx0O1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAzNnB4O1xuICBtYXJnaW4tdG9wOiAzNnB4O1xuICBtYXJnaW4tYm90dG9tOiA1NHB4O1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE0NTlweCkge1xuICAgIG1hcmdpbi1ib3R0b206IDI3cHg7XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDc5cHgpIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgbWFyZ2luLXRvcDogMThweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzNnB4O1xuICB9XG59XG5cblxuLy8gSGVhZGluZ3Ncbi5oZWFkaW5nLXNlY3Rpb24ge1xuICBmb250LWZhbWlseTogJHRleHQtZm9udC1zdGFjaztcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiA0OHB4O1xuICBsaW5lLWhlaWdodDogNzJweDtcbiAgbWFyZ2luLXRvcDogNzJweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgY29sb3I6ICRoZWFkaW5nLWNvbG9yO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE0NTlweCkge1xuICAgIGZvbnQtc2l6ZTogNDJweDtcbiAgICBsaW5lLWhlaWdodDogNTRweDtcbiAgICBtYXJnaW4tdG9wOiA1NHB4O1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICBmb250LXNpemU6IDQwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDU0cHg7XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzlweCkge1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBsaW5lLWhlaWdodDogNDhweDtcbiAgICBtYXJnaW4tdG9wOiA1NHB4O1xuICB9XG59XG5cbi5oZWFkaW5nLXNlY3Rpb24tLWludmVydGVkLCAuaGVhZGluZy1zZWN0aW9uLXN1Yi0taW52ZXJ0ZWQge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmhlYWRpbmctc2VjdGlvbi1zdWIge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJhc2U7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTQ1OXB4KSB7XG4gICAgZm9udC1zaXplOiAyMXB4O1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICBmb250LXNpemU6IDIycHg7XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzlweCkge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgfVxufVxuXG4uaGVhZGluZy1hcnRpY2xlLCAuaGVhZGluZy1hcnRpY2xlLXNtICB7XG4gIGZvbnQtZmFtaWx5OiAkdGV4dC1mb250LXN0YWNrO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uaGVhZGluZy1hcnRpY2xlIHtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBsaW5lLWhlaWdodDogMzZweDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMzZweDtcbiAgY29sb3I6ICRoZWFkaW5nLWNvbG9yO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE0NTlweCkge1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgZm9udC1zaXplOiAyNnB4O1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDc5cHgpIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMThweDtcbiAgfVxufVxuXG4uaGVhZGluZy1hcnRpY2xlLXNtIHtcbiAgZm9udC1zaXplOiAyMXB4O1xuICBsaW5lLWhlaWdodDogMzZweDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgY29sb3I6ICRoZWFkaW5nLWNvbG9yO1xufVxuXG4uaGVhZGluZy1hY2NlbnQge1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDI0cHg7XG4gIGxpbmUtaGVpZ2h0OiAzNnB4O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAzNnB4O1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE0NTlweCkge1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzlweCkge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5oZWFkaW5nLXRpbGUge1xuICBmb250LXNpemU6IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAzNnB4O1xuICBmb250LWZhbWlseTogJHRleHQtZm9udC1zdGFjaztcbn1cblxuXG4vLyBBbGlnbm1lbnRcbi50ZXh0LWxlZnQgICAgICAgICAgIHsgdGV4dC1hbGlnbjogbGVmdDsgfVxuLnRleHQtcmlnaHQgICAgICAgICAgeyB0ZXh0LWFsaWduOiByaWdodDsgfVxuLnRleHQtY2VudGVyICAgICAgICAgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnRleHQtc21hbGwge1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmRhcmsge1xuICBjb2xvcjogJGhlYWRpbmctY29sb3I7XG59XG5cbi5wcmltYXJ5IHtcbiAgY29sb3I6ICRicmFuZC1jb2xvci1wcmltYXJ5O1xufVxuXG4ucHJpbWFyeS1zb2Z0IHtcbiAgY29sb3I6ICRjb2xvci1zb2Z0LXBpbms7XG59XG5cbi51cHBlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuIiwKCQkiLyogbWFpbjogLi4vbWFpbi5zY3NzKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgZmlsZSBjb250YWlucyBDU1MgaGVscGVyIGNsYXNzZXMuKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyoqXG4gKiBDbGVhciBpbm5lciBmbG9hdHNcbiAqL1xuLmNsZWFyZml4OjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogdGFibGU7XG59XG5cbi8qKlxuICogTWFpbiBjb250ZW50IGNvbnRhaW5lcnNcbiAqIDEuIE1ha2UgdGhlIGNvbnRhaW5lciBmdWxsLXdpZHRoIHdpdGggYSBtYXhpbXVtIHdpZHRoXG4gKiAyLiBDZW50ZXIgaXQgaW4gdGhlIHZpZXdwb3J0XG4gKiAzLiBMZWF2ZSBzb21lIHNwYWNlIG9uIHRoZSBlZGdlcywgZXNwZWNpYWxseSB2YWx1YWJsZSBvbiBzbWFsbCBzY3JlZW5zXG4gKi9cbi8qIC5jb250YWluZXIgeyovXG4vKiAgIG1heC13aWR0aDogJG1heC13aWR0aDsgKi8vKiAxICovLyoqL1xuLyogICBtYXJnaW4tbGVmdDogYXV0bzsgKi8vKiAyICovLyoqL1xuLyogICBtYXJnaW4tcmlnaHQ6IGF1dG87ICovLyogMiAqLy8qKi9cbi8qICAgcGFkZGluZy1sZWZ0OiAxOHB4OyAqLy8qIDMgKi8vKiovXG4vKiAgIHBhZGRpbmctcmlnaHQ6IDE4cHg7ICovLyogMyAqLy8qKi9cbi8qICAgd2lkdGg6IDEwMCU7ICovLyogMSAqLy8qKi9cbi8qICB9Ki9cblxuLyoqXG4gKiBIaWRlIHRleHQgd2hpbGUgbWFraW5nIGl0IHJlYWRhYmxlIGZvciBzY3JlZW4gcmVhZGVyc1xuICogMS4gTmVlZGVkIGluIFdlYktpdC1iYXNlZCBicm93c2VycyBiZWNhdXNlIG9mIGFuIGltcGxlbWVudGF0aW9uIGJ1ZztcbiAqICAgIFNlZTogaHR0cHM6Ly9jb2RlLmdvb2dsZS5jb20vcC9jaHJvbWl1bS9pc3N1ZXMvZGV0YWlsP2lkPTQ1NzE0NlxuICovXG4uaGlkZS10ZXh0IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDsgLyogMSAqL1xuICB0ZXh0LWluZGVudDogMTAxJTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLyoqXG4gKiBIaWRlIGVsZW1lbnQgd2hpbGUgbWFraW5nIGl0IHJlYWRhYmxlIGZvciBzY3JlZW4gcmVhZGVyc1xuICogU2hhbWVsZXNzbHkgYm9ycm93ZWQgZnJvbSBIVE1MNUJvaWxlcnBsYXRlOlxuICogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi9tYXN0ZXIvc3JjL2Nzcy9tYWluLmNzcyNMMTE5LUwxMzNcbiAqL1xuLnZpc3VhbGx5LWhpZGRlbiB7XG4gIGJvcmRlcjogMDtcbiAgY2xpcDogcmVjdCgwIDAgMCAwKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xufVxuXG4vKipcbiAqIEZsb2F0IGxlZnRcbiAqL1xuLnB1bGwtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4vKipcbiAqIEZsb2F0IHJpZ2h0XG4gKi9cbi5wdWxsLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG5cbi8qIFBhZGRpbmcsIG1hcmdpbiBoZWxwZXJzKi9cbi5wcjAge1xuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnBsMCB7XG4gIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnBiMCB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4ubXQwIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLm1iMCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5tYjE4IHtcbiAgbWFyZ2luLWJvdHRvbTogMThweDtcbn1cblxuLm10MTgge1xuICBtYXJnaW4tdG9wOiAxOHB4Oztcbn1cblxuXG4vKiBHcmlkIGhlbHBlcnMqL1xuLmNvbnRhaW5lci1zbSB7XG4gIHBhZGRpbmctbGVmdDogMThweDtcbiAgcGFkZGluZy1yaWdodDogMThweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgYXV0bztcblxuICAvKiBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODBweCkgeyovXG4gIC8qICAgd2lkdGg6IDQ1MHB4OyovXG4gIC8qIH0qL1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgd2lkdGg6IDc1NnB4O1xuICB9XG5cbiAgLyogQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogcHgpIHsqL1xuICAvKiAgIHdpZHRoOiA3MjBweDsqL1xuICAvKiB9Ki9cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIHdpZHRoOiA5NjBweDtcbiAgfVxufVxuXG4uY29sLTQ1IHtcbiAgd2lkdGg6IDQ1JTtcbn1cblxuLmNvbC01NSB7XG4gIHdpZHRoOiA1NSU7XG59XG5cbi5jb2wtNDUsIC5jb2wtNTUge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi5jb2wtcHVzaC00NSB7XG4gIGxlZnQ6IDQ1JTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE4cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG5cbiAgfVxufVxuXG4uY29sLXB1bGwtNTUge1xuICByaWdodDogNTUlO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE4cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnJlbGF0aXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucGFyYWxsYXgtd2luZG93IHtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgbWluLWhlaWdodDogNTAwcHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4uaW1nLXJlc3BvbnNpdmUtaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuI3BhZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4jbG9hZGluZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDEwMDtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE5MiwgMTkyLCAxOTIsIDAuNSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2kuc3RhY2suaW1ndXIuY29tL01ueXhVLmdpZlwiKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbn1cblxuLm5vLXNjcm9sbHtcbiAgICBwb3NpdGlvbjpmaXhlZDtcbiAgICBvdmVyZmxvdzpoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuIiwKCQkiLyogbWFpbjogLi4vbWFpbi5zY3NzKi9cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4vKiBUaGlzIGZpbGUgY29udGFpbnMgYWxsIHN0eWxlcyByZWxhdGVkIHRvIHRoZSBoZWFkZXIgb2YgdGhlIHNpdGUvYXBwbGljYXRpb24uKi9cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4vKiBNYWluIGhlYWRlciovXHJcblxyXG4ubWFpbi1uYXYge1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB6LWluZGV4OiAxMDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgdG9wOiAwO1xyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xyXG4gICAgaGVpZ2h0OiA5NHB4O1xyXG4gICAgLyogYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsqL1xyXG4gICAgLyogYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci12ZXJ5LWxpZ2h0LWdyYXk7Ki9cclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB9XHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgIGhlaWdodDogNjBweDtcclxuICB9XHJcbn1cclxuXHJcbi5sb2dvLWhvbGRlcixcclxuLm1lbnUtaWNvbi1ob2xkZXIge1xyXG4gIGhlaWdodDogOTZweDtcclxufVxyXG5cclxuLmxvZ28tZml4ZWQtY29udGFpbmVyLFxyXG4ubWVudS1pY29uLWZpeGVkLWNvbnRhaW5lciB7XHJcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblxyXG4gIGEge1xyXG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XHJcbiAgfVxyXG59XHJcblxyXG4ubG9nby1maXhlZC1jb250YWluZXIge1xyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XHJcbiAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4ubG9nbyB7XHJcbiAgd2lkdGg6IDE4MHB4O1xyXG4gIG1hcmdpbi10b3A6IDM2cHg7XHJcbiAgbWFyZ2luLWxlZnQ6IDM2cHg7XHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgIG1hcmdpbi10b3A6IDE4cHg7XHJcbiAgICBtYXJnaW4tbGVmdDogMThweDtcclxuICB9XHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICB3aWR0aDogMTIwcHg7XHJcbiAgICAgbWFyZ2luLXRvcDogMTJweDtcclxuICAgICBtYXJnaW4tbGVmdDogMThweDtcclxuICB9XHJcbn1cclxuXHJcbi5tZW51LWljb24ge1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICByaWdodDogMzZweDtcclxuICB0b3A6IDUwcHg7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgYm9yZGVyLWNvbG9yOiAjZmZmO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB6LWluZGV4OiAzO1xyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XHJcbiAgICB0b3A6IDM2cHg7XHJcbiAgICBjb2xvcjogJGNvbG9yLXZpdmlkLXJlZDtcclxuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXZpdmlkLXJlZDtcclxuICB9XHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgIHRvcDogMjJweDtcclxuICAgIHJpZ2h0OiAxOHB4O1xyXG4gIH1cclxuXHJcbiAgJjpob3ZlciB7XHJcbiAgICAubWVudS1pY29uLXRleHQge1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXZpdmlkLXJlZCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5tZW51LWljb24taGFtYnVyZ2VyLFxyXG4gICAgLm1lbnUtaWNvbi1oYW1idXJnZXI6YWZ0ZXIsXHJcbiAgICAubWVudS1pY29uLWhhbWJ1cmdlcjpiZWZvcmUge1xyXG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvci12aXZpZC1yZWQgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAubWVudS1pY29uLWhhbWJ1cmdlcjpiZWZvcmUge1xyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcclxuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgd2lkdGg6IDIzcHg7XHJcbiAgICAgIGxlZnQ6IDFweDtcclxuICAgIH1cclxuXHJcbiAgICAubWVudS1pY29uLWhhbWJ1cmdlcjphZnRlciB7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgd2lkdGg6IDIzcHg7XHJcbiAgICAgIGxlZnQ6IDFweDtcclxuICAgIH1cclxuXHJcbiAgICAubWVudS1pY29uLWhhbWJ1cmdlciB7XHJcbiAgICAgIGJvcmRlcjogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5tZW51LWljb24tdGV4dCB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIG1hcmdpbi1yaWdodDogOXB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICB9XHJcblxyXG4gIC5tZW51LWljb24taGFtYnVyZ2VyIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgd2lkdGg6IDI1cHg7XHJcbiAgICBib3JkZXI6IDJweCBzb2xpZDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbi10b3A6IDlweDtcclxuXHJcbiAgICAmOmFmdGVyLFxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiAnJztcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBsZWZ0OiAtMnB4O1xyXG4gICAgICB3aWR0aDogMjVweDtcclxuICAgICAgYm9yZGVyOiAycHggc29saWQ7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMjAwbXM7XHJcbiAgICAgIHRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDIwMG1zO1xyXG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjAwbXM7XHJcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyMDBtcywgLXdlYmtpdC10cmFuc2Zvcm0gMjAwbXM7XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICB0b3A6IDVweDtcclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgdG9wOiAtOXB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm1lbnUtaWNvbi14IHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgd2lkdGg6IDI1cHg7XHJcbiAgICBoZWlnaHQ6IDI1cHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW4tdG9wOiAxMXB4O1xyXG5cclxuICAgICY6YWZ0ZXIsXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGxlZnQ6IC0ycHg7XHJcbiAgICAgIHdpZHRoOiAyNXB4O1xyXG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDIwMG1zO1xyXG4gICAgICB0cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAyMDBtcztcclxuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zO1xyXG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjAwbXMsIC13ZWJraXQtdHJhbnNmb3JtIDIwMG1zO1xyXG4gICAgfVxyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XHJcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyOmFmdGVyLFxyXG4gICAgJjpob3ZlcjpiZWZvcmUge1xyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLm1pZG5pZ2h0SGVhZGVyLmRlZmF1bHQge31cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcclxuICAubWlkbmlnaHRIZWFkZXIud2hpdGUge1xyXG4gICAgLm1lbnUtaWNvbi5hb3MtYW5pbWF0ZSB7XHJcbiAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICBib3JkZXItY29sb3I6ICNmZmY7XHJcbiAgICB9XHJcblxyXG4gICAgaW1nIHtcclxuICAgICAgLXdlYmtpdC1maWx0ZXI6IGJyaWdodG5lc3MoMCkgaW52ZXJ0KDEpO1xyXG4gICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMCkgaW52ZXJ0KDEpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vKiBTZWN0aW9uIGhlYWRlciovXHJcblxyXG4uc2VjdGlvbi1oZWFkZXIge1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBtYXJnaW4tYm90dG9tOiA1NHB4O1xyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzNnB4O1xyXG4gIH1cclxufVxyXG4iLAoJCSIvKiBtYWluOiAuLi9tYWluLnNjc3MqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBmaWxlIGNvbnRhaW5zIGFsbCBzdHlsZXMgcmVsYXRlZCB0byB0aGUgZm9vdGVyIG9mIHRoZSBzaXRlL2FwcGxpY2F0aW9uLiovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbmZvb3RlciB7XG4gIHBhZGRpbmctdG9wOiAzNnB4O1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAzNnB4O1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyN3B4O1xuICB9XG5cbiAgLmZvb3Rlci1ib3JkZXIge1xuICAgIGJvcmRlci10b3A6IDNweCBzb2xpZCAjZTNlM2UzO1xuICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjZTNlM2UzO1xuICAgIHBhZGRpbmc6IDM2cHggMThweDtcbiAgICBtYXJnaW4tYm90dG9tOiA3MnB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzNnB4O1xuICAgIH1cbiAgfVxufVxuXG4uY29weXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiA5MHB4O1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzZweDtcbiAgfVxufVxuXG4uc29jaWFsLW5hdiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDE4cHg7XG4gIHRvcDogLTJweDtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IC02M3B4O1xuICB9XG59XG5cbi5zb2NpYWwxLCAuc29jaWFsMiwgLnNvY2lhbDMge1xuICB3aWR0aDogNjJweDtcbiAgaGVpZ2h0OiA2MnB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjZTNlM2UzO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgYSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgaW1nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgfVxufVxuXG4uc29jaWFsMiB7XG4gIHJpZ2h0OiA2MHB4O1xuICB0b3A6IC0ycHg7XG4gIGhlaWdodDogNjNweDtcbn1cblxuLnNvY2lhbDMge1xuICB0b3A6IC00cHg7XG59XG4iLAoJCSIvKiBtYWluOiAuLi9tYWluLnNjc3MqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBmaWxlIGNvbnRhaW5zIGFsbCBzdHlsZXMgcmVsYXRlZCB0byB0aGUgbWVudSBvZiB0aGUgc2l0ZS9hcHBsaWNhdGlvbi4qL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4ubWVudSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6IDQwJTtcbiAgYmFja2dyb3VuZDogI2U1MWU0YTsgLyogT2xkIGJyb3dzZXJzICovIC8qIEZGMy42LTE1ICovIC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNlNTFlNGEgMCUsIzU2MTQ1NCAxMDAlKTsgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjZTUxZTRhJywgZW5kQ29sb3JzdHI9JyM1NjE0NTQnLEdyYWRpZW50VHlwZT0xICk7IC8qIElFNi05IGZhbGxiYWNrIG9uIGhvcml6b250YWwgZ3JhZGllbnQgKi9cbiAgei1pbmRleDogMjAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIHBhZGRpbmctdG9wOiAxMzBweDtcbiAgcGFkZGluZy1sZWZ0OiAzNnB4O1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIH1cblxuICB1bCA+IGxpID4gYSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgcGFkZGluZzogMThweCA3MnB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICBsaW5lLWhlaWdodDogNzJweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMzAwbXM7XG4gICAgdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMzAwbXM7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDMwMG1zO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMDBtcywgLXdlYmtpdC10cmFuc2Zvcm0gMzAwbXM7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA1NHB4O1xuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZjk1Mzg0O1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE4cHgpO1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE4cHgpO1xuICAgIH1cbiAgfVxuXG4gIHVsID4gbGkuYWN0aXZlIGEge1xuICAgIGNvbG9yOiAjZjk1Mzg0O1xuICAgIC8qIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMThweCk7Ki9cbiAgfVxufVxuXG4jdXAtYW5jaG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cbiIsCgkJIi8qIG1haW46IC4uL21haW4uc2NzcyovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGZpbGUgY29udGFpbnMgYWxsIHN0eWxlcyByZWxhdGVkIHRvIHRoZSBwYWdlIG5hdmlnYXRpb24gb2YgdGhlIHNpdGUvYXBwbGljYXRpb24uKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnBhZ2UtbmF2IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDM2cHg7XG4gIHJpZ2h0OiAzNnB4O1xufVxuXG4udGlsZS0tbmF2IHtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgcGFkZGluZzogMTBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDE4cHg7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIHBhZGRpbmc6IDEwcHg7XG59XG4iLAoJCSIvKiBtYWluOiAuLi9tYWluLnNjc3MqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBmaWxlIGNvbnRhaW5zIGFsbCBzdHlsZXMgcmVsYXRlZCB0byB0aGUgZm9ybSBvZiB0aGUgc2l0ZS9hcHBsaWNhdGlvbi4qL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDE4cHg7XG59XG5cbi5mb3JtLWxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5mb3JtLWNvbnRyb2wge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U0ZTRlNDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgbGluZS1oZWlnaHQ6IDU0cHg7XG4gIHBhZGRpbmc6IDAgOXB4O1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmUtd2lkdGg6IDFweDtcbiAgICBvdXRsaW5lLWNvbG9yOiAjZTRlNGU0O1xuICB9XG59XG5cbi5mb3JtLWNvbnRyb2wuaW5wdXQtdmFsaWRhdGlvbi1lcnJvciB7XG4gIGJvcmRlci1jb2xvcjogJGJyYW5kLWNvbG9yLXByaW1hcnk7XG59XG4iLAoJCSIvKiBtYWluOiAuLi9tYWluLnNjc3MqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBmaWxlIGNvbnRhaW5zIGFsbCBzdHlsZXMgcmVsYXRlZCB0byB0aGUgYnV0dG9uIGNvbXBvbmVudC4qL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uYnRuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogZ3JheTtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiA5cHggNTRweDtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gIG1hcmdpbi10b3A6IDE4cHg7XG4gIG1hcmdpbi1ib3R0b206IDE4cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLmJ0bi0tcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1jb2xvci1wcmltYXJ5O1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYnJhbmQtY29sb3ItcHJpbWFyeSwgMjAlKTtcbiAgfVxufVxuLmJ0bi0td2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBjb2xvcjogJGJyYW5kLWNvbG9yLXByaW1hcnk7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNvZnQtcGluaztcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxufVxuIiwKCQkiLyogbWFpbjogLi4vbWFpbi5zY3NzKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgZmlsZSBjb250YWlucyBhbGwgc3R5bGVzIHJlbGF0ZWQgdG8gdGhlIHBhbmVsIGNvbXBvbmVudC4qL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4ucGFuZWwge1xuICBwYWRkaW5nOiA3MnB4IDkwcHg7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTQ1OXB4KSB7XG4gICAgcGFkZGluZzogNTRweCA1NHB4IDcycHg7XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIHBhZGRpbmc6IDM2cHggMzZweCA1NHB4O1xuICB9XG59XG5cbi5wYW5lbC0tc2hhZG93IHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgNDBweCByZ2JhKDAsMCwwLC4xKTtcblx0Ym94LXNoYWRvdzogMCAwIDQwcHggcmdiYSgwLDAsMCwuMSk7XG59XG5cbi5wYW5lbC0tcHJpbWFyeSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjZTUxZTRhOyAvKiBPbGQgYnJvd3NlcnMgKi8gLyogRkYzLjYtMTUgKi8gLyogQ2hyb21lMTAtMjUsU2FmYXJpNS4xLTYgKi9cbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2U1MWU0YSAwJSwjNTYxNDU0IDEwMCUpOyAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyNlNTFlNGEnLCBlbmRDb2xvcnN0cj0nIzU2MTQ1NCcsR3JhZGllbnRUeXBlPTEgKTsgLyogSUU2LTkgZmFsbGJhY2sgb24gaG9yaXpvbnRhbCBncmFkaWVudCAqL1xuXG4gIGgxLCBoMiwgaDMge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG5cbiAgYSB7XG4gICAgY29sb3I6ICRjb2xvci1zb2Z0LXBpbms7XG4gIH1cbn1cblxuLnBhbmVsLS1sb3dlciB7XG4gIG1hcmdpbi10b3A6IDEyNnB4O1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTQ1OXB4KSB7XG4gICAgbWFyZ2luLXRvcDogMTA4cHg7XG4gIH1cbn1cblxuLnBhbmVsLS1sb3dlci1zbSB7XG4gIG1hcmdpbi10b3A6IDcycHg7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxNDU5cHgpIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi5wYW5lbC0tbG93ZXIsIC5wYW5lbC0tbG93ZXItc20ge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLnBhbmVsLS1uYXJyb3ctcmlnaHQge1xuICBwYWRkaW5nLXJpZ2h0OiAxNDRweDtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNDU5cHgpIHtcbiAgICBwYWRkaW5nOiAzNnB4IDA7XG4gIH1cbn1cblxuLnBhbmVsLS1jb25kZW5zZWQge1xuICBwYWRkaW5nOiA1NHB4IDU0cHggNzJweDtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIHBhZGRpbmc6IDM2cHggMCAzNnB4O1xuICB9XG59XG4iLAoJCSIvLyBtYWluOiAuLi9tYWluLnNjc3Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBUaGlzIGZpbGUgY29udGFpbnMgYWxsIHN0eWxlcyByZWxhdGVkIHRvIHRoZSB0aWxlIGNvbXBvbmVudC5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi50aWxlIHtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xufVxuXG4udGlsZS0tYm9yZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogYXV0bztcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAzcHggJGNvbG9yLXZlcnktbGlnaHQtZ3JheTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtM3B4O1xuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAmLmNvbGxhcHNlLWJvcmRlciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtM3B4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0zcHg7XG4gICAgICB9XG5cbiAgICAgICYuY29sbGFwc2UtYm9yZGVyLWJvdHRvbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0zcHg7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci1zdHJvbmctcGluaztcbiAgICAgICAgei1pbmRleDogMTA7XG4gICAgICB9XG4gICAgfVxuXG4gICY6OmFmdGVyLFxuICAmOjpiZWZvcmUge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIC8vIFNldCBib3JkZXIgdG8gaW52aXNpYmxlLCBzbyB3ZSBkb24ndCBzZWUgYSA0cHggYm9yZGVyIG9uIGEgMHgwIGVsZW1lbnQgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0c1xuICAgIGJvcmRlcjogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgfVxuXG4gIC8vIFRoaXMgY292ZXJzIHRoZSB0b3AgJiByaWdodCBib3JkZXJzIChleHBhbmRzIHJpZ2h0LCB0aGVuIGRvd24pXG4gICY6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgLy8gQW5kIHRoaXMgdGhlIGJvdHRvbSAmIGxlZnQgYm9yZGVycyAoZXhwYW5kcyBsZWZ0LCB0aGVuIHVwKVxuICAmOjphZnRlciB7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICB9XG5cblxuICAvLyBIb3ZlciBzdHlsZXNcbiAgJjpob3Zlcjo6YWZ0ZXIsXG4gICY6aG92ZXI6OmJlZm9yZSB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gICY6aG92ZXI6OmJlZm9yZSB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRicmFuZC1jb2xvci1wcmltYXJ5OyAvLyBNYWtlIGJvcmRlcnMgdmlzaWJsZVxuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkYnJhbmQtY29sb3ItcHJpbWFyeTtcbiAgICAgIHRyYW5zaXRpb246d2lkdGggMC4xNXMgZWFzZS1vdXQsLy8gV2lkdGggZXhwYW5kcyBmaXJzdFxuICAgICAgaGVpZ2h0IDAuMTVzIGVhc2Utb3V0IDAuMTVzOyAvLyBBbmQgdGhlbiBoZWlnaHRcbiAgICB9XG4gIH1cblxuICAmOmhvdmVyOjphZnRlciB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRicmFuZC1jb2xvci1wcmltYXJ5OyAvLyBNYWtlIGJvcmRlcnMgdmlzaWJsZVxuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRicmFuZC1jb2xvci1wcmltYXJ5O1xuICAgICAgdHJhbnNpdGlvbjpib3JkZXItY29sb3IgMHMgZWFzZS1vdXQgMC4zcywvLyBXYWl0IGZvciA6OmJlZm9yZSB0byBmaW5pc2ggYmVmb3JlIHNob3dpbmcgYm9yZGVyXG4gICAgICB3aWR0aCAwLjE1cyBlYXNlLW91dCAwLjNzLC8vIEFuZCB0aGVuIGV4YW5kaW5nIHdpZHRoXG4gICAgICBoZWlnaHQgMC4xNXMgZWFzZS1vdXQgMC40NXM7IC8vIEFuZCBmaW5hbGx5IGhlaWdodFxuICAgIH1cbiAgfVxuXG5cbn1cblxuLnRpbGUtLXByaW1hcnkge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogI2U1MWU0YTsgLyogT2xkIGJyb3dzZXJzICovXG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KC00NWRlZywgI2U1MWU0YSAwJSwgIzU2MTQ1NCAxMDAlKTsgLyogRkYzLjYtMTUgKi9cbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoLTQ1ZGVnLCAjZTUxZTRhIDAlLCM1NjE0NTQgMTAwJSk7IC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNlNTFlNGEgMCUsIzU2MTQ1NCAxMDAlKTsgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjZTUxZTRhJywgZW5kQ29sb3JzdHI9JyM1NjE0NTQnLEdyYWRpZW50VHlwZT0xICk7IC8qIElFNi05IGZhbGxiYWNrIG9uIGhvcml6b250YWwgZ3JhZGllbnQgKi9cblxuICBhIHtcbiAgICBjb2xvcjogJGNvbG9yLXNvZnQtcGluaztcbiAgfVxufVxuXG4udGlsZS0tZ3JheSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XG4gIGNvbG9yOiAkaGVhZGluZy1jb2xvcjtcbn1cblxuLnRpbGUtLWxpZ2h0LXBpbmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTcyMzRkO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnRpbGUtLXBpbmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzYxYzRjO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnRpbGUtLXB1cnBsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4NzE3NTE7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4udGlsZV9fY29udGVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLAoJCSIvKiBtYWluOiAuLi9tYWluLnNjc3MqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBmaWxlIGNvbnRhaW5zIGFsbCBzdHlsZXMgcmVsYXRlZCB0byB0aGUgc29jaWFsIG5hdiBjb21wb25lbnQuKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnNvY2lhbC1iYXItd3JhcCB7XG4gICAgbWFyZ2luLXRvcDogNTRweDtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMThweDtcbiAgICB9XG59XG5cbi5zb2NpYWwtYmFyIHtcbiAgYm9yZGVyOiAzcHggc29saWQgJGJyYW5kLWNvbG9yLXByaW1hcnk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMzZweCAxOHB4O1xufVxuXG4uc29jaWFsLWJhcl9faXRlbSB7XG4gIHdpZHRoOiAzNnB4O1xuICBoZWlnaHQ6IDM2cHg7XG4gIGJvcmRlci1yYWRpdXM6IDM2cHg7XG4gIGJvcmRlcjogM3B4IHNvbGlkICRicmFuZC1jb2xvci1wcmltYXJ5O1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiAxOHB4O1xuXG4gICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDE4cHg7XG4gIH1cbn1cbiIsCgkJIi8qIG1haW46IC4uL21haW4uc2NzcyovXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLyogVGhpcyBmaWxlIGNvbnRhaW5zIGFsbCBjc3MgZm9yIGN1c3RvbSBhbmltYXRpb25zLiovXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLyogSGlkZSB0b3AgYmFja2dyb3VuZCBsYXllciovXHJcbltkYXRhLWFvcz1cImhpZGVcIl0ge1xyXG4gIG9wYWNpdHk6IDE7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xyXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XHJcblxyXG4gICYuYW9zLWFuaW1hdGUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcbn1cclxuLyogSW52ZXJ0IGxvZ28gY29sb3IqL1xyXG5bZGF0YS1hb3M9XCJpbnZlcnQtbG9nb1wiXSB7XHJcbiAgLXdlYmtpdC1maWx0ZXI6IGJyaWdodG5lc3MoMCkgaW52ZXJ0KDEpO1xyXG4gIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBpbnZlcnQoMSk7XHJcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogLXdlYmtpdC1maWx0ZXI7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAtd2Via2l0LWZpbHRlcjtcclxuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBmaWx0ZXI7XHJcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogZmlsdGVyLCAtd2Via2l0LWZpbHRlcjtcclxuXHJcbiAgJi5hb3MtYW5pbWF0ZSB7XHJcbiAgICAtd2Via2l0LWZpbHRlcjogYnJpZ2h0bmVzcygxKSBpbnZlcnQoMCk7XHJcbiAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMSkgaW52ZXJ0KDApO1xyXG4gIH1cclxufVxyXG4vKiBJbnZlcnQgbWVudSBpY29uIGNvbG9yKi9cclxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzEwMDAnXS5hb3MtYW5pbWF0ZTphZnRlcixcclxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzEwMDAnXS5hb3MtYW5pbWF0ZTpiZWZvcmUge1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogMTAwMG1zO1xyXG4gIHRyYW5zaXRpb24tZGVsYXk6IDEwMDBtcztcclxufVxyXG5cclxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzEwMDAnXTphZnRlcixcclxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzEwMDAnXTpiZWZvcmUge1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMTAwMG1zO1xyXG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDEwMDBtcztcclxufVxyXG5cclxuW2RhdGEtYW9zPVwiaW52ZXJ0LW1lbnVcIl0ge1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3IsIGJvcmRlci1jb2xvcjtcclxuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvciwgYm9yZGVyLWNvbG9yO1xyXG5cclxuICAmLmFvcy1hbmltYXRlIHtcclxuICAgIGJvcmRlci1jb2xvcjogJGhlYWRpbmctY29sb3I7XHJcbiAgICBjb2xvcjogJGhlYWRpbmctY29sb3I7XHJcbiAgfVxyXG59XHJcbi8qIE1vdmUgdHJpdGltIHRleHQqL1xyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNDYwcHgpIHtcclxuICBbZGF0YS1hb3M9XCJtb3ZlLXRyaXRpbVwiXSB7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtO1xyXG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogLXdlYmtpdC10cmFuc2Zvcm07XHJcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XHJcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIC13ZWJraXQtdHJhbnNmb3JtO1xyXG5cclxuICAgICYuYW9zLWFuaW1hdGUge1xyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzcwcHgpO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTM3MHB4KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIFtkYXRhLWFvcz1cIm1vdmUtdHJpdGltLXRleHRcIl0ge1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBtYXJnaW4tcmlnaHQ7XHJcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBtYXJnaW4tcmlnaHQ7XHJcblxyXG4gICAgJi5hb3MtYW5pbWF0ZSB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBbZGF0YS1hb3M9XCJtb3ZlLXRyaXRpbS1iZ1wiXSB7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtcG9zaXRpb247XHJcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kLXBvc2l0aW9uO1xyXG5cclxuICAgICYuYW9zLWFuaW1hdGUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IDM3MHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5bZGF0YS1hb3M9XCJ0aWxlLWNvbG9yXCJdIHtcclxuICBiYWNrZ3JvdW5kOiAkdGV4dC1jb2xvcjtcclxuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQ7XHJcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZDtcclxuXHJcbiAgJi5hb3MtYW5pbWF0ZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZTUxZTRhO1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2U1MWU0YSAwJSwjNTYxNDU0IDEwMCUpO1xyXG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9ICcjZTUxZTRhJywgZW5kQ29sb3JzdHI9JyM1NjE0NTQnLEdyYWRpZW50VHlwZT0xICk7XHJcbiAgfVxyXG59XHJcbi8qIFBob25lIGFuaW1hdGlvbiovXHJcblxyXG5bZGF0YS1hb3M9XCJidXp6LW91dFwiXSB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcclxuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcclxuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XHJcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcclxuXHJcbiAgJi5hb3MtYW5pbWF0ZSB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItYnV6ei1vdXQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogaHZyLWJ1enotb3V0O1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDEuNzVzO1xyXG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjc1cztcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAzO1xyXG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMztcclxuICB9XHJcbn1cclxuQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1idXp6LW91dCB7XHJcbiAgMTAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpO1xyXG4gIH1cclxuXHJcbiAgMTUlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTtcclxuICB9XHJcblxyXG4gIDIwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTtcclxuICB9XHJcblxyXG4gIDI1JSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZyk7XHJcbiAgfVxyXG5cclxuICAzMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGUoMWRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGUoMWRlZyk7XHJcbiAgfVxyXG5cclxuICAzNSUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCkgcm90YXRlKC0xZGVnKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KSByb3RhdGUoLTFkZWcpO1xyXG4gIH1cclxuXHJcbiAgNDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlKDFkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlKDFkZWcpO1xyXG4gIH1cclxuXHJcbiAgNDUlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCkgcm90YXRlKC0xZGVnKTtcclxuICB9XHJcblxyXG4gIDUwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxcHgpIHJvdGF0ZSgwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxcHgpIHJvdGF0ZSgwKTtcclxuICB9XHJcblxyXG4gIDU1JSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSByb3RhdGUoMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgcm90YXRlKDApO1xyXG4gIH1cclxufVxyXG5cclxuLndpZmktc3ltYm9sIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gICRjaXJjbGVDb2xvcjogI2ZmZjtcclxuICAkc2l6ZTogMTI1cHg7XHJcblxyXG4gICAmLFxyXG4gIFtmb29dIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDQ0MnB4O1xyXG4gICAgdG9wOiAtNzBweDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHdpZHRoOiAkc2l6ZTtcclxuICAgIGhlaWdodDogJHNpemU7XHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNDU5cHgpIHtcclxuICAgICAgcmlnaHQ6IDIwNHB4O1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgICAgcmlnaHQ6IDEyMHB4O1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC53aWZpLWNpcmNsZSB7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGZvbnQtc2l6ZTogJHNpemUvNztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBib3JkZXItY29sb3I6ICRjaXJjbGVDb2xvcjtcclxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgICBib3JkZXItd2lkdGg6IDRweCA0cHggMCAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMCAxMDAlIDAgMDtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG59XHJcbkAtd2Via2l0LWtleWZyYW1lcyB3aWZpYW5pbWF0aW9uIHtcclxuICA1MCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcbn1cclxuXHJcbltkYXRhLWFvcz1cIndpZmlcIl0ge1xyXG4gICYuYW9zLWFuaW1hdGUge1xyXG4gICAgLndpZmktY2lyY2xlIHtcclxuICAgICAgLXdlYmtpdC1hbmltYXRpb246IDEuNzVzIHdpZmlhbmltYXRpb24gMztcclxuICAgICAgYW5pbWF0aW9uOiAxLjc1cyB3aWZpYW5pbWF0aW9uIDM7XHJcblxyXG4gICAgICAmLmZpcnN0IHtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogNTAwbXM7XHJcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiA1MDBtcztcclxuICAgICAgfVxyXG5cclxuICAgICAgJi5zZWNvbmQge1xyXG4gICAgICAgIHdpZHRoOiA1ZW07XHJcbiAgICAgICAgaGVpZ2h0OiA1ZW07XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDQwMG1zO1xyXG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogNDAwbXM7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYudGhpcmQge1xyXG4gICAgICAgIHdpZHRoOiAzZW07XHJcbiAgICAgICAgaGVpZ2h0OiAzZW07XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDMwMG1zO1xyXG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMzAwbXM7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwKCQkiLyogbWFpbjogLi4vbWFpbi5zY3NzKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgZmlsZSBjb250YWlucyBhbGwgc3R5bGVzIHJlbGF0ZWQgdG8gdGhlIGJ1dHRvbiBjb21wb25lbnQuKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmNvb2tpZXMtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDMwcHg7XG4gIGxlZnQ6IDMwcHg7XG4gIHdpZHRoOiA0MDBweDtcbiAgcGFkZGluZzogMzBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWNvbG9yLXByaW1hcnk7XG4gIGNvbG9yOiAjZmZmO1xuICB6LWluZGV4OiA1MDAwMDA7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDI3cHg7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTAwcHgpIHtcbiAgICB3aWR0aDogMjUwcHg7XG4gICAgcGFkZGluZzogMTVweCAzMHB4O1xuXG4gICAgYnIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLmNvb2tpZXMtdGV4dCB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG4iLAoJCSIvKiBtYWluOiAuLi9tYWluLnNjc3MqL1xyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi8qIFRoaXMgZmlsZSBjb250YWlucyBzdHlsZXMgdGhhdCBhcmUgc3BlY2lmaWMgdG8gdGhlIGhvbWUgcGFnZS4qL1xyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG5cclxuLyogU2VjdGlvbiBJbnRybyovXHJcbi5zZWN0aW9uLWludHJvIHt9XHJcblxyXG4uYmFja2dyb3VuZGNsaXB0ZXh0IC5zZWN0aW9uLWludHJvX19iYWNrZ3JvdW5kLWJvdHRvbSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogMTAwdmg7XHJcbiAgbWluLWhlaWdodDogNTQwcHg7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodHJhbnNwYXJlbnQsIHRyYW5zcGFyZW50KSwgdXJsKCcuLi9pbWFnZXMvaW1nX2ludHJvX2Rlc2suanBnJyk7XHJcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XHJcbiAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCwgdHJhbnNwYXJlbnQpO1xyXG4gIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xyXG5cclxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBzY3JvbGw7XHJcbiAgfVxyXG5cclxuICBzcGFuLnByaW1hcnkge1xyXG4gICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6ICRicmFuZC1jb2xvci1wcmltYXJ5O1xyXG4gIH1cclxuXHJcbn1cclxuXHJcbkBzdXBwb3J0cyAoLW1zLWltZS1hbGlnbjphdXRvKSB7XHJcbiAgIC5zZWN0aW9uLWludHJvX19iYWNrZ3JvdW5kLWJvdHRvbSB7XHJcbiAgICAgICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xyXG4gICAgICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuLnNlY3Rpb24taW50cm9fX2JhY2tncm91bmQtdG9wIHtcclxuICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9pbWdfaW50cm9fZGVzay5qcGcnKTtcclxuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMHZoO1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIG1pbi1oZWlnaHQ6IDU0MHB4O1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblxyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IHNjcm9sbDtcclxuICB9XHJcbn1cclxuXHJcbi50ZXh0LXRyaXRpbSB7XHJcbiAgZm9udC1mYW1pbHk6ICdRYW5lbGFzU29mdERFTU8tRXh0cmFCb2xkJztcclxuICBmb250LXNpemU6IDI3NnB4O1xyXG4gIG1hcmdpbi10b3A6IDI3dmg7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XHJcbiAgICBmb250LXNpemU6IDE3MHB4O1xyXG4gIH1cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzlweCkge1xyXG4gICAgZm9udC1zaXplOiAxMTVweDtcclxuICB9XHJcbn1cclxuXHJcbi50ZXh0LWludHJvIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTQ2MHB4KSB7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiA3MHB4O1xyXG4gICAgbWFyZ2luLXRvcDogMThweDtcclxuICB9XHJcbn1cclxuXHJcbi5zZWN0aW9uLWludHJvX19iYWNrZ3JvdW5kLWJvdHRvbSAudGV4dC1pbnRybyB7XHJcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiAkdGV4dC1jb2xvcjtcclxufVxyXG5cclxuLmFuaW1hdGlvbi1pbnRyby13cmFwIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdG9wOiAwO1xyXG59XHJcblxyXG4uYW5pbWF0aW9uLWludHJvIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAxNnZoO1xyXG4gIHJpZ2h0OiAwO1xyXG59XHJcblxyXG5cclxuLyogU2VjdGlvbiBIZXJvKi9cclxuLnNlY3Rpb24taGVybyB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAzNjBweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgYmFja2dyb3VuZDogI2U1MWU0YTsgLyogT2xkIGJyb3dzZXJzICovIC8qIEZGMy42LTE1ICovIC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXHJcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDIzOGRlZywgI2U2Mjk1MSwgIzczMWU1MywgIzQwMjc1Mik7XHJcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQgKEdyYWRpZW50VHlwZT0wLCBzdGFydENvbG9yc3RyPSNlNjI5NTEsIGVuZENvbG9yc3RyPSM0MDI3NTIpXCI7XHJcbiAgYmFja2dyb3VuZC1zaXplOiAyMDAlIDIwMCU7XHJcbiAgLXdlYmtpdC1hbmltYXRpb246IEFuaW1hdGlvbk5hbWUgMnMgZWFzZSBpbmZpbml0ZTtcclxuICBhbmltYXRpb246IEFuaW1hdGlvbk5hbWUgMnMgZWFzZSBpbmZpbml0ZTtcclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgaGVpZ2h0OiA0NXZ3O1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgIGhlaWdodDogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgfVxyXG59XHJcbkAtd2Via2l0LWtleWZyYW1lcyBBbmltYXRpb25OYW1lIHtcclxuICAwJSB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDg3JTtcclxuICB9XHJcblxyXG4gIDUwJSB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDE0JTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCA4NyU7XHJcbiAgfVxyXG59XHJcbkBrZXlmcmFtZXMgQW5pbWF0aW9uTmFtZSB7XHJcbiAgMCUge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCA4NyU7XHJcbiAgfVxyXG5cclxuICA1MCUge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAxNCU7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgODclO1xyXG4gIH1cclxufVxyXG5cclxuLmhlcm8tdGV4dDEge1xyXG4gIHRvcDogMTAwcHg7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG1hcmdpbjogMCBhdXRvO1xyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICB0b3A6IDEydnc7XHJcbiAgfVxyXG59XHJcblxyXG4uaGVyby10ZXh0MiB7XHJcbiAgdG9wOiAxMDBweDtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgIHRvcDogMTJ2dztcclxuICB9XHJcbn1cclxuXHJcbi5oZXJvLWJ1bGItd3JhcCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLmhlcm8tYnVsYiB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHJpZ2h0OiAxMCU7XHJcbiAgdG9wOiA3MXB4O1xyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE0NTlweCkge1xyXG4gICAgcmlnaHQ6IC05JTtcclxuICB9XHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTEyMHB4KSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLmhlcm8tYnVsYi1nbG93IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgcmlnaHQ6IDEwJTtcclxuICB0b3A6IDcxcHg7XHJcbiAgb3BhY2l0eTogMDtcclxuICAtd2Via2l0LWFuaW1hdGlvbjogMnMgZ2xvdyBlYXNlIGluZmluaXRlO1xyXG4gICAgICAgICAgYW5pbWF0aW9uOiAycyBnbG93IGVhc2UgaW5maW5pdGU7XHJcbiAgLXdlYmtpdC1maWx0ZXI6IHNlcGlhKDEpIGNvbnRyYXN0KDMpO1xyXG4gICAgICAgICAgZmlsdGVyOiBzZXBpYSgxKSBjb250cmFzdCgzKTtcclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNDU5cHgpIHtcclxuICAgIHJpZ2h0OiAtOSU7XHJcbiAgfVxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExMjBweCkge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuQC13ZWJraXQta2V5ZnJhbWVzIGdsb3cge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG5cclxuICA0MCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcbn1cclxuQGtleWZyYW1lcyBnbG93IHtcclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxuXHJcbiAgNDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLyogU2VjdGlvbiBMYXRlc3QgcHJvamVjdCovXHJcbi5hcnRpY2xlLWxhdGVzdC1wcm9qZWN0IHtcclxuICBtYXJnaW4tYm90dG9tOiA1NHB4O1xyXG59XHJcblxyXG4uYXJ0aWNsZS1sYXRlc3QtcHJvamVjdF9faW1nLXBob25lIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAzOTZweDtcclxuICBsZWZ0OiAxNjBweDtcclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XHJcbiAgICBib3R0b206IC0xMzVweDtcclxuICAgIHJpZ2h0OiAxMDhweDtcclxuICAgIHRvcDogYXV0bztcclxuICAgIGxlZnQ6IGF1dG87XHJcbiAgfVxyXG59XHJcblxyXG4uc2hhcGVzIC5hcnRpY2xlLWxhdGVzdC1wcm9qZWN0X19zaGFwZS1waG9uZSB7XHJcbiAgZmxvYXQ6IHJpZ2h0O1xyXG4gIC13ZWJraXQtc2hhcGUtb3V0c2lkZTogcG9seWdvbigxMDAlIDU2JSwgNjAlIDEwMCUsIDYzJSA2MCUpO1xyXG4gIHNoYXBlLW91dHNpZGU6IHBvbHlnb24oMTAwJSA1NiUsIDYwJSAxMDAlLCA2MyUgNjAlKTtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDI1MnB4O1xyXG59XHJcblxyXG4uYXJ0aWNsZS1sYXRlc3QtcHJvamVjdF9fcXVvdGUge1xyXG4gIGZsb2F0OiByaWdodDtcclxuICB3aWR0aDogNTc4cHg7XHJcbiAgcGFkZGluZzogMzZweCA1NHB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB6LWluZGV4OiAyO1xyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE0NTlweCkge1xyXG4gICAgZmxvYXQ6IG5vbmU7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICB9XHJcbn1cclxuXHJcbi5xdW90ZV9faWNvbiB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHJpZ2h0OiA1NHB4O1xyXG59XHJcblxyXG5cclxuLyogU2VjdGlvbiBMYXRlc3QgYmxvZyovXHJcbi5hcnRpY2xlLWxhdGVzdC1wb3N0IHtcclxuICBtYXJnaW4tdG9wOiAxMzVweDtcclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzlweCkge1xyXG4gICAgbWFyZ2luLXRvcDogMTA4cHg7XHJcbiAgfVxyXG5cclxuICAucGFuZWwtLWxvd2VyLXNtIHtcclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmFydGljbGUtbGF0ZXN0LXBvc3RfX2hlYWRpbmcge1xyXG4gIG1hcmdpbi1sZWZ0OiAzNnB4O1xyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuICB9XHJcbn1cclxuXHJcbi5hcnRpY2xlLWxhdGVzdC1wb3N0X190aWxlIHtcclxuICB0b3A6IC04NXB4O1xyXG4gIHJpZ2h0OiA0NCU7XHJcbiAgd2lkdGg6IDI2NXB4O1xyXG4gIGhlaWdodDogMjY1cHg7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNDU5cHgpIHtcclxuICAgIHRvcDogLTc1cHg7XHJcbiAgICB3aWR0aDogMjAwcHg7XHJcbiAgICBoZWlnaHQ6IDIwMHB4O1xyXG4gIH1cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xyXG4gICAgdG9wOiAtODVweDtcclxuICAgIGxlZnQ6IDM2cHg7XHJcbiAgICB3aWR0aDogMjAwcHg7XHJcbiAgICBoZWlnaHQ6IDIwMHB4O1xyXG4gIH1cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzlweCkge1xyXG4gICAgd2lkdGg6IDE2MHB4O1xyXG4gICAgaGVpZ2h0OiAxNjBweDtcclxuICAgIGxlZnQ6IDM2cHg7XHJcbiAgICB0b3A6IC03MnB4O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8qIFNlY3Rpb24gc2VydmljZXMqL1xyXG4udGlsZS0tc2VydmljZSB7XHJcbiAgaGVpZ2h0OiAzMjBweDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgIGhlaWdodDogMjc1cHg7XHJcbiAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uaWNvbi1zZXJ2aWNlIHtcclxuICBtYXJnaW4tYm90dG9tOiAzNnB4O1xyXG59XHJcblxyXG5cclxuLyogU2VjdGlvbiBjb250YWN0Ki9cclxuLnNlY3Rpb24tY29udGFjdCB7XHJcbiAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvaW1nX2NvbnRhY3RfYmcuanBnJyk7XHJcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogMTAwdmg7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICBjb2xvcjogI2ZmZjtcclxuICBtaW4taGVpZ2h0OiA2NTZweDtcclxufVxyXG5cclxuLnNlY3Rpb24tY29udGFjdF9faW1nLXBob25lIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG4gIHBhZGRpbmctdG9wOiAxOHB4O1xyXG5cclxuICAgaW1nIHtcclxuICAgICBtYXgtaGVpZ2h0OiA2NXZoO1xyXG4gICAgIG1pbi1oZWlnaHQ6IDM3MXB4O1xyXG4gICB9XHJcbn1cclxuXHJcbi5zZWN0aW9uLWNvbnRhY3RfX21haWwge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB3aWR0aDogNTAlO1xyXG4gIGxlZnQ6IDI1JTtcclxuICBoZWlnaHQ6IDE1MHB4O1xyXG4gIHRvcDogMTQ1cHg7XHJcbiAgcGFkZGluZy10b3A6IDcwcHg7XHJcblxyXG4gICY6aG92ZXIge1xyXG4gICAgY29sb3I6ICRjb2xvci1zb2Z0LXBpbms7XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NjBweCkge1xyXG4gICAgdG9wOiAyNHZ3O1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDE5cHgpe1xyXG4gICAgaGVpZ2h0OiAxMDBweDtcclxuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDkwMHB4KXtcclxuICAgIHRvcDogMTR2aDtcclxuICB9XHJcblxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiA0MDBweCkge1xyXG4gICAgdG9wOiAyNHZoO1xyXG4gIH1cclxufVxyXG5cclxuLnNlY3Rpb24tY29udGFjdF9fcGhvbmUge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB3aWR0aDogNTAlO1xyXG4gIGxlZnQ6IDI1JTtcclxuICBoZWlnaHQ6IDE1MHB4O1xyXG4gIHRvcDogMzYwcHg7XHJcbiAgcGFkZGluZy10b3A6IDcwcHg7XHJcblxyXG4gICY6aG92ZXIge1xyXG4gICAgY29sb3I6ICRjb2xvci1zb2Z0LXBpbms7XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NjBweCkge1xyXG4gICAgdG9wOiA2MXZ3O1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDE5cHgpe1xyXG4gICAgaGVpZ2h0OiAxMDBweDtcclxuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDkwMHB4KSB7XHJcbiAgICB0b3A6IDM2dmg7XHJcbiAgfVxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiA2NTBweCkge1xyXG4gICAgdG9wOiA0MHZoO1xyXG4gIH1cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogNDUwcHgpIHtcclxuICAgIHRvcDogNTB2aDtcclxuICB9XHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDQwMHB4KSB7XHJcbiAgICB0b3A6IDU3dmg7XHJcbiAgfVxyXG59XHJcbiIsCgkJIi8qIG1haW46IC4uL21haW4uc2NzcyovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGZpbGUgY29udGFpbnMgc3R5bGVzIHRoYXQgYXJlIHNwZWNpZmljIHRvIHRoZSByZWZyZW5jZXMgcGFnZS4qL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTZWN0aW9uIFJlZmVyZW5jZXMqL1xuLnNlY3Rpb24tcmVmZXJlbmNlcyB7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MXB4KSB7XG4gICAgbWFyZ2luLXRvcDogNzJweDtcbiAgfVxufVxuXG4ubmF2LXJlZmVyZW5jZXMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDM2cHg7XG4gIHBhZGRpbmctdG9wOiAxOHB4O1xufVxuXG4ubmF2LXJlZmVyZW5jZXMgLm5hdiB7XG4gIGJvcmRlcjogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDA7XG5cbiAgbGkgYSB7XG4gICAgYm9yZGVyOiAwO1xuICAgIG1hcmdpbjogMzZweCAxMjZweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAxOHB4O1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgICBmb250LWZhbWlseTogJHRleHQtZm9udC1zdGFjaztcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogI2I4YjhiODtcbiAgICBib3JkZXItYm90dG9tOiA1cHggc29saWQgI2I4YjhiODtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAzMDBtcztcbiAgICB0cmFuc2l0aW9uOiBhbGwgMzAwbXM7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgbWFyZ2luOiAwIDE4cHg7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogOXB4O1xuICAgIH1cblxuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgICBib3JkZXItYm90dG9tOiA1cHggc29saWQgJGJyYW5kLWNvbG9yLXByaW1hcnk7XG4gICAgfVxuICB9XG5cbiAgbGkuYWN0aXZlIGEge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBib3JkZXItYm90dG9tOiA1cHggc29saWQgJGJyYW5kLWNvbG9yLXByaW1hcnk7XG4gIH1cblxufVxuXG4ucmVmZXJlbmNlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiA5MHB4O1xuICBoZWlnaHQ6IDQ1NXB4O1xuXG4gID4gYSB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxNDU5cHgpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiA1NHB4O1xuICB9XG5cbiAgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTQ1OXB4KSB7XG4gICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBsZWZ0OiAtMzAlO1xuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIgLnJlZmVyZW5jZV9fZGVzY3JpcHRpb24ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmOmhvdmVyIC5yZWZlcmVuY2VfX2JhY2tncm91bmQgaW1nIHtcbiAgICB6LWluZGV4OiA0O1xuICAgIC13ZWJraXQtZmlsdGVyOiBicmlnaHRuZXNzKDApIGludmVydCgxKTtcbiAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBpbnZlcnQoMSk7XG4gIH1cblxufVxuXG4jY3VzdG9tZXJzIC5yZWZlcmVuY2Uge1xuICBtYXJnaW4tYm90dG9tOiAzNnB4O1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMThweDtcblxuICAgIC5yZWZlcmVuY2VfX2Rlc2NyaXB0aW9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlciBpbWcge1xuICAgIC13ZWJraXQtZmlsdGVyOiBicmlnaHRuZXNzKDApIGludmVydCgxKTtcbiAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBpbnZlcnQoMSk7XG4gIH1cblxuICBpbWcge1xuICAgIC13ZWJraXQtZmlsdGVyOiBicmlnaHRuZXNzKDApIGludmVydCgwLjgpO1xuICAgICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDApIGludmVydCgwLjgpO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxNDU5cHgpIHtcbiAgICAgIG1pbi1oZWlnaHQ6IGluaXRpYWw7XG4gICAgICBtaW4td2lkdGg6IGluaXRpYWw7XG4gICAgICB3aWR0aDogNDUlO1xuICAgICAgbWF4LXdpZHRoOiBpbml0aWFsO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICB9XG5cbn1cblxuLnJlZmVyZW5jZV9fZGVzY3JpcHRpb24ge1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDM7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMzAwbXM7XG4gIHRyYW5zaXRpb246IGFsbCAzMDBtcztcbiAgcGFkZGluZzogNzJweDtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNDU5cHgpIHtcbiAgICBwYWRkaW5nOiAzNnB4O1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDM2cHggMzZweCA1NHB4O1xuICAgIG1hcmdpbi10b3A6IDE4cHg7XG4gIH1cbn1cblxuLnJlZmVyZW5jZV9fYmFja2dyb3VuZCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDQ1NXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBoZWlnaHQ6IDMyMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhYmI0YmM7XG4gIH1cblxuICBpbWcge1xuICAgIHdpZHRoOiA0NSU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLXdlYmtpdC1maWx0ZXI6IGJyaWdodG5lc3MoMCkgaW52ZXJ0KDEpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBpbnZlcnQoMSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsCgkJIi8qIG1haW46IC4uL21haW4uc2NzcyovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBUaGlzIGZpbGUgY29udGFpbnMgc3R5bGVzIHRoYXQgYXJlIHNwZWNpZmljIHRvIHRoZSBwcm9qZWN0cyBwYWdlcy4qL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uYXJ0aWNsZS1wcm9qZWN0IHtcbiAgbWFyZ2luLXRvcDogMTA4cHg7XG4gIG1hcmdpbi1ib3R0b206IDM2MHB4O1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5cbi5hcnRpY2xlLXByb2plY3RfX3RpbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAtMzZweDtcbiAgdG9wOiAtNzJweDtcbiAgd2lkdGg6IDI2NXB4O1xuICBoZWlnaHQ6IDI2NXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIHdpZHRoOiAxNDBweDtcbiAgICBoZWlnaHQ6IDE0MHB4O1xuICAgIHJpZ2h0OiAwcHg7XG4gIH1cbn1cblxuLmFydGljbGUtcHJvamVjdF9faW1nMiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIC8qIHRvcDogLTE2MnB4OyovXG59XG4iLAoJCSIvKiBtYWluOiAuLi9tYWluLnNjc3MqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBmaWxlIGNvbnRhaW5zIHN0eWxlcyB0aGF0IGFyZSBzcGVjaWZpYyB0byB0aGUgcHJvamVjdHMgcGFnZXMuKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuXG4uc2VjdGlvbi1zZXJ2aWNlcywgLnNlY3Rpb24tc2VydmljZSB7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MXB4KSB7XG4gICAgbWFyZ2luLXRvcDogNzJweDtcbiAgfVxufVxuXG4uc2VydmljZS13cmFwIHtcbiAgd2lkdGg6IDIwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctbGVmdDogMThweDtcbiAgcGFkZGluZy1yaWdodDogMThweDtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNDU5cHgpIHtcbiAgICB3aWR0aDogMzMuMzMzMyVcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDUwMHB4KSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLnNlcnZpY2Uge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIG1hcmdpbi10b3A6IDM2cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAzMDBtcztcbiAgdHJhbnNpdGlvbjogYWxsIDMwMG1zO1xuICBoZWlnaHQ6IDQxMHB4O1xuXG5cbiAgJjpob3ZlciB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogOHB4IDUzcHggNjBweCByZ2JhKDAsMCwwLC41KTtcbiAgICBcdGJveC1zaGFkb3c6IDhweCA1M3B4IDYwcHggcmdiYSgwLDAsMCwuNSk7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLnRpbGUge1xuICAgIG1hcmdpbi1ib3R0b206IDM2cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogNDEwcHg7XG4gICAgdG9wOiAtMTYwcHg7XG4gIH1cblxuICAudGlsZV9fY29udGVudF9fd3JhcCB7XG4gICAgcGFkZGluZzogMTc4cHggMThweCAxOHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4uaW1nLXNlcnZpY2UtdGlsZSB7XG4gIHdpZHRoOjEwMCU7XG4gIGhlaWdodDogMTYwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn1cblxuLnNlY3Rpb24tc2VydmljZSAucGFuZWwge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIHBhZGRpbmc6IDM2cHggMThweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5hcnRpY2xlLXNlcnZpY2Uge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIG1hcmdpbi1ib3R0b206IDcycHg7XG4gIH1cblxuICB1bCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxOHB4O1xuICB9XG59XG4iLAoJCSIvKiBtYWluOiAuLi9tYWluLnNjc3MqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGhpcyBmaWxlIGNvbnRhaW5zIHN0eWxlcyB0aGF0IGFyZSBzcGVjaWZpYyB0byB0aGUgYmxvZyBwYWdlLiovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFNlY3Rpb24gQmxvZyovXG4uc2VjdGlvbi1ibG9nIHtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkxcHgpIHtcbiAgICBtYXJnaW4tdG9wOiA3MnB4O1xuICB9XG59XG5cbi5hcnRpY2xlLXBvc3QsIC5hcnRpY2xlLXBvc3QtZGV0YWlsIHtcbiAgbWFyZ2luLWJvdHRvbTogNTRweDtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAmOmZpcnN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi10b3A6IDkwcHg7XG4gIH1cbn1cblxuLmFydGljbGUtcG9zdF9fdGlsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTM2cHg7XG4gIHRvcDogLTcycHg7XG4gIHdpZHRoOiAyNjVweDtcbiAgaGVpZ2h0OiAyNjVweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTQ1OXB4KSB7XG4gICAgd2lkdGg6IDIyMHB4O1xuICAgIGhlaWdodDogMjIwcHg7XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIGxlZnQ6IDE4cHg7XG4gICAgdG9wOiAtNzJweDtcbiAgICB3aWR0aDogMTgwcHg7XG4gICAgaGVpZ2h0OiAxODBweDtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3OXB4KSB7XG4gICAgd2lkdGg6IDE0MHB4O1xuICAgIGhlaWdodDogMTQwcHg7XG4gIH1cbn1cblxuLmFydGljbGUtcG9zdF9fcGFuZWwge1xuICBtYXJnaW4tbGVmdDogLTEwOHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTQ1OXB4KSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLmFydGljbGUtcG9zdC1kZXRhaWxfX3BhbmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogLTE2MHB4O1xuICB6LWluZGV4OiAyO1xuICB0b3A6IDIwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgd2lkdGg6IDUwMHB4O1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuIiwKCQkiLyogbWFpbjogLi4vbWFpbi5zY3NzKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRoaXMgZmlsZSBjb250YWlucyBzdHlsZXMgdGhhdCBhcmUgc3BlY2lmaWMgdG8gdGhlIGJsb2cgcGFnZS4qL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTZWN0aW9uIEJsb2cqL1xuLnNlY3Rpb24tYWJvdXQge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTFweCkge1xuICAgIG1hcmdpbi10b3A6IDcycHg7XG4gIH1cbn1cblxuLmFydGljbGUtYWJvdXQge1xuICBtYXJnaW4tYm90dG9tOiA1NHB4O1xuICBtYXJnaW4tdG9wOiA5MHB4O1xufVxuXG4uYXJ0aWNsZS1hYm91dF9fcGFuZWwge1xuICBtYXJnaW4tdG9wOiAtMTQ0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgd2lkdGg6IDgwJTtcbiAgbGVmdDogMTAlO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5mb3JtLWFib3V0IHtcbiAgcGFkZGluZzogMThweCA1NHB4O1xuXG4gIC5wbDAge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBwYWRkaW5nOiAxOHB4IDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlM2UzZTM7XG4gIH1cblxuICAuYm9yZGVyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZTNlM2UzO1xuICAgIHBhZGRpbmctcmlnaHQ6IDU0cHg7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG4gIH1cbn1cblxuI2pzLW1hcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDQwMDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbiNtYXAge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4udGlsZS0tbWFwIHtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA1O1xuICByaWdodDogMThweDtcbiAgdG9wOiAxOHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmc6IDEwcHg7XG59XG4iLAoJCSIvKiBtYWluOiAuLi9tYWluLnNjc3MqL1xyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi8qIFRoaXMgZmlsZSBjb250YWlucyBzdHlsZXMgdGhhdCBhcmUgc3BlY2lmaWMgdG8gdGhlIDQwNCBwYWdlLiovXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLndyYXAtNDA0IHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIG1hcmdpbi10b3A6IDE1dmg7XHJcblxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICBtYXJnaW4tdG9wOiA3dmg7XHJcbiAgfVxyXG59XHJcblxyXG4udGV4dC00MDQge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDE1JTtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICB3aWR0aDogNzAlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuXHJcbn1cclxuXHJcbi5pbWctNDA0IHtcclxuICB3aWR0aDogNzAlO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB6LWluZGV4OiAyO1xyXG59XHJcblxyXG4udGlsZS00MDQge1xyXG4gIHdpZHRoOiAyNTVweDtcclxuICBoZWlnaHQ6IDI1NXB4O1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDE2MHB4O1xyXG4gIHotaW5kZXg6IDM7XHJcbiAgbGVmdDogOTBweDtcclxuICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgJjpob3ZlciB7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNDU5cHgpIHtcclxuICAgIHdpZHRoOiAxODBweDtcclxuICAgIGhlaWdodDogMTgwcHg7XHJcbiAgICB0b3A6IDEwMHB4O1xyXG4gIH1cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xyXG4gICAgdG9wOiA2NnB4O1xyXG4gICAgbGVmdDogMjVweDtcclxuICB9XHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHRvcDogMThweDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4ubm9pc2VDb250YWluIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDE1JTtcclxuICB3aWR0aDogNzAlO1xyXG4gIGhlaWdodDogNjAwcHg7XHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTQ1OXB4KSB7XHJcbiAgICBoZWlnaHQ6IDQwMHB4O1xyXG4gIH1cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xyXG4gICAgaGVpZ2h0OiAzMDBweDtcclxuICB9XHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgIGhlaWdodDogNDF2dztcclxuICB9XHJcbn1cclxuXHJcbi5ub2lzZUNvbnRhaW4gZGl2IHtcclxuICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gIG9wYWNpdHk6IDAuOTtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9ub2lzZS5qcGcnKTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgLXdlYmtpdC1hbmltYXRpb246IG5vaXNlQW5pbSAwLjVzIGluZmluaXRlIGxpbmVhciBhbHRlcm5hdGU7XHJcbiAgYW5pbWF0aW9uOiBub2lzZUFuaW0gMC41cyBpbmZpbml0ZSBsaW5lYXIgYWx0ZXJuYXRlO1xyXG59XHJcbkAtd2Via2l0LWtleWZyYW1lcyBub2lzZUFuaW0ge1xyXG4gIDAlIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwcHggMjAwcHg7XHJcbiAgfVxyXG5cclxuICAyMCUge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUwcHggMDtcclxuICB9XHJcblxyXG4gIDQwJSB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDBweCAtMTBweDtcclxuICB9XHJcblxyXG4gIDYwJSB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNTBweDtcclxuICB9XHJcblxyXG4gIDgwJSB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTAwcHggLTMwcHg7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDE2MHB4IC02MHB4O1xyXG4gIH1cclxufVxyXG5Aa2V5ZnJhbWVzIG5vaXNlQW5pbSB7XHJcbiAgMCUge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTBweCAyMDBweDtcclxuICB9XHJcblxyXG4gIDIwJSB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTBweCAwO1xyXG4gIH1cclxuXHJcbiAgNDAlIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMHB4IC0xMHB4O1xyXG4gIH1cclxuXHJcbiAgNjAlIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE1MHB4O1xyXG4gIH1cclxuXHJcbiAgODAlIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDBweCAtMzBweDtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTYwcHggLTYwcHg7XHJcbiAgfVxyXG59XHJcbiIKCV0sCgkibmFtZXMiOiBbXSwKCSJtYXBwaW5ncyI6ICJBQUVBLGlDQUFpQztBQU1qQyx5QkFBeUI7QUlSekIsdUJBQXVCO0FBQ3ZCLGtGQUFrRjtBQUNsRix1REFBdUQ7QUFDdkQsa0ZBQWtGO0FBRWxGLGdDQUFnQztBQUNoQyxJQUFJO0FBQ0osbUdBQW1HO0FBRW5HLCtCQUErQjtBQUMvQiwyQ0FBMkM7QUFFM0MsK0NBQStDO0FBRS9DLDhDQUE4QztBQUc5QywwQkFBMEI7QUFDMUIsMkNBQTJDO0FBRzNDLCtDQUErQztBQUcvQyw0QkFBNEI7QUFDNUIsMkNBQTJDO0FBRzNDLGdEQUFnRDtBQUdoRCxnQ0FBZ0M7QUFDaEMsMkNBQTJDO0FBRzNDLG1EQUFtRDtBQUduRCxvRUFBb0U7QUFNcEUsa0JBQWtCO0FBQ2xCLElBQUk7QUFDSiwwQ0FBMEM7QUFFMUMscUNBQXFDO0FBRXJDLDRFQUE0RTtBQUU1RSxvQkFBb0I7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OztBR1ZELEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsU0FBUyxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxDQUFqaEI7RUFDUCxRQUFRLEVBQUUsUUFBUTtFQUVsQixVQUFVLEVBQUUsR0FBRztFQUVmLFlBQVksRUFBRyxJQUE4QjtFQUM3QyxhQUFhLEVBQUUsSUFBK0I7Q0FDL0M7O0FBU0QsQUFBQSxTQUFTLEVBQUUsQUFBQSxTQUFTLEVBQUUsQUFBQSxTQUFTLEVBQUUsQUFBQSxTQUFTLEVBQUUsQUFBQSxTQUFTLEVBQUUsQUFBQSxTQUFTLEVBQUUsQUFBQSxTQUFTLEVBQUUsQUFBQSxTQUFTLEVBQUUsQUFBQSxTQUFTLEVBQUUsQUFBQSxVQUFVLEVBQUUsQUFBQSxVQUFVLEVBQUUsQUFBQSxVQUFVLENBQTVIO0VBQ1AsS0FBSyxFQUFFLElBQUk7Q0FDWjs7QUFNQyxBQUFBLFNBQVMsQ0FBZ0I7RUFDdkIsS0FBSyxFQUFFLFFBQW9DO0NBQzVDOztBQUZELEFBQUEsU0FBUyxDQUFnQjtFQUN2QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxTQUFTLENBQWdCO0VBQ3ZCLEtBQUssRUFBRSxHQUFvQztDQUM1Qzs7QUFGRCxBQUFBLFNBQVMsQ0FBZ0I7RUFDdkIsS0FBSyxFQUFFLFNBQW9DO0NBQzVDOztBQUZELEFBQUEsU0FBUyxDQUFnQjtFQUN2QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxTQUFTLENBQWdCO0VBQ3ZCLEtBQUssRUFBRSxHQUFvQztDQUM1Qzs7QUFGRCxBQUFBLFNBQVMsQ0FBZ0I7RUFDdkIsS0FBSyxFQUFFLFNBQW9DO0NBQzVDOztBQUZELEFBQUEsU0FBUyxDQUFnQjtFQUN2QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxTQUFTLENBQWdCO0VBQ3ZCLEtBQUssRUFBRSxHQUFvQztDQUM1Qzs7QUFGRCxBQUFBLFVBQVUsQ0FBZTtFQUN2QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxVQUFVLENBQWU7RUFDdkIsS0FBSyxFQUFFLFNBQW9DO0NBQzVDOztBQUZELEFBQUEsVUFBVSxDQUFlO0VBQ3ZCLEtBQUssRUFBRSxJQUFvQztDQUM1Qzs7QUFrQkQsQUFBQSxjQUFjLENBQVE7RUFDcEIsS0FBSyxFQUFFLElBQUk7Q0FDWjs7QUFQRCxBQUFBLGNBQWMsQ0FBZ0I7RUFDNUIsS0FBSyxFQUFFLFFBQW9DO0NBQzVDOztBQUZELEFBQUEsY0FBYyxDQUFnQjtFQUM1QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxjQUFjLENBQWdCO0VBQzVCLEtBQUssRUFBRSxHQUFvQztDQUM1Qzs7QUFGRCxBQUFBLGNBQWMsQ0FBZ0I7RUFDNUIsS0FBSyxFQUFFLFNBQW9DO0NBQzVDOztBQUZELEFBQUEsY0FBYyxDQUFnQjtFQUM1QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxjQUFjLENBQWdCO0VBQzVCLEtBQUssRUFBRSxHQUFvQztDQUM1Qzs7QUFGRCxBQUFBLGNBQWMsQ0FBZ0I7RUFDNUIsS0FBSyxFQUFFLFNBQW9DO0NBQzVDOztBQUZELEFBQUEsY0FBYyxDQUFnQjtFQUM1QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxjQUFjLENBQWdCO0VBQzVCLEtBQUssRUFBRSxHQUFvQztDQUM1Qzs7QUFGRCxBQUFBLGVBQWUsQ0FBZTtFQUM1QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxlQUFlLENBQWU7RUFDNUIsS0FBSyxFQUFFLFNBQW9DO0NBQzVDOztBQUZELEFBQUEsZUFBZSxDQUFlO0VBQzVCLEtBQUssRUFBRSxJQUFvQztDQUM1Qzs7QUFQRCxBQUFBLGNBQWMsQ0FBUTtFQUNwQixJQUFJLEVBQUUsSUFBSTtDQUNYOztBQVBELEFBQUEsY0FBYyxDQUFnQjtFQUM1QixJQUFJLEVBQUUsUUFBb0M7Q0FDM0M7O0FBRkQsQUFBQSxjQUFjLENBQWdCO0VBQzVCLElBQUksRUFBRSxTQUFvQztDQUMzQzs7QUFGRCxBQUFBLGNBQWMsQ0FBZ0I7RUFDNUIsSUFBSSxFQUFFLEdBQW9DO0NBQzNDOztBQUZELEFBQUEsY0FBYyxDQUFnQjtFQUM1QixJQUFJLEVBQUUsU0FBb0M7Q0FDM0M7O0FBRkQsQUFBQSxjQUFjLENBQWdCO0VBQzVCLElBQUksRUFBRSxTQUFvQztDQUMzQzs7QUFGRCxBQUFBLGNBQWMsQ0FBZ0I7RUFDNUIsSUFBSSxFQUFFLEdBQW9DO0NBQzNDOztBQUZELEFBQUEsY0FBYyxDQUFnQjtFQUM1QixJQUFJLEVBQUUsU0FBb0M7Q0FDM0M7O0FBRkQsQUFBQSxjQUFjLENBQWdCO0VBQzVCLElBQUksRUFBRSxTQUFvQztDQUMzQzs7QUFGRCxBQUFBLGNBQWMsQ0FBZ0I7RUFDNUIsSUFBSSxFQUFFLEdBQW9DO0NBQzNDOztBQUZELEFBQUEsZUFBZSxDQUFlO0VBQzVCLElBQUksRUFBRSxTQUFvQztDQUMzQzs7QUFGRCxBQUFBLGVBQWUsQ0FBZTtFQUM1QixJQUFJLEVBQUUsU0FBb0M7Q0FDM0M7O0FBRkQsQUFBQSxlQUFlLENBQWU7RUFDNUIsSUFBSSxFQUFFLElBQW9DO0NBQzNDOztBQWtCRCxBQUFBLGdCQUFnQixDQUFnQjtFQUM5QixXQUFXLEVBQUUsRUFBb0M7Q0FDbEQ7O0FBRkQsQUFBQSxnQkFBZ0IsQ0FBZ0I7RUFDOUIsV0FBVyxFQUFFLFFBQW9DO0NBQ2xEOztBQUZELEFBQUEsZ0JBQWdCLENBQWdCO0VBQzlCLFdBQVcsRUFBRSxTQUFvQztDQUNsRDs7QUFGRCxBQUFBLGdCQUFnQixDQUFnQjtFQUM5QixXQUFXLEVBQUUsR0FBb0M7Q0FDbEQ7O0FBRkQsQUFBQSxnQkFBZ0IsQ0FBZ0I7RUFDOUIsV0FBVyxFQUFFLFNBQW9DO0NBQ2xEOztBQUZELEFBQUEsZ0JBQWdCLENBQWdCO0VBQzlCLFdBQVcsRUFBRSxTQUFvQztDQUNsRDs7QUFGRCxBQUFBLGdCQUFnQixDQUFnQjtFQUM5QixXQUFXLEVBQUUsR0FBb0M7Q0FDbEQ7O0FBRkQsQUFBQSxnQkFBZ0IsQ0FBZ0I7RUFDOUIsV0FBVyxFQUFFLFNBQW9DO0NBQ2xEOztBQUZELEFBQUEsZ0JBQWdCLENBQWdCO0VBQzlCLFdBQVcsRUFBRSxTQUFvQztDQUNsRDs7QUFGRCxBQUFBLGdCQUFnQixDQUFnQjtFQUM5QixXQUFXLEVBQUUsR0FBb0M7Q0FDbEQ7O0FBRkQsQUFBQSxpQkFBaUIsQ0FBZTtFQUM5QixXQUFXLEVBQUUsU0FBb0M7Q0FDbEQ7O0FBRkQsQUFBQSxpQkFBaUIsQ0FBZTtFQUM5QixXQUFXLEVBQUUsU0FBb0M7Q0FDbEQ7O0FBRkQsQUFBQSxpQkFBaUIsQ0FBZTtFQUM5QixXQUFXLEVBQUUsSUFBb0M7Q0FDbEQ7O0FJRUwsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VKckN0QixBQUFBLFNBQVMsRUFBRSxBQUFBLFNBQVMsRUFBRSxBQUFBLFNBQVMsRUFBRSxBQUFBLFNBQVMsRUFBRSxBQUFBLFNBQVMsRUFBRSxBQUFBLFNBQVMsRUFBRSxBQUFBLFNBQVMsRUFBRSxBQUFBLFNBQVMsRUFBRSxBQUFBLFNBQVMsRUFBRSxBQUFBLFVBQVUsRUFBRSxBQUFBLFVBQVUsRUFBRSxBQUFBLFVBQVUsQ0FBNUg7SUFDUCxLQUFLLEVBQUUsSUFBSTtHQUNaO0VBTUMsQUFBQSxTQUFTLENBQWdCO0lBQ3ZCLEtBQUssRUFBRSxRQUFvQztHQUM1QztFQUZELEFBQUEsU0FBUyxDQUFnQjtJQUN2QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLFNBQVMsQ0FBZ0I7SUFDdkIsS0FBSyxFQUFFLEdBQW9DO0dBQzVDO0VBRkQsQUFBQSxTQUFTLENBQWdCO0lBQ3ZCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsU0FBUyxDQUFnQjtJQUN2QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLFNBQVMsQ0FBZ0I7SUFDdkIsS0FBSyxFQUFFLEdBQW9DO0dBQzVDO0VBRkQsQUFBQSxTQUFTLENBQWdCO0lBQ3ZCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsU0FBUyxDQUFnQjtJQUN2QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLFNBQVMsQ0FBZ0I7SUFDdkIsS0FBSyxFQUFFLEdBQW9DO0dBQzVDO0VBRkQsQUFBQSxVQUFVLENBQWU7SUFDdkIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxVQUFVLENBQWU7SUFDdkIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxVQUFVLENBQWU7SUFDdkIsS0FBSyxFQUFFLElBQW9DO0dBQzVDO0VBa0JELEFBQUEsY0FBYyxDQUFRO0lBQ3BCLEtBQUssRUFBRSxJQUFJO0dBQ1o7RUFQRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsS0FBSyxFQUFFLFFBQW9DO0dBQzVDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixLQUFLLEVBQUUsR0FBb0M7R0FDNUM7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixLQUFLLEVBQUUsR0FBb0M7R0FDNUM7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixLQUFLLEVBQUUsR0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsSUFBb0M7R0FDNUM7RUFQRCxBQUFBLGNBQWMsQ0FBUTtJQUNwQixJQUFJLEVBQUUsSUFBSTtHQUNYO0VBUEQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxRQUFvQztHQUMzQztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsU0FBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLEdBQW9DO0dBQzNDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsU0FBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLEdBQW9DO0dBQzNDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsU0FBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLEdBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLElBQW9DO0dBQzNDO0VBa0JELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxFQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxRQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxTQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxHQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxTQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxTQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxHQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxTQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxTQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxHQUFvQztHQUNsRDtFQUZELEFBQUEsaUJBQWlCLENBQWU7SUFDOUIsV0FBVyxFQUFFLFNBQW9DO0dBQ2xEO0VBRkQsQUFBQSxpQkFBaUIsQ0FBZTtJQUM5QixXQUFXLEVBQUUsU0FBb0M7R0FDbEQ7RUFGRCxBQUFBLGlCQUFpQixDQUFlO0lBQzlCLFdBQVcsRUFBRSxJQUFvQztHQUNsRDs7O0FJV0wsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VKOUN0QixBQUFBLFNBQVMsRUFBRSxBQUFBLFNBQVMsRUFBRSxBQUFBLFNBQVMsRUFBRSxBQUFBLFNBQVMsRUFBRSxBQUFBLFNBQVMsRUFBRSxBQUFBLFNBQVMsRUFBRSxBQUFBLFNBQVMsRUFBRSxBQUFBLFNBQVMsRUFBRSxBQUFBLFNBQVMsRUFBRSxBQUFBLFVBQVUsRUFBRSxBQUFBLFVBQVUsRUFBRSxBQUFBLFVBQVUsQ0FBNUg7SUFDUCxLQUFLLEVBQUUsSUFBSTtHQUNaO0VBTUMsQUFBQSxTQUFTLENBQWdCO0lBQ3ZCLEtBQUssRUFBRSxRQUFvQztHQUM1QztFQUZELEFBQUEsU0FBUyxDQUFnQjtJQUN2QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLFNBQVMsQ0FBZ0I7SUFDdkIsS0FBSyxFQUFFLEdBQW9DO0dBQzVDO0VBRkQsQUFBQSxTQUFTLENBQWdCO0lBQ3ZCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsU0FBUyxDQUFnQjtJQUN2QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLFNBQVMsQ0FBZ0I7SUFDdkIsS0FBSyxFQUFFLEdBQW9DO0dBQzVDO0VBRkQsQUFBQSxTQUFTLENBQWdCO0lBQ3ZCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsU0FBUyxDQUFnQjtJQUN2QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLFNBQVMsQ0FBZ0I7SUFDdkIsS0FBSyxFQUFFLEdBQW9DO0dBQzVDO0VBRkQsQUFBQSxVQUFVLENBQWU7SUFDdkIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxVQUFVLENBQWU7SUFDdkIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxVQUFVLENBQWU7SUFDdkIsS0FBSyxFQUFFLElBQW9DO0dBQzVDO0VBa0JELEFBQUEsY0FBYyxDQUFRO0lBQ3BCLEtBQUssRUFBRSxJQUFJO0dBQ1o7RUFQRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsS0FBSyxFQUFFLFFBQW9DO0dBQzVDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixLQUFLLEVBQUUsR0FBb0M7R0FDNUM7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixLQUFLLEVBQUUsR0FBb0M7R0FDNUM7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixLQUFLLEVBQUUsR0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsSUFBb0M7R0FDNUM7RUFQRCxBQUFBLGNBQWMsQ0FBUTtJQUNwQixJQUFJLEVBQUUsSUFBSTtHQUNYO0VBUEQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxRQUFvQztHQUMzQztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsU0FBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLEdBQW9DO0dBQzNDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsU0FBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLEdBQW9DO0dBQzNDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsU0FBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLEdBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLElBQW9DO0dBQzNDO0VBa0JELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxFQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxRQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxTQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxHQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxTQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxTQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxHQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxTQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxTQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxHQUFvQztHQUNsRDtFQUZELEFBQUEsaUJBQWlCLENBQWU7SUFDOUIsV0FBVyxFQUFFLFNBQW9DO0dBQ2xEO0VBRkQsQUFBQSxpQkFBaUIsQ0FBZTtJQUM5QixXQUFXLEVBQUUsU0FBb0M7R0FDbEQ7RUFGRCxBQUFBLGlCQUFpQixDQUFlO0lBQzlCLFdBQVcsRUFBRSxJQUFvQztHQUNsRDs7O0FJb0JMLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtFSnZEdkIsQUFBQSxTQUFTLEVBQUUsQUFBQSxTQUFTLEVBQUUsQUFBQSxTQUFTLEVBQUUsQUFBQSxTQUFTLEVBQUUsQUFBQSxTQUFTLEVBQUUsQUFBQSxTQUFTLEVBQUUsQUFBQSxTQUFTLEVBQUUsQUFBQSxTQUFTLEVBQUUsQUFBQSxTQUFTLEVBQUUsQUFBQSxVQUFVLEVBQUUsQUFBQSxVQUFVLEVBQUUsQUFBQSxVQUFVLENBQTVIO0lBQ1AsS0FBSyxFQUFFLElBQUk7R0FDWjtFQU1DLEFBQUEsU0FBUyxDQUFnQjtJQUN2QixLQUFLLEVBQUUsUUFBb0M7R0FDNUM7RUFGRCxBQUFBLFNBQVMsQ0FBZ0I7SUFDdkIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxTQUFTLENBQWdCO0lBQ3ZCLEtBQUssRUFBRSxHQUFvQztHQUM1QztFQUZELEFBQUEsU0FBUyxDQUFnQjtJQUN2QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLFNBQVMsQ0FBZ0I7SUFDdkIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxTQUFTLENBQWdCO0lBQ3ZCLEtBQUssRUFBRSxHQUFvQztHQUM1QztFQUZELEFBQUEsU0FBUyxDQUFnQjtJQUN2QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLFNBQVMsQ0FBZ0I7SUFDdkIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxTQUFTLENBQWdCO0lBQ3ZCLEtBQUssRUFBRSxHQUFvQztHQUM1QztFQUZELEFBQUEsVUFBVSxDQUFlO0lBQ3ZCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsVUFBVSxDQUFlO0lBQ3ZCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsVUFBVSxDQUFlO0lBQ3ZCLEtBQUssRUFBRSxJQUFvQztHQUM1QztFQWtCRCxBQUFBLGNBQWMsQ0FBUTtJQUNwQixLQUFLLEVBQUUsSUFBSTtHQUNaO0VBUEQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLEtBQUssRUFBRSxRQUFvQztHQUM1QztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsS0FBSyxFQUFFLEdBQW9DO0dBQzVDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsS0FBSyxFQUFFLEdBQW9DO0dBQzVDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsS0FBSyxFQUFFLEdBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLElBQW9DO0dBQzVDO0VBUEQsQUFBQSxjQUFjLENBQVE7SUFDcEIsSUFBSSxFQUFFLElBQUk7R0FDWDtFQVBELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsUUFBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxHQUFvQztHQUMzQztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsU0FBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxHQUFvQztHQUMzQztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsU0FBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxHQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxJQUFvQztHQUMzQztFQWtCRCxBQUFBLGdCQUFnQixDQUFnQjtJQUM5QixXQUFXLEVBQUUsRUFBb0M7R0FDbEQ7RUFGRCxBQUFBLGdCQUFnQixDQUFnQjtJQUM5QixXQUFXLEVBQUUsUUFBb0M7R0FDbEQ7RUFGRCxBQUFBLGdCQUFnQixDQUFnQjtJQUM5QixXQUFXLEVBQUUsU0FBb0M7R0FDbEQ7RUFGRCxBQUFBLGdCQUFnQixDQUFnQjtJQUM5QixXQUFXLEVBQUUsR0FBb0M7R0FDbEQ7RUFGRCxBQUFBLGdCQUFnQixDQUFnQjtJQUM5QixXQUFXLEVBQUUsU0FBb0M7R0FDbEQ7RUFGRCxBQUFBLGdCQUFnQixDQUFnQjtJQUM5QixXQUFXLEVBQUUsU0FBb0M7R0FDbEQ7RUFGRCxBQUFBLGdCQUFnQixDQUFnQjtJQUM5QixXQUFXLEVBQUUsR0FBb0M7R0FDbEQ7RUFGRCxBQUFBLGdCQUFnQixDQUFnQjtJQUM5QixXQUFXLEVBQUUsU0FBb0M7R0FDbEQ7RUFGRCxBQUFBLGdCQUFnQixDQUFnQjtJQUM5QixXQUFXLEVBQUUsU0FBb0M7R0FDbEQ7RUFGRCxBQUFBLGdCQUFnQixDQUFnQjtJQUM5QixXQUFXLEVBQUUsR0FBb0M7R0FDbEQ7RUFGRCxBQUFBLGlCQUFpQixDQUFlO0lBQzlCLFdBQVcsRUFBRSxTQUFvQztHQUNsRDtFQUZELEFBQUEsaUJBQWlCLENBQWU7SUFDOUIsV0FBVyxFQUFFLFNBQW9DO0dBQ2xEO0VBRkQsQUFBQSxpQkFBaUIsQ0FBZTtJQUM5QixXQUFXLEVBQUUsSUFBb0M7R0FDbEQ7OztBS3BETCxBQUFBLEtBQUssQ0FBQztFQUNKLE9BQU8sRUFBRSxDQUFDO0VyQitLVixrQkFBa0IsRXFCOUtFLE9BQU8sQ0FBQyxLQUFJLENBQUMsTUFBTTtFckIrS2xDLGFBQWEsRXFCL0tFLE9BQU8sQ0FBQyxLQUFJLENBQUMsTUFBTTtFckJnTC9CLFVBQVUsRXFCaExFLE9BQU8sQ0FBQyxLQUFJLENBQUMsTUFBTTtDQUl4Qzs7QUFORCxBQUdFLEtBSEcsQUFHSCxHQUFJLENBQUM7RUFDSCxPQUFPLEVBQUUsQ0FBQztDQUNYOztBQUdILEFBQUEsU0FBUyxDQUFDO0VBQ1IsT0FBTyxFQUFFLElBQUk7Q0FLZDs7QUFORCxBQUdFLFNBSE8sQUFHUCxHQUFJLENBQU07RUFBRSxPQUFPLEVBQUUsS0FBSztDQUFLOztBQUtqQyxBQUFBLEVBQUUsQUFBQSxTQUFTLEFBQUEsR0FBRyxDQUFJO0VBQUUsT0FBTyxFQUFFLFNBQVM7Q0FBSzs7QUFFM0MsQUFBQSxLQUFLLEFBQUEsU0FBUyxBQUFBLEdBQUcsQ0FBQztFQUFFLE9BQU8sRUFBRSxlQUFlO0NBQUs7O0FBRWpELEFBQUEsV0FBVyxDQUFDO0VBQ1YsUUFBUSxFQUFFLFFBQVE7RUFDbEIsTUFBTSxFQUFFLENBQUM7RUFDVCxRQUFRLEVBQUUsTUFBTTtFckI4SmhCLDJCQUEyQixFcUI3SkUsTUFBTSxFQUFFLFVBQVU7RXJCOEp2QyxtQkFBbUIsRXFCOUpFLE1BQU0sRUFBRSxVQUFVO0VyQnFLL0MsMkJBQTJCLEVxQnBLRSxLQUFJO0VyQnFLekIsbUJBQW1CLEVxQnJLRSxLQUFJO0VyQndLakMsa0NBQWtDLEVxQnZLRSxJQUFJO0VyQndLaEMsMEJBQTBCLEVxQnhLRSxJQUFJO0NBQ3pDOztBQzVCRCxBQUFBLElBQUksQ0FBQztFQUNILGFBQWEsRUFBRSxDQUFDO0VBQ2hCLFlBQVksRUFBRSxDQUFDO0VBQ2YsVUFBVSxFQUFFLElBQUk7Q0F5RGpCOztBQTVERCxBVEtFLElTTEUsQVRLTCxPQUFXLEVTTFYsQVRNRSxJU05FLEFUTUwsTUFBVSxDQUFDO0VBQ04sT0FBTyxFQUFFLEdBQUc7RUFDWixPQUFPLEVBQUUsS0FBSztDQUNmOztBU1RILEFUVUUsSVNWRSxBVFVMLE1BQVUsQ0FBQztFQUNOLEtBQUssRUFBRSxJQUFJO0NBQ1o7O0FTWkgsQUFNSSxJQU5BLEdBTUEsRUFBRSxDQUFDO0VBQ0gsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLEtBQUs7Q0F5QmY7O0FBakNILEFBVU0sSUFWRixHQU1BLEVBQUUsR0FJQSxDQUFDLENBQUM7RUFDRixRQUFRLEVBQUUsUUFBUTtFQUNsQixPQUFPLEVBQUUsS0FBSztFQUNkLE9BQU8sRXBDcVorQixJQUFJLENBQUMsSUFBSTtDb0MvWWhEOztBQW5CTCxBQVVNLElBVkYsR0FNQSxFQUFFLEdBSUEsQ0FBQyxBQUlELE1BQU8sRUFkYixBQVVNLElBVkYsR0FNQSxFQUFFLEdBSUEsQ0FBQyxBQUtELE1BQU8sQ0FBQztFQUNOLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGdCQUFnQixFcENWQyxPQUEwQjtDb0NXNUM7O0FBbEJQLEFBc0JpQixJQXRCYixHQU1BLEVBQUUsQUFnQkYsU0FBVSxHQUFHLENBQUMsQ0FBQztFQUNiLEtBQUssRXBDakJjLE9BQTBCO0NvQzBCOUM7O0FBaENMLEFBc0JpQixJQXRCYixHQU1BLEVBQUUsQUFnQkYsU0FBVSxHQUFHLENBQUMsQUFHWixNQUFPLEVBekJiLEFBc0JpQixJQXRCYixHQU1BLEVBQUUsQUFnQkYsU0FBVSxHQUFHLENBQUMsQUFJWixNQUFPLENBQUM7RUFDTixLQUFLLEVwQ3JCWSxPQUEwQjtFb0NzQjNDLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGdCQUFnQixFQUFFLFdBQVc7RUFDN0IsTUFBTSxFcENpTW1CLFdBQVc7Q29DaE1yQzs7QUEvQlAsQUFvQ1UsSUFwQ04sQ0FvQ0YsS0FBSyxHQUFHLENBQUMsRUFwQ1gsQUFvQ1UsSUFwQ04sQ0FvQ0YsS0FBSyxHQUFHLENBQUMsQUFFUCxNQUFPLEVBdENYLEFBb0NVLElBcENOLENBb0NGLEtBQUssR0FBRyxDQUFDLEFBR1AsTUFBTyxDQUFDO0VBQ04sZ0JBQWdCLEVwQ2pDRyxPQUEwQjtFb0NrQzdDLFlBQVksRXBDaENNLE9BQXFCO0NvQ2lDeEM7O0FBMUNMLEFBa0RFLElBbERFLENBa0RGLFlBQVksQ0FBQztFaEJyRGIsTUFBTSxFQUFFLEdBQUc7RUFDWCxNQUFNLEVBQUUsSUFBaUMsQ0FBQyxDQUFDO0VBQzNDLFFBQVEsRUFBRSxNQUFNO0VBQ2hCLGdCQUFnQixFQUpTLE9BQU87Q2dCd0QvQjs7QUFwREgsQUF5RGEsSUF6RFQsR0F5REEsRUFBRSxHQUFHLENBQUMsR0FBRyxHQUFHLENBQUM7RUFDYixTQUFTLEVBQUUsSUFBSTtDQUNoQjs7QUFRSCxBQUFBLFNBQVMsQ0FBQztFQUNSLGFBQWEsRUFBRSxHQUFHLENBQUMsS0FBSyxDcENxV2tCLElBQUk7Q29DbFUvQzs7QUFwQ0QsQUFFSSxTQUZLLEdBRUwsRUFBRSxDQUFDO0VBQ0gsS0FBSyxFQUFFLElBQUk7RUFFWCxhQUFhLEVBQUUsSUFBSTtDQXlCcEI7O0FBOUJILEFBUU0sU0FSRyxHQUVMLEVBQUUsR0FNQSxDQUFDLENBQUM7RUFDRixZQUFZLEVBQUUsR0FBRztFQUNqQixXQUFXLEV6Q3pFRSxDQUFDO0V5QzBFZCxNQUFNLEVBQUUscUJBQXFCO0VBQzdCLGFBQWEsRXBDc0JTLEdBQUcsQ0FBSCxHQUFHLENvQ3RCOEIsQ0FBQyxDQUFDLENBQUM7Q0FJM0Q7O0FBaEJMLEFBUU0sU0FSRyxHQUVMLEVBQUUsR0FNQSxDQUFDLEFBS0QsTUFBTyxDQUFDO0VBQ04sWUFBWSxFcEMxRUssT0FBMEIsQ0FBMUIsT0FBMEIsQ0FrYVAsSUFBSTtDb0N2VnpDOztBQWZQLEFBbUJlLFNBbkJOLEdBRUwsRUFBRSxBQWlCRixPQUFRLEdBQUcsQ0FBQyxFQW5CaEIsQUFtQmUsU0FuQk4sR0FFTCxFQUFFLEFBaUJGLE9BQVEsR0FBRyxDQUFDLEFBRVYsTUFBTyxFQXJCYixBQW1CZSxTQW5CTixHQUVMLEVBQUUsQUFpQkYsT0FBUSxHQUFHLENBQUMsQUFHVixNQUFPLENBQUM7RUFDTixLQUFLLEVwQ3JGWSxPQUEwQjtFb0NzRjNDLGdCQUFnQixFcEN0RUEsSUFBSTtFb0N1RXBCLE1BQU0sRUFBRSxHQUFHLENBQUMsS0FBSyxDcENtVm1CLElBQUk7RW9DbFZ4QyxtQkFBbUIsRUFBRSxXQUFXO0VBQ2hDLE1BQU0sRUFBRSxPQUFPO0NBQ2hCOztBQWFQLEFBQ0ksVUFETSxHQUNOLEVBQUUsQ0FBQztFQUNILEtBQUssRUFBRSxJQUFJO0NBbUJaOztBQXJCSCxBQUtNLFVBTEksR0FDTixFQUFFLEdBSUEsQ0FBQyxDQUFDO0VBQ0YsYUFBYSxFcENiUyxHQUFHO0NvQ2MxQjs7QUFQTCxBQVFNLFVBUkksR0FDTixFQUFFLEdBT0EsRUFBRSxDQUFDO0VBQ0gsV0FBVyxFQUFFLEdBQUc7Q0FDakI7O0FBVkwsQUFhZSxVQWJMLEdBQ04sRUFBRSxBQVlGLE9BQVEsR0FBRyxDQUFDLEVBYmhCLEFBYWUsVUFiTCxHQUNOLEVBQUUsQUFZRixPQUFRLEdBQUcsQ0FBQyxBQUVWLE1BQU8sRUFmYixBQWFlLFVBYkwsR0FDTixFQUFFLEFBWUYsT0FBUSxHQUFHLENBQUMsQUFHVixNQUFPLENBQUM7RUFDTixLQUFLLEVwQ25CZSxJQUFJO0VvQ29CeEIsZ0JBQWdCLEVwQ3JIQSxPQUFxQjtDb0NzSHRDOztBQU9QLEFBQ0ksWUFEUSxHQUNSLEVBQUUsQ0FBQztFQUNILEtBQUssRUFBRSxJQUFJO0NBS1o7O0FBUEgsQUFHTSxZQUhNLEdBQ1IsRUFBRSxHQUVBLEVBQUUsQ0FBQztFQUNILFVBQVUsRUFBRSxHQUFHO0VBQ2YsV0FBVyxFQUFFLENBQUM7Q0FDZjs7QUFXTCxBQUFBLGNBQWMsRUFwRmQsQUFvRkEsU0FwRlMsQUFnQ1AsY0FBZSxDQW9ERjtFQUNiLEtBQUssRUFBRSxJQUFJO0NBd0JaOztBQXpCRCxBQUdJLGNBSFUsR0FHVixFQUFFLEVBdkZOLEFBdUZJLFNBdkZLLEFBZ0NQLGNBQWUsR0F1RGIsRUFBRSxDQUFDO0VBQ0gsS0FBSyxFQUFFLElBQUk7Q0FLWjs7QUFUSCxBQUtNLGNBTFEsR0FHVixFQUFFLEdBRUEsQ0FBQyxFQXpGUCxBQXlGTSxTQXpGRyxBQWdDUCxjQUFlLEdBdURiLEVBQUUsR0FFQSxDQUFDLENBQUM7RUFDRixVQUFVLEVBQUUsTUFBTTtFQUNsQixhQUFhLEVBQUUsR0FBRztDQUNuQjs7QUFSTCxBQVdjLGNBWEEsR0FXVixTQUFTLENBQUMsY0FBYyxDQUFDO0VBQ3pCLEdBQUcsRUFBRSxJQUFJO0VBQ1QsSUFBSSxFQUFFLElBQUk7Q0FDWDs7QUFFRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFoQjFCLEFBaUJNLGNBakJRLEdBaUJSLEVBQUUsRUFyR1IsQUFxR00sU0FyR0csQUFnQ1AsY0FBZSxHQXFFWCxFQUFFLENBQUM7SUFDSCxPQUFPLEVBQUUsVUFBVTtJQUNuQixLQUFLLEVBQUUsRUFBRTtHQUlWO0VBdkJMLEFBb0JRLGNBcEJNLEdBaUJSLEVBQUUsR0FHQSxDQUFDLEVBeEdULEFBd0dRLFNBeEdDLEFBZ0NQLGNBQWUsR0FxRVgsRUFBRSxHQUdBLENBQUMsQ0FBQztJQUNGLGFBQWEsRUFBRSxDQUFDO0dBQ2pCOzs7QUFRUCxBQUFBLG1CQUFtQixFQWxIbkIsQUFrSEEsU0FsSFMsQUFnQ1AsY0FBZSxDQWtGRztFQUNsQixhQUFhLEVBQUUsQ0FBQztDQXlCakI7O0FBMUJELEFBR1MsbUJBSFUsR0FHZixFQUFFLEdBQUcsQ0FBQyxFQXJIVixBQXFIUyxTQXJIQSxBQWdDUCxjQUFlLEdBcUZiLEVBQUUsR0FBRyxDQUFDLENBQUM7RUFFUCxZQUFZLEVBQUUsQ0FBQztFQUNmLGFBQWEsRXBDdEZXLEdBQUc7Q29DdUY1Qjs7QUFQSCxBQVNjLG1CQVRLLEdBU2YsT0FBTyxHQUFHLENBQUMsRUEzSGYsQUEySGMsU0EzSEwsQUFnQ1AsY0FBZSxHQTJGYixPQUFPLEdBQUcsQ0FBQztBQVRmLEFBVWMsbUJBVkssR0FVZixPQUFPLEdBQUcsQ0FBQyxBQUFBLE1BQU0sRUE1SHJCLEFBNEhjLFNBNUhMLEFBZ0NQLGNBQWUsR0E0RmIsT0FBTyxHQUFHLENBQUMsQUFBQSxNQUFNO0FBVnJCLEFBV2MsbUJBWEssR0FXZixPQUFPLEdBQUcsQ0FBQyxBQUFBLE1BQU0sRUE3SHJCLEFBNkhjLFNBN0hMLEFBZ0NQLGNBQWUsR0E2RmIsT0FBTyxHQUFHLENBQUMsQUFBQSxNQUFNLENBQUM7RUFDbEIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENwQ2dQNkIsSUFBSTtDb0MvT25EOztBQUVELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQWYxQixBQWdCVyxtQkFoQlEsR0FnQmIsRUFBRSxHQUFHLENBQUMsRUFsSVosQUFrSVcsU0FsSUYsQUFnQ1AsY0FBZSxHQWtHWCxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ1AsYUFBYSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENwQzJPb0IsSUFBSTtJb0MxT2hELGFBQWEsRXBDbEdTLEdBQUcsQ0FBSCxHQUFHLENvQ2tHOEIsQ0FBQyxDQUFDLENBQUM7R0FDM0Q7RUFuQkwsQUFvQmdCLG1CQXBCRyxHQW9CYixPQUFPLEdBQUcsQ0FBQyxFQXRJakIsQUFzSWdCLFNBdElQLEFBZ0NQLGNBQWUsR0FzR1gsT0FBTyxHQUFHLENBQUM7RUFwQmpCLEFBcUJnQixtQkFyQkcsR0FxQmIsT0FBTyxHQUFHLENBQUMsQUFBQSxNQUFNLEVBdkl2QixBQXVJZ0IsU0F2SVAsQUFnQ1AsY0FBZSxHQXVHWCxPQUFPLEdBQUcsQ0FBQyxBQUFBLE1BQU07RUFyQnZCLEFBc0JnQixtQkF0QkcsR0FzQmIsT0FBTyxHQUFHLENBQUMsQUFBQSxNQUFNLEVBeEl2QixBQXdJZ0IsU0F4SVAsQUFnQ1AsY0FBZSxHQXdHWCxPQUFPLEdBQUcsQ0FBQyxBQUFBLE1BQU0sQ0FBQztJQUNsQixtQkFBbUIsRXBDdkxELElBQUk7R29Dd0x2Qjs7O0FBU0wsQUFDSSxZQURRLEdBQ1IsU0FBUyxDQUFDO0VBQ1YsT0FBTyxFQUFFLElBQUk7Q0FDZDs7QUFISCxBQUlJLFlBSlEsR0FJUixPQUFPLENBQUM7RUFDUixPQUFPLEVBQUUsS0FBSztDQUNmOztBQVFILEFBQVUsU0FBRCxDQUFDLGNBQWMsQ0FBQztFQUV2QixVQUFVLEVBQUUsSUFBSTtFWDNPaEIsdUJBQXVCLEVXNk9JLENBQUM7RVg1TzNCLHNCQUFzQixFVzRPSSxDQUFDO0NBQzdCOztBQzVOQyxhQUFhO0VBQ1gsS0FBSyxFQUFFLFlBQVk7OztBN0JMckIsQUFBQSxXQUFXLENBQUE7RUFDVCxPQUFPLEVBQUUsZUFBZTtDQUN6Qjs7QUFGRCxBQUFBLFdBQVcsQ0FBQTtFQUNULE9BQU8sRUFBRSxlQUFlO0NBQ3pCOztBQUZELEFBQUEsV0FBVyxDQUFBO0VBQ1QsT0FBTyxFQUFFLGVBQWU7Q0FDekI7O0FBRkQsQUFBQSxXQUFXLENBQUE7RUFDVCxPQUFPLEVBQUUsZUFBZTtDQUN6Qjs7QTZCZ0JILEFBQUEsaUJBQWlCO0FBQ2pCLEFBQUEsa0JBQWtCO0FBQ2xCLEFBQUEsd0JBQXdCO0FBQ3hCLEFBQUEsaUJBQWlCO0FBQ2pCLEFBQUEsa0JBQWtCO0FBQ2xCLEFBQUEsd0JBQXdCO0FBQ3hCLEFBQUEsaUJBQWlCO0FBQ2pCLEFBQUEsa0JBQWtCO0FBQ2xCLEFBQUEsd0JBQXdCO0FBQ3hCLEFBQUEsaUJBQWlCO0FBQ2pCLEFBQUEsa0JBQWtCO0FBQ2xCLEFBQUEsd0JBQXdCLENBQUM7RUFDdkIsT0FBTyxFQUFFLGVBQWU7Q0FDekI7O0FBRUQsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0U3QjVDdEIsQUFBQSxXQUFXLENBQUE7SUFDVCxPQUFPLEVBQUUsZ0JBQWdCO0dBQzFCO0VBQ0QsQUFBQSxLQUFLLEFBQUEsV0FBVyxDQUFDO0lBQUUsT0FBTyxFQUFFLGdCQUFnQjtHQUFLO0VBQ2pELEFBQUEsRUFBRSxBQUFBLFdBQVcsQ0FBSTtJQUFFLE9BQU8sRUFBRSxvQkFBb0I7R0FBSztFQUNyRCxBQUFBLEVBQUUsQUFBQSxXQUFXO0VBQ2IsQUFBQSxFQUFFLEFBQUEsV0FBVyxDQUFJO0lBQUUsT0FBTyxFQUFFLHFCQUFxQjtHQUFLOzs7QTZCMEN0RCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFEMUIsQUFBQSxpQkFBaUIsQ0FBQztJQUVkLE9BQU8sRUFBRSxnQkFBZ0I7R0FFNUI7OztBQUVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUQxQixBQUFBLGtCQUFrQixDQUFDO0lBRWYsT0FBTyxFQUFFLGlCQUFpQjtHQUU3Qjs7O0FBRUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBRDFCLEFBQUEsd0JBQXdCLENBQUM7SUFFckIsT0FBTyxFQUFFLHVCQUF1QjtHQUVuQzs7O0FBRUQsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLEtBQUs7RTdCL0Q3QyxBQUFBLFdBQVcsQ0FBQTtJQUNULE9BQU8sRUFBRSxnQkFBZ0I7R0FDMUI7RUFDRCxBQUFBLEtBQUssQUFBQSxXQUFXLENBQUM7SUFBRSxPQUFPLEVBQUUsZ0JBQWdCO0dBQUs7RUFDakQsQUFBQSxFQUFFLEFBQUEsV0FBVyxDQUFJO0lBQUUsT0FBTyxFQUFFLG9CQUFvQjtHQUFLO0VBQ3JELEFBQUEsRUFBRSxBQUFBLFdBQVc7RUFDYixBQUFBLEVBQUUsQUFBQSxXQUFXLENBQUk7SUFBRSxPQUFPLEVBQUUscUJBQXFCO0dBQUs7OztBNkI2RHRELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSyxPQUFPLFNBQVMsRUFBRSxLQUFLO0VBRGpELEFBQUEsaUJBQWlCLENBQUM7SUFFZCxPQUFPLEVBQUUsZ0JBQWdCO0dBRTVCOzs7QUFFQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUssT0FBTyxTQUFTLEVBQUUsS0FBSztFQURqRCxBQUFBLGtCQUFrQixDQUFDO0lBRWYsT0FBTyxFQUFFLGlCQUFpQjtHQUU3Qjs7O0FBRUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLEtBQUs7RUFEakQsQUFBQSx3QkFBd0IsQ0FBQztJQUVyQixPQUFPLEVBQUUsdUJBQXVCO0dBRW5DOzs7QUFFRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUssT0FBTyxTQUFTLEVBQUUsTUFBTTtFN0JsRjlDLEFBQUEsV0FBVyxDQUFBO0lBQ1QsT0FBTyxFQUFFLGdCQUFnQjtHQUMxQjtFQUNELEFBQUEsS0FBSyxBQUFBLFdBQVcsQ0FBQztJQUFFLE9BQU8sRUFBRSxnQkFBZ0I7R0FBSztFQUNqRCxBQUFBLEVBQUUsQUFBQSxXQUFXLENBQUk7SUFBRSxPQUFPLEVBQUUsb0JBQW9CO0dBQUs7RUFDckQsQUFBQSxFQUFFLEFBQUEsV0FBVztFQUNiLEFBQUEsRUFBRSxBQUFBLFdBQVcsQ0FBSTtJQUFFLE9BQU8sRUFBRSxxQkFBcUI7R0FBSzs7O0E2QmdGdEQsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLE1BQU07RUFEbEQsQUFBQSxpQkFBaUIsQ0FBQztJQUVkLE9BQU8sRUFBRSxnQkFBZ0I7R0FFNUI7OztBQUVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSyxPQUFPLFNBQVMsRUFBRSxNQUFNO0VBRGxELEFBQUEsa0JBQWtCLENBQUM7SUFFZixPQUFPLEVBQUUsaUJBQWlCO0dBRTdCOzs7QUFFQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUssT0FBTyxTQUFTLEVBQUUsTUFBTTtFQURsRCxBQUFBLHdCQUF3QixDQUFDO0lBRXJCLE9BQU8sRUFBRSx1QkFBdUI7R0FFbkM7OztBQUVELE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtFN0JyR3ZCLEFBQUEsV0FBVyxDQUFBO0lBQ1QsT0FBTyxFQUFFLGdCQUFnQjtHQUMxQjtFQUNELEFBQUEsS0FBSyxBQUFBLFdBQVcsQ0FBQztJQUFFLE9BQU8sRUFBRSxnQkFBZ0I7R0FBSztFQUNqRCxBQUFBLEVBQUUsQUFBQSxXQUFXLENBQUk7SUFBRSxPQUFPLEVBQUUsb0JBQW9CO0dBQUs7RUFDckQsQUFBQSxFQUFFLEFBQUEsV0FBVztFQUNiLEFBQUEsRUFBRSxBQUFBLFdBQVcsQ0FBSTtJQUFFLE9BQU8sRUFBRSxxQkFBcUI7R0FBSzs7O0E2Qm1HdEQsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0VBRDNCLEFBQUEsaUJBQWlCLENBQUM7SUFFZCxPQUFPLEVBQUUsZ0JBQWdCO0dBRTVCOzs7QUFFQyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07RUFEM0IsQUFBQSxrQkFBa0IsQ0FBQztJQUVmLE9BQU8sRUFBRSxpQkFBaUI7R0FFN0I7OztBQUVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtFQUQzQixBQUFBLHdCQUF3QixDQUFDO0lBRXJCLE9BQU8sRUFBRSx1QkFBdUI7R0FFbkM7OztBQUVELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFN0I3R3RCLEFBQUEsVUFBVSxDQUFDO0lBQ1QsT0FBTyxFQUFFLGVBQWU7R0FDekI7OztBNkIrR0gsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLEtBQUs7RTdCakg3QyxBQUFBLFVBQVUsQ0FBQztJQUNULE9BQU8sRUFBRSxlQUFlO0dBQ3pCOzs7QTZCbUhILE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSyxPQUFPLFNBQVMsRUFBRSxNQUFNO0U3QnJIOUMsQUFBQSxVQUFVLENBQUM7SUFDVCxPQUFPLEVBQUUsZUFBZTtHQUN6Qjs7O0E2QnVISCxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07RTdCekh2QixBQUFBLFVBQVUsQ0FBQztJQUNULE9BQU8sRUFBRSxlQUFlO0dBQ3pCOzs7QUFGRCxBQUFBLGNBQWMsQ0FBSDtFQUNULE9BQU8sRUFBRSxlQUFlO0NBQ3pCOztBNkJvSUgsTUFBTSxDQUFDLEtBQUs7RTdCakpWLEFBQUEsY0FBYyxDQUFIO0lBQ1QsT0FBTyxFQUFFLGdCQUFnQjtHQUMxQjtFQUNELEFBQUEsS0FBSyxBQUFBLGNBQWMsQ0FBRjtJQUFFLE9BQU8sRUFBRSxnQkFBZ0I7R0FBSztFQUNqRCxBQUFBLEVBQUUsQUFBQSxjQUFjLENBQUM7SUFBRSxPQUFPLEVBQUUsb0JBQW9CO0dBQUs7RUFDckQsQUFBQSxFQUFFLEFBQUEsY0FBYztFQUNoQixBQUFBLEVBQUUsQUFBQSxjQUFjLENBQUM7SUFBRSxPQUFPLEVBQUUscUJBQXFCO0dBQUs7OztBNkI4SXhELEFBQUEsb0JBQW9CLENBQUM7RUFDbkIsT0FBTyxFQUFFLGVBQWU7Q0FLekI7O0FBSEMsTUFBTSxDQUFDLEtBQUs7RUFIZCxBQUFBLG9CQUFvQixDQUFDO0lBSWpCLE9BQU8sRUFBRSxnQkFBZ0I7R0FFNUI7OztBQUNELEFBQUEscUJBQXFCLENBQUM7RUFDcEIsT0FBTyxFQUFFLGVBQWU7Q0FLekI7O0FBSEMsTUFBTSxDQUFDLEtBQUs7RUFIZCxBQUFBLHFCQUFxQixDQUFDO0lBSWxCLE9BQU8sRUFBRSxpQkFBaUI7R0FFN0I7OztBQUNELEFBQUEsMkJBQTJCLENBQUM7RUFDMUIsT0FBTyxFQUFFLGVBQWU7Q0FLekI7O0FBSEMsTUFBTSxDQUFDLEtBQUs7RUFIZCxBQUFBLDJCQUEyQixDQUFDO0lBSXhCLE9BQU8sRUFBRSx1QkFBdUI7R0FFbkM7OztBQUVELE1BQU0sQ0FBQyxLQUFLO0U3Qi9KVixBQUFBLGFBQWEsQ0FBRjtJQUNULE9BQU8sRUFBRSxlQUFlO0dBQ3pCOzs7QStCaEJDLEFBQTZCLElBQXpCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixJQUFJLEFBQXRCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLElBQUksQUFBdEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsSUFBQztDQUN0Qjs7QUFFRCxBQUEwQixJQUF0QixDQUFBLEFBQUEsY0FBQyxDQUFlLElBQUksQUFBbkIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLElBQUksQUFBbkIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUEwQixJQUF0QixDQUFBLEFBQUEsY0FBQyxDQUFlLElBQUksQUFBbkIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxJQUFJLEFBQW5CLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxJQUFDO0NBQ25COztBQVhILEFBQThCLElBQTFCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixLQUFLLEFBQXZCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLEtBQUssQUFBdkIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsS0FBQztDQUN0Qjs7QUFFRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxLQUFLLEFBQXBCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxLQUFDO0NBQ25COztBQVhILEFBQThCLElBQTFCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixLQUFLLEFBQXZCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLEtBQUssQUFBdkIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsS0FBQztDQUN0Qjs7QUFFRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxLQUFLLEFBQXBCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxLQUFDO0NBQ25COztBQVhILEFBQThCLElBQTFCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixLQUFLLEFBQXZCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLEtBQUssQUFBdkIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsS0FBQztDQUN0Qjs7QUFFRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxLQUFLLEFBQXBCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxLQUFDO0NBQ25COztBQVhILEFBQThCLElBQTFCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixLQUFLLEFBQXZCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLEtBQUssQUFBdkIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsS0FBQztDQUN0Qjs7QUFFRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxLQUFLLEFBQXBCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxLQUFDO0NBQ25COztBQVhILEFBQThCLElBQTFCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixLQUFLLEFBQXZCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLEtBQUssQUFBdkIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsS0FBQztDQUN0Qjs7QUFFRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxLQUFLLEFBQXBCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxLQUFDO0NBQ25COztBQVhILEFBQThCLElBQTFCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixLQUFLLEFBQXZCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLEtBQUssQUFBdkIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsS0FBQztDQUN0Qjs7QUFFRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxLQUFLLEFBQXBCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxLQUFDO0NBQ25COztBQVhILEFBQThCLElBQTFCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixLQUFLLEFBQXZCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLEtBQUssQUFBdkIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsS0FBQztDQUN0Qjs7QUFFRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxLQUFLLEFBQXBCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxLQUFDO0NBQ25COztBQVhILEFBQThCLElBQTFCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixLQUFLLEFBQXZCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLEtBQUssQUFBdkIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsS0FBQztDQUN0Qjs7QUFFRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxLQUFLLEFBQXBCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxLQUFDO0NBQ25COztBQVhILEFBQThCLElBQTFCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixLQUFLLEFBQXZCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLEtBQUssQUFBdkIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsS0FBQztDQUN0Qjs7QUFFRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxLQUFLLEFBQXBCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxLQUFDO0NBQ25COztBQVhILEFBQThCLElBQTFCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixLQUFLLEFBQXZCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLEtBQUssQUFBdkIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsS0FBQztDQUN0Qjs7QUFFRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxLQUFLLEFBQXBCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxLQUFDO0NBQ25COztBQVhILEFBQThCLElBQTFCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixLQUFLLEFBQXZCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLEtBQUssQUFBdkIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsS0FBQztDQUN0Qjs7QUFFRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxLQUFLLEFBQXBCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxLQUFDO0NBQ25COztBQVhILEFBQThCLElBQTFCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixLQUFLLEFBQXZCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLEtBQUssQUFBdkIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsS0FBQztDQUN0Qjs7QUFFRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxLQUFLLEFBQXBCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxLQUFDO0NBQ25COztBQVhILEFBQThCLElBQTFCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixLQUFLLEFBQXZCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLEtBQUssQUFBdkIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsS0FBQztDQUN0Qjs7QUFFRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxLQUFLLEFBQXBCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxLQUFDO0NBQ25COztBQVhILEFBQThCLElBQTFCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixLQUFLLEFBQXZCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLEtBQUssQUFBdkIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsS0FBQztDQUN0Qjs7QUFFRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxLQUFLLEFBQXBCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxLQUFDO0NBQ25COztBQVhILEFBQThCLElBQTFCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixLQUFLLEFBQXZCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLEtBQUssQUFBdkIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsS0FBQztDQUN0Qjs7QUFFRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxLQUFLLEFBQXBCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxLQUFDO0NBQ25COztBQVhILEFBQThCLElBQTFCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixLQUFLLEFBQXZCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLEtBQUssQUFBdkIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsS0FBQztDQUN0Qjs7QUFFRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxLQUFLLEFBQXBCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxLQUFDO0NBQ25COztBQVhILEFBQThCLElBQTFCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixLQUFLLEFBQXZCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLEtBQUssQUFBdkIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsS0FBQztDQUN0Qjs7QUFFRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxLQUFLLEFBQXBCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxLQUFDO0NBQ25COztBQVhILEFBQThCLElBQTFCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixLQUFLLEFBQXZCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLEtBQUssQUFBdkIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsS0FBQztDQUN0Qjs7QUFFRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUEyQixJQUF2QixDQUFBLEFBQUEsY0FBQyxDQUFlLEtBQUssQUFBcEIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxLQUFLLEFBQXBCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxLQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQVhILEFBQStCLElBQTNCLENBQUEsQUFBQSxpQkFBQyxDQUFrQixNQUFNLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGlCQUFDLENBQWtCLE1BQU0sQUFBeEIsRUFBZ0M7RUFDMUMsbUJBQW1CLEVBQUMsTUFBQztDQUN0Qjs7QUFFRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFRSSxRQVJILEFBQUEsRUFRRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsRUFBNkI7RUFDdkMsZ0JBQWdCLEVBQUUsQ0FBQztDQUtwQjs7QUFQRCxBQUE0QixJQUF4QixDQUFBLEFBQUEsY0FBQyxDQUFlLE1BQU0sQUFBckIsR0FQVCxBQUFBLFFBQUMsQUFBQSxDQVdsSCxZQUFvSSxHQVhuQixBQUFBLEFBV00sUUFYTCxBQUFBLEVBUUcsQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBR2pJLFlBQW9JLENBQUM7RUFDWixnQkFBZ0IsRUFBQyxNQUFDO0NBQ25COztBQ29CSCxBQUErQixJQUEzQixDQUFBLEFBQUEsZUFBQyxDQUFnQixRQUFRLEFBQXhCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGVBQUMsQ0FBZ0IsUUFBUSxBQUF4QixFQUEyQjtFQUNyQywwQkFBMEIsRUFuQ3RCLG9DQUFvQztDQW9DekM7O0FBSEQsQUFBNkIsSUFBekIsQ0FBQSxBQUFBLGVBQUMsQ0FBZ0IsTUFBTSxBQUF0QixHQUZULEFBQUEsUUFBQyxBQUFBLElBQUQsQUFBQSxBQUdJLFFBSEgsQUFBQSxFQUdHLEFBQUEsUUFBRSxBQUFBLEVBQVMsQUFBQSxlQUFDLENBQWdCLE1BQU0sQUFBdEIsRUFBMkI7RUFDckMsMEJBQTBCLEVBakN4QixnQ0FBaUM7Q0FrQ3BDOztBQUhELEFBQWdDLElBQTVCLENBQUEsQUFBQSxlQUFDLENBQWdCLFNBQVMsQUFBekIsR0FGVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFHSSxRQUhILEFBQUEsRUFHRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsZUFBQyxDQUFnQixTQUFTLEFBQXpCLEVBQTJCO0VBQ3JDLDBCQUEwQixFQWhDckIsMkJBQTJCO0NBaUNqQzs7QUFIRCxBQUFpQyxJQUE3QixDQUFBLEFBQUEsZUFBQyxDQUFnQixVQUFVLEFBQTFCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGVBQUMsQ0FBZ0IsVUFBVSxBQUExQixFQUEyQjtFQUNyQywwQkFBMEIsRUEvQnBCLDJCQUE4QjtDQWdDckM7O0FBSEQsQUFBb0MsSUFBaEMsQ0FBQSxBQUFBLGVBQUMsQ0FBZ0IsYUFBYSxBQUE3QixHQUZULEFBQUEsUUFBQyxBQUFBLElBQUQsQUFBQSxBQUdJLFFBSEgsQUFBQSxFQUdHLEFBQUEsUUFBRSxBQUFBLEVBQVMsQUFBQSxlQUFDLENBQWdCLGFBQWEsQUFBN0IsRUFBMkI7RUFDckMsMEJBQTBCLEVBOUJqQiw4QkFBOEI7Q0ErQnhDOztBQUhELEFBQXFDLElBQWpDLENBQUEsQUFBQSxlQUFDLENBQWdCLGNBQWMsQUFBOUIsR0FGVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFHSSxRQUhILEFBQUEsRUFHRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsZUFBQyxDQUFnQixjQUFjLEFBQTlCLEVBQTJCO0VBQ3JDLDBCQUEwQixFQTVCaEIsc0NBQWtDO0NBNkI3Qzs7QUFIRCxBQUFzQyxJQUFsQyxDQUFBLEFBQUEsZUFBQyxDQUFnQixlQUFlLEFBQS9CLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGVBQUMsQ0FBZ0IsZUFBZSxBQUEvQixFQUEyQjtFQUNyQywwQkFBMEIsRUEzQmYsdUNBQW9DO0NBNEJoRDs7QUFIRCxBQUF5QyxJQUFyQyxDQUFBLEFBQUEsZUFBQyxDQUFnQixrQkFBa0IsQUFBbEMsR0FGVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFHSSxRQUhILEFBQUEsRUFHRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsZUFBQyxDQUFnQixrQkFBa0IsQUFBbEMsRUFBMkI7RUFDckMsMEJBQTBCLEVBMUJaLHNDQUFtQztDQTJCbEQ7O0FBSEQsQUFBcUMsSUFBakMsQ0FBQSxBQUFBLGVBQUMsQ0FBZ0IsY0FBYyxBQUE5QixHQUZULEFBQUEsUUFBQyxBQUFBLElBQUQsQUFBQSxBQUdJLFFBSEgsQUFBQSxFQUdHLEFBQUEsUUFBRSxBQUFBLEVBQVMsQUFBQSxlQUFDLENBQWdCLGNBQWMsQUFBOUIsRUFBMkI7RUFDckMsMEJBQTBCLEVBeEJoQixtQ0FBZ0M7Q0F5QjNDOztBQUhELEFBQXNDLElBQWxDLENBQUEsQUFBQSxlQUFDLENBQWdCLGVBQWUsQUFBL0IsR0FGVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFHSSxRQUhILEFBQUEsRUFHRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsZUFBQyxDQUFnQixlQUFlLEFBQS9CLEVBQTJCO0VBQ3JDLDBCQUEwQixFQXZCZixtQ0FBZ0M7Q0F3QjVDOztBQUhELEFBQXlDLElBQXJDLENBQUEsQUFBQSxlQUFDLENBQWdCLGtCQUFrQixBQUFsQyxHQUZULEFBQUEsUUFBQyxBQUFBLElBQUQsQUFBQSxBQUdJLFFBSEgsQUFBQSxFQUdHLEFBQUEsUUFBRSxBQUFBLEVBQVMsQUFBQSxlQUFDLENBQWdCLGtCQUFrQixBQUFsQyxFQUEyQjtFQUNyQywwQkFBMEIsRUF0QloscUNBQWlDO0NBdUJoRDs7QUFIRCxBQUFxQyxJQUFqQyxDQUFBLEFBQUEsZUFBQyxDQUFnQixjQUFjLEFBQTlCLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGVBQUMsQ0FBZ0IsY0FBYyxBQUE5QixFQUEyQjtFQUNyQywwQkFBMEIsRUFwQmhCLHFDQUFpQztDQXFCNUM7O0FBSEQsQUFBc0MsSUFBbEMsQ0FBQSxBQUFBLGVBQUMsQ0FBZ0IsZUFBZSxBQUEvQixHQUZULEFBQUEsUUFBQyxBQUFBLElBQUQsQUFBQSxBQUdJLFFBSEgsQUFBQSxFQUdHLEFBQUEsUUFBRSxBQUFBLEVBQVMsQUFBQSxlQUFDLENBQWdCLGVBQWUsQUFBL0IsRUFBMkI7RUFDckMsMEJBQTBCLEVBbkJmLG9DQUFnQztDQW9CNUM7O0FBSEQsQUFBeUMsSUFBckMsQ0FBQSxBQUFBLGVBQUMsQ0FBZ0Isa0JBQWtCLEFBQWxDLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGVBQUMsQ0FBZ0Isa0JBQWtCLEFBQWxDLEVBQTJCO0VBQ3JDLDBCQUEwQixFQWxCWix1Q0FBbUM7Q0FtQmxEOztBQUhELEFBQXNDLElBQWxDLENBQUEsQUFBQSxlQUFDLENBQWdCLGVBQWUsQUFBL0IsR0FGVCxBQUFBLFFBQUMsQUFBQSxJQUFELEFBQUEsQUFHSSxRQUhILEFBQUEsRUFHRyxBQUFBLFFBQUUsQUFBQSxFQUFTLEFBQUEsZUFBQyxDQUFnQixlQUFlLEFBQS9CLEVBQTJCO0VBQ3JDLDBCQUEwQixFQWhCZixxQ0FBaUM7Q0FpQjdDOztBQUhELEFBQXVDLElBQW5DLENBQUEsQUFBQSxlQUFDLENBQWdCLGdCQUFnQixBQUFoQyxHQUZULEFBQUEsUUFBQyxBQUFBLElBQUQsQUFBQSxBQUdJLFFBSEgsQUFBQSxFQUdHLEFBQUEsUUFBRSxBQUFBLEVBQVMsQUFBQSxlQUFDLENBQWdCLGdCQUFnQixBQUFoQyxFQUEyQjtFQUNyQywwQkFBMEIsRUFmZCxvQ0FBZ0M7Q0FnQjdDOztBQUhELEFBQTBDLElBQXRDLENBQUEsQUFBQSxlQUFDLENBQWdCLG1CQUFtQixBQUFuQyxHQUZULEFBQUEsUUFBQyxBQUFBLElBQUQsQUFBQSxBQUdJLFFBSEgsQUFBQSxFQUdHLEFBQUEsUUFBRSxBQUFBLEVBQVMsQUFBQSxlQUFDLENBQWdCLG1CQUFtQixBQUFuQyxFQUEyQjtFQUNyQywwQkFBMEIsRUFkWCx1Q0FBbUM7Q0FlbkQ7O0FBSEQsQUFBc0MsSUFBbEMsQ0FBQSxBQUFBLGVBQUMsQ0FBZ0IsZUFBZSxBQUEvQixHQUZULEFBQUEsUUFBQyxBQUFBLElBQUQsQUFBQSxBQUdJLFFBSEgsQUFBQSxFQUdHLEFBQUEsUUFBRSxBQUFBLEVBQVMsQUFBQSxlQUFDLENBQWdCLGVBQWUsQUFBL0IsRUFBMkI7RUFDckMsMEJBQTBCLEVBWmYscUNBQWlDO0NBYTdDOztBQUhELEFBQXVDLElBQW5DLENBQUEsQUFBQSxlQUFDLENBQWdCLGdCQUFnQixBQUFoQyxHQUZULEFBQUEsUUFBQyxBQUFBLElBQUQsQUFBQSxBQUdJLFFBSEgsQUFBQSxFQUdHLEFBQUEsUUFBRSxBQUFBLEVBQVMsQUFBQSxlQUFDLENBQWdCLGdCQUFnQixBQUFoQyxFQUEyQjtFQUNyQywwQkFBMEIsRUFYZCxvQ0FBZ0M7Q0FZN0M7O0FBSEQsQUFBMEMsSUFBdEMsQ0FBQSxBQUFBLGVBQUMsQ0FBZ0IsbUJBQW1CLEFBQW5DLEdBRlQsQUFBQSxRQUFDLEFBQUEsSUFBRCxBQUFBLEFBR0ksUUFISCxBQUFBLEVBR0csQUFBQSxRQUFFLEFBQUEsRUFBUyxBQUFBLGVBQUMsQ0FBZ0IsbUJBQW1CLEFBQW5DLEVBQTJCO0VBQ3JDLDBCQUEwQixFQVZYLHVDQUFtQztDQVduRDs7QUMvQkw7Ozs7O0dBS0c7Q0FFSCxBQUFBLEFBQUEsUUFBQyxFQUFVLE1BQU0sQUFBaEIsRUFBaUIsQUFBQSxRQUFDLEVBQVUsTUFBTSxBQUFoQixFQUFrQjtFQUNuQyxPQUFPLEVBQUUsQ0FBQztFQUNWLG1CQUFtQixFQUFFLGtCQUFrQjtDQU14Qzs7Q0FSRCxBQUFBLEFBSUUsUUFKRCxFQUFVLE1BQU0sQUFBaEIsRUFBaUIsQUFBQSxRQUFDLEVBQVUsTUFBTSxBQUFoQixDQUlqQixZQUFhLENBQUM7RUFDWixPQUFPLEVBQUUsQ0FBQztFQUNWLFNBQVMsRUFBRSxlQUFlO0NBQzNCOztDQUdILEFBQUEsQUFBQSxRQUFDLENBQVMsU0FBUyxBQUFsQixFQUFvQjtFQUNuQixTQUFTLEVBQUUsbUJBQTJCO0NBQ3ZDOztDQUVELEFBQUEsQUFBQSxRQUFDLENBQVMsV0FBVyxBQUFwQixFQUFzQjtFQUNyQixTQUFTLEVBQUUsb0JBQTRCO0NBQ3hDOztDQUVELEFBQUEsQUFBQSxRQUFDLENBQVMsWUFBWSxBQUFyQixFQUF1QjtFQUN0QixTQUFTLEVBQUUsb0JBQTRCO0NBQ3hDOztDQUVELEFBQUEsQUFBQSxRQUFDLENBQVMsV0FBVyxBQUFwQixFQUFzQjtFQUNyQixTQUFTLEVBQUUsbUJBQTJCO0NBQ3ZDOztDQUVELEFBQUEsQUFBQSxRQUFDLENBQVMsZUFBZSxBQUF4QixFQUEwQjtFQUN6QixTQUFTLEVBQUUsd0JBQXdDO0NBQ3BEOztDQUVELEFBQUEsQUFBQSxRQUFDLENBQVMsY0FBYyxBQUF2QixFQUF5QjtFQUN4QixTQUFTLEVBQUUsdUJBQXVDO0NBQ25EOztDQUVELEFBQUEsQUFBQSxRQUFDLENBQVMsaUJBQWlCLEFBQTFCLEVBQTRCO0VBQzNCLFNBQVMsRUFBRSx5QkFBeUM7Q0FDckQ7O0NBRUQsQUFBQSxBQUFBLFFBQUMsQ0FBUyxnQkFBZ0IsQUFBekIsRUFBMkI7RUFDMUIsU0FBUyxFQUFFLHdCQUF3QztDQUNwRDs7QUFLRDs7OztHQUlHO0NBRUgsQUFBQSxBQUFBLFFBQUMsRUFBVSxNQUFNLEFBQWhCLEVBQWlCLEFBQUEsUUFBQyxFQUFVLE1BQU0sQUFBaEIsRUFBa0I7RUFDbkMsT0FBTyxFQUFFLENBQUM7RUFDVixtQkFBbUIsRUFBRSxrQkFBa0I7Q0FNeEM7O0NBUkQsQUFBQSxBQUlFLFFBSkQsRUFBVSxNQUFNLEFBQWhCLEVBQWlCLEFBQUEsUUFBQyxFQUFVLE1BQU0sQUFBaEIsQ0FJakIsWUFBYSxDQUFDO0VBQ1osT0FBTyxFQUFFLENBQUM7RUFDVixTQUFTLEVBQUUsZUFBZSxDQUFDLFFBQVE7Q0FDcEM7O0NBR0gsQUFBQSxBQUFBLFFBQUMsQ0FBUyxTQUFTLEFBQWxCLEVBQW9CO0VBQ25CLFNBQVMsRUFBRSxVQUFTO0NBQ3JCOztDQUVELEFBQUEsQUFBQSxRQUFDLENBQVMsWUFBWSxBQUFyQixFQUF1QjtFQUN0QixTQUFTLEVBQUUsbUJBQTJCLENBQUMsVUFBUztDQUNqRDs7Q0FFRCxBQUFBLEFBQUEsUUFBQyxDQUFTLGNBQWMsQUFBdkIsRUFBeUI7RUFDeEIsU0FBUyxFQUFFLG9CQUE0QixDQUFDLFVBQVM7Q0FDbEQ7O0NBRUQsQUFBQSxBQUFBLFFBQUMsQ0FBUyxlQUFlLEFBQXhCLEVBQTBCO0VBQ3pCLFNBQVMsRUFBRSxvQkFBNEIsQ0FBQyxVQUFTO0NBQ2xEOztDQUVELEFBQUEsQUFBQSxRQUFDLENBQVMsY0FBYyxBQUF2QixFQUF5QjtFQUN4QixTQUFTLEVBQUUsbUJBQTJCLENBQUMsVUFBUztDQUNqRDs7Q0FFRCxBQUFBLEFBQUEsUUFBQyxDQUFTLFVBQVUsQUFBbkIsRUFBcUI7RUFDcEIsU0FBUyxFQUFFLFVBQVU7Q0FDdEI7O0NBRUQsQUFBQSxBQUFBLFFBQUMsQ0FBUyxhQUFhLEFBQXRCLEVBQXdCO0VBQ3ZCLFNBQVMsRUFBRSxtQkFBMkIsQ0FBQyxVQUFVO0NBQ2xEOztDQUVELEFBQUEsQUFBQSxRQUFDLENBQVMsZUFBZSxBQUF4QixFQUEwQjtFQUN6QixTQUFTLEVBQUUsb0JBQTRCLENBQUMsVUFBVTtDQUNuRDs7Q0FFRCxBQUFBLEFBQUEsUUFBQyxDQUFTLGdCQUFnQixBQUF6QixFQUEyQjtFQUMxQixTQUFTLEVBQUUsb0JBQTRCLENBQUMsVUFBVTtDQUNuRDs7Q0FFRCxBQUFBLEFBQUEsUUFBQyxDQUFTLGVBQWUsQUFBeEIsRUFBMEI7RUFDekIsU0FBUyxFQUFFLG1CQUEyQixDQUFDLFVBQVU7Q0FDbEQ7O0FBS0Q7O0dBRUc7Q0FFSCxBQUFBLEFBQUEsUUFBQyxFQUFVLE9BQU8sQUFBakIsRUFBa0IsQUFBQSxRQUFDLEVBQVUsT0FBTyxBQUFqQixFQUFtQjtFQUNyQyxtQkFBbUIsRUFBRSxTQUFTO0NBSy9COztDQU5ELEFBQUEsQUFHRSxRQUhELEVBQVUsT0FBTyxBQUFqQixFQUFrQixBQUFBLFFBQUMsRUFBVSxPQUFPLEFBQWpCLENBR2xCLFlBQWEsQ0FBQztFQUNaLFNBQVMsRUFBRSxlQUFlO0NBQzNCOztDQUdILEFBQUEsQUFBQSxRQUFDLENBQVMsVUFBVSxBQUFuQixFQUFxQjtFQUNwQixTQUFTLEVBQUUsZ0JBQWdCO0NBQzVCOztDQUVELEFBQUEsQUFBQSxRQUFDLENBQVMsWUFBWSxBQUFyQixFQUF1QjtFQUN0QixTQUFTLEVBQUUsaUJBQWlCO0NBQzdCOztDQUVELEFBQUEsQUFBQSxRQUFDLENBQVMsYUFBYSxBQUF0QixFQUF3QjtFQUN2QixTQUFTLEVBQUUsaUJBQWlCO0NBQzdCOztDQUVELEFBQUEsQUFBQSxRQUFDLENBQVMsWUFBWSxBQUFyQixFQUF1QjtFQUN0QixTQUFTLEVBQUUsZ0JBQWdCO0NBQzVCOztBQUtEOzs7R0FHRztDQUVILEFBQUEsQUFBQSxRQUFDLEVBQVUsTUFBTSxBQUFoQixFQUFpQixBQUFBLFFBQUMsRUFBVSxNQUFNLEFBQWhCLEVBQWtCO0VBQ25DLG1CQUFtQixFQUFFLE1BQU07RUFDM0IsbUJBQW1CLEVBQUUsU0FBUztDQUMvQjs7Q0FFRCxBQUFBLEFBQUEsUUFBQyxDQUFTLFdBQVcsQUFBcEIsRUFBc0I7RUFDckIsU0FBUyxFQUFFLG1CQUFtQixDQUFDLGdCQUFnQjtDQUVoRDs7Q0FIRCxBQUFBLEFBRUUsUUFGRCxDQUFTLFdBQVcsQUFBcEIsQ0FFQyxZQUFhLENBQUM7RUFBQyxTQUFTLEVBQUUsbUJBQW1CLENBQUMsVUFBVTtDQUFHOztDQUc3RCxBQUFBLEFBQUEsUUFBQyxDQUFTLFlBQVksQUFBckIsRUFBdUI7RUFDdEIsU0FBUyxFQUFFLG1CQUFtQixDQUFDLGVBQWU7Q0FFL0M7O0NBSEQsQUFBQSxBQUVFLFFBRkQsQ0FBUyxZQUFZLEFBQXJCLENBRUMsWUFBYSxDQUFDO0VBQUMsU0FBUyxFQUFFLG1CQUFtQixDQUFDLFVBQVU7Q0FBRzs7Q0FHN0QsQUFBQSxBQUFBLFFBQUMsQ0FBUyxTQUFTLEFBQWxCLEVBQW9CO0VBQ25CLFNBQVMsRUFBRSxtQkFBbUIsQ0FBQyxnQkFBZ0I7Q0FFaEQ7O0NBSEQsQUFBQSxBQUVFLFFBRkQsQ0FBUyxTQUFTLEFBQWxCLENBRUMsWUFBYSxDQUFDO0VBQUMsU0FBUyxFQUFFLG1CQUFtQixDQUFDLFVBQVU7Q0FBRzs7Q0FHN0QsQUFBQSxBQUFBLFFBQUMsQ0FBUyxXQUFXLEFBQXBCLEVBQXNCO0VBQ3JCLFNBQVMsRUFBRSxtQkFBbUIsQ0FBQyxlQUFlO0NBRS9DOztDQUhELEFBQUEsQUFFRSxRQUZELENBQVMsV0FBVyxBQUFwQixDQUVDLFlBQWEsQ0FBQztFQUFDLFNBQVMsRUFBRSxtQkFBbUIsQ0FBQyxVQUFVO0NBQUc7O0EvQzlKN0Qsa0JBQWtCO0FnRGpCbEIsdUJBQXVCO0FBQ3ZCLGtGQUFrRjtBQUNsRiwwQ0FBMEM7QUFDMUMsa0ZBQWtGO0FBRWxGOztHQUVHO0FBQ0gsQUFBQSxJQUFJLENBQUM7RUFDSCxrQkFBa0IsRUFBRSxVQUFVO0VBQ3RCLFVBQVUsRUFBRSxVQUFVO0NBQy9COztBQUVEOzs7OztHQUtHO0FBQ0gsQUFBQSxDQUFDLEVBQUUsQUFBQSxDQUFDLEFBQUEsUUFBUSxFQUFFLEFBQUEsQ0FBQyxBQUFBLE9BQU8sQ0FBQztFQUNyQixrQkFBa0IsRUFBRSxPQUFPO0VBQ25CLFVBQVUsRUFBRSxPQUFPO0NBQzVCOztBQUVELFVBQVU7QUFDVixBQUFBLENBQUMsQ0FBQztFQUNBLEtBQUssRS9DS2EsT0FBTztFK0NKekIsZUFBZSxFQUFFLFNBQVM7Q0FNM0I7O0FBUkQsQTdDUEksQzZDT0gsQTdDUEcsTUFBTyxFNkNPWCxBN0NOSSxDNkNNSCxBN0NORyxPQUFRLEU2Q01aLEE3Q0xJLEM2Q0tILEE3Q0xHLE1BQU8sQ0FBQztFNkNVUixLQUFLLEUvQ0hzQixPQUFPO0UrQ0lsQyxlQUFlLEVBQUUsU0FBUztDN0NUekI7O0E2Q2FMLFdBQVc7QUFFWCxBQUFBLEdBQUcsQ0FBQztFQUNGLGNBQWMsRUFBRSxNQUFNO0NBQ3ZCOztBQUVELHVFQUF1RTtBQUN2RSxBQUFBLGVBQWUsQ0FBQztFdENqQ2QsT0FBTyxFQUR1QixLQUFLO0VBRW5DLFNBQVMsRUFBRSxJQUFJO0VBQ2YsTUFBTSxFQUFFLElBQUk7Q3NDaUNiOztBQUVELHdCQUF3QjtBQUN4QixBQUFBLE9BQU8sQ0FBQztFQUNOLGNBQWMsRUFBRSxJQUFJO0NBU3JCOztBQVBDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFIckMsQUFBQSxPQUFPLENBQUM7SUFJSixjQUFjLEVBQUUsSUFBSTtHQU12Qjs7O0FBSEMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQVByQyxBQUFBLE9BQU8sQ0FBQztJQVFKLGNBQWMsRUFBRSxJQUFJO0dBRXZCOzs7QUFFRCxBQUFBLGVBQWUsQ0FBQztFQUNkLGdCQUFnQixFQUFFLElBQUk7Q0FDdkI7O0FBRUQsQUFBQSxPQUFPLENBQUM7RUFDTixRQUFRLEVBQUUsUUFBUTtDQUNuQjs7QUFFRCxBQUFBLE1BQU0sQ0FBQztFQUNMLE1BQU0sRUFBRSxDQUFDO0NBQ1Y7O0FBRUQsQUFBQSxFQUFFLENBQUM7RUFDRCxNQUFNLEVBQUUsTUFBTTtFQUNkLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLE9BQU8sRUFBRSxDQUFDO0NBS1g7O0FBUkQsQUFLRSxFQUxBLENBS0EsRUFBRSxDQUFDO0VBQ0QsV0FBVyxFQUFFLElBQUk7Q0FDbEI7O0FDeEVILFVBQVU7RUFDUixXQUFXLEVBQUUsMkJBQTJCO0VBQ3hDLEdBQUcsRUFBRSw4Q0FBOEMsQ0FBQyxjQUFjLEVBQzdELDZDQUE2QyxDQUFDLGtCQUFrQjs7O0FDSHRFLEFBQUEsSUFBSSxDQUFDO0VBQ0osV0FBVyxFakRXUyxhQUFhLEVBQUUsS0FBSztFaURWeEMsU0FBUyxFakRFTSxJQUFJO0VpRERuQixXQUFXLEVqRElNLEdBQUc7RWlESHBCLEtBQUssRWpEaUJ3QixPQUFPO0NpRFpyQzs7QUFIQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBTnBDLEFBQUEsSUFBSSxDQUFDO0lBT0YsU0FBUyxFakRGRSxJQUFJO0dpRElsQjs7O0FBRUEsQUFBQSxDQUFDLENBQUM7RUFDRCxXQUFXLEVqREFTLGFBQWEsRUFBRSxLQUFLO0VpREN4QyxTQUFTLEVBQUUsSUFBSTtFQUNmLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLGFBQWEsRUFBRSxJQUFJO0NBa0JwQjs7QUFoQkMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtFQVByQyxBQUFBLENBQUMsQ0FBQztJQVFDLGFBQWEsRUFBRSxJQUFJO0dBZXRCOzs7QUFaQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBWHBDLEFBQUEsQ0FBQyxDQUFDO0lBWUMsU0FBUyxFQUFFLElBQUk7SUFDZixXQUFXLEVBQUUsSUFBSTtJQUNqQixhQUFhLEVBQUUsSUFBSTtHQVN0Qjs7O0FBTkMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQWpCcEMsQUFBQSxDQUFDLENBQUM7SUFrQkMsU0FBUyxFQUFFLElBQUk7SUFDZixXQUFXLEVBQUUsSUFBSTtJQUNqQixVQUFVLEVBQUUsSUFBSTtJQUNoQixhQUFhLEVBQUUsSUFBSTtHQUV0Qjs7O0FBSUQsQUFBQSxnQkFBZ0IsQ0FBQztFQUNmLFdBQVcsRWpENUJLLFdBQVcsRUFBRSxzQkFBc0IsRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLFVBQVU7RWlENkJ2RyxXQUFXLEVBQUUsR0FBRztFQUNoQixTQUFTLEVBQUUsSUFBSTtFQUNmLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLGFBQWEsRUFBRSxDQUFDO0VBQ2hCLEtBQUssRWpEekJrQixPQUFPO0NpRDJDL0I7O0FBaEJDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07RUFUdEMsQUFBQSxnQkFBZ0IsQ0FBQztJQVViLFNBQVMsRUFBRSxJQUFJO0lBQ2YsV0FBVyxFQUFFLElBQUk7SUFDakIsVUFBVSxFQUFFLElBQUk7R0FhbkI7OztBQVZDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFmckMsQUFBQSxnQkFBZ0IsQ0FBQztJQWdCYixTQUFTLEVBQUUsSUFBSTtJQUNmLFdBQVcsRUFBRSxJQUFJO0dBUXBCOzs7QUFMQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBcEJyQyxBQUFBLGdCQUFnQixDQUFDO0lBcUJiLFNBQVMsRUFBRSxJQUFJO0lBQ2YsV0FBVyxFQUFFLElBQUk7SUFDakIsVUFBVSxFQUFFLElBQUk7R0FFbkI7OztBQUVELEFBQUEsMEJBQTBCLEVBQUUsQUFBQSw4QkFBOEIsQ0FBQztFQUN6RCxLQUFLLEVBQUUsSUFBSTtDQUNaOztBQUVELEFBQUEsb0JBQW9CLENBQUM7RUFDbkIsV0FBVyxFakQvRE0sR0FBRztFaURnRXBCLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLElBQUk7RUFDakIsVUFBVSxFQUFFLENBQUM7RUFDYixhQUFhLEVBQUUsQ0FBQztDQWNqQjs7QUFaQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0VBUHRDLEFBQUEsb0JBQW9CLENBQUM7SUFRakIsU0FBUyxFQUFFLElBQUk7R0FXbEI7OztBQVJDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFYckMsQUFBQSxvQkFBb0IsQ0FBQztJQVlqQixTQUFTLEVBQUUsSUFBSTtHQU9sQjs7O0FBSkMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQWZyQyxBQUFBLG9CQUFvQixDQUFDO0lBZ0JqQixTQUFTLEVBQUUsSUFBSTtJQUNmLFdBQVcsRUFBRSxJQUFJO0dBRXBCOzs7QUFFRCxBQUFBLGdCQUFnQixFQUFFLEFBQUEsbUJBQW1CLENBQUU7RUFDckMsV0FBVyxFakRoRkssV0FBVyxFQUFFLHNCQUFzQixFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsVUFBVTtFaURpRnZHLFdBQVcsRUFBRSxHQUFHO0NBQ2pCOztBQUVELEFBQUEsZ0JBQWdCLENBQUM7RUFDZixTQUFTLEVBQUUsSUFBSTtFQUNmLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLFVBQVUsRUFBRSxDQUFDO0VBQ2IsYUFBYSxFQUFFLElBQUk7RUFDbkIsS0FBSyxFakRoRmtCLE9BQU87Q2lEOEYvQjs7QUFaQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0VBUHRDLEFBQUEsZ0JBQWdCLENBQUM7SUFRYixTQUFTLEVBQUUsSUFBSTtHQVdsQjs7O0FBUkMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQVhyQyxBQUFBLGdCQUFnQixDQUFDO0lBWWIsU0FBUyxFQUFFLElBQUk7R0FPbEI7OztBQUpDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFmckMsQUFBQSxnQkFBZ0IsQ0FBQztJQWdCYixTQUFTLEVBQUUsSUFBSTtJQUNmLGFBQWEsRUFBRSxJQUFJO0dBRXRCOzs7QUFFRCxBQUFBLG1CQUFtQixDQUFDO0VBQ2xCLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLElBQUk7RUFDakIsVUFBVSxFQUFFLENBQUM7RUFDYixhQUFhLEVBQUUsQ0FBQztFQUNoQixLQUFLLEVqRHJHa0IsT0FBTztDaURzRy9COztBQUVELEFBQUEsZUFBZSxDQUFDO0VBQ2QsV0FBVyxFQUFFLEdBQUc7RUFDaEIsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsSUFBSTtFQUNqQixVQUFVLEVBQUUsQ0FBQztFQUNiLGFBQWEsRUFBRSxJQUFJO0NBaUJwQjs7QUFmQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0VBUHRDLEFBQUEsZUFBZSxDQUFDO0lBUVosU0FBUyxFQUFFLElBQUk7R0FjbEI7OztBQVhDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFYckMsQUFBQSxlQUFlLENBQUM7SUFZWixTQUFTLEVBQUUsSUFBSTtJQUNmLFdBQVcsRUFBRSxJQUFJO0lBQ2pCLGFBQWEsRUFBRSxJQUFJO0dBUXRCOzs7QUFMQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBakJyQyxBQUFBLGVBQWUsQ0FBQztJQWtCWixTQUFTLEVBQUUsSUFBSTtJQUNmLFdBQVcsRUFBRSxJQUFJO0lBQ2pCLGFBQWEsRUFBRSxDQUFDO0dBRW5COzs7QUFFRCxBQUFBLGFBQWEsQ0FBQztFQUNaLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLEdBQUc7RUFDaEIsV0FBVyxFQUFFLElBQUk7RUFDakIsV0FBVyxFakQ3SUssV0FBVyxFQUFFLHNCQUFzQixFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsVUFBVTtDaUQ4SXhHOztBQUlELEFBQUEsVUFBVSxDQUFXO0VBQUUsVUFBVSxFQUFFLElBQUk7Q0FBSzs7QUFDNUMsQUFBQSxXQUFXLENBQVU7RUFBRSxVQUFVLEVBQUUsS0FBSztDQUFLOztBQUM3QyxBQUFBLFlBQVksQ0FBUztFQUFFLFVBQVUsRUFBRSxNQUFNO0NBQUs7O0FBRTlDLEFBQUEsV0FBVyxDQUFDO0VBQ1YsU0FBUyxFQUFFLElBQUk7Q0FDaEI7O0FBRUQsQUFBQSxLQUFLLENBQUM7RUFDSixXQUFXLEVBQUUsR0FBRztDQUNqQjs7QUFFRCxBQUFBLEtBQUssQ0FBQztFQUNKLEtBQUssRWpEdEprQixPQUFPO0NpRHVKL0I7O0FBRUQsQUFBQSxRQUFRLENBQUM7RUFDUCxLQUFLLEVqRHJKYSxPQUFPO0NpRHNKMUI7O0FBRUQsQUFBQSxhQUFhLENBQUM7RUFDWixLQUFLLEVqRHZKVyxPQUFPO0NpRHdKeEI7O0FBRUQsQUFBQSxVQUFVLENBQUM7RUFDVCxjQUFjLEVBQUUsU0FBUztDQUMxQjs7QUM3TEQsdUJBQXVCO0FBQ3ZCLGtGQUFrRjtBQUNsRiwyQ0FBMkM7QUFDM0Msa0ZBQWtGO0FBRWxGOztHQUVHO0FBQ0gsQUFBQSxTQUFTLEFBQUEsT0FBTyxDQUFDO0VBQ2YsS0FBSyxFQUFFLElBQUk7RUFDWCxPQUFPLEVBQUUsRUFBRTtFQUNYLE9BQU8sRUFBRSxLQUFLO0NBQ2Y7O0FBRUQ7Ozs7O0dBS0c7QUFDSCxpQkFBaUI7QUFDakIsOEJBQThCO0FBQUEsT0FBTztBQUFBLElBQUk7QUFDekMsMEJBQTBCO0FBQUEsT0FBTztBQUFBLElBQUk7QUFDckMsMkJBQTJCO0FBQUEsT0FBTztBQUFBLElBQUk7QUFDdEMsMkJBQTJCO0FBQUEsT0FBTztBQUFBLElBQUk7QUFDdEMsNEJBQTRCO0FBQUEsT0FBTztBQUFBLElBQUk7QUFDdkMsb0JBQW9CO0FBQUEsT0FBTztBQUFBLElBQUk7QUFDL0IsT0FBTztBQUVQOzs7O0dBSUc7QUFDSCxBQUFBLFVBQVUsQ0FBQztFQUNULFFBQVEsRUFBRSxNQUFNO0VBQ2hCLE9BQU8sRUFBRSxDQUFDO0VBQUcsT0FBTztFQUNwQixXQUFXLEVBQUUsSUFBSTtFQUNqQixXQUFXLEVBQUUsTUFBTTtDQUNwQjs7QUFFRDs7OztHQUlHO0FBQ0gsQUFBQSxnQkFBZ0IsQ0FBQztFQUNmLE1BQU0sRUFBRSxDQUFDO0VBQ1QsSUFBSSxFQUFFLGFBQWE7RUFDbkIsTUFBTSxFQUFFLEdBQUc7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLFFBQVEsRUFBRSxNQUFNO0VBQ2hCLE9BQU8sRUFBRSxDQUFDO0VBQ1YsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLEdBQUc7Q0FDWDs7QUFFRDs7R0FFRztBQUNILEFBQUEsVUFBVSxDQUFDO0VBQ1QsS0FBSyxFQUFFLElBQUk7Q0FDWjs7QUFFRDs7R0FFRztBQUNILEFBQUEsV0FBVyxDQUFDO0VBQ1YsS0FBSyxFQUFFLEtBQUs7Q0FDYjs7QUFHRCw0QkFBNEI7QUFDNUIsQUFBQSxJQUFJLENBQUM7RUFDSCxhQUFhLEVBQUUsWUFBWTtDQUs1Qjs7QUFIQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBSHJDLEFBQUEsSUFBSSxDQUFDO0lBSUQsYUFBYSxFQUFFLGVBQWU7R0FFakM7OztBQUVELEFBQUEsSUFBSSxDQUFDO0VBQ0gsWUFBWSxFQUFFLFlBQVk7Q0FLM0I7O0FBSEMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQUhyQyxBQUFBLElBQUksQ0FBQztJQUlELFlBQVksRUFBRSxlQUFlO0dBRWhDOzs7QUFFRCxBQUFBLElBQUksQ0FBQztFQUNILGNBQWMsRUFBRSxDQUFDO0NBQ2xCOztBQUVELEFBQUEsSUFBSSxDQUFDO0VBQ0gsVUFBVSxFQUFFLENBQUM7Q0FDZDs7QUFFRCxBQUFBLElBQUksQ0FBQztFQUNILGFBQWEsRUFBRSxDQUFDO0NBQ2pCOztBQUVELEFBQUEsS0FBSyxDQUFDO0VBQ0osYUFBYSxFQUFFLElBQUk7Q0FDcEI7O0FBRUQsQUFBQSxLQUFLLENBQUM7RUFDSixVQUFVLEVBQUUsSUFBSTtDQUNqQjs7QUFHRCxpQkFBaUI7QUFDakIsQUFBQSxhQUFhLENBQUM7RUFDWixZQUFZLEVBQUUsSUFBSTtFQUNsQixhQUFhLEVBQUUsSUFBSTtFQUNuQixRQUFRLEVBQUUsUUFBUTtFQUNsQixNQUFNLEVBQUUsTUFBTTtFQUVkLDJDQUEyQztFQUMzQyxvQkFBb0I7RUFDcEIsTUFBTTtFQU1OLHdDQUF3QztFQUN4QyxvQkFBb0I7RUFDcEIsTUFBTTtDQUtQOztBQVhDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFWckMsQUFBQSxhQUFhLENBQUM7SUFXVixLQUFLLEVBQUUsS0FBSztHQVVmOzs7QUFIQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBbEJyQyxBQUFBLGFBQWEsQ0FBQztJQW1CVixLQUFLLEVBQUUsS0FBSztHQUVmOzs7QUFFRCxBQUFBLE9BQU8sQ0FBQztFQUNOLEtBQUssRUFBRSxHQUFHO0NBQ1g7O0FBRUQsQUFBQSxPQUFPLENBQUM7RUFDTixLQUFLLEVBQUUsR0FBRztDQUNYOztBQUdDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFEckMsQUFBQSxPQUFPLEVBQUUsQUFBQSxPQUFPLENBQUM7SUFFYixLQUFLLEVBQUUsSUFBSTtHQUVkOzs7QUFFRCxBQUFBLFlBQVksQ0FBQztFQUNYLElBQUksRUFBRSxHQUFHO0NBVVY7O0FBUkMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQUhyQyxBQUFBLFlBQVksQ0FBQztJQUlULElBQUksRUFBRSxDQUFDO0dBT1Y7OztBQUxDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFOckMsQUFBQSxZQUFZLENBQUM7SUFPVCxZQUFZLEVBQUUsZUFBZTtJQUM3QixhQUFhLEVBQUUsZUFBZTtHQUdqQzs7O0FBRUQsQUFBQSxZQUFZLENBQUM7RUFDWCxLQUFLLEVBQUUsR0FBRztDQVNYOztBQVBDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFIckMsQUFBQSxZQUFZLENBQUM7SUFJVCxLQUFLLEVBQUUsQ0FBQztHQU1YOzs7QUFKQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBTnJDLEFBQUEsWUFBWSxDQUFDO0lBT1QsWUFBWSxFQUFFLGVBQWU7SUFDN0IsYUFBYSxFQUFFLGVBQWU7R0FFakM7OztBQUVELEFBQUEsU0FBUyxDQUFDO0VBQ1IsUUFBUSxFQUFFLFFBQVE7Q0FDbkI7O0FBRUQsQUFBQSxnQkFBZ0IsQ0FBQztFQUNmLE1BQU0sRUFBRSxLQUFLO0VBQ2IsVUFBVSxFQUFFLEtBQUs7RUFDakIsVUFBVSxFQUFFLFdBQVc7Q0FDeEI7O0FBRUQsQUFBQSxzQkFBc0IsQ0FBQztFQUNyQixPQUFPLEVBQUUsWUFBWTtFQUNyQixTQUFTLEVBQUUsSUFBSTtFQUNmLE1BQU0sRUFBRSxJQUFJO0NBQ2I7O0FBRUQsQUFBQSxLQUFLLENBQUM7RUFDRixPQUFPLEVBQUUsSUFBSTtDQUNoQjs7QUFDRCxBQUFBLFFBQVEsQ0FBQztFQUNMLE9BQU8sRUFBRSxLQUFLO0VBQ2QsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLENBQUM7RUFDTixJQUFJLEVBQUUsQ0FBQztFQUNQLE9BQU8sRUFBRSxHQUFHO0VBQ1osS0FBSyxFQUFFLEtBQUs7RUFDWixNQUFNLEVBQUUsS0FBSztFQUNiLGdCQUFnQixFQUFFLHdCQUF3QjtFQUMxQyxnQkFBZ0IsRUFBRSx5Q0FBeUM7RUFDM0QsaUJBQWlCLEVBQUUsU0FBUztFQUM1QixtQkFBbUIsRUFBRSxNQUFNO0NBQzlCOztBQUVELEFBQUEsVUFBVSxDQUFBO0VBQ04sUUFBUSxFQUFDLEtBQUs7RUFDZCxRQUFRLEVBQUMsTUFBTTtFQUNmLFFBQVEsRUFBRSxRQUFRO0NBQ3JCOztBbkQxTEQsK0JBQStCO0FvRHhCL0IsdUJBQXVCO0FBQ3ZCLGtGQUFrRjtBQUNsRixpRkFBaUY7QUFDakYsa0ZBQWtGO0FBQ2xGLGdCQUFnQjtBQUVoQixBQUFBLFNBQVMsQ0FBQztFQUNSLFFBQVEsRUFBRSxLQUFLO0VBQ2YsT0FBTyxFQUFFLEdBQUc7RUFDWixLQUFLLEVBQUUsSUFBSTtFQUNYLEdBQUcsRUFBRSxDQUFDO0NBV1A7O0FBVEMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQU5yQyxBQUFBLFNBQVMsQ0FBQztJQU9OLE1BQU0sRUFBRSxJQUFJO0lBQ1osNEJBQTRCO0lBQzVCLHFEQUFxRDtJQUNyRCxRQUFRLEVBQUUsUUFBUTtHQUtyQjs7O0FBSEMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQVpyQyxBQUFBLFNBQVMsQ0FBQztJQWFOLE1BQU0sRUFBRSxJQUFJO0dBRWY7OztBQUVELEFBQUEsWUFBWTtBQUNaLEFBQUEsaUJBQWlCLENBQUM7RUFDaEIsTUFBTSxFQUFFLElBQUk7Q0FDYjs7QUFFRCxBQUFBLHFCQUFxQjtBQUNyQixBQUFBLDBCQUEwQixDQUFDO0VBQ3pCLGNBQWMsRUFBRSxJQUFJO0NBS3JCOztBQVBELEFBSUUscUJBSm1CLENBSW5CLENBQUM7QUFISCxBQUdFLDBCQUh3QixDQUd4QixDQUFDLENBQUM7RUFDQSxjQUFjLEVBQUUsSUFBSTtDQUNyQjs7QUFJRCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBRHJDLEFBQUEscUJBQXFCLENBQUM7SUFFbEIsUUFBUSxFQUFFLGlCQUFpQjtHQUU5Qjs7O0FBRUQsQUFBQSxLQUFLLENBQUM7RUFDSixLQUFLLEVBQUUsS0FBSztFQUNaLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLFdBQVcsRUFBRSxJQUFJO0NBVWxCOztBQVRDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFKckMsQUFBQSxLQUFLLENBQUM7SUFLRixVQUFVLEVBQUUsSUFBSTtJQUNoQixXQUFXLEVBQUUsSUFBSTtHQU9wQjs7O0FBTEMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQVJyQyxBQUFBLEtBQUssQ0FBQztJQVNELEtBQUssRUFBRSxLQUFLO0lBQ1osVUFBVSxFQUFFLElBQUk7SUFDaEIsV0FBVyxFQUFFLElBQUk7R0FFckI7OztBQUVELEFBQUEsVUFBVSxDQUFDO0VBQ1QsUUFBUSxFQUFFLEtBQUs7RUFDZixLQUFLLEVBQUUsSUFBSTtFQUNYLEdBQUcsRUFBRSxJQUFJO0VBQ1QsS0FBSyxFQUFFLElBQUk7RUFDWCxZQUFZLEVBQUUsSUFBSTtFQUNsQixlQUFlLEVBQUUsSUFBSTtFQUNyQixPQUFPLEVBQUUsQ0FBQztDQWtIWDs7QUFqSEMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQVJyQyxBQUFBLFVBQVUsQ0FBQztJQVNQLEdBQUcsRUFBRSxJQUFJO0lBQ1QsS0FBSyxFbkRwQ1MsT0FBTztJbURxQ3JCLFlBQVksRW5EckNFLE9BQU87R21EbUp4Qjs7O0FBNUdDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFickMsQUFBQSxVQUFVLENBQUM7SUFjUCxHQUFHLEVBQUUsSUFBSTtJQUNULEtBQUssRUFBRSxJQUFJO0dBMEdkOzs7QUF6SEQsQUFtQkksVUFuQk0sQUFrQlIsTUFBTyxDQUNMLGVBQWUsQ0FBQztFQUNkLEtBQUssRW5EOUNPLE9BQU8sQ21EOENLLFVBQVU7Q0FDbkM7O0FBckJMLEFBdUJJLFVBdkJNLEFBa0JSLE1BQU8sQ0FLTCxvQkFBb0I7QUF2QnhCLEFBd0JJLFVBeEJNLEFBa0JSLE1BQU8sQ0FNTCxvQkFBb0IsQUFBQSxNQUFNO0FBeEI5QixBQXlCSSxVQXpCTSxBQWtCUixNQUFPLENBT0wsb0JBQW9CLEFBQUEsT0FBTyxDQUFDO0VBQzFCLFlBQVksRW5EcERBLE9BQU8sQ21Eb0RZLFVBQVU7Q0FDMUM7O0FBM0JMLEFBNkJJLFVBN0JNLEFBa0JSLE1BQU8sQ0FXTCxvQkFBb0IsQUFBQSxPQUFPLENBQUM7RUFDMUIsaUJBQWlCLEVBQUUsYUFBYTtFQUN4QixTQUFTLEVBQUUsYUFBYTtFQUNoQyxHQUFHLEVBQUUsQ0FBQztFQUNOLEtBQUssRUFBRSxJQUFJO0VBQ1gsSUFBSSxFQUFFLEdBQUc7Q0FDVjs7QUFuQ0wsQUFxQ0ksVUFyQ00sQUFrQlIsTUFBTyxDQW1CTCxvQkFBb0IsQUFBQSxNQUFNLENBQUM7RUFDekIsaUJBQWlCLEVBQUUsWUFBWTtFQUN2QixTQUFTLEVBQUUsWUFBWTtFQUMvQixHQUFHLEVBQUUsQ0FBQztFQUNOLEtBQUssRUFBRSxJQUFJO0VBQ1gsSUFBSSxFQUFFLEdBQUc7Q0FDVjs7QUEzQ0wsQUE2Q0ksVUE3Q00sQUFrQlIsTUFBTyxDQTJCTCxvQkFBb0IsQ0FBQztFQUNuQixNQUFNLEVBQUUsQ0FBQztDQUNWOztBQS9DTCxBQWtERSxVQWxEUSxDQWtEUixlQUFlLENBQUM7RUFDZCxLQUFLLEVBQUUsSUFBSTtFQUNYLFlBQVksRUFBRSxHQUFHO0VBQ2pCLFdBQVcsRUFBRSxHQUFHO0NBQ2pCOztBQXRESCxBQXdERSxVQXhEUSxDQXdEUixvQkFBb0IsQ0FBQztFQUNuQixLQUFLLEVBQUUsSUFBSTtFQUNYLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLFNBQVM7RUFDakIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsVUFBVSxFQUFFLEdBQUc7Q0FzQmhCOztBQW5GSCxBQXdERSxVQXhEUSxDQXdEUixvQkFBb0IsQUFPbEIsTUFBTyxFQS9EWCxBQXdERSxVQXhEUSxDQXdEUixvQkFBb0IsQUFRbEIsT0FBUSxDQUFDO0VBQ1AsT0FBTyxFQUFFLEVBQUU7RUFDWCxRQUFRLEVBQUUsUUFBUTtFQUNsQixJQUFJLEVBQUUsSUFBSTtFQUNWLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLFNBQVM7RUFDakIsa0JBQWtCLEVBQUUsdUJBQXVCO0VBQzNDLFVBQVUsRUFBRSx1QkFBdUI7RUFDbkMsVUFBVSxFQUFFLGVBQWU7RUFDM0IsVUFBVSxFQUFFLHdDQUF3QztDQUNyRDs7QUExRUwsQUF3REUsVUF4RFEsQ0F3RFIsb0JBQW9CLEFBb0JsQixPQUFRLENBQUM7RUFDUCxHQUFHLEVBQUUsR0FBRztDQUNUOztBQTlFTCxBQXdERSxVQXhEUSxDQXdEUixvQkFBb0IsQUF3QmxCLE1BQU8sQ0FBQztFQUNOLEdBQUcsRUFBRSxJQUFJO0NBQ1Y7O0FBbEZMLEFBcUZFLFVBckZRLENBcUZSLFlBQVksQ0FBQztFQUNYLEtBQUssRUFBRSxJQUFJO0VBQ1gsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLFVBQVUsRUFBRSxJQUFJO0NBOEJqQjs7QUF4SEgsQUFxRkUsVUFyRlEsQ0FxRlIsWUFBWSxBQU9WLE1BQU8sRUE1RlgsQUFxRkUsVUFyRlEsQ0FxRlIsWUFBWSxBQVFWLE9BQVEsQ0FBQztFQUNQLE9BQU8sRUFBRSxFQUFFO0VBQ1gsUUFBUSxFQUFFLFFBQVE7RUFDbEIsSUFBSSxFQUFFLElBQUk7RUFDVixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxjQUFjO0VBQ3RCLGtCQUFrQixFQUFFLHVCQUF1QjtFQUMzQyxVQUFVLEVBQUUsdUJBQXVCO0VBQ25DLFVBQVUsRUFBRSxlQUFlO0VBQzNCLFVBQVUsRUFBRSx3Q0FBd0M7Q0FDckQ7O0FBdkdMLEFBcUZFLFVBckZRLENBcUZSLFlBQVksQUFvQlYsT0FBUSxDQUFDO0VBQ1AsaUJBQWlCLEVBQUUsYUFBYTtFQUN4QixTQUFTLEVBQUUsYUFBYTtDQUNqQzs7QUE1R0wsQUFxRkUsVUFyRlEsQ0FxRlIsWUFBWSxBQXlCVixNQUFPLENBQUM7RUFDTixpQkFBaUIsRUFBRSxjQUFjO0VBQ3pCLFNBQVMsRUFBRSxjQUFjO0NBQ2xDOztBQWpITCxBQXFGRSxVQXJGUSxDQXFGUixZQUFZLEFBOEJWLE1BQU8sQUFBQSxNQUFNLEVBbkhqQixBQXFGRSxVQXJGUSxDQXFGUixZQUFZLEFBK0JWLE1BQU8sQUFBQSxPQUFPLENBQUM7RUFDYixpQkFBaUIsRUFBRSxZQUFZO0VBQ3ZCLFNBQVMsRUFBRSxZQUFZO0NBQ2hDOztBQUtMLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFDakMsQUFDRSxlQURhLEFBQUEsTUFBTSxDQUNuQixVQUFVLEFBQUEsWUFBWSxDQUFDO0lBQ3JCLEtBQUssRUFBRSxJQUFJO0lBQ1gsWUFBWSxFQUFFLElBQUk7R0FDbkI7RUFKSCxBQU1FLGVBTmEsQUFBQSxNQUFNLENBTW5CLEdBQUcsQ0FBQztJQUNGLGNBQWMsRUFBRSxhQUFhLENBQUMsU0FBUztJQUN2QyxNQUFNLEVBQUUsYUFBYSxDQUFDLFNBQVM7R0FDaEM7OztBQUdMLG1CQUFtQjtBQUVuQixBQUFBLGVBQWUsQ0FBQztFQUNkLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLGFBQWEsRUFBRSxJQUFJO0NBSXBCOztBQUhDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFIckMsQUFBQSxlQUFlLENBQUM7SUFJWixhQUFhLEVBQUUsSUFBSTtHQUV0Qjs7O0FDM01ELHVCQUF1QjtBQUN2QixrRkFBa0Y7QUFDbEYsaUZBQWlGO0FBQ2pGLGtGQUFrRjtBQUVsRixBQUFBLE1BQU0sQ0FBQztFQUNMLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLEdBQUc7RUFDaEIsV0FBVyxFQUFFLElBQUk7Q0FrQmxCOztBQWhCQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBTnJDLEFBQUEsTUFBTSxDQUFDO0lBT0gsU0FBUyxFQUFFLElBQUk7SUFDZixXQUFXLEVBQUUsSUFBSTtHQWNwQjs7O0FBdEJELEFBV0UsTUFYSSxDQVdKLGNBQWMsQ0FBQztFQUNiLFVBQVUsRUFBRSxpQkFBaUI7RUFDN0IsYUFBYSxFQUFFLGlCQUFpQjtFQUNoQyxPQUFPLEVBQUUsU0FBUztFQUNsQixhQUFhLEVBQUUsSUFBSTtFQUNuQixRQUFRLEVBQUUsUUFBUTtDQUtuQjs7QUFIQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBbEJ2QyxBQVdFLE1BWEksQ0FXSixjQUFjLENBQUM7SUFRWCxhQUFhLEVBQUUsSUFBSTtHQUV0Qjs7O0FBR0gsQUFBQSxVQUFVLENBQUM7RUFDVCxVQUFVLEVBQUUsTUFBTTtFQUNsQixhQUFhLEVBQUUsSUFBSTtDQUtwQjs7QUFIQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBSnJDLEFBQUEsVUFBVSxDQUFDO0lBS1AsYUFBYSxFQUFFLElBQUk7R0FFdEI7OztBQUVELEFBQUEsV0FBVyxDQUFDO0VBQ1YsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLElBQUk7RUFDWCxHQUFHLEVBQUUsSUFBSTtDQU9WOztBQUxDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFMckMsQUFBQSxXQUFXLENBQUM7SUFNUixRQUFRLEVBQUUsUUFBUTtJQUNsQixLQUFLLEVBQUUsQ0FBQztJQUNSLEdBQUcsRUFBRSxLQUFLO0dBRWI7OztBQUVELEFBQUEsUUFBUSxFQUFFLEFBQUEsUUFBUSxFQUFFLEFBQUEsUUFBUSxDQUFDO0VBQzNCLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixNQUFNLEVBQUUsaUJBQWlCO0VBQ3pCLFFBQVEsRUFBRSxRQUFRO0NBZW5COztBQW5CRCxBQU1FLFFBTk0sQ0FNTixDQUFDLEVBTk8sQUFNUixRQU5nQixDQU1oQixDQUFDLEVBTmlCLEFBTWxCLFFBTjBCLENBTTFCLENBQUMsQ0FBQztFQUNBLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixPQUFPLEVBQUUsS0FBSztDQUNmOztBQVZILEFBWUUsUUFaTSxDQVlOLEdBQUcsRUFaSyxBQVlSLFFBWmdCLENBWWhCLEdBQUcsRUFaZSxBQVlsQixRQVowQixDQVkxQixHQUFHLENBQUM7RUFDRixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsR0FBRztFQUNSLElBQUksRUFBRSxHQUFHO0VBQ1QsaUJBQWlCLEVBQUUscUJBQXFCO0VBQ2hDLFNBQVMsRUFBRSxxQkFBcUI7Q0FDekM7O0FBR0gsQUFBQSxRQUFRLENBQUM7RUFDUCxLQUFLLEVBQUUsSUFBSTtFQUNYLEdBQUcsRUFBRSxJQUFJO0VBQ1QsTUFBTSxFQUFFLElBQUk7Q0FDYjs7QUFFRCxBQUFBLFFBQVEsQ0FBQztFQUNQLEdBQUcsRUFBRSxJQUFJO0NBQ1Y7O0FDL0VELHVCQUF1QjtBQUN2QixrRkFBa0Y7QUFDbEYsK0VBQStFO0FBQy9FLGtGQUFrRjtBQUVsRixBQUFBLEtBQUssQ0FBQztFQUNKLFFBQVEsRUFBRSxLQUFLO0VBQ2YsS0FBSyxFQUFFLEdBQUc7RUFDVixVQUFVLEVBQUUsT0FBTztFQUFHLGtCQUFrQjtFQUFDLGNBQWM7RUFBQyw2QkFBNkI7RUFDckYsVUFBVSxFQUFFLGlEQUFnRDtFQUFFLHNEQUFzRDtFQUNwSCxNQUFNLEVBQUUsMkdBQTJHO0VBQUUsMkNBQTJDO0VBQ2hLLE9BQU8sRUFBRSxHQUFHO0VBQ1osR0FBRyxFQUFFLENBQUM7RUFDTixNQUFNLEVBQUUsQ0FBQztFQUNULEtBQUssRUFBRSxDQUFDO0VBQ1IsV0FBVyxFQUFFLEtBQUs7RUFDbEIsWUFBWSxFQUFFLElBQUk7Q0FrRG5COztBQWhEQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0VBYnRDLEFBQUEsS0FBSyxDQUFDO0lBY0YsS0FBSyxFQUFFLEdBQUc7R0ErQ2I7OztBQTVDQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBakJyQyxBQUFBLEtBQUssQ0FBQztJQWtCRixLQUFLLEVBQUUsSUFBSTtJQUNYLFdBQVcsRUFBRSxJQUFJO0lBQ2pCLFlBQVksRUFBRSxDQUFDO0lBRWYsVUFBVSxFQUFFLE1BQU07SUFDbEIsVUFBVSxFQUFFLE1BQU07R0FzQ3JCOzs7QUE3REQsQUEwQlksS0ExQlAsQ0EwQkgsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7RUFDVixLQUFLLEVBQUUsSUFBSTtFQUNYLE9BQU8sRUFBRSxTQUFTO0VBQ2xCLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGNBQWMsRUFBRSxTQUFTO0VBQ3pCLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLElBQUk7RUFDakIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsT0FBTyxFQUFFLEtBQUs7RUFDZCxrQkFBa0IsRUFBRSx1QkFBdUI7RUFDM0MsVUFBVSxFQUFFLHVCQUF1QjtFQUNuQyxVQUFVLEVBQUUsZUFBZTtFQUMzQixVQUFVLEVBQUUsd0NBQXdDO0NBaUJyRDs7QUFmQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0VBeEN4QyxBQTBCWSxLQTFCUCxDQTBCSCxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztJQWVSLFNBQVMsRUFBRSxJQUFJO0lBQ2YsV0FBVyxFQUFFLElBQUk7R0FhcEI7OztBQVZDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUE3Q3ZDLEFBMEJZLEtBMUJQLENBMEJILEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBb0JSLFNBQVMsRUFBRSxJQUFJO0lBQ2YsV0FBVyxFQUFFLElBQUk7R0FRcEI7OztBQXZESCxBQTBCWSxLQTFCUCxDQTBCSCxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQUF3QlQsTUFBTyxDQUFDO0VBQ04sS0FBSyxFQUFFLE9BQU87RUFDZCxpQkFBaUIsRUFBRSxpQkFBaUI7RUFDNUIsU0FBUyxFQUFFLGlCQUFpQjtDQUNyQzs7QUF0REwsQUF5RGlCLEtBekRaLENBeURILEVBQUUsR0FBRyxFQUFFLEFBQUEsT0FBTyxDQUFDLENBQUMsQ0FBQztFQUNmLEtBQUssRUFBRSxPQUFPO0VBQ2Qsa0NBQWtDO0NBQ25DOztBQUdILEFBQUEsVUFBVSxDQUFDO0VBQ1QsZ0JBQWdCLEVBQUUsSUFBSTtDQUN2Qjs7QUN0RUQsdUJBQXVCO0FBQ3ZCLGtGQUFrRjtBQUNsRiwwRkFBMEY7QUFDMUYsa0ZBQWtGO0FBRWxGLEFBQUEsU0FBUyxDQUFDO0VBQ1IsUUFBUSxFQUFFLEtBQUs7RUFDZixNQUFNLEVBQUUsSUFBSTtFQUNaLEtBQUssRUFBRSxJQUFJO0NBQ1o7O0FBRUQsQUFBQSxVQUFVLENBQUM7RUFDVCxLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJO0VBQ1osT0FBTyxFQUFFLElBQUk7RUFDYixPQUFPLEVBQUUsS0FBSztFQUNkLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixPQUFPLEVBQUUsSUFBSTtDQUNkOztBQ3BCRCx1QkFBdUI7QUFDdkIsa0ZBQWtGO0FBQ2xGLCtFQUErRTtBQUMvRSxrRkFBa0Y7QUFFbEYsQUFBQSxXQUFXLENBQUM7RUFDVixhQUFhLEVBQUUsSUFBSTtDQUNwQjs7QUFFRCxBQUFBLFdBQVcsQ0FBQztFQUNWLE9BQU8sRUFBRSxLQUFLO0VBQ2QsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsSUFBSTtFQUNqQixXQUFXLEVBQUUsR0FBRztDQUNqQjs7QUFFRCxBQUFBLGFBQWEsQ0FBQztFQUNaLEtBQUssRUFBRSxJQUFJO0VBQ1gsZ0JBQWdCLEVBQUUsT0FBTztFQUN6QixNQUFNLEVBQUUsaUJBQWlCO0VBQ3pCLGFBQWEsRUFBRSxDQUFDO0VBQ2hCLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLE9BQU8sRUFBRSxLQUFLO0NBTWY7O0FBWkQsQUFRRSxhQVJXLEFBUVgsTUFBTyxDQUFDO0VBQ04sYUFBYSxFQUFFLEdBQUc7RUFDbEIsYUFBYSxFQUFFLE9BQU87Q0FDdkI7O0FBR0gsQUFBQSxhQUFhLEFBQUEsdUJBQXVCLENBQUM7RUFDbkMsWUFBWSxFdkRBTSxPQUFPO0N1REMxQjs7QXhEQUQsa0JBQWtCO0F5RGhDbEIsdUJBQXVCO0FBQ3ZCLGtGQUFrRjtBQUNsRixtRUFBbUU7QUFDbkUsa0ZBQWtGO0FBRWxGLEFBQUEsSUFBSSxDQUFDO0VBQ0gsZ0JBQWdCLEVBQUUsSUFBSTtFQUN0QixNQUFNLEVBQUUsQ0FBQztFQUNULE9BQU8sRUFBRSxRQUFRO0VBQ2pCLEtBQUssRUFBRSxJQUFJO0VBQ1gsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsSUFBSTtFQUNqQixVQUFVLEVBQUUsSUFBSTtFQUNoQixhQUFhLEVBQUUsSUFBSTtFQUNuQixlQUFlLEVBQUUsSUFBSTtDQUt0Qjs7QUFkRCxBQVdFLElBWEUsQUFXRixNQUFPLENBQUM7RUFDTixlQUFlLEVBQUUsSUFBSTtDQUN0Qjs7QUFHSCxBQUFBLGFBQWEsQ0FBQztFQUNaLGdCQUFnQixFeERTRSxPQUFPO0N3REoxQjs7QUFORCxBQUdFLGFBSFcsQUFHWCxNQUFPLENBQUM7RUFDTixnQkFBZ0IsRUFBRSxPQUFpQztDQUNwRDs7QUFFSCxBQUFBLFdBQVcsQ0FBQztFQUNWLGdCQUFnQixFQUFFLElBQUk7RUFDdEIsS0FBSyxFeERDYSxPQUFPO0N3REsxQjs7QUFSRCxBQUlFLFdBSlMsQUFJVCxNQUFPLENBQUM7RUFDTixnQkFBZ0IsRXhEQUYsT0FBTztFd0RDckIsS0FBSyxFQUFFLElBQUk7Q0FDWjs7QUNuQ0gsdUJBQXVCO0FBQ3ZCLGtGQUFrRjtBQUNsRixrRUFBa0U7QUFDbEUsa0ZBQWtGO0FBRWxGLEFBQUEsTUFBTSxDQUFDO0VBQ0wsT0FBTyxFQUFFLFNBQVM7Q0FTbkI7O0FBUEMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtFQUh0QyxBQUFBLE1BQU0sQ0FBQztJQUlILE9BQU8sRUFBRSxjQUFjO0dBTTFCOzs7QUFIQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBUHJDLEFBQUEsTUFBTSxDQUFDO0lBUUgsT0FBTyxFQUFFLGNBQWM7R0FFMUI7OztBQUVELEFBQUEsY0FBYyxDQUFDO0VBQ2Isa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWM7RUFDNUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFjO0NBQ25DOztBQUVELEFBQUEsZUFBZSxDQUFDO0VBQ2QsS0FBSyxFQUFFLElBQUk7RUFDWCxVQUFVLEVBQUUsT0FBTztFQUFHLGtCQUFrQjtFQUFDLGNBQWM7RUFBQyw2QkFBNkI7RUFDckYsVUFBVSxFQUFFLGlEQUFnRDtFQUFFLHNEQUFzRDtFQUNwSCxNQUFNLEVBQUUsMkdBQTJHO0VBQUUsMkNBQTJDO0NBU2pLOztBQWJELEFBTUUsZUFOYSxDQU1iLEVBQUUsRUFOSixBQU1NLGVBTlMsQ0FNVCxFQUFFLEVBTlIsQUFNVSxlQU5LLENBTUwsRUFBRSxDQUFDO0VBQ1QsS0FBSyxFQUFFLElBQUk7Q0FDWjs7QUFSSCxBQVVFLGVBVmEsQ0FVYixDQUFDLENBQUM7RUFDQSxLQUFLLEV6REFTLE9BQU87Q3lEQ3RCOztBQUdILEFBQUEsYUFBYSxDQUFDO0VBQ1osVUFBVSxFQUFFLEtBQUs7Q0FLbEI7O0FBSEMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSyxPQUFPLFNBQVMsRUFBRSxNQUFNO0VBSDdELEFBQUEsYUFBYSxDQUFDO0lBSVYsVUFBVSxFQUFFLEtBQUs7R0FFcEI7OztBQUVELEFBQUEsZ0JBQWdCLENBQUM7RUFDZixVQUFVLEVBQUUsSUFBSTtDQUtqQjs7QUFIQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLE1BQU07RUFIN0QsQUFBQSxnQkFBZ0IsQ0FBQztJQUliLFVBQVUsRUFBRSxDQUFDO0dBRWhCOzs7QUFHQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBRHJDLEFBQUEsYUFBYSxFQUFFLEFBQUEsZ0JBQWdCLENBQUM7SUFFNUIsVUFBVSxFQUFFLENBQUM7R0FFaEI7OztBQUVELEFBQUEsb0JBQW9CLENBQUM7RUFDbkIsYUFBYSxFQUFFLEtBQUs7Q0FLckI7O0FBSEMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtFQUh0QyxBQUFBLG9CQUFvQixDQUFDO0lBSWpCLE9BQU8sRUFBRSxNQUFNO0dBRWxCOzs7QUFFRCxBQUFBLGlCQUFpQixDQUFDO0VBQ2hCLE9BQU8sRUFBRSxjQUFjO0NBS3hCOztBQUhDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFIckMsQUFBQSxpQkFBaUIsQ0FBQztJQUlkLE9BQU8sRUFBRSxXQUFXO0dBRXZCOzs7QUNwRUQsQUFBQSxLQUFLLENBQUM7RUFDSixLQUFLLEUxRHFCd0IsT0FBTztDMERwQnJDOztBQUVELEFBQUEsYUFBYSxDQUFDO0VBQ1YsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLElBQUk7RUFDYixVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQzFEZ0JQLE9BQU87QzBENkQ5Qjs7QUEzRUcsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQUx2QyxBQUFBLGFBQWEsQ0FBQztJQU1SLGFBQWEsRUFBRSxJQUFJO0dBMEV4Qjs7O0FBdkVHLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFUdkMsQUFVTSxhQVZPLEFBVVAsZ0JBQWlCLENBQUM7SUFDaEIsV0FBVyxFQUFFLElBQUk7SUFDakIsWUFBWSxFQUFFLElBQUk7R0FDbkI7RUFiUCxBQWVNLGFBZk8sQUFlUCx1QkFBd0IsQ0FBQztJQUN2QixhQUFhLEVBQUUsSUFBSTtHQUNwQjtFQWpCUCxBQW1CTSxhQW5CTyxBQW1CUCxNQUFPLENBQUM7SUFDTixZQUFZLEUxREVBLE9BQU87STBERG5CLE9BQU8sRUFBRSxFQUFFO0dBQ1o7OztBQXRCUCxBQXlCRSxhQXpCVyxBQXlCWCxPQUFRLEVBekJWLEFBMEJFLGFBMUJXLEFBMEJYLFFBQVMsQ0FBQztFQUNSLFVBQVUsRUFBRSxPQUFPO0VBQ25CLE9BQU8sRUFBRSxFQUFFO0VBQ1gsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUdaLE1BQU0sRUFBRSxxQkFBcUI7RUFDN0IsS0FBSyxFQUFFLENBQUM7RUFDUixNQUFNLEVBQUUsQ0FBQztDQUNWOztBQXJDSCxBQXdDRSxhQXhDVyxBQXdDWCxRQUFTLENBQUM7RUFDUixHQUFHLEVBQUUsQ0FBQztFQUNOLElBQUksRUFBRSxDQUFDO0NBQ1I7O0FBM0NILEFBNkNFLGFBN0NXLEFBNkNYLE9BQVEsQ0FBQztFQUNQLE1BQU0sRUFBRSxDQUFDO0VBQ1QsS0FBSyxFQUFFLENBQUM7Q0FDVDs7QUFNQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBdER2QyxBQW9ERSxhQXBEVyxBQW9EWCxNQUFPLEFBQUEsT0FBTyxFQXBEaEIsQUFxREUsYUFyRFcsQUFxRFgsTUFBTyxBQUFBLFFBQVEsQ0FBQztJQUVaLEtBQUssRUFBRSxJQUFJO0lBQ1gsTUFBTSxFQUFFLElBQUk7R0FFZjs7O0FBR0MsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQTdEdkMsQUE0REUsYUE1RFcsQUE0RFgsTUFBTyxBQUFBLFFBQVEsQ0FBQztJQUVaLGdCQUFnQixFMUR4Q0YsT0FBTztJMER5Q3JCLGtCQUFrQixFMUR6Q0osT0FBTztJMEQwQ3JCLFVBQVUsRUFBQyxLQUFLLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFDL0IsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsS0FBSztHQUU5Qjs7O0FBR0MsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQXRFdkMsQUFxRUUsYUFyRVcsQUFxRVgsTUFBTyxBQUFBLE9BQU8sQ0FBQztJQUVYLG1CQUFtQixFMURqREwsT0FBTztJMERrRHJCLGlCQUFpQixFMURsREgsT0FBTztJMERtRHJCLFVBQVUsRUFBQyxZQUFZLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQ3hDLEtBQUssQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksRUFDekIsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsS0FBSztHQUU5Qjs7O0FBS0gsQUFBQSxjQUFjLENBQUM7RUFDYixLQUFLLEVBQUUsSUFBSTtFQUNYLFVBQVUsRUFBRSxPQUFPO0VBQUcsa0JBQWtCO0VBQ3hDLFVBQVUsRUFBRSxzREFBc0Q7RUFBRSxjQUFjO0VBQ2xGLFVBQVUsRUFBRSx5REFBd0Q7RUFBRSw2QkFBNkI7RUFDbkcsVUFBVSxFQUFFLGlEQUFnRDtFQUFFLHNEQUFzRDtFQUNwSCxNQUFNLEVBQUUsMkdBQTJHO0VBQUUsMkNBQTJDO0NBS2pLOztBQVhELEFBUUUsY0FSWSxDQVFaLENBQUMsQ0FBQztFQUNBLEtBQUssRTFEbkVTLE9BQU87QzBEb0V0Qjs7QUFHSCxBQUFBLFdBQVcsQ0FBQztFQUNWLGdCQUFnQixFQUFFLE9BQU87RUFDekIsS0FBSyxFMURoRmtCLE9BQU87QzBEaUYvQjs7QUFFRCxBQUFBLGlCQUFpQixDQUFDO0VBQ2hCLGdCQUFnQixFQUFFLE9BQU87RUFDekIsS0FBSyxFQUFFLElBQUk7Q0FDWjs7QUFFRCxBQUFBLFdBQVcsQ0FBQztFQUNWLGdCQUFnQixFQUFFLE9BQU87RUFDekIsS0FBSyxFQUFFLElBQUk7Q0FDWjs7QUFFRCxBQUFBLGFBQWEsQ0FBQztFQUNaLGdCQUFnQixFQUFFLE9BQU87RUFDekIsS0FBSyxFQUFFLElBQUk7Q0FDWjs7QUFFRCxBQUFBLGNBQWMsQ0FBQztFQUNiLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxHQUFHO0VBQ1IsSUFBSSxFQUFFLEdBQUc7RUFDVCxTQUFTLEVBQUUscUJBQXFCO0VBQ2hDLFdBQVcsRUFBRSxNQUFNO0NBQ3BCOztBQ2xJRCx1QkFBdUI7QUFDdkIsa0ZBQWtGO0FBQ2xGLHVFQUF1RTtBQUN2RSxrRkFBa0Y7QUFFbEYsQUFBQSxnQkFBZ0IsQ0FBQztFQUNiLFVBQVUsRUFBRSxJQUFJO0NBTW5COztBQUpHLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFIdkMsQUFBQSxnQkFBZ0IsQ0FBQztJQUlYLFVBQVUsRUFBRSxDQUFDO0lBQ2IsYUFBYSxFQUFFLElBQUk7R0FFeEI7OztBQUVELEFBQUEsV0FBVyxDQUFDO0VBQ1YsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLEMzRGdCQyxPQUFPO0UyRGZ6QixPQUFPLEVBQUUsWUFBWTtFQUNyQixPQUFPLEVBQUUsU0FBUztDQUNuQjs7QUFFRCxBQUFBLGlCQUFpQixDQUFDO0VBQ2hCLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixhQUFhLEVBQUUsSUFBSTtFQUNuQixNQUFNLEVBQUUsR0FBRyxDQUFDLEtBQUssQzNET0MsT0FBTztFMkROekIsS0FBSyxFQUFFLElBQUk7RUFDWCxZQUFZLEVBQUUsSUFBSTtDQUtuQjs7QUFYRCxBQVFFLGlCQVJlLEFBUWYsY0FBZSxDQUFDO0VBQ2QsV0FBVyxFQUFFLElBQUk7Q0FDbEI7O0FDOUJILHVCQUF1QjtBQUN2QixrRkFBa0Y7QUFDbEYsc0RBQXNEO0FBQ3RELGtGQUFrRjtBQUNsRiw4QkFBOEI7Q0FDOUIsQUFBQSxBQUFBLFFBQUMsQ0FBUyxNQUFNLEFBQWYsRUFBaUI7RUFDaEIsT0FBTyxFQUFFLENBQUM7RUFDViwyQkFBMkIsRUFBRSxPQUFPO0VBQ3BDLG1CQUFtQixFQUFFLE9BQU87Q0FLN0I7O0NBUkQsQUFBQSxBQUtFLFFBTEQsQ0FBUyxNQUFNLEFBQWYsQ0FLQyxZQUFhLENBQUM7RUFDWixPQUFPLEVBQUUsQ0FBQztDQUNYOztBQUVILHNCQUFzQjtDQUN0QixBQUFBLEFBQUEsUUFBQyxDQUFTLGFBQWEsQUFBdEIsRUFBd0I7RUFDdkIsY0FBYyxFQUFFLGFBQWEsQ0FBQyxTQUFTO0VBQ3ZDLE1BQU0sRUFBRSxhQUFhLENBQUMsU0FBUztFQUMvQixtQkFBbUIsRUFBRSxjQUFjO0VBQ25DLDJCQUEyQixFQUFFLGNBQWM7RUFDM0MsbUJBQW1CLEVBQUUsTUFBTTtFQUMzQixtQkFBbUIsRUFBRSxzQkFBc0I7Q0FNNUM7O0NBWkQsQUFBQSxBQVFFLFFBUkQsQ0FBUyxhQUFhLEFBQXRCLENBUUMsWUFBYSxDQUFDO0VBQ1osY0FBYyxFQUFFLGFBQWEsQ0FBQyxTQUFTO0VBQ3ZDLE1BQU0sRUFBRSxhQUFhLENBQUMsU0FBUztDQUNoQzs7QUFFSCwyQkFBMkI7Q0FDM0IsQUFBQSxBQUFBLFFBQUMsQUFBQSxFQUFTLEFBQUEsUUFBQyxBQUFBLEVBQVMsQUFBQSxjQUFDLENBQWUsTUFBTSxBQUFyQixDQUFzQixZQUFZLEFBQUEsTUFBTTtDQUM3RCxBQUFBLEFBQUEsUUFBQyxBQUFBLEVBQVMsQUFBQSxRQUFDLEFBQUEsRUFBUyxBQUFBLGNBQUMsQ0FBZSxNQUFNLEFBQXJCLENBQXNCLFlBQVksQUFBQSxPQUFPLENBQUM7RUFDN0Qsd0JBQXdCLEVBQUUsTUFBTTtFQUNoQyxnQkFBZ0IsRUFBRSxNQUFNO0NBQ3pCOztDQUVELEFBQUEsQUFBQSxRQUFDLEFBQUEsRUFBUyxBQUFBLFFBQUMsQUFBQSxFQUFTLEFBQUEsaUJBQUMsQ0FBa0IsTUFBTSxBQUF4QixDQUF5QixNQUFNO0NBQ3BELEFBQUEsQUFBQSxRQUFDLEFBQUEsRUFBUyxBQUFBLFFBQUMsQUFBQSxFQUFTLEFBQUEsaUJBQUMsQ0FBa0IsTUFBTSxBQUF4QixDQUF5QixPQUFPLENBQUM7RUFDcEQsMkJBQTJCLEVBQUUsTUFBTTtFQUNuQyxtQkFBbUIsRUFBRSxNQUFNO0NBQzVCOztDQUVELEFBQUEsQUFBQSxRQUFDLENBQVMsYUFBYSxBQUF0QixFQUF3QjtFQUN2QiwyQkFBMkIsRUFBRSxtQkFBbUI7RUFDaEQsbUJBQW1CLEVBQUUsbUJBQW1CO0NBTXpDOztDQVJELEFBQUEsQUFJRSxRQUpELENBQVMsYUFBYSxBQUF0QixDQUlDLFlBQWEsQ0FBQztFQUNaLFlBQVksRTVEcEJTLE9BQU87RTREcUI1QixLQUFLLEU1RHJCZ0IsT0FBTztDNERzQjdCOztBQUVILHFCQUFxQjtBQUNyQixNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0dBQ2xDLEFBQUEsQUFBQSxRQUFDLENBQVMsYUFBYSxBQUF0QixFQUF3QjtJQUN2QiwyQkFBMkIsRUFBRSxpQkFBaUI7SUFDOUMsbUJBQW1CLEVBQUUsaUJBQWlCO0lBQ3RDLG1CQUFtQixFQUFFLFNBQVM7SUFDOUIsbUJBQW1CLEVBQUUsNEJBQTRCO0dBTWxEO0dBVkQsQUFBQSxBQU1FLFFBTkQsQ0FBUyxhQUFhLEFBQXRCLENBTUMsWUFBYSxDQUFDO0lBQ1osaUJBQWlCLEVBQUUsa0JBQWtCO0lBQ3JDLFNBQVMsRUFBRSxrQkFBa0I7R0FDOUI7R0FHSCxBQUFBLEFBQUEsUUFBQyxDQUFTLGtCQUFrQixBQUEzQixFQUE2QjtJQUM1QiwyQkFBMkIsRUFBRSxZQUFZO0lBQ3pDLG1CQUFtQixFQUFFLFlBQVk7R0FLbEM7R0FQRCxBQUFBLEFBSUUsUUFKRCxDQUFTLGtCQUFrQixBQUEzQixDQUlDLFlBQWEsQ0FBQztJQUNaLFlBQVksRUFBRSxLQUFLO0dBQ3BCO0dBR0gsQUFBQSxBQUFBLFFBQUMsQ0FBUyxnQkFBZ0IsQUFBekIsRUFBMkI7SUFDMUIsMkJBQTJCLEVBQUUsbUJBQW1CO0lBQ2hELG1CQUFtQixFQUFFLG1CQUFtQjtHQUt6QztHQVBELEFBQUEsQUFJRSxRQUpELENBQVMsZ0JBQWdCLEFBQXpCLENBSUMsWUFBYSxDQUFDO0lBQ1oscUJBQXFCLEVBQUUsZ0JBQWdCO0dBQ3hDOzs7Q0FJTCxBQUFBLEFBQUEsUUFBQyxDQUFTLFlBQVksQUFBckIsRUFBdUI7RUFDdEIsVUFBVSxFNUR6RG1CLE9BQU87RTREMERwQywyQkFBMkIsRUFBRSxVQUFVO0VBQ3ZDLG1CQUFtQixFQUFFLFVBQVU7Q0FPaEM7O0NBVkQsQUFBQSxBQUtFLFFBTEQsQ0FBUyxZQUFZLEFBQXJCLENBS0MsWUFBYSxDQUFDO0VBQ1osVUFBVSxFQUFFLE9BQU87RUFDbkIsVUFBVSxFQUFFLGlEQUFnRDtFQUM1RCxNQUFNLEVBQUUsNEdBQTRHO0NBQ3JIOztBQUVILG9CQUFvQjtDQUVwQixBQUFBLEFBQUEsUUFBQyxDQUFTLFVBQVUsQUFBbkIsRUFBcUI7RUFDcEIsT0FBTyxFQUFFLFlBQVk7RUFDckIsY0FBYyxFQUFFLE1BQU07RUFDdEIsaUJBQWlCLEVBQUUsZ0JBQWdCLENBQUMsYUFBYTtFQUNqRCxTQUFTLEVBQUUsZ0JBQWdCLENBQUMsYUFBYTtFQUN6QyxrQkFBa0IsRUFBRSxtQkFBbUI7RUFDdkMsVUFBVSxFQUFFLG1CQUFtQjtDQVloQzs7Q0FsQkQsQUFBQSxBQVFFLFFBUkQsQ0FBUyxVQUFVLEFBQW5CLENBUUMsWUFBYSxDQUFDO0VBQ1osc0JBQXNCLEVBQUUsWUFBWTtFQUNwQyxjQUFjLEVBQUUsWUFBWTtFQUM1QiwwQkFBMEIsRUFBRSxLQUFLO0VBQ2pDLGtCQUFrQixFQUFFLEtBQUs7RUFDekIsaUNBQWlDLEVBQUUsTUFBTTtFQUN6Qyx5QkFBeUIsRUFBRSxNQUFNO0VBQ2pDLGlDQUFpQyxFQUFFLENBQUM7RUFDcEMseUJBQXlCLEVBQUUsQ0FBQztDQUM3Qjs7QUFFSCxrQkFBa0IsQ0FBbEIsWUFBa0I7RUFDaEIsQUFBQSxHQUFHO0lBQ0QsaUJBQWlCLEVBQUUsZUFBZSxDQUFDLFlBQVk7SUFDL0MsU0FBUyxFQUFFLGVBQWUsQ0FBQyxZQUFZOztFQUd6QyxBQUFBLEdBQUc7SUFDRCxpQkFBaUIsRUFBRSxnQkFBZ0IsQ0FBQyxhQUFhO0lBQ2pELFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxhQUFhOztFQUczQyxBQUFBLEdBQUc7SUFDRCxpQkFBaUIsRUFBRSxlQUFlLENBQUMsWUFBWTtJQUMvQyxTQUFTLEVBQUUsZUFBZSxDQUFDLFlBQVk7O0VBR3pDLEFBQUEsR0FBRztJQUNELGlCQUFpQixFQUFFLGdCQUFnQixDQUFDLGFBQWE7SUFDakQsU0FBUyxFQUFFLGdCQUFnQixDQUFDLGFBQWE7O0VBRzNDLEFBQUEsR0FBRztJQUNELGlCQUFpQixFQUFFLGVBQWUsQ0FBQyxZQUFZO0lBQy9DLFNBQVMsRUFBRSxlQUFlLENBQUMsWUFBWTs7RUFHekMsQUFBQSxHQUFHO0lBQ0QsaUJBQWlCLEVBQUUsZ0JBQWdCLENBQUMsYUFBYTtJQUNqRCxTQUFTLEVBQUUsZ0JBQWdCLENBQUMsYUFBYTs7RUFHM0MsQUFBQSxHQUFHO0lBQ0QsaUJBQWlCLEVBQUUsZUFBZSxDQUFDLFlBQVk7SUFDL0MsU0FBUyxFQUFFLGVBQWUsQ0FBQyxZQUFZOztFQUd6QyxBQUFBLEdBQUc7SUFDRCxpQkFBaUIsRUFBRSxnQkFBZ0IsQ0FBQyxhQUFhO0lBQ2pELFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxhQUFhOztFQUczQyxBQUFBLEdBQUc7SUFDRCxpQkFBaUIsRUFBRSxlQUFlLENBQUMsU0FBUztJQUM1QyxTQUFTLEVBQUUsZUFBZSxDQUFDLFNBQVM7O0VBR3RDLEFBQUEsR0FBRztJQUNELGlCQUFpQixFQUFFLGFBQWEsQ0FBQyxTQUFTO0lBQzFDLFNBQVMsRUFBRSxhQUFhLENBQUMsU0FBUzs7OztBQUl0QyxBQUFBLFlBQVksQ0FBQztFQUNYLE9BQU8sRUFBRSxJQUFJO0NBeUNkOztBQTFDRCxBQUtHLFlBTFM7QUFBWixBQU1FLFlBTlUsRUFNVixBQUFBLEdBQUMsQUFBQSxFQUFLO0VBQ0osT0FBTyxFQUFFLEtBQUs7RUFDZCxRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsS0FBSztFQUNaLEdBQUcsRUFBRSxLQUFLO0VBQ1YsT0FBTyxFQUFFLFlBQVk7RUFDckIsS0FBSyxFQVRBLEtBQUs7RUFVVixNQUFNLEVBVkQsS0FBSztDQW9CWDs7QUFUQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0VBZHhDLEFBS0csWUFMUztFQUFaLEFBTUUsWUFOVSxFQU1WLEFBQUEsR0FBQyxBQUFBLEVBQUs7SUFTRixLQUFLLEVBQUUsS0FBSztHQVFmOzs7QUFOQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBakJ2QyxBQUtHLFlBTFM7RUFBWixBQU1FLFlBTlUsRUFNVixBQUFBLEdBQUMsQUFBQSxFQUFLO0lBWUYsS0FBSyxFQUFFLEtBQUs7R0FLZjs7O0FBSEMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQXBCdkMsQUFLRyxZQUxTO0VBQVosQUFNRSxZQU5VLEVBTVYsQUFBQSxHQUFDLEFBQUEsRUFBSztJQWVGLE9BQU8sRUFBRSxJQUFJO0dBRWhCOzs7QUF2QkgsQUF5QkUsWUF6QlUsQ0F5QlYsWUFBWSxDQUFDO0VBQ1gsa0JBQWtCLEVBQUUsVUFBVTtFQUM5QixVQUFVLEVBQUUsVUFBVTtFQUN0QixlQUFlLEVBQUUsVUFBVTtFQUMzQixPQUFPLEVBQUUsS0FBSztFQUNkLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixTQUFTLEVBQUUsVUFBTztFQUNsQixRQUFRLEVBQUUsUUFBUTtFQUNsQixNQUFNLEVBQUUsQ0FBQztFQUNULElBQUksRUFBRSxDQUFDO0VBQ1AsWUFBWSxFQWxDQSxJQUFJO0VBbUNoQixZQUFZLEVBQUUsS0FBSztFQUNuQixZQUFZLEVBQUUsV0FBVztFQUN6QixhQUFhLEVBQUUsVUFBVTtFQUN6QixPQUFPLEVBQUUsQ0FBQztDQUNYOztBQUVILGtCQUFrQixDQUFsQixhQUFrQjtFQUNoQixBQUFBLEdBQUc7SUFDRCxPQUFPLEVBQUUsQ0FBQzs7RUFHWixBQUFBLElBQUk7SUFDRixPQUFPLEVBQUUsQ0FBQzs7OztDQUlkLEFBQUEsQUFFSSxRQUZILENBQVMsTUFBTSxBQUFmLENBQ0MsWUFBYSxDQUNYLFlBQVksQ0FBQztFQUNYLGlCQUFpQixFQUFFLHFCQUFxQjtFQUN4QyxTQUFTLEVBQUUscUJBQXFCO0NBb0JqQzs7Q0F4QkwsQUFBQSxBQUVJLFFBRkgsQ0FBUyxNQUFNLEFBQWYsQ0FDQyxZQUFhLENBQ1gsWUFBWSxBQUlWLE1BQU8sQ0FBQztFQUNOLHVCQUF1QixFQUFFLEtBQUs7RUFDOUIsZUFBZSxFQUFFLEtBQUs7Q0FDdkI7O0NBVFAsQUFBQSxBQUVJLFFBRkgsQ0FBUyxNQUFNLEFBQWYsQ0FDQyxZQUFhLENBQ1gsWUFBWSxBQVNWLE9BQVEsQ0FBQztFQUNQLEtBQUssRUFBRSxHQUFHO0VBQ1YsTUFBTSxFQUFFLEdBQUc7RUFDWCx1QkFBdUIsRUFBRSxLQUFLO0VBQzlCLGVBQWUsRUFBRSxLQUFLO0NBQ3ZCOztDQWhCUCxBQUFBLEFBRUksUUFGSCxDQUFTLE1BQU0sQUFBZixDQUNDLFlBQWEsQ0FDWCxZQUFZLEFBZ0JWLE1BQU8sQ0FBQztFQUNOLEtBQUssRUFBRSxHQUFHO0VBQ1YsTUFBTSxFQUFFLEdBQUc7RUFDWCx1QkFBdUIsRUFBRSxLQUFLO0VBQzlCLGVBQWUsRUFBRSxLQUFLO0NBQ3ZCOztBQ25QUCx1QkFBdUI7QUFDdkIsa0ZBQWtGO0FBQ2xGLG1FQUFtRTtBQUNuRSxrRkFBa0Y7QUFFbEYsQUFBQSxrQkFBa0IsQ0FBQztFQUNqQixRQUFRLEVBQUUsS0FBSztFQUNmLE1BQU0sRUFBRSxJQUFJO0VBQ1osSUFBSSxFQUFFLElBQUk7RUFDVixLQUFLLEVBQUUsS0FBSztFQUNaLE9BQU8sRUFBRSxJQUFJO0VBQ2IsZ0JBQWdCLEU3RG9CRSxPQUFPO0U2RG5CekIsS0FBSyxFQUFFLElBQUk7RUFDWCxPQUFPLEVBQUUsTUFBTTtFQUNmLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLElBQUk7Q0FVbEI7O0FBUkMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQVpyQyxBQUFBLGtCQUFrQixDQUFDO0lBYWYsS0FBSyxFQUFFLEtBQUs7SUFDWixPQUFPLEVBQUUsU0FBUztHQU1yQjtFQXBCRCxBQWdCSSxrQkFoQmMsQ0FnQmQsRUFBRSxDQUFDO0lBQ0QsT0FBTyxFQUFFLElBQUk7R0FDZDs7O0FBSUwsQUFBQSxhQUFhLENBQUM7RUFDWixhQUFhLEVBQUUsSUFBSTtDQUNwQjs7QTlEWUQsNEJBQTRCO0ErRHpDNUIsdUJBQXVCO0FBQ3ZCLGtGQUFrRjtBQUNsRixrRUFBa0U7QUFDbEUsa0ZBQWtGO0FBR2xGLGtCQUFrQjtBQUdsQixBQUFvQixtQkFBRCxDQUFDLGlDQUFpQyxDQUFDO0VBQ3BELFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLEtBQUs7RUFDYixVQUFVLEVBQUUsS0FBSztFQUNqQixLQUFLLEVBQUUsSUFBSTtFQUNYLFVBQVUsRUFBRSxpREFBaUQsRUFBRSxtQ0FBbUM7RUFDbEcsZUFBZSxFQUFFLEtBQUs7RUFDdEIsaUJBQWlCLEVBQUUsU0FBUztFQUM1QixxQkFBcUIsRUFBRSxLQUFLO0VBQzVCLHVCQUF1QixFQUFFLFdBQVc7RUFDcEMsVUFBVSxFQUFFLDRDQUE0QztFQUN4RCx1QkFBdUIsRUFBRSxJQUFJO0NBVTlCOztBQVJDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQWQxQixBQUFvQixtQkFBRCxDQUFDLGlDQUFpQyxDQUFDO0lBZWhELHFCQUFxQixFQUFFLE1BQU07R0FPbEM7OztBQXRCRCxBQWtCRSxtQkFsQmlCLENBQUMsaUNBQWlDLENBa0JuRCxJQUFJLEFBQUEsUUFBUSxDQUFDO0VBQ1gsdUJBQXVCLEU5REdQLE9BQU87QzhERnhCOztBQUkyQixTQUFDLEVBQXBCLGFBQWEsRUFBQyxJQUFJO0VBQzFCLEFBQUEsaUNBQWlDLENBQUM7SUFDOUIsS0FBSyxFQUFFLGtCQUFrQjtJQUN6Qix1QkFBdUIsRUFBRSxrQkFBa0I7R0FDN0M7OztBQUdMLEFBQUEsOEJBQThCLENBQUM7RUFDN0IsVUFBVSxFQUFFLG1DQUFtQztFQUMvQyxlQUFlLEVBQUUsS0FBSztFQUN0QixpQkFBaUIsRUFBRSxTQUFTO0VBQzVCLHFCQUFxQixFQUFFLEtBQUs7RUFDNUIsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsS0FBSztFQUNiLEtBQUssRUFBRSxJQUFJO0VBQ1gsVUFBVSxFQUFFLEtBQUs7RUFDakIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLENBQUM7RUFDTixjQUFjLEVBQUUsSUFBSTtDQUtyQjs7QUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFiMUIsQUFBQSw4QkFBOEIsQ0FBQztJQWN6QixxQkFBcUIsRUFBRSxNQUFNO0dBRWxDOzs7QUFFRCxBQUFBLFlBQVksQ0FBQztFQUNYLFdBQVcsRUFBRSwyQkFBMkI7RUFDeEMsU0FBUyxFQUFFLEtBQUs7RUFDaEIsVUFBVSxFQUFFLElBQUk7RUFDaEIsVUFBVSxFQUFFLE1BQU07Q0FPbkI7O0FBTkMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQUxyQyxBQUFBLFlBQVksQ0FBQztJQU1ULFNBQVMsRUFBRSxLQUFLO0dBS25COzs7QUFIQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBUnJDLEFBQUEsWUFBWSxDQUFDO0lBU1QsU0FBUyxFQUFFLEtBQUs7R0FFbkI7OztBQUVELEFBQUEsV0FBVyxDQUFDO0VBQ1YsVUFBVSxFQUFFLE1BQU07Q0FPbkI7O0FBTkMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtFQUZ0QyxBQUFBLFdBQVcsQ0FBQztJQUdSLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLEtBQUssRUFBRSxLQUFLO0lBQ1osWUFBWSxFQUFFLElBQUk7SUFDbEIsVUFBVSxFQUFFLElBQUk7R0FFbkI7OztBQUVELEFBQWtDLGlDQUFELENBQUMsV0FBVyxDQUFDO0VBQzVDLEtBQUssRTlEdkR3QixPQUFPO0U4RHdEcEMsdUJBQXVCLEU5RHhETSxPQUFPO0M4RHlEckM7O0FBRUQsQUFBQSxxQkFBcUIsQ0FBQztFQUNwQixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsQ0FBQztDQUNQOztBQUVELEFBQUEsZ0JBQWdCLENBQUM7RUFDZixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsSUFBSTtFQUNULEtBQUssRUFBRSxDQUFDO0NBQ1Q7O0FBR0QsaUJBQWlCO0FBQ2pCLEFBQUEsYUFBYSxDQUFDO0VBQ1osS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsS0FBSztFQUNiLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLFVBQVUsRUFBRSxPQUFPO0VBQUcsa0JBQWtCO0VBQUMsY0FBYztFQUFDLDZCQUE2QjtFQUNyRixVQUFVLEVBQUUsa0RBQWtEO0VBQzlELFVBQVUsRUFBRSx5R0FBeUc7RUFDckgsZUFBZSxFQUFFLFNBQVM7RUFDMUIsaUJBQWlCLEVBQUUsOEJBQThCO0VBQ2pELFNBQVMsRUFBRSw4QkFBOEI7Q0FVMUM7O0FBVEMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQVZyQyxBQUFBLGFBQWEsQ0FBQztJQVdWLE1BQU0sRUFBRSxJQUFJO0dBUWY7OztBQUxDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFkckMsQUFBQSxhQUFhLENBQUM7SUFlVixNQUFNLEVBQUUsQ0FBQztJQUNULE9BQU8sRUFBRSxDQUFDO0lBQ1YsVUFBVSxFQUFFLE1BQU07R0FFckI7OztBQUNELGtCQUFrQixDQUFsQixhQUFrQjtFQUNoQixBQUFBLEVBQUU7SUFDQSxtQkFBbUIsRUFBRSxLQUFLOztFQUc1QixBQUFBLEdBQUc7SUFDRCxtQkFBbUIsRUFBRSxRQUFROztFQUcvQixBQUFBLElBQUk7SUFDRixtQkFBbUIsRUFBRSxLQUFLOzs7O0FBRzlCLFVBQVUsQ0FBVixhQUFVO0VBQ1IsQUFBQSxFQUFFO0lBQ0EsbUJBQW1CLEVBQUUsS0FBSzs7RUFHNUIsQUFBQSxHQUFHO0lBQ0QsbUJBQW1CLEVBQUUsUUFBUTs7RUFHL0IsQUFBQSxJQUFJO0lBQ0YsbUJBQW1CLEVBQUUsS0FBSzs7OztBQUk5QixBQUFBLFdBQVcsQ0FBQztFQUNWLEdBQUcsRUFBRSxLQUFLO0VBQ1YsT0FBTyxFQUFFLEtBQUs7RUFDZCxRQUFRLEVBQUUsUUFBUTtFQUNsQixNQUFNLEVBQUUsTUFBTTtDQUlmOztBQUhDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFMckMsQUFBQSxXQUFXLENBQUM7SUFNUixHQUFHLEVBQUUsSUFBSTtHQUVaOzs7QUFFRCxBQUFBLFdBQVcsQ0FBQztFQUNWLEdBQUcsRUFBRSxLQUFLO0VBQ1YsT0FBTyxFQUFFLEtBQUs7RUFDZCxRQUFRLEVBQUUsUUFBUTtFQUNsQixNQUFNLEVBQUUsTUFBTTtDQUlmOztBQUhDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFMckMsQUFBQSxXQUFXLENBQUM7SUFNUixHQUFHLEVBQUUsSUFBSTtHQUVaOzs7QUFFRCxBQUFBLGVBQWUsQ0FBQztFQUNkLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLFVBQVUsRUFBRSxNQUFNO0NBQ25COztBQUVELEFBQUEsVUFBVSxDQUFDO0VBQ1QsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLEdBQUc7RUFDVixHQUFHLEVBQUUsSUFBSTtDQU9WOztBQU5DLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07RUFKdEMsQUFBQSxVQUFVLENBQUM7SUFLUCxLQUFLLEVBQUUsR0FBRztHQUtiOzs7QUFIQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0VBUHRDLEFBQUEsVUFBVSxDQUFDO0lBUVAsT0FBTyxFQUFFLElBQUk7R0FFaEI7OztBQUVELEFBQUEsZUFBZSxDQUFDO0VBQ2QsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLEdBQUc7RUFDVixHQUFHLEVBQUUsSUFBSTtFQUNULE9BQU8sRUFBRSxDQUFDO0VBQ1YsaUJBQWlCLEVBQUUscUJBQXFCO0VBQ2hDLFNBQVMsRUFBRSxxQkFBcUI7RUFDeEMsY0FBYyxFQUFFLFFBQVEsQ0FBQyxXQUFXO0VBQzVCLE1BQU0sRUFBRSxRQUFRLENBQUMsV0FBVztDQU9yQzs7QUFOQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0VBVHRDLEFBQUEsZUFBZSxDQUFDO0lBVVosS0FBSyxFQUFFLEdBQUc7R0FLYjs7O0FBSEMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtFQVp0QyxBQUFBLGVBQWUsQ0FBQztJQWFaLE9BQU8sRUFBRSxJQUFJO0dBRWhCOzs7QUFDRCxrQkFBa0IsQ0FBbEIsSUFBa0I7RUFDaEIsQUFBQSxFQUFFO0lBQ0EsT0FBTyxFQUFFLENBQUM7O0VBR1osQUFBQSxHQUFHO0lBQ0QsT0FBTyxFQUFFLENBQUM7O0VBR1osQUFBQSxJQUFJO0lBQ0YsT0FBTyxFQUFFLENBQUM7Ozs7QUFHZCxVQUFVLENBQVYsSUFBVTtFQUNSLEFBQUEsRUFBRTtJQUNBLE9BQU8sRUFBRSxDQUFDOztFQUdaLEFBQUEsR0FBRztJQUNELE9BQU8sRUFBRSxDQUFDOztFQUdaLEFBQUEsSUFBSTtJQUNGLE9BQU8sRUFBRSxDQUFDOzs7O0FBS2QsMkJBQTJCO0FBQzNCLEFBQUEsdUJBQXVCLENBQUM7RUFDdEIsYUFBYSxFQUFFLElBQUk7Q0FDcEI7O0FBRUQsQUFBQSxrQ0FBa0MsQ0FBQztFQUNqQyxRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsS0FBSztFQUNWLElBQUksRUFBRSxLQUFLO0NBT1o7O0FBTkMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSyxPQUFPLFNBQVMsRUFBRSxLQUFLO0VBSjVELEFBQUEsa0NBQWtDLENBQUM7SUFLL0IsTUFBTSxFQUFFLE1BQU07SUFDZCxLQUFLLEVBQUUsS0FBSztJQUNaLEdBQUcsRUFBRSxJQUFJO0lBQ1QsSUFBSSxFQUFFLElBQUk7R0FFYjs7O0FBRUQsQUFBUSxPQUFELENBQUMsb0NBQW9DLENBQUM7RUFDM0MsS0FBSyxFQUFFLEtBQUs7RUFDWixxQkFBcUIsRUFBRSxvQ0FBb0M7RUFDM0QsYUFBYSxFQUFFLG9DQUFvQztFQUNuRCxLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxLQUFLO0NBQ2Q7O0FBRUQsQUFBQSw4QkFBOEIsQ0FBQztFQUM3QixLQUFLLEVBQUUsS0FBSztFQUNaLEtBQUssRUFBRSxLQUFLO0VBQ1osT0FBTyxFQUFFLFNBQVM7RUFDbEIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLENBQUM7Q0FLWDs7QUFKQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0VBTnRDLEFBQUEsOEJBQThCLENBQUM7SUFPM0IsS0FBSyxFQUFFLElBQUk7SUFDWCxLQUFLLEVBQUUsSUFBSTtHQUVkOzs7QUFFRCxBQUFBLFlBQVksQ0FBQztFQUNYLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEtBQUssRUFBRSxJQUFJO0NBQ1o7O0FBR0Qsd0JBQXdCO0FBQ3hCLEFBQUEsb0JBQW9CLENBQUM7RUFDbkIsVUFBVSxFQUFFLEtBQUs7Q0FVbEI7O0FBVEMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQUZyQyxBQUFBLG9CQUFvQixDQUFDO0lBR2pCLFVBQVUsRUFBRSxLQUFLO0dBUXBCOzs7QUFKRyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBUHZDLEFBTUUsb0JBTmtCLENBTWxCLGdCQUFnQixDQUFDO0lBRWIsY0FBYyxFQUFFLENBQUM7R0FFcEI7OztBQUdILEFBQUEsNkJBQTZCLENBQUM7RUFDNUIsV0FBVyxFQUFFLElBQUk7Q0FJbEI7O0FBSEMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQUZyQyxBQUFBLDZCQUE2QixDQUFDO0lBRzFCLFdBQVcsRUFBRSxDQUFDO0dBRWpCOzs7QUFFRCxBQUFBLDBCQUEwQixDQUFDO0VBQ3pCLEdBQUcsRUFBRSxLQUFLO0VBQ1YsS0FBSyxFQUFFLEdBQUc7RUFDVixLQUFLLEVBQUUsS0FBSztFQUNaLE1BQU0sRUFBRSxLQUFLO0VBQ2IsUUFBUSxFQUFFLFFBQVE7RUFDbEIsVUFBVSxFQUFFLE1BQU07Q0FrQm5COztBQWpCQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0VBUHRDLEFBQUEsMEJBQTBCLENBQUM7SUFRdkIsR0FBRyxFQUFFLEtBQUs7SUFDVixLQUFLLEVBQUUsS0FBSztJQUNaLE1BQU0sRUFBRSxLQUFLO0dBY2hCOzs7QUFaQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBWnJDLEFBQUEsMEJBQTBCLENBQUM7SUFhdkIsR0FBRyxFQUFFLEtBQUs7SUFDVixJQUFJLEVBQUUsSUFBSTtJQUNWLEtBQUssRUFBRSxLQUFLO0lBQ1osTUFBTSxFQUFFLEtBQUs7R0FRaEI7OztBQU5DLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFsQnJDLEFBQUEsMEJBQTBCLENBQUM7SUFtQnZCLEtBQUssRUFBRSxLQUFLO0lBQ1osTUFBTSxFQUFFLEtBQUs7SUFDYixJQUFJLEVBQUUsSUFBSTtJQUNWLEdBQUcsRUFBRSxLQUFLO0dBRWI7OztBQUdELHFCQUFxQjtBQUNyQixBQUFBLGNBQWMsQ0FBQztFQUNiLE1BQU0sRUFBRSxLQUFLO0VBQ2IsVUFBVSxFQUFFLE1BQU07Q0FLbkI7O0FBSkMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQUhyQyxBQUFBLGNBQWMsQ0FBQztJQUlYLE1BQU0sRUFBRSxLQUFLO0lBQ2IsU0FBUyxFQUFFLElBQUk7R0FFbEI7OztBQUVELEFBQUEsYUFBYSxDQUFDO0VBQ1osYUFBYSxFQUFFLElBQUk7Q0FDcEI7O0FBR0Qsb0JBQW9CO0FBQ3BCLEFBQUEsZ0JBQWdCLENBQUM7RUFDZixVQUFVLEVBQUUsbUNBQW1DO0VBQy9DLGVBQWUsRUFBRSxLQUFLO0VBQ3RCLGlCQUFpQixFQUFFLFNBQVM7RUFDNUIsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsS0FBSztFQUNiLGFBQWEsRUFBRSxDQUFDO0VBQ2hCLEtBQUssRUFBRSxJQUFJO0VBQ1gsVUFBVSxFQUFFLEtBQUs7Q0FDbEI7O0FBRUQsQUFBQSwyQkFBMkIsQ0FBQztFQUMxQixPQUFPLEVBQUUsWUFBWTtFQUVyQixXQUFXLEVBQUUsSUFBSTtDQU1sQjs7QUFURCxBQUtHLDJCQUx3QixDQUt4QixHQUFHLENBQUM7RUFDRixVQUFVLEVBQUUsSUFBSTtFQUNoQixVQUFVLEVBQUUsS0FBSztDQUNsQjs7QUFHSixBQUFBLHNCQUFzQixDQUFDO0VBQ3JCLE9BQU8sRUFBRSxLQUFLO0VBQ2QsS0FBSyxFQUFFLElBQUk7RUFDWCxRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsR0FBRztFQUNWLElBQUksRUFBRSxHQUFHO0VBQ1QsTUFBTSxFQUFFLEtBQUs7RUFDYixHQUFHLEVBQUUsS0FBSztFQUNWLFdBQVcsRUFBRSxJQUFJO0NBc0JsQjs7QUE5QkQsQUFVRSxzQkFWb0IsQUFVcEIsTUFBTyxDQUFDO0VBQ04sS0FBSyxFOUQ5VVMsT0FBTztDOEQrVXRCOztBQUVELE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFkckMsQUFBQSxzQkFBc0IsQ0FBQztJQWVuQixHQUFHLEVBQUUsSUFBSTtHQWVaOzs7QUFaQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBbEJyQyxBQUFBLHNCQUFzQixDQUFDO0lBbUJuQixNQUFNLEVBQUUsS0FBSztJQUNiLFdBQVcsRUFBRSxJQUFJO0dBVXBCOzs7QUFQQyxNQUFNLENBQUMsTUFBTSxNQUFNLFVBQVUsRUFBRSxLQUFLO0VBdkJ0QyxBQUFBLHNCQUFzQixDQUFDO0lBd0JuQixHQUFHLEVBQUUsSUFBSTtHQU1aOzs7QUFIQyxNQUFNLENBQUMsTUFBTSxNQUFNLFVBQVUsRUFBRSxLQUFLO0VBM0J0QyxBQUFBLHNCQUFzQixDQUFDO0lBNEJuQixHQUFHLEVBQUUsSUFBSTtHQUVaOzs7QUFFRCxBQUFBLHVCQUF1QixDQUFDO0VBQ3RCLE9BQU8sRUFBRSxLQUFLO0VBQ2QsS0FBSyxFQUFFLElBQUk7RUFDWCxRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsR0FBRztFQUNWLElBQUksRUFBRSxHQUFHO0VBQ1QsTUFBTSxFQUFFLEtBQUs7RUFDYixHQUFHLEVBQUUsS0FBSztFQUNWLFdBQVcsRUFBRSxJQUFJO0NBMkJsQjs7QUFuQ0QsQUFVRSx1QkFWcUIsQUFVckIsTUFBTyxDQUFDO0VBQ04sS0FBSyxFOUQ5V1MsT0FBTztDOEQrV3RCOztBQUVELE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFkckMsQUFBQSx1QkFBdUIsQ0FBQztJQWVwQixHQUFHLEVBQUUsSUFBSTtHQW9CWjs7O0FBakJDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFsQnJDLEFBQUEsdUJBQXVCLENBQUM7SUFtQnBCLE1BQU0sRUFBRSxLQUFLO0lBQ2IsV0FBVyxFQUFFLElBQUk7R0FlcEI7OztBQVpDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sVUFBVSxFQUFFLEtBQUs7RUF2QnRDLEFBQUEsdUJBQXVCLENBQUM7SUF3QnBCLEdBQUcsRUFBRSxJQUFJO0dBV1o7OztBQVRDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sVUFBVSxFQUFFLEtBQUs7RUExQnRDLEFBQUEsdUJBQXVCLENBQUM7SUEyQnBCLEdBQUcsRUFBRSxJQUFJO0dBUVo7OztBQU5DLE1BQU0sQ0FBQyxNQUFNLE1BQU0sVUFBVSxFQUFFLEtBQUs7RUE3QnRDLEFBQUEsdUJBQXVCLENBQUM7SUE4QnBCLEdBQUcsRUFBRSxJQUFJO0dBS1o7OztBQUhDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sVUFBVSxFQUFFLEtBQUs7RUFoQ3RDLEFBQUEsdUJBQXVCLENBQUM7SUFpQ3BCLEdBQUcsRUFBRSxJQUFJO0dBRVo7OztBQ3ZhRCx1QkFBdUI7QUFDdkIsa0ZBQWtGO0FBQ2xGLHVFQUF1RTtBQUN2RSxrRkFBa0Y7QUFFbEYsdUJBQXVCO0FBRXJCLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFEckMsQUFBQSxtQkFBbUIsQ0FBQztJQUVoQixVQUFVLEVBQUUsSUFBSTtHQUVuQjs7O0FBRUQsQUFBQSxlQUFlLENBQUM7RUFDZCxVQUFVLEVBQUUsTUFBTTtFQUNsQixhQUFhLEVBQUUsSUFBSTtFQUNuQixXQUFXLEVBQUUsSUFBSTtDQUNsQjs7QUFFRCxBQUFnQixlQUFELENBQUMsSUFBSSxDQUFDO0VBQ25CLE1BQU0sRUFBRSxDQUFDO0VBQ1QsT0FBTyxFQUFFLFlBQVk7RUFDckIsTUFBTSxFQUFFLENBQUM7Q0FxQ1Y7O0FBeENELEFBS0ssZUFMVSxDQUFDLElBQUksQ0FLbEIsRUFBRSxDQUFDLENBQUMsQ0FBQztFQUNILE1BQU0sRUFBRSxDQUFDO0VBQ1QsTUFBTSxFQUFFLFVBQVU7RUFDbEIsT0FBTyxFQUFFLENBQUM7RUFDVixjQUFjLEVBQUUsSUFBSTtFQUNwQixTQUFTLEVBQUUsSUFBSTtFQUNmLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLFdBQVcsRS9EYkcsV0FBVyxFQUFFLHNCQUFzQixFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsVUFBVTtFK0RjckcsV0FBVyxFQUFFLEdBQUc7RUFDaEIsZUFBZSxFQUFFLElBQUk7RUFDckIsS0FBSyxFQUFFLE9BQU87RUFDZCxhQUFhLEVBQUUsaUJBQWlCO0VBQ2hDLGtCQUFrQixFQUFFLFNBQVM7RUFDN0IsVUFBVSxFQUFFLFNBQVM7Q0FldEI7O0FBYkMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQXBCdkMsQUFLSyxlQUxVLENBQUMsSUFBSSxDQUtsQixFQUFFLENBQUMsQ0FBQyxDQUFDO0lBZ0JELE1BQU0sRUFBRSxNQUFNO0lBQ2QsU0FBUyxFQUFFLElBQUk7SUFDZixTQUFTLEVBQUUsSUFBSTtJQUNmLGNBQWMsRUFBRSxHQUFHO0dBU3RCOzs7QUFqQ0gsQUFLSyxlQUxVLENBQUMsSUFBSSxDQUtsQixFQUFFLENBQUMsQ0FBQyxBQXNCRixNQUFPLEVBM0JYLEFBS0ssZUFMVSxDQUFDLElBQUksQ0FLbEIsRUFBRSxDQUFDLENBQUMsQUFzQk8sTUFBTyxDQUFDO0VBQ2YsTUFBTSxFQUFFLENBQUM7RUFDVCxnQkFBZ0IsRUFBRSxXQUFXO0VBQzdCLEtBQUssRS9EckJvQixPQUFPO0UrRHNCaEMsYUFBYSxFQUFFLEdBQUcsQ0FBQyxLQUFLLEMvRGxCVixPQUFPO0MrRG1CdEI7O0FBaENMLEFBbUNZLGVBbkNHLENBQUMsSUFBSSxDQW1DbEIsRUFBRSxBQUFBLE9BQU8sQ0FBQyxDQUFDLENBQUM7RUFDVixLQUFLLEUvRDNCc0IsT0FBTztFK0Q0QmxDLGFBQWEsRUFBRSxHQUFHLENBQUMsS0FBSyxDL0R4QlIsT0FBTztDK0R5QnhCOztBQUlILEFBQUEsVUFBVSxDQUFDO0VBQ1QsUUFBUSxFQUFFLFFBQVE7RUFDbEIsYUFBYSxFQUFFLElBQUk7RUFDbkIsTUFBTSxFQUFFLEtBQUs7Q0F1Q2Q7O0FBcENHLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUssT0FBTyxTQUFTLEVBQUUsTUFBTTtFQU4vRCxBQUtJLFVBTE0sR0FLTixDQUFDLENBQUM7SUFFQSxLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lBQ1osUUFBUSxFQUFFLE1BQU07SUFDaEIsT0FBTyxFQUFFLFlBQVk7R0FFeEI7OztBQUVELE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFkckMsQUFBQSxVQUFVLENBQUM7SUFlUCxNQUFNLEVBQUUsSUFBSTtJQUNaLGFBQWEsRUFBRSxJQUFJO0dBMEJ0Qjs7O0FBMUNELEFBbUJFLFVBbkJRLENBbUJSLEdBQUcsQ0FBQztFQUNGLEtBQUssRUFBRSxJQUFJO0NBVVo7O0FBUkMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSyxPQUFPLFNBQVMsRUFBRSxNQUFNO0VBdEIvRCxBQW1CRSxVQW5CUSxDQW1CUixHQUFHLENBQUM7SUFJQSxVQUFVLEVBQUUsSUFBSTtJQUNoQixTQUFTLEVBQUUsSUFBSTtJQUNmLEtBQUssRUFBRSxJQUFJO0lBQ1gsU0FBUyxFQUFFLElBQUk7SUFDZixRQUFRLEVBQUUsUUFBUTtJQUNsQixJQUFJLEVBQUUsSUFBSTtHQUViOzs7QUE5QkgsQUFnQ1UsVUFoQ0EsQUFnQ1IsTUFBTyxDQUFDLHVCQUF1QixDQUFDO0VBQzlCLE9BQU8sRUFBRSxDQUFDO0NBQ1g7O0FBbENILEFBb0NpQyxVQXBDdkIsQUFvQ1IsTUFBTyxDQUFDLHNCQUFzQixDQUFDLEdBQUcsQ0FBQztFQUNqQyxPQUFPLEVBQUUsQ0FBQztFQUNWLGNBQWMsRUFBRSxhQUFhLENBQUMsU0FBUztFQUMvQixNQUFNLEVBQUUsYUFBYSxDQUFDLFNBQVM7Q0FDeEM7O0FBSUgsQUFBVyxVQUFELENBQUMsVUFBVSxDQUFDO0VBQ3BCLGFBQWEsRUFBRSxJQUFJO0NBNkJwQjs7QUEzQkMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQUhyQyxBQUFXLFVBQUQsQ0FBQyxVQUFVLENBQUM7SUFJbEIsYUFBYSxFQUFFLElBQUk7R0EwQnRCO0VBOUJELEFBTUksVUFOTSxDQUFDLFVBQVUsQ0FNakIsdUJBQXVCLENBQUM7SUFDdEIsT0FBTyxFQUFFLElBQUk7R0FDZDs7O0FBUkwsQUFXVSxVQVhBLENBQUMsVUFBVSxBQVduQixNQUFPLENBQUMsR0FBRyxDQUFDO0VBQ1YsY0FBYyxFQUFFLGFBQWEsQ0FBQyxTQUFTO0VBQy9CLE1BQU0sRUFBRSxhQUFhLENBQUMsU0FBUztDQUN4Qzs7QUFkSCxBQWdCRSxVQWhCUSxDQUFDLFVBQVUsQ0FnQm5CLEdBQUcsQ0FBQztFQUNGLGNBQWMsRUFBRSxhQUFhLENBQUMsV0FBVztFQUNqQyxNQUFNLEVBQUUsYUFBYSxDQUFDLFdBQVc7Q0FVMUM7O0FBUkMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSyxPQUFPLFNBQVMsRUFBRSxNQUFNO0VBcEIvRCxBQWdCRSxVQWhCUSxDQUFDLFVBQVUsQ0FnQm5CLEdBQUcsQ0FBQztJQUtBLFVBQVUsRUFBRSxPQUFPO0lBQ25CLFNBQVMsRUFBRSxPQUFPO0lBQ2xCLEtBQUssRUFBRSxHQUFHO0lBQ1YsU0FBUyxFQUFFLE9BQU87SUFDbEIsUUFBUSxFQUFFLFFBQVE7R0FHckI7OztBQUlILEFBQUEsdUJBQXVCLENBQUM7RUFDdEIsT0FBTyxFQUFFLENBQUM7RUFDVixRQUFRLEVBQUUsUUFBUTtFQUNsQixPQUFPLEVBQUUsQ0FBQztFQUNWLEdBQUcsRUFBRSxDQUFDO0VBQ04sSUFBSSxFQUFFLENBQUM7RUFDUCxLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJO0VBQ1osa0JBQWtCLEVBQUUsU0FBUztFQUM3QixVQUFVLEVBQUUsU0FBUztFQUNyQixPQUFPLEVBQUUsSUFBSTtDQWFkOztBQVhDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07RUFadEMsQUFBQSx1QkFBdUIsQ0FBQztJQWFwQixPQUFPLEVBQUUsSUFBSTtHQVVoQjs7O0FBUEMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQWhCckMsQUFBQSx1QkFBdUIsQ0FBQztJQWlCcEIsT0FBTyxFQUFFLENBQUM7SUFDVixRQUFRLEVBQUUsTUFBTTtJQUNoQixNQUFNLEVBQUUsSUFBSTtJQUNaLE9BQU8sRUFBRSxjQUFjO0lBQ3ZCLFVBQVUsRUFBRSxJQUFJO0dBRW5COzs7QUFFRCxBQUFBLHNCQUFzQixDQUFDO0VBQ3JCLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLEtBQUs7RUFDYixnQkFBZ0IsRUFBRSxPQUFPO0VBQ3pCLFFBQVEsRUFBRSxRQUFRO0NBb0JuQjs7QUFsQkMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQU5yQyxBQUFBLHNCQUFzQixDQUFDO0lBT25CLE1BQU0sRUFBRSxLQUFLO0lBQ2IsZ0JBQWdCLEVBQUUsT0FBTztHQWdCNUI7OztBQXhCRCxBQVdFLHNCQVhvQixDQVdwQixHQUFHLENBQUM7RUFDRixLQUFLLEVBQUUsR0FBRztFQUNWLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxHQUFHO0VBQ1IsSUFBSSxFQUFFLEdBQUc7RUFDVCxpQkFBaUIsRUFBRSxxQkFBcUI7RUFDaEMsU0FBUyxFQUFFLHFCQUFxQjtDQU16Qzs7QUFKQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBbkJ2QyxBQVdFLHNCQVhvQixDQVdwQixHQUFHLENBQUM7SUFTQSxjQUFjLEVBQUUsYUFBYSxDQUFDLFNBQVMsQ0FBQyxVQUFVO0lBQzFDLE1BQU0sRUFBRSxhQUFhLENBQUMsU0FBUyxDQUFDLFVBQVU7R0FFckQ7OztBQ3hMSCx1QkFBdUI7QUFDdkIsa0ZBQWtGO0FBQ2xGLHVFQUF1RTtBQUN2RSxrRkFBa0Y7QUFFbEYsQUFBQSxnQkFBZ0IsQ0FBQztFQUNmLFVBQVUsRUFBRSxLQUFLO0VBQ2pCLGFBQWEsRUFBRSxLQUFLO0NBS3JCOztBQUhDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFKckMsQUFBQSxnQkFBZ0IsQ0FBQztJQUtiLGFBQWEsRUFBRSxDQUFDO0dBRW5COzs7QUFHRCxBQUFBLHNCQUFzQixDQUFDO0VBQ3JCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEtBQUssRUFBRSxLQUFLO0VBQ1osR0FBRyxFQUFFLEtBQUs7RUFDVixLQUFLLEVBQUUsS0FBSztFQUNaLE1BQU0sRUFBRSxLQUFLO0VBQ2IsUUFBUSxFQUFFLFFBQVE7RUFDbEIsVUFBVSxFQUFFLE1BQU07Q0FPbkI7O0FBTEMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQVRyQyxBQUFBLHNCQUFzQixDQUFDO0lBVW5CLEtBQUssRUFBRSxLQUFLO0lBQ1osTUFBTSxFQUFFLEtBQUs7SUFDYixLQUFLLEVBQUUsR0FBRztHQUViOzs7QUFFRCxBQUFBLHNCQUFzQixDQUFDO0VBQ3JCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEtBQUssRUFBRSxDQUFDO0VBQ1IsaUJBQWlCO0NBQ2xCOztBQ25DRCx1QkFBdUI7QUFDdkIsa0ZBQWtGO0FBQ2xGLHVFQUF1RTtBQUN2RSxrRkFBa0Y7QUFJaEYsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQURyQyxBQUFBLGlCQUFpQixFQUFFLEFBQUEsZ0JBQWdCLENBQUM7SUFFaEMsVUFBVSxFQUFFLElBQUk7R0FFbkI7OztBQUVELEFBQUEsYUFBYSxDQUFDO0VBQ1osS0FBSyxFQUFFLEdBQUc7RUFDVixLQUFLLEVBQUUsSUFBSTtFQUNYLFlBQVksRUFBRSxJQUFJO0VBQ2xCLGFBQWEsRUFBRSxJQUFJO0NBYXBCOztBQVhDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07RUFOdEMsQUFBQSxhQUFhLENBQUM7SUFPVixLQUFLLEVBQUUsUUFDVDtHQVNEOzs7QUFQQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBVnJDLEFBQUEsYUFBYSxDQUFDO0lBV1YsS0FBSyxFQUFFLEdBQUc7R0FNYjs7O0FBSEMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQWRyQyxBQUFBLGFBQWEsQ0FBQztJQWVWLEtBQUssRUFBRSxJQUFJO0dBRWQ7OztBQUVELEFBQUEsUUFBUSxDQUFDO0VBQ1AsZUFBZSxFQUFFLElBQUk7RUFDckIsVUFBVSxFQUFFLElBQUk7RUFDaEIsT0FBTyxFQUFFLEtBQUs7RUFDZCxrQkFBa0IsRUFBRSxTQUFTO0VBQzdCLFVBQVUsRUFBRSxTQUFTO0VBQ3JCLE1BQU0sRUFBRSxLQUFLO0NBMkJkOztBQXZCRyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBVnZDLEFBU0UsUUFUTSxBQVNOLE1BQU8sQ0FBQztJQUVKLGtCQUFrQixFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFjO0lBQ2pELFVBQVUsRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBYztJQUN2QyxpQkFBaUIsRUFBRSxXQUFXO0lBQ3RCLFNBQVMsRUFBRSxXQUFXO0dBRWpDOzs7QUFoQkgsQUFrQkUsUUFsQk0sQUFrQk4sTUFBTyxDQUFDO0VBQ04sZUFBZSxFQUFFLElBQUk7Q0FDdEI7O0FBcEJILEFBc0JFLFFBdEJNLENBc0JOLEtBQUssQ0FBQztFQUNKLGFBQWEsRUFBRSxJQUFJO0VBQ25CLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE1BQU0sRUFBRSxLQUFLO0VBQ2IsR0FBRyxFQUFFLE1BQU07Q0FDWjs7QUEzQkgsQUE2QkUsUUE3Qk0sQ0E2Qk4sb0JBQW9CLENBQUM7RUFDbkIsT0FBTyxFQUFFLGVBQWU7RUFDeEIsVUFBVSxFQUFFLE1BQU07Q0FDbkI7O0FBR0gsQUFBQSxpQkFBaUIsQ0FBQztFQUNoQixLQUFLLEVBQUMsSUFBSTtFQUNWLE1BQU0sRUFBRSxLQUFLO0VBQ2IsUUFBUSxFQUFFLE1BQU07RUFDaEIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLENBQUM7Q0FDWDs7QUFHQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBRHJDLEFBQWlCLGdCQUFELENBQUMsTUFBTSxDQUFDO0lBRXBCLE9BQU8sRUFBRSxvQkFBb0I7R0FFaEM7OztBQUdDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFEckMsQUFBQSxnQkFBZ0IsQ0FBQztJQUViLGFBQWEsRUFBRSxJQUFJO0dBTXRCOzs7QUFSRCxBQUtFLGdCQUxjLENBS2QsRUFBRSxDQUFDO0VBQ0QsWUFBWSxFQUFFLElBQUk7Q0FDbkI7O0FDdkZILHVCQUF1QjtBQUN2QixrRkFBa0Y7QUFDbEYsa0VBQWtFO0FBQ2xFLGtGQUFrRjtBQUVsRixpQkFBaUI7QUFFZixNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBRHJDLEFBQUEsYUFBYSxDQUFDO0lBRVYsVUFBVSxFQUFFLElBQUk7R0FFbkI7OztBQUVELEFBQUEsYUFBYSxFQUFFLEFBQUEsb0JBQW9CLENBQUM7RUFDbEMsYUFBYSxFQUFFLElBQUk7Q0FTcEI7O0FBUEMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQUhyQyxBQUFBLGFBQWEsRUFBRSxBQUFBLG9CQUFvQixDQUFDO0lBSWhDLGFBQWEsRUFBRSxDQUFDO0dBTW5COzs7QUFWRCxBQU9FLGFBUFcsQUFPWixjQUFnQixFQVBGLEFBT2Isb0JBUGlDLEFBT2xDLGNBQWdCLENBQUM7RUFDZCxVQUFVLEVBQUUsSUFBSTtDQUNqQjs7QUFHSCxBQUFBLG1CQUFtQixDQUFDO0VBQ2xCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLElBQUksRUFBRSxLQUFLO0VBQ1gsR0FBRyxFQUFFLEtBQUs7RUFDVixLQUFLLEVBQUUsS0FBSztFQUNaLE1BQU0sRUFBRSxLQUFLO0VBQ2IsUUFBUSxFQUFFLFFBQVE7RUFDbEIsVUFBVSxFQUFFLE1BQU07Q0FrQm5COztBQWhCQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0VBVHRDLEFBQUEsbUJBQW1CLENBQUM7SUFVaEIsS0FBSyxFQUFFLEtBQUs7SUFDWixNQUFNLEVBQUUsS0FBSztHQWNoQjs7O0FBWEMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQWRyQyxBQUFBLG1CQUFtQixDQUFDO0lBZWhCLElBQUksRUFBRSxJQUFJO0lBQ1YsR0FBRyxFQUFFLEtBQUs7SUFDVixLQUFLLEVBQUUsS0FBSztJQUNaLE1BQU0sRUFBRSxLQUFLO0dBT2hCOzs7QUFKQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBckJyQyxBQUFBLG1CQUFtQixDQUFDO0lBc0JoQixLQUFLLEVBQUUsS0FBSztJQUNaLE1BQU0sRUFBRSxLQUFLO0dBRWhCOzs7QUFFRCxBQUFBLG9CQUFvQixDQUFDO0VBQ25CLFdBQVcsRUFBRSxNQUFNO0VBQ25CLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE9BQU8sRUFBRSxDQUFDO0VBQ1YsZ0JBQWdCLEVBQUUsSUFBSTtDQUt2Qjs7QUFIQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0VBTnRDLEFBQUEsb0JBQW9CLENBQUM7SUFPakIsV0FBVyxFQUFFLENBQUM7R0FFakI7OztBQUVELEFBQUEsMkJBQTJCLENBQUM7RUFDMUIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLE1BQU07RUFDYixPQUFPLEVBQUUsQ0FBQztFQUNWLEdBQUcsRUFBRSxHQUFHO0VBQ1IsZ0JBQWdCLEVBQUUsSUFBSTtFQUN0QixLQUFLLEVBQUUsS0FBSztDQU1iOztBQUpDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFSckMsQUFBQSwyQkFBMkIsQ0FBQztJQVN4QixRQUFRLEVBQUUsTUFBTTtJQUNoQixLQUFLLEVBQUUsSUFBSTtHQUVkOzs7QUMxRUQsdUJBQXVCO0FBQ3ZCLGtGQUFrRjtBQUNsRixrRUFBa0U7QUFDbEUsa0ZBQWtGO0FBRWxGLGlCQUFpQjtBQUVmLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFEckMsQUFBQSxjQUFjLENBQUM7SUFFWCxVQUFVLEVBQUUsSUFBSTtHQUVuQjs7O0FBRUQsQUFBQSxjQUFjLENBQUM7RUFDYixhQUFhLEVBQUUsSUFBSTtFQUNuQixVQUFVLEVBQUUsSUFBSTtDQUNqQjs7QUFFRCxBQUFBLHFCQUFxQixDQUFDO0VBQ3BCLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE9BQU8sRUFBRSxDQUFDO0VBQ1YsZ0JBQWdCLEVBQUUsSUFBSTtFQUN0QixLQUFLLEVBQUUsR0FBRztFQUNWLElBQUksRUFBRSxHQUFHO0NBU1Y7O0FBUEMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQVJyQyxBQUFBLHFCQUFxQixDQUFDO0lBU2xCLFVBQVUsRUFBRSxDQUFDO0lBQ2IsS0FBSyxFQUFFLElBQUk7SUFDWCxRQUFRLEVBQUUsTUFBTTtJQUNoQixZQUFZLEVBQUUsQ0FBQztJQUNmLGFBQWEsRUFBRSxDQUFDO0dBRW5COzs7QUFFRCxBQUFBLFdBQVcsQ0FBQztFQUNWLE9BQU8sRUFBRSxTQUFTO0NBc0JuQjs7QUFuQkcsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQUp2QyxBQUdFLFdBSFMsQ0FHVCxJQUFJLENBQUM7SUFFRCxPQUFPLEVBQUUsWUFBWTtHQUV4Qjs7O0FBRUQsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQVRyQyxBQUFBLFdBQVcsQ0FBQztJQVVSLE9BQU8sRUFBRSxNQUFNO0lBQ2YsVUFBVSxFQUFFLGlCQUFpQjtHQVloQzs7O0FBdkJELEFBY0UsV0FkUyxDQWNULE9BQU8sQ0FBQztFQUNOLFlBQVksRUFBRSxpQkFBaUI7RUFDL0IsYUFBYSxFQUFFLElBQUk7Q0FNcEI7O0FBSkMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQWxCdkMsQUFjRSxXQWRTLENBY1QsT0FBTyxDQUFDO0lBS0osT0FBTyxFQUFFLENBQUM7SUFDVixNQUFNLEVBQUUsQ0FBQztHQUVaOzs7QUFHSCxBQUFBLE9BQU8sQ0FBQztFQUNOLFFBQVEsRUFBRSxLQUFLO0VBQ2YsR0FBRyxFQUFFLENBQUM7RUFDTixNQUFNLEVBQUUsQ0FBQztFQUNULE9BQU8sRUFBRSxJQUFJO0VBQ2IsSUFBSSxFQUFFLENBQUM7RUFDUCxLQUFLLEVBQUUsQ0FBQztFQUNSLFVBQVUsRUFBRSxNQUFNO0NBQ25COztBQUVELEFBQUEsSUFBSSxDQUFDO0VBQ0gsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtDQUNiOztBQUVELEFBQUEsVUFBVSxDQUFDO0VBQ1QsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLFFBQVEsRUFBRSxLQUFLO0VBQ2YsT0FBTyxFQUFFLENBQUM7RUFDVixLQUFLLEVBQUUsSUFBSTtFQUNYLEdBQUcsRUFBRSxJQUFJO0VBQ1QsTUFBTSxFQUFFLE9BQU87RUFDZixPQUFPLEVBQUUsSUFBSTtDQUNkOztBQ25GRCx1QkFBdUI7QUFDdkIsa0ZBQWtGO0FBQ2xGLGlFQUFpRTtBQUNqRSxrRkFBa0Y7QUFDbEYsQUFBQSxTQUFTLENBQUM7RUFDUixRQUFRLEVBQUUsUUFBUTtFQUNsQixVQUFVLEVBQUUsTUFBTTtFQUNsQixVQUFVLEVBQUUsSUFBSTtDQUtqQjs7QUFIQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBTHJDLEFBQUEsU0FBUyxDQUFDO0lBTU4sVUFBVSxFQUFFLEdBQUc7R0FFbEI7OztBQUVELEFBQUEsU0FBUyxDQUFDO0VBQ1IsUUFBUSxFQUFFLFFBQVE7RUFDaEIsR0FBRyxFQUFFLENBQUM7RUFDTixJQUFJLEVBQUUsR0FBRztFQUNULE9BQU8sRUFBRSxDQUFDO0VBQ1YsS0FBSyxFQUFFLEdBQUc7RUFDVixhQUFhLEVBQUUsSUFBSTtDQUV0Qjs7QUFFRCxBQUFBLFFBQVEsQ0FBQztFQUNQLEtBQUssRUFBRSxHQUFHO0VBQ1YsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLENBQUM7Q0FDWDs7QUFFRCxBQUFBLFNBQVMsQ0FBQztFQUNSLEtBQUssRUFBRSxLQUFLO0VBQ1osTUFBTSxFQUFFLEtBQUs7RUFDYixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsS0FBSztFQUNWLE9BQU8sRUFBRSxDQUFDO0VBQ1YsSUFBSSxFQUFFLElBQUk7RUFDVixPQUFPLEVBQUUsS0FBSztDQXNCZjs7QUE3QkQsQUFTRSxTQVRPLEFBU1AsTUFBTyxDQUFDO0VBQ1IsS0FBSyxFQUFFLElBQUk7Q0FDVjs7QUFFRCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0VBYnRDLEFBQUEsU0FBUyxDQUFDO0lBY04sS0FBSyxFQUFFLEtBQUs7SUFDWixNQUFNLEVBQUUsS0FBSztJQUNiLEdBQUcsRUFBRSxLQUFLO0dBYWI7OztBQVhDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFsQnJDLEFBQUEsU0FBUyxDQUFDO0lBbUJOLEdBQUcsRUFBRSxJQUFJO0lBQ1QsSUFBSSxFQUFFLElBQUk7R0FTYjs7O0FBUEMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQXRCckMsQUFBQSxTQUFTLENBQUM7SUF1Qk4sUUFBUSxFQUFFLFFBQVE7SUFDbEIsT0FBTyxFQUFFLFlBQVk7SUFDckIsVUFBVSxFQUFFLE1BQU07SUFDbEIsR0FBRyxFQUFFLElBQUk7SUFDVCxJQUFJLEVBQUUsQ0FBQztHQUVWOzs7QUFFRCxBQUFBLGFBQWEsQ0FBQztFQUNaLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxDQUFDO0VBQ04sSUFBSSxFQUFFLEdBQUc7RUFDVCxLQUFLLEVBQUUsR0FBRztFQUNWLE1BQU0sRUFBRSxLQUFLO0NBVWQ7O0FBVEMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtFQU50QyxBQUFBLGFBQWEsQ0FBQztJQU9WLE1BQU0sRUFBRSxLQUFLO0dBUWhCOzs7QUFOQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBVHJDLEFBQUEsYUFBYSxDQUFDO0lBVVYsTUFBTSxFQUFFLEtBQUs7R0FLaEI7OztBQUhDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUFackMsQUFBQSxhQUFhLENBQUM7SUFhVixNQUFNLEVBQUUsSUFBSTtHQUVmOzs7QUFFRCxBQUFjLGFBQUQsQ0FBQyxHQUFHLENBQUM7RUFDaEIsYUFBYSxFQUFFLElBQUk7RUFDbkIsT0FBTyxFQUFFLEdBQUc7RUFDWixnQkFBZ0IsRUFBRSwwQkFBMEI7RUFDNUMsaUJBQWlCLEVBQUUsTUFBTTtFQUN6QixtQkFBbUIsRUFBRSxHQUFHO0VBQ3hCLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixpQkFBaUIsRUFBRSx3Q0FBd0M7RUFDM0QsU0FBUyxFQUFFLHdDQUF3QztDQUNwRDs7QUFDRCxrQkFBa0IsQ0FBbEIsU0FBa0I7RUFDaEIsQUFBQSxFQUFFO0lBQ0EsbUJBQW1CLEVBQUUsVUFBVTs7RUFHakMsQUFBQSxHQUFHO0lBQ0QsbUJBQW1CLEVBQUUsT0FBTzs7RUFHOUIsQUFBQSxHQUFHO0lBQ0QsbUJBQW1CLEVBQUUsV0FBVzs7RUFHbEMsQUFBQSxHQUFHO0lBQ0QsbUJBQW1CLEVBQUUsUUFBUTs7RUFHL0IsQUFBQSxHQUFHO0lBQ0QsbUJBQW1CLEVBQUUsWUFBWTs7RUFHbkMsQUFBQSxJQUFJO0lBQ0YsbUJBQW1CLEVBQUUsV0FBVzs7OztBQUdwQyxVQUFVLENBQVYsU0FBVTtFQUNSLEFBQUEsRUFBRTtJQUNBLG1CQUFtQixFQUFFLFVBQVU7O0VBR2pDLEFBQUEsR0FBRztJQUNELG1CQUFtQixFQUFFLE9BQU87O0VBRzlCLEFBQUEsR0FBRztJQUNELG1CQUFtQixFQUFFLFdBQVc7O0VBR2xDLEFBQUEsR0FBRztJQUNELG1CQUFtQixFQUFFLFFBQVE7O0VBRy9CLEFBQUEsR0FBRztJQUNELG1CQUFtQixFQUFFLFlBQVk7O0VBR25DLEFBQUEsSUFBSTtJQUNGLG1CQUFtQixFQUFFLFdBQVciCn0= */