@charset "UTF-8";
/*!
 * Bootstrap v3.3.7 (http://getbootstrap.com)
 * Copyright 2011-2016 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

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

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

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

[hidden],
template {
  display: none;
}

a {
  background-color: transparent;
}

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

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

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

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

small {
  font-size: 80%;
}

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

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

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

figure {
  margin: 1em 40px;
}

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

pre {
  overflow: auto;
}

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

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

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

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

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

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

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

input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}

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

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

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

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

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

.container:after {
  clear: both;
}

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

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

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

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

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

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

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

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

.row:after {
  clear: both;
}

.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12, .col-xs-13, .col-sm-13, .col-md-13, .col-lg-13, .col-xs-14, .col-sm-14, .col-md-14, .col-lg-14, .col-xs-15, .col-sm-15, .col-md-15, .col-lg-15, .col-xs-16, .col-sm-16, .col-md-16, .col-lg-16, .col-xs-17, .col-sm-17, .col-md-17, .col-lg-17, .col-xs-18, .col-sm-18, .col-md-18, .col-lg-18, .col-xs-19, .col-sm-19, .col-md-19, .col-lg-19, .col-xs-20, .col-sm-20, .col-md-20, .col-lg-20, .col-xs-21, .col-sm-21, .col-md-21, .col-lg-21, .col-xs-22, .col-sm-22, .col-md-22, .col-lg-22, .col-xs-23, .col-sm-23, .col-md-23, .col-lg-23, .col-xs-24, .col-sm-24, .col-md-24, .col-lg-24 {
  position: relative;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-13, .col-xs-14, .col-xs-15, .col-xs-16, .col-xs-17, .col-xs-18, .col-xs-19, .col-xs-20, .col-xs-21, .col-xs-22, .col-xs-23, .col-xs-24 {
  float: left;
}

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

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

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

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

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

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

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

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

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

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

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

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

.col-xs-13 {
  width: 54.16667%;
}

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

.col-xs-15 {
  width: 62.5%;
}

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

.col-xs-17 {
  width: 70.83333%;
}

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

.col-xs-19 {
  width: 79.16667%;
}

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

.col-xs-21 {
  width: 87.5%;
}

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

.col-xs-23 {
  width: 95.83333%;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.col-xs-pull-13 {
  right: 54.16667%;
}

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

.col-xs-pull-15 {
  right: 62.5%;
}

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

.col-xs-pull-17 {
  right: 70.83333%;
}

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

.col-xs-pull-19 {
  right: 79.16667%;
}

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

.col-xs-pull-21 {
  right: 87.5%;
}

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

.col-xs-pull-23 {
  right: 95.83333%;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.col-xs-push-13 {
  left: 54.16667%;
}

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

.col-xs-push-15 {
  left: 62.5%;
}

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

.col-xs-push-17 {
  left: 70.83333%;
}

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

.col-xs-push-19 {
  left: 79.16667%;
}

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

.col-xs-push-21 {
  left: 87.5%;
}

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

.col-xs-push-23 {
  left: 95.83333%;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 768px) {
  .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-13, .col-sm-14, .col-sm-15, .col-sm-16, .col-sm-17, .col-sm-18, .col-sm-19, .col-sm-20, .col-sm-21, .col-sm-22, .col-sm-23, .col-sm-24 {
    float: left;
  }
  .col-sm-1 {
    width: 4.16667%;
  }
  .col-sm-2 {
    width: 8.33333%;
  }
  .col-sm-3 {
    width: 12.5%;
  }
  .col-sm-4 {
    width: 16.66667%;
  }
  .col-sm-5 {
    width: 20.83333%;
  }
  .col-sm-6 {
    width: 25%;
  }
  .col-sm-7 {
    width: 29.16667%;
  }
  .col-sm-8 {
    width: 33.33333%;
  }
  .col-sm-9 {
    width: 37.5%;
  }
  .col-sm-10 {
    width: 41.66667%;
  }
  .col-sm-11 {
    width: 45.83333%;
  }
  .col-sm-12 {
    width: 50%;
  }
  .col-sm-13 {
    width: 54.16667%;
  }
  .col-sm-14 {
    width: 58.33333%;
  }
  .col-sm-15 {
    width: 62.5%;
  }
  .col-sm-16 {
    width: 66.66667%;
  }
  .col-sm-17 {
    width: 70.83333%;
  }
  .col-sm-18 {
    width: 75%;
  }
  .col-sm-19 {
    width: 79.16667%;
  }
  .col-sm-20 {
    width: 83.33333%;
  }
  .col-sm-21 {
    width: 87.5%;
  }
  .col-sm-22 {
    width: 91.66667%;
  }
  .col-sm-23 {
    width: 95.83333%;
  }
  .col-sm-24 {
    width: 100%;
  }
  .col-sm-pull-0 {
    right: auto;
  }
  .col-sm-pull-1 {
    right: 4.16667%;
  }
  .col-sm-pull-2 {
    right: 8.33333%;
  }
  .col-sm-pull-3 {
    right: 12.5%;
  }
  .col-sm-pull-4 {
    right: 16.66667%;
  }
  .col-sm-pull-5 {
    right: 20.83333%;
  }
  .col-sm-pull-6 {
    right: 25%;
  }
  .col-sm-pull-7 {
    right: 29.16667%;
  }
  .col-sm-pull-8 {
    right: 33.33333%;
  }
  .col-sm-pull-9 {
    right: 37.5%;
  }
  .col-sm-pull-10 {
    right: 41.66667%;
  }
  .col-sm-pull-11 {
    right: 45.83333%;
  }
  .col-sm-pull-12 {
    right: 50%;
  }
  .col-sm-pull-13 {
    right: 54.16667%;
  }
  .col-sm-pull-14 {
    right: 58.33333%;
  }
  .col-sm-pull-15 {
    right: 62.5%;
  }
  .col-sm-pull-16 {
    right: 66.66667%;
  }
  .col-sm-pull-17 {
    right: 70.83333%;
  }
  .col-sm-pull-18 {
    right: 75%;
  }
  .col-sm-pull-19 {
    right: 79.16667%;
  }
  .col-sm-pull-20 {
    right: 83.33333%;
  }
  .col-sm-pull-21 {
    right: 87.5%;
  }
  .col-sm-pull-22 {
    right: 91.66667%;
  }
  .col-sm-pull-23 {
    right: 95.83333%;
  }
  .col-sm-pull-24 {
    right: 100%;
  }
  .col-sm-push-0 {
    left: auto;
  }
  .col-sm-push-1 {
    left: 4.16667%;
  }
  .col-sm-push-2 {
    left: 8.33333%;
  }
  .col-sm-push-3 {
    left: 12.5%;
  }
  .col-sm-push-4 {
    left: 16.66667%;
  }
  .col-sm-push-5 {
    left: 20.83333%;
  }
  .col-sm-push-6 {
    left: 25%;
  }
  .col-sm-push-7 {
    left: 29.16667%;
  }
  .col-sm-push-8 {
    left: 33.33333%;
  }
  .col-sm-push-9 {
    left: 37.5%;
  }
  .col-sm-push-10 {
    left: 41.66667%;
  }
  .col-sm-push-11 {
    left: 45.83333%;
  }
  .col-sm-push-12 {
    left: 50%;
  }
  .col-sm-push-13 {
    left: 54.16667%;
  }
  .col-sm-push-14 {
    left: 58.33333%;
  }
  .col-sm-push-15 {
    left: 62.5%;
  }
  .col-sm-push-16 {
    left: 66.66667%;
  }
  .col-sm-push-17 {
    left: 70.83333%;
  }
  .col-sm-push-18 {
    left: 75%;
  }
  .col-sm-push-19 {
    left: 79.16667%;
  }
  .col-sm-push-20 {
    left: 83.33333%;
  }
  .col-sm-push-21 {
    left: 87.5%;
  }
  .col-sm-push-22 {
    left: 91.66667%;
  }
  .col-sm-push-23 {
    left: 95.83333%;
  }
  .col-sm-push-24 {
    left: 100%;
  }
  .col-sm-offset-0 {
    margin-left: 0%;
  }
  .col-sm-offset-1 {
    margin-left: 4.16667%;
  }
  .col-sm-offset-2 {
    margin-left: 8.33333%;
  }
  .col-sm-offset-3 {
    margin-left: 12.5%;
  }
  .col-sm-offset-4 {
    margin-left: 16.66667%;
  }
  .col-sm-offset-5 {
    margin-left: 20.83333%;
  }
  .col-sm-offset-6 {
    margin-left: 25%;
  }
  .col-sm-offset-7 {
    margin-left: 29.16667%;
  }
  .col-sm-offset-8 {
    margin-left: 33.33333%;
  }
  .col-sm-offset-9 {
    margin-left: 37.5%;
  }
  .col-sm-offset-10 {
    margin-left: 41.66667%;
  }
  .col-sm-offset-11 {
    margin-left: 45.83333%;
  }
  .col-sm-offset-12 {
    margin-left: 50%;
  }
  .col-sm-offset-13 {
    margin-left: 54.16667%;
  }
  .col-sm-offset-14 {
    margin-left: 58.33333%;
  }
  .col-sm-offset-15 {
    margin-left: 62.5%;
  }
  .col-sm-offset-16 {
    margin-left: 66.66667%;
  }
  .col-sm-offset-17 {
    margin-left: 70.83333%;
  }
  .col-sm-offset-18 {
    margin-left: 75%;
  }
  .col-sm-offset-19 {
    margin-left: 79.16667%;
  }
  .col-sm-offset-20 {
    margin-left: 83.33333%;
  }
  .col-sm-offset-21 {
    margin-left: 87.5%;
  }
  .col-sm-offset-22 {
    margin-left: 91.66667%;
  }
  .col-sm-offset-23 {
    margin-left: 95.83333%;
  }
  .col-sm-offset-24 {
    margin-left: 100%;
  }
}

@media (min-width: 992px) {
  .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md-13, .col-md-14, .col-md-15, .col-md-16, .col-md-17, .col-md-18, .col-md-19, .col-md-20, .col-md-21, .col-md-22, .col-md-23, .col-md-24 {
    float: left;
  }
  .col-md-1 {
    width: 4.16667%;
  }
  .col-md-2 {
    width: 8.33333%;
  }
  .col-md-3 {
    width: 12.5%;
  }
  .col-md-4 {
    width: 16.66667%;
  }
  .col-md-5 {
    width: 20.83333%;
  }
  .col-md-6 {
    width: 25%;
  }
  .col-md-7 {
    width: 29.16667%;
  }
  .col-md-8 {
    width: 33.33333%;
  }
  .col-md-9 {
    width: 37.5%;
  }
  .col-md-10 {
    width: 41.66667%;
  }
  .col-md-11 {
    width: 45.83333%;
  }
  .col-md-12 {
    width: 50%;
  }
  .col-md-13 {
    width: 54.16667%;
  }
  .col-md-14 {
    width: 58.33333%;
  }
  .col-md-15 {
    width: 62.5%;
  }
  .col-md-16 {
    width: 66.66667%;
  }
  .col-md-17 {
    width: 70.83333%;
  }
  .col-md-18 {
    width: 75%;
  }
  .col-md-19 {
    width: 79.16667%;
  }
  .col-md-20 {
    width: 83.33333%;
  }
  .col-md-21 {
    width: 87.5%;
  }
  .col-md-22 {
    width: 91.66667%;
  }
  .col-md-23 {
    width: 95.83333%;
  }
  .col-md-24 {
    width: 100%;
  }
  .col-md-pull-0 {
    right: auto;
  }
  .col-md-pull-1 {
    right: 4.16667%;
  }
  .col-md-pull-2 {
    right: 8.33333%;
  }
  .col-md-pull-3 {
    right: 12.5%;
  }
  .col-md-pull-4 {
    right: 16.66667%;
  }
  .col-md-pull-5 {
    right: 20.83333%;
  }
  .col-md-pull-6 {
    right: 25%;
  }
  .col-md-pull-7 {
    right: 29.16667%;
  }
  .col-md-pull-8 {
    right: 33.33333%;
  }
  .col-md-pull-9 {
    right: 37.5%;
  }
  .col-md-pull-10 {
    right: 41.66667%;
  }
  .col-md-pull-11 {
    right: 45.83333%;
  }
  .col-md-pull-12 {
    right: 50%;
  }
  .col-md-pull-13 {
    right: 54.16667%;
  }
  .col-md-pull-14 {
    right: 58.33333%;
  }
  .col-md-pull-15 {
    right: 62.5%;
  }
  .col-md-pull-16 {
    right: 66.66667%;
  }
  .col-md-pull-17 {
    right: 70.83333%;
  }
  .col-md-pull-18 {
    right: 75%;
  }
  .col-md-pull-19 {
    right: 79.16667%;
  }
  .col-md-pull-20 {
    right: 83.33333%;
  }
  .col-md-pull-21 {
    right: 87.5%;
  }
  .col-md-pull-22 {
    right: 91.66667%;
  }
  .col-md-pull-23 {
    right: 95.83333%;
  }
  .col-md-pull-24 {
    right: 100%;
  }
  .col-md-push-0 {
    left: auto;
  }
  .col-md-push-1 {
    left: 4.16667%;
  }
  .col-md-push-2 {
    left: 8.33333%;
  }
  .col-md-push-3 {
    left: 12.5%;
  }
  .col-md-push-4 {
    left: 16.66667%;
  }
  .col-md-push-5 {
    left: 20.83333%;
  }
  .col-md-push-6 {
    left: 25%;
  }
  .col-md-push-7 {
    left: 29.16667%;
  }
  .col-md-push-8 {
    left: 33.33333%;
  }
  .col-md-push-9 {
    left: 37.5%;
  }
  .col-md-push-10 {
    left: 41.66667%;
  }
  .col-md-push-11 {
    left: 45.83333%;
  }
  .col-md-push-12 {
    left: 50%;
  }
  .col-md-push-13 {
    left: 54.16667%;
  }
  .col-md-push-14 {
    left: 58.33333%;
  }
  .col-md-push-15 {
    left: 62.5%;
  }
  .col-md-push-16 {
    left: 66.66667%;
  }
  .col-md-push-17 {
    left: 70.83333%;
  }
  .col-md-push-18 {
    left: 75%;
  }
  .col-md-push-19 {
    left: 79.16667%;
  }
  .col-md-push-20 {
    left: 83.33333%;
  }
  .col-md-push-21 {
    left: 87.5%;
  }
  .col-md-push-22 {
    left: 91.66667%;
  }
  .col-md-push-23 {
    left: 95.83333%;
  }
  .col-md-push-24 {
    left: 100%;
  }
  .col-md-offset-0 {
    margin-left: 0%;
  }
  .col-md-offset-1 {
    margin-left: 4.16667%;
  }
  .col-md-offset-2 {
    margin-left: 8.33333%;
  }
  .col-md-offset-3 {
    margin-left: 12.5%;
  }
  .col-md-offset-4 {
    margin-left: 16.66667%;
  }
  .col-md-offset-5 {
    margin-left: 20.83333%;
  }
  .col-md-offset-6 {
    margin-left: 25%;
  }
  .col-md-offset-7 {
    margin-left: 29.16667%;
  }
  .col-md-offset-8 {
    margin-left: 33.33333%;
  }
  .col-md-offset-9 {
    margin-left: 37.5%;
  }
  .col-md-offset-10 {
    margin-left: 41.66667%;
  }
  .col-md-offset-11 {
    margin-left: 45.83333%;
  }
  .col-md-offset-12 {
    margin-left: 50%;
  }
  .col-md-offset-13 {
    margin-left: 54.16667%;
  }
  .col-md-offset-14 {
    margin-left: 58.33333%;
  }
  .col-md-offset-15 {
    margin-left: 62.5%;
  }
  .col-md-offset-16 {
    margin-left: 66.66667%;
  }
  .col-md-offset-17 {
    margin-left: 70.83333%;
  }
  .col-md-offset-18 {
    margin-left: 75%;
  }
  .col-md-offset-19 {
    margin-left: 79.16667%;
  }
  .col-md-offset-20 {
    margin-left: 83.33333%;
  }
  .col-md-offset-21 {
    margin-left: 87.5%;
  }
  .col-md-offset-22 {
    margin-left: 91.66667%;
  }
  .col-md-offset-23 {
    margin-left: 95.83333%;
  }
  .col-md-offset-24 {
    margin-left: 100%;
  }
}

@media (min-width: 1440px) {
  .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-13, .col-lg-14, .col-lg-15, .col-lg-16, .col-lg-17, .col-lg-18, .col-lg-19, .col-lg-20, .col-lg-21, .col-lg-22, .col-lg-23, .col-lg-24 {
    float: left;
  }
  .col-lg-1 {
    width: 4.16667%;
  }
  .col-lg-2 {
    width: 8.33333%;
  }
  .col-lg-3 {
    width: 12.5%;
  }
  .col-lg-4 {
    width: 16.66667%;
  }
  .col-lg-5 {
    width: 20.83333%;
  }
  .col-lg-6 {
    width: 25%;
  }
  .col-lg-7 {
    width: 29.16667%;
  }
  .col-lg-8 {
    width: 33.33333%;
  }
  .col-lg-9 {
    width: 37.5%;
  }
  .col-lg-10 {
    width: 41.66667%;
  }
  .col-lg-11 {
    width: 45.83333%;
  }
  .col-lg-12 {
    width: 50%;
  }
  .col-lg-13 {
    width: 54.16667%;
  }
  .col-lg-14 {
    width: 58.33333%;
  }
  .col-lg-15 {
    width: 62.5%;
  }
  .col-lg-16 {
    width: 66.66667%;
  }
  .col-lg-17 {
    width: 70.83333%;
  }
  .col-lg-18 {
    width: 75%;
  }
  .col-lg-19 {
    width: 79.16667%;
  }
  .col-lg-20 {
    width: 83.33333%;
  }
  .col-lg-21 {
    width: 87.5%;
  }
  .col-lg-22 {
    width: 91.66667%;
  }
  .col-lg-23 {
    width: 95.83333%;
  }
  .col-lg-24 {
    width: 100%;
  }
  .col-lg-pull-0 {
    right: auto;
  }
  .col-lg-pull-1 {
    right: 4.16667%;
  }
  .col-lg-pull-2 {
    right: 8.33333%;
  }
  .col-lg-pull-3 {
    right: 12.5%;
  }
  .col-lg-pull-4 {
    right: 16.66667%;
  }
  .col-lg-pull-5 {
    right: 20.83333%;
  }
  .col-lg-pull-6 {
    right: 25%;
  }
  .col-lg-pull-7 {
    right: 29.16667%;
  }
  .col-lg-pull-8 {
    right: 33.33333%;
  }
  .col-lg-pull-9 {
    right: 37.5%;
  }
  .col-lg-pull-10 {
    right: 41.66667%;
  }
  .col-lg-pull-11 {
    right: 45.83333%;
  }
  .col-lg-pull-12 {
    right: 50%;
  }
  .col-lg-pull-13 {
    right: 54.16667%;
  }
  .col-lg-pull-14 {
    right: 58.33333%;
  }
  .col-lg-pull-15 {
    right: 62.5%;
  }
  .col-lg-pull-16 {
    right: 66.66667%;
  }
  .col-lg-pull-17 {
    right: 70.83333%;
  }
  .col-lg-pull-18 {
    right: 75%;
  }
  .col-lg-pull-19 {
    right: 79.16667%;
  }
  .col-lg-pull-20 {
    right: 83.33333%;
  }
  .col-lg-pull-21 {
    right: 87.5%;
  }
  .col-lg-pull-22 {
    right: 91.66667%;
  }
  .col-lg-pull-23 {
    right: 95.83333%;
  }
  .col-lg-pull-24 {
    right: 100%;
  }
  .col-lg-push-0 {
    left: auto;
  }
  .col-lg-push-1 {
    left: 4.16667%;
  }
  .col-lg-push-2 {
    left: 8.33333%;
  }
  .col-lg-push-3 {
    left: 12.5%;
  }
  .col-lg-push-4 {
    left: 16.66667%;
  }
  .col-lg-push-5 {
    left: 20.83333%;
  }
  .col-lg-push-6 {
    left: 25%;
  }
  .col-lg-push-7 {
    left: 29.16667%;
  }
  .col-lg-push-8 {
    left: 33.33333%;
  }
  .col-lg-push-9 {
    left: 37.5%;
  }
  .col-lg-push-10 {
    left: 41.66667%;
  }
  .col-lg-push-11 {
    left: 45.83333%;
  }
  .col-lg-push-12 {
    left: 50%;
  }
  .col-lg-push-13 {
    left: 54.16667%;
  }
  .col-lg-push-14 {
    left: 58.33333%;
  }
  .col-lg-push-15 {
    left: 62.5%;
  }
  .col-lg-push-16 {
    left: 66.66667%;
  }
  .col-lg-push-17 {
    left: 70.83333%;
  }
  .col-lg-push-18 {
    left: 75%;
  }
  .col-lg-push-19 {
    left: 79.16667%;
  }
  .col-lg-push-20 {
    left: 83.33333%;
  }
  .col-lg-push-21 {
    left: 87.5%;
  }
  .col-lg-push-22 {
    left: 91.66667%;
  }
  .col-lg-push-23 {
    left: 95.83333%;
  }
  .col-lg-push-24 {
    left: 100%;
  }
  .col-lg-offset-0 {
    margin-left: 0%;
  }
  .col-lg-offset-1 {
    margin-left: 4.16667%;
  }
  .col-lg-offset-2 {
    margin-left: 8.33333%;
  }
  .col-lg-offset-3 {
    margin-left: 12.5%;
  }
  .col-lg-offset-4 {
    margin-left: 16.66667%;
  }
  .col-lg-offset-5 {
    margin-left: 20.83333%;
  }
  .col-lg-offset-6 {
    margin-left: 25%;
  }
  .col-lg-offset-7 {
    margin-left: 29.16667%;
  }
  .col-lg-offset-8 {
    margin-left: 33.33333%;
  }
  .col-lg-offset-9 {
    margin-left: 37.5%;
  }
  .col-lg-offset-10 {
    margin-left: 41.66667%;
  }
  .col-lg-offset-11 {
    margin-left: 45.83333%;
  }
  .col-lg-offset-12 {
    margin-left: 50%;
  }
  .col-lg-offset-13 {
    margin-left: 54.16667%;
  }
  .col-lg-offset-14 {
    margin-left: 58.33333%;
  }
  .col-lg-offset-15 {
    margin-left: 62.5%;
  }
  .col-lg-offset-16 {
    margin-left: 66.66667%;
  }
  .col-lg-offset-17 {
    margin-left: 70.83333%;
  }
  .col-lg-offset-18 {
    margin-left: 75%;
  }
  .col-lg-offset-19 {
    margin-left: 79.16667%;
  }
  .col-lg-offset-20 {
    margin-left: 83.33333%;
  }
  .col-lg-offset-21 {
    margin-left: 87.5%;
  }
  .col-lg-offset-22 {
    margin-left: 91.66667%;
  }
  .col-lg-offset-23 {
    margin-left: 95.83333%;
  }
  .col-lg-offset-24 {
    margin-left: 100%;
  }
}

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

legend {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: 20px;
  font-size: 21px;
  line-height: inherit;
  color: #333333;
  border: 0;
  border-bottom: 1px solid #e5e5e5;
}

label {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 5px;
  font-weight: bold;
}

input[type="search"] {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

input[type="radio"],
input[type="checkbox"] {
  margin: 4px 0 0;
  margin-top: 1px \9;
  line-height: normal;
}

input[type="file"] {
  display: block;
}

input[type="range"] {
  display: block;
  width: 100%;
}

select[multiple],
select[size] {
  height: auto;
}

input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

output {
  display: block;
  padding-top: 7px;
  font-size: 14px;
  line-height: 1.42857;
  color: #555555;
}

.form-control {
  display: block;
  width: 100%;
  height: 34px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857;
  color: #555555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}

.form-control:focus {
  border-color: #66afe9;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
}

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

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

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

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

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

.form-control[disabled],
fieldset[disabled] .form-control {
  cursor: not-allowed;
}

textarea.form-control {
  height: auto;
}

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

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  input[type="date"].form-control,
  input[type="time"].form-control,
  input[type="datetime-local"].form-control,
  input[type="month"].form-control {
    line-height: 34px;
  }
  input[type="date"].input-sm, .input-group-sm > input[type="date"].form-control,
  .input-group-sm > input[type="date"].input-group-addon,
  .input-group-sm > .input-group-btn > input[type="date"].btn,
  .input-group-sm input[type="date"],
  input[type="time"].input-sm,
  .input-group-sm > input[type="time"].form-control,
  .input-group-sm > input[type="time"].input-group-addon,
  .input-group-sm > .input-group-btn > input[type="time"].btn,
  .input-group-sm
  input[type="time"],
  input[type="datetime-local"].input-sm,
  .input-group-sm > input[type="datetime-local"].form-control,
  .input-group-sm > input[type="datetime-local"].input-group-addon,
  .input-group-sm > .input-group-btn > input[type="datetime-local"].btn,
  .input-group-sm
  input[type="datetime-local"],
  input[type="month"].input-sm,
  .input-group-sm > input[type="month"].form-control,
  .input-group-sm > input[type="month"].input-group-addon,
  .input-group-sm > .input-group-btn > input[type="month"].btn,
  .input-group-sm
  input[type="month"] {
    line-height: 30px;
  }
  input[type="date"].input-lg, .input-group-lg > input[type="date"].form-control,
  .input-group-lg > input[type="date"].input-group-addon,
  .input-group-lg > .input-group-btn > input[type="date"].btn,
  .input-group-lg input[type="date"],
  input[type="time"].input-lg,
  .input-group-lg > input[type="time"].form-control,
  .input-group-lg > input[type="time"].input-group-addon,
  .input-group-lg > .input-group-btn > input[type="time"].btn,
  .input-group-lg
  input[type="time"],
  input[type="datetime-local"].input-lg,
  .input-group-lg > input[type="datetime-local"].form-control,
  .input-group-lg > input[type="datetime-local"].input-group-addon,
  .input-group-lg > .input-group-btn > input[type="datetime-local"].btn,
  .input-group-lg
  input[type="datetime-local"],
  input[type="month"].input-lg,
  .input-group-lg > input[type="month"].form-control,
  .input-group-lg > input[type="month"].input-group-addon,
  .input-group-lg > .input-group-btn > input[type="month"].btn,
  .input-group-lg
  input[type="month"] {
    line-height: 46px;
  }
}

.form-group {
  margin-bottom: 15px;
}

.radio,
.checkbox {
  position: relative;
  display: block;
  margin-top: 10px;
  margin-bottom: 10px;
}

.radio label,
.checkbox label {
  min-height: 20px;
  padding-left: 20px;
  margin-bottom: 0;
  font-weight: normal;
  cursor: pointer;
}

.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
  position: absolute;
  margin-left: -20px;
  margin-top: 4px \9;
}

.radio + .radio,
.checkbox + .checkbox {
  margin-top: -5px;
}

.radio-inline,
.checkbox-inline {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  margin-bottom: 0;
  vertical-align: middle;
  font-weight: normal;
  cursor: pointer;
}

.radio-inline + .radio-inline,
.checkbox-inline + .checkbox-inline {
  margin-top: 0;
  margin-left: 10px;
}

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

.radio-inline.disabled,
fieldset[disabled] .radio-inline,
.checkbox-inline.disabled,
fieldset[disabled]
.checkbox-inline {
  cursor: not-allowed;
}

.radio.disabled label,
fieldset[disabled] .radio label,
.checkbox.disabled label,
fieldset[disabled]
.checkbox label {
  cursor: not-allowed;
}

.form-control-static {
  padding-top: 7px;
  padding-bottom: 7px;
  margin-bottom: 0;
  min-height: 34px;
}

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

.input-sm, .input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}

select.input-sm, .input-group-sm > select.form-control,
.input-group-sm > select.input-group-addon,
.input-group-sm > .input-group-btn > select.btn {
  height: 30px;
  line-height: 30px;
}

textarea.input-sm, .input-group-sm > textarea.form-control,
.input-group-sm > textarea.input-group-addon,
.input-group-sm > .input-group-btn > textarea.btn,
select[multiple].input-sm,
.input-group-sm > select[multiple].form-control,
.input-group-sm > select[multiple].input-group-addon,
.input-group-sm > .input-group-btn > select[multiple].btn {
  height: auto;
}

.form-group-sm .form-control {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}

.form-group-sm select.form-control {
  height: 30px;
  line-height: 30px;
}

.form-group-sm textarea.form-control,
.form-group-sm select[multiple].form-control {
  height: auto;
}

.form-group-sm .form-control-static {
  height: 30px;
  min-height: 32px;
  padding: 6px 10px;
  font-size: 12px;
  line-height: 1.5;
}

.input-lg, .input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px;
}

select.input-lg, .input-group-lg > select.form-control,
.input-group-lg > select.input-group-addon,
.input-group-lg > .input-group-btn > select.btn {
  height: 46px;
  line-height: 46px;
}

textarea.input-lg, .input-group-lg > textarea.form-control,
.input-group-lg > textarea.input-group-addon,
.input-group-lg > .input-group-btn > textarea.btn,
select[multiple].input-lg,
.input-group-lg > select[multiple].form-control,
.input-group-lg > select[multiple].input-group-addon,
.input-group-lg > .input-group-btn > select[multiple].btn {
  height: auto;
}

.form-group-lg .form-control {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px;
}

.form-group-lg select.form-control {
  height: 46px;
  line-height: 46px;
}

.form-group-lg textarea.form-control,
.form-group-lg select[multiple].form-control {
  height: auto;
}

.form-group-lg .form-control-static {
  height: 46px;
  min-height: 38px;
  padding: 11px 16px;
  font-size: 18px;
  line-height: 1.33333;
}

.has-feedback {
  position: relative;
}

.has-feedback .form-control {
  padding-right: 42.5px;
}

.form-control-feedback {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  display: block;
  width: 34px;
  height: 34px;
  line-height: 34px;
  text-align: center;
  pointer-events: none;
}

.input-lg + .form-control-feedback, .input-group-lg > .form-control + .form-control-feedback,
.input-group-lg > .input-group-addon + .form-control-feedback,
.input-group-lg > .input-group-btn > .btn + .form-control-feedback,
.input-group-lg + .form-control-feedback,
.form-group-lg .form-control + .form-control-feedback {
  width: 46px;
  height: 46px;
  line-height: 46px;
}

.input-sm + .form-control-feedback, .input-group-sm > .form-control + .form-control-feedback,
.input-group-sm > .input-group-addon + .form-control-feedback,
.input-group-sm > .input-group-btn > .btn + .form-control-feedback,
.input-group-sm + .form-control-feedback,
.form-group-sm .form-control + .form-control-feedback {
  width: 30px;
  height: 30px;
  line-height: 30px;
}

.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline,
.has-success.radio label,
.has-success.checkbox label,
.has-success.radio-inline label,
.has-success.checkbox-inline label {
  color: #3c763d;
}

.has-success .form-control {
  border-color: #3c763d;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}

.has-success .form-control:focus {
  border-color: #2b542c;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
}

.has-success .input-group-addon {
  color: #3c763d;
  border-color: #3c763d;
  background-color: #dff0d8;
}

.has-success .form-control-feedback {
  color: #3c763d;
}

.has-warning .help-block,
.has-warning .control-label,
.has-warning .radio,
.has-warning .checkbox,
.has-warning .radio-inline,
.has-warning .checkbox-inline,
.has-warning.radio label,
.has-warning.checkbox label,
.has-warning.radio-inline label,
.has-warning.checkbox-inline label {
  color: #8a6d3b;
}

.has-warning .form-control {
  border-color: #8a6d3b;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}

.has-warning .form-control:focus {
  border-color: #66512c;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
}

.has-warning .input-group-addon {
  color: #8a6d3b;
  border-color: #8a6d3b;
  background-color: #fcf8e3;
}

.has-warning .form-control-feedback {
  color: #8a6d3b;
}

.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline,
.has-error.radio label,
.has-error.checkbox label,
.has-error.radio-inline label,
.has-error.checkbox-inline label {
  color: #a94442;
}

.has-error .form-control {
  border-color: #a94442;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}

.has-error .form-control:focus {
  border-color: #843534;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
}

.has-error .input-group-addon {
  color: #a94442;
  border-color: #a94442;
  background-color: #f2dede;
}

.has-error .form-control-feedback {
  color: #a94442;
}

.has-feedback label ~ .form-control-feedback {
  top: 25px;
}

.has-feedback label.sr-only ~ .form-control-feedback {
  top: 0;
}

.help-block {
  display: block;
  margin-top: 5px;
  margin-bottom: 10px;
  color: #737373;
}

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

.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 7px;
}

.form-horizontal .radio,
.form-horizontal .checkbox {
  min-height: 27px;
}

.form-horizontal .form-group {
  margin-left: -15px;
  margin-right: -15px;
}

.form-horizontal .form-group:before, .form-horizontal .form-group:after {
  content: " ";
  display: table;
}

.form-horizontal .form-group:after {
  clear: both;
}

@media (min-width: 768px) {
  .form-horizontal .control-label {
    text-align: right;
    margin-bottom: 0;
    padding-top: 7px;
  }
}

.form-horizontal .has-feedback .form-control-feedback {
  right: 15px;
}

@media (min-width: 768px) {
  .form-horizontal .form-group-lg .control-label {
    padding-top: 11px;
    font-size: 18px;
  }
}

@media (min-width: 768px) {
  .form-horizontal .form-group-sm .control-label {
    padding-top: 6px;
    font-size: 12px;
  }
}

.btn {
  display: inline-block;
  margin-bottom: 0;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
  touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  white-space: nowrap;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857;
  border-radius: 4px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

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

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

.btn:active, .btn.active {
  outline: 0;
  background-image: none;
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn.disabled, .btn[disabled],
fieldset[disabled] .btn {
  cursor: not-allowed;
  opacity: 0.65;
  filter: alpha(opacity=65);
  -webkit-box-shadow: none;
  box-shadow: none;
}

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

.btn-default {
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}

.btn-default:focus, .btn-default.focus {
  color: #333;
  background-color: #e6e6e6;
  border-color: #8c8c8c;
}

.btn-default:hover {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}

.btn-default:active, .btn-default.active,
.open > .btn-default.dropdown-toggle {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}

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

.btn-default:active, .btn-default.active,
.open > .btn-default.dropdown-toggle {
  background-image: none;
}

.btn-default.disabled:hover, .btn-default.disabled:focus, .btn-default.disabled.focus, .btn-default[disabled]:hover, .btn-default[disabled]:focus, .btn-default[disabled].focus,
fieldset[disabled] .btn-default:hover,
fieldset[disabled] .btn-default:focus,
fieldset[disabled] .btn-default.focus {
  background-color: #fff;
  border-color: #ccc;
}

.btn-default .badge {
  color: #fff;
  background-color: #333;
}

.btn-primary {
  color: #fff;
  background-color: #337ab7;
  border-color: #2e6da4;
}

.btn-primary:focus, .btn-primary.focus {
  color: #fff;
  background-color: #286090;
  border-color: #122b40;
}

.btn-primary:hover {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}

.btn-primary:active, .btn-primary.active,
.open > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}

.btn-primary:active:hover, .btn-primary:active:focus, .btn-primary:active.focus, .btn-primary.active:hover, .btn-primary.active:focus, .btn-primary.active.focus,
.open > .btn-primary.dropdown-toggle:hover,
.open > .btn-primary.dropdown-toggle:focus,
.open > .btn-primary.dropdown-toggle.focus {
  color: #fff;
  background-color: #204d74;
  border-color: #122b40;
}

.btn-primary:active, .btn-primary.active,
.open > .btn-primary.dropdown-toggle {
  background-image: none;
}

.btn-primary.disabled:hover, .btn-primary.disabled:focus, .btn-primary.disabled.focus, .btn-primary[disabled]:hover, .btn-primary[disabled]:focus, .btn-primary[disabled].focus,
fieldset[disabled] .btn-primary:hover,
fieldset[disabled] .btn-primary:focus,
fieldset[disabled] .btn-primary.focus {
  background-color: #337ab7;
  border-color: #2e6da4;
}

.btn-primary .badge {
  color: #337ab7;
  background-color: #fff;
}

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

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

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

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

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

.btn-success:active, .btn-success.active,
.open > .btn-success.dropdown-toggle {
  background-image: none;
}

.btn-success.disabled:hover, .btn-success.disabled:focus, .btn-success.disabled.focus, .btn-success[disabled]:hover, .btn-success[disabled]:focus, .btn-success[disabled].focus,
fieldset[disabled] .btn-success:hover,
fieldset[disabled] .btn-success:focus,
fieldset[disabled] .btn-success.focus {
  background-color: #5cb85c;
  border-color: #4cae4c;
}

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

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

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

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

.btn-info:active, .btn-info.active,
.open > .btn-info.dropdown-toggle {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}

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

.btn-info:active, .btn-info.active,
.open > .btn-info.dropdown-toggle {
  background-image: none;
}

.btn-info.disabled:hover, .btn-info.disabled:focus, .btn-info.disabled.focus, .btn-info[disabled]:hover, .btn-info[disabled]:focus, .btn-info[disabled].focus,
fieldset[disabled] .btn-info:hover,
fieldset[disabled] .btn-info:focus,
fieldset[disabled] .btn-info.focus {
  background-color: #5bc0de;
  border-color: #46b8da;
}

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

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

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

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

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

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

.btn-warning:active, .btn-warning.active,
.open > .btn-warning.dropdown-toggle {
  background-image: none;
}

.btn-warning.disabled:hover, .btn-warning.disabled:focus, .btn-warning.disabled.focus, .btn-warning[disabled]:hover, .btn-warning[disabled]:focus, .btn-warning[disabled].focus,
fieldset[disabled] .btn-warning:hover,
fieldset[disabled] .btn-warning:focus,
fieldset[disabled] .btn-warning.focus {
  background-color: #f0ad4e;
  border-color: #eea236;
}

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

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

.btn-danger:focus, .btn-danger.focus {
  color: #fff;
  background-color: #c9302c;
  border-color: #761c19;
}

.btn-danger:hover {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}

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

.btn-danger:active:hover, .btn-danger:active:focus, .btn-danger:active.focus, .btn-danger.active:hover, .btn-danger.active:focus, .btn-danger.active.focus,
.open > .btn-danger.dropdown-toggle:hover,
.open > .btn-danger.dropdown-toggle:focus,
.open > .btn-danger.dropdown-toggle.focus {
  color: #fff;
  background-color: #ac2925;
  border-color: #761c19;
}

.btn-danger:active, .btn-danger.active,
.open > .btn-danger.dropdown-toggle {
  background-image: none;
}

.btn-danger.disabled:hover, .btn-danger.disabled:focus, .btn-danger.disabled.focus, .btn-danger[disabled]:hover, .btn-danger[disabled]:focus, .btn-danger[disabled].focus,
fieldset[disabled] .btn-danger:hover,
fieldset[disabled] .btn-danger:focus,
fieldset[disabled] .btn-danger.focus {
  background-color: #d9534f;
  border-color: #d43f3a;
}

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

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

.btn-link, .btn-link:active, .btn-link.active, .btn-link[disabled],
fieldset[disabled] .btn-link {
  background-color: transparent;
  -webkit-box-shadow: none;
  box-shadow: none;
}

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

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

.btn-link[disabled]:hover, .btn-link[disabled]:focus,
fieldset[disabled] .btn-link:hover,
fieldset[disabled] .btn-link:focus {
  color: #777777;
  text-decoration: none;
}

.btn-lg, .btn-group-lg > .btn {
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px;
}

.btn-sm, .btn-group-sm > .btn {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}

.btn-xs, .btn-group-xs > .btn {
  padding: 1px 5px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}

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

.btn-block + .btn-block {
  margin-top: 5px;
}

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

.caret {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 2px;
  vertical-align: middle;
  border-top: 4px dashed;
  border-top: 4px solid \9;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent;
}

.dropup,
.dropdown {
  position: relative;
}

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

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 160px;
  padding: 5px 0;
  margin: 2px 0 0;
  list-style: none;
  font-size: 14px;
  text-align: left;
  background-color: #fff;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 4px;
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  background-clip: padding-box;
}

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

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

.dropdown-menu > li > a {
  display: block;
  padding: 3px 20px;
  clear: both;
  font-weight: normal;
  line-height: 1.42857;
  color: #333333;
  white-space: nowrap;
}

.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus {
  text-decoration: none;
  color: #262626;
  background-color: #f5f5f5;
}

.dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown-menu > .active > a:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  background-color: #337ab7;
}

.dropdown-menu > .disabled > a, .dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus {
  color: #777777;
}

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

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

.open > a {
  outline: 0;
}

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

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

.dropdown-header {
  display: block;
  padding: 3px 20px;
  font-size: 12px;
  line-height: 1.42857;
  color: #777777;
  white-space: nowrap;
}

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

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

.dropup .caret,
.navbar-fixed-bottom .dropdown .caret {
  border-top: 0;
  border-bottom: 4px dashed;
  border-bottom: 4px solid \9;
  content: "";
}

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

@media (min-width: 768px) {
  .navbar-right .dropdown-menu {
    right: 0;
    left: auto;
  }
  .navbar-right .dropdown-menu-left {
    left: 0;
    right: auto;
  }
}

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

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

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

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

.btn-toolbar {
  margin-left: -5px;
}

.btn-toolbar:before, .btn-toolbar:after {
  content: " ";
  display: table;
}

.btn-toolbar:after {
  clear: both;
}

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

.btn-toolbar > .btn,
.btn-toolbar > .btn-group,
.btn-toolbar > .input-group {
  margin-left: 5px;
}

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

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

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

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

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

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

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

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

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

.btn-group > .btn + .dropdown-toggle {
  padding-left: 8px;
  padding-right: 8px;
}

.btn-group > .btn-lg + .dropdown-toggle, .btn-group-lg.btn-group > .btn + .dropdown-toggle {
  padding-left: 12px;
  padding-right: 12px;
}

.btn-group.open .dropdown-toggle {
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-group.open .dropdown-toggle.btn-link {
  -webkit-box-shadow: none;
  box-shadow: none;
}

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

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

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

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

.btn-group-vertical > .btn-group:before, .btn-group-vertical > .btn-group:after {
  content: " ";
  display: table;
}

.btn-group-vertical > .btn-group:after {
  clear: both;
}

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

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

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

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

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

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

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

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

.btn-group-justified {
  display: table;
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
}

.btn-group-justified > .btn,
.btn-group-justified > .btn-group {
  float: none;
  display: table-cell;
  width: 1%;
}

.btn-group-justified > .btn-group .btn {
  width: 100%;
}

.btn-group-justified > .btn-group .dropdown-menu {
  left: auto;
}

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

.input-group {
  position: relative;
  display: table;
  border-collapse: separate;
}

.input-group[class*="col-"] {
  float: none;
  padding-left: 0;
  padding-right: 0;
}

.input-group .form-control {
  position: relative;
  z-index: 2;
  float: left;
  width: 100%;
  margin-bottom: 0;
}

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

.input-group-addon,
.input-group-btn,
.input-group .form-control {
  display: table-cell;
}

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

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

.input-group-addon {
  padding: 6px 12px;
  font-size: 14px;
  font-weight: normal;
  line-height: 1;
  color: #555555;
  text-align: center;
  background-color: #eeeeee;
  border: 1px solid #ccc;
  border-radius: 4px;
}

.input-group-addon.input-sm,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .input-group-addon.btn {
  padding: 5px 10px;
  font-size: 12px;
  border-radius: 3px;
}

.input-group-addon.input-lg,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .input-group-addon.btn {
  padding: 10px 16px;
  font-size: 18px;
  border-radius: 6px;
}

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

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

.input-group-addon:first-child {
  border-right: 0;
}

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

.input-group-addon:last-child {
  border-left: 0;
}

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

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

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

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

.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group {
  margin-right: -1px;
}

.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group {
  z-index: 2;
  margin-left: -1px;
}

.modal-open {
  overflow: hidden;
}

.modal {
  display: none;
  overflow: hidden;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1050;
  -webkit-overflow-scrolling: touch;
  outline: 0;
}

.modal.fade .modal-dialog {
  -webkit-transform: translate(0, -25%);
  -ms-transform: translate(0, -25%);
  -o-transform: translate(0, -25%);
  transform: translate(0, -25%);
  -webkit-transition: -webkit-transform 0.3s ease-out;
  -moz-transition: -moz-transform 0.3s ease-out;
  -o-transition: -o-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
}

.modal.in .modal-dialog {
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0);
}

.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}

.modal-dialog {
  position: relative;
  width: auto;
  margin: 10px;
}

.modal-content {
  position: relative;
  background-color: #fff;
  border: 1px solid #999;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  background-clip: padding-box;
  outline: 0;
}

.modal-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  background-color: #000;
}

.modal-backdrop.fade {
  opacity: 0;
  filter: alpha(opacity=0);
}

.modal-backdrop.in {
  opacity: 0.5;
  filter: alpha(opacity=50);
}

.modal-header {
  padding: 15px;
  border-bottom: 1px solid #e5e5e5;
}

.modal-header:before, .modal-header:after {
  content: " ";
  display: table;
}

.modal-header:after {
  clear: both;
}

.modal-header .close {
  margin-top: -2px;
}

.modal-title {
  margin: 0;
  line-height: 1.42857;
}

.modal-body {
  position: relative;
  padding: 15px;
}

.modal-footer {
  padding: 15px;
  text-align: right;
  border-top: 1px solid #e5e5e5;
}

.modal-footer:before, .modal-footer:after {
  content: " ";
  display: table;
}

.modal-footer:after {
  clear: both;
}

.modal-footer .btn + .btn {
  margin-left: 5px;
  margin-bottom: 0;
}

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

.modal-footer .btn-block + .btn-block {
  margin-left: 0;
}

.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}

@media (min-width: 768px) {
  .modal-dialog {
    width: 600px;
    margin: 30px auto;
  }
  .modal-content {
    -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
  }
  .modal-sm {
    width: 300px;
  }
}

@media (min-width: 992px) {
  .modal-lg {
    width: 900px;
  }
}

.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  letter-spacing: normal;
  line-break: auto;
  line-height: 1.42857;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  white-space: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  font-size: 12px;
  opacity: 0;
  filter: alpha(opacity=0);
}

.tooltip.in {
  opacity: 0.9;
  filter: alpha(opacity=90);
}

.tooltip.top {
  margin-top: -3px;
  padding: 5px 0;
}

.tooltip.right {
  margin-left: 3px;
  padding: 0 5px;
}

.tooltip.bottom {
  margin-top: 3px;
  padding: 5px 0;
}

.tooltip.left {
  margin-left: -3px;
  padding: 0 5px;
}

.tooltip-inner {
  max-width: 200px;
  padding: 3px 8px;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 4px;
}

.tooltip-arrow {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}

.tooltip.top .tooltip-arrow {
  bottom: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}

.tooltip.top-left .tooltip-arrow {
  bottom: 0;
  right: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}

.tooltip.top-right .tooltip-arrow {
  bottom: 0;
  left: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}

.tooltip.right .tooltip-arrow {
  top: 50%;
  left: 0;
  margin-top: -5px;
  border-width: 5px 5px 5px 0;
  border-right-color: #000;
}

.tooltip.left .tooltip-arrow {
  top: 50%;
  right: 0;
  margin-top: -5px;
  border-width: 5px 0 5px 5px;
  border-left-color: #000;
}

.tooltip.bottom .tooltip-arrow {
  top: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}

.tooltip.bottom-left .tooltip-arrow {
  top: 0;
  right: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}

.tooltip.bottom-right .tooltip-arrow {
  top: 0;
  left: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}

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

.clearfix:after {
  clear: both;
}

.center-block {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

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

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

.hide {
  display: none !important;
}

.show {
  display: block !important;
}

.invisible {
  visibility: hidden;
}

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.hidden {
  display: none !important;
}

.affix {
  position: fixed;
}

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

.visible-xs {
  display: none !important;
}

.visible-sm {
  display: none !important;
}

.visible-md {
  display: none !important;
}

.visible-lg {
  display: none !important;
}

.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important;
}

@media (max-width: 767px) {
  .visible-xs {
    display: block !important;
  }
  table.visible-xs {
    display: table !important;
  }
  tr.visible-xs {
    display: table-row !important;
  }
  th.visible-xs,
  td.visible-xs {
    display: table-cell !important;
  }
}

@media (max-width: 767px) {
  .visible-xs-block {
    display: block !important;
  }
}

@media (max-width: 767px) {
  .visible-xs-inline {
    display: inline !important;
  }
}

@media (max-width: 767px) {
  .visible-xs-inline-block {
    display: inline-block !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm {
    display: block !important;
  }
  table.visible-sm {
    display: table !important;
  }
  tr.visible-sm {
    display: table-row !important;
  }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-block {
    display: block !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline {
    display: inline !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline-block {
    display: inline-block !important;
  }
}

@media (min-width: 992px) and (max-width: 1439px) {
  .visible-md {
    display: block !important;
  }
  table.visible-md {
    display: table !important;
  }
  tr.visible-md {
    display: table-row !important;
  }
  th.visible-md,
  td.visible-md {
    display: table-cell !important;
  }
}

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

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

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

@media (min-width: 1440px) {
  .visible-lg {
    display: block !important;
  }
  table.visible-lg {
    display: table !important;
  }
  tr.visible-lg {
    display: table-row !important;
  }
  th.visible-lg,
  td.visible-lg {
    display: table-cell !important;
  }
}

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

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

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

@media (max-width: 767px) {
  .hidden-xs {
    display: none !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important;
  }
}

@media (min-width: 992px) and (max-width: 1439px) {
  .hidden-md {
    display: none !important;
  }
}

@media (min-width: 1440px) {
  .hidden-lg {
    display: none !important;
  }
}

.visible-print {
  display: none !important;
}

@media print {
  .visible-print {
    display: block !important;
  }
  table.visible-print {
    display: table !important;
  }
  tr.visible-print {
    display: table-row !important;
  }
  th.visible-print,
  td.visible-print {
    display: table-cell !important;
  }
}

.visible-print-block {
  display: none !important;
}

@media print {
  .visible-print-block {
    display: block !important;
  }
}

.visible-print-inline {
  display: none !important;
}

@media print {
  .visible-print-inline {
    display: inline !important;
  }
}

.visible-print-inline-block {
  display: none !important;
}

@media print {
  .visible-print-inline-block {
    display: inline-block !important;
  }
}

@media print {
  .hidden-print {
    display: none !important;
  }
}

/* ==========================================================================
   & reset
   ========================================================================== */
ul,
h1,
h2,
h3,
h4,
p {
  margin: 0;
  padding: 0;
}

h1,
h2,
h3,
h4 {
  font-weight: inherit;
}

*, *:before, *:after {
  background-repeat: no-repeat;
}

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

input,
button,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  text-transform: inherit;
}

img {
  vertical-align: middle;
}

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

button:focus,
[type="text"]:focus,
[type="password"]:focus {
  outline: 0;
}

/* ==========================================================================
   & base
   ========================================================================== */
html {
  font-size: 62.5%;
  /* 16px > 10px (base 10) */
}

@media (max-width: 1439px) {
  html {
    font-size: 56.3%;
    /* 16px > 9px (base 9) */
  }
}

body {
  font-family: "Apercu", Arial, sans-serif;
  font-size: 1.5rem;
  line-height: 1.3;
  color: #000;
  background-color: #FFF;
  position: relative;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

@media (max-width: 767px) {
  body {
    font-size: 1.77778rem;
  }
}

body:before {
  display: none;
  content: "screen-xxs";
}

@media (min-width: 480px) {
  body:before {
    content: "screen-xs";
  }
}

@media (min-width: 768px) {
  body:before {
    content: "screen-sm";
  }
}

@media (min-width: 992px) {
  body:before {
    content: "screen-md";
  }
}

@media (min-width: 1440px) {
  body:before {
    content: "screen-lg";
  }
}

body:after {
  display: none;
  content: "mobile";
}

@media (min-width: 768px) {
  body:after {
    content: "desktop";
  }
}

@media (min-width: 768px) {
  body.page-ddv {
    background-image: url(../images/background/ddv/1920x2308.jpg);
    background-size: contain;
  }
  body.page-ddv.page-ddv-light {
    background-size: cover;
  }
}

body.overflow-hidden {
  overflow: hidden;
}

ul {
  list-style: none;
}

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

a {
  text-decoration: none;
  color: inherit;
}

a:focus {
  outline: 0;
}

button {
  border: none;
  background-color: transparent;
  padding: 0;
}

button:focus {
  outline: 0;
}

p {
  margin: 1rem 0 0;
}

p:first-child {
  margin-top: 0;
}

.row.remove-gutter {
  margin-left: 0;
  margin-right: 0;
}

.row.remove-gutter > * {
  padding-left: 0;
  padding-right: 0;
}

.row.gutter-5 {
  margin-left: -5px;
  margin-right: -5px;
}

.row.gutter-5 > * {
  padding-left: 5px;
  padding-right: 5px;
}

.row.gutter-30 {
  margin-left: -30px;
  margin-right: -30px;
}

.row.gutter-30 > * {
  padding-left: 30px;
  padding-right: 30px;
}

.row.is-flex {
  display: flex;
  flex-wrap: wrap;
}

.row-flex {
  margin-left: 0;
  margin-right: 0;
}

@media (min-width: 768px) {
  .row-flex {
    display: flex;
  }
}

.row-flex > * {
  padding-left: 0;
  padding-right: 0;
  float: none;
  flex: 1 1 auto;
  overflow: hidden;
}

.row-table {
  display: table;
  width: 100%;
  table-layout: fixed;
}

.row-table > * {
  display: table-cell;
  vertical-align: top;
}

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

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

.overflow-hidden {
  overflow: hidden;
}

.block {
  display: block;
}

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

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

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

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

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

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

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

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

@media (min-width: 1086px) and (max-width: 1399px) {
  .container {
    width: 970px;
  }
}

@media (max-width: 480px) {
  .col-xxs-full,
  .col-xxs-24 {
    width: 100%;
    float: none;
  }
}

@media (max-width: 480px) {
  .col-xxs-12 {
    width: 50%;
  }
}

.col-xs-fifth,
.col-sm-fifth,
.col-md-fifth,
.col-lg-fifth {
  position: relative;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
  float: left;
}

.col-xs-fifth {
  width: 20%;
}

@media (min-width: 768px) {
  .col-sm-fifth {
    width: 20%;
  }
}

@media (min-width: 992px) {
  .col-md-fifth {
    width: 20%;
  }
}

@media (min-width: 1440px) {
  .col-lg-fifth {
    width: 20%;
  }
}

.js-readmore-content {
  display: none;
}

.js-text-overflow {
  overflow: hidden;
}

.no-js .lazyload {
  display: none;
}

.show-titles h1 {
  outline: 3px dashed red;
  background-color: rgba(255, 0, 0, 0.1);
}

.show-titles h2 {
  outline: 3px dashed blue;
  background-color: rgba(0, 0, 255, 0.1);
}

.show-titles h3 {
  outline: 3px dashed green;
  background-color: rgba(0, 128, 0, 0.1);
}

.show-titles h4 {
  outline: 3px dashed orange;
  background-color: rgba(255, 165, 0, 0.1);
}

@media (min-width: 1440px) {
  .auto-clear .col-lg-1:nth-child(24n+1) {
    clear: left;
  }
  .auto-clear .col-lg-2:nth-child(12n+1) {
    clear: left;
  }
  .auto-clear .col-lg-3:nth-child(8n+1) {
    clear: left;
  }
  .auto-clear .col-lg-4:nth-child(6n+1) {
    clear: left;
  }
  .auto-clear .col-lg-6:nth-child(4n+1) {
    clear: left;
  }
  .auto-clear .col-lg-8:nth-child(3n+1) {
    clear: left;
  }
  .auto-clear .col-lg-12:nth-child(2n+1) {
    clear: left;
  }
}

@media (min-width: 992px) and (max-width: 1439px) {
  .auto-clear .col-md-1:nth-child(24n+1) {
    clear: left;
  }
  .auto-clear .col-md-2:nth-child(12n+1) {
    clear: left;
  }
  .auto-clear .col-md-3:nth-child(8n+1) {
    clear: left;
  }
  .auto-clear .col-md-4:nth-child(6n+1) {
    clear: left;
  }
  .auto-clear .col-md-6:nth-child(4n+1) {
    clear: left;
  }
  .auto-clear .col-md-8:nth-child(3n+1) {
    clear: left;
  }
  .auto-clear .col-md-12:nth-child(2n+1) {
    clear: left;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .auto-clear .col-sm-1:nth-child(24n+1) {
    clear: left;
  }
  .auto-clear .col-sm-2:nth-child(12n+1) {
    clear: left;
  }
  .auto-clear .col-sm-3:nth-child(8n+1) {
    clear: left;
  }
  .auto-clear .col-sm-4:nth-child(6n+1) {
    clear: left;
  }
  .auto-clear .col-sm-6:nth-child(4n+1) {
    clear: left;
  }
  .auto-clear .col-sm-8:nth-child(3n+1) {
    clear: left;
  }
  .auto-clear .col-sm-12:nth-child(2n+1) {
    clear: left;
  }
}

@media (max-width: 767px) {
  .auto-clear .col-xs-1:nth-child(24n+1) {
    clear: left;
  }
  .auto-clear .col-xs-2:nth-child(12n+1) {
    clear: left;
  }
  .auto-clear .col-xs-3:nth-child(8n+1) {
    clear: left;
  }
  .auto-clear .col-xs-4:nth-child(6n+1) {
    clear: left;
  }
  .auto-clear .col-xs-6:nth-child(4n+1) {
    clear: left;
  }
  .auto-clear .col-xs-8:nth-child(3n+1) {
    clear: left;
  }
  .auto-clear .col-xs-12:nth-child(2n+1) {
    clear: left;
  }
}

.style-inherit {
  font-size: inherit;
  font-weight: inherit;
  color: inherit;
}

/* ==========================================================================
   & typography
   ========================================================================== */
@font-face {
  font-family: "iconfont";
  src: url("../font/iconfont.woff2") format("woff2"), url("../font/iconfont.woff") format("woff");
}

@font-face {
  font-family: 'Apercu';
  src: url("../font/apercu-light.woff2") format("woff2"), url("../font/apercu-light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: 'Apercu';
  src: url("../font/apercu-regular.woff2") format("woff2"), url("../font/apercu-regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: 'Apercu';
  src: url("../font/apercu-italic.woff2") format("woff2"), url("../font/apercu-italic.woff") format("woff");
  font-weight: 400;
  font-style: italic;
}

@font-face {
  font-family: 'Apercu';
  src: url("../font/apercu-bold.woff2") format("woff2"), url("../font/apercu-bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
}

@font-face {
  font-family: 'Apercu';
  src: url("../font/apercu-medium.woff2") format("woff2"), url("../font/apercu-medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: 'Spectral';
  src: url("../font/Spectral-Regular.woff2") format("woff2"), url("../font/Spectral-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: 'Spectral';
  src: url("../font/Spectral-Italic.woff2") format("woff2"), url("../font/Spectral-Italic.woff") format("woff");
  font-weight: 400;
  font-style: italic;
}

@font-face {
  font-family: 'Spectral';
  src: url("../font/Spectral-LightItalic.woff2") format("woff2"), url("../font/Spectral-LightItalic.woff") format("woff");
  font-weight: 300;
  font-style: italic;
}

.icon-agenda:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-assistance:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-avion:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-carnet:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-carte:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-casque:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-check:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-close:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-conciergerie:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-datepicker:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-devise:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-facebook:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-fleche-bouton:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-fleche-nav:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-fleche-select:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-fooding:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-google-plus:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-gps:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-guillemet-ferme:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-guillemet-ouvert:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-home:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-horaire:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-instagram:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-linkedin:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-liste:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-mail:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-miles:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-pinterest:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-scroll:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-select:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-share:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-slider-left:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-slider-right:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-star-half:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-star:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-tchat:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-tel:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-twitter:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-user:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-wifi:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.icon-youtube:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

/* ==========================================================================
   & buttons
   ========================================================================== */
.button {
  display: inline-block;
  font-weight: 700;
  text-align: center;
  vertical-align: middle;
  text-transform: uppercase;
  padding: 2rem 3rem;
  background-color: #0082ad;
  color: #FFF;
  transition: background-color .3s ease-out;
}

@media (max-width: 480px) {
  .button {
    display: block;
    width: 100%;
  }
}

.button.full-width {
  width: 100%;
}

.button.smaller {
  padding-top: 0;
  padding-bottom: 0;
  height: 5rem;
  line-height: 5rem;
}

.button:hover {
  background-color: #2695b9;
}

/* Wobble Horizontal */
.wobble-horizontal {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
}

@keyframes vdm-wobble-horizontal {
  8.325% {
    transform: translateX(8px);
  }
  16.65% {
    transform: translateX(-6px);
  }
  24.975% {
    transform: translateX(4px);
  }
  33.3% {
    transform: translateX(-2px);
  }
  41.625% {
    transform: translateX(1px);
  }
  50% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(0);
  }
}

.wobble-horizontal-animated .wobble-horizontal {
  animation-name: vdm-wobble-horizontal;
  animation-duration: 2s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}

/* Wobble vertical */
.wobble-vertical {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  animation-name: vdm-wobble-vertical;
  animation-duration: 2s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
}

@keyframes vdm-wobble-vertical {
  8.325% {
    transform: translateY(8px);
  }
  16.65% {
    transform: translateY(-6px);
  }
  24.975% {
    transform: translateY(4px);
  }
  33.3% {
    transform: translateY(-2px);
  }
  41.625% {
    transform: translateY(1px);
  }
  50% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(0);
  }
}

/* Bounce To Right */
.bounce-to-right {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  transition-property: color, border-color;
  transition-duration: 0.5s;
}

.bounce-to-right:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #339bbd;
  transform: scaleX(0);
  transform-origin: 0 50%;
  transition-property: transform;
  transition-duration: 0.5s;
  transition-timing-function: ease-out;
}

.bounce-to-right:hover, .bounce-to-right:focus, .bounce-to-right:active {
  color: #FFF;
  border-color: #339bbd;
}

.bounce-to-right:hover:before, .bounce-to-right:focus:before, .bounce-to-right:active:before {
  transform: scaleX(1);
  transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
}

.button-alpha {
  display: inline-block;
  font-weight: 700;
  text-align: center;
  vertical-align: middle;
  text-transform: uppercase;
  padding: 2rem 3rem;
  border: 1px solid currentColor;
  transition: background-color .3s ease-out;
}

@media (max-width: 480px) {
  .button-alpha {
    display: block;
    width: 100%;
  }
}

.button-alpha.full-width {
  width: 100%;
}

.button-alpha.smaller {
  padding-top: 0;
  padding-bottom: 0;
  height: 5rem;
  line-height: 5rem;
}

.button-alpha:hover {
  box-shadow: 0px 0px 0px 1px inset;
  background-color: rgba(255, 255, 255, 0.1);
}

.button-alpha.bounce-to-right {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  transition-property: color, border-color;
  transition-duration: 0.5s;
}

.button-alpha.bounce-to-right:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(138, 138, 138, 0.5);
  transform: scaleX(0);
  transform-origin: 0 50%;
  transition-property: transform;
  transition-duration: 0.5s;
  transition-timing-function: ease-out;
}

.button-alpha.bounce-to-right:hover, .button-alpha.bounce-to-right:focus, .button-alpha.bounce-to-right:active {
  color: #FFF;
  border-color: rgba(138, 138, 138, 0.5);
}

.button-alpha.bounce-to-right:hover:before, .button-alpha.bounce-to-right:focus:before, .button-alpha.bounce-to-right:active:before {
  transform: scaleX(1);
  transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
}

.button-beta {
  padding-left: 2rem;
  padding-right: 2rem;
  display: inline-block;
  height: 5rem;
  line-height: 5rem;
  font-size: 1.4rem;
  font-weight: 500;
  text-transform: uppercase;
  background-color: #FFF;
}

* + .button-beta__icon {
  margin-left: 1rem;
}

.sr-only + .button-beta__icon {
  margin-left: 0;
}

.button-beta__icon:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.button-beta__icon:before {
  font-size: 2rem;
  vertical-align: middle;
}

.button-menu {
  display: inline-block;
  font-weight: 700;
  text-align: center;
  vertical-align: middle;
  text-transform: uppercase;
  padding: 1.5rem 3rem;
  border: 3px solid #feac94;
}

@media (max-width: 480px) {
  .button-menu {
    display: block;
    width: 100%;
  }
}

.button-menu.full-width {
  width: 100%;
}

.button-menu.smaller {
  padding-top: 0;
  padding-bottom: 0;
  height: 5rem;
  line-height: 5rem;
}

.link {
  font-weight: 700;
  text-decoration: underline;
}

.link-alpha {
  text-decoration: underline;
  color: #0082ad;
}

.link-beta {
  font-weight: 700;
  text-decoration: underline;
  letter-spacing: .2rem;
  color: #0082ad;
  text-transform: uppercase;
  font-size: 2rem;
}

.link-arrow {
  display: inline-block;
  overflow: hidden;
  white-space: nowrap;
  color: #0082ad;
  text-transform: uppercase;
  font-weight: 700;
}

.link-arrow span {
  display: inline-block;
}

.link-arrow span:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.no-touch .link-arrow span {
  transition: transform .2s ease-out;
  transform: translateX(calc(-100% + 21px));
}

.no-touch .link-arrow span:hover {
  transform: translateX(0);
}

.link-arrow span:after {
  margin-left: 4px;
  vertical-align: middle;
  font-size: 2rem;
}

/* ==========================================================================
   & forms
   ========================================================================== */
label {
  cursor: pointer;
}

label.error {
  display: block;
  font-style: italic;
  color: #dc3545;
  font-weight: 400;
  margin-top: 0.5rem;
  font-size: 1.5rem;
  padding-left: 16px;
}

.fieldset {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.fieldset + .fieldset {
  border-top: 1px solid #dbdde3;
}

.form-label {
  font-weight: 400;
  font-size: 1.77778rem;
}

.form-label .smaller {
  font-size: 0.7em;
  display: inline-block;
}

.form-horizontal .control-label {
  font-weight: 400;
  text-align: left;
  padding-top: 14px;
}

.form-info {
  display: block;
  margin-top: 0.5rem;
  padding-left: 16px;
  font-size: 0.85em;
  font-style: italic;
}

.form-control {
  font-size: 16px;
  padding: 10px 16px;
  height: 46px;
  line-height: 1.33333;
  color: #000;
  border-color: #e2e3e3;
  box-shadow: none;
}

.form-control::-webkit-input-placeholder {
  color: #000;
}

.form-control::-moz-placeholder {
  color: #000;
}

.form-control:-ms-input-placeholder {
  color: #000;
}

.form-control:-moz-placeholder {
  color: #000;
}

.form-control:focus {
  outline: none;
  border-color: #0082ad;
  box-shadow: none;
}

.form-control:focus::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.2);
}

.form-control:focus::-moz-placeholder {
  color: rgba(0, 0, 0, 0.2);
}

.form-control:focus:-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.2);
}

.form-control:focus:-moz-placeholder {
  color: rgba(0, 0, 0, 0.2);
}

.form-control.input-validation-error {
  border-color: #dc3545 !important;
}

.error .form-control {
  border-color: #dc3545;
}

.success .form-control {
  border-color: #28a745;
}

.field-validation-error {
  display: block;
  font-style: italic;
  color: #dc3545;
  font-weight: 400;
  margin-top: 0.5rem;
  font-size: 1.5rem;
  padding-left: 16px;
}

.validationSummaryError {
  color: #dc3545;
  margin-bottom: 2rem;
}

.validationSummaryError span {
  display: block;
  margin-bottom: 5px;
}

.validationSummaryError ul li {
  text-indent: 0.8em;
  position: relative;
}

.validationSummaryError ul li:before {
  content: "";
  display: block;
  width: 0.3em;
  height: 0.3em;
  border-radius: 50%;
  position: absolute;
  background-color: #000;
  background-color: currentColor;
  top: 0.5em;
}

.validation-summary-valid {
  color: #ff4d42;
  display: none;
}

.form-counter {
  font-size: 1.2rem;
}

.form-control-alpha {
  padding: 1.2rem 2rem;
  height: 5rem;
  font-size: 1.4rem;
  border: none;
  font-weight: 500;
  text-transform: uppercase;
  width: 100%;
  background-color: #FFF;
  border-radius: 0;
}

.form-control-alpha::-webkit-input-placeholder {
  color: #000;
  font-size: 1.4rem;
  line-height: 1.8;
}

.form-control-alpha::-moz-placeholder {
  color: #000;
  font-size: 1.4rem;
  line-height: 1.8;
}

.form-control-alpha:-ms-input-placeholder {
  color: #000;
  font-size: 1.4rem;
  line-height: 1.8;
}

.form-control-alpha:-moz-placeholder {
  color: #000;
  font-size: 1.4rem;
  line-height: 1.8;
}

.touch .form-control-alpha {
  font-size: 1.77778rem;
}

@media (max-width: 767px) {
  .form-context [class^='col-'] + [class^='col-'] {
    margin-top: 2rem;
  }
}

.form-context .row + .row {
  margin-top: 2rem;
}

.date-picker {
  -webkit-appearance: none;
  position: relative;
  background-image: url("../images/icon/datepicker.svg");
  background-position: calc(100% - 10px) 50%;
  background-size: 3rem;
  padding-right: 5rem;
}

input[type="date"].form-control.date-picker {
  line-height: 1.33333;
}

.radio-group {
  display: inline-block;
}

.radio-group + .radio-group {
  margin-left: 1rem;
}

input[type=radio].radio {
  display: none;
}

input[type=radio].radio ~ label {
  position: relative;
  padding-left: 3rem;
  vertical-align: top;
  line-height: 2.4rem;
  cursor: pointer;
}

input[type=radio].radio ~ label:before, input[type=radio].radio ~ label:after {
  content: '';
  display: block;
  position: absolute;
  border-radius: 50%;
}

input[type=radio].radio ~ label:before {
  cursor: pointer;
  top: 2px;
  left: 0;
  height: 20px;
  width: 20px;
  border: 1px solid #e2e3e3;
}

input[type=radio].radio ~ label:after {
  top: 6px;
  left: 4px;
  height: 12px;
  width: 12px;
  line-height: 1rem;
}

input[type=radio].radio.right-side ~ label {
  padding-left: 0;
  padding-right: 3rem;
}

input[type=radio].radio.right-side ~ label:before {
  left: auto;
  right: 0;
}

input[type=radio].radio.right-side ~ label:after {
  left: auto;
  right: 4px;
}

input[type=radio].radio:checked ~ label:after {
  background-color: #0082ad;
}

input[type=radio].radio-alpha {
  display: none;
}

input[type=radio].radio-alpha ~ label {
  font-size: 16px;
  padding: 10px 16px;
  height: 46px;
  line-height: 1.33333;
  display: inline-block;
  border: 1px solid #e2e3e3;
  border-radius: 4px;
  min-width: 7rem;
  text-align: center;
}

input[type=radio].radio-alpha:checked ~ label {
  background-color: #0082ad;
  color: #FFF;
}

input[type=checkbox].checkbox {
  display: none;
}

input[type=checkbox].checkbox ~ label {
  position: relative;
  padding-left: 3rem;
  vertical-align: top;
  line-height: 2.4rem;
  cursor: pointer;
}

input[type=checkbox].checkbox ~ label:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

input[type=checkbox].checkbox ~ label:before, input[type=checkbox].checkbox ~ label:after {
  display: block;
  position: absolute;
  top: 2px;
  left: 0;
  height: 20px;
  width: 20px;
}

input[type=checkbox].checkbox ~ label:before {
  content: '';
  cursor: pointer;
  border: 2px solid #0082ad;
}

input[type=checkbox].checkbox ~ label:after {
  text-align: center;
  font-size: 1.2rem;
  color: transparent;
  line-height: 22px;
}

s input[type=checkbox].checkbox.right-side ~ label {
  padding-left: 0;
  padding-right: 3rem;
}

s input[type=checkbox].checkbox.right-side ~ label:before {
  left: auto;
  right: 0;
}

s input[type=checkbox].checkbox.right-side ~ label:after {
  left: auto;
  right: 0;
}

input[type=checkbox].checkbox:checked ~ label:after {
  color: #0082ad;
}

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

.input-group-addon {
  background-color: #FFF;
  border-color: #e2e3e3;
  font-size: 2rem;
  cursor: pointer;
}

textarea {
  resize: vertical;
}

.form-section + .form-section {
  margin-top: 4rem;
}

.form-section__header {
  display: table;
  width: 100%;
  border-bottom: 1px solid #dbdde3;
  margin-bottom: 2rem;
}

@media (max-width: 767px) {
  .form-section__header {
    display: block;
  }
}

.form-section__header-title {
  display: table-cell;
  font-size: 3rem;
  font-weight: 700;
  color: #0082ad;
}

@media (max-width: 767px) {
  .form-section__header-title {
    display: block;
  }
}

.form-section__header-text {
  display: table-cell;
  text-align: right;
}

@media (max-width: 767px) {
  .form-section__header-text {
    text-align: left;
    display: block;
    margin-bottom: 1rem;
  }
}

.form-section__subtitle {
  margin-top: 4rem;
  margin-bottom: 2rem;
  font-weight: 700;
  font-size: 2.2rem;
}

.box-search {
  background-color: #FFF;
  display: inline-block;
  padding: 0.5rem;
}

.box-search__form-group {
  display: inline-block;
  vertical-align: middle;
  padding-left: 1rem;
  padding-right: 1rem;
  position: relative;
  text-align: left;
}

@media (min-width: 768px) {
  .box-search__form-group + .box-search__form-group:before {
    content: "";
    position: absolute;
    display: block;
    background-color: #000;
    width: 1px;
    height: 100%;
    top: 0;
    left: -2px;
  }
}

@media (max-width: 767px) {
  .box-search__form-group {
    display: block;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
}

.box-search__label {
  display: block;
  text-align: left;
  color: #8a8a8a;
  font-weight: 500;
  font-size: 1.6rem;
}

@media (max-width: 767px) {
  .box-search__submit {
    width: 100%;
  }
}

.intl-tel-input {
  width: 100%;
}

/* ==========================================================================
   & common
   ========================================================================== */
.h2 {
  display: block;
  font-size: 5rem;
  font-weight: 700;
  line-height: 1.1;
  margin-bottom: 0.5rem;
}

@media (max-width: 767px) {
  .h2 {
    font-size: 3.33333rem;
  }
}

.h2-alpha {
  display: block;
  font-size: 4rem;
  font-weight: 300;
  line-height: 1.1;
}

@media (max-width: 767px) {
  .h2-alpha {
    font-size: 2.77778rem;
  }
}

.subtitle {
  font-family: "Spectral", serif;
  font-size: 2rem;
  font-style: italic;
  margin-bottom: 1rem;
}

@media (max-width: 991px) {
  .subtitle {
    font-size: 1.55556rem;
  }
}

.header-box {
  text-align: center;
  margin-bottom: 3rem;
}

.actions {
  text-align: center;
  margin-top: 4rem;
}

.noMarginTop {
  margin-top: 0;
}

.text-alpha {
  color: #0082ad;
  text-transform: uppercase;
  border-left: 5px solid #0082ad;
  padding-left: 1.5rem;
  line-height: 1.6;
}

.pager {
  display: inline-block;
}

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

.pager:after {
  clear: both;
}

.pager > li {
  float: left;
  position: relative;
  text-align: center;
}

.pager > li + li:before {
  content: "";
  position: absolute;
  display: block;
  background-color: #000;
  width: 2px;
  height: 1.5rem;
  top: 48%;
  transform: translateY(-50%);
}

.pager > li a {
  padding-left: 0.7rem;
  padding-right: 0.7rem;
  font-size: 2rem;
  font-weight: 500;
}

.pager > li a:hover, .pager > li a.active {
  color: #0082ad;
}

.page-mag .pager > li a:hover, .page-mag .pager > li a.active {
  color: #feac94;
}

.bullet-list li {
  text-indent: 0.8em;
  position: relative;
}

.bullet-list li:before {
  content: "";
  display: block;
  width: 0.3em;
  height: 0.3em;
  border-radius: 50%;
  position: absolute;
  background-color: #000;
  background-color: currentColor;
  top: 0.5em;
}

/* ==========================================================================
   & box
   ========================================================================== */
.box-confiez-nous {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media (max-width: 991px) {
  .box-confiez-nous__list {
    margin-left: 5em;
    margin-right: 5em;
  }
}

@media (max-width: 480px) {
  .box-confiez-nous__list {
    margin-left: -1.5rem;
    margin-right: -1.5rem;
  }
}

.box-confiez-nous__list .slick-arrow {
  top: 2.6rem;
}

.page-ddv-light .box-confiez-nous {
  display: none;
}

.box-confiez-item {
  text-align: center;
  padding-left: 3rem;
  padding-right: 3rem;
}

.box-confiez-item__index {
  position: relative;
  background-color: #0082ad;
  color: #FFF;
  width: 5rem;
  height: 5rem;
  display: inline-block;
  border-radius: 50%;
  font-size: 2rem;
  padding: 2px;
  text-align: center;
  font-weight: bold;
  font-size: 2.6rem;
  line-height: 4.5rem;
  margin-bottom: 3rem;
}

.box-confiez-item__index:before {
  content: "";
  position: absolute;
  background-color: #FFF;
  display: block;
  height: 3px;
  width: calc(100% + 2rem);
  margin-left: -1rem;
  margin-right: -1rem;
  left: 0;
  top: 50%;
  z-index: -1;
}

.box-confiez-item__index-inner {
  width: 100%;
  height: 100%;
  display: block;
  border-radius: 50%;
  border: 1px dotted #FFF;
}

@media (min-width: 768px) {
  .box-confiez-item__index-inner {
    background-color: #FFF;
    transform: scale(2);
    transition: all 0.5s ease-out;
  }
  .index-2 .box-confiez-item__index-inner {
    transition-delay: 0.5s;
  }
  .index-3 .box-confiez-item__index-inner {
    transition-delay: 1s;
  }
  .confiez-nous-is-animated .box-confiez-item__index-inner {
    transform: scale(1);
    background-color: transparent;
  }
}

.box-confiez-item__title {
  font-size: 1.8rem;
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: .2rem;
}

@media (min-width: 768px) {
  .box-confiez-item__title {
    transform: translateY(3rem);
    opacity: 0;
    transition: all 0.5s ease-out;
  }
  .index-1 .box-confiez-item__title {
    transition-delay: 0.1s;
  }
  .index-2 .box-confiez-item__title {
    transition-delay: 0.6s;
  }
  .index-3 .box-confiez-item__title {
    transition-delay: 1.1s;
  }
  .confiez-nous-is-animated .box-confiez-item__title {
    transform: translateY(0);
    opacity: 1;
  }
}

.box-confiez-item__text {
  margin-left: auto;
  margin-right: auto;
  max-width: 28rem;
}

@media (min-width: 768px) {
  .box-confiez-item__text {
    transform: translateY(3rem);
    opacity: 0;
    transition: all 0.5s ease-out;
  }
  .index-1 .box-confiez-item__text {
    transition-delay: 0.2s;
  }
  .index-2 .box-confiez-item__text {
    transition-delay: 0.7s;
  }
  .index-3 .box-confiez-item__text {
    transition-delay: 1.2s;
  }
  .confiez-nous-is-animated .box-confiez-item__text {
    transform: translateY(0);
    opacity: 1;
  }
}

.box-confiez-item:first-child .box-confiez-item__index:after {
  content: '';
  display: block;
  width: 499rem;
  height: 0;
  border-top: 1px dotted #000;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: -2;
}

.box-confiez-item:last-child .box-confiez-item__index {
  position: relative;
}

.box-confiez-item:last-child .box-confiez-item__index:after {
  content: '';
  display: block;
  width: 499rem;
  height: 0;
  border-top: 3px solid #FFF;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: -2;
}

.box-newsletter {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #424242;
  color: #FFF;
  text-align: center;
  font-size: 2.7rem;
}

.page-ddv-light .box-newsletter {
  display: none;
}

.page-ddv-confirmation .box-newsletter {
  display: block;
}

.box-newsletter__label {
  cursor: pointer;
}

@media (max-width: 991px) {
  .box-newsletter__label {
    text-align: left;
    display: block;
  }
}

.box-newsletter__input {
  margin-left: 1rem;
  margin-right: 1rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  color: #feac94;
  border: none;
  background-color: transparent;
  -webkit-appearance: none;
  min-width: 30rem;
  text-align: left;
  box-shadow: none;
  transition: all .3s ease-out;
}

@media (max-width: 991px) {
  .box-newsletter__input {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
    display: block;
    text-align: left;
    margin-left: 0;
    padding-left: 0;
    width: 100%;
  }
}

.box-newsletter__input::-webkit-input-placeholder {
  color: #feac94;
  text-align: center;
}

@media (max-width: 991px) {
  .box-newsletter__input::-webkit-input-placeholder {
    text-align: left;
  }
}

.box-newsletter__input::-moz-placeholder {
  color: #feac94;
  text-align: center;
}

@media (max-width: 991px) {
  .box-newsletter__input::-moz-placeholder {
    text-align: left;
  }
}

.box-newsletter__input:-ms-input-placeholder {
  color: #feac94;
  text-align: center;
}

@media (max-width: 991px) {
  .box-newsletter__input:-ms-input-placeholder {
    text-align: left;
  }
}

.box-newsletter__input:-moz-placeholder {
  color: #feac94;
  text-align: center;
}

@media (max-width: 991px) {
  .box-newsletter__input:-moz-placeholder {
    text-align: left;
  }
}

.box-newsletter__input:focus {
  outline: none;
  background-color: rgba(254, 172, 148, 0.05);
}

.box-newsletter__input:focus::-webkit-input-placeholder {
  color: rgba(254, 172, 148, 0.2);
}

.box-newsletter__input:focus::-moz-placeholder {
  color: rgba(254, 172, 148, 0.2);
}

.box-newsletter__input:focus:-ms-input-placeholder {
  color: rgba(254, 172, 148, 0.2);
}

.box-newsletter__input:focus:-moz-placeholder {
  color: rgba(254, 172, 148, 0.2);
}

.box-newsletter__input:hover {
  background-color: rgba(254, 172, 148, 0.05);
}

.box-newsletter__submit {
  text-decoration: underline;
  padding: 0;
}

@media (max-width: 991px) {
  .box-newsletter__submit {
    display: block;
    text-align: left;
  }
}

.box-sur-carte {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-intro {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-intro__title {
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
  letter-spacing: .1rem;
  margin-bottom: 3rem;
}

@media (max-width: 767px) {
  .box-intro__title {
    font-size: 2rem;
  }
}

.box-intro__col-visual {
  flex-shrink: 0;
}

@media (min-width: 768px) {
  .box-intro__col-visual {
    margin-right: 3rem;
    max-width: 10rem;
  }
}

@media (min-width: 992px) {
  .box-intro__col-visual {
    max-width: 17rem;
  }
}

.box-intro__visual {
  display: block;
  border-radius: 50%;
}

@media (max-width: 767px) {
  .box-intro__visual {
    display: none;
  }
}

.box-intro__text {
  line-height: 1.5;
}

.box-intro__actions {
  margin-top: 2rem;
}

@media (max-width: 767px) {
  .box-intro__actions {
    display: none;
  }
}

@media (min-width: 992px) {
  .box-intro__actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
}

.box-intro__contact {
  margin-right: 1rem;
}

@media (max-width: 991px) {
  .box-intro__contact {
    margin-bottom: 1rem;
  }
}

.box-intro__tel {
  font-weight: 700;
  font-size: 2rem;
}

@media (min-width: 992px) {
  .box-intro__tel {
    display: block;
  }
}

.box-intro__btn {
  white-space: nowrap;
}

.box-intro__btn + .box-intro__btn {
  margin-left: 1rem;
}

#box-intro .box-intro__col-content .js-readmore--expanded div.js-readmore-content {
  display: inline !important;
}

.box-mini-intro {
  padding-top: 4rem;
  padding-bottom: 4rem;
  text-align: center;
}

.box-mini-intro__text {
  margin-left: auto;
  margin-right: auto;
  max-width: 80rem;
  line-height: 1.5;
}

.box-mini-intro__text > p + p {
  margin-top: 2rem;
}

.header-box + .box-mini-intro__text {
  margin-top: 3rem;
}

.box-carnet-voyage {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

.box-carnet-voyage__list {
  margin-left: -1.7rem;
  margin-right: -1.7rem;
  display: none;
}

@media (min-width: 768px) {
  .box-carnet-voyage__list {
    margin-left: 6rem;
    margin-right: 6rem;
  }
}

@media (min-width: 768px) {
  .box-carnet-voyage .slick-arrow {
    top: 25%;
  }
}

@media (min-width: 992px) {
  .box-carnet-voyage .slick-arrow {
    top: 30%;
  }
}

@media (min-width: 1440px) {
  .box-carnet-voyage .slick-arrow {
    top: 35%;
  }
}

.box-carnet-voyage-item {
  padding-left: 3rem;
  padding-right: 3rem;
}

.box-carnet-voyage-item__visual {
  margin-bottom: 1rem;
}

.box-carnet-voyage-item__chapo {
  font-size: 1.3rem;
  text-transform: uppercase;
  font-weight: 400;
  padding-left: 1.5rem;
  position: relative;
}

.box-carnet-voyage-item__chapo:before {
  content: "";
  width: 8px;
  height: 1px;
  background-color: #000;
  display: block;
  position: absolute;
  left: 0;
  top: 7px;
}

.box-carnet-voyage-item__title {
  font-size: 2rem;
  margin-bottom: 1rem;
  font-weight: 700;
}

.box-carnet-voyage-item__text {
  margin-bottom: 1rem;
}

.box-monde-service {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-monde-service .slick-dots {
  bottom: 2rem;
}

@media (min-width: 768px) {
  .box-monde-service .header-box {
    display: none;
  }
}

.box-monde-service-item {
  display: block;
  background-color: #dbdde3;
  position: relative;
  color: #FFF;
}

@media (min-width: 768px) {
  .no-touch .box-monde-service-item {
    overflow: hidden;
  }
  .no-touch .box-monde-service-item img {
    transition: transform .3s ease-out;
  }
  .no-touch .box-monde-service-item:hover img {
    transform: scale(1.1);
  }
}

@media (min-width: 768px) {
  .box-monde-service-item {
    margin-bottom: 1rem;
  }
}

.box-monde-service-item:after {
  content: "";
  display: block;
  padding-bottom: 100%;
}

@media (min-width: 768px) {
  .box-monde-service-item.double-width:after {
    padding-bottom: calc(50% - .5rem);
  }
}

.box-monde-service-item.double-height:after {
  padding-bottom: calc(200% + 1rem);
}

.box-monde-service-item.pink {
  background-color: #feac94;
  transition: background-color .3s ease-out;
}

.box-monde-service-item.pink:hover {
  background-color: #99a4b1;
}

.box-monde-service-item.grey {
  background-color: #99a4b1;
  transition: background-color .3s ease-out;
}

.box-monde-service-item.grey:hover {
  background-color: #feac94;
}

.box-monde-service-item.type-1 {
  background-color: #feac94;
  color: #feac94;
}

.box-monde-service-item.type-2 {
  text-align: center;
}

.box-monde-service-item__inner {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.type-1 .box-monde-service-item__inner {
  padding: 1rem;
  background-color: #feac94;
}

.type-2 .box-monde-service-item__inner:before {
  content: "";
  background-color: #000;
  opacity: .15;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
}

.type-3 .box-monde-service-item__inner {
  padding: 2rem;
}

@media (min-width: 768px) and (max-width: 991px) {
  .type-3 .box-monde-service-item__inner {
    padding: 1.5rem;
  }
}

.type-1 .box-monde-service-item__content {
  height: 100%;
  background-color: #FFF;
  padding: 1rem 1.4rem;
}

.type-2 .box-monde-service-item__content {
  padding-left: 1rem;
  padding-right: 1rem;
  position: absolute;
  width: 100%;
  z-index: 1;
  top: calc(50% - 2rem);
}

.type-1 .box-monde-service-item__title {
  font-size: 3.8rem;
  line-height: 1.2;
}

@media (min-width: 768px) and (max-width: 991px) {
  .type-1 .box-monde-service-item__title {
    font-size: 2.8rem;
  }
}

.type-2 .box-monde-service-item__title {
  font-size: 3rem;
  line-height: 1;
}

@media (min-width: 768px) and (max-width: 991px) {
  .type-2 .box-monde-service-item__title {
    font-size: 2rem;
  }
}

@media (max-width: 767px) {
  .type-2 .box-monde-service-item__title {
    font-size: 2rem;
  }
}

.type-3 .box-monde-service-item__title {
  font-size: 2.4rem;
  line-height: 1.1;
}

@media (min-width: 768px) and (max-width: 991px) {
  .type-3 .box-monde-service-item__title {
    font-size: 2rem;
  }
}

.box-monde-service-item__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

@media (min-width: 768px) and (max-width: 991px) {
  .type-3 .box-monde-service-item__text {
    font-size: 1.1rem;
  }
}

.box-monde-service-item__link {
  font-size: 1.4rem;
}

@media (min-width: 768px) and (max-width: 991px) {
  .box-monde-service-item__link {
    font-size: 1.2rem;
  }
}

.box-monde-envies {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

.box-monde-envies__list {
  margin-left: -1.7rem;
  margin-right: -1.7rem;
  display: none;
}

@media (min-width: 768px) {
  .box-monde-envies__list {
    margin-left: 6rem;
    margin-right: 6rem;
  }
}

.box-monde-envies__list .slick-arrow {
  top: calc(50% - 20px);
}

.box-monde-envie {
  text-align: center;
  padding-left: 1rem;
  padding-right: 1rem;
}

.box-monde-envie__text {
  font-size: 1.5rem;
  font-weight: 400;
  margin-top: 1rem;
}

.box-monde-envie__link:hover {
  text-decoration: underline;
}

.box-monde-imagination {
  padding-top: 4rem;
  padding-bottom: 4rem;
  padding-bottom: 0;
}

.box-monde-imagination-item {
  margin-left: auto;
  margin-right: auto;
  max-width: 50rem;
  margin-bottom: 4rem;
}

@media (min-width: 768px) {
  .no-touch .box-monde-imagination-item {
    overflow: hidden;
  }
  .no-touch .box-monde-imagination-item img {
    transition: transform .3s ease-out;
  }
  .no-touch .box-monde-imagination-item:hover img {
    transform: scale(1.1);
  }
}

@media (min-width: 768px) {
  .box-monde-imagination-item {
    text-align: center;
  }
}

.box-monde-imagination-item__link {
  display: block;
}

.box-monde-imagination-item__visual-container {
  position: relative;
  margin-bottom: 1rem;
}

.box-monde-imagination-item__visual-container:after {
  content: "";
  display: block;
  padding-bottom: 100%;
}

.box-monde-imagination-item__visual-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

.box-monde-imagination-item__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-monde-imagination-item__title {
  font-size: 2rem;
  margin-bottom: 1rem;
  font-weight: 700;
}

.box-monde-imagination-item__text {
  margin-bottom: 1rem;
}

.box-monde-imagination-item__conditions {
  color: #0082ad;
  letter-spacing: .1rem;
  text-transform: uppercase;
}

.box-nouveaux-voyages {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media (max-width: 767px) {
  .box-nouveaux-voyages {
    background-color: #f6f6f6;
  }
}

@media (min-width: 768px) {
  .box-nouveaux-voyages .container {
    width: 100% !important;
    padding: 0 !important;
  }
}

@media (max-width: 767px) {
  .box-nouveaux-voyages__list {
    margin-left: -1.7rem;
    margin-right: -1.7rem;
  }
}

@media (min-width: 768px) {
  .box-nouveaux-voyages .slick-arrow {
    height: 6rem;
    width: 6rem;
    z-index: 1;
    background-color: #FFF;
  }
  .box-nouveaux-voyages .slick-arrow:before {
    opacity: 1;
    font-size: 4rem;
    margin-top: 0.2rem;
  }
}

@media (min-width: 768px) {
  .box-nouveaux-voyages .slick-prev {
    left: calc(33.33%);
    transform: translate(-50%, -50%);
  }
}

@media (min-width: 768px) {
  .box-nouveaux-voyages .slick-next {
    right: calc(33.33%);
    transform: translate(50%, -50%);
  }
}

@media (max-width: 767px) {
  .box-nouveaux-voyages-item {
    margin-bottom: 1rem;
  }
}

@media (min-width: 768px) {
  .box-nouveaux-voyages-item {
    position: relative;
  }
}

.box-nouveaux-voyages-item__link {
  display: block;
  position: relative;
}

@media (min-width: 768px) {
  .box-nouveaux-voyages-item__link {
    pointer-events: none;
  }
  .box-nouveaux-voyages-item__link:before {
    content: "";
    opacity: 0.5;
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
    top: 75%;
    left: 0;
    transition: all .3s;
  }
}

.box-nouveaux-voyages-item__visual-container {
  position: relative;
}

@media (max-width: 767px) {
  .box-nouveaux-voyages-item__visual-container {
    margin-bottom: 2rem;
  }
}

.box-nouveaux-voyages-item__visual-container:after {
  content: "";
  display: block;
  padding-bottom: 60.20408%;
}

.box-nouveaux-voyages-item__visual-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

.box-nouveaux-voyages-item__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

@media (max-width: 767px) {
  .box-nouveaux-voyages-item__content {
    margin-left: auto;
    margin-right: auto;
    padding-left: 1.7rem;
    padding-right: 1.7rem;
    max-width: 50rem;
  }
}

@media (min-width: 768px) {
  .box-nouveaux-voyages-item__content {
    opacity: 0;
    position: absolute;
    z-index: 1;
    top: 77%;
    left: 0;
    transition: all .3s;
    color: #FFF;
    text-align: center;
    padding: 1.5% 4rem;
    width: 100%;
  }
}

.box-nouveaux-voyages-item__chapo {
  color: #0082ad;
  letter-spacing: .1rem;
  text-transform: uppercase;
  font-weight: 400;
  margin-bottom: 0.5rem;
  font-size: inherit;
  max-height: 1.2em;
}

@media (min-width: 768px) {
  .box-nouveaux-voyages-item__chapo {
    margin-left: auto;
    margin-right: auto;
    max-width: 30rem;
    color: inherit;
    font-size: 1.1rem;
  }
}

@media (min-width: 992px) {
  .box-nouveaux-voyages-item__chapo {
    font-size: 1.2rem;
  }
}

.box-nouveaux-voyages-item__chapo span {
  font-size: inherit !important;
  font-family: inherit !important;
}

.box-nouveaux-voyages-item__title {
  font-size: 2rem;
  margin-bottom: 2rem;
  font-weight: 700;
}

@media (min-width: 768px) {
  .box-nouveaux-voyages-item__title {
    max-height: 1.4em;
    margin-left: auto;
    margin-right: auto;
    max-width: 30rem;
    font-size: 1.5rem;
  }
}

@media (min-width: 992px) {
  .box-nouveaux-voyages-item__title {
    font-size: 2rem;
  }
}

.box-nouveaux-voyages-item__title span {
  font-size: inherit !important;
  font-family: inherit !important;
}

.box-nouveaux-voyages-item__text {
  margin-bottom: 1rem;
  max-height: 3.8em;
}

@media (min-width: 768px) {
  .box-nouveaux-voyages-item__text {
    margin-left: auto;
    margin-right: auto;
    max-width: 30rem;
    opacity: 0;
    transition: opacity .3s;
  }
}

.box-nouveaux-voyages-item__text span {
  font-size: inherit !important;
  font-family: inherit !important;
}

@media (min-width: 768px) {
  .box-nouveaux-voyages-item__text-link {
    margin-left: auto;
    margin-right: auto;
    max-width: 30rem;
    opacity: 0;
    transition: opacity .3s;
  }
}

.box-nouveaux-voyages-item__conditions {
  color: #0082ad;
  letter-spacing: .1rem;
  text-transform: uppercase;
}

@media (min-width: 768px) {
  .box-nouveaux-voyages-item.slick-active .box-nouveaux-voyages-item__content {
    opacity: 1;
  }
  .box-nouveaux-voyages-item.slick-active .box-nouveaux-voyages-item__link {
    pointer-events: auto;
  }
  .box-nouveaux-voyages-item.slick-active .box-nouveaux-voyages-item__link:before {
    background-color: #000;
  }
  .box-nouveaux-voyages-item.slick-active:hover .box-nouveaux-voyages-item__content {
    top: 15%;
  }
  .box-nouveaux-voyages-item.slick-active:hover .box-nouveaux-voyages-item__link:before {
    top: 0;
  }
  .box-nouveaux-voyages-item.slick-active:hover .box-nouveaux-voyages-item__text,
  .box-nouveaux-voyages-item.slick-active:hover .box-nouveaux-voyages-item__text-link {
    opacity: 1;
  }
}

.box-actualite {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-actualite__link {
  display: block;
  position: relative;
}

.box-actualite__visual {
  width: 100%;
}

.box-actualite__inner:before {
  content: "";
  background-color: #000;
  opacity: .15;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-actualite__content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 3rem;
  overflow: hidden;
}

.box-actualite__title {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 1rem;
}

@media (min-width: 375px) {
  .box-actualite__title {
    font-size: 2.5rem;
  }
}

@media (min-width: 480px) {
  .box-actualite__title {
    font-size: 2.5rem;
  }
}

@media (min-width: 992px) {
  .box-actualite__title {
    font-size: 3.6rem;
    width: 36rem;
  }
}

.box-actualite__subtitle {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.2;
  color: #FFF;
  margin-bottom: 2rem;
}

@media (min-width: 375px) {
  .box-actualite__subtitle {
    font-size: 2.5rem;
  }
}

@media (min-width: 480px) {
  .box-actualite__subtitle {
    font-size: 2.5rem;
    margin-bottom: 4rem;
  }
}

@media (min-width: 992px) {
  .box-actualite__subtitle {
    font-size: 3.6rem;
    margin-bottom: 2rem;
    width: 36rem;
  }
}

.box-actualite__text {
  font-size: 1.2rem;
  width: 25rem;
  margin-bottom: 1rem;
}

@media (max-width: 767px) {
  .box-actualite__text {
    max-width: 60%;
  }
}

@media (min-width: 375px) {
  .box-actualite__text {
    font-size: 1.3rem;
  }
}

.box-actualite__btn {
  font-weight: 700;
  text-decoration: underline;
}

@media (min-width: 992px) {
  .box-actualite__btn {
    display: inline-block;
    font-weight: 700;
    text-align: center;
    vertical-align: middle;
    text-transform: uppercase;
    padding: 2rem 3rem;
    border: 1px solid #000;
    text-decoration: none;
  }
}

@media (min-width: 992px) and (max-width: 480px) {
  .box-actualite__btn {
    display: block;
    width: 100%;
  }
}

@media (min-width: 992px) {
  .box-actualite__btn.full-width {
    width: 100%;
  }
  .box-actualite__btn.smaller {
    padding-top: 0;
    padding-bottom: 0;
    height: 5rem;
    line-height: 5rem;
  }
}

@media (max-width: 767px) {
  .box-actualite__btn {
    font-size: 1.4rem;
  }
}

.box-plus-loin {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

.box-plus-loin-item {
  display: block;
  background-color: #dbdde3;
  position: relative;
  margin-bottom: 3.33333rem;
}

@media (min-width: 768px) {
  .no-touch .box-plus-loin-item {
    overflow: hidden;
  }
  .no-touch .box-plus-loin-item img {
    transition: transform .3s ease-out;
  }
  .no-touch .box-plus-loin-item:hover img {
    transform: scale(1.1);
  }
}

@media (max-width: 991px) {
  .box-plus-loin-item {
    margin-bottom: 1.66667rem;
  }
}

.box-plus-loin-item:after {
  content: "";
  display: block;
  padding-bottom: 77.77778%;
}

@media (min-width: 768px) {
  .box-plus-loin-item.double-width:after {
    padding-bottom: calc((38.88889%) - 1.4rem);
  }
}

@media (min-width: 768px) {
  .box-plus-loin-item.double-height:after {
    padding-bottom: calc((155.55556%) + 30px);
  }
}

.box-plus-loin-item:hover .box-plus-loin-item__title {
  text-decoration: underline;
}

.box-plus-loin-item__inner {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.box-plus-loin-item__inner:before {
  content: "";
  background-color: #000;
  opacity: .15;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
}

.box-plus-loin-item__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-plus-loin-item__content {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 2rem;
  z-index: 1;
}

.box-plus-loin-item__rubrique {
  font-size: 1.4rem;
  font-weight: 500;
  background-color: #FFF;
  display: inline-block;
  padding: 0.8rem 1.2rem;
  text-transform: uppercase;
}

.box-plus-loin-item__title {
  font-size: 2.8rem;
  max-height: 5.55556rem;
  line-height: 1;
  font-weight: bold;
  color: #FFF;
  overflow: hidden;
}

.box-services {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-services__title {
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
  letter-spacing: .1rem;
  margin-bottom: 3rem;
}

@media (max-width: 767px) {
  .box-services__title {
    font-size: 2rem;
  }
}

.box-services__list {
  display: none;
  margin-left: 6rem;
  margin-right: 6rem;
}

.box-services .slick-arrow {
  top: 25%;
}

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

.box-service__icon {
  color: #0082ad;
  font-size: 7rem;
  height: 10rem;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
}

.box-service__icon:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@keyframes vdm-icon-pop {
  50% {
    transform: translate(-50%, -50%) scale(1.3);
  }
}

.box-service__icon:hover:before, .box-service__icon:focus:before, .box-service__icon:active:before {
  animation-name: vdm-icon-pop;
  animation-duration: 0.3s;
  animation-timing-function: linear;
  animation-iteration-count: 1;
}

.box-service__icon.icon-miles {
  font-size: 8.5rem;
}

.box-service__text {
  text-transform: uppercase;
  font-size: 1.4rem;
  letter-spacing: .2rem;
  padding-left: 2rem;
  padding-right: 2rem;
}

.box-idees-voyages {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-idee {
  margin-bottom: 4rem;
}

.box-idee.intoMap {
  margin-bottom: 0;
  max-width: 25rem;
  font-family: "Apercu", Arial, sans-serif;
  text-align: left;
}

.box-idee__visual-container {
  position: relative;
  margin-bottom: 1rem;
}

.box-idee__visual-container:after {
  content: "";
  display: block;
  padding-bottom: 66.57609%;
}

.box-idee__visual-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

.box-idee__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: relative;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  margin-bottom: 2rem;
}

.intoMap .box-idee__visual {
  max-width: 100%;
}

.box-idee__chapo {
  color: #0082ad;
  letter-spacing: .1rem;
  text-transform: uppercase;
  font-weight: 400;
  margin-bottom: 1rem;
  font-size: inherit;
}

.box-idee__title {
  font-size: 2rem;
  margin-bottom: 1rem;
  font-weight: 700;
  line-height: 1.2;
}

.box-idee__link:hover .box-idee__title {
  text-decoration: underline;
}

.box-idee__text {
  margin-bottom: 1rem;
}

.box-idee__conditions {
  color: #0082ad;
  letter-spacing: .1rem;
  text-transform: uppercase;
}

.box-regions {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

@media (min-width: 768px) {
  .box-regions__row {
    display: flex;
  }
}

.box-regions__row > * {
  float: none;
  flex: 1 1 auto;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
}

.box-regions__visual {
  max-height: 450px;
}

@media (max-width: 767px) {
  .box-regions__visual {
    display: none;
  }
}

.box-regions__list {
  font-size: 2rem;
  padding-left: 2rem;
}

@media (max-width: 767px) {
  .box-regions__list {
    display: block;
    column-count: 2;
    max-width: 40rem;
    margin: auto;
    font-size: 1.88889rem;
  }
}

.box-regions__item {
  position: relative;
  margin-bottom: 1rem;
}

@media (max-width: 767px) {
  .box-regions__item {
    padding-left: 2rem;
  }
  .box-regions__item:before {
    content: "";
    width: 0.7rem;
    height: 0.7rem;
    background-color: #000;
    position: absolute;
    top: 1.2rem;
    left: 0;
    border-radius: 50%;
  }
}

.box-regions__item > a {
  position: relative;
}

.box-regions__item > a:hover {
  color: #0082ad;
  text-decoration: underline;
}

@media (min-width: 768px) {
  .box-regions__item > a:hover:before {
    font-family: "iconfont";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    text-decoration: none;
    text-transform: none;
    content: "";
  }
}

.box-regions__item > a:hover:before {
  position: absolute;
  left: -2rem;
  font-size: 2rem;
  top: 0.3rem;
  color: #000;
}

.box-envies {
  padding-top: 4rem;
  padding-bottom: 4rem;
  text-align: center;
}

.box-envies .slick-arrow {
  top: calc(50% - 3rem);
}

.box-envies .slick-slider {
  margin-left: 6rem;
  margin-right: 6rem;
}

.box-envies__button {
  position: relative;
  text-transform: uppercase;
}

.box-envies__button:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-envies__button:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.box-envies__button:after {
  display: inline-block;
  vertical-align: middle;
  margin-left: 0.5rem;
  margin-top: -0.2rem;
  transform: rotate(90deg);
  font-size: 1.2rem;
}

.js-readmore--expanded .box-envies__button:after {
  transform: rotate(-90deg);
  margin-left: 1rem;
  margin-top: -0.3rem;
}

.box-envie {
  margin-bottom: 4rem;
}

.box-envie__text {
  text-align: center;
  font-size: 1.8rem;
  height: 4.6rem;
  overflow: hidden;
  font-weight: 400;
  margin-top: 1rem;
}

.box-envie__link {
  display: block;
}

.box-envie__link:hover .box-envie__text {
  text-decoration: underline;
}

.box-envie__visual-container {
  position: relative;
  margin-bottom: 1rem;
}

.box-envie__visual-container:after {
  content: "";
  display: block;
  padding-bottom: 100%;
}

.box-envie__visual-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

.box-envie__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-temoignage {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
  text-align: center;
}

.box-temoignage__title {
  color: #0082ad;
  margin-bottom: 2.5rem;
}

.box-temoignage__note {
  margin-bottom: 1.5rem;
}

.box-temoignage__note .icon {
  position: relative;
}

.box-temoignage__note .icon:before {
  position: relative;
  z-index: 1;
}

.box-temoignage__note .icon-star-half:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-temoignage__note .icon-star-half:after {
  position: absolute;
  color: currentColor;
  opacity: 0.15;
  left: 0;
}

.box-temoignage__note .icon-star-off {
  opacity: 0.15;
}

.box-temoignage__note .icon-star-off:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-temoignage__text {
  font-size: 2.5rem;
  line-height: 1.6;
  font-style: italic;
  margin: 0 auto;
  max-width: 75rem;
}

@media (max-width: 767px) {
  .box-temoignage__text {
    font-size: 1.77778rem;
  }
}

.box-temoignage__link {
  font-size: 1.5rem;
  font-style: normal;
}

.box-temoignage__dots:before {
  content: "\2026";
}

.js-readmore--expanded .box-temoignage__dots.hidable {
  display: none;
}

.box-temoignage__ldquo:before {
  content: "\201C";
}

.box-temoignage__rdquo:before {
  content: "\201D";
}

.js-readmore--expanded .box-temoignage__rdquo.hidable {
  display: none;
}

.box-guide {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-guide__btn-wrapper {
  display: inline-block;
}

@media (max-width: 480px) {
  .box-guide__btn-wrapper {
    display: block;
  }
}

@media (min-width: 480px) {
  .box-guide__btn-wrapper + .box-guide__btn-wrapper {
    margin-left: 1rem;
  }
}

@media (min-width: 768px) {
  .box-guide__btn-wrapper + .box-guide__btn-wrapper {
    margin-left: 5rem;
  }
}

@media (max-width: 480px) {
  .box-guide__btn-wrapper + .box-guide__btn-wrapper {
    margin-top: 2rem;
  }
}

.box-mieux-preparer {
  padding-top: 2rem;
  padding-bottom: 2rem;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  margin-top: 2rem;
}

.box-mieux-preparer__button {
  font-size: 2rem;
  font-weight: 700;
  display: block;
  width: 100%;
  text-align: left;
  padding-left: 2rem;
}

.box-mieux-preparer__button:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-mieux-preparer__button:before {
  display: inline-block;
  font-size: 1.5rem;
  margin-left: -1.5rem;
  margin-right: 1rem;
  transition: transform .2s;
}

@media (max-width: 767px) {
  .box-mieux-preparer__button:before {
    font-size: 1.11111rem;
    margin-left: -1.2rem;
  }
}

.js-readmore--expanded .box-mieux-preparer__button:before {
  transform: rotate(90deg);
}

.box-mieux-preparer__content {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.box-mieux-preparer__title {
  margin-top: 2rem;
  margin-bottom: 1rem;
}

.box-mieux-preparer__title:first-child {
  margin-top: 0;
}

.box-mieux-preparer__text a {
  font-weight: 500;
  text-decoration: underline;
}

.box-idees-associees {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #dbdde3;
  color: #FFF;
  text-align: center;
}

.box-idees-associees__title {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 2rem;
}

.box-idees-associees__content a:hover {
  text-decoration: underline;
}

.page-idees-associees #box-plan-du-site {
  background: #f6f6f6;
  padding-bottom: 4rem;
  padding-top: 4rem;
}

.page-idees-associees #box-plan-du-site h2 {
  padding: 3rem 0 1rem;
}

.page-idees-associees #box-plan-du-site li {
  margin-bottom: 1rem;
}

.box-vous-aimerez {
  background-color: #f6f6f6;
}

.box-vous-aimerez__carousel-wrapper {
  position: relative;
}

.box-vous-aimerez__carousel .slick-prev {
  left: 1.5rem;
  z-index: 1;
}

.box-vous-aimerez__carousel .slick-next {
  right: 1.5rem;
}

.box-vous-aimerez__carousel .slick-arrow:before {
  opacity: 1;
  color: #FFF;
  text-shadow: 0 0 2px #000;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.5;
}

.box-vous-aimerez__carousel .slick-dots {
  bottom: 2rem;
}

.no-touch .box-vous-aimerez__carousel.show-arrow-on-hover .slick-arrow {
  display: none !important;
}

.no-touch .box-vous-aimerez__carousel.show-arrow-on-hover:hover .slick-arrow {
  display: inline-block !important;
}

@media (min-width: 768px) {
  .box-vous-aimerez__content {
    padding-top: 3rem;
    padding-bottom: 2rem;
  }
}

.box-vous-aimerez__title {
  font-weight: 700;
  margin-bottom: 2rem;
  font-size: 1.8rem;
}

@media (max-width: 767px) {
  .box-vous-aimerez__title {
    margin-left: -1.66667rem;
    margin-right: -1.66667rem;
    background-color: #0082ad;
    color: #FFF;
    font-weight: 700;
    text-transform: uppercase;
    text-align: center;
    padding: 1rem 3rem;
  }
}

@media (min-width: 992px) {
  .box-vous-aimerez__list {
    margin-bottom: 3rem;
  }
}

@media (max-width: 767px) {
  .box-vous-aimerez__list {
    padding-bottom: 2rem;
  }
}

.box-vous-aimerez__item {
  margin-top: 1rem;
}

@media (max-width: 767px) {
  .box-vous-aimerez__item {
    position: relative;
    padding-left: 2rem;
  }
  .box-vous-aimerez__item:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.5rem;
    display: block;
    width: 1rem;
    height: 1rem;
    border-radius: 50%;
    background-color: #0082ad;
  }
}

.box-vous-aimerez__actions {
  margin-top: 2.5rem;
}

@media (max-width: 991px) {
  .box-vous-aimerez__actions {
    display: none;
  }
}

.box-vous-aimerez__btn {
  padding-left: 2rem;
  padding-right: 2rem;
  margin-top: 1rem;
  margin-right: 1rem;
}

.box-vous-aimerez__visual-wrapper {
  position: relative;
}

.box-vous-aimerez__visual-wrapper:after {
  content: "";
  display: block;
  padding-bottom: 67%;
}

.slick-initialized .box-vous-aimerez__visual {
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-vous-aimerez__legende {
  position: absolute;
  bottom: 0;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  color: #FFF;
  text-align: center;
  font-size: 1.3rem;
  opacity: 0;
  transition: opacity .6s ease-out;
  padding: 0.2rem 1.5rem;
  cursor: pointer;
}

.legende-is-showed .box-vous-aimerez__legende {
  opacity: 1;
}

.box-vous-aimerez__legende:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-vous-aimerez__legende:before {
  position: absolute;
  top: 4px;
  right: 4px;
  font-size: 1rem;
  opacity: 0.7;
}

.box-vous-aimerez__legende:hover:before {
  opacity: 1;
}

.box-itineraire {
  padding-top: 4rem;
  padding-bottom: 4rem;
  text-align: center;
}

.box-itineraire__map {
  display: block;
  width: 100%;
  background-size: contain;
}

.box-itineraire__map:before {
  content: "";
  display: block;
  padding-top: 48%;
}

@media (max-width: 767px) {
  .box-itineraire__map:before {
    padding-top: 100%;
  }
}

.box-itineraire__list {
  padding-top: 4rem;
}

.box-etape {
  position: relative;
}

@media (min-width: 768px) {
  .box-etape {
    margin-left: 13rem;
    margin-right: 13rem;
  }
}

@media (min-width: 992px) {
  .box-etape {
    margin-left: 20rem;
    margin-right: 20rem;
  }
}

.box-etape:before {
  content: "";
  position: absolute;
  height: 100%;
  top: 0;
  width: 4px;
  transform: translateX(-50%);
  background: radial-gradient(circle, #0082ad 0.8px, transparent 1.8px);
  background-size: 4px 8px;
}

@media (min-width: 768px) {
  .box-etape:before {
    left: -10rem;
    top: 5rem;
  }
}

@media (max-width: 767px) {
  .box-etape:before {
    z-index: -1;
  }
}

.box-etape + .box-etape {
  padding-top: 4rem;
}

.box-etape__header {
  position: relative;
}

@media (max-width: 767px) {
  .box-etape__header {
    background-color: #FFF;
  }
}

.box-etape__icon {
  width: 2rem;
  height: 2rem;
  background-color: #0082ad;
  border-radius: 50%;
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 768px) {
  .box-etape__icon {
    width: 7rem;
    height: 7rem;
    position: absolute;
    left: -10rem;
    top: 50%;
    transform: translate(-50%, -50%);
    border: 1.5rem solid #FFF;
  }
}

@media (max-width: 767px) {
  .box-etape__icon {
    margin-bottom: 1rem;
  }
}

.box-etape__chapo {
  font-size: 1.8rem;
  text-transform: uppercase;
  color: #0082ad;
}

.box-etape__title {
  font-size: 1.8rem;
  text-transform: uppercase;
  font-weight: 700;
}

.box-etape__text {
  text-align: justify;
  font-size: 1.8rem;
}

@media (max-width: 767px) {
  .box-etape__text {
    background-color: #FFF;
    margin-top: 0;
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
}

.box-etape.depart .box-etape__icon, .box-etape.arrive .box-etape__icon {
  background-color: #FFF;
  border-radius: 0;
  width: 9rem;
  height: 9rem;
}

@media (max-width: 767px) {
  .box-etape.depart .box-etape__icon, .box-etape.arrive .box-etape__icon {
    width: 7rem;
    height: 6rem;
    padding-top: 1rem;
  }
}

.box-etape.depart .box-etape__icon:after, .box-etape.arrive .box-etape__icon:after {
  content: "";
  display: block;
  height: 2px;
  background-color: #0082ad;
  width: 100%;
  bottom: 0;
}

@media (min-width: 768px) {
  .box-etape.depart .box-etape__icon:after, .box-etape.arrive .box-etape__icon:after {
    position: absolute;
  }
}

.box-etape.depart .box-etape__icon-inner, .box-etape.arrive .box-etape__icon-inner {
  position: relative;
  font-size: 6rem;
  color: #0082ad;
  width: 100%;
  height: 100%;
}

.box-etape.depart .box-etape__icon-inner:before, .box-etape.arrive .box-etape__icon-inner:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-etape.depart .box-etape__icon-inner:before, .box-etape.arrive .box-etape__icon-inner:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media (min-width: 768px) {
  .box-etape.arrive:before {
    height: 0;
  }
}

.box-etape.arrive .box-etape__icon-inner {
  transform-origin: center center;
  transform: rotate(40deg);
}

.box-a-la-carte {
  padding-top: 4rem;
  padding-bottom: 4rem;
  text-align: center;
}

.box-a-la-carte__list {
  padding-top: 4rem;
}

.box-a-la-carte-item {
  position: relative;
}

@media (min-width: 768px) {
  .box-a-la-carte-item {
    margin-left: 13rem;
    margin-right: 13rem;
  }
}

@media (min-width: 992px) {
  .box-a-la-carte-item {
    margin-left: 20rem;
    margin-right: 20rem;
  }
}

.box-a-la-carte-item + .box-a-la-carte-item {
  padding-top: 4rem;
}

.box-a-la-carte-item__title {
  font-size: 1.8rem;
  text-transform: uppercase;
  font-weight: 700;
}

.box-a-la-carte-item__text {
  text-align: justify;
  font-size: 1.8rem;
}

@media (max-width: 767px) {
  .box-a-la-carte-item__text {
    background-color: #FFF;
    margin-top: 0;
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
}

.box-budget {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

.box-budget__title {
  color: #0082ad;
}

.box-budget__content {
  font-size: 1.6rem;
}

@media (min-width: 992px) {
  .box-budget__content {
    margin-left: 20rem;
    margin-right: 20rem;
  }
}

.box-budget__content-title {
  font-weight: 700;
}

.box-prix-comprend {
  padding-top: 2rem;
  padding-bottom: 2rem;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  margin-top: 2rem;
}

.box-prix-comprend__button {
  font-size: 2rem;
  font-weight: 700;
  display: block;
  width: 100%;
  text-align: left;
  padding-left: 2rem;
}

.box-prix-comprend__button:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-prix-comprend__button:before {
  display: inline-block;
  font-size: 1.5rem;
  margin-left: -1.5rem;
  margin-right: 1rem;
  transition: transform .2s;
}

@media (max-width: 767px) {
  .box-prix-comprend__button:before {
    font-size: 1.11111rem;
    margin-left: -1.2rem;
  }
}

.js-readmore--expanded .box-prix-comprend__button:before {
  transform: rotate(90deg);
}

.box-prix-comprend__content {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.box-nos-experts {
  padding-top: 4rem;
  padding-bottom: 4rem;
  text-align: center;
}

.page-conseillers-interview .box-nos-experts, .box-nos-experts.greyBg {
  background-color: #f6f6f6;
}

.box-nos-experts__visual {
  display: inline-block;
  border-radius: 50%;
  margin-bottom: 2rem;
  max-width: 17.5rem;
}

.box-nos-experts__text {
  margin-left: auto;
  margin-right: auto;
  max-width: 80rem;
  margin-top: 3rem;
  line-height: 1.5;
}

.box-nos-experts__list {
  margin-left: auto;
  margin-right: auto;
  max-width: 100rem;
}

@media (min-width: 768px) {
  .box-nos-experts__list {
    display: table;
  }
}

@media (min-width: 768px) {
  .box-nos-experts__item {
    display: table-cell;
    table-layout: fixed;
    min-width: 20rem;
  }
}

@media (max-width: 767px) {
  .box-nos-experts__item {
    text-align: left;
    display: block;
    width: 100%;
    border-top: 1px solid #424242;
  }
}

@media (max-width: 767px) {
  .box-nos-experts__actions {
    margin-top: 0;
  }
}

.box-expert__icon {
  color: #0082ad;
  font-size: 6rem;
  width: 6rem;
  height: 6rem;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
}

.box-expert__icon:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@keyframes vdm-icon-pop {
  50% {
    transform: translate(-50%, -50%) scale(1.3);
  }
}

.box-expert__icon:hover:before, .box-expert__icon:focus:before, .box-expert__icon:active:before {
  animation-name: vdm-icon-pop;
  animation-duration: 0.3s;
  animation-timing-function: linear;
  animation-iteration-count: 1;
}

@media (max-width: 767px) {
  .box-expert__icon {
    line-height: 1;
    vertical-align: middle;
    font-size: 4rem;
  }
}

.box-expert__text {
  font-weight: 700;
  font-size: 1.8rem;
  margin-top: 0;
}

@media (max-width: 767px) {
  .box-expert__text {
    display: inline-block;
  }
}

.box-expert__link {
  display: inline-block;
}

@media (max-width: 767px) {
  .box-expert__link {
    display: block;
  }
}

.box-contact {
  position: fixed;
  bottom: 0;
  left: 0;
  background-color: #FFF;
  width: 100%;
  border-top: 1px solid #000;
  z-index: 3;
}

.box-contact:before, .box-contact:after {
  content: " ";
  display: table;
}

.box-contact:after {
  clear: both;
}

@media (max-width: 767px) {
  .box-contact {
    z-index: 1000;
  }
}

@media (min-width: 768px) {
  .box-contact {
    padding-left: 2rem;
  }
}

.box-contact__title {
  float: left;
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 4.88889rem;
}

@media (max-width: 767px) {
  .box-contact__title {
    display: none;
  }
}

.box-contact__list {
  float: right;
}

@media (max-width: 767px) {
  .box-contact__list {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
  }
}

@media (max-width: 767px) {
  .box-contact__link {
    display: block;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    order: 1;
  }
}

@media (min-width: 768px) {
  .box-contact__link {
    margin-right: 2rem;
  }
}

@media (max-width: 767px) {
  .box-contact__link + .box-contact__link {
    display: none;
  }
}

.box-contact__icon {
  color: #0082ad;
  font-size: 3rem;
  width: 3rem;
  height: 3rem;
  display: inline-block;
  position: relative;
  vertical-align: middle;
}

.box-contact__icon:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media (min-width: 768px) {
  .box-contact__icon {
    margin-right: 0.5rem;
  }
}

.box-contact__text {
  font-weight: 700;
  font-size: 1.2rem;
}

@media (max-width: 767px) {
  .box-contact__text {
    display: none;
  }
}

.box-contact__btn {
  padding: 1.5rem 1rem;
}

@media (max-width: 767px) {
  .box-contact__btn {
    padding-top: 1.8rem;
    padding-bottom: 1.8rem;
  }
}

.nav-recherche {
  display: flex;
  align-items: center;
  background-color: #FFF;
  width: 100%;
  min-height: 5.88889rem;
  border-bottom: 1px solid #dbdde3;
}

@media (max-width: 767px) {
  .nav-recherche {
    background-color: transparent;
    z-index: auto;
    border-bottom: none;
  }
}

@media (min-width: 992px) {
  .sticky-nav-is-fixed .nav-recherche {
    padding-right: 5.55556rem;
  }
}

.nav-recherche__filters-toggle {
  color: #FFF;
  text-transform: uppercase;
  position: relative;
  padding: 0 2rem 0 0;
  position: relative;
}

@media (min-width: 768px) {
  .nav-recherche__filters-toggle {
    display: none;
  }
}

.nav-recherche__filters-toggle:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.nav-recherche__filters-toggle:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.nav-recherche__filters-toggle:after {
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -0.5rem;
  font-size: 1rem;
  margin-left: 0.5rem;
  transform: rotate(-90deg);
  width: 1rem;
  height: 1rem;
  vertical-align: middle;
}

.recherche-filters-is-opened .nav-recherche__filters-toggle:after {
  transform: rotate(90deg);
}

.nav-recherche__filters-content {
  padding-left: 1.5rem;
}

@media (max-width: 767px) {
  .nav-recherche__filters-content {
    padding-left: 2rem;
    padding-right: 2rem;
    display: block;
    position: absolute;
    left: 0;
    top: 100%;
    width: 100%;
    z-index: 1;
    min-height: 100rem;
    background-color: #f6f6f6;
    padding-top: 0.5rem;
  }
}

@media (min-width: 768px) {
  .nav-recherche__filters-list {
    display: flex;
  }
  .sticky-nav-is-fixed .nav-recherche__filters-list {
    width: calc(55% - 30px);
  }
}

@media (max-width: 767px) and (orientation: landscape) {
  .nav-recherche__filters-list:before, .nav-recherche__filters-list:after {
    content: " ";
    display: table;
  }
  .nav-recherche__filters-list:after {
    clear: both;
  }
}

.nav-recherche__filters-item {
  padding-top: 0.8rem;
  padding-bottom: 0.8rem;
  position: relative;
}

@media (min-width: 768px) {
  .nav-recherche__filters-item {
    padding-top: 1rem;
    padding-bottom: 1rem;
    padding-right: 1rem;
  }
  .nav-recherche__filters-item + .nav-recherche__filters-item {
    padding-left: 1.3rem;
  }
  .nav-recherche__filters-item + .nav-recherche__filters-item:before {
    content: "";
    position: absolute;
    display: block;
    background-color: #dbdde3;
    width: 1px;
    height: 2.5rem;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
  }
}

@media (max-width: 767px) and (orientation: landscape) {
  .nav-recherche__filters-item {
    width: 50%;
    float: left;
  }
  .nav-recherche__filters-item:nth-of-type(odd) {
    padding-right: 0.5rem;
  }
  .nav-recherche__filters-item:nth-of-type(even) {
    padding-left: 0.5rem;
  }
}

.nav-recherche__filters-label {
  font-weight: bold;
  text-transform: uppercase;
  display: block;
  margin: 0 0 0.5rem 1.2rem;
  font-size: 1.5rem;
}

@media (min-width: 768px) {
  .nav-recherche__filters-label {
    display: none;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .nav-recherche__filters-select > .dropdown-toggle {
    font-size: 1.4rem;
  }
}

.nav-recherche__filters-select.bootstrap-select:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) {
  width: auto;
}

@media (max-width: 991px) {
  .nav-recherche__filters-select.bootstrap-select:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) {
    width: 100%;
  }
}

.nav-recherche__filters-submit {
  margin-left: auto;
  margin-right: auto;
  margin-top: 1rem;
  display: block;
}

@media (min-width: 768px) {
  .nav-recherche__filters-submit {
    display: none;
  }
}

.nav-recherche__display-list {
  display: flex;
  flex-wrap: wrap;
  flex-grow: 1;
  justify-content: center;
  padding-left: 2rem;
  padding-right: 2rem;
}

@media (max-width: 991px) {
  .nav-recherche__display-list {
    justify-content: flex-start;
  }
}

@media (max-width: 767px) {
  .nav-recherche__display-list {
    justify-content: flex-end;
    padding-right: 0;
  }
}

.touch .nav-recherche__display-list {
  display: none;
}

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

.nav-recherche__display-item + .nav-recherche__display-item {
  margin-left: 2rem;
}

@media (min-width: 768px) and (max-width: 991px) {
  .nav-recherche__display-item + .nav-recherche__display-item {
    margin-left: 0;
  }
}

@media (max-width: 991px) {
  .nav-recherche__display-link {
    padding: 0.2rem 0.5rem;
    border-radius: 4px;
  }
}

.display-mode-liste .nav-recherche__display-link.display-liste {
  color: #0082ad;
}

@media (max-width: 991px) {
  .display-mode-liste .nav-recherche__display-link.display-liste {
    background-color: #FFF;
  }
}

.display-mode-carte .nav-recherche__display-link.display-carte {
  color: #0082ad;
}

@media (max-width: 991px) {
  .display-mode-carte .nav-recherche__display-link.display-carte {
    background-color: #FFF;
  }
}

.display-mode-hybride .nav-recherche__display-link.display-hybride {
  color: #0082ad;
}

@media (max-width: 991px) {
  .display-mode-hybride .nav-recherche__display-link.display-hybride {
    background-color: #FFF;
  }
}

@media (max-width: 767px) {
  .nav-recherche__display-link {
    color: #FFF;
  }
}

.nav-recherche__display-icon {
  position: relative;
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: middle;
}

.nav-recherche__display-icon:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.nav-recherche__display-text {
  display: inline-block;
  vertical-align: middle;
  text-transform: uppercase;
  font-weight: 700;
}

@media (min-width: 768px) {
  .box-recherche {
    padding-left: 5.55556rem;
    padding-right: 5.55556rem;
  }
}

.box-recherche__row {
  border-bottom: 1px solid #dbdde3;
}

.box-recherche__col.col-content {
  width: 55%;
}

.display-mode-carte .box-recherche__col.col-content {
  display: none;
}

.box-recherche__col.col-map {
  position: relative;
}

.display-mode-liste .box-recherche__col.col-map {
  display: none;
}

.display-mode-carte .box-recherche__col.col-map {
  width: 100%;
}

.box-recherche__filter-list {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.box-recherche__filter-item {
  display: inline-block;
}

.box-recherche__filter {
  text-transform: uppercase;
  font-weight: 700;
  font-size: 1.4rem;
  padding: 6px 12px;
  letter-spacing: .1rem;
  position: relative;
  position: relative;
}

.box-recherche__filter:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-recherche__filter:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.box-recherche__filter:after {
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -0.5rem;
  font-size: 1rem;
  margin-left: 0.5rem;
  transform: rotate(90deg);
  color: #0082ad;
  width: 1rem;
  height: 1rem;
  vertical-align: middle;
}

.box-recherche__filter.desc:after {
  transform: rotate(-90deg);
}

.box-recherche__list {
  margin-top: 1rem;
  padding: 0 2rem 2rem 2rem;
}

.box-recherche__map-wrapper {
  height: calc(100vh - 8rem);
  width: 100%;
  position: relative;
}

.box-recherche__map-wrapper.affix {
  position: fixed !important;
  top: 5.88889rem;
  transform: translate3d(0, 0, 0);
}

.display-mode-carte .box-recherche__map-wrapper {
  height: calc(75vh);
}

.box-recherche__map {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

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

.gm-style-iw-container {
  text-align: center;
}

.gm-style-iw-container > div:first-child > div {
  border-radius: 0 !important;
}

.gm-style-iw-container > div:first-child > div:first-child {
  border-top-color: transparent !important;
}

.gm-style-iw-container > div:first-child > div:nth-child(2) {
  background-color: #FFF !important;
  box-shadow: 0 0 15px 1px rgba(0, 0, 0, 0.07) !important;
  display: none !important;
}

.gm-style-iw-container > div:first-child > div:nth-child(3) {
  margin-top: 4px !important;
}

.gm-style-iw-container > div:first-child > div:nth-child(3) > div:first-child > div {
  transform: skewX(40deg) !important;
  box-shadow: 0 0 15px 1px rgba(0, 0, 0, 0.07) !important;
}

.gm-style-iw-container > div:first-child > div:nth-child(3) > div:nth-child(2) > div {
  transform: skewX(-40deg) !important;
  box-shadow: 0 0 15px 1px rgba(0, 0, 0, 0.07) !important;
}

.gm-style-iw-container > div:first-child > div:nth-child(4) {
  background-color: red !important;
  display: none !important;
}

.gm-style-iw-container .gm-style-iw {
  bottom: 0 !important;
  left: 0 !important;
  background-color: #FFF !important;
  margin-left: 15px !important;
  padding: 20px 0 10px 0 !important;
  top: auto !important;
}

.gm-style-iw-container .gm-style-iw > div:first-child {
  overflow: visible !important;
}

.gm-style-iw-container .gm-style-iw + div {
  top: 22px !important;
  right: 22px !important;
}

.gm-style-iw-container .gm-style img {
  max-width: 100%;
}

.box-infos-pays {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-infos-pays__text {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 4rem;
  max-width: 668px;
  line-height: 1.5;
}

.box-infos-pays__list {
  margin-left: auto;
  margin-right: auto;
  max-width: 80rem;
  text-align: center;
}

.box-infos-pays__list:before, .box-infos-pays__list:after {
  content: " ";
  display: table;
}

.box-infos-pays__list:after {
  clear: both;
}

.box-infos-pays__item {
  display: block;
  width: 33.333%;
  float: left;
}

@media (max-width: 767px) {
  .box-infos-pays__item {
    text-align: left;
    display: block;
    width: 100%;
    border-top: 1px solid #424242;
  }
}

.box-info-pays__link {
  display: inline-block;
}

@media (max-width: 767px) {
  .box-info-pays__link {
    display: table;
    table-layout: fixed;
    width: 100%;
  }
}

.box-info-pays__icon {
  color: #ff4d42;
  font-size: 6rem;
  width: 6rem;
  height: 6rem;
  display: inline-block;
  position: relative;
}

.box-info-pays__icon:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media (max-width: 767px) {
  .box-info-pays__icon {
    display: table-cell;
    vertical-align: middle;
    font-size: 4rem;
  }
}

.box-info-pays__title {
  font-weight: 700;
  font-size: 1.8rem;
  margin-top: 0;
  text-transform: uppercase;
}

@media (max-width: 767px) {
  .box-info-pays__title {
    display: table-cell;
    vertical-align: middle;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    width: 20rem;
  }
}

.box-info-pays__text {
  font-weight: 700;
  font-size: 1.8rem;
  margin-top: 0;
  text-transform: uppercase;
  color: #ff4d42;
}

@media (max-width: 767px) {
  .box-info-pays__text {
    display: table-cell;
    vertical-align: middle;
  }
}

.box-quand-partir {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-quand-partir__content {
  background-size: cover;
  background-position: 50% 50%;
  padding: 4rem;
  text-align: center;
}

.box-quand-partir__list {
  background-color: #FFF;
  display: inline-block;
  padding: 1rem 2rem;
}

.box-mois {
  text-align: center;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

@media (min-width: 992px) {
  .box-mois {
    padding: 2rem;
  }
}

.box-mois > .icon-star {
  color: #ff4d42;
}

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

.box-bonnes-raisons {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media (max-width: 480px) {
  .box-bonnes-raisons__list {
    margin-left: 5.5rem;
    margin-right: 5.5rem;
  }
}

@media (min-width: 480px) {
  .box-bonnes-raisons__list {
    margin-left: 6em;
    margin-right: 6em;
  }
}

.box-bonne-raison {
  text-align: center;
  padding-left: 3rem;
  padding-right: 3rem;
}

.box-bonne-raison__index {
  color: #ff4d42;
  font-size: 6rem;
}

.box-utile {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-utile__content {
  background-size: cover;
  background-position: 50% 50%;
  padding: 6rem 4rem;
}

@media (max-width: 767px) {
  .box-utile__content {
    padding-top: 0rem;
    padding-bottom: 0rem;
  }
}

@media (min-width: 768px) {
  .box-utile__row {
    display: flex;
  }
}

.box-utile-item {
  margin-left: 10rem;
  margin-right: 10rem;
  background-color: #FFF;
  padding: 2rem;
  box-shadow: 10px 10px 0px 0px #ff4d42;
  height: 100%;
}

@media (max-width: 991px) {
  .box-utile-item {
    margin-left: 4rem;
    margin-right: 4rem;
  }
}

@media (max-width: 767px) {
  .box-utile-item {
    margin: 6rem 0;
  }
}

.box-utile-item__title {
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 2rem;
  font-size: 2rem;
}

.box-utile-item__list > li {
  margin-top: 0.5rem;
}

.box-utile-item__list > li > a {
  font-weight: 500;
  position: relative;
  padding-left: 1.5rem;
}

.box-utile-item__list > li > a:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-utile-item__list > li > a:before {
  color: #ff4d42;
  font-size: 1rem;
  position: absolute;
  left: 0;
  top: 0.4rem;
}

.box-utile-item__list > li > a:hover {
  color: #ff4d42;
  text-decoration: underline;
}

.box-a-decouvrir {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media (max-width: 767px) {
  .box-a-decouvrir .row > * {
    margin-top: 4rem;
  }
  .box-a-decouvrir .row > *:first-child {
    margin-top: 0;
  }
}

.box-a-decouvrir-item {
  background-size: cover;
  background-position: 50% 50%;
  display: block;
  height: 22rem;
  text-align: center;
}

.box-a-decouvrir-item:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  margin-right: -0.25em;
  /* space width */
}

.box-a-decouvrir-item__title {
  background-color: #FFF;
  display: inline-block;
  text-transform: uppercase;
  padding: 1rem 6rem;
  font-weight: 700;
  vertical-align: middle;
}

.box-voyages-pays {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-articles {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-articles__item {
  margin-left: auto;
  margin-right: auto;
  max-width: 668px;
}

.box-articles__item + .box-articles__item {
  margin-top: 4rem;
}

.box-article__number {
  font-weight: 700;
  font-size: 3rem;
  text-align: center;
  color: #0082ad;
}

.box-article__title {
  font-weight: 400;
  font-size: 3rem;
  margin-top: 0;
  text-transform: uppercase;
  text-align: center;
  margin-bottom: 2rem;
}

.box-article__text {
  text-align: justify;
  line-height: 1.5;
}

.box-article__text h2 {
  font-size: medium;
  font-weight: bold;
  margin-top: 2rem;
}

.box-intro-conseillers {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-intro-conseillers__chapo {
  margin-top: 4rem;
  margin-bottom: 4rem;
  margin-left: auto;
  margin-right: auto;
  max-width: 70rem;
  font-size: 2.5rem;
  text-align: center;
}

.box-intro-conseillers__text {
  margin-left: auto;
  margin-right: auto;
  margin-top: 4rem;
  max-width: 70rem;
  line-height: 1.5;
}

.box-intro-conseillers__text > p + p {
  margin-top: 2rem;
}

.box-intro-conseillers__visual {
  margin-top: 4rem;
  margin-bottom: 4rem;
  margin-left: auto;
  margin-right: auto;
  display: block;
  width: 100%;
}

.box-conseillers {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

.box-conseillers__list {
  margin-left: -1.7rem;
  margin-right: -1.7rem;
  display: none;
}

@media (min-width: 768px) {
  .box-conseillers__list {
    margin-left: 6rem;
    margin-right: 6rem;
  }
}

@media (min-width: 768px) {
  .box-conseillers .slick-arrow {
    top: 25%;
  }
}

@media (min-width: 992px) {
  .box-conseillers .slick-arrow {
    top: 30%;
  }
}

@media (min-width: 1440px) {
  .box-conseillers .slick-arrow {
    top: 35%;
  }
}

.box-conseillers-item {
  padding-left: 3rem;
  padding-right: 3rem;
}

.box-conseillers-item__visual-container {
  position: relative;
  margin-bottom: 1rem;
}

.box-conseillers-item__visual-container:after {
  content: "";
  display: block;
  padding-bottom: 100%;
}

.box-conseillers-item__visual-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

.box-conseillers-item__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: relative;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-conseillers-item__chapo {
  font-size: 1.3rem;
  text-transform: uppercase;
  font-weight: 400;
  padding-left: 1.5rem;
  position: relative;
}

.box-conseillers-item__chapo:before {
  content: "";
  width: 8px;
  height: 1px;
  background-color: #000;
  display: block;
  position: absolute;
  left: 0;
  top: 7px;
}

.box-conseillers-item__title {
  font-size: 2rem;
  margin-bottom: 1rem;
  font-weight: 700;
}

.box-conseillers-item__text {
  margin-bottom: 1rem;
}

.box-interviews {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

.box-interview {
  margin-left: auto;
  margin-right: auto;
  max-width: 100rem;
}

.box-interview + .box-interview {
  margin-top: 8rem;
}

@media (min-width: 992px) {
  .box-interview__row {
    margin-left: -30px;
    margin-right: -30px;
  }
  .box-interview__row > * {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media (min-width: 1440px) {
  .box-interview__row {
    margin-left: -50px;
    margin-right: -50px;
  }
  .box-interview__row > * {
    padding-left: 50px;
    padding-right: 50px;
  }
}

@media (max-width: 767px) {
  .box-interview__visual {
    margin-bottom: 2rem;
  }
}

.box-interview__title {
  text-transform: uppercase;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.5;
  margin-bottom: 4rem;
}

.box-interview__title span {
  color: #0082ad;
}

.box-interview__question {
  font-weight: 700;
}

.box-interview__reponse {
  line-height: 1.5;
}

.box-interview__pseudo-link {
  color: #0082ad;
  font-weight: 700;
  text-decoration: underline;
}

.box-interview-detail {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-interview-detail__header {
  margin-left: auto;
  margin-right: auto;
  max-width: 70rem;
  display: table;
  width: 100%;
  margin-bottom: 2rem;
}

.box-interview-detail__header > * {
  display: table-cell;
  vertical-align: middle;
}

.box-interview-detail__header-content {
  padding-right: 2rem;
}

.box-interview-detail__header-visual {
  width: 16rem;
}

.box-interview-detail__visual {
  border-radius: 50%;
}

.box-interview-detail__header-title {
  font-size: 4rem;
}

.box-interview-detail__header-subtitle {
  color: #0082ad;
  display: block;
  font-weight: 400;
  font-size: 2.3rem;
}

.box-interview-detail__list {
  margin-left: auto;
  margin-right: auto;
  max-width: 70rem;
  margin-bottom: 6rem;
}

.box-interview-detail__title {
  text-transform: uppercase;
  font-size: 2.4rem;
  font-weight: 700;
  margin-bottom: 3rem;
}

.box-interview-detail__question {
  font-weight: 700;
  font-size: inherit;
  margin-bottom: 0.3rem;
}

.box-interview-detail__reponse {
  margin-top: 0;
  margin-bottom: 3rem;
  line-height: 1.5;
}

.box-interview-detail__coup-de-coeur {
  margin-left: auto;
  margin-right: auto;
  max-width: 70rem;
}

.box-interview-detail__subtitle {
  text-transform: uppercase;
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 3rem;
}

.box-avis {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

.box-avis__search {
  text-align: center;
  margin-bottom: 4rem;
}

.box-avis__pager {
  text-align: center;
  margin-top: 4rem;
}

.box-avis-item {
  margin-left: auto;
  margin-right: auto;
  max-width: 100rem;
}

.box-avis-item + .box-avis-item {
  margin-top: 8rem;
}

@media (min-width: 992px) {
  .box-avis-item__row {
    margin-left: -30px;
    margin-right: -30px;
  }
  .box-avis-item__row > * {
    padding-left: 30px;
    padding-right: 30px;
  }
}

.box-avis-item__visual-container {
  position: relative;
  margin-bottom: 1rem;
}

.box-avis-item__visual-container:after {
  content: "";
  display: block;
  padding-bottom: 66.66667%;
}

.box-avis-item__visual-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

.box-avis-item__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  margin-bottom: 2rem;
}

.box-avis-item__notation {
  font-size: 2.4rem;
  color: #0082ad;
  margin-bottom: 1rem;
}

.box-avis-item__pays {
  font-weight: 500;
  font-size: 3rem;
}

.box-avis-item__client {
  font-size: 1.8rem;
  margin-bottom: 2rem;
}

.box-avis-item__date {
  text-transform: uppercase;
  font-weight: 500;
  color: #0082ad;
}

.box-avis-item__text {
  line-height: 1.5;
  margin-top: 0;
}

.box-avis-item__pseudo-link {
  color: #0082ad;
  font-weight: 500;
  text-decoration: underline;
  text-transform: uppercase;
}

.box-envies-moment {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-envies-moment-item {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 3rem;
  text-align: center;
}

.box-envies-moment-item__visual {
  margin-bottom: 1rem;
}

.box-envies-moment-item__title {
  font-size: 2rem;
  font-weight: 500;
}

.box-envies-theme {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-envies-theme-item {
  display: block;
  background-color: #dbdde3;
  position: relative;
  color: #FFF;
  margin-bottom: 3rem;
  text-align: center;
}

.box-envies-theme-item:after {
  content: "";
  display: block;
  padding-bottom: 100%;
}

.box-envies-theme-item__inner {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.box-envies-theme-item__inner:before {
  content: "";
  background-color: #000;
  opacity: .15;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
}

.theme .box-envies-theme-item__inner {
  top: 2.5rem;
  left: 2.5rem;
  right: 2.5rem;
  bottom: 2.5rem;
}

.theme .box-envies-theme-item__inner:before {
  opacity: 0;
}

@media (max-width: 480px) {
  .theme .box-envies-theme-item__inner {
    top: 1rem;
    left: 1rem;
    right: 1rem;
    bottom: 1rem;
  }
}

.box-envies-theme-item__content {
  padding-left: 1rem;
  padding-right: 1rem;
  position: absolute;
  width: 100%;
  z-index: 1;
  top: calc(50%);
  transform: translateY(-50%);
}

.theme .box-envies-theme-item__content {
  background-color: #FFF;
  color: #000;
  transform: none;
  top: 0;
  bottom: 0;
  text-align: left;
  padding: 3rem;
}

@media (max-width: 480px) {
  .theme .box-envies-theme-item__content {
    padding: 1rem;
  }
}

.box-envies-theme-item__subtitle {
  text-transform: uppercase;
  font-size: 2rem;
  margin-bottom: 0.5rem;
}

@media (max-width: 991px) {
  .box-envies-theme-item__subtitle {
    font-size: 1.4rem;
  }
}

@media (min-width: 480px) and (max-width: 767px) {
  .box-envies-theme-item__subtitle {
    font-size: 1.6rem;
  }
}

.box-envies-theme-item__title {
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.1;
}

@media (max-width: 480px) {
  .box-envies-theme-item__title {
    font-size: 2rem;
  }
}

.theme .box-envies-theme-item__title {
  font-weight: 700;
  font-size: 3.6rem;
}

@media (max-width: 991px) {
  .theme .box-envies-theme-item__title {
    font-size: 2rem;
  }
}

@media (min-width: 480px) and (max-width: 767px) {
  .theme .box-envies-theme-item__title {
    font-size: 3rem;
  }
}

.box-envies-theme-item__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-envies-theme-item.theme {
  background-size: cover;
  background-position: 50% 50%;
  background-image: url(../images/background/quand-partir/702x360.jpg);
}

.box-deconnecter {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-deconnecter__inner {
  background-color: #feac94;
  position: relative;
  display: table;
  width: 100%;
  height: 50rem;
  table-layout: fixed;
}

.carousel .box-deconnecter__inner {
  background-color: #c6d8c1;
}

@media (max-width: 767px) {
  .box-deconnecter__inner {
    display: block;
    height: auto;
  }
}

.box-deconnecter__header {
  width: 50rem;
  padding: 6rem;
  display: table-cell;
  vertical-align: middle;
  color: #FFF;
  position: relative;
}

.carousel .box-deconnecter__header:before {
  content: "";
  width: 0;
  height: 0;
  border-top: 3rem solid transparent;
  border-bottom: 3rem solid transparent;
  border-left: 3rem solid #c6d8c1;
  position: absolute;
  top: 50%;
  left: 100%;
  z-index: 1;
  transform: translateY(-50%);
}

@media (max-width: 767px) {
  .carousel .box-deconnecter__header:before {
    display: none;
  }
}

@media (max-width: 991px) {
  .box-deconnecter__header {
    padding: 4rem;
    width: 40%;
  }
}

@media (max-width: 767px) {
  .box-deconnecter__header {
    display: block;
    padding: 3rem;
    width: auto;
  }
}

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

.box-deconnecter__content {
  display: table-cell;
  vertical-align: top;
  position: relative;
}

@media (max-width: 767px) {
  .box-deconnecter__content {
    display: block;
  }
}

.box-deconnecter__list {
  height: 100%;
}

@media (min-width: 768px) {
  .box-deconnecter__list, .box-deconnecter__list.slick-slider {
    position: absolute;
    width: 100%;
  }
}

.box-deconnecter__list .slick-list,
.box-deconnecter__list .slick-track {
  height: 100%;
}

.box-deconnecter__list-visual {
  height: 100%;
}

.box-deconnecter__title {
  font-size: 3.4rem;
  font-weight: 700;
  margin-bottom: 2rem;
}

.box-deconnecter__text {
  line-height: 1.5;
  font-size: 1.6rem;
}

.box-deconnecter .slick-dots {
  bottom: 2rem;
}

.box-deconnecter-item {
  display: block;
  position: relative;
  height: 100%;
}

.box-deconnecter-item__content {
  height: 100%;
  color: #FFF;
  padding: 6rem;
  position: relative;
}

.carousel .box-deconnecter-item__content:before {
  content: "";
  background-color: #000;
  opacity: .15;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

@media (max-width: 767px) {
  .box-deconnecter-item__content {
    padding: 3rem;
    height: 25rem;
  }
}

.box-deconnecter-item__title {
  font-size: 4rem;
  position: absolute;
  z-index: 1;
  text-transform: uppercase;
  line-height: 1;
}

.box-deconnecter-item__title strong {
  font-weight: 700;
}

.box-deconnecter-item__visual {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  overflow: hidden;
  object-fit: cover;
  font-family: "object-fit: cover";
}

.box-destinations-favorites {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-destinations-favorites-item {
  display: block;
  background-color: #dbdde3;
  position: relative;
  color: #FFF;
  margin-bottom: 3rem;
  text-align: center;
}

.box-destinations-favorites-item:after {
  content: "";
  display: block;
  padding-bottom: 66.66%;
}

.box-destinations-favorites-item__inner {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.box-destinations-favorites-item__inner:before {
  content: "";
  background-color: #000;
  opacity: .15;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
}

.box-destinations-favorites-item__content {
  padding-left: 1rem;
  padding-right: 1rem;
  position: absolute;
  width: 100%;
  z-index: 1;
  top: calc(50%);
  transform: translateY(-50%);
}

.box-destinations-favorites-item__title {
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.1;
}

@media (max-width: 480px) {
  .box-destinations-favorites-item__title {
    font-size: 2rem;
  }
}

.box-destinations-favorites-item__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-saisons {
  padding-top: 4rem;
  padding-bottom: 4rem;
  margin-left: 0px;
  margin-right: 0px;
}

.box-saisons > * {
  padding-left: 0px;
  padding-right: 0px;
}

.box-saisons-item {
  display: block;
  background-color: #dbdde3;
  position: relative;
  color: #FFF;
  text-align: center;
}

.box-saisons-item:after {
  content: "";
  display: block;
  padding-bottom: 100%;
}

.box-saisons-item__inner {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.box-saisons-item__inner:before {
  content: "";
  background-color: #000;
  opacity: .15;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
}

.box-saisons-item__content {
  padding-left: 1rem;
  padding-right: 1rem;
  position: absolute;
  width: 100%;
  z-index: 1;
  top: calc(50%);
  transform: translateY(-50%);
}

.box-saisons-item__title {
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.1;
}

@media (min-width: 768px) and (max-width: 991px) {
  .box-saisons-item__title {
    font-size: 3.2rem;
  }
}

@media (max-width: 480px) {
  .box-saisons-item__title {
    font-size: 2.6rem;
  }
}

.box-saisons-item__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-onpartou {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-onpartou__link {
  display: block;
}

.box-onpartou__inner {
  position: relative;
  padding: 5rem;
}

@media (max-width: 480px) {
  .box-onpartou__inner {
    padding: 2rem;
  }
}

.box-onpartou__visual {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  overflow: hidden;
  object-fit: cover;
  font-family: "object-fit: cover";
}

.box-onpartou__content {
  position: relative;
  z-index: 1;
  background-color: #FFF;
  text-align: center;
  padding: 4rem;
  max-width: 32rem;
}

@media (max-width: 480px) {
  .box-onpartou__content {
    padding: 2rem;
  }
}

.box-onpartou__title {
  font-size: 4.4rem;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 3rem;
  /*
    @media (min-width: 375px) {
      font-size:2.5rem;
    }
    @media (min-width: $screen-xs) {
      font-size:2.5rem;
    }
    @media (min-width: $screen-md) {
      font-size:3.6rem;
    }
    */
}

.box-onpartou__text {
  font-size: 1.6rem;
  margin-bottom: 3rem;
  /*
    @media (max-width: $screen-xs-max) {
      max-width:60%;
    }
    @media (min-width: 375px) {
      font-size:1.3rem;
    }
    */
}

.box-onpartou__btn {
  width: 100%;
}

.box-idees-circuit {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-top-destinations {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

@media (min-width: 768px) {
  .no-touch .box-top-destinations__content {
    width: 41%;
    float: left;
    position: relative;
  }
}

.box-top-destinations__visual {
  border: 1.2rem solid #FFF;
  position: absolute;
  top: 0;
  left: calc(100% + 15px);
  z-index: 1;
  max-width: 45.2rem;
  display: none;
}

@media (min-width: 768px) {
  .no-touch a.active .box-top-destinations__visual {
    display: block;
  }
}

@media (min-width: 992px) {
  .box-top-destinations__visual {
    max-width: 59.5rem;
  }
}

@media (min-width: 1440px) {
  .box-top-destinations__visual {
    max-width: 68.7rem;
  }
}

.box-top-destinations__visual:before {
  content: "";
  height: 100%;
}

.box-top-destinations__title {
  margin-bottom: 2rem;
}

.box-top-destinations__list {
  column-count: 4;
}

@media (max-width: 767px) {
  .box-top-destinations__list {
    column-count: 2;
  }
}

.no-touch .box-top-destinations__list {
  column-count: 2;
}

.box-top-destinations__list > li {
  margin-bottom: 1rem;
}

.box-top-destinations__list > li > a {
  text-transform: uppercase;
}

.no-touch .box-top-destinations__list > li > a.active {
  color: #ff4d42;
}

.box-brochure {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

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

.box-brochure__list {
  box-shadow: 5px 5px 5px 0px rgba(0, 0, 0, 0.2);
}

.box-brochure__list.slick-dotted.slick-slider {
  margin-bottom: 6rem;
}

.box-brochure__list .slick-dots {
  bottom: -4rem;
}

@media (min-width: 1440px) {
  .box-brochure__content {
    padding-top: 6rem;
  }
}

.box-brochure__text {
  margin-left: auto;
  margin-right: auto;
  max-width: 40rem;
}

.box-dix-bonnes-raisons {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-dix-bonnes-raisons .header-box > .subtitle {
  color: #ff4d42;
}

.box-dix-bonnes-raisons__inner {
  background-size: cover;
  background-position: 50% 50%;
  padding: 4rem 1rem;
  text-align: center;
}

.box-dix-bonnes-raisons__content {
  margin-left: auto;
  margin-right: auto;
  background-color: #FFF;
  padding: 4rem 4rem 2rem 4rem;
  display: inline-block;
  text-align: left;
  max-width: 70rem;
}

@media (max-width: 480px) {
  .box-dix-bonnes-raisons__content {
    padding: 3rem 3rem 1rem 3rem;
  }
}

@media (min-width: 768px) {
  .box-dix-bonnes-raisons__list {
    column-count: 2;
    column-gap: 4rem;
  }
}

.box-dix-bonnes-raisons__list > li {
  margin-bottom: 2rem;
}

.box-services-plus {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-services-plus .header-box > .subtitle {
  color: #ff4d42;
}

.box-services-plus__list {
  padding-left: 2rem;
  padding-right: 2rem;
  text-align: center;
}

@media (max-width: 767px) {
  .box-services-plus__item {
    margin-top: 3rem;
  }
}

.box-services-plus__row {
  margin-left: -30px;
  margin-right: -30px;
}

.box-services-plus__row > * {
  padding-left: 30px;
  padding-right: 30px;
}

.box-service-plus__link {
  display: inline-block;
}

.box-service-plus__icon {
  color: #ff4d42;
  font-size: 6rem;
  width: 6rem;
  height: 6rem;
  display: inline-block;
  position: relative;
}

.box-service-plus__icon:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.box-service-plus__title {
  font-weight: 700;
  font-size: 1.8rem;
  margin-top: 0;
  text-transform: uppercase;
}

.box-service-plus__text {
  line-height: 1.5;
}

.box-offres-et-attentions {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #fff6f5;
}

.box-offres-et-attentions .header-box > .subtitle {
  color: #ff4d42;
}

.box-offres-et-attentions-item {
  margin-left: auto;
  margin-right: auto;
  max-width: 100rem;
  text-align: center;
}

.box-offres-et-attentions-item + .box-offres-et-attentions-item {
  margin-top: 4rem;
}

@media (min-width: 768px) {
  .box-offres-et-attentions-item__row {
    display: flex;
  }
}

@media (max-width: 767px) {
  .box-offres-et-attentions-item__visual {
    margin-bottom: 2rem;
  }
}

@media (min-width: 768px) {
  .box-offres-et-attentions-item__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    padding: 4rem;
  }
}

.box-offres-et-attentions-item__title {
  text-transform: uppercase;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.5;
  margin-bottom: 2rem;
  letter-spacing: 0.2rem;
}

@media (min-width: 768px) {
  .box-offres-et-attentions-item__title {
    margin-bottom: 4rem;
  }
}

.box-offres-et-attentions-item__text {
  line-height: 1.5;
}

.box-presentation-cheque {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

@media (min-width: 768px) {
  .box-presentation-cheque__row {
    display: flex;
  }
}

@media (max-width: 767px) {
  .box-presentation-cheque__col + .box-presentation-cheque__col {
    margin-top: 4rem;
  }
}

.box-presentation-cheque-item {
  background-color: #FFF;
  height: 100%;
  position: relative;
}

.box-presentation-cheque-item__inner {
  padding: 2rem 3rem 3rem 3rem;
}

@media (min-width: 768px) {
  .box-presentation-cheque-item__inner {
    padding-bottom: 9rem;
  }
}

.box-presentation-cheque-item__title {
  font-size: 3rem;
  color: #0082ad;
  font-weight: bold;
  margin-bottom: 2rem;
}

.box-presentation-cheque-item__content .title {
  font-weight: bold;
  margin-top: 2rem;
  font-size: 1.8rem;
}

.box-presentation-cheque-item__content p {
  margin-top: 0;
}

.box-presentation-cheque-item__content .link {
  color: #0082ad;
  font-weight: 400;
  display: inline-block;
  margin-top: 2rem;
}

.box-presentation-cheque-item__btn {
  width: 100%;
}

@media (min-width: 768px) {
  .box-presentation-cheque-item__btn {
    position: absolute;
    bottom: 0;
    left: 0;
  }
}

.box-comment-ca-marche {
  background-size: cover;
  background-position: 50% 50%;
  padding: 10rem 1rem;
  text-align: center;
}

@media (max-width: 767px) {
  .box-comment-ca-marche {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}

.box-comment-ca-marche__content {
  margin-left: auto;
  margin-right: auto;
  background-color: #FFF;
  padding: 5rem;
  display: inline-block;
  text-align: center;
  max-width: 70rem;
}

@media (max-width: 480px) {
  .box-comment-ca-marche__content {
    padding: 3rem 3rem 1rem 3rem;
  }
}

.box-comment-ca-marche__text {
  line-height: 1.5;
  margin-bottom: 4rem;
}

.box-comment-ca-marche__link {
  color: #0082ad;
  font-weight: 400;
}

.box-cheques-tunnel {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-cheques-tunnel__inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 80rem;
}

.box-cheques-tunnel__subtitle {
  font-size: 3rem;
  color: #0082ad;
  margin-bottom: 3rem;
  line-height: 1.1;
}

@media (max-width: 767px) {
  .box-cheques-tunnel__subtitle {
    font-size: 2.8rem;
  }
}

.box-cheques-tunnel__recap {
  max-width: 56rem;
}

.box-cheques-tunnel__cb-text {
  margin-bottom: 4rem;
  font-size: 2rem;
}

.box-cheques-tunnel__cb-list {
  margin-left: auto;
  margin-right: auto;
  max-width: 60rem;
  text-align: center;
}

.box-cheques-tunnel__cb-list img {
  width: 12rem;
}

.box-cheques-tunnel__cb-row {
  margin-left: -10px;
  margin-right: -10px;
}

.box-cheques-tunnel__cb-row > * {
  padding-left: 10px;
  padding-right: 10px;
}

.ligne-recap {
  margin-bottom: 4rem;
}

.ligne-recap__header {
  display: table;
  table-layout: fixed;
  width: 100%;
  border-bottom: 1px solid #dbdde3;
}

.ligne-recap__label {
  display: table-cell;
  font-weight: 700;
  font-size: 2rem;
  vertical-align: bottom;
}

.ligne-recap__prix {
  display: table-cell;
  font-size: 2rem;
  text-align: right;
  width: 8rem;
  vertical-align: bottom;
}

.ligne-recap__content {
  margin-top: 2rem;
  font-size: 2rem;
}

.ligne-recap__content .link {
  display: block;
  font-size: 1.6rem;
  margin-top: 1rem;
}

.box-ddv {
  margin-top: 3rem;
}

.page-ddv-light .box-ddv {
  margin-top: 1rem;
  margin-bottom: 4rem;
}

.page-ddv-light .box-ddv .actions {
  margin-top: 2rem;
}

@media (min-width: 768px) {
  .page-ddv-pays .box-ddv {
    margin-top: 0;
    position: relative;
    top: -6rem;
  }
}

@media (min-width: 992px) {
  .page-ddv-pays .box-ddv {
    top: -15rem;
  }
}

.box-ddv__inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 80rem;
  background-color: #FFF;
}

.page-ddv-light .box-ddv__inner {
  max-width: 100rem;
}

@media (min-width: 1440px) {
  .box-ddv__inner {
    max-width: 100rem;
  }
}

@media (min-width: 768px) {
  .box-ddv__inner {
    padding: 2rem;
  }
  .page-ddv-confirmation .box-ddv__inner {
    padding: 2rem 6rem 6rem 6rem;
  }
}

.box-ddv__subtitle {
  font-size: 3rem;
  color: #0082ad;
  margin-bottom: 3rem;
  line-height: 1.1;
}

@media (max-width: 767px) {
  .box-ddv__subtitle {
    font-size: 2.8rem;
  }
}

.box-ddv__text {
  margin-bottom: 2rem;
}

.box-ddv__obligatoire {
  font-size: 1.2rem;
  text-align: right;
  margin-top: 2rem;
  margin-bottom: 4rem;
}

.page-ddv-light .box-ddv__obligatoire {
  margin-bottom: 2rem;
}

@media (min-width: 768px) {
  .page-ddv-light .box-ddv__obligatoire {
    margin-top: -2rem;
  }
}

.box-ddv__mentions {
  font-size: 1.2rem;
}

.page-ddv-light .box-ddv__mentions {
  font-size: 1rem;
}

.box-ddv-mea {
  position: relative;
  text-align: center;
  color: #FFF;
  display: block;
  margin-bottom: 4rem;
}

.box-ddv-mea:before {
  content: "";
  background-color: #000;
  opacity: .2;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-ddv-mea__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  width: 100%;
  height: 36rem;
}

.box-ddv-mea__content {
  position: absolute;
  width: 100%;
  top: 50%;
  left: 0;
  z-index: 2;
  transform: translateY(-30%);
  padding-left: 2rem;
  padding-right: 2rem;
}

.box-ddv-mea__title {
  font-size: 2.5rem;
  letter-spacing: .5rem;
  font-weight: 500;
  text-transform: uppercase;
  color: #FFF;
  margin-bottom: 1.5rem;
}

@media (max-width: 480px) {
  .box-ddv-mea__title {
    font-size: 2rem;
  }
}

.box-ddv-mea__subtitle-alpha {
  font-family: "Spectral", serif;
  font-style: italic;
  font-weight: 300;
  color: #FFF;
  letter-spacing: .2rem;
  font-size: 2.2rem;
  margin-bottom: 2rem;
  text-transform: none;
  display: block;
}

@media (max-width: 767px) {
  .box-ddv-mea__subtitle-alpha {
    font-size: 2rem;
  }
}

@media (min-width: 992px) {
  .box-ddv-mea__subtitle-alpha {
    font-size: 2.8rem;
  }
}

.ddv-confirmation-header {
  text-align: center;
  margin-bottom: 2rem;
}

.ddv-confirmation-title {
  font-size: 4rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 2rem;
}

.ddv-confirmation-title__icon {
  position: relative;
  font-size: 6rem;
  height: 7rem;
}

.ddv-confirmation-title__icon:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.box-pdf {
  text-align: right;
  margin-bottom: 4rem;
}

.page-ddv-light .box-pdf {
  margin-bottom: 2rem;
}

.box-pdf__content {
  display: inline-block;
  vertical-align: bottom;
}

.box-pdf__pseudo-link {
  font-weight: 700;
  font-size: 1.8rem;
}

.box-pdf__pseudo-link:hover {
  text-decoration: underline;
}

.box-pdf__format {
  font-size: 1.2rem;
}

.box-pdf__visual {
  display: inline-block;
  width: 7rem;
  vertical-align: bottom;
}

.box-nos-agences {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-nos-agences__row {
  margin-left: -50px;
  margin-right: -50px;
}

.box-nos-agences__row > * {
  padding-left: 50px;
  padding-right: 50px;
}

@media (max-width: 1439px) {
  .box-nos-agences__row {
    margin-left: -30px;
    margin-right: -30px;
  }
  .box-nos-agences__row > * {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media (max-width: 991px) {
  .box-nos-agences__row {
    margin-left: -15px;
    margin-right: -15px;
  }
  .box-nos-agences__row > * {
    padding-left: 15px;
    padding-right: 15px;
  }
}

.box-nos-agences-item {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 3rem;
  text-align: center;
}

.box-nos-agences-item__visual {
  margin-bottom: 1rem;
}

.box-nos-agences-item__title {
  font-size: 1.7rem;
  font-weight: 700;
  text-transform: uppercase;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  position: relative;
}

.box-nos-agences-item__title:before {
  content: "";
  display: block;
  width: 1rem;
  position: absolute;
  height: 2px;
  background-color: #000;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
}

.box-service-client {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-service-client__inner {
  padding: 4rem;
  min-height: 40rem;
  background-size: cover;
  background-position: 0 0;
}

.box-service-client__title {
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 2rem;
}

@media (min-width: 992px) {
  .box-service-client__title {
    font-size: 3.6rem;
  }
}

.box-service-client__text {
  width: 35rem;
  margin-bottom: 3rem;
}

@media (max-width: 767px) {
  .box-service-client__text {
    max-width: 100%;
  }
}

.box-service-client__btn {
  font-weight: 700;
  display: inline-block;
  font-weight: 700;
  text-align: center;
  vertical-align: middle;
  text-transform: uppercase;
  padding: 2rem 3rem;
  border: 1px solid #000;
  text-decoration: none;
}

@media (max-width: 480px) {
  .box-service-client__btn {
    display: block;
    width: 100%;
  }
}

.box-service-client__btn.full-width {
  width: 100%;
}

.box-service-client__btn.smaller {
  padding-top: 0;
  padding-bottom: 0;
  height: 5rem;
  line-height: 5rem;
}

@media (max-width: 767px) {
  .box-service-client__btn {
    font-size: 1.4rem;
  }
}

.box-presse-et-technique {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media (max-width: 767px) {
  .box-presse-et-technique .row > * {
    margin-top: 4rem;
  }
  .box-presse-et-technique .row > *:first-child {
    margin-top: 0;
  }
}

.box-presse-et-technique-item {
  background-size: cover;
  background-position: 50% 50%;
  display: block;
  height: 22rem;
  text-align: center;
}

@media (min-width: 1440px) {
  .box-presse-et-technique-item {
    height: 28rem;
  }
}

.box-presse-et-technique-item:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  margin-right: -0.50em;
  /* space width */
}

.box-presse-et-technique-item__title {
  background-color: #FFF;
  display: inline-block;
  text-transform: uppercase;
  padding: 1rem 6rem;
  font-weight: 700;
  vertical-align: middle;
}

.box-presse-et-technique-item__link {
  text-decoration: underline;
  text-transform: uppercase;
}

.box-agence-acces {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-agence-acces__iframe {
  width: 100%;
  border: none;
}

.box-agence-visite {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-agence-visite__iframe {
  width: 100%;
  border: none;
}

.box-agence-evenements {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

.box-agence-evenements-item {
  margin-left: auto;
  margin-right: auto;
  max-width: 100rem;
}

.box-agence-evenements-item + .box-agence-evenements-item {
  margin-top: 8rem;
}

@media (min-width: 992px) {
  .box-agence-evenements-item__row {
    margin-left: -30px;
    margin-right: -30px;
  }
  .box-agence-evenements-item__row > * {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media (max-width: 767px) {
  .box-agence-evenements-item__visual {
    margin-bottom: 2rem;
  }
}

.box-agence-evenements-item__theme {
  text-transform: uppercase;
  font-size: 1.8rem;
  margin-bottom: 1rem;
}

.box-agence-evenements-item__titre {
  font-size: 2.6rem;
  font-weight: 700;
}

.box-agence-evenements-item__infos {
  text-transform: uppercase;
  font-weight: 500;
  color: #0082ad;
  margin-bottom: 1.5rem;
}

.box-agence-evenements-item__text {
  line-height: 1.5;
  margin-top: 0;
}

.box-presentation-mariage {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

@media (min-width: 768px) {
  .box-presentation-mariage__row {
    display: flex;
  }
}

@media (max-width: 767px) {
  .box-presentation-mariage__col + .box-presentation-mariage__col {
    margin-top: 4rem;
  }
}

.box-presentation-mariage-item {
  background-color: #FFF;
  height: 100%;
  position: relative;
}

.box-presentation-mariage-item__inner {
  padding: 2rem 3rem 3rem 3rem;
}

@media (min-width: 768px) {
  .box-presentation-mariage-item__inner.withCTA {
    padding-bottom: 9rem;
  }
}

.box-presentation-mariage-item__title {
  font-size: 3rem;
  color: #0082ad;
  font-weight: 700;
  margin-bottom: 2rem;
  line-height: 1;
}

.box-presentation-mariage-item__title span {
  font-weight: 400;
  display: block;
}

.box-presentation-mariage-item__subtitle {
  text-transform: uppercase;
  display: block;
}

.box-presentation-mariage-item__subtitle:hover {
  text-decoration: underline;
}

.box-presentation-mariage-item__content .title {
  font-weight: bold;
  margin-top: 2rem;
  font-size: 1.8rem;
}

.box-presentation-mariage-item__content p {
  margin-top: 0;
  margin-bottom: 2rem;
}

.box-presentation-mariage-item__content li {
  text-indent: 1rem;
  position: relative;
}

.box-presentation-mariage-item__content li:before {
  content: "";
  display: block;
  width: 0.3rem;
  height: 0.3rem;
  border-radius: 50%;
  position: absolute;
  background-color: #000;
  top: 0.8rem;
}

.box-presentation-mariage-item__content .link {
  color: #0082ad;
  font-weight: 400;
  display: block;
}

.box-presentation-mariage-item__btn {
  width: 100%;
}

@media (min-width: 768px) {
  .box-presentation-mariage-item__btn {
    position: absolute;
    bottom: 0;
    left: 0;
  }
}

.box-bonnes-raisons-mariage {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-bonnes-raisons-mariage__link {
  display: block;
}

.box-bonnes-raisons-mariage__row {
  margin-left: -50px;
  margin-right: -50px;
}

.box-bonnes-raisons-mariage__row > * {
  padding-left: 50px;
  padding-right: 50px;
}

.box-bonnes-raisons-mariage-item {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 3rem;
  text-align: center;
}

.box-bonnes-raisons-mariage-item__visual {
  margin-bottom: 1rem;
  border-radius: 50%;
  max-width: 18rem;
}

.box-bonnes-raisons-mariage-item__title {
  font-size: 2rem;
}

.box-avantages {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-avantages__inner {
  background-color: #feac94;
  position: relative;
  display: table;
  width: 100%;
  height: 50rem;
  table-layout: fixed;
}

@media (max-width: 767px) {
  .box-avantages__inner {
    display: block;
    height: auto;
  }
}

.box-avantages__header {
  width: 50rem;
  padding: 6rem;
  display: table-cell;
  vertical-align: middle;
  color: #FFF;
  position: relative;
}

@media (max-width: 991px) {
  .box-avantages__header {
    padding: 4rem;
    width: 40%;
  }
}

@media (max-width: 767px) {
  .box-avantages__header {
    display: block;
    padding: 3rem;
    width: auto;
  }
}

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

.box-avantages__content {
  display: table-cell;
  vertical-align: top;
  position: relative;
}

@media (max-width: 767px) {
  .box-avantages__content {
    display: block;
  }
}

.box-avantages__list {
  font-size: 1.8rem;
}

.box-avantages__list li + li {
  margin-top: 2rem;
}

.box-avantages__list-visual {
  height: 100%;
}

.box-avantages__title {
  font-size: 3.4rem;
  font-weight: 700;
  margin-bottom: 2rem;
}

.box-avantages__text {
  line-height: 1.5;
  font-size: 1.8rem;
}

.box-avantages-item {
  display: block;
  position: relative;
  height: 100%;
}

.box-avantages-item__content {
  height: 100%;
  color: #FFF;
  padding: 6rem;
  position: relative;
}

@media (max-width: 767px) {
  .box-avantages-item__content {
    padding: 3rem;
    height: 25rem;
  }
}

.box-avantages-item__visual {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  overflow: hidden;
  object-fit: cover;
  font-family: "object-fit: cover";
}

.box-participation-cadeau {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-participation-cadeau__inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 80rem;
}

.box-participation-cadeau__header {
  text-align: center;
  padding-bottom: 4rem;
}

.box-participation-cadeau__header-title {
  font-size: 3.6rem;
  font-weight: 400;
  color: #0082ad;
  margin-bottom: 2rem;
  line-height: 1.1;
}

@media (max-width: 767px) {
  .box-participation-cadeau__header-title {
    font-size: 3.2rem;
  }
}

.box-participation-cadeau__header-subtitle {
  font-size: 1.4rem;
}

.box-participation-cadeau__beneficiaire {
  font-size: 1.2em;
  margin-bottom: 5rem;
}

.box-participation-cadeau__beneficiaire li + li {
  margin-top: 0.5rem;
}

.box-espace-client {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media (max-width: 767px) {
  .box-espace-client__col + .box-espace-client__col {
    margin-top: 4rem;
  }
}

.box-espace-client__footer {
  text-align: center;
  color: #0082ad;
  margin-top: 4rem;
}

.box-espace-client-item {
  background-color: #f6f6f6;
}

@media (min-width: 768px) {
  .box-espace-client-item {
    margin-top: -15rem;
  }
  .modal .box-espace-client-item {
    margin-top: 0;
  }
}

@media (min-width: 992px) {
  .box-espace-client-item {
    margin-top: -20rem;
  }
  .modal .box-espace-client-item {
    margin-top: 0;
  }
}

.box-espace-client-item__inner {
  padding: 2rem 3rem 3rem 3rem;
}

.box-espace-client-item__title {
  font-size: 3rem;
  font-weight: 700;
  margin-bottom: 2rem;
  text-transform: uppercase;
}

.box-espace-client-item__title span {
  font-weight: 400;
  display: block;
}

.box-espace-client-item__subtitle {
  font-weight: 700;
  font-size: 2.4rem;
  margin-bottom: 2rem;
}

.box-espace-client-item__text {
  margin-bottom: 2rem;
}

.box-espace-client-item__content .title {
  font-weight: bold;
  margin-top: 2rem;
  font-size: 1.8rem;
}

.box-espace-client-item__content p {
  margin-top: 0;
  margin-bottom: 2rem;
}

.box-espace-client-item__content .link-alpha {
  margin-top: 0.5rem;
}

.box-espace-client-item__btn {
  width: 100%;
}

.box-espace-client-item__link-bottom {
  text-decoration: underline;
  text-transform: uppercase;
  font-size: 1.8rem;
}

.box-espace-client-item__list li:before {
  background-color: #0082ad;
}

.box-espace-client-item__list li + li {
  margin-top: 1rem;
}

.box-envies-par-pays {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-envies-par-pays__inner {
  background-size: cover;
  background-position: 50% 50%;
  padding: 14rem 1rem 6rem 1rem;
  text-align: center;
}

@media (min-width: 1440px) {
  .box-envies-par-pays__inner {
    padding-top: 15rem;
    padding-bottom: 15rem;
  }
}

.box-envies-par-pays__content {
  margin-left: auto;
  margin-right: auto;
  display: inline-block;
}

.box-envies-par-pays__title {
  padding-left: 2rem;
  padding-right: 2rem;
  font-size: 4rem;
  letter-spacing: .5rem;
  font-weight: 500;
  text-transform: uppercase;
  color: #FFF;
  margin-bottom: 3rem;
}

@media (max-width: 767px) {
  .box-envies-par-pays__title {
    font-size: 3.33333rem;
    letter-spacing: .2rem;
  }
}

@media (min-width: 992px) {
  .box-envies-par-pays__title {
    font-size: 5rem;
  }
}

@media (min-width: 1440px) {
  .box-envies-par-pays__title {
    font-size: 6rem;
  }
}

.box-saisons {
  padding-top: 4rem;
  padding-bottom: 4rem;
  padding-bottom: 0;
}

.box-saison-item {
  margin-left: auto;
  margin-right: auto;
  margin-top: 8rem;
}

@media (max-width: 767px) {
  .box-saison-item {
    margin-top: 4rem;
  }
}

@media (min-width: 992px) {
  .box-saison-item__row {
    margin-left: -30px;
    margin-right: -30px;
  }
  .box-saison-item__row > * {
    padding-left: 30px;
    padding-right: 30px;
  }
}

.box-saison-item__visual-container {
  position: relative;
}

@media (max-width: 767px) {
  .box-saison-item__visual-container {
    margin-bottom: 2rem;
  }
}

.box-saison-item__visual-container:after {
  content: "";
  display: block;
  padding-bottom: 100%;
}

.box-saison-item__visual-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

.box-saison-item__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-saison-item__title {
  font-size: 3rem;
  font-weight: bold;
  line-height: 1.1;
  margin-bottom: 1rem;
}

.box-saison-item__text {
  line-height: 1.6;
  margin-bottom: 4rem;
  margin-top: 3rem;
}

.box-saison-item__text a {
  text-decoration: underline;
  color: #0082ad;
}

.box-saison-item__cta {
  display: inline-block;
  font-weight: 500;
  text-align: center;
  vertical-align: middle;
  text-transform: uppercase;
  padding: 1.5rem 3rem;
  border: 1px solid #0082ad;
  color: #0082ad;
  min-width: 30rem;
  font-size: 1.3rem;
  letter-spacing: 0.2rem;
  margin-top: 2rem;
}

@media (max-width: 480px) {
  .box-saison-item__cta {
    display: block;
    width: 100%;
  }
}

.box-saison-item__cta.full-width {
  width: 100%;
}

.box-saison-item__cta.smaller {
  padding-top: 0;
  padding-bottom: 0;
  height: 5rem;
  line-height: 5rem;
}

.box-saison-item__conditions {
  color: #0082ad;
  letter-spacing: .1rem;
  text-transform: uppercase;
}

.box-saison-mois {
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 992px) {
  .box-saison-mois__row {
    margin-left: -30px;
    margin-right: -30px;
  }
  .box-saison-mois__row > * {
    padding-left: 30px;
    padding-right: 30px;
  }
}

.box-saison-mois__item + .box-saison-mois__item {
  margin-top: 8rem;
}

.box-saison-mois__visual {
  display: block;
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.box-saison-mois__title {
  margin-top: 2rem;
  margin-bottom: 2rem;
  font-size: 3rem;
  font-weight: bold;
  line-height: 1.1;
  text-align: center;
}

.box-saison-mois__text {
  margin-left: auto;
  margin-right: auto;
  margin-top: 2rem;
  margin-bottom: 2rem;
  line-height: 1.5;
  text-align: justify;
}

.box-saison-mois__text a {
  text-decoration: underline;
  color: #0082ad;
}

.box-saison-mois__actions {
  text-align: center;
}

.box-saison-mois__cta {
  display: inline-block;
  font-weight: 500;
  text-align: center;
  vertical-align: middle;
  text-transform: uppercase;
  padding: 1.5rem 3rem;
  border: 1px solid #0082ad;
  color: #0082ad;
  min-width: 30rem;
  font-size: 1.3rem;
  letter-spacing: 0.2rem;
}

@media (max-width: 480px) {
  .box-saison-mois__cta {
    display: block;
    width: 100%;
  }
}

.box-saison-mois__cta.full-width {
  width: 100%;
}

.box-saison-mois__cta.smaller {
  padding-top: 0;
  padding-bottom: 0;
  height: 5rem;
  line-height: 5rem;
}

.box-nos-brochures {
  padding-top: 4rem;
  padding-bottom: 4rem;
  padding-top: 0;
}

.box-nos-brochures__row {
  margin-left: -50px;
  margin-right: -50px;
}

.box-nos-brochures__row > * {
  padding-left: 50px;
  padding-right: 50px;
}

@media (max-width: 1399px) {
  .box-nos-brochures__row {
    margin-left: -30px;
    margin-right: -30px;
  }
  .box-nos-brochures__row > * {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media (max-width: 991px) {
  .box-nos-brochures__row {
    margin-left: -15px;
    margin-right: -15px;
  }
  .box-nos-brochures__row > * {
    padding-left: 15px;
    padding-right: 15px;
  }
}

.box-nos-brochures .box-nos-brochures__row > * {
  padding-left: 15px !important;
  padding-right: 15px !important;
}

.box-nos-brochures-item {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 6rem;
  text-align: center;
}

.box-nos-brochures-item__link div {
  background: #dbdde3;
  padding: 5.5rem 0 4rem;
}

.box-nos-brochures-item__visual {
  box-shadow: 5px 5px 5px #8a8a8a;
  margin-bottom: 1rem;
}

.box-nos-brochures-item__title {
  font-size: 1.7rem;
  font-weight: 700;
  text-transform: none;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  margin-top: 2rem;
  position: relative;
}

.box-nos-brochures-item__text {
  margin-bottom: 2rem;
}

.box-nos-brochures-item__text .link-alpha {
  text-decoration: none;
}

@media (max-width: 991px) {
  .box-nos-brochures-item .button-alpha {
    font-size: 1.7rem;
    padding: 1rem;
  }
}

/*Commande*/
body.brochures .modal {
  top: auto;
  left: auto;
}

body.brochures .modal-alpha {
  padding-right: 17px;
}

@media (max-width: 480px) {
  body.brochures .modal-alpha {
    padding-right: 0;
  }
}

.box-le-fooding-item {
  padding-top: 4rem;
  padding-bottom: 4rem;
  margin: 0 1rem;
}

.box-le-fooding-item__title {
  color: #0082ad;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.5;
  margin-top: 1rem;
}

.box-le-fooding-item__subtitle {
  font-size: 3rem;
  font-weight: 700;
}

.box-le-fooding-item__lien {
  color: #0082ad;
}

.page-nos-maisons #sticky-nav-wrapper img {
  padding-top: 2rem;
}

.page-nos-maisons.sticky-nav-is-fixed .sticky-nav__item img,
.page-nos-maisons.sticky-nav-is-fixed .sticky-nav__item br {
  display: none !important;
}

.page-la-presse-en-parle .document {
  padding: 15px 0 0;
}

.box-voyage-sur-mesure-intro,
.box-voyage-sur-mesure-vip,
.box-voyage-sur-mesure-tourisme,
.box-voyage-sur-mesure-compensation,
.box-voyage-sur-mesure-histoire,
.box-voyage-sur-mesure-date {
  padding-top: 4rem;
  padding-bottom: 4rem;
  text-align: center;
}

.box-voyage-sur-mesure-intro__text,
.box-voyage-sur-mesure-vip__text,
.box-voyage-sur-mesure-tourisme__text,
.box-voyage-sur-mesure-compensation__text,
.box-voyage-sur-mesure-histoire__text,
.box-voyage-sur-mesure-date__text {
  margin-left: auto;
  margin-right: auto;
  max-width: 100rem;
  line-height: 1.5;
}

.header-box + .box-voyage-sur-mesure-intro__text, .header-box +
.box-voyage-sur-mesure-vip__text, .header-box +
.box-voyage-sur-mesure-tourisme__text, .header-box +
.box-voyage-sur-mesure-compensation__text, .header-box +
.box-voyage-sur-mesure-histoire__text, .header-box +
.box-voyage-sur-mesure-date__text {
  margin-top: 3rem;
}

.box-voyage-sur-mesure-engagements {
  background-size: cover;
  background-position: 50% 50%;
  padding: 10rem 1rem;
  text-align: center;
}

@media (max-width: 767px) {
  .box-voyage-sur-mesure-engagements {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}

.box-voyage-sur-mesure-engagements__content {
  margin-left: auto;
  margin-right: auto;
  background-color: transparent;
  color: #FFF;
  padding: 5rem;
  display: inline-block;
  text-align: center;
  max-width: 70rem;
}

@media (max-width: 480px) {
  .box-voyage-sur-mesure-engagements__content {
    padding: 3rem 3rem 1rem 3rem;
  }
}

.box-voyage-sur-mesure-engagements__text {
  line-height: 1.5;
  margin-bottom: 4rem;
}

.box-voyage-sur-mesure-engagements__link {
  color: #0082ad;
  font-weight: 400;
}

.box-voyage-sur-mesure-respect {
  background-color: #F1F1F1;
  padding-top: 4rem;
  padding-bottom: 4rem;
  text-align: center;
}

.box-voyage-sur-mesure-respect__text {
  margin-left: auto;
  margin-right: auto;
  max-width: 100rem;
  line-height: 1.5;
}

.box-voyage-sur-mesure-histoire__content {
  background-color: #FFF;
}

.box-voyage-sur-mesure-histoire__content,
.box-voyage-sur-mesure-date__content {
  margin-left: auto;
  margin-right: auto;
  padding: 5rem;
  display: inline-block;
  text-align: center;
  max-width: 100rem;
}

@media (max-width: 480px) {
  .box-voyage-sur-mesure-histoire__content,
  .box-voyage-sur-mesure-date__content {
    padding: 3rem 3rem 1rem 3rem;
  }
}

.box-voyage-sur-mesure-histoire__content p,
.box-voyage-sur-mesure-date__content p {
  text-align: justify;
}

.box-voyage-sur-mesure-histoire__content p:first-child,
.box-voyage-sur-mesure-date__content p:first-child {
  margin-top: 1rem;
}

.page-valise-ideale .box-brochure {
  padding: 10rem 0;
}

.page-valise-ideale .box-brochure a {
  background: #FFF;
  margin-bottom: 2rem;
  min-height: 270px;
  padding: 5rem 5rem;
}

.box-librairie-actus {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

@media (min-width: 768px) {
  .box-librairie-actus__list {
    margin-left: 6rem;
    margin-right: 6rem;
    display: none;
  }
}

@media (max-width: 767px) {
  .box-librairie-actus-item + .box-librairie-actus-item {
    margin-top: 4rem;
  }
}

@media (max-width: 767px) {
  .box-librairie-actus-item__visual {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 2rem;
    display: block;
  }
}

.box-librairie-actus-item__theme {
  text-transform: uppercase;
  font-size: 1.8rem;
  margin-bottom: 1rem;
}

.box-librairie-actus-item__titre {
  font-size: 2.6rem;
  font-weight: 700;
}

.box-librairie-actus-item__infos {
  text-transform: uppercase;
  font-weight: 500;
  color: #0082ad;
  margin-bottom: 1.5rem;
}

.box-librairie-actus-item__text {
  line-height: 1.5;
  margin-top: 0;
}

.box-librairie-actus-item.slick-slide {
  padding-left: 3rem;
  padding-right: 3rem;
  margin-top: 0;
}

.box-librairie-selection {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media (min-width: 992px) {
  .box-librairie-selection__row {
    margin-left: -30px;
    margin-right: -30px;
  }
  .box-librairie-selection__row > * {
    padding-left: 30px;
    padding-right: 30px;
  }
}

.box-librairie-selection-item {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 3rem;
}

@media (max-width: 767px) {
  .box-librairie-selection-item {
    margin-bottom: 4rem;
  }
}

.box-librairie-selection-item__visual {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 2rem;
  display: block;
}

.box-librairie-selection-item__title {
  text-transform: uppercase;
  font-weight: 700;
  font-size: 2.6rem;
}

.box-librairie-selection-item__author {
  font-size: 1.7rem;
  margin-bottom: 1.5rem;
}

.box-librairie-selection-item__subtitle {
  color: #0082ad;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 1.7rem;
}

.box-librairie-selection-item__text {
  margin-bottom: 0.5rem;
}

.box-librairie-selection-item__link {
  display: block;
  text-decoration: underline;
  margin-bottom: 1.5rem;
}

.box-librairie-selection-item__edition-prix {
  font-weight: 700;
}

.box-librairie-contact {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

.box-librairie-contact__iframe {
  width: 100%;
  border: none;
  margin-bottom: 2rem;
}

.box-librairie-libraires {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-librairie-libraires-item {
  margin-bottom: 3rem;
}

.box-librairie-libraires-item__title {
  font-weight: 700;
  text-align: center;
  position: relative;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
}

.box-librairie-libraires-item__title:before {
  content: "";
  display: block;
  width: 1rem;
  position: absolute;
  height: 2px;
  background-color: #000;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
}

.box-librairie-libraires-item__text {
  text-align: justify;
}

.box-valeur-ajoutee {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.box-valeur-ajoutee .header-box .subtitle {
  color: #0082ad;
}

.box-valeur-ajoutee-item {
  margin-left: auto;
  margin-right: auto;
  margin-top: 8rem;
  margin-bottom: 8rem;
}

@media (min-width: 768px) {
  .box-valeur-ajoutee-item__row {
    display: flex;
  }
}

@media (min-width: 992px) {
  .box-valeur-ajoutee-item__row {
    margin-left: -30px;
    margin-right: -30px;
  }
  .box-valeur-ajoutee-item__row > * {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media (min-width: 1440px) {
  .box-valeur-ajoutee-item__row {
    margin-left: -50px;
    margin-right: -50px;
  }
  .box-valeur-ajoutee-item__row > * {
    padding-left: 50px;
    padding-right: 50px;
  }
}

@media (max-width: 767px) {
  .box-valeur-ajoutee-item__visual {
    margin-bottom: 2rem;
  }
}

@media (min-width: 768px) {
  .box-valeur-ajoutee-item__visual-wrapper, .box-valeur-ajoutee-item__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
  }
}

.box-valeur-ajoutee-item__title {
  text-transform: uppercase;
  font-weight: 500;
  font-size: 2.5rem;
  line-height: 1.5;
}

@media (min-width: 768px) {
  .box-valeur-ajoutee-item__title {
    margin-bottom: 4rem;
  }
}

.box-valeur-ajoutee-item__title span {
  color: #0082ad;
}

.box-valeur-ajoutee-item__text {
  line-height: 1.5;
  margin-top: 2rem;
  margin-bottom: 1rem;
}

.box-valeur-ajoutee-item__link {
  text-transform: uppercase;
  text-decoration: underline;
  color: #0082ad;
}

.box-valeur-ajoutee-alpha {
  margin-left: auto;
  margin-right: auto;
  margin-top: 8rem;
}

@media (min-width: 768px) {
  .box-valeur-ajoutee-alpha__row {
    display: flex;
  }
}

@media (min-width: 992px) {
  .box-valeur-ajoutee-alpha__row {
    margin-left: -10rem;
    margin-right: -10rem;
  }
  .box-valeur-ajoutee-alpha__row > * {
    padding-left: 10rem;
    padding-right: 10rem;
  }
}

@media (max-width: 767px) {
  .box-valeur-ajoutee-alpha__visual {
    margin-bottom: 2rem;
  }
}

@media (min-width: 768px) {
  .box-valeur-ajoutee-alpha__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
  }
}

.box-valeur-ajoutee-alpha__title {
  text-transform: uppercase;
  font-weight: 500;
  font-size: 2.5rem;
  line-height: 1.5;
  margin-bottom: 2rem;
  letter-spacing: 0.2rem;
}

@media (min-width: 768px) {
  .box-valeur-ajoutee-alpha__title {
    margin-bottom: 4rem;
  }
}

.box-valeur-ajoutee-alpha__text {
  line-height: 1.5;
}

.box-valeur-ajoutee-alpha__link {
  display: inline-block;
  text-transform: uppercase;
  text-decoration: underline;
  color: #0082ad;
  margin-top: 1rem;
}

.box-aeroport {
  background-size: cover;
  background-position: 50% 50%;
  padding: 10rem 1rem;
  text-align: center;
}

.box-aeroport__content {
  margin-left: auto;
  margin-right: auto;
  background-color: #FFF;
  padding: 5rem;
  display: inline-block;
  text-align: center;
  max-width: 70rem;
}

@media (max-width: 480px) {
  .box-aeroport__content {
    padding: 3rem;
  }
}

.box-aeroport__list li {
  position: relative;
  padding-top: 0.4rem;
  padding-bottom: 0.4rem;
}

.box-aeroport__list li:before {
  content: "";
  display: inline-block;
  width: 0.3em;
  height: 0.3em;
  border-radius: 50%;
  background-color: #0082ad;
  top: -0.2rem;
  margin-right: 0.5rem;
  position: relative;
}

.box-aeroport__text {
  line-height: 1.5;
  margin-bottom: 4rem;
}

.box-aeroport__link {
  margin-top: 1rem;
  display: inline-block;
  text-transform: uppercase;
  text-decoration: underline;
  color: #0082ad;
}

.box-vous-accueillir {
  padding-top: 4rem;
  padding-bottom: 4rem;
  text-align: center;
  margin-bottom: 4rem;
}

.box-vous-accueillir .header-box .subtitle {
  color: #0082ad;
}

.box-vous-accueillir__index {
  margin-bottom: 2rem;
  font-family: "Dala Moa", serif;
  font-size: 12rem;
}

.box-pendant-voyage {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

.box-pendant-voyage .header-box .subtitle {
  color: #0082ad;
}

.box-pendant-voyage-mea {
  margin-top: 4rem;
  margin-bottom: 4rem;
  background-size: cover;
  background-position: 50% 50%;
  padding: 10rem 1rem;
  text-align: center;
}

.box-pendant-voyage-mea__content {
  margin-left: auto;
  margin-right: auto;
  background-color: #FFF;
  padding: 5rem;
  display: inline-block;
  text-align: center;
  max-width: 70rem;
}

@media (max-width: 480px) {
  .box-pendant-voyage-mea__content {
    padding: 3rem 3rem 1rem 3rem;
  }
}

.box-pendant-voyage-mea__title {
  text-transform: uppercase;
  font-weight: 500;
  font-size: 2.5rem;
  line-height: 1.5;
  margin-bottom: 2rem;
  letter-spacing: 0.2rem;
}

@media (min-width: 768px) {
  .box-pendant-voyage-mea__title {
    margin-bottom: 4rem;
  }
}

.box-pendant-voyage-mea__text {
  line-height: 1.5;
  margin-bottom: 4rem;
}

.box-pendant-voyage-mea__link {
  display: inline-block;
  text-transform: uppercase;
  text-decoration: underline;
  color: #0082ad;
}

.box-pendant-voyage-item {
  margin-left: auto;
  margin-right: auto;
  max-width: 100rem;
  text-align: center;
}

.box-pendant-voyage-item + .box-pendant-voyage-item {
  margin-top: 4rem;
}

@media (min-width: 768px) {
  .box-pendant-voyage-item__row {
    display: flex;
  }
}

@media (max-width: 767px) {
  .box-pendant-voyage-item__visual {
    margin-bottom: 2rem;
  }
}

@media (min-width: 768px) {
  .box-pendant-voyage-item__visual-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
  }
}

@media (min-width: 768px) {
  .box-pendant-voyage-item__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
  }
}

@media (min-width: 992px) {
  .box-pendant-voyage-item__content {
    padding: 4rem;
  }
}

.box-pendant-voyage-item__title {
  text-transform: uppercase;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.5;
  margin-bottom: 2rem;
  letter-spacing: 0.2rem;
}

@media (min-width: 768px) {
  .box-pendant-voyage-item__title {
    margin-bottom: 4rem;
  }
}

.box-pendant-voyage-item__text {
  line-height: 1.5;
}

.box-pendant-voyage-item__link {
  display: inline-block;
  text-transform: uppercase;
  text-decoration: underline;
  color: #0082ad;
  margin-top: 1rem;
}

.box-friends-item {
  margin-left: auto;
  margin-right: auto;
}

.box-friends-item + .box-friends-item {
  margin-top: 8rem;
}

@media (max-width: 767px) {
  .box-friends-item + .box-friends-item {
    margin-top: 4rem;
  }
}

@media (min-width: 992px) {
  .box-friends-item__row {
    margin-left: -30px;
    margin-right: -30px;
  }
  .box-friends-item__row > * {
    padding-left: 30px;
    padding-right: 30px;
  }
}

.box-friends-item__visual-container {
  position: relative;
}

@media (max-width: 767px) {
  .box-friends-item__visual-container {
    margin-bottom: 2rem;
  }
}

.box-friends-item__visual-container:after {
  content: "";
  display: block;
  padding-bottom: 71.42857%;
}

.box-friends-item__visual-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

.box-friends-item__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.box-friends-item__destination {
  font-family: "Spectral", serif;
  font-weight: 300;
  font-style: italic;
  font-size: 4rem;
  line-height: 1;
}

.box-friends-item__title {
  display: block;
  font-weight: 700;
  font-size: 4rem;
  text-transform: uppercase;
  margin-bottom: 2rem;
  line-height: 1;
}

.box-friends-item__text {
  line-height: 1.5;
  margin-top: 0;
}

.box-friends-item__text strong {
  color: #0082ad;
}

.box-friends-item__pseudo-cta {
  display: inline-block;
  font-weight: 500;
  text-align: center;
  vertical-align: middle;
  text-transform: uppercase;
  padding: 1.5rem 3rem;
  border: 1px solid #0082ad;
  color: #0082ad;
  min-width: 30rem;
  font-size: 1.3rem;
  letter-spacing: 0.2rem;
  margin-top: 2rem;
}

@media (max-width: 480px) {
  .box-friends-item__pseudo-cta {
    display: block;
    width: 100%;
  }
}

.box-friends-item__pseudo-cta.full-width {
  width: 100%;
}

.box-friends-item__pseudo-cta.smaller {
  padding-top: 0;
  padding-bottom: 0;
  height: 5rem;
  line-height: 5rem;
}

.box-concierge-mea {
  margin-top: 8rem;
  margin-bottom: 8rem;
  position: relative;
}

@media (min-width: 768px) {
  .box-concierge-mea {
    padding-top: 8rem;
    padding-bottom: 8rem;
  }
}

.box-concierge-mea__visual-wrapper {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

@media (min-width: 768px) {
  .box-concierge-mea__visual-wrapper {
    position: absolute;
  }
}

.box-concierge-mea__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  margin-bottom: 2rem;
}

@media (min-width: 768px) {
  .box-concierge-mea__visual {
    position: absolute;
  }
}

.box-concierge-mea__content {
  background-color: #FFF;
  padding: 2rem;
}

@media (min-width: 768px) {
  .box-concierge-mea__content {
    padding: 5rem;
  }
}

.box-nos-concierges {
  margin-top: 4rem;
  margin-bottom: 4rem;
  background-size: cover;
  background-position: 50% 50%;
  padding: 5rem 1rem 10rem 1rem;
  text-align: center;
}

.box-nos-concierges__content {
  margin-left: auto;
  margin-right: auto;
  background-color: #FFF;
  padding: 5rem 8rem;
  text-align: center;
  max-width: 70rem;
}

@media (max-width: 480px) {
  .box-nos-concierges__content {
    padding: 4rem 2rem;
  }
}

.box-nos-concierges__title {
  text-transform: uppercase;
  font-weight: 500;
  font-size: 2.5rem;
  line-height: 1.5;
  margin-bottom: 2rem;
  letter-spacing: 0.2rem;
  color: #FFF;
}

@media (min-width: 768px) {
  .box-nos-concierges__title {
    margin-bottom: 4rem;
  }
}

.box-nos-concierges-item__destination {
  font-family: "Spectral", serif;
  font-weight: 300;
  font-style: italic;
  font-size: 3rem;
  line-height: 1;
}

.box-nos-concierges-item__title {
  display: block;
  font-weight: 700;
  font-size: 3rem;
  text-transform: uppercase;
  margin-bottom: 2rem;
  line-height: 1;
}

.box-nous-faisons {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media (max-width: 767px) {
  .box-nous-faisons {
    padding-bottom: 0;
  }
}

@media (max-width: 767px) {
  .box-nous-faisons-item {
    margin-bottom: 4rem;
  }
}

.box-nous-faisons-item__visual-container {
  position: relative;
  margin-bottom: 1rem;
}

.box-nous-faisons-item__visual-container:after {
  content: "";
  display: block;
  padding-bottom: 66.57609%;
}

.box-nous-faisons-item__visual-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

.box-nous-faisons-item__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: relative;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  margin-bottom: 2rem;
}

.intoMap .box-nous-faisons-item__visual {
  max-width: 100%;
}

.box-nous-faisons-item__title {
  display: block;
  font-size: 3rem;
  margin-bottom: 1rem;
  font-weight: 700;
  line-height: 1.2;
}

.box-nous-faisons-item__title span {
  display: block;
  font-weight: 400;
}

.box-nous-faisons-item__text {
  line-height: 1.5;
  margin-bottom: 1rem;
}

.box-nous-faisons-item__conditions {
  color: #0082ad;
  letter-spacing: .1rem;
  text-transform: uppercase;
}

/* ==========================================================================
   & header
   ========================================================================== */
@media (min-width: 768px) {
  .header__inner {
    padding-top: 5.8rem;
  }
}

@media (min-width: 768px) {
  .header__row {
    display: flex;
  }
}

.header__col {
  width: 5.55556rem;
  position: relative;
}

@media (max-width: 767px) {
  .header__col {
    display: none;
  }
}

.header-contact {
  padding-top: 1.8rem;
  padding-bottom: 1.9rem;
  transform-origin: top;
  transform: translateX(-50%) rotate(-90deg);
  white-space: nowrap;
  position: fixed;
  top: 30rem;
  z-index: 40;
}

.header-fil {
  position: absolute;
  top: 1rem;
  left: 1rem;
  text-transform: uppercase;
  font-size: 1.2rem;
  color: #FFF;
}

@media (max-width: 767px) {
  .header-fil {
    display: none;
  }
}

.page-produit .header-fil,
.page-cheques-cadeaux-tunnel .header-fil,
.page-ddv .header-fil,
.page-mag-liste .header-fil {
  color: #000;
}

.header-social {
  position: fixed;
  top: 18rem;
  width: 5.55556rem;
  z-index: 40;
}

.header-social__link {
  position: relative;
  display: block;
  background-color: rgba(138, 138, 138, 0.9);
  color: #FFF;
  width: 100%;
  height: 5.55556rem;
  float: right;
  transition: width .2s;
  font-size: 2.2rem;
}

.header-social__link:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.header-social__link:hover {
  width: 140%;
}

.header-social__link.facebook:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.header-social__link.twitter:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.header-social__link.pinterest:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.header-social__link.linkedin:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.header-social__link.mail:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.atss {
  z-index: 1030 !important;
}

.atss .at-share-btn,
.atss a {
  width: 5.55556rem !important;
  background-color: transparent !important;
}

.atss .at-share-btn .at-icon-wrapper,
.atss a .at-icon-wrapper {
  background-color: rgba(138, 138, 138, 0.9) !important;
}

.atss .at-share-btn:focus,
.atss .at-share-btn:hover,
.atss a:focus,
.atss a:hover {
  width: 140% !important;
}

#at4-share,
#at4-soc {
  top: 18rem !important;
}

.header-produit {
  position: relative;
  text-align: center;
  flex: 1 1 0%;
  padding-top: 5rem;
  padding-bottom: 4rem;
}

@media (max-width: 767px) {
  .header-produit {
    padding-top: 6.5rem;
    text-align: left;
  }
}

@media (max-width: 991px) {
  .header-produit {
    padding-top: 6.5rem;
  }
}

.header-produit__content {
  padding-left: 1.66667rem;
  padding-right: 1.66667rem;
  padding-top: 2rem;
}

.header-produit__chapo {
  color: #0082ad;
  letter-spacing: .1rem;
  text-transform: uppercase;
  font-weight: 400;
  margin-bottom: 1rem;
  font-size: inherit;
}

.header-produit__title {
  font-size: 3rem;
  font-weight: 700;
}

@media (max-width: 767px) {
  .header-produit__title {
    line-height: 1.1;
    margin-bottom: 1rem;
  }
}

.header-produit__etapes {
  color: #99a4b1;
  font-size: 1.7rem;
  font-weight: 500;
  margin-bottom: 1.6rem;
}

.header-produit__subtitle {
  font-size: 1.8rem;
  font-weight: 500;
}

.header-cheques-tunnel {
  position: relative;
  text-align: center;
  flex: 1 1 0%;
  padding-top: 11rem;
  padding-bottom: 4rem;
}

@media (max-width: 767px) {
  .header-cheques-tunnel {
    padding-top: 6.5rem;
    text-align: left;
  }
}

@media (max-width: 991px) {
  .header-cheques-tunnel {
    padding-top: 6.5rem;
  }
}

.header-cheques-tunnel__content {
  padding-left: 1.66667rem;
  padding-right: 1.66667rem;
  padding-top: 2rem;
}

.header-cheques-tunnel__title {
  font-size: 3.6rem;
  font-weight: 400;
  color: #0082ad;
  margin-bottom: 2rem;
  line-height: 1.1;
}

@media (max-width: 767px) {
  .header-cheques-tunnel__title {
    font-size: 3.2rem;
  }
}

.header-cheques-tunnel__subtitle {
  font-size: 1.4rem;
}

.header-ddv {
  position: relative;
  text-align: center;
  flex: 1 1 0%;
  padding-top: 5rem;
}

@media (max-width: 767px) {
  .header-ddv {
    padding-top: 6.5rem;
    text-align: left;
  }
}

@media (max-width: 991px) {
  .header-ddv {
    padding-top: 6.5rem;
  }
}

.header-ddv__content {
  padding-left: 1.66667rem;
  padding-right: 1.66667rem;
  padding-top: 2rem;
}

.header-ddv__title {
  font-size: 3.6rem;
  font-weight: 400;
  color: #0082ad;
  margin-bottom: 2rem;
  line-height: 1.1;
}

@media (max-width: 767px) {
  .header-ddv__title {
    font-size: 3.2rem;
  }
}

.page-ddv-light .header-ddv__title {
  margin-bottom: 1rem;
}

.header-ddv__subtitle {
  font-size: 1.8rem;
}

.page-ddv-light .header-ddv__subtitle {
  font-size: 1.5rem;
}

.header-ddv-pays {
  position: relative;
  text-align: center;
  flex: 1 1 0%;
}

@media (max-width: 767px) {
  .header-ddv-pays {
    margin-top: 6.5rem;
  }
}

.header-ddv-pays:before {
  content: "";
  background-color: #000;
  opacity: .2;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.header-ddv-pays__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  width: 100%;
  height: 51rem;
}

@media (max-width: 991px) {
  .header-ddv-pays__visual {
    height: 34rem;
  }
}

.header-ddv-pays__content {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 2;
  transform: translateY(-50%);
  padding: 1rem;
}

.header-ddv-pays__title {
  font-size: 3.6rem;
  font-weight: 400;
  color: #FFF;
  margin-bottom: 2rem;
  line-height: 1.1;
}

@media (max-width: 767px) {
  .header-ddv-pays__title {
    font-size: 3.2rem;
  }
}

.header-ddv-pays__subtitle {
  font-size: 1.8rem;
  color: #FFF;
}

.header-ddv-produit {
  position: relative;
  flex: 1 1 0%;
  padding-top: 5rem;
}

@media (max-width: 767px) {
  .header-ddv-produit {
    padding-top: 6.5rem;
    text-align: left;
  }
}

@media (max-width: 991px) {
  .header-ddv-produit {
    padding-top: 6.5rem;
  }
}

.header-ddv-produit__content {
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.66667rem;
  padding-right: 1.66667rem;
  padding-top: 2rem;
  max-width: 80rem;
}

@media (min-width: 1440px) {
  .header-ddv-produit__content {
    max-width: 100rem;
  }
}

.header-ddv-produit_row {
  display: table;
  width: 100%;
}

.header-ddv-produit__col-content {
  display: table-cell;
  vertical-align: middle;
  width: 60%;
  padding-right: 2rem;
}

@media (max-width: 767px) {
  .header-ddv-produit__col-content {
    display: block;
    width: 100%;
    padding-right: 0;
  }
}

.header-ddv-produit__col-visual {
  display: table-cell;
  vertical-align: middle;
}

@media (max-width: 767px) {
  .header-ddv-produit__col-visual {
    display: block;
  }
}

.header-ddv-produit__title {
  font-size: 3.6rem;
  font-weight: 400;
  margin-bottom: 2rem;
  line-height: 1.1;
  font-weight: 700;
}

@media (max-width: 767px) {
  .header-ddv-produit__title {
    font-size: 3.2rem;
  }
}

.header-ddv-produit__visual-wrapper {
  position: relative;
  display: block;
}

.header-ddv-produit__visual-wrapper:before {
  content: "";
  position: absolute;
  top: -2rem;
  right: -1rem;
  width: 11rem;
  height: 11rem;
  display: block;
  background-image: url(../images/tampon.png);
  background-size: contain;
}

.header-ddv-produit__visual {
  border: 1rem solid #FFF;
}

/* ==========================================================================
   & header MEA (Mise en Avant)
   ========================================================================== */
.header-mea {
  position: relative;
  text-align: center;
  flex: 1 0 0%;
}

@media (min-width: 768px) {
  .page-accueil .header-mea {
    max-width: calc(100% - 11.11111rem);
  }
}

@media (max-width: 767px) {
  .page-resultats .header-mea {
    padding-top: 1rem;
    padding-bottom: 1rem;
    margin-top: 6.5rem;
  }
}

.header-mea:before {
  content: "";
  background-color: #000;
  opacity: .2;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

@media (max-width: 767px) {
  .page-resultats .header-mea:before {
    display: none;
  }
}

@media (min-width: 768px) {
  .page-accueil .header-mea:before {
    display: none;
  }
}

.header-mea__title-carousel {
  display: none;
}

.header-mea__title-carousel.slick-initialized {
  display: block;
}

@media (min-width: 768px) {
  .header-mea__title-wrapper-mobile {
    display: none;
  }
}

@media (max-width: 767px) {
  .header-mea__title-wrapper {
    position: absolute;
    width: 100%;
    top: 13rem;
    left: 50%;
    transform: translateX(-50%);
  }
}

.page-resultats .header-mea__title-wrapper {
  position: static;
  transform: none;
}

.header-mea__title {
  padding-left: 2rem;
  padding-right: 2rem;
  font-size: 4rem;
  letter-spacing: .5rem;
  font-weight: 500;
  text-transform: uppercase;
  color: #FFF;
}

@media (max-width: 767px) {
  .header-mea__title {
    font-size: 3.33333rem;
    letter-spacing: .2rem;
    line-height: 1.1;
  }
}

@media (min-width: 992px) {
  .header-mea__title {
    font-size: 5rem;
  }
}

@media (min-width: 1440px) {
  .header-mea__title {
    font-size: 6rem;
  }
}

.page-accueil .header-mea__title {
  font-size: 3rem;
  line-height: 1.1;
  margin-bottom: 1rem;
  letter-spacing: .3rem;
}

@media (max-width: 767px) {
  .page-accueil .header-mea__title {
    font-size: 2.77778rem;
    position: static;
    transform: none;
  }
}

@media (min-width: 992px) {
  .page-accueil .header-mea__title {
    font-size: 4rem;
  }
}

@media (max-width: 767px) {
  .page-resultats .header-mea__title {
    color: #000;
    margin-bottom: 0;
    font-size: 2rem;
    letter-spacing: .2rem;
  }
}

@media (min-width: 992px) {
  .header-mea__title br.hidden-md {
    content: "";
  }
}

@media (min-width: 1440px) {
  .header-mea__title br.hidden-lg {
    content: "";
  }
}

.header-mea__subtitle {
  font-family: "Spectral", serif;
  font-style: italic;
  font-weight: 300;
  color: #FFF;
  letter-spacing: .2rem;
  display: inline-block;
  position: relative;
  font-size: 2.2rem;
}

.header-mea__subtitle:before, .header-mea__subtitle:after {
  content: "";
  display: block;
  width: 2rem;
  height: 1px;
  background-color: currentColor;
  position: absolute;
  top: 50%;
}

.header-mea__subtitle:before {
  left: -3rem;
}

.header-mea__subtitle:after {
  right: -3rem;
}

@media (max-width: 767px) {
  .header-mea__subtitle {
    white-space: nowrap;
  }
}

@media (min-width: 992px) {
  .header-mea__subtitle {
    font-size: 2.2rem;
  }
}

@media (min-width: 1440px) {
  .header-mea__subtitle {
    font-size: 2.6rem;
  }
}

@media (max-width: 767px) {
  .page-resultats .header-mea__subtitle {
    color: #000;
    margin-top: 0;
    transform: none;
  }
}

.header-mea__subtitle-alpha {
  font-family: "Spectral", serif;
  font-style: italic;
  font-weight: 300;
  color: #FFF;
  letter-spacing: .2rem;
  font-size: 2.2rem;
  margin-top: 0;
  text-transform: none;
  display: block;
}

@media (max-width: 767px) {
  .header-mea__subtitle-alpha {
    font-size: 2rem;
  }
}

@media (min-width: 992px) {
  .header-mea__subtitle-alpha {
    font-size: 2.8rem;
  }
}

@media (max-width: 320px) {
  .header-mea__subtitle-alpha {
    margin-bottom: 2rem;
  }
}

.header-mea__text {
  color: #FFF;
  max-width: 40rem;
  margin-left: auto;
  margin-right: auto;
}

@media (max-width: 991px) {
  .header-mea__text {
    display: none;
  }
}

@media (min-width: 768px) {
  .header-mea__visual-mobile {
    display: none;
  }
}

.header-mea__visual-carousel {
  overflow: hidden;
  height: 51rem;
}

@media (max-width: 991px) {
  .header-mea__visual-carousel {
    height: 34rem;
  }
}

@media (max-width: 767px) {
  .header-mea__visual-carousel {
    display: none;
  }
}

@media (max-height: 820px) and (orientation: landscape) {
  .header-mea__visual-carousel {
    height: 42rem;
  }
}

.header-mea__visual-carousel .slick-dots {
  bottom: 1rem;
}

.header-mea__visual-wrapper {
  position: relative;
}

.header-mea__visual-wrapper:before {
  content: "";
  background-color: #000;
  opacity: .2;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

@media (max-width: 767px) {
  .page-resultats .header-mea__visual-wrapper:before {
    display: none;
  }
}

.header-mea__visual {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  width: 100%;
  height: 51rem;
}

@media (max-width: 991px) {
  .header-mea__visual {
    height: 33.8rem;
  }
}

@media (max-height: 820px) and (orientation: landscape) {
  .header-mea__visual {
    height: 42rem;
  }
}

@media (max-width: 767px) {
  .header-mea__visual {
    margin-top: 6.5rem;
    height: 22rem;
  }
  .page-accueil .header-mea__visual,
  .page-pays-pays .header-mea__visual,
  .page-pays-regions .header-mea__visual,
  .page-envie-base .header-mea__visual {
    height: calc(100vh - 6.5rem);
  }
  .page-agence .header-mea__visual,
  .page-recherche .header-mea__visual,
  .page-home-guide .header-mea__visual,
  .page-guide-pays .header-mea__visual,
  .page-conseillers .header-mea__visual,
  .page-envies .header-mea__visual,
  .page-mag-pays .header-mea__visual,
  .page-saison .header-mea__visual,
  .page-pays-tag .header-mea__visual {
    height: 33.8rem;
  }
  .page-accueil.scrolltop .header-mea__visual {
    height: calc(100vh);
    margin-top: 0;
  }
  .page-resultats .header-mea__visual {
    display: none;
  }
}

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  .header-mea__visual {
    /* Retina-specific stuff here */
  }
}

.page-mag-form .header-mea__visual {
  height: 33.8rem;
}

@media (max-width: 991px) {
  .page-mag-form .header-mea__visual {
    height: 24rem;
  }
}

.page-mag-accueil .header-mea__visual,
.page-mag-article .header-mea__visual {
  height: 33.8rem;
}

.header-mea__link {
  text-transform: uppercase;
  color: #FFF;
  display: block;
}

.header-mea__link:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.header-mea__link:after {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  animation-name: vdm-wobble-vertical;
  animation-duration: 2s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  margin-top: 1rem;
  display: block;
}

@keyframes vdm-wobble-vertical {
  8.325% {
    transform: translateY(8px);
  }
  16.65% {
    transform: translateY(-6px);
  }
  24.975% {
    transform: translateY(4px);
  }
  33.3% {
    transform: translateY(-2px);
  }
  41.625% {
    transform: translateY(1px);
  }
  50% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(0);
  }
}

@media (min-width: 768px) {
  .header-mea__link {
    display: none;
  }
}

.page-pays .header-mea__link,
.page-envie-base .header-mea__link,
.page-envies .header-mea__link,
.page-guide-pays .header-mea__link {
  position: absolute;
  width: 100%;
  bottom: 10rem;
  left: 50%;
  transform: translateX(-50%);
}

.page-accueil .header-mea__link {
  margin-top: 6rem;
}

.header-mea__link-scroll {
  display: block;
  position: absolute;
  top: 6.5rem;
  bottom: 6.5rem;
  width: 100%;
  z-index: 1;
}

@media (min-width: 768px) {
  .header-mea__link-scroll {
    display: none;
  }
}

.header-mea__content {
  width: 100%;
}

@media (min-width: 768px) {
  .header-mea__content {
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 2;
    transform: translateY(-50%);
  }
}

.page-accueil .header-mea__content {
  position: absolute;
  top: 50%;
  transform: translateY(-30%);
  left: 0;
  z-index: 2;
}

@media (min-width: 768px) and (max-width: 991px) {
  .page-accueil .header-mea__content {
    top: calc(50% - 3em);
  }
}

@media (min-width: 992px) {
  .page-accueil .header-mea__content {
    top: calc(50% + 2rem);
  }
}

@media (max-width: 320px) {
  .page-accueil.scrolltop .header-mea__content {
    transform: translateY(-47%);
  }
}

.header-mea__content-inner {
  margin-top: 3rem;
  margin-left: 3rem;
  margin-right: 3rem;
}

@media (min-width: 768px) {
  .header-mea__content-inner {
    margin-left: auto;
    margin-right: auto;
    max-width: 32rem;
  }
}

@media (min-width: 992px) {
  .header-mea__content-inner {
    margin-top: 4rem;
  }
}

@media (max-width: 320px) {
  .header-mea__content-inner {
    margin-top: 1rem;
  }
}

.header-mea__footer {
  position: absolute;
  bottom: 4rem;
  left: 0;
  width: 100%;
}

@media (max-width: 767px) {
  .page-accueil .header-mea__footer,
  .page-pays .header-mea__footer,
  .page-envie-base .header-mea__footer {
    bottom: 10rem;
  }
  .page-conseillers .header-mea__footer {
    bottom: 2rem;
  }
}

.header-mea__search-wrapper:before, .header-mea__search-wrapper:after {
  content: " ";
  display: table;
}

.header-mea__search-wrapper:after {
  clear: both;
}

@media (min-width: 768px) {
  .header-mea__search-wrapper > .awesomplete-container {
    float: left;
    width: calc(100% - 6.5rem);
  }
}

.header-mea__search-wrapper > .awesomplete-container input {
  text-align: center;
}

@media (min-width: 768px) {
  .header-mea__search-wrapper > .awesomplete-container input {
    text-align: left;
  }
}

@media (min-width: 768px) {
  .header-mea__search-wrapper > .awesomplete-container ul {
    width: calc(100% + 6.5rem);
  }
}

@media (min-width: 768px) {
  .header-mea__search-submit {
    float: right;
  }
}

@media (max-width: 767px) {
  .header-mea__search-submit {
    background-color: #000;
    color: #FFF;
    width: 100%;
    margin-top: 1rem;
  }
}

.header-mea__search-submit-icon {
  margin-left: 0;
}

@media (max-width: 767px) {
  .header-mea__search-submit-icon {
    display: none;
  }
}

@media (min-width: 768px) {
  .header-mea__search-submit-text {
    display: none;
  }
}

.header-mea__btn {
  display: block;
  font-weight: 700;
  text-decoration: underline;
  color: #FFF;
  text-transform: uppercase;
  margin-top: 2rem;
}

.header-mea__prev, .header-mea__next {
  position: absolute;
  top: 50%;
  display: block;
  padding: 1rem;
  z-index: 2;
  color: #FFF;
  text-transform: uppercase;
}

@media (max-width: 767px) {
  .header-mea__prev, .header-mea__next {
    top: auto;
    bottom: 1rem;
    background-color: rgba(255, 255, 255, 0.2);
    border-radius: 0.8rem;
    letter-spacing: .2rem;
  }
}

@media (min-width: 768px) {
  .header-mea__prev, .header-mea__next {
    letter-spacing: .5rem;
  }
}

.header-mea__prev {
  left: 1.5rem;
}

@media (min-width: 768px) {
  .header-mea__prev {
    transform: translateX(-50%) rotate(-90deg);
    transform-origin: top;
  }
}

.header-mea__next {
  right: 1.5rem;
}

@media (min-width: 768px) {
  .header-mea__next {
    transform: translateX(50%) rotate(90deg);
    transform-origin: top;
  }
}

/* ==========================================================================
   & footer
   ========================================================================== */
.footer {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #f6f6f6;
}

.page-ddv-light .footer {
  display: none;
}

.page-ddv-confirmation .footer {
  display: block;
}

.footer-list {
  margin-bottom: 2rem;
}

@media (max-width: 480px) {
  .footer-list {
    font-size: 2rem;
  }
}

.footer-list__title {
  font-weight: 700;
  text-transform: uppercase;
}

.footer-list__list > li {
  margin-top: 2px;
}

.footer-list__list > li > a {
  line-height: 1;
}

.footer-list__list > li > a:hover {
  text-decoration: underline;
}

.footer-list__logo {
  display: block;
  margin-top: 1rem;
  margin-bottom: 0.5rem;
}

.social {
  text-align: center;
  margin-bottom: 4rem;
}

.social__title {
  font-size: 2.7rem;
  font-weight: 700;
  margin-bottom: 3rem;
}

.social__item {
  display: inline;
}

.social__link {
  margin-left: 1rem;
  margin-right: 1rem;
  position: relative;
  display: inline-block;
  background-color: #0082ad;
  color: #FFF;
  width: 5.6rem;
  height: 5.6rem;
  border-radius: 50%;
  font-size: 3rem;
  margin-bottom: 0.5rem;
  transition: background-color .3s ease-out;
}

.social__link:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.social__link:hover {
  background-color: #2695b9;
}

.social__link.facebook:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.social__link.google-plus:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.social__link.twitter:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.social__link.pinterest:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.social__link.instagram:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.social__link.youtube:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

/* ==========================================================================
   & navigation
   ========================================================================== */
.nav {
  display: flex;
  justify-content: space-between;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #FFF;
  z-index: 3;
  padding-left: 1rem;
}

.nav:hover {
  z-index: 4;
}

@media (min-width: 768px) {
  .scrolled .nav,
  .page-produit .nav,
  .page-cheques-cadeaux-tunnel .nav,
  .page-ddv .nav,
  .page-ddv-produit .nav,
  .page-mag .nav {
    box-shadow: 0 0 15px 1px rgba(0, 0, 0, 0.07);
  }
}

@media (min-width: 992px) {
  .nav {
    padding-left: 5.55556rem;
    padding-right: 5.55556rem;
  }
}

@media (max-width: 767px) {
  .nav {
    padding-left: 0;
    padding-right: 0;
    display: block;
    background-color: #000;
    color: #FFF;
    height: 6.5rem;
    overflow: hidden;
  }
  .page-accueil.scrolltop:not(.menu-mobile-opened):not(.contact-mobile-opened) .nav {
    position: fixed;
    background-color: transparent;
    overflow: visible;
  }
  .sticky-nav-mobile-is-fixed .nav {
    display: none;
  }
}

.nav__list {
  flex-grow: 1;
  display: flex;
  align-items: center;
}

.nav__list.left {
  justify-content: flex-start;
}

@media (max-width: 767px) {
  .nav__list.left {
    display: none;
  }
}

.nav__list.right {
  justify-content: flex-end;
}

.nav__item.open-menu:hover {
  position: relative;
}

.nav__item.open-menu:hover:before {
  content: "";
  width: 0;
  height: 0;
  border-left: 1.5rem solid transparent;
  border-right: 1.5rem solid transparent;
  border-bottom: 1.5rem solid #feac94;
  position: absolute;
  left: 50%;
  bottom: -1px;
  transform: translateX(-50%);
}

.nav__link {
  display: block;
  padding: 2rem 1rem;
  letter-spacing: .1rem;
  text-transform: uppercase;
}

@media (max-width: 991px) {
  .nav__link {
    font-size: 1.4rem;
  }
}

@media (max-width: 767px) {
  .nav__link {
    padding: 0;
    display: inline-block;
    font-size: 2.7rem;
    width: 3rem;
  }
}

.open-menu .nav__link {
  position: relative;
  padding-right: 2.5rem;
}

.open-menu .nav__link:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.open-menu .nav__link:after {
  position: absolute;
  top: 50%;
  right: 1rem;
  margin-top: -0.5rem;
  font-size: 1rem;
  margin-left: 0.5rem;
  width: 1rem;
  height: 1rem;
  vertical-align: middle;
  transform: rotate(90deg);
  color: #0082ad;
}

.open-menu:hover .nav__link,
.open-menu:focus .nav__link {
  font-weight: 700;
}

@media (max-width: 991px) {
  .nav__btn {
    font-size: 1.4rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

@media (max-width: 767px) {
  .nav__btn {
    display: none;
  }
}

@media (min-width: 768px) {
  .account {
    position: relative;
  }
}

.account__link {
  position: relative;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.account__link:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.account__link:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media (min-width: 768px) {
  .account__link {
    margin-right: 1rem;
  }
}

@media (max-width: 767px) {
  .account__link {
    position: absolute;
    top: 0;
    right: 1.5rem;
    height: 6.5rem;
    transition: right .2s;
  }
  .page-accueil.scrolltop:not(.menu-mobile-opened):not(.contact-mobile-opened) .account__link {
    right: -5.5rem;
  }
}

.account .tooltip.bottom {
  display: none;
  left: -8.1rem;
  margin-top: 0;
  padding-top: 20px;
  padding-bottom: 0;
}

.account .tooltip.bottom .tooltip-arrow {
  top: 10px;
}

.account .tooltip.bottom .tooltip-inner {
  width: 18rem;
  padding-top: 0;
  padding-bottom: 0;
}

.account:hover .tooltip {
  display: block;
}

.account__item {
  padding-top: 0.8rem;
  padding-bottom: 0.8rem;
}

.account__item + .account__item {
  border-top: 1px solid rgba(255, 255, 255, 0.4);
}

.tel__link {
  letter-spacing: 0;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

@media (max-width: 767px) {
  .tel__link {
    position: relative;
    position: absolute;
    top: 0;
    right: 7rem;
    height: 6.5rem;
    transition: right .2s;
  }
  .tel__link:before {
    font-family: "iconfont";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    text-decoration: none;
    text-transform: none;
    content: "";
  }
  .tel__link:before {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .page-accueil.scrolltop:not(.menu-mobile-opened):not(.contact-mobile-opened) .tel__link {
    right: -3rem;
  }
  .contact-mobile-opened .tel__link:before {
    color: #000;
  }
  .contact-mobile-opened .tel__link:after {
    content: "";
    width: 4.8rem;
    height: 4.8rem;
    background: #FFF;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
    border-radius: 50%;
  }
  .tel__link span {
    display: none;
  }
}

@media (max-width: 767px) {
  .tel .tooltip {
    display: none !important;
  }
}

.logo-vdm {
  position: absolute;
  top: 2rem;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  width: 13rem;
  z-index: 1;
  transition: width .2s, top .2s;
}

@media (max-width: 767px) {
  .logo-vdm {
    top: -3.5rem;
    z-index: 0;
  }
  .page-accueil.scrolltop:not(.menu-mobile-opened):not(.contact-mobile-opened) .logo-vdm {
    top: 2rem;
    width: 13rem;
  }
}

@media (max-width: 320px) {
  .page-accueil.scrolltop:not(.menu-mobile-opened):not(.contact-mobile-opened) .logo-vdm {
    width: 10rem;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .logo-vdm {
    width: 9rem;
  }
}

@media (min-width: 768px) {
  .scrolled .logo-vdm,
  .page-produit .logo-vdm,
  .page-cheques-cadeaux-tunnel .logo-vdm,
  .page-ddv .logo-vdm,
  .page-ddv-produit .logo-vdm,
  .page-mag .logo-vdm,
  .page-onpartou .logo-vdm {
    width: 9rem;
    top: 1rem;
  }
  .logo-is-hidden .logo-vdm {
    top: -9rem;
  }
}

.menu-button {
  background: #000;
  height: 100%;
  width: 5.55556rem;
  height: 5.88889rem;
  position: relative;
  display: block;
}

@media (min-width: 768px) {
  .nav .menu-button {
    display: none;
  }
}

.menu-button.scrollTopButtonStickyNav {
  color: #FFF;
  transform: rotate(-180deg);
  position: relative;
}

.menu-button.scrollTopButtonStickyNav:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.menu-button.scrollTopButtonStickyNav:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.menu-button .nav-icon span {
  display: block;
  width: 25px;
  height: 2px;
  background-color: #FFF;
  position: absolute;
  transition: all .2s ease-in-out 0s;
  left: 50%;
  top: 50%;
  margin-left: -10px;
  margin-top: -1px;
}

.menu-button .nav-icon span:before, .menu-button .nav-icon span:after {
  content: '';
  display: block;
  width: 25px;
  height: 2px;
  background-color: #FFF;
  position: absolute;
  transition: all .2s ease-in-out 0s;
}

.menu-button .nav-icon span:before {
  top: -7px;
}

.menu-button .nav-icon span:after {
  top: 7px;
}

.menu-mobile-opened .menu-button .nav-icon span {
  background-color: transparent;
}

.menu-mobile-opened .menu-button .nav-icon span:before {
  transform: rotate(45deg);
  top: 0;
  left: 0;
}

.menu-mobile-opened .menu-button .nav-icon span:after {
  transform: rotate(-45deg);
  top: 0;
  left: 0;
}

/* ==========================================================================
   & sticky nav
   ========================================================================== */
.sticky-nav {
  background-color: #FFF;
  position: relative;
  z-index: 3;
  width: 100%;
  padding-left: 5.55556rem;
  padding-right: 5.55556rem;
}

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

.sticky-nav:after {
  clear: both;
}

@media (max-width: 767px) {
  .sticky-nav {
    display: none;
  }
  .page-resultats .sticky-nav {
    padding-left: 2rem;
    padding-right: 2rem;
    position: fixed;
    left: 0;
    display: block;
    background-color: #0082ad;
    bottom: 0;
    -webkit-overflow-scrolling: touch;
    will-change: transform;
    transition: transform .2s ease-in;
    transform: translateY(0);
  }
  .page-resultats.recherche-filters-is-opened .sticky-nav {
    transition: transform .25s ease-out;
    transform: translateY(calc(-100vh + 5.55556rem));
  }
}

.sticky-nav-is-fixed .sticky-nav {
  position: fixed;
  top: 0;
  left: 0;
  padding-left: 0;
  padding-right: 0;
  z-index: 40;
}

.page-produit .sticky-nav,
.page-librairie .sticky-nav {
  padding-left: 0rem;
  padding-right: 0rem;
}

.sticky-nav__list {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.page-produit .sticky-nav__list,
.page-librairie .sticky-nav__list {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.page-produit .sticky-nav__list:before, .page-produit .sticky-nav__list:after,
.page-librairie .sticky-nav__list:before,
.page-librairie .sticky-nav__list:after {
  content: " ";
  display: table;
}

.page-produit .sticky-nav__list:after,
.page-librairie .sticky-nav__list:after {
  clear: both;
}

@media (min-width: 768px) {
  .page-produit .sticky-nav__list,
  .page-librairie .sticky-nav__list {
    width: 668px;
  }
}

@media (min-width: 992px) {
  .page-produit .sticky-nav__list,
  .page-librairie .sticky-nav__list {
    width: 882px;
  }
}

@media (min-width: 1440px) {
  .page-produit .sticky-nav__list,
  .page-librairie .sticky-nav__list {
    width: 1230px;
  }
}

.sticky-nav-is-fixed .sticky-nav__list {
  width: 100%;
  padding-left: 0;
  padding-right: 0;
}

.page-conseillers-pays .sticky-nav__list,
.page-conseillers-interview .sticky-nav__list {
  margin-left: auto;
  margin-right: auto;
  max-width: 100rem;
}

.page-cheques-cadeaux-tunnel .sticky-nav__list {
  margin-left: auto;
  margin-right: auto;
  max-width: 80rem;
}

.page-conseillers-pays.sticky-nav-is-fixed .sticky-nav__list,
.page-conseillers-interview.sticky-nav-is-fixed .sticky-nav__list,
.page-cheques-cadeaux-tunnel.sticky-nav-is-fixed .sticky-nav__list {
  max-width: none;
}

.sticky-nav__item {
  flex-grow: 1;
  text-align: center;
  vertical-align: middle;
  display: inline-block;
  line-height: 4.77778rem;
}

.sticky-nav__item + .sticky-nav__item {
  position: relative;
}

@media (min-width: 768px) {
  .sticky-nav__item + .sticky-nav__item:before {
    content: "";
    position: absolute;
    display: block;
    background-color: #000;
    width: 1px;
    height: 2.5rem;
    top: 50%;
    transform: translateY(-50%);
  }
}

.page-conseillers-interview .sticky-nav__item,
.page-cheques-cadeaux-tunnel .sticky-nav__item {
  width: 33.33%;
}

.sticky-nav__link {
  display: inline-block;
  vertical-align: middle;
  height: 4.77778rem;
  line-height: 4.77778rem;
  margin: 0.5rem;
  padding-left: 1rem;
  padding-right: 1rem;
  text-transform: uppercase;
  font-size: 1.4rem;
  letter-spacing: .2rem;
}

.sticky-nav__link.active {
  background-color: #0082ad;
  color: #FFF;
}

.sticky-nav__link > span {
  display: inline-block;
  vertical-align: middle;
  line-height: 1.1;
}

.sticky-nav__fixed-item {
  display: none;
}

@media (min-width: 768px) {
  .sticky-nav-is-fixed .sticky-nav__fixed-item {
    display: block;
  }
}

.sticky-nav__button {
  white-space: nowrap;
}

@media (max-width: 991px) {
  .sticky-nav__button {
    font-size: 1.4rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

a.sticky-nav__link.active:hover {
  color: #FFF;
}

a.sticky-nav__link:hover {
  color: #0082ad;
}

@media (max-width: 767px) {
  .sticky-nav-wrapper {
    height: 0 !important;
  }
}

@media (min-width: 768px) {
  .sticky-nav-mobile-wrapper {
    display: none;
  }
}

.sticky-nav-mobile {
  position: relative;
  z-index: 4;
  background-color: rgba(255, 255, 255, 0.97);
}

.sticky-nav-mobile-is-fixed .sticky-nav-mobile {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
}

.sticky-nav-mobile__button {
  border-bottom: 1px solid;
  text-align: center;
  display: block;
  padding: 2rem 1rem;
  text-transform: uppercase;
  font-size: 1.8rem;
  letter-spacing: .2rem;
  width: 100%;
  font-weight: 700;
}

.sticky-nav-mobile__button-text:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.sticky-nav-mobile__button-text:after {
  vertical-align: middle;
}

.sticky-nav-mobile .sticky-nav__link {
  display: none;
  border-bottom: 1px solid #000;
  text-align: center;
}

.sticky-nav-mobile-is-opened .sticky-nav-mobile .sticky-nav__link {
  display: block;
}

/* ==========================================================================
   & menu
   ========================================================================== */
.menu {
  display: none;
  position: fixed;
  top: 5.9rem;
  left: 5.55556rem;
  right: 5.55556rem;
  z-index: 1100;
  border: 0.88889rem solid #feac94;
  background-color: #FFF;
  padding: 4rem;
  overflow: hidden;
}

.open-menu:hover .menu,
.open-menu:focus .menu {
  display: block;
}

@media (max-width: 767px) {
  .menu {
    display: none;
  }
}

.menu__inner {
  height: 100%;
  position: relative;
}

.menu__close {
  display: none;
}

.box-menu {
  display: flex;
  height: 100%;
}

.box-menu__main {
  flex-grow: 1;
}

.box-menu__main-inner {
  overflow-x: hidden;
  overflow-y: auto;
  height: 100%;
}

.box-menu__list {
  margin-bottom: 4rem;
}

.box-menu__item {
  margin-top: 1rem;
}

@media (min-width: 1025px) {
  .box-menu__item {
    margin-top: 2rem;
  }
}

.box-menu__item:first-child {
  margin-top: 0;
}

.box-menu__item.active {
  font-weight: 700;
}

.box-menu__link {
  font-size: 3rem;
}

@media (max-width: 1024px) {
  .box-menu__link {
    font-size: 2rem;
  }
}

.box-menu__subitem.active {
  font-weight: 700;
}

.box-menu__sublink {
  color: #0082ad;
  text-transform: uppercase;
  font-size: 2rem;
}

.box-menu__sublink:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-menu__sublink:before {
  font-size: 1.6rem;
  color: #000;
}

@media (max-width: 1024px) {
  .box-menu__sublink {
    font-size: 1.4rem;
  }
  .box-menu__sublink:before {
    font-size: 1rem;
  }
}

.box-menu__tel {
  font-weight: 700;
  font-size: 1.7rem;
}

.social-menu {
  margin-top: 2rem;
  color: #8a8a8a;
}

.social-menu__title {
  font-size: 1.2rem;
  font-weight: 700;
}

@media (max-width: 767px) {
  .social-menu__title {
    font-size: 2rem;
  }
}

.social-menu__list {
  margin-top: 1rem;
}

.social-menu__item {
  display: inline-block;
}

@media (max-width: 1024px) {
  .social-menu__item + .social-menu__item {
    margin-left: 0.5rem;
  }
}

.social-menu__link {
  position: relative;
  display: block;
  font-size: 1.8rem;
  width: 2.4rem;
  height: 2.4rem;
}

.social-menu__link:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.social-menu__link:hover {
  color: #feac94;
}

@media (max-width: 767px) {
  .social-menu__link {
    font-size: 2.6rem;
    width: 4.4rem;
    height: 4.4rem;
  }
}

.social-menu__link.facebook:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.social-menu__link.google-plus:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.social-menu__link.twitter:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.social-menu__link.pinterest:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.social-menu__link.instagram:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.social-menu__link.youtube:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-list__title {
  font-size: 2.2rem;
  font-weight: 700;
  margin-bottom: 1.5rem;
}

.box-list__list > li {
  margin-top: .5rem;
}

.box-list__list > li > a {
  font-size: 1.8rem;
}

.box-list__list > li > a:hover {
  text-decoration: underline;
}

.box-destinations {
  margin-left: auto;
  margin-right: auto;
  max-width: 130rem;
}

.box-inspirations {
  margin-left: auto;
  margin-right: auto;
  max-width: 115rem;
}

@media (min-width: 992px) {
  .box-inspirations__row {
    margin-left: -3rem;
    margin-right: -3rem;
    display: flex;
  }
  .box-inspirations__row > * {
    padding-left: 3rem;
    padding-right: 3rem;
  }
  .box-inspirations__row > * + * {
    border-left: 1px solid #8a8a8a;
  }
}

.box-inspirations__list {
  margin-top: 8rem;
}

.box-inspirations__list > li + li {
  margin-top: 1rem;
}

.box-inspirations__list > li > a {
  font-weight: 700;
}

.box-inspirations__list > li > a:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-inspirations__list > li > a:before {
  display: inline-block;
  font-size: 1rem;
  margin-right: 0.5rem;
}

.box-inspirations .box-envie {
  margin-bottom: 2rem;
}

.box-inspirations .box-envie__text {
  font-size: 1.5rem;
  font-weight: 500;
}

.box-inspirations .button-menu {
  margin-bottom: 2rem;
}

.box-inspirations .box-list__title {
  margin-bottom: 0;
}

.box-a-propos {
  margin-left: auto;
  margin-right: auto;
  max-width: 117rem;
}

@media (min-width: 992px) {
  .box-a-propos__row {
    margin-left: -3rem;
    margin-right: -3rem;
  }
  .box-a-propos__row > * {
    padding-left: 3rem;
    padding-right: 3rem;
  }
}

.box-a-propos .box-envie {
  margin-bottom: 2rem;
}

.box-a-propos .box-envie__text {
  font-weight: 500;
}

.box-a-propos .actions {
  margin-top: 2rem;
}

@media (min-width: 768px) {
  .list-continent {
    columns: 4;
  }
  .list-continent > li + li {
    margin-top: 1rem;
  }
  .list-continent .list-continent__link {
    font-weight: 700;
    color: #0082ad;
    margin-bottom: 0.2rem;
    display: block;
  }
  .list-continent button.list-continent__link {
    cursor: default;
    width: 100%;
    text-align: left;
  }
  .list-continent a.list-continent__link:hover {
    text-decoration: underline;
  }
}

@media (min-width: 991px) and (max-width: 1023px) {
  .list-continent {
    columns: 5;
  }
}

@media (min-width: 1024px) and (max-width: 1439px) {
  .list-continent {
    columns: 7;
  }
}

@media (min-width: 1440px) {
  .list-continent {
    columns: 7;
  }
}

.list-pays > li > a {
  display: block;
  font-size: 1.4rem;
}

.list-pays > li > a:hover {
  text-decoration: underline;
}

.box-menu-saisons {
  color: #0082ad;
  text-transform: uppercase;
  font-weight: 700;
}

.box-menu-saisons + .box-menu-saisons {
  margin-top: 4rem;
}

@media (max-width: 991px) {
  .box-menu-saisons {
    margin-top: 2rem;
  }
}

.box-menu-saisons__title {
  font-size: 2rem;
  margin-bottom: 2rem;
  display: block;
}

.box-menu-saisons__title:hover {
  text-decoration: underline;
}

@media (max-width: 991px) {
  .box-menu-saisons__title {
    margin-bottom: 1rem;
  }
}

@media (max-width: 991px) {
  .box-menu-saisons__list {
    columns: 4;
  }
}

.box-menu-saisons__list > li:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.box-menu-saisons__list > li:before {
  font-size: 1rem;
  margin-right: 0.5rem;
}

.box-menu-saisons__list > li > a:hover {
  text-decoration: underline;
}

.box-commande-brochure {
  margin-top: 3rem;
  text-align: center;
}

.box-commande-brochure__text {
  margin-top: 1rem;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 1.3rem;
}

/* ==========================================================================
   & menu mobile
   ========================================================================== */
.menu-mobile {
  display: none;
}

@media (max-width: 767px) {
  .menu-mobile {
    display: block;
    position: fixed;
    top: 6.5rem;
    overflow-y: auto;
    width: 100%;
    height: 100%;
    padding-bottom: 20rem;
    background-color: #FFF;
    z-index: 1001;
    -webkit-overflow-scrolling: touch;
    will-change: transform;
    transition: transform .2s ease-in;
    transform: translateX(-100%);
  }
  .menu-mobile-opened .menu-mobile {
    transition: transform .25s ease-out;
    transform: translateX(0);
  }
  .menu-mobile__footer {
    padding-left: 2rem;
    padding-right: 2rem;
    padding-bottom: 1rem;
    position: fixed;
    width: 100%;
    bottom: 6rem;
  }
}

.menu-mobile-list {
  text-transform: uppercase;
  font-weight: 500;
  position: relative;
  z-index: 1;
  background-color: #FFF;
}

.menu-mobile-list a {
  display: block;
}

.menu-mobile-list > li > a {
  color: inherit;
  text-decoration: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  margin: 0;
  border-bottom: 1px solid #dbdde3;
  padding: 1.5rem 2rem;
  font-size: 2.4rem;
}

.menu-mobile-list > li > a.js-toggle-menu {
  transition: all .3s;
  padding-right: 5rem;
}

.menu-mobile-list > li > a.js-toggle-menu:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.menu-mobile-list > li > a.js-toggle-menu:before {
  position: absolute;
  right: 2rem;
  transition: transform .3s;
  transform: rotate(-45deg);
}

.menu-mobile-list > li > a.opened {
  background-color: #8a8a8a;
  color: #FFF;
}

.menu-mobile-list > li > a.opened + ul {
  display: block;
}

.menu-mobile-list > li > a.opened:before {
  transform: rotate(0);
}

.menu-mobile-list > li > ul {
  display: none;
}

.menu-mobile-list > li > ul > li > .js-menu-mobile-niv2 {
  color: inherit;
  text-decoration: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  margin: 0;
  border-bottom: 1px solid #dbdde3;
  padding: 1.5rem 3rem;
  font-size: 1.6rem;
  width: 100%;
  text-align: left;
}

.menu-mobile-list > li > ul > li > .js-menu-mobile-niv2.js-toggle-menu {
  transition: all .3s;
  padding-right: 5rem;
}

.menu-mobile-list > li > ul > li > .js-menu-mobile-niv2.js-toggle-menu:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.menu-mobile-list > li > ul > li > .js-menu-mobile-niv2.js-toggle-menu:before {
  position: absolute;
  right: 2.4rem;
  transition: transform .3s;
  transform: rotate(-45deg);
}

.menu-mobile-list > li > ul > li > .js-menu-mobile-niv2.opened {
  background-color: #d1d1d1;
}

.menu-mobile-list > li > ul > li > .js-menu-mobile-niv2.opened + ul {
  display: block;
}

.menu-mobile-list > li > ul > li > .js-menu-mobile-niv2.opened:before {
  transform: rotate(0);
}

.menu-mobile-list > li > ul > li > ul {
  display: none;
}

.menu-mobile-list > li > ul > li > ul > li > .js-menu-mobile-niv3 {
  color: inherit;
  text-decoration: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  margin: 0;
  border-bottom: 1px solid #dbdde3;
  padding: 1.5rem 5rem 1.5rem 4rem;
  font-size: 1.6rem;
}

.menu-mobile-list > li > ul > li > ul.opened {
  display: block;
}

/* ==========================================================================
   & contact
   ========================================================================== */
.contact {
  display: block;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1100;
  background-color: #f6f6f6;
  border-bottom: 1px solid #dbdde3;
  padding: 5rem 2rem;
  text-align: center;
  overflow: hidden;
  transition: 0.4s ease-in;
  transform: translateY(-120%);
  border: 0.88889rem solid #feac94;
  margin: 4rem auto;
}

@media (min-width: 768px) {
  .contact {
    max-width: 90rem;
    max-height: 70rem;
  }
}

@media (min-width: 992px) {
  .contact {
    max-width: 110rem;
    max-height: 75rem;
  }
}

.contact-opened .contact {
  transition: 0.5s ease-out;
  transform: translateY(0);
}

.contact__inner {
  height: 100%;
  position: relative;
}

.contact__close {
  position: relative;
  line-height: 1;
  width: 2rem;
  height: 2rem;
  font-size: 2rem;
  padding: 0;
  position: absolute;
  top: -2rem;
  left: 2rem;
}

.contact__close:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.contact__close:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media (min-width: 1025px) {
  .contact__close {
    width: 2.5rem;
    height: 2.5rem;
    font-size: 2.5rem;
  }
}

.contact__close span {
  display: none;
}

.contact__section {
  margin-top: 3rem;
}

.contact__title {
  font-size: 4.4rem;
  text-align: left;
  font-weight: normal;
  margin-bottom: 4rem;
  line-height: 1.2;
  display: inline-block;
}

.contact__actions {
  margin-top: 4rem;
  margin-bottom: 4rem;
}

.contact__list {
  margin-left: auto;
  margin-right: auto;
  max-width: 60rem;
  margin-bottom: 4rem;
}

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

.contact__list:after {
  clear: both;
}

.contact__item {
  display: block;
  width: 50%;
  float: left;
}

.contact__tab-content {
  overflow: auto;
  height: calc(100vh - 24rem);
}

.menu-contact {
  font-size: 2rem;
  margin-bottom: 4rem;
}

.menu-contact__item {
  display: inline-block;
}

.menu-contact__item.active {
  font-weight: 700;
}

.menu-contact__item.active .menu-contact__link {
  text-decoration: underline;
}

.menu-contact__item + .menu-contact__item {
  margin-left: 4rem;
}

.contact .container {
  max-width: 882px;
}

.contact-accueil__links {
  margin-left: auto;
  margin-right: auto;
  max-width: 60rem;
}

.contact-accueil__link {
  font-size: 2rem;
}

.contact-accueil__link:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.contact-accueil__link:before {
  display: inline-block;
  font-size: 1.5rem;
  position: relative;
  top: 0.2rem;
}

.contact-pays__inner {
  margin-left: auto;
  margin-right: auto;
}

.contact-pays__text {
  font-size: 3.5rem;
  margin-bottom: 4rem;
  text-align: left;
}

.contact-pays__list {
  text-align: left;
  font-size: 1.4rem;
  column-count: 3;
  column-gap: 12rem;
}

@media (max-width: 991px) {
  .contact-pays__list {
    column-gap: 4rem;
  }
}

.contact-pays__list li:before, .contact-pays__list li:after {
  content: " ";
  display: table;
}

.contact-pays__list li:after {
  clear: both;
}

.contact-pays__list li + li {
  margin-top: 0.2rem;
}

.contact-pays__list .value {
  font-weight: 700;
  float: right;
  width: 10rem;
}

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

.contact-agences__list {
  margin-top: 2rem;
  text-align: left;
}

.contact-agences__list li {
  min-height: 85px;
}

.contact-agences__list li + li {
  margin-top: 2rem;
}

.contact-agences__list .text {
  font-weight: 700;
}

.contact-item__icon {
  color: #feac94;
  font-size: 6rem;
  width: 6rem;
  height: 6rem;
  display: inline-block;
  position: relative;
}

.contact-item__icon:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media (max-width: 767px) {
  .contact-item__icon {
    display: inline-block;
    line-height: 1;
    vertical-align: middle;
    font-size: 4rem;
  }
}

.contact-item__text {
  text-transform: uppercase;
  font-size: 1.8rem;
  margin-top: 0;
}

@media (max-width: 767px) {
  .contact-item__text {
    display: inline-block;
  }
}

.contact-item__link {
  display: inline-block;
}

@media (max-width: 767px) {
  .contact-item__link {
    display: block;
  }
}

/* ==========================================================================
   & contact mobile
   ========================================================================== */
.contact-mobile {
  display: none;
}

@media (max-width: 767px) {
  .contact-mobile {
    display: block;
    position: fixed;
    top: 6.5rem;
    overflow-y: auto;
    width: 100%;
    height: 100%;
    padding-bottom: 20rem;
    background-color: #FFF;
    z-index: 1001;
    -webkit-overflow-scrolling: touch;
    will-change: transform;
    transition: transform .2s ease-in;
    transform: translateX(100%);
  }
  .contact-mobile-opened .contact-mobile {
    transition: transform .25s ease-out;
    transform: translateX(0);
  }
  .contact-mobile__footer {
    padding-left: 2rem;
    padding-right: 2rem;
    padding-bottom: 1rem;
    position: fixed;
    width: 100%;
    bottom: 0;
  }
}

.contact-mobile-list {
  text-transform: uppercase;
  font-weight: 500;
  position: relative;
  z-index: 1;
  background-color: #FFF;
}

.contact-mobile-list a {
  display: block;
}

.contact-mobile-list > li > a {
  color: inherit;
  text-decoration: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  margin: 0;
  border-bottom: 1px solid #dbdde3;
  padding: 1.5rem 2rem;
  font-size: 2.4rem;
  overflow: hidden;
}

.contact-mobile-list > li > a .value {
  float: right;
  color: #0082ad;
}

.contact-mobile-list > li > a.js-toggle-menu {
  transition: all .3s;
  padding-right: 5rem;
}

.contact-mobile-list > li > a.js-toggle-menu:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.contact-mobile-list > li > a.js-toggle-menu:before {
  position: absolute;
  right: 2rem;
  transition: transform .3s;
  transform: rotate(-45deg);
}

.contact-mobile-list > li > a.opened {
  background-color: #8a8a8a;
  color: #FFF;
}

.contact-mobile-list > li > a.opened + ul {
  display: block;
}

.contact-mobile-list > li > a.opened:before {
  transform: rotate(0);
}

.contact-mobile-list > li > ul {
  display: none;
}

.contact-mobile-list > li > ul > li > .contact-mobile-niv2 {
  color: inherit;
  text-decoration: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  margin: 0;
  border-bottom: 1px solid #dbdde3;
  padding: 1.5rem 3rem;
  font-size: 1.6rem;
  width: 100%;
  text-align: left;
}

.contact-mobile-list > li > ul > li > .contact-mobile-niv2 .value {
  float: right;
  color: #0082ad;
}

.scrollTopButton {
  position: fixed;
  z-index: 400;
  bottom: 8rem;
  right: 3rem;
  background-color: rgba(138, 138, 138, 0.8);
  transform: translateX(-50%);
  opacity: 0;
  white-space: nowrap;
  padding: 15px;
  border-radius: 30px;
  line-height: 1;
  transform: rotate(-180deg);
  transition: opacity .6s ease-out, background-color .3s ease-out;
}

.scrollTopButton:hover {
  background-color: rgba(156, 156, 156, 0.8);
}

.scrollTopButton:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.scrollTopButton:before {
  position: relative;
  top: 0.2rem;
}

.scrollTopButton, .scrollTopButton:hover, .scrollTopButton:focus, .scrollTopButton:active {
  color: #FFF;
  text-decoration: none;
}

.scrolltop-button-is-showed .scrollTopButton {
  opacity: 1;
}

@media (max-width: 767px) {
  .page-mag .scrollTopButton {
    right: auto;
    left: 3rem;
  }
}

/* ==========================================================================
   & nav univers 
   ========================================================================== */
@media (max-width: 767px) {
  .nav-univers {
    position: relative;
  }
  .nav-univers:before {
    content: "";
    width: 100%;
    height: 2px;
    background-color: #000;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
  }
  .nav-univers-mobile-is-fixed .nav-univers {
    position: fixed;
    z-index: 1;
    top: 6.5rem;
    right: 0;
    left: 0;
    background-color: #FFF;
  }
}

@media (max-width: 767px) {
  .nav-univers__inner {
    overflow-x: auto;
    overflow-y: hidden;
  }
}

@media (min-width: 768px) {
  .nav-univers__inner {
    padding-left: 5.55556rem;
    padding-right: 5.55556rem;
  }
}

@media (max-width: 767px) {
  .nav-univers__list {
    white-space: nowrap;
  }
}

@media (min-width: 768px) {
  .nav-univers__list {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}

.nav-univers__item {
  flex-grow: 1;
  text-align: center;
  vertical-align: middle;
  display: inline-block;
}

@media (min-width: 768px) {
  .nav-univers__item {
    position: relative;
  }
}

@media (min-width: 768px) {
  .nav-univers__item + .nav-univers__item:before {
    content: "";
    position: absolute;
    display: block;
    background-color: #000;
    width: 1px;
    height: 2.5rem;
    top: 50%;
    transform: translateY(-50%);
  }
}

.no-touch .nav-univers__item:hover .nav-univers__link, .no-touch .nav-univers__item:focus .nav-univers__link {
  color: #0082ad;
}

.nav-univers__item .dropdown-backdrop {
  display: none;
}

.nav-univers__link {
  display: inline-block;
  vertical-align: middle;
  height: 4.77778rem;
  line-height: 4.77778rem;
  padding-left: 1rem;
  padding-right: 1rem;
  text-transform: uppercase;
  font-size: 1.4rem;
  letter-spacing: .2rem;
}

@media (max-width: 767px) {
  .nav-univers__link {
    height: 5.55556rem;
    line-height: 5.55556rem;
    font-size: 1.6rem;
  }
}

@media (min-width: 768px) {
  .nav-univers__link {
    margin: 0.5rem;
  }
}

.nav-univers__link > span {
  display: inline-block;
  vertical-align: middle;
  line-height: 1.1;
}

.with-sousnav .nav-univers__link {
  position: relative;
  padding-right: 2.5rem;
}

.with-sousnav .nav-univers__link:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.with-sousnav .nav-univers__link:after {
  position: absolute;
  top: 50%;
  right: 1rem;
  font-size: 1rem;
  width: 1rem;
  height: 1rem;
  vertical-align: middle;
  transform: rotate(90deg) translateX(-50%);
  line-height: normal;
  margin-top: -0.2rem;
}

.home .nav-univers__link span:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.home .nav-univers__link span:before {
  vertical-align: middle;
  margin-right: 0.5rem;
  font-size: 0.84em;
  position: relative;
  top: -0.1em;
}

.active .nav-univers__link {
  font-weight: 700;
}

@media (max-width: 767px) {
  .active .nav-univers__link {
    position: relative;
  }
  .active .nav-univers__link:before {
    content: "";
    display: block;
    height: 4px;
    background-color: #000;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
  }
}

.touch .open .nav-univers__link {
  color: #0082ad;
}

.nav-univers__close {
  position: absolute;
  top: 0;
  right: 0;
  width: 4rem;
  height: 4rem;
  line-height: 4rem;
  font-size: 4rem;
  color: #0082ad;
}

.no-touch .nav-univers__close {
  display: none;
}

.nav-univers-mobile-wrapper {
  height: 5.55556rem;
}

.sousnav-univers {
  display: none;
  position: absolute;
  border: 2px solid #0082ad;
  background-color: #FFF;
  overflow: hidden;
  line-height: normal;
  box-shadow: 0 0 15px 1px rgba(0, 0, 0, 0.07);
  text-align: left;
  z-index: 995;
}

@media (max-width: 767px) {
  .sousnav-univers {
    left: 2rem;
    right: 2rem;
    margin-top: -2px;
    border-width: 3px;
    white-space: normal;
  }
}

@media (min-width: 768px) {
  .sousnav-univers {
    margin-top: -1rem;
    min-width: 100%;
    white-space: nowrap;
  }
}

.touch .sousnav-univers {
  max-height: calc(100vh - 18rem);
  overflow-y: auto;
}

.sousnav-univers__link {
  display: block;
  padding: 1rem;
}

.no-touch .sousnav-univers__link:hover {
  background-color: #f5f5f5;
}

.touch .sousnav-univers__link {
  padding-right: 3rem;
}

.no-touch .nav-univers__item:hover .sousnav-univers, .no-touch
.nav-univers__item:focus .sousnav-univers {
  display: block;
}

.touch .open .sousnav-univers {
  display: block;
}

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

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

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

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

.slick-slide:focus {
  outline: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
  margin-right: auto;
  margin-left: auto;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

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

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

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

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 3rem;
  width: 3rem;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}

.slick-prev:before,
.slick-next:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.slick-prev:focus,
.slick-next:focus {
  outline: none;
}

.slick-prev:focus:before,
.slick-next:focus:before {
  opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}

.slick-prev:before,
.slick-next:before {
  font-family: "slick";
  font-size: 6rem;
  line-height: 1;
  color: black;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.no-touch .slick-prev:hover,
.no-touch .slick-next:hover {
  outline: none;
}

.no-touch .slick-prev:hover:before,
.no-touch .slick-next:hover:before {
  opacity: 1;
}

.no-touch .slick-prev:hover.slick-disabled,
.no-touch .slick-next:hover.slick-disabled {
  cursor: default;
}

.no-touch .slick-prev:hover.slick-disabled:before,
.no-touch .slick-next:hover.slick-disabled:before {
  opacity: 0.25;
}

.slick-prev {
  left: -5rem;
}

.slick-prev:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

[dir="rtl"] .slick-prev {
  left: auto;
  right: -5rem;
}

[dir="rtl"] .slick-prev:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.slick-next {
  right: -5rem;
}

.slick-next:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

[dir="rtl"] .slick-next {
  left: -5rem;
  right: auto;
}

[dir="rtl"] .slick-next:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

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

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}

.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}

.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}

.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "•";
  width: 20px;
  height: 20px;
  font-family: "slick";
  font-size: 10px;
  line-height: 20px;
  text-align: center;
  color: #eee;
  opacity: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
  color: #111;
  opacity: 1;
}

.awesomplete {
  display: block;
  position: relative;
}

.awesomplete [hidden] {
  display: none;
}

.awesomplete .visually-hidden {
  position: absolute;
  clip: rect(0, 0, 0, 0);
}

.awesomplete > input {
  display: block;
}

.awesomplete > ul {
  position: absolute;
  left: 0;
  z-index: 1;
  min-width: 100%;
  box-sizing: border-box;
  list-style: none;
  padding: 0;
  margin: .2em 0 0;
  background: #FFF;
  text-shadow: none;
  box-shadow: 0px 0px 1px 0px rgba(0, 0, 0, 0.2);
}

.awesomplete > ul:empty {
  display: none;
}

.awesomplete > ul > li {
  position: relative;
  padding: .5em .7em;
  cursor: pointer;
  text-align: left;
  font-size: 1.8rem;
}

.awesomplete > ul > li:hover, .awesomplete > ul > li[aria-selected="true"] {
  background: #f6f6f6;
}

@media (min-width: 768px) {
  .awesomplete > ul > li {
    padding: .2em .5em;
  }
}

.awesomplete mark {
  color: #0082ad;
  font-weight: bold;
  background-color: transparent;
}

select.bs-select-hidden,
select.selectpicker {
  display: none !important;
}

.bootstrap-select {
  width: 220px \0;
  /*IE9 and below*/
}

.bootstrap-select > .dropdown-toggle {
  width: 100%;
  padding-right: 25px;
  z-index: 1;
}

.bootstrap-select > .dropdown-toggle.bs-placeholder, .bootstrap-select > .dropdown-toggle.bs-placeholder:hover, .bootstrap-select > .dropdown-toggle.bs-placeholder:focus, .bootstrap-select > .dropdown-toggle.bs-placeholder:active {
  color: #999;
}

.bootstrap-select > select {
  position: absolute !important;
  bottom: 0;
  left: 50%;
  display: block !important;
  width: 0.5px !important;
  height: 100% !important;
  padding: 0 !important;
  opacity: 0 !important;
  border: none;
}

.bootstrap-select > select.mobile-device {
  top: 0;
  left: 0;
  display: block !important;
  width: 100% !important;
  z-index: 2;
}

.has-error .bootstrap-select .dropdown-toggle,
.error .bootstrap-select .dropdown-toggle {
  border-color: #b94a48;
}

.bootstrap-select.fit-width {
  width: auto !important;
}

.bootstrap-select:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) {
  width: 220px;
}

.bootstrap-select .dropdown-toggle:focus {
  outline: thin dotted #333333 !important;
  outline: 5px auto -webkit-focus-ring-color !important;
  outline-offset: -2px;
}

.bootstrap-select.form-control {
  margin-bottom: 0;
  padding: 0;
  border: none;
}

.bootstrap-select.form-control:not([class*="col-"]) {
  width: 100%;
}

.bootstrap-select.form-control.input-group-btn {
  z-index: auto;
}

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

.bootstrap-select.btn-group:not(.input-group-btn), .bootstrap-select.btn-group[class*="col-"] {
  float: none;
  display: inline-block;
  margin-left: 0;
}

.bootstrap-select.btn-group.dropdown-menu-right, .bootstrap-select.btn-group[class*="col-"].dropdown-menu-right,
.row .bootstrap-select.btn-group[class*="col-"].dropdown-menu-right {
  float: right;
}

.form-inline .bootstrap-select.btn-group,
.form-horizontal .bootstrap-select.btn-group,
.form-group .bootstrap-select.btn-group {
  margin-bottom: 0;
}

.form-group-lg .bootstrap-select.btn-group.form-control,
.form-group-sm .bootstrap-select.btn-group.form-control {
  padding: 0;
}

.form-group-lg .bootstrap-select.btn-group.form-control .dropdown-toggle,
.form-group-sm .bootstrap-select.btn-group.form-control .dropdown-toggle {
  height: 100%;
  font-size: inherit;
  line-height: inherit;
  border-radius: inherit;
}

.form-inline .bootstrap-select.btn-group .form-control {
  width: 100%;
}

.bootstrap-select.btn-group.disabled,
.bootstrap-select.btn-group > .disabled {
  cursor: not-allowed;
}

.bootstrap-select.btn-group.disabled:focus,
.bootstrap-select.btn-group > .disabled:focus {
  outline: none !important;
}

.bootstrap-select.btn-group.bs-container {
  position: absolute;
  height: 0 !important;
  padding: 0 !important;
}

.bootstrap-select.btn-group.bs-container .dropdown-menu {
  z-index: 1060;
}

.bootstrap-select.btn-group .dropdown-toggle .filter-option {
  display: inline-block;
  overflow: hidden;
  width: 100%;
  text-align: left;
}

.bootstrap-select.btn-group .dropdown-toggle .caret {
  position: absolute;
  top: 50%;
  right: 12px;
  margin-top: -2px;
  vertical-align: middle;
}

.bootstrap-select.btn-group[class*="col-"] .dropdown-toggle {
  width: 100%;
}

.bootstrap-select.btn-group .dropdown-menu {
  min-width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.bootstrap-select.btn-group .dropdown-menu.inner {
  position: static;
  float: none;
  border: 0;
  padding: 0;
  margin: 0;
  border-radius: 0;
  box-shadow: none;
}

.bootstrap-select.btn-group .dropdown-menu li {
  position: relative;
}

.bootstrap-select.btn-group .dropdown-menu li.active small {
  color: #fff;
}

.bootstrap-select.btn-group .dropdown-menu li.disabled a {
  cursor: not-allowed;
}

.bootstrap-select.btn-group .dropdown-menu li a {
  cursor: pointer;
  user-select: none;
}

.bootstrap-select.btn-group .dropdown-menu li a.opt {
  position: relative;
  padding-left: 2.25em;
}

.bootstrap-select.btn-group .dropdown-menu li a span.check-mark {
  display: none;
}

.bootstrap-select.btn-group .dropdown-menu li a span.text {
  display: inline-block;
}

.bootstrap-select.btn-group .dropdown-menu li small {
  padding-left: 0.5em;
}

.bootstrap-select.btn-group .dropdown-menu .notify {
  position: absolute;
  bottom: 5px;
  width: 96%;
  margin: 0 2%;
  min-height: 26px;
  padding: 3px 5px;
  background: whitesmoke;
  border: 1px solid #e3e3e3;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
  pointer-events: none;
  opacity: 0.9;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.bootstrap-select.btn-group .no-results {
  padding: 3px;
  background: #f5f5f5;
  margin: 0 5px;
  white-space: nowrap;
}

.bootstrap-select.btn-group.fit-width .dropdown-toggle .filter-option {
  position: static;
}

.bootstrap-select.btn-group.fit-width .dropdown-toggle .caret {
  position: static;
  top: auto;
  margin-top: -1px;
}

.bootstrap-select.btn-group.show-tick .dropdown-menu li.selected a span.check-mark {
  position: absolute;
  display: inline-block;
  right: 15px;
  margin-top: 5px;
}

.bootstrap-select.btn-group.show-tick .dropdown-menu li a span.text {
  margin-right: 34px;
}

.bootstrap-select.show-menu-arrow.open > .dropdown-toggle {
  z-index: 1061;
}

.bootstrap-select.show-menu-arrow .dropdown-toggle:before {
  content: '';
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-bottom: 7px solid rgba(204, 204, 204, 0.2);
  position: absolute;
  bottom: -4px;
  left: 9px;
  display: none;
}

.bootstrap-select.show-menu-arrow .dropdown-toggle:after {
  content: '';
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 6px solid white;
  position: absolute;
  bottom: -4px;
  left: 10px;
  display: none;
}

.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle:before {
  bottom: auto;
  top: -3px;
  border-top: 7px solid rgba(204, 204, 204, 0.2);
  border-bottom: 0;
}

.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle:after {
  bottom: auto;
  top: -3px;
  border-top: 6px solid white;
  border-bottom: 0;
}

.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle:before {
  right: 12px;
  left: auto;
}

.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle:after {
  right: 13px;
  left: auto;
}

.bootstrap-select.show-menu-arrow.open > .dropdown-toggle:before, .bootstrap-select.show-menu-arrow.open > .dropdown-toggle:after {
  display: block;
}

.bs-searchbox,
.bs-actionsbox,
.bs-donebutton {
  padding: 4px 8px;
}

.bs-actionsbox {
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.bs-actionsbox .btn-group button {
  width: 50%;
}

.bs-donebutton {
  float: left;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.bs-donebutton .btn-group button {
  width: 100%;
}

.bs-searchbox + .bs-actionsbox {
  padding: 0 8px 4px;
}

.bs-searchbox .form-control {
  margin-bottom: 0;
  width: 100%;
  float: none;
}

/*!
 * Datepicker for Bootstrap v1.7.1 (https://github.com/uxsolutions/bootstrap-datepicker)
 *
 * Licensed under the Apache License v2.0 (http://www.apache.org/licenses/LICENSE-2.0)
 */
.datepicker {
  border-radius: 4px;
  direction: ltr;
}

.datepicker-inline {
  width: 220px;
}

.datepicker-rtl {
  direction: rtl;
}

.datepicker-rtl.dropdown-menu {
  left: auto;
}

.datepicker-rtl table tr td span {
  float: right;
}

.datepicker-dropdown {
  top: 0;
  left: 0;
  padding: 4px;
}

.datepicker-dropdown:before {
  content: '';
  display: inline-block;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-bottom: 7px solid rgba(0, 0, 0, 0.15);
  border-top: 0;
  border-bottom-color: rgba(0, 0, 0, 0.2);
  position: absolute;
}

.datepicker-dropdown:after {
  content: '';
  display: inline-block;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 6px solid #fff;
  border-top: 0;
  position: absolute;
}

.datepicker-dropdown.datepicker-orient-left:before {
  left: 6px;
}

.datepicker-dropdown.datepicker-orient-left:after {
  left: 7px;
}

.datepicker-dropdown.datepicker-orient-right:before {
  right: 6px;
}

.datepicker-dropdown.datepicker-orient-right:after {
  right: 7px;
}

.datepicker-dropdown.datepicker-orient-bottom:before {
  top: -7px;
}

.datepicker-dropdown.datepicker-orient-bottom:after {
  top: -6px;
}

.datepicker-dropdown.datepicker-orient-top:before {
  bottom: -7px;
  border-bottom: 0;
  border-top: 7px solid rgba(0, 0, 0, 0.15);
}

.datepicker-dropdown.datepicker-orient-top:after {
  bottom: -6px;
  border-bottom: 0;
  border-top: 6px solid #fff;
}

.datepicker table {
  margin: 0;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.datepicker table tr td,
.datepicker table tr th {
  text-align: center;
  width: 30px;
  height: 30px;
  border-radius: 4px;
  border: none;
}

.table-striped .datepicker table tr td,
.table-striped .datepicker table tr th {
  background-color: transparent;
}

.datepicker table tr td.old,
.datepicker table tr td.new {
  color: #777777;
}

.datepicker table tr td.day:hover,
.datepicker table tr td.focused {
  background: #eeeeee;
  cursor: pointer;
}

.datepicker table tr td.disabled,
.datepicker table tr td.disabled:hover {
  background: none;
  color: #777777;
  cursor: default;
}

.datepicker table tr td.highlighted {
  color: #000;
  background-color: #d9edf7;
  border-color: #85c5e5;
  border-radius: 0;
}

.datepicker table tr td.highlighted:focus,
.datepicker table tr td.highlighted.focus {
  color: #000;
  background-color: #afd9ee;
  border-color: #298fc2;
}

.datepicker table tr td.highlighted:hover {
  color: #000;
  background-color: #afd9ee;
  border-color: #52addb;
}

.datepicker table tr td.highlighted:active,
.datepicker table tr td.highlighted.active {
  color: #000;
  background-color: #afd9ee;
  border-color: #52addb;
}

.datepicker table tr td.highlighted:active:hover,
.datepicker table tr td.highlighted.active:hover,
.datepicker table tr td.highlighted:active:focus,
.datepicker table tr td.highlighted.active:focus,
.datepicker table tr td.highlighted:active.focus,
.datepicker table tr td.highlighted.active.focus {
  color: #000;
  background-color: #91cbe8;
  border-color: #298fc2;
}

.datepicker table tr td.highlighted.disabled:hover,
.datepicker table tr td.highlighted[disabled]:hover,
fieldset[disabled] .datepicker table tr td.highlighted:hover,
.datepicker table tr td.highlighted.disabled:focus,
.datepicker table tr td.highlighted[disabled]:focus,
fieldset[disabled] .datepicker table tr td.highlighted:focus,
.datepicker table tr td.highlighted.disabled.focus,
.datepicker table tr td.highlighted[disabled].focus,
fieldset[disabled] .datepicker table tr td.highlighted.focus {
  background-color: #d9edf7;
  border-color: #85c5e5;
}

.datepicker table tr td.highlighted.focused {
  background: #afd9ee;
}

.datepicker table tr td.highlighted.disabled,
.datepicker table tr td.highlighted.disabled:active {
  background: #d9edf7;
  color: #777777;
}

.datepicker table tr td.today {
  color: #000;
  background-color: #ffdb99;
  border-color: #ffb733;
}

.datepicker table tr td.today:focus,
.datepicker table tr td.today.focus {
  color: #000;
  background-color: #ffc966;
  border-color: #b37400;
}

.datepicker table tr td.today:hover {
  color: #000;
  background-color: #ffc966;
  border-color: #f59e00;
}

.datepicker table tr td.today:active,
.datepicker table tr td.today.active {
  color: #000;
  background-color: #ffc966;
  border-color: #f59e00;
}

.datepicker table tr td.today:active:hover,
.datepicker table tr td.today.active:hover,
.datepicker table tr td.today:active:focus,
.datepicker table tr td.today.active:focus,
.datepicker table tr td.today:active.focus,
.datepicker table tr td.today.active.focus {
  color: #000;
  background-color: #ffbc42;
  border-color: #b37400;
}

.datepicker table tr td.today.disabled:hover,
.datepicker table tr td.today[disabled]:hover,
fieldset[disabled] .datepicker table tr td.today:hover,
.datepicker table tr td.today.disabled:focus,
.datepicker table tr td.today[disabled]:focus,
fieldset[disabled] .datepicker table tr td.today:focus,
.datepicker table tr td.today.disabled.focus,
.datepicker table tr td.today[disabled].focus,
fieldset[disabled] .datepicker table tr td.today.focus {
  background-color: #ffdb99;
  border-color: #ffb733;
}

.datepicker table tr td.today.focused {
  background: #ffc966;
}

.datepicker table tr td.today.disabled,
.datepicker table tr td.today.disabled:active {
  background: #ffdb99;
  color: #777777;
}

.datepicker table tr td.range {
  color: #000;
  background-color: #eeeeee;
  border-color: #bbbbbb;
  border-radius: 0;
}

.datepicker table tr td.range:focus,
.datepicker table tr td.range.focus {
  color: #000;
  background-color: #d5d5d5;
  border-color: #7c7c7c;
}

.datepicker table tr td.range:hover {
  color: #000;
  background-color: #d5d5d5;
  border-color: #9d9d9d;
}

.datepicker table tr td.range:active,
.datepicker table tr td.range.active {
  color: #000;
  background-color: #d5d5d5;
  border-color: #9d9d9d;
}

.datepicker table tr td.range:active:hover,
.datepicker table tr td.range.active:hover,
.datepicker table tr td.range:active:focus,
.datepicker table tr td.range.active:focus,
.datepicker table tr td.range:active.focus,
.datepicker table tr td.range.active.focus {
  color: #000;
  background-color: #c3c3c3;
  border-color: #7c7c7c;
}

.datepicker table tr td.range.disabled:hover,
.datepicker table tr td.range[disabled]:hover,
fieldset[disabled] .datepicker table tr td.range:hover,
.datepicker table tr td.range.disabled:focus,
.datepicker table tr td.range[disabled]:focus,
fieldset[disabled] .datepicker table tr td.range:focus,
.datepicker table tr td.range.disabled.focus,
.datepicker table tr td.range[disabled].focus,
fieldset[disabled] .datepicker table tr td.range.focus {
  background-color: #eeeeee;
  border-color: #bbbbbb;
}

.datepicker table tr td.range.focused {
  background: #d5d5d5;
}

.datepicker table tr td.range.disabled,
.datepicker table tr td.range.disabled:active {
  background: #eeeeee;
  color: #777777;
}

.datepicker table tr td.range.highlighted {
  color: #000;
  background-color: #e4eef3;
  border-color: #9dc1d3;
}

.datepicker table tr td.range.highlighted:focus,
.datepicker table tr td.range.highlighted.focus {
  color: #000;
  background-color: #c1d7e3;
  border-color: #4b88a6;
}

.datepicker table tr td.range.highlighted:hover {
  color: #000;
  background-color: #c1d7e3;
  border-color: #73a6c0;
}

.datepicker table tr td.range.highlighted:active,
.datepicker table tr td.range.highlighted.active {
  color: #000;
  background-color: #c1d7e3;
  border-color: #73a6c0;
}

.datepicker table tr td.range.highlighted:active:hover,
.datepicker table tr td.range.highlighted.active:hover,
.datepicker table tr td.range.highlighted:active:focus,
.datepicker table tr td.range.highlighted.active:focus,
.datepicker table tr td.range.highlighted:active.focus,
.datepicker table tr td.range.highlighted.active.focus {
  color: #000;
  background-color: #a8c8d8;
  border-color: #4b88a6;
}

.datepicker table tr td.range.highlighted.disabled:hover,
.datepicker table tr td.range.highlighted[disabled]:hover,
fieldset[disabled] .datepicker table tr td.range.highlighted:hover,
.datepicker table tr td.range.highlighted.disabled:focus,
.datepicker table tr td.range.highlighted[disabled]:focus,
fieldset[disabled] .datepicker table tr td.range.highlighted:focus,
.datepicker table tr td.range.highlighted.disabled.focus,
.datepicker table tr td.range.highlighted[disabled].focus,
fieldset[disabled] .datepicker table tr td.range.highlighted.focus {
  background-color: #e4eef3;
  border-color: #9dc1d3;
}

.datepicker table tr td.range.highlighted.focused {
  background: #c1d7e3;
}

.datepicker table tr td.range.highlighted.disabled,
.datepicker table tr td.range.highlighted.disabled:active {
  background: #e4eef3;
  color: #777777;
}

.datepicker table tr td.range.today {
  color: #000;
  background-color: #f7ca77;
  border-color: #f1a417;
}

.datepicker table tr td.range.today:focus,
.datepicker table tr td.range.today.focus {
  color: #000;
  background-color: #f4b747;
  border-color: #815608;
}

.datepicker table tr td.range.today:hover {
  color: #000;
  background-color: #f4b747;
  border-color: #bf800c;
}

.datepicker table tr td.range.today:active,
.datepicker table tr td.range.today.active {
  color: #000;
  background-color: #f4b747;
  border-color: #bf800c;
}

.datepicker table tr td.range.today:active:hover,
.datepicker table tr td.range.today.active:hover,
.datepicker table tr td.range.today:active:focus,
.datepicker table tr td.range.today.active:focus,
.datepicker table tr td.range.today:active.focus,
.datepicker table tr td.range.today.active.focus {
  color: #000;
  background-color: #f2aa25;
  border-color: #815608;
}

.datepicker table tr td.range.today.disabled:hover,
.datepicker table tr td.range.today[disabled]:hover,
fieldset[disabled] .datepicker table tr td.range.today:hover,
.datepicker table tr td.range.today.disabled:focus,
.datepicker table tr td.range.today[disabled]:focus,
fieldset[disabled] .datepicker table tr td.range.today:focus,
.datepicker table tr td.range.today.disabled.focus,
.datepicker table tr td.range.today[disabled].focus,
fieldset[disabled] .datepicker table tr td.range.today.focus {
  background-color: #f7ca77;
  border-color: #f1a417;
}

.datepicker table tr td.range.today.disabled,
.datepicker table tr td.range.today.disabled:active {
  background: #f7ca77;
  color: #777777;
}

.datepicker table tr td.selected,
.datepicker table tr td.selected.highlighted {
  color: #fff;
  background-color: #777777;
  border-color: #555555;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}

.datepicker table tr td.selected:focus,
.datepicker table tr td.selected.highlighted:focus,
.datepicker table tr td.selected.focus,
.datepicker table tr td.selected.highlighted.focus {
  color: #fff;
  background-color: #5e5e5e;
  border-color: #161616;
}

.datepicker table tr td.selected:hover,
.datepicker table tr td.selected.highlighted:hover {
  color: #fff;
  background-color: #5e5e5e;
  border-color: #373737;
}

.datepicker table tr td.selected:active,
.datepicker table tr td.selected.highlighted:active,
.datepicker table tr td.selected.active,
.datepicker table tr td.selected.highlighted.active {
  color: #fff;
  background-color: #5e5e5e;
  border-color: #373737;
}

.datepicker table tr td.selected:active:hover,
.datepicker table tr td.selected.highlighted:active:hover,
.datepicker table tr td.selected.active:hover,
.datepicker table tr td.selected.highlighted.active:hover,
.datepicker table tr td.selected:active:focus,
.datepicker table tr td.selected.highlighted:active:focus,
.datepicker table tr td.selected.active:focus,
.datepicker table tr td.selected.highlighted.active:focus,
.datepicker table tr td.selected:active.focus,
.datepicker table tr td.selected.highlighted:active.focus,
.datepicker table tr td.selected.active.focus,
.datepicker table tr td.selected.highlighted.active.focus {
  color: #fff;
  background-color: #4c4c4c;
  border-color: #161616;
}

.datepicker table tr td.selected.disabled:hover,
.datepicker table tr td.selected.highlighted.disabled:hover,
.datepicker table tr td.selected[disabled]:hover,
.datepicker table tr td.selected.highlighted[disabled]:hover,
fieldset[disabled] .datepicker table tr td.selected:hover,
fieldset[disabled] .datepicker table tr td.selected.highlighted:hover,
.datepicker table tr td.selected.disabled:focus,
.datepicker table tr td.selected.highlighted.disabled:focus,
.datepicker table tr td.selected[disabled]:focus,
.datepicker table tr td.selected.highlighted[disabled]:focus,
fieldset[disabled] .datepicker table tr td.selected:focus,
fieldset[disabled] .datepicker table tr td.selected.highlighted:focus,
.datepicker table tr td.selected.disabled.focus,
.datepicker table tr td.selected.highlighted.disabled.focus,
.datepicker table tr td.selected[disabled].focus,
.datepicker table tr td.selected.highlighted[disabled].focus,
fieldset[disabled] .datepicker table tr td.selected.focus,
fieldset[disabled] .datepicker table tr td.selected.highlighted.focus {
  background-color: #777777;
  border-color: #555555;
}

.datepicker table tr td.active,
.datepicker table tr td.active.highlighted {
  color: #fff;
  background-color: #337ab7;
  border-color: #2e6da4;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}

.datepicker table tr td.active:focus,
.datepicker table tr td.active.highlighted:focus,
.datepicker table tr td.active.focus,
.datepicker table tr td.active.highlighted.focus {
  color: #fff;
  background-color: #286090;
  border-color: #122b40;
}

.datepicker table tr td.active:hover,
.datepicker table tr td.active.highlighted:hover {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}

.datepicker table tr td.active:active,
.datepicker table tr td.active.highlighted:active,
.datepicker table tr td.active.active,
.datepicker table tr td.active.highlighted.active {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}

.datepicker table tr td.active:active:hover,
.datepicker table tr td.active.highlighted:active:hover,
.datepicker table tr td.active.active:hover,
.datepicker table tr td.active.highlighted.active:hover,
.datepicker table tr td.active:active:focus,
.datepicker table tr td.active.highlighted:active:focus,
.datepicker table tr td.active.active:focus,
.datepicker table tr td.active.highlighted.active:focus,
.datepicker table tr td.active:active.focus,
.datepicker table tr td.active.highlighted:active.focus,
.datepicker table tr td.active.active.focus,
.datepicker table tr td.active.highlighted.active.focus {
  color: #fff;
  background-color: #204d74;
  border-color: #122b40;
}

.datepicker table tr td.active.disabled:hover,
.datepicker table tr td.active.highlighted.disabled:hover,
.datepicker table tr td.active[disabled]:hover,
.datepicker table tr td.active.highlighted[disabled]:hover,
fieldset[disabled] .datepicker table tr td.active:hover,
fieldset[disabled] .datepicker table tr td.active.highlighted:hover,
.datepicker table tr td.active.disabled:focus,
.datepicker table tr td.active.highlighted.disabled:focus,
.datepicker table tr td.active[disabled]:focus,
.datepicker table tr td.active.highlighted[disabled]:focus,
fieldset[disabled] .datepicker table tr td.active:focus,
fieldset[disabled] .datepicker table tr td.active.highlighted:focus,
.datepicker table tr td.active.disabled.focus,
.datepicker table tr td.active.highlighted.disabled.focus,
.datepicker table tr td.active[disabled].focus,
.datepicker table tr td.active.highlighted[disabled].focus,
fieldset[disabled] .datepicker table tr td.active.focus,
fieldset[disabled] .datepicker table tr td.active.highlighted.focus {
  background-color: #337ab7;
  border-color: #2e6da4;
}

.datepicker table tr td span {
  display: block;
  width: 23%;
  height: 54px;
  line-height: 54px;
  float: left;
  margin: 1%;
  cursor: pointer;
  border-radius: 4px;
}

.datepicker table tr td span:hover,
.datepicker table tr td span.focused {
  background: #eeeeee;
}

.datepicker table tr td span.disabled,
.datepicker table tr td span.disabled:hover {
  background: none;
  color: #777777;
  cursor: default;
}

.datepicker table tr td span.active,
.datepicker table tr td span.active:hover,
.datepicker table tr td span.active.disabled,
.datepicker table tr td span.active.disabled:hover {
  color: #fff;
  background-color: #337ab7;
  border-color: #2e6da4;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}

.datepicker table tr td span.active:focus,
.datepicker table tr td span.active:hover:focus,
.datepicker table tr td span.active.disabled:focus,
.datepicker table tr td span.active.disabled:hover:focus,
.datepicker table tr td span.active.focus,
.datepicker table tr td span.active:hover.focus,
.datepicker table tr td span.active.disabled.focus,
.datepicker table tr td span.active.disabled:hover.focus {
  color: #fff;
  background-color: #286090;
  border-color: #122b40;
}

.datepicker table tr td span.active:hover,
.datepicker table tr td span.active:hover:hover,
.datepicker table tr td span.active.disabled:hover,
.datepicker table tr td span.active.disabled:hover:hover {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}

.datepicker table tr td span.active:active,
.datepicker table tr td span.active:hover:active,
.datepicker table tr td span.active.disabled:active,
.datepicker table tr td span.active.disabled:hover:active,
.datepicker table tr td span.active.active,
.datepicker table tr td span.active:hover.active,
.datepicker table tr td span.active.disabled.active,
.datepicker table tr td span.active.disabled:hover.active {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}

.datepicker table tr td span.active:active:hover,
.datepicker table tr td span.active:hover:active:hover,
.datepicker table tr td span.active.disabled:active:hover,
.datepicker table tr td span.active.disabled:hover:active:hover,
.datepicker table tr td span.active.active:hover,
.datepicker table tr td span.active:hover.active:hover,
.datepicker table tr td span.active.disabled.active:hover,
.datepicker table tr td span.active.disabled:hover.active:hover,
.datepicker table tr td span.active:active:focus,
.datepicker table tr td span.active:hover:active:focus,
.datepicker table tr td span.active.disabled:active:focus,
.datepicker table tr td span.active.disabled:hover:active:focus,
.datepicker table tr td span.active.active:focus,
.datepicker table tr td span.active:hover.active:focus,
.datepicker table tr td span.active.disabled.active:focus,
.datepicker table tr td span.active.disabled:hover.active:focus,
.datepicker table tr td span.active:active.focus,
.datepicker table tr td span.active:hover:active.focus,
.datepicker table tr td span.active.disabled:active.focus,
.datepicker table tr td span.active.disabled:hover:active.focus,
.datepicker table tr td span.active.active.focus,
.datepicker table tr td span.active:hover.active.focus,
.datepicker table tr td span.active.disabled.active.focus,
.datepicker table tr td span.active.disabled:hover.active.focus {
  color: #fff;
  background-color: #204d74;
  border-color: #122b40;
}

.datepicker table tr td span.active.disabled:hover,
.datepicker table tr td span.active:hover.disabled:hover,
.datepicker table tr td span.active.disabled.disabled:hover,
.datepicker table tr td span.active.disabled:hover.disabled:hover,
.datepicker table tr td span.active[disabled]:hover,
.datepicker table tr td span.active:hover[disabled]:hover,
.datepicker table tr td span.active.disabled[disabled]:hover,
.datepicker table tr td span.active.disabled:hover[disabled]:hover,
fieldset[disabled] .datepicker table tr td span.active:hover,
fieldset[disabled] .datepicker table tr td span.active:hover:hover,
fieldset[disabled] .datepicker table tr td span.active.disabled:hover,
fieldset[disabled] .datepicker table tr td span.active.disabled:hover:hover,
.datepicker table tr td span.active.disabled:focus,
.datepicker table tr td span.active:hover.disabled:focus,
.datepicker table tr td span.active.disabled.disabled:focus,
.datepicker table tr td span.active.disabled:hover.disabled:focus,
.datepicker table tr td span.active[disabled]:focus,
.datepicker table tr td span.active:hover[disabled]:focus,
.datepicker table tr td span.active.disabled[disabled]:focus,
.datepicker table tr td span.active.disabled:hover[disabled]:focus,
fieldset[disabled] .datepicker table tr td span.active:focus,
fieldset[disabled] .datepicker table tr td span.active:hover:focus,
fieldset[disabled] .datepicker table tr td span.active.disabled:focus,
fieldset[disabled] .datepicker table tr td span.active.disabled:hover:focus,
.datepicker table tr td span.active.disabled.focus,
.datepicker table tr td span.active:hover.disabled.focus,
.datepicker table tr td span.active.disabled.disabled.focus,
.datepicker table tr td span.active.disabled:hover.disabled.focus,
.datepicker table tr td span.active[disabled].focus,
.datepicker table tr td span.active:hover[disabled].focus,
.datepicker table tr td span.active.disabled[disabled].focus,
.datepicker table tr td span.active.disabled:hover[disabled].focus,
fieldset[disabled] .datepicker table tr td span.active.focus,
fieldset[disabled] .datepicker table tr td span.active:hover.focus,
fieldset[disabled] .datepicker table tr td span.active.disabled.focus,
fieldset[disabled] .datepicker table tr td span.active.disabled:hover.focus {
  background-color: #337ab7;
  border-color: #2e6da4;
}

.datepicker table tr td span.old,
.datepicker table tr td span.new {
  color: #777777;
}

.datepicker .datepicker-switch {
  width: 145px;
}

.datepicker .datepicker-switch,
.datepicker .prev,
.datepicker .next,
.datepicker tfoot tr th {
  cursor: pointer;
}

.datepicker .datepicker-switch:hover,
.datepicker .prev:hover,
.datepicker .next:hover,
.datepicker tfoot tr th:hover {
  background: #eeeeee;
}

.datepicker .prev.disabled,
.datepicker .next.disabled {
  visibility: hidden;
}

.datepicker .cw {
  font-size: 10px;
  width: 12px;
  padding: 0 2px 0 5px;
  vertical-align: middle;
}

.input-group.date .input-group-addon {
  cursor: pointer;
}

.input-daterange {
  width: 100%;
}

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

.input-daterange input:first-child {
  border-radius: 3px 0 0 3px;
}

.input-daterange input:last-child {
  border-radius: 0 3px 3px 0;
}

.input-daterange .input-group-addon {
  width: auto;
  min-width: 16px;
  padding: 4px 5px;
  line-height: 1.42857143;
  text-shadow: 0 1px 0 #fff;
  border-width: 1px 0;
  margin-left: -5px;
  margin-right: -5px;
}

/*# sourceMappingURL=bootstrap-datepicker3.css.map */
/* ==========================================================================
   & surchage bootstrap modal.css
   ========================================================================== */
.modal .close {
  position: absolute;
  position: relative;
  line-height: 1;
  width: 2rem;
  height: 2rem;
  font-size: 2rem;
  padding: 0;
  position: absolute;
  top: 1.3rem;
  right: 1rem;
}

.modal .close:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.modal .close:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.modal .close span {
  display: none;
}

@media (min-width: 768px) {
  .modal-alpha .modal-dialog {
    width: 40rem;
  }
}

.modal-alpha .modal-content {
  border-radius: 0;
  border: 0.88889rem solid #feac94;
}

.modal-alpha .modal-title {
  color: #feac94;
  text-align: center;
  padding-left: 2rem;
  padding-right: 2rem;
  text-transform: uppercase;
  font-size: 2rem;
  font-weight: 700;
}

.modal-alpha .modal-header {
  padding: 3rem 1rem 1rem 1rem;
  border: none;
}

.modal-alpha .modal-body {
  text-align: center;
  padding: 1rem 1rem 3rem 1rem;
}

.modal-alpha .modal-commande {
  background-color: #fff;
  border-radius: 0;
  border: 0.88889rem solid #0082ad;
  padding: 2rem 2rem 0;
  text-align: left;
}

.modal-commande .modal-title {
  color: #000000;
  text-align: left;
}

.modal-commande .modal-body {
  text-align: left !important;
}

.modal-commande .button {
  margin-top: 2rem;
}

@media (min-width: 768px) {
  .modal-se-connecter .modal-dialog {
    width: 47rem;
  }
}

@media (min-width: 768px) {
  .modal-password-oublie .modal-dialog {
    width: 47rem;
  }
}

/* ==========================================================================
   & surchage bootstrap tooltip
   ========================================================================== */
.tooltip {
  font-family: "Apercu", Arial, sans-serif;
  font-size: 1.5rem;
}

.tooltip.in {
  opacity: 1;
  filter: alpha(opacity=100);
}

.tooltip.top {
  margin-top: -3px;
  padding: 10px 0;
}

.tooltip.right {
  margin-left: 3px;
  padding: 0 10px;
}

.tooltip.bottom {
  margin-top: 3px;
  padding: 10px 0;
}

.tooltip.left {
  margin-left: -3px;
  padding: 0 10px;
}

.tooltip-inner {
  padding: 1rem 2rem;
  background-color: #feac94;
  border-radius: 0;
  max-width: 28rem;
}

.tooltip.top .tooltip-arrow {
  bottom: 0;
  left: 50%;
  margin-left: -10px;
  border-width: 10px 10px 0;
  border-top-color: #feac94;
}

.tooltip.top-left .tooltip-arrow {
  bottom: 0;
  right: 10px;
  margin-bottom: -10px;
  border-width: 10px 10px 0;
  border-top-color: #feac94;
}

.tooltip.top-right .tooltip-arrow {
  bottom: 0;
  left: 10px;
  margin-bottom: -10px;
  border-width: 10px 10px 0;
  border-top-color: #feac94;
}

.tooltip.right .tooltip-arrow {
  top: 50%;
  left: 0;
  margin-top: -10px;
  border-width: 10px 10px 10px 0;
  border-right-color: #feac94;
}

.tooltip.left .tooltip-arrow {
  top: 50%;
  right: 0;
  margin-top: -10px;
  border-width: 10px 0 10px 10px;
  border-left-color: #feac94;
}

.tooltip.bottom .tooltip-arrow {
  top: 0;
  left: 50%;
  margin-left: -10px;
  border-width: 0 10px 10px;
  border-bottom-color: #feac94;
}

.tooltip.bottom-left .tooltip-arrow {
  top: 0;
  right: 10px;
  margin-top: -10px;
  border-width: 0 10px 10px;
  border-bottom-color: #feac94;
}

.tooltip.bottom-right .tooltip-arrow {
  top: 0;
  left: 10px;
  margin-top: -10px;
  border-width: 0 10px 10px;
  border-bottom-color: #feac94;
}

/* ==========================================================================
   & surchage bootstrap-select.css
   ========================================================================== */
.bootstrap-select.btn-group .dropdown-toggle {
  color: #000;
  background-color: #FFF;
  border-color: #e2e3e3;
  box-shadow: none;
  font-size: inherit;
  padding: 10px 35px 10px 16px;
}

.bootstrap-select.btn-group .dropdown-toggle:focus, .bootstrap-select.btn-group .dropdown-toggle.focus {
  color: #000;
  background-color: #FFF;
  border-color: #e2e3e3;
}

.bootstrap-select.btn-group .dropdown-toggle:hover {
  color: #000;
  background-color: #FFF;
  border-color: #e2e3e3;
}

.bootstrap-select.btn-group .dropdown-toggle:active, .bootstrap-select.btn-group .dropdown-toggle.active,
.open > .bootstrap-select.btn-group .dropdown-toggle.dropdown-toggle {
  color: #000;
  background-color: #FFF;
  border-color: #e2e3e3;
}

.bootstrap-select.btn-group .dropdown-toggle:active:hover, .bootstrap-select.btn-group .dropdown-toggle:active:focus, .bootstrap-select.btn-group .dropdown-toggle:active.focus, .bootstrap-select.btn-group .dropdown-toggle.active:hover, .bootstrap-select.btn-group .dropdown-toggle.active:focus, .bootstrap-select.btn-group .dropdown-toggle.active.focus,
.open > .bootstrap-select.btn-group .dropdown-toggle.dropdown-toggle:hover,
.open > .bootstrap-select.btn-group .dropdown-toggle.dropdown-toggle:focus,
.open > .bootstrap-select.btn-group .dropdown-toggle.dropdown-toggle.focus {
  color: #000;
  background-color: #FFF;
  border-color: #e2e3e3;
}

.bootstrap-select.btn-group .dropdown-toggle:active, .bootstrap-select.btn-group .dropdown-toggle.active,
.open > .bootstrap-select.btn-group .dropdown-toggle.dropdown-toggle {
  background-image: none;
}

.bootstrap-select.btn-group .dropdown-toggle.disabled:hover, .bootstrap-select.btn-group .dropdown-toggle.disabled:focus, .bootstrap-select.btn-group .dropdown-toggle.disabled.focus, .bootstrap-select.btn-group .dropdown-toggle[disabled]:hover, .bootstrap-select.btn-group .dropdown-toggle[disabled]:focus, .bootstrap-select.btn-group .dropdown-toggle[disabled].focus,
fieldset[disabled] .bootstrap-select.btn-group .dropdown-toggle:hover,
fieldset[disabled] .bootstrap-select.btn-group .dropdown-toggle:focus,
fieldset[disabled] .bootstrap-select.btn-group .dropdown-toggle.focus {
  background-color: #FFF;
  border-color: #e2e3e3;
}

.bootstrap-select.btn-group .dropdown-toggle .badge {
  color: #FFF;
  background-color: #000;
}

.bootstrap-select.btn-group .dropdown-toggle:focus {
  outline: none !important;
}

.bootstrap-select.btn-group .dropdown-toggle .caret {
  color: #0082ad;
  right: 0;
  position: relative;
  background-image: none;
  border: none;
}

.bootstrap-select.btn-group .dropdown-toggle .caret:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  content: "";
}

.bootstrap-select.btn-group .dropdown-toggle .caret:before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.error .bootstrap-select.btn-group .dropdown-toggle {
  border-color: #dc3545;
}

.success .bootstrap-select.btn-group .dropdown-toggle {
  border-color: #28a745;
}

.bootstrap-select.btn-group .dropdown-menu {
  box-shadow: 0 0 15px 1px rgba(0, 0, 0, 0.07);
  padding: 0;
  font-size: inherit;
  border-color: #e2e3e3;
}

.bootstrap-select.btn-group .dropdown-menu > li > a {
  padding: 8px 16px;
}

@media (max-width: 991px) {
  .bootstrap-select.btn-group .dropdown-menu > li > a {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
}

.bootstrap-select.btn-group.open .dropdown-toggle {
  border-color: #0082ad;
}

@media (max-width: 767px) {
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) {
    width: 100%;
    min-width: 15rem;
  }
}

@media (min-width: 768px) {
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) {
    width: auto;
  }
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle {
    color: #000;
    background-color: transparent;
    border-color: transparent;
    border: none;
    border-radius: 0;
    padding-left: 0;
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 23px;
  }
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle:focus, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.focus {
    color: #000;
    background-color: transparent;
    border-color: transparent;
  }
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle:hover {
    color: #000;
    background-color: transparent;
    border-color: transparent;
  }
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle:active, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.active,
  .open > .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.dropdown-toggle {
    color: #000;
    background-color: transparent;
    border-color: transparent;
  }
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle:active:hover, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle:active:focus, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle:active.focus, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.active:hover, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.active:focus, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.active.focus,
  .open > .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.dropdown-toggle:hover,
  .open > .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.dropdown-toggle:focus,
  .open > .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.dropdown-toggle.focus {
    color: #000;
    background-color: transparent;
    border-color: transparent;
  }
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle:active, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.active,
  .open > .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.dropdown-toggle {
    background-image: none;
  }
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.disabled:hover, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.disabled:focus, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.disabled.focus, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle[disabled]:hover, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle[disabled]:focus, .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle[disabled].focus,
  fieldset[disabled] .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle:hover,
  fieldset[disabled] .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle:focus,
  fieldset[disabled] .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle.focus {
    background-color: transparent;
    border-color: transparent;
  }
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle .badge {
    color: transparent;
    background-color: #000;
  }
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-toggle .filter-option {
    font-weight: 500;
  }
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-menu {
    border-radius: 0;
    margin-left: -0.5rem;
    -webkit-overflow-scrolling: touch;
  }
  .bootstrap-select.alpha.btn-group:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) .dropdown-menu > li > a {
    padding-left: 1.3rem;
  }
}

/* ==========================================================================
   & surchage bootstrap datepicker
   ========================================================================== */
.datepicker {
  border-radius: 0;
}

.datepicker table tr td,
.datepicker table tr th {
  border-radius: 0;
  width: 3.5rem;
  height: 3rem;
  text-align: center;
}

.datepicker table tr th.dow {
  color: #0082ad;
  font-weight: 600;
}

.datepicker table tr td.active:active, .datepicker table tr td.active.highlighted:active, .datepicker table tr td.active.active, .datepicker table tr td.active.highlighted.active, .datepicker table tr td.active:active:hover, .datepicker table tr td.active.highlighted:active:hover, .datepicker table tr td.active.active:hover, .datepicker table tr td.active.highlighted.active:hover, .datepicker table tr td.active:active:focus, .datepicker table tr td.active.highlighted:active:focus, .datepicker table tr td.active.active:focus, .datepicker table tr td.active.highlighted.active:focus, .datepicker table tr td.active:active.focus, .datepicker table tr td.active.highlighted:active.focus, .datepicker table tr td.active.active.focus, .datepicker table tr td.active.highlighted.active.focus {
  background-color: #0082ad;
  color: #FFF;
  text-shadow: none;
}

.datepicker table tr td.selected, .datepicker table tr td.selected.highlighted, .datepicker table tr td.range {
  background-color: #f6f6f6;
  border-color: #f6f6f6;
}

.datepicker table tr td.day:hover, .datepicker table tr td.focused {
  cursor: pointer;
}

.datepicker table tr td.old, .datepicker table tr td.new {
  color: rgba(0, 0, 0, 0.3);
}

.datepicker table tr td.today {
  font-weight: bold;
  background-color: #FFF;
}

.datepicker table tr td.disabled, .datepicker table tr td.disabled:hover {
  color: rgba(0, 0, 0, 0.2);
  background-color: transparent;
  pointer-events: none;
}

.datepicker table tr td span {
  border-radius: 0;
  height: 4.4rem;
  line-height: 4.4rem;
}

.datepicker table tr td span.active, .datepicker table tr td span.active:hover, .datepicker table tr td span.active.disabled, .datepicker table tr td span.active.disabled:hover, .datepicker table tr td span.active:active, .datepicker table tr td span.active:hover:active, .datepicker table tr td span.active.disabled:active, .datepicker table tr td span.active.disabled:hover:active, .datepicker table tr td span.active.active, .datepicker table tr td span.active:hover.active, .datepicker table tr td span.active:hover.active:hover, .datepicker table tr td span.active.active:hover, .datepicker table tr td span.active.disabled.active, .datepicker table tr td span.active.disabled:hover.active {
  text-shadow: none;
  border: none;
  background-color: #0082ad;
}

.datepicker table tr td span:hover, .datepicker table tr td span.focused {
  cursor: pointer;
}

.datepicker table tr td span.disabled, .datepicker table tr td span.disabled:hover {
  color: rgba(0, 0, 0, 0.2);
  background-color: transparent;
  pointer-events: none;
}

.datepicker .datepicker-days {
  display: block;
}

.datepicker.datepicker-inline {
  display: inline-block;
}

.datepicker-dropdown {
  padding-left: 0;
  padding-right: 0;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL19ib290c3RyYXAuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9fdmFyaWFibGVzLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvX21peGlucy5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9faGlkZS10ZXh0LnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19vcGFjaXR5LnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19pbWFnZS5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fbGFiZWxzLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19yZXNldC1maWx0ZXIuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc2l6ZS5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fcmVzcG9uc2l2ZS12aXNpYmlsaXR5LnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19zaXplLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL190YWItZm9jdXMuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX3RleHQtZW1waGFzaXMuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX3RleHQtb3ZlcmZsb3cuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX3ZlbmRvci1wcmVmaXhlcy5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fYWxlcnRzLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19idXR0b25zLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19wYW5lbHMuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX2xpc3QtZ3JvdXAuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19mb3Jtcy5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fcHJvZ3Jlc3MtYmFyLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL190YWJsZS1yb3cuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX2JhY2tncm91bmQtdmFyaWFudC5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fY2VudGVyLWJsb2NrLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19uYXYtdmVydGljYWwtYWxpZ24uc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX2dyaWQtZnJhbWV3b3JrLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19ncmlkLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvX25vcm1hbGl6ZS5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL19ncmlkLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvX2Zvcm1zLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvX2J1dHRvbnMuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9fZHJvcGRvd25zLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvX2J1dHRvbi1ncm91cHMuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9faW5wdXQtZ3JvdXBzLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvX21vZGFscy5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL190b29sdGlwLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvX3V0aWxpdGllcy5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL19yZXNwb25zaXZlLXV0aWxpdGllcy5zY3NzIiwiYWJzdHJhY3RzL192YXJpYWJsZXMuc2NzcyIsImFic3RyYWN0cy9fZnVuY3Rpb25zLnNjc3MiLCJhYnN0cmFjdHMvbWl4aW5zL19taXhpbnMuc2NzcyIsImFic3RyYWN0cy9taXhpbnMvX2J1dHRvbnMuc2NzcyIsImJhc2UvX3Jlc2V0LnNjc3MiLCJiYXNlL19iYXNlLnNjc3MiLCJiYXNlL190eXBvZ3JhcGh5LnNjc3MiLCJjb21wb25lbnRzL19pY29uZm9udC5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwiY29tcG9uZW50cy9fZm9ybXMuc2NzcyIsImNvbXBvbmVudHMvX2NvbW1vbi5zY3NzIiwiY29tcG9uZW50cy9fYm94LnNjc3MiLCJjb21wb25lbnRzL19jb25maWV6LW5vdXMuc2NzcyIsImNvbXBvbmVudHMvX25ld3NsZXR0ZXIuc2NzcyIsImNvbXBvbmVudHMvX3N1ci1jYXJ0ZS5zY3NzIiwiY29tcG9uZW50cy9faW50cm8uc2NzcyIsImNvbXBvbmVudHMvX21pbmktaW50cm8uc2NzcyIsImNvbXBvbmVudHMvX2Nhcm5ldC12b3lhZ2Uuc2NzcyIsImNvbXBvbmVudHMvX21vbmRlLXNlcnZpY2Uuc2NzcyIsImNvbXBvbmVudHMvX21vbmRlLWVudmllcy5zY3NzIiwiY29tcG9uZW50cy9fbW9uZGUtaW1hZ2luYXRpb24uc2NzcyIsImNvbXBvbmVudHMvX25vdXZlYXV4LXZveWFnZXMuc2NzcyIsImNvbXBvbmVudHMvX2FjdHVhbGl0ZS5zY3NzIiwiY29tcG9uZW50cy9fcGx1cy1sb2luLnNjc3MiLCJjb21wb25lbnRzL19zZXJ2aWNlcy5zY3NzIiwiY29tcG9uZW50cy9faWRlZXMtdm95YWdlcy5zY3NzIiwiY29tcG9uZW50cy9fcmVnaW9ucy5zY3NzIiwiY29tcG9uZW50cy9fZW52aWVzLnNjc3MiLCJjb21wb25lbnRzL190ZW1vaWduYWdlLnNjc3MiLCJjb21wb25lbnRzL19ndWlkZS5zY3NzIiwiY29tcG9uZW50cy9fbWlldXgtcHJlcGFyZXIuc2NzcyIsImNvbXBvbmVudHMvX2lkZWVzLWFzc29jaWVlcy5zY3NzIiwiY29tcG9uZW50cy9fdm91cy1haW1lcmV6LnNjc3MiLCJjb21wb25lbnRzL19pdGluZXJhaXJlLnNjc3MiLCJjb21wb25lbnRzL19hLWxhLWNhcnRlLnNjc3MiLCJjb21wb25lbnRzL19idWRnZXQuc2NzcyIsImNvbXBvbmVudHMvX25vcy1leHBlcnRzLnNjc3MiLCJjb21wb25lbnRzL19jb250YWN0LnNjc3MiLCJjb21wb25lbnRzL19yZWNoZXJjaGUuc2NzcyIsImNvbXBvbmVudHMvX2luZm9zLXBheXMuc2NzcyIsImNvbXBvbmVudHMvX3F1YW5kLXBhcnRpci5zY3NzIiwiY29tcG9uZW50cy9fYm9ubmVzLXJhaXNvbnMuc2NzcyIsImNvbXBvbmVudHMvX3V0aWxlLnNjc3MiLCJjb21wb25lbnRzL19hLWRlY291dnJpci5zY3NzIiwiY29tcG9uZW50cy9fdm95YWdlcy1wYXlzLnNjc3MiLCJjb21wb25lbnRzL19hcnRpY2xlcy5zY3NzIiwiY29tcG9uZW50cy9faW50cm8tY29uc2VpbGxlcnMuc2NzcyIsImNvbXBvbmVudHMvX2NvbnNlaWxsZXJzLnNjc3MiLCJjb21wb25lbnRzL19pbnRlcnZpZXdzLnNjc3MiLCJjb21wb25lbnRzL19pbnRlcnZpZXctZGV0YWlsLnNjc3MiLCJjb21wb25lbnRzL19hdmlzLnNjc3MiLCJjb21wb25lbnRzL19lbnZpZXMtbW9tZW50LnNjc3MiLCJjb21wb25lbnRzL19lbnZpZXMtdGhlbWUuc2NzcyIsImNvbXBvbmVudHMvX2RlY29ubmVjdGVyLnNjc3MiLCJjb21wb25lbnRzL19kZXN0aW5hdGlvbnMtZmF2b3JpdGVzLnNjc3MiLCJjb21wb25lbnRzL19zYWlzb25zLnNjc3MiLCJjb21wb25lbnRzL19vbnBhcnRvdS5zY3NzIiwiY29tcG9uZW50cy9faWRlZXMtY2lyY3VpdC5zY3NzIiwiY29tcG9uZW50cy9fdG9wLWRlc3RpbmF0aW9ucy5zY3NzIiwiY29tcG9uZW50cy9fYnJvY2h1cmUuc2NzcyIsImNvbXBvbmVudHMvX2RpeC1ib25uZXMtcmFpc29ucy5zY3NzIiwiY29tcG9uZW50cy9fc2VydmljZXMtcGx1cy5zY3NzIiwiY29tcG9uZW50cy9fb2ZmcmVzLWV0LWF0dGVudGlvbnMuc2NzcyIsImNvbXBvbmVudHMvX3ByZXNlbnRhdGlvbi1jaGVxdWVzLnNjc3MiLCJjb21wb25lbnRzL19jb21tZW50LWNhLW1hcmNoZS5zY3NzIiwiY29tcG9uZW50cy9fY2hlcXVlcy10dW5uZWwuc2NzcyIsImNvbXBvbmVudHMvX2Rkdi5zY3NzIiwiY29tcG9uZW50cy9fbm9zLWFnZW5jZXMuc2NzcyIsImNvbXBvbmVudHMvX3NlcnZpY2UtY2xpZW50LnNjc3MiLCJjb21wb25lbnRzL19wcmVzc2UtZXQtdGVjaG5pcXVlLnNjc3MiLCJjb21wb25lbnRzL19hZ2VuY2UtYWNjZXMuc2NzcyIsImNvbXBvbmVudHMvX2FnZW5jZS12aXNpdGUuc2NzcyIsImNvbXBvbmVudHMvX2FnZW5jZS1ldmVuZW1lbnRzLnNjc3MiLCJjb21wb25lbnRzL19wcmVzZW50YXRpb24tbWFyaWFnZS5zY3NzIiwiY29tcG9uZW50cy9fYm9ubmVzLXJhaXNvbnMtbWFyaWFnZS5zY3NzIiwiY29tcG9uZW50cy9fYXZhbnRhZ2VzLnNjc3MiLCJjb21wb25lbnRzL19wYXJ0aWNpcGF0aW9uLWNhZGVhdS5zY3NzIiwiY29tcG9uZW50cy9fZXNwYWNlLWNsaWVudC5zY3NzIiwiY29tcG9uZW50cy9fZW52aWVzLXBhci1wYXlzLnNjc3MiLCJjb21wb25lbnRzL19zYWlzb24uc2NzcyIsImNvbXBvbmVudHMvX25vcy1icm9jaHVyZXMuc2NzcyIsImNvbXBvbmVudHMvX2xlLWZvb2Rpbmcuc2NzcyIsImNvbXBvbmVudHMvX25vcy1tYWlzb25zLnNjc3MiLCJjb21wb25lbnRzL19sYS1wcmVzc2UtZW4tcGFybGUuc2NzcyIsImNvbXBvbmVudHMvX3ZveWFnZS1zdXItbWVzdXJlLnNjc3MiLCJjb21wb25lbnRzL192YWxpc2UtaWRlYWxlLnNjc3MiLCJjb21wb25lbnRzL19saWJyYWlyaWUuc2NzcyIsImNvbXBvbmVudHMvX3ZhbGV1ci1ham91dGVlLnNjc3MiLCJjb21wb25lbnRzL19mcmllbmRzLnNjc3MiLCJjb21wb25lbnRzL19jb25jaWVyZ2VyaWUuc2NzcyIsImNvbXBvbmVudHMvX25vdXMtZmFpc29ucy5zY3NzIiwibGF5b3V0L19oZWFkZXIuc2NzcyIsImxheW91dC9faGVhZGVyLW1lYS5zY3NzIiwibGF5b3V0L19mb290ZXIuc2NzcyIsImxheW91dC9fbmF2LnNjc3MiLCJsYXlvdXQvX3N0aWNreS1uYXYuc2NzcyIsImxheW91dC9fbWVudS5zY3NzIiwibGF5b3V0L19tZW51LW1vYmlsZS5zY3NzIiwibGF5b3V0L19jb250YWN0LnNjc3MiLCJsYXlvdXQvX2NvbnRhY3QtbW9iaWxlLnNjc3MiLCJsYXlvdXQvX3Njcm9sbHRvcC5zY3NzIiwibGF5b3V0L19uYXYtdW5pdmVycy5zY3NzIiwidmVuZG9ycy9zbGljay9fc2xpY2suc2NzcyIsInZlbmRvcnMvc2xpY2svX3NsaWNrLXRoZW1lLnNjc3MiLCJ2ZW5kb3JzL2F3ZXNvbXBsZXRlL19hd2Vzb21wbGV0ZS5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAtc2VsZWN0L19ib290c3RyYXAtc2VsZWN0LnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC1zZWxlY3QvX3ZhcmlhYmxlcy5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAtZGF0ZXBpY2tlci9ib290c3RyYXAtZGF0ZXBpY2tlcjMuY3NzIiwidmVuZG9ycy1leHRlbnNpb25zL2Jvb3RzdHJhcC9fbW9kYWwuc2NzcyIsInZlbmRvcnMtZXh0ZW5zaW9ucy9ib290c3RyYXAvX3Rvb2x0aXAuc2NzcyIsInZlbmRvcnMtZXh0ZW5zaW9ucy9ib290c3RyYXAtc2VsZWN0L19ib290c3RyYXAtc2VsZWN0LnNjc3MiLCJ2ZW5kb3JzLWV4dGVuc2lvbnMvYm9vdHN0cmFwLWRhdGVwaWNrZXIvX2Jvb3RzdHJhcC1kYXRlcGlja2VyLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCAndmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwJztcblxuXG5AaW1wb3J0ICdhYnN0cmFjdHMvdmFyaWFibGVzJztcbkBpbXBvcnQgJ2Fic3RyYWN0cy9mdW5jdGlvbnMnO1xuQGltcG9ydCAnYWJzdHJhY3RzL21peGlucy9taXhpbnMnO1xuQGltcG9ydCAnYWJzdHJhY3RzL21peGlucy9idXR0b25zJztcblxuQGltcG9ydCAnYmFzZS9yZXNldCc7XG5AaW1wb3J0ICdiYXNlL2Jhc2UnO1xuQGltcG9ydCAnYmFzZS90eXBvZ3JhcGh5JztcblxuQGltcG9ydCAnY29tcG9uZW50cy9pY29uZm9udCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9mb3Jtcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NvbW1vbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2JveCc7XG5cbkBpbXBvcnQgJ2xheW91dC9oZWFkZXInO1xuQGltcG9ydCAnbGF5b3V0L2hlYWRlci1tZWEnO1xuQGltcG9ydCAnbGF5b3V0L2Zvb3Rlcic7XG5AaW1wb3J0ICdsYXlvdXQvbmF2JztcbkBpbXBvcnQgJ2xheW91dC9zdGlja3ktbmF2JztcbkBpbXBvcnQgJ2xheW91dC9tZW51JztcbkBpbXBvcnQgJ2xheW91dC9tZW51LW1vYmlsZSc7XG5AaW1wb3J0ICdsYXlvdXQvY29udGFjdCc7XG5AaW1wb3J0ICdsYXlvdXQvY29udGFjdC1tb2JpbGUnO1xuQGltcG9ydCAnbGF5b3V0L3Njcm9sbHRvcCc7XG5AaW1wb3J0ICdsYXlvdXQvbmF2LXVuaXZlcnMnO1xuXG5AaW1wb3J0ICd2ZW5kb3JzL3NsaWNrL3NsaWNrJztcbkBpbXBvcnQgJ3ZlbmRvcnMvc2xpY2svc2xpY2stdGhlbWUnO1xuQGltcG9ydCAndmVuZG9ycy9hd2Vzb21wbGV0ZS9hd2Vzb21wbGV0ZSc7XG5AaW1wb3J0ICd2ZW5kb3JzL2Jvb3RzdHJhcC1zZWxlY3QvYm9vdHN0cmFwLXNlbGVjdCc7XG5AaW1wb3J0ICd2ZW5kb3JzL2Jvb3RzdHJhcC1kYXRlcGlja2VyL2Jvb3RzdHJhcC1kYXRlcGlja2VyMyc7XG5cblxuQGltcG9ydCAndmVuZG9ycy1leHRlbnNpb25zL2Jvb3RzdHJhcC9tb2RhbCc7XG5AaW1wb3J0ICd2ZW5kb3JzLWV4dGVuc2lvbnMvYm9vdHN0cmFwL3Rvb2x0aXAnO1xuQGltcG9ydCAndmVuZG9ycy1leHRlbnNpb25zL2Jvb3RzdHJhcC1zZWxlY3QvYm9vdHN0cmFwLXNlbGVjdCc7XG5AaW1wb3J0ICd2ZW5kb3JzLWV4dGVuc2lvbnMvYm9vdHN0cmFwLWRhdGVwaWNrZXIvYm9vdHN0cmFwLWRhdGVwaWNrZXInO1xuIiwiLyohXG4gKiBCb290c3RyYXAgdjMuMy43IChodHRwOi8vZ2V0Ym9vdHN0cmFwLmNvbSlcbiAqIENvcHlyaWdodCAyMDExLTIwMTYgVHdpdHRlciwgSW5jLlxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYXN0ZXIvTElDRU5TRSlcbiAqL1xuXG4vLyBDb3JlIHZhcmlhYmxlcyBhbmQgbWl4aW5zXG5AaW1wb3J0IFwiYm9vdHN0cmFwL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9taXhpbnNcIjtcblxuLy8gUmVzZXQgYW5kIGRlcGVuZGVuY2llc1xuQGltcG9ydCBcImJvb3RzdHJhcC9ub3JtYWxpemVcIjtcbi8vQGltcG9ydCBcImJvb3RzdHJhcC9wcmludFwiO1xuLy9AaW1wb3J0IFwiYm9vdHN0cmFwL2dseXBoaWNvbnNcIjtcblxuLy8gQ29yZSBDU1Ncbi8vQGltcG9ydCBcImJvb3RzdHJhcC9zY2FmZm9sZGluZ1wiO1xuLy9AaW1wb3J0IFwiYm9vdHN0cmFwL3R5cGVcIjtcbi8vQGltcG9ydCBcImJvb3RzdHJhcC9jb2RlXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2dyaWRcIjtcbi8vQGltcG9ydCBcImJvb3RzdHJhcC90YWJsZXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvZm9ybXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvYnV0dG9uc1wiO1xuXG4vLyBDb21wb25lbnRzXG4vL0BpbXBvcnQgXCJib290c3RyYXAvY29tcG9uZW50LWFuaW1hdGlvbnNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvZHJvcGRvd25zXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2J1dHRvbi1ncm91cHNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvaW5wdXQtZ3JvdXBzXCI7XG4vL0BpbXBvcnQgXCJib290c3RyYXAvbmF2c1wiO1xuLy9AaW1wb3J0IFwiYm9vdHN0cmFwL25hdmJhclwiO1xuLy9AaW1wb3J0IFwiYm9vdHN0cmFwL2JyZWFkY3J1bWJzXCI7XG4vL0BpbXBvcnQgXCJib290c3RyYXAvcGFnaW5hdGlvblwiO1xuLy9AaW1wb3J0IFwiYm9vdHN0cmFwL3BhZ2VyXCI7XG4vL0BpbXBvcnQgXCJib290c3RyYXAvbGFiZWxzXCI7XG4vL0BpbXBvcnQgXCJib290c3RyYXAvYmFkZ2VzXCI7XG4vL0BpbXBvcnQgXCJib290c3RyYXAvanVtYm90cm9uXCI7XG4vL0BpbXBvcnQgXCJib290c3RyYXAvdGh1bWJuYWlsc1wiO1xuLy9AaW1wb3J0IFwiYm9vdHN0cmFwL2FsZXJ0c1wiO1xuLy9AaW1wb3J0IFwiYm9vdHN0cmFwL3Byb2dyZXNzLWJhcnNcIjtcbi8vQGltcG9ydCBcImJvb3RzdHJhcC9tZWRpYVwiO1xuLy9AaW1wb3J0IFwiYm9vdHN0cmFwL2xpc3QtZ3JvdXBcIjtcbi8vQGltcG9ydCBcImJvb3RzdHJhcC9wYW5lbHNcIjtcbi8vQGltcG9ydCBcImJvb3RzdHJhcC9yZXNwb25zaXZlLWVtYmVkXCI7XG4vL0BpbXBvcnQgXCJib290c3RyYXAvd2VsbHNcIjtcbi8vQGltcG9ydCBcImJvb3RzdHJhcC9jbG9zZVwiO1xuXG4vLyBDb21wb25lbnRzIHcvIEphdmFTY3JpcHRcbkBpbXBvcnQgXCJib290c3RyYXAvbW9kYWxzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3Rvb2x0aXBcIjtcbi8vQGltcG9ydCBcImJvb3RzdHJhcC9wb3BvdmVyc1wiO1xuLy9AaW1wb3J0IFwiYm9vdHN0cmFwL2Nhcm91c2VsXCI7XG5cbi8vIFV0aWxpdHkgY2xhc3Nlc1xuQGltcG9ydCBcImJvb3RzdHJhcC91dGlsaXRpZXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcmVzcG9uc2l2ZS11dGlsaXRpZXNcIjtcbiIsIiRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXI6IGZhbHNlICFkZWZhdWx0O1xuLy9cbi8vIFZhcmlhYmxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLz09IENvbG9yc1xuLy9cbi8vIyMgR3JheSBhbmQgYnJhbmQgY29sb3JzIGZvciB1c2UgYWNyb3NzIEJvb3RzdHJhcC5cblxuJGdyYXktYmFzZTogICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kZ3JheS1kYXJrZXI6ICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAxMy41JSkgIWRlZmF1bHQ7IC8vICMyMjJcbiRncmF5LWRhcms6ICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDIwJSkgIWRlZmF1bHQ7ICAgLy8gIzMzM1xuJGdyYXk6ICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMzMuNSUpICFkZWZhdWx0OyAvLyAjNTU1XG4kZ3JheS1saWdodDogICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCA0Ni43JSkgIWRlZmF1bHQ7IC8vICM3NzdcbiRncmF5LWxpZ2h0ZXI6ICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDkzLjUlKSAhZGVmYXVsdDsgLy8gI2VlZVxuXG4kYnJhbmQtcHJpbWFyeTogICAgICAgICBkYXJrZW4oIzQyOGJjYSwgNi41JSkgIWRlZmF1bHQ7IC8vICMzMzdhYjdcbiRicmFuZC1zdWNjZXNzOiAgICAgICAgICM1Y2I4NWMgIWRlZmF1bHQ7XG4kYnJhbmQtaW5mbzogICAgICAgICAgICAjNWJjMGRlICFkZWZhdWx0O1xuJGJyYW5kLXdhcm5pbmc6ICAgICAgICAgI2YwYWQ0ZSAhZGVmYXVsdDtcbiRicmFuZC1kYW5nZXI6ICAgICAgICAgICNkOTUzNGYgIWRlZmF1bHQ7XG5cblxuLy89PSBTY2FmZm9sZGluZ1xuLy9cbi8vIyMgU2V0dGluZ3MgZm9yIHNvbWUgb2YgdGhlIG1vc3QgZ2xvYmFsIHN0eWxlcy5cblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIGZvciBgPGJvZHk+YC5cbiRib2R5LWJnOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIEdsb2JhbCB0ZXh0IGNvbG9yIG9uIGA8Ym9keT5gLlxuJHRleHQtY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcblxuLy8qKiBHbG9iYWwgdGV4dHVhbCBsaW5rIGNvbG9yLlxuJGxpbmstY29sb3I6ICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4vLyoqIExpbmsgaG92ZXIgY29sb3Igc2V0IHZpYSBgZGFya2VuKClgIGZ1bmN0aW9uLlxuJGxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xuLy8qKiBMaW5rIGhvdmVyIGRlY29yYXRpb24uXG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWRlZmF1bHQ7XG5cblxuLy89PSBUeXBvZ3JhcGh5XG4vL1xuLy8jIyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktc2VyaWY6ICAgICAgIEdlb3JnaWEsIFwiVGltZXMgTmV3IFJvbWFuXCIsIFRpbWVzLCBzZXJpZiAhZGVmYXVsdDtcbi8vKiogRGVmYXVsdCBtb25vc3BhY2UgZm9udHMgZm9yIGA8Y29kZT5gLCBgPGtiZD5gLCBhbmQgYDxwcmU+YC5cbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAxNHB4ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sYXJnZTogICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSkgIWRlZmF1bHQ7IC8vIH4xOHB4XG4kZm9udC1zaXplLXNtYWxsOiAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDAuODUpKSAhZGVmYXVsdDsgLy8gfjEycHhcblxuJGZvbnQtc2l6ZS1oMTogICAgICAgICAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMi42KSkgIWRlZmF1bHQ7IC8vIH4zNnB4XG4kZm9udC1zaXplLWgyOiAgICAgICAgICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAyLjE1KSkgIWRlZmF1bHQ7IC8vIH4zMHB4XG4kZm9udC1zaXplLWgzOiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNykpICFkZWZhdWx0OyAvLyB+MjRweFxuJGZvbnQtc2l6ZS1oNDogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSkgIWRlZmF1bHQ7IC8vIH4xOHB4XG4kZm9udC1zaXplLWg1OiAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRmb250LXNpemUtaDY6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMC44NSkpICFkZWZhdWx0OyAvLyB+MTJweFxuXG4vLyoqIFVuaXQtbGVzcyBgbGluZS1oZWlnaHRgIGZvciB1c2UgaW4gY29tcG9uZW50cyBsaWtlIGJ1dHRvbnMuXG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgIDEuNDI4NTcxNDI5ICFkZWZhdWx0OyAvLyAyMC8xNFxuLy8qKiBDb21wdXRlZCBcImxpbmUtaGVpZ2h0XCIgKGBmb250LXNpemVgICogYGxpbmUtaGVpZ2h0YCkgZm9yIHVzZSB3aXRoIGBtYXJnaW5gLCBgcGFkZGluZ2AsIGV0Yy5cbiRsaW5lLWhlaWdodC1jb21wdXRlZDogICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlKSkgIWRlZmF1bHQ7IC8vIH4yMHB4XG5cbi8vKiogQnkgZGVmYXVsdCwgdGhpcyBpbmhlcml0cyBmcm9tIHRoZSBgPGJvZHk+YC5cbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAxLjEgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG5cblxuLy89PSBJY29ub2dyYXBoeVxuLy9cbi8vIyMgU3BlY2lmeSBjdXN0b20gbG9jYXRpb24gYW5kIGZpbGVuYW1lIG9mIHRoZSBpbmNsdWRlZCBHbHlwaGljb25zIGljb24gZm9udC4gVXNlZnVsIGZvciB0aG9zZSBpbmNsdWRpbmcgQm9vdHN0cmFwIHZpYSBCb3dlci5cblxuLy8qKiBMb2FkIGZvbnRzIGZyb20gdGhpcyBkaXJlY3RvcnkuXG5cbi8vIFtjb252ZXJ0ZXJdIElmICRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIgaWYgdXNlZCwgcHJvdmlkZSBwYXRoIHJlbGF0aXZlIHRvIHRoZSBhc3NldHMgbG9hZCBwYXRoLlxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBiZWNhdXNlIHNvbWUgYXNzZXQgaGVscGVycywgc3VjaCBhcyBTcHJvY2tldHMsIGRvIG5vdCB3b3JrIHdpdGggZmlsZS1yZWxhdGl2ZSBwYXRocy5cbiRpY29uLWZvbnQtcGF0aDogaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgXCJib290c3RyYXAvXCIsIFwiLi4vZm9udHMvYm9vdHN0cmFwL1wiKSAhZGVmYXVsdDtcblxuLy8qKiBGaWxlIG5hbWUgZm9yIGFsbCBmb250IGZpbGVzLlxuJGljb24tZm9udC1uYW1lOiAgICAgICAgICBcImdseXBoaWNvbnMtaGFsZmxpbmdzLXJlZ3VsYXJcIiAhZGVmYXVsdDtcbi8vKiogRWxlbWVudCBJRCB3aXRoaW4gU1ZHIGljb24gZmlsZS5cbiRpY29uLWZvbnQtc3ZnLWlkOiAgICAgICAgXCJnbHlwaGljb25zX2hhbGZsaW5nc3JlZ3VsYXJcIiAhZGVmYXVsdDtcblxuXG4vLz09IENvbXBvbmVudHNcbi8vXG4vLyMjIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS4gVmFsdWVzIGJhc2VkIG9uIDE0cHggdGV4dCBhbmQgMS40MjggbGluZS1oZWlnaHQgKH4yMHB4IHRvIHN0YXJ0KS5cblxuJHBhZGRpbmctYmFzZS12ZXJ0aWNhbDogICAgIDZweCAhZGVmYXVsdDtcbiRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDogICAxMnB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy1sYXJnZS12ZXJ0aWNhbDogICAgMTBweCAhZGVmYXVsdDtcbiRwYWRkaW5nLWxhcmdlLWhvcml6b250YWw6ICAxNnB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy1zbWFsbC12ZXJ0aWNhbDogICAgNXB4ICFkZWZhdWx0O1xuJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDogIDEwcHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLXhzLXZlcnRpY2FsOiAgICAgICAxcHggIWRlZmF1bHQ7XG4kcGFkZGluZy14cy1ob3Jpem9udGFsOiAgICAgNXB4ICFkZWZhdWx0O1xuXG4kbGluZS1oZWlnaHQtbGFyZ2U6ICAgICAgICAgMS4zMzMzMzMzICFkZWZhdWx0OyAvLyBleHRyYSBkZWNpbWFscyBmb3IgV2luIDguMSBDaHJvbWVcbiRsaW5lLWhlaWdodC1zbWFsbDogICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICA0cHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgNnB4ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgIDNweCAhZGVmYXVsdDtcblxuLy8qKiBHbG9iYWwgY29sb3IgZm9yIGFjdGl2ZSBpdGVtcyAoZS5nLiwgbmF2cyBvciBkcm9wZG93bnMpLlxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIEdsb2JhbCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuLy8qKiBXaWR0aCBvZiB0aGUgYGJvcmRlcmAgZm9yIGdlbmVyYXRpbmcgY2FyZXRzIHRoYXQgaW5kaWNhdGUgZHJvcGRvd25zLlxuJGNhcmV0LXdpZHRoLWJhc2U6ICAgICAgICAgIDRweCAhZGVmYXVsdDtcbi8vKiogQ2FyZXRzIGluY3JlYXNlIHNsaWdodGx5IGluIHNpemUgZm9yIGxhcmdlciBjb21wb25lbnRzLlxuJGNhcmV0LXdpZHRoLWxhcmdlOiAgICAgICAgIDVweCAhZGVmYXVsdDtcblxuXG4vLz09IFRhYmxlc1xuLy9cbi8vIyMgQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4vLyoqIFBhZGRpbmcgZm9yIGA8dGg+YHMgYW5kIGA8dGQ+YHMuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAgIDhweCAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBmb3IgY2VsbHMgaW4gYC50YWJsZS1jb25kZW5zZWRgLlxuJHRhYmxlLWNvbmRlbnNlZC1jZWxsLXBhZGRpbmc6ICA1cHggIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGFsbCB0YWJsZXMuXG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGAudGFibGUtc3RyaXBlZGAuXG4kdGFibGUtYmctYWNjZW50OiAgICAgICAgICAgICAgICNmOWY5ZjkgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1ob3ZlcmAuXG4kdGFibGUtYmctaG92ZXI6ICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kdGFibGUtYmctYWN0aXZlOiAgICAgICAgICAgICAgICR0YWJsZS1iZy1ob3ZlciAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRhYmxlIGFuZCBjZWxsIGJvcmRlcnMuXG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PSBCdXR0b25zXG4vL1xuLy8jIyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBub3JtYWwgIWRlZmF1bHQ7XG5cbiRidG4tZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcblxuJGJ0bi1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tcHJpbWFyeS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4tcHJpbWFyeS1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1zdWNjZXNzLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4taW5mby1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcbiRidG4taW5mby1ib3JkZXI6ICAgICAgICAgICAgICAgIGRhcmtlbigkYnRuLWluZm8tYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi13YXJuaW5nLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4td2FybmluZy1iZzogICAgICAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4td2FybmluZy1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbiRidG4tZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbigkYnRuLWRhbmdlci1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG5cblxuLy89PSBGb3Jtc1xuLy9cbi8vIyNcblxuLy8qKiBgPGlucHV0PmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYDxpbnB1dCBkaXNhYmxlZD5gIGJhY2tncm91bmQgY29sb3JcbiRpbnB1dC1iZy1kaXNhYmxlZDogICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBmb3IgYDxpbnB1dD5gc1xuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4vLyoqIGA8aW5wdXQ+YCBib3JkZXIgY29sb3JcbiRpbnB1dC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IFJlbmFtZSBgJGlucHV0LWJvcmRlci1yYWRpdXNgIHRvIGAkaW5wdXQtYm9yZGVyLXJhZGl1cy1iYXNlYCBpbiB2NFxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4vLyBUaGlzIGhhcyBubyBlZmZlY3Qgb24gYDxzZWxlY3Q+YHMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4vLyoqIExhcmdlIGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAkYm9yZGVyLXJhZGl1cy1sYXJnZSAhZGVmYXVsdDtcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICRib3JkZXItcmFkaXVzLXNtYWxsICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgaW5wdXRzIG9uIGZvY3VzXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAgICAgICAgICAgICAjNjZhZmU5ICFkZWZhdWx0O1xuXG4vLyoqIFBsYWNlaG9sZGVyIHRleHQgY29sb3JcbiRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcjogICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgICAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKiAyKSArIDIpICFkZWZhdWx0O1xuLy8qKiBMYXJnZSBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LWxhcmdlOiAgICAgICAgICAgICAoY2VpbCgkZm9udC1zaXplLWxhcmdlICogJGxpbmUtaGVpZ2h0LWxhcmdlKSArICgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG4vLyoqIFNtYWxsIGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtc21hbGw6ICAgICAgICAgICAgIChmbG9vcigkZm9udC1zaXplLXNtYWxsICogJGxpbmUtaGVpZ2h0LXNtYWxsKSArICgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG5cbi8vKiogYC5mb3JtLWdyb3VwYCBtYXJnaW5cbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRsZWdlbmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kbGVnZW5kLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZTVlNWU1ICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyICFkZWZhdWx0O1xuXG4vLyoqIERpc2FibGVkIGN1cnNvciBmb3IgZm9ybSBjb250cm9scyBhbmQgYnV0dG9ucy5cbiRjdXJzb3ItZGlzYWJsZWQ6ICAgICAgICAgICAgICAgIG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG5cbi8vPT0gRHJvcGRvd25zXG4vL1xuLy8jIyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbi8vKiogQmFja2dyb3VuZCBmb3IgdGhlIGRyb3Bkb3duIG1lbnUuXG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgLlxuJGRyb3Bkb3duLWJvcmRlcjogICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMTUpICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgICoqZm9yIElFOCoqLlxuJGRyb3Bkb3duLWZhbGxiYWNrLWJvcmRlcjogICAgICAgI2NjYyAhZGVmYXVsdDtcbi8vKiogRGl2aWRlciBjb2xvciBmb3IgYmV0d2VlbiBkcm9wZG93biBpdGVtcy5cbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XG5cbi8vKiogRHJvcGRvd24gbGluayB0ZXh0IGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbi8vKiogSG92ZXIgY29sb3IgZm9yIGRyb3Bkb3duIGxpbmtzLlxuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRncmF5LWRhcmssIDUlKSAhZGVmYXVsdDtcbi8vKiogSG92ZXIgYmFja2dyb3VuZCBmb3IgZHJvcGRvd24gbGlua3MuXG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gdGV4dCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBBY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtIGJhY2tncm91bmQgY29sb3IuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuLy8qKiBEaXNhYmxlZCBkcm9wZG93biBtZW51IGl0ZW0gYmFja2dyb3VuZCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3IgZm9yIGhlYWRlcnMgd2l0aGluIGRyb3Bkb3duIG1lbnVzLlxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogRGVwcmVjYXRlZCBgJGRyb3Bkb3duLWNhcmV0LWNvbG9yYCBhcyBvZiB2My4xLjBcbiRkcm9wZG93bi1jYXJldC1jb2xvcjogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG5cblxuLy8tLSBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG4vL1xuLy8gTm90ZTogVGhlc2UgdmFyaWFibGVzIGFyZSBub3QgZ2VuZXJhdGVkIGludG8gdGhlIEN1c3RvbWl6ZXIuXG5cbiR6aW5kZXgtbmF2YmFyOiAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG4kemluZGV4LW5hdmJhci1maXhlZDogICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kOiAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG5cblxuLy89PSBNZWRpYSBxdWVyaWVzIGJyZWFrcG9pbnRzXG4vL1xuLy8jIyBEZWZpbmUgdGhlIGJyZWFrcG9pbnRzIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLCBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBFeHRyYSBzbWFsbCBzY3JlZW4gLyBwaG9uZVxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXhzYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4teHM6ICAgICAgICAgICAgICAgICAgNDgwcHggIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHMtbWluYCBhcyBvZiB2My4yLjBcbiRzY3JlZW4teHMtbWluOiAgICAgICAgICAgICAgJHNjcmVlbi14cyAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1waG9uZWAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXBob25lOiAgICAgICAgICAgICAgICRzY3JlZW4teHMtbWluICFkZWZhdWx0O1xuXG4vLyBTbWFsbCBzY3JlZW4gLyB0YWJsZXRcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1zbWAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXNtOiAgICAgICAgICAgICAgICAgIDc2OHB4ICFkZWZhdWx0O1xuJHNjcmVlbi1zbS1taW46ICAgICAgICAgICAgICAkc2NyZWVuLXNtICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXRhYmxldGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXRhYmxldDogICAgICAgICAgICAgICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLW1kYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbWQ6ICAgICAgICAgICAgICAgICAgOTkycHggIWRlZmF1bHQ7XG4kc2NyZWVuLW1kLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tbWQgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tZGVza3RvcGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWRlc2t0b3A6ICAgICAgICAgICAgICRzY3JlZW4tbWQtbWluICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3Bcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZ2AgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWxnOiAgICAgICAgICAgICAgICAgIDE0NDBweCAhZGVmYXVsdDsgXG4kc2NyZWVuLWxnLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tbGcgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbGctZGVza3RvcGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWxnLWRlc2t0b3A6ICAgICAgICAgICRzY3JlZW4tbGctbWluICFkZWZhdWx0O1xuXG4vLyBTbyBtZWRpYSBxdWVyaWVzIGRvbid0IG92ZXJsYXAgd2hlbiByZXF1aXJlZCwgcHJvdmlkZSBhIG1heGltdW1cbiRzY3JlZW4teHMtbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tc20tbWluIC0gMSkgIWRlZmF1bHQ7XG4kc2NyZWVuLXNtLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLW1kLW1pbiAtIDEpICFkZWZhdWx0O1xuJHNjcmVlbi1tZC1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1sZy1taW4gLSAxKSAhZGVmYXVsdDtcblxuXG4vLz09IEdyaWQgc3lzdGVtXG4vL1xuLy8jIyBEZWZpbmUgeW91ciBjdXN0b20gcmVzcG9uc2l2ZSBncmlkLlxuXG4vLyoqIE51bWJlciBvZiBjb2x1bW5zIGluIHRoZSBncmlkLlxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgIDI0ICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGJldHdlZW4gY29sdW1ucy4gR2V0cyBkaXZpZGVkIGluIGhhbGYgZm9yIHRoZSBsZWZ0IGFuZCByaWdodC5cbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAzMHB4ICFkZWZhdWx0O1xuLy8gTmF2YmFyIGNvbGxhcHNlXG4vLyoqIFBvaW50IGF0IHdoaWNoIHRoZSBuYXZiYXIgYmVjb21lcyB1bmNvbGxhcHNlZC5cbiRncmlkLWZsb2F0LWJyZWFrcG9pbnQ6ICAgICAkc2NyZWVuLXNtLW1pbiAhZGVmYXVsdDtcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWdpbnMgY29sbGFwc2luZy5cbiRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4OiAoJGdyaWQtZmxvYXQtYnJlYWtwb2ludCAtIDEpICFkZWZhdWx0O1xuXG5cbi8vPT0gQ29udGFpbmVyIHNpemVzXG4vL1xuLy8jIyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBTbWFsbCBzY3JlZW4gLyB0YWJsZXRcbiRjb250YWluZXItdGFibGV0OiAgICAgICAgICAgICAoNjM4cHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tc20tbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLXNtOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci10YWJsZXQgIWRlZmF1bHQ7XG5cbi8vIE1lZGl1bSBzY3JlZW4gLyBkZXNrdG9wXG4kY29udGFpbmVyLWRlc2t0b3A6ICAgICAgICAgICAgKDg1MnB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLW1kLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1tZDogICAgICAgICAgICAgICAgICRjb250YWluZXItZGVza3RvcCAhZGVmYXVsdDtcblxuLy8gTGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wXG4kY29udGFpbmVyLWxhcmdlLWRlc2t0b3A6ICAgICAgKDEyMDBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1sZy1taW5gIGFuZCB1cC5cbiRjb250YWluZXItbGc6ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLWxhcmdlLWRlc2t0b3AgIWRlZmF1bHQ7XG5cblxuLy89PSBOYXZiYXJcbi8vXG4vLyMjXG5cbi8vIEJhc2ljcyBvZiBhIG5hdmJhclxuJG5hdmJhci1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICA1MHB4ICFkZWZhdWx0O1xuJG5hdmJhci1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAkbGluZS1oZWlnaHQtY29tcHV0ZWQgIWRlZmF1bHQ7XG4kbmF2YmFyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgIGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSkgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICgoJG5hdmJhci1oZWlnaHQgLSAkbGluZS1oZWlnaHQtY29tcHV0ZWQpIC8gMikgIWRlZmF1bHQ7XG4kbmF2YmFyLWNvbGxhcHNlLW1heC1oZWlnaHQ6ICAgICAgIDM0MHB4ICFkZWZhdWx0O1xuXG4kbmF2YmFyLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAgICNmOGY4ZjggIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYmcsIDYuNSUpICFkZWZhdWx0O1xuXG4vLyBOYXZiYXIgbGlua3NcbiRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAjNzc3ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAgIzU1NSAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJnLCA2LjUlKSAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAjY2NjICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtYmc6ICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBOYXZiYXIgYnJhbmQgbGFiZWxcbiRuYXZiYXItZGVmYXVsdC1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAkbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yLCAxMCUpICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWJnOiAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBOYXZiYXIgdG9nZ2xlXG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWhvdmVyLWJnOiAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtaWNvbi1iYXItYmc6ICAgICAgICAjODg4ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ib3JkZXItY29sb3I6ICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PT0gSW52ZXJ0ZWQgbmF2YmFyXG4vLyBSZXNldCBpbnZlcnRlZCBuYXZiYXIgYmFzaWNzXG4kbmF2YmFyLWludmVyc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktbGlnaHQsIDE1JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICMyMjIgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWludmVyc2UtYmcsIDEwJSkgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciBsaW5rc1xuJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWxpZ2h0LCAxNSUpICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWludmVyc2UtYmcsIDEwJSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICM0NDQgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1iZzogICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBJbnZlcnRlZCBuYXZiYXIgYnJhbmQgbGFiZWxcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBJbnZlcnRlZCBuYXZiYXIgdG9nZ2xlXG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlLWhvdmVyLWJnOiAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlLWljb24tYmFyLWJnOiAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgICMzMzMgIWRlZmF1bHQ7XG5cblxuLy89PSBOYXZzXG4vL1xuLy8jI1xuXG4vLz09PSBTaGFyZWQgbmF2IHN0eWxlc1xuJG5hdi1saW5rLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMHB4IDE1cHggIWRlZmF1bHQ7XG4kbmF2LWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRuYXYtZGlzYWJsZWQtbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kbmF2LWRpc2FibGVkLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLz09IFRhYnNcbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAkZ3JheSAhZGVmYXVsdDtcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgI2RkZCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWp1c3RpZmllZC1saW5rLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdi10YWJzLWp1c3RpZmllZC1hY3RpdmUtbGluay1ib3JkZXItY29sb3I6ICAgICAkYm9keS1iZyAhZGVmYXVsdDtcblxuLy89PSBQaWxsc1xuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy89PSBQYWdpbmF0aW9uXG4vL1xuLy8jI1xuXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXI6ICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyOiAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09IFBhZ2VyXG4vL1xuLy8jI1xuXG4kcGFnZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1iZyAhZGVmYXVsdDtcbiRwYWdlci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWJvcmRlciAhZGVmYXVsdDtcbiRwYWdlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRwYWdlci1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWhvdmVyLWJnICFkZWZhdWx0O1xuXG4kcGFnZXItYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kcGFnZXItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG5cbiRwYWdlci1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vPT0gSnVtYm90cm9uXG4vL1xuLy8jI1xuXG4kanVtYm90cm9uLXBhZGRpbmc6ICAgICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1jb2xvcjogICAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tYmc6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWhlYWRpbmctY29sb3I6ICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1mb250LXNpemU6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS41KSkgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWhlYWRpbmctZm9udC1zaXplOiAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiA0LjUpKSAhZGVmYXVsdDtcblxuXG4vLz09IEZvcm0gc3RhdGVzIGFuZCBhbGVydHNcbi8vXG4vLyMjIERlZmluZSBjb2xvcnMgZm9yIGZvcm0gZmVlZGJhY2sgc3RhdGVzIGFuZCwgYnkgZGVmYXVsdCwgYWxlcnRzLlxuXG4kc3RhdGUtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAgICAjM2M3NjNkICFkZWZhdWx0O1xuJHN0YXRlLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgI2RmZjBkOCAhZGVmYXVsdDtcbiRzdGF0ZS1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1zdWNjZXNzLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS1pbmZvLXRleHQ6ICAgICAgICAgICAgICAgICMzMTcwOGYgIWRlZmF1bHQ7XG4kc3RhdGUtaW5mby1iZzogICAgICAgICAgICAgICAgICAjZDllZGY3ICFkZWZhdWx0O1xuJHN0YXRlLWluZm8tYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLWluZm8tYmcsIC0xMCksIDclKSAhZGVmYXVsdDtcblxuJHN0YXRlLXdhcm5pbmctdGV4dDogICAgICAgICAgICAgIzhhNmQzYiAhZGVmYXVsdDtcbiRzdGF0ZS13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICNmY2Y4ZTMgIWRlZmF1bHQ7XG4kc3RhdGUtd2FybmluZy1ib3JkZXI6ICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtd2FybmluZy1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG4kc3RhdGUtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAgICAjYTk0NDQyICFkZWZhdWx0O1xuJHN0YXRlLWRhbmdlci1iZzogICAgICAgICAgICAgICAgI2YyZGVkZSAhZGVmYXVsdDtcbiRzdGF0ZS1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1kYW5nZXItYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuXG4vLz09IFRvb2x0aXBzXG4vL1xuLy8jI1xuXG4vLyoqIFRvb2x0aXAgbWF4IHdpZHRoXG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCB0ZXh0IGNvbG9yXG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIGJhY2tncm91bmQgY29sb3JcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgICAgICAuOSAhZGVmYXVsdDtcblxuLy8qKiBUb29sdGlwIGFycm93IHdpZHRoXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICA1cHggIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgYXJyb3cgY29sb3JcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICR0b29sdGlwLWJnICFkZWZhdWx0O1xuXG5cbi8vPT0gUG9wb3ZlcnNcbi8vXG4vLyMjXG5cbi8vKiogUG9wb3ZlciBib2R5IGJhY2tncm91bmQgY29sb3JcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBtYXhpbXVtIHdpZHRoXG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGJvcmRlciBjb2xvclxuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4yKSAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBmYWxsYmFjayBib3JkZXIgY29sb3JcbiRwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvcjogICAgICAgI2NjYyAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIHRpdGxlIGJhY2tncm91bmQgY29sb3JcbiRwb3BvdmVyLXRpdGxlLWJnOiAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciBhcnJvdyB3aWR0aFxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGFycm93IGNvbG9yXG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgd2lkdGhcbiRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoOiAgICAgICAgICAgKCRwb3BvdmVyLWFycm93LXdpZHRoICsgMSkgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgY29sb3JcbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgICAgZmFkZV9pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIDAuMDUpICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IGZhbGxiYWNrIGNvbG9yXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjogIGRhcmtlbigkcG9wb3Zlci1mYWxsYmFjay1ib3JkZXItY29sb3IsIDIwJSkgIWRlZmF1bHQ7XG5cblxuLy89PSBMYWJlbHNcbi8vXG4vLyMjXG5cbi8vKiogRGVmYXVsdCBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtZGVmYXVsdC1iZzogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogUHJpbWFyeSBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtcHJpbWFyeS1iZzogICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogU3VjY2VzcyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtc3VjY2Vzcy1iZzogICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbi8vKiogSW5mbyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtaW5mby1iZzogICAgICAgICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcbi8vKiogV2FybmluZyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtd2FybmluZy1iZzogICAgICAgICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbi8vKiogRGFuZ2VyIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1kYW5nZXItYmc6ICAgICAgICAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBsYWJlbCB0ZXh0IGNvbG9yXG4kbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBEZWZhdWx0IHRleHQgY29sb3Igb2YgYSBsaW5rZWQgbGFiZWxcbiRsYWJlbC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBNb2RhbHNcbi8vXG4vLyMjXG5cbi8vKiogUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCBib2R5XG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4vLyoqIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgdGl0bGVcbiRtb2RhbC10aXRsZS1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIHRpdGxlIGxpbmUtaGVpZ2h0XG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIG1vZGFsIGNvbnRlbnQgYXJlYVxuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBjb250ZW50IGJvcmRlciBjb2xvclxuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4yKSAhZGVmYXVsdDtcbi8vKiogTW9kYWwgY29udGVudCBib3JkZXIgY29sb3IgKipmb3IgSUU4KipcbiRtb2RhbC1jb250ZW50LWZhbGxiYWNrLWJvcmRlci1jb2xvcjogICAgICAgICAgIzk5OSAhZGVmYXVsdDtcblxuLy8qKiBNb2RhbCBiYWNrZHJvcCBiYWNrZ3JvdW5kIGNvbG9yXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBiYWNrZHJvcCBvcGFjaXR5XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAuNSAhZGVmYXVsdDtcbi8vKiogTW9kYWwgaGVhZGVyIGJvcmRlciBjb2xvclxuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgI2U1ZTVlNSAhZGVmYXVsdDtcbi8vKiogTW9kYWwgZm9vdGVyIGJvcmRlciBjb2xvclxuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgIDkwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgNjAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcblxuXG4vLz09IEFsZXJ0c1xuLy9cbi8vIyMgRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbiRhbGVydC1wYWRkaW5nOiAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgYm9sZCAhZGVmYXVsdDtcblxuJGFsZXJ0LXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYmcgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtaW5mby1iZzogICAgICAgICAgICAgICAkc3RhdGUtaW5mby1iZyAhZGVmYXVsdDtcbiRhbGVydC1pbmZvLXRleHQ6ICAgICAgICAgICAgICRzdGF0ZS1pbmZvLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtaW5mby1ib3JkZXI6ICAgICAgICAgICAkc3RhdGUtaW5mby1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC13YXJuaW5nLWJnOiAgICAgICAgICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xuJGFsZXJ0LXdhcm5pbmctdGV4dDogICAgICAgICAgJHN0YXRlLXdhcm5pbmctdGV4dCAhZGVmYXVsdDtcbiRhbGVydC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LWRhbmdlci1iZzogICAgICAgICAgICAgJHN0YXRlLWRhbmdlci1iZyAhZGVmYXVsdDtcbiRhbGVydC1kYW5nZXItdGV4dDogICAgICAgICAgICRzdGF0ZS1kYW5nZXItdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1kYW5nZXItYm9yZGVyOiAgICAgICAgICRzdGF0ZS1kYW5nZXItYm9yZGVyICFkZWZhdWx0O1xuXG5cbi8vPT0gUHJvZ3Jlc3MgYmFyc1xuLy9cbi8vIyNcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSB3aG9sZSBwcm9ncmVzcyBjb21wb25lbnRcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIFByb2dyZXNzIGJhciB0ZXh0IGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBWYXJpYWJsZSBmb3Igc2V0dGluZyByb3VuZGVkIGNvcm5lcnMgb24gcHJvZ3Jlc3MgYmFyLlxuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4vLyoqIFN1Y2Nlc3MgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLXN1Y2Nlc3MtYmc6ICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbi8vKiogV2FybmluZyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItd2FybmluZy1iZzogICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuLy8qKiBEYW5nZXIgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWRhbmdlci1iZzogICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuLy8qKiBJbmZvIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1pbmZvLWJnOiAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XG5cblxuLy89PSBMaXN0IGdyb3VwXG4vL1xuLy8jI1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb24gYC5saXN0LWdyb3VwLWl0ZW1gXG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIGAubGlzdC1ncm91cC1pdGVtYCBib3JkZXIgY29sb3JcbiRsaXN0LWdyb3VwLWJvcmRlcjogICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbi8vKiogTGlzdCBncm91cCBib3JkZXIgcmFkaXVzXG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBzaW5nbGUgbGlzdCBpdGVtcyBvbiBob3ZlclxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuLy8qKiBCb3JkZXIgY29sb3Igb2YgYWN0aXZlIGxpc3QgZWxlbWVudHNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXI6ICAgICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIGZvciBjb250ZW50IHdpdGhpbiBhY3RpdmUgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtYWN0aXZlLXRleHQtY29sb3I6ICBsaWdodGVuKCRsaXN0LWdyb3VwLWFjdGl2ZS1iZywgNDAlKSAhZGVmYXVsdDtcblxuLy8qKiBUZXh0IGNvbG9yIG9mIGRpc2FibGVkIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIGRpc2FibGVkIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3IgZm9yIGNvbnRlbnQgd2l0aGluIGRpc2FibGVkIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWRpc2FibGVkLXRleHQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1saW5rLWNvbG9yOiAgICAgICAgICM1NTUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1saW5rLWhvdmVyLWNvbG9yOiAgICRsaXN0LWdyb3VwLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1saW5rLWhlYWRpbmctY29sb3I6ICMzMzMgIWRlZmF1bHQ7XG5cblxuLy89PSBQYW5lbHNcbi8vXG4vLyMjXG5cbiRwYW5lbC1iZzogICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFuZWwtYm9keS1wYWRkaW5nOiAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJHBhbmVsLWhlYWRpbmctcGFkZGluZzogICAgICAgMTBweCAxNXB4ICFkZWZhdWx0O1xuJHBhbmVsLWZvb3Rlci1wYWRkaW5nOiAgICAgICAgJHBhbmVsLWhlYWRpbmctcGFkZGluZyAhZGVmYXVsdDtcbiRwYW5lbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQm9yZGVyIGNvbG9yIGZvciBlbGVtZW50cyB3aXRoaW4gcGFuZWxzXG4kcGFuZWwtaW5uZXItYm9yZGVyOiAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJHBhbmVsLWZvb3Rlci1iZzogICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcblxuJHBhbmVsLWRlZmF1bHQtdGV4dDogICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRwYW5lbC1kZWZhdWx0LWJvcmRlcjogICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kcGFuZWwtZGVmYXVsdC1oZWFkaW5nLWJnOiAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4kcGFuZWwtcHJpbWFyeS10ZXh0OiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhbmVsLXByaW1hcnktYm9yZGVyOiAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kcGFuZWwtcHJpbWFyeS1oZWFkaW5nLWJnOiAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuJHBhbmVsLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC1zdWNjZXNzLWJvcmRlcjogICAgICAgICRzdGF0ZS1zdWNjZXNzLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1zdWNjZXNzLWhlYWRpbmctYmc6ICAgICRzdGF0ZS1zdWNjZXNzLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtaW5mby10ZXh0OiAgICAgICAgICAgICAkc3RhdGUtaW5mby10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLWluZm8tYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWluZm8tYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLWluZm8taGVhZGluZy1iZzogICAgICAgJHN0YXRlLWluZm8tYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC13YXJuaW5nLXRleHQ6ICAgICAgICAgICRzdGF0ZS13YXJuaW5nLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtd2FybmluZy1ib3JkZXI6ICAgICAgICAkc3RhdGUtd2FybmluZy1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtd2FybmluZy1oZWFkaW5nLWJnOiAgICAkc3RhdGUtd2FybmluZy1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtZGFuZ2VyLWhlYWRpbmctYmc6ICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xuXG5cbi8vPT0gVGh1bWJuYWlsc1xuLy9cbi8vIyNcblxuLy8qKiBQYWRkaW5nIGFyb3VuZCB0aGUgdGh1bWJuYWlsIGltYWdlXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICA0cHggIWRlZmF1bHQ7XG4vLyoqIFRodW1ibmFpbCBiYWNrZ3JvdW5kIGNvbG9yXG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJvcmRlciBjb2xvclxuJHRodW1ibmFpbC1ib3JkZXI6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJvcmRlciByYWRpdXNcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQ3VzdG9tIHRleHQgY29sb3IgZm9yIHRodW1ibmFpbCBjYXB0aW9uc1xuJHRodW1ibmFpbC1jYXB0aW9uLWNvbG9yOiAgICAgJHRleHQtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgY2FwdGlvblxuJHRodW1ibmFpbC1jYXB0aW9uLXBhZGRpbmc6ICAgOXB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gV2VsbHNcbi8vXG4vLyMjXG5cbiR3ZWxsLWJnOiAgICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kd2VsbC1ib3JkZXI6ICAgICAgICAgICAgICAgICBkYXJrZW4oJHdlbGwtYmcsIDclKSAhZGVmYXVsdDtcblxuXG4vLz09IEJhZGdlc1xuLy9cbi8vIyNcblxuJGJhZGdlLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogTGlua2VkIGJhZGdlIHRleHQgY29sb3Igb24gaG92ZXJcbiRiYWRnZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYmFkZ2UtYmc6ICAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8qKiBCYWRnZSB0ZXh0IGNvbG9yIGluIGFjdGl2ZSBuYXYgbGlua1xuJGJhZGdlLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEJhZGdlIGJhY2tncm91bmQgY29sb3IgaW4gYWN0aXZlIG5hdiBsaW5rXG4kYmFkZ2UtYWN0aXZlLWJnOiAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICBib2xkICFkZWZhdWx0O1xuJGJhZGdlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgMSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBCcmVhZGNydW1ic1xuLy9cbi8vIyNcblxuJGJyZWFkY3J1bWItcGFkZGluZy12ZXJ0aWNhbDogICA4cHggIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLWhvcml6b250YWw6IDE1cHggIWRlZmF1bHQ7XG4vLyoqIEJyZWFkY3J1bWIgYmFja2dyb3VuZCBjb2xvclxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuLy8qKiBCcmVhZGNydW1iIHRleHQgY29sb3JcbiRicmVhZGNydW1iLWNvbG9yOiAgICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBvZiBjdXJyZW50IHBhZ2UgaW4gdGhlIGJyZWFkY3J1bWJcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIFRleHR1YWwgc2VwYXJhdG9yIGZvciBiZXR3ZWVuIGJyZWFkY3J1bWIgZWxlbWVudHNcbiRicmVhZGNydW1iLXNlcGFyYXRvcjogICAgICAgICAgXCIvXCIgIWRlZmF1bHQ7XG5cblxuLy89PSBDYXJvdXNlbFxuLy9cbi8vIyNcblxuJGNhcm91c2VsLXRleHQtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICAgIDAgMXB4IDJweCByZ2JhKDAsMCwwLC42KSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgIDIwcHggIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG5cbi8vPT0gQ2xvc2Vcbi8vXG4vLyMjXG5cbiRjbG9zZS1mb250LXdlaWdodDogICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XG4kY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgMCAxcHggMCAjZmZmICFkZWZhdWx0O1xuXG5cbi8vPT0gQ29kZVxuLy9cbi8vIyNcblxuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgI2M3MjU0ZSAhZGVmYXVsdDtcbiRjb2RlLWJnOiAgICAgICAgICAgICAgICAgICAgICNmOWYyZjQgIWRlZmF1bHQ7XG5cbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuXG4kcHJlLWJnOiAgICAgICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRwcmUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG4kcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDogICAzNDBweCAhZGVmYXVsdDtcblxuXG4vLz09IFR5cGVcbi8vXG4vLyMjXG5cbi8vKiogSG9yaXpvbnRhbCBvZmZzZXQgZm9yIGZvcm1zIGFuZCBsaXN0cy5cbiRjb21wb25lbnQtb2Zmc2V0LWhvcml6b250YWw6IDE4MHB4ICFkZWZhdWx0O1xuLy8qKiBUZXh0IG11dGVkIGNvbG9yXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQWJicmV2aWF0aW9ucyBhbmQgYWNyb255bXMgYm9yZGVyIGNvbG9yXG4kYWJici1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogSGVhZGluZ3Mgc21hbGwgY29sb3JcbiRoZWFkaW5ncy1zbWFsbC1jb2xvcjogICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIHNtYWxsIGNvbG9yXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmxvY2txdW90ZSBmb250IHNpemVcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgICAgICgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSAhZGVmYXVsdDtcbi8vKiogQmxvY2txdW90ZSBib3JkZXIgY29sb3JcbiRibG9ja3F1b3RlLWJvcmRlci1jb2xvcjogICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIFBhZ2UgaGVhZGVyIGJvcmRlciBjb2xvclxuJHBhZ2UtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogV2lkdGggb2YgaG9yaXpvbnRhbCBkZXNjcmlwdGlvbiBsaXN0IHRpdGxlc1xuJGRsLWhvcml6b250YWwtb2Zmc2V0OiAgICAgICAgJGNvbXBvbmVudC1vZmZzZXQtaG9yaXpvbnRhbCAhZGVmYXVsdDtcbi8vKiogUG9pbnQgYXQgd2hpY2ggLmRsLWhvcml6b250YWwgYmVjb21lcyBob3Jpem9udGFsXG4kZGwtaG9yaXpvbnRhbC1icmVha3BvaW50OiAgICAkZ3JpZC1mbG9hdC1icmVha3BvaW50ICFkZWZhdWx0O1xuLy8qKiBIb3Jpem9udGFsIGxpbmUgY29sb3IuXG4kaHItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuIiwiLy8gTWl4aW5zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgXCJtaXhpbnMvaGlkZS10ZXh0XCI7XG5AaW1wb3J0IFwibWl4aW5zL29wYWNpdHlcIjtcbkBpbXBvcnQgXCJtaXhpbnMvaW1hZ2VcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGFiZWxzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2V0LWZpbHRlclwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzcG9uc2l2ZS12aXNpYmlsaXR5XCI7XG5AaW1wb3J0IFwibWl4aW5zL3NpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGFiLWZvY3VzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2V0LXRleHRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC1lbXBoYXNpc1wiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LW92ZXJmbG93XCI7XG5AaW1wb3J0IFwibWl4aW5zL3ZlbmRvci1wcmVmaXhlc1wiO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0IFwibWl4aW5zL2FsZXJ0c1wiO1xuQGltcG9ydCBcIm1peGlucy9idXR0b25zXCI7XG5AaW1wb3J0IFwibWl4aW5zL3BhbmVsc1wiO1xuQGltcG9ydCBcIm1peGlucy9wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwibWl4aW5zL2xpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbmF2LWRpdmlkZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZm9ybXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcHJvZ3Jlc3MtYmFyXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RhYmxlLXJvd1wiO1xuXG4vLyBTa2luc1xuQGltcG9ydCBcIm1peGlucy9iYWNrZ3JvdW5kLXZhcmlhbnRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYm9yZGVyLXJhZGl1c1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmFkaWVudHNcIjtcblxuLy8gTGF5b3V0XG5AaW1wb3J0IFwibWl4aW5zL2NsZWFyZml4XCI7XG5AaW1wb3J0IFwibWl4aW5zL2NlbnRlci1ibG9ja1wiO1xuQGltcG9ydCBcIm1peGlucy9uYXYtdmVydGljYWwtYWxpZ25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZC1mcmFtZXdvcmtcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZFwiO1xuIiwiLy8gQ1NTIGltYWdlIHJlcGxhY2VtZW50XG4vL1xuLy8gSGVhZHMgdXAhIHYzIGxhdW5jaGVkIHdpdGggb25seSBgLmhpZGUtdGV4dCgpYCwgYnV0IHBlciBvdXIgcGF0dGVybiBmb3Jcbi8vIG1peGlucyBiZWluZyByZXVzZWQgYXMgY2xhc3NlcyB3aXRoIHRoZSBzYW1lIG5hbWUsIHRoaXMgZG9lc24ndCBob2xkIHVwLiBBc1xuLy8gb2YgdjMuMC4xIHdlIGhhdmUgYWRkZWQgYC50ZXh0LWhpZGUoKWAgYW5kIGRlcHJlY2F0ZWQgYC5oaWRlLXRleHQoKWAuXG4vL1xuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9jb21taXQvYWEwMzk2ZWFlNzU3XG5cbi8vIERlcHJlY2F0ZWQgYXMgb2YgdjMuMC4xIChoYXMgYmVlbiByZW1vdmVkIGluIHY0KVxuQG1peGluIGhpZGUtdGV4dCgpIHtcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG5cbi8vIE5ldyBtaXhpbiB0byB1c2UgYXMgb2YgdjMuMC4xXG5AbWl4aW4gdGV4dC1oaWRlKCkge1xuICBAaW5jbHVkZSBoaWRlLXRleHQ7XG59XG4iLCIvLyBPcGFjaXR5XG5cbkBtaXhpbiBvcGFjaXR5KCRvcGFjaXR5KSB7XG4gIG9wYWNpdHk6ICRvcGFjaXR5O1xuICAvLyBJRTggZmlsdGVyXG4gICRvcGFjaXR5LWllOiAoJG9wYWNpdHkgKiAxMDApO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9JG9wYWNpdHktaWUpO1xufVxuIiwiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5AbWl4aW4gaW1nLXJlc3BvbnNpdmUoJGRpc3BsYXk6IGJsb2NrKSB7XG4gIGRpc3BsYXk6ICRkaXNwbGF5O1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIGhlaWdodDogYXV0bzsgLy8gUGFydCAyOiBTY2FsZSB0aGUgaGVpZ2h0IGFjY29yZGluZyB0byB0aGUgd2lkdGgsIG90aGVyd2lzZSB5b3UgZ2V0IHN0cmV0Y2hpbmdcbn1cblxuXG4vLyBSZXRpbmEgaW1hZ2Vcbi8vXG4vLyBTaG9ydCByZXRpbmEgbWl4aW4gZm9yIHNldHRpbmcgYmFja2dyb3VuZC1pbWFnZSBhbmQgLXNpemUuIE5vdGUgdGhhdCB0aGVcbi8vIHNwZWxsaW5nIG9mIGBtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW9gIGlzIGludGVudGlvbmFsLlxuQG1peGluIGltZy1yZXRpbmEoJGZpbGUtMXgsICRmaWxlLTJ4LCAkd2lkdGgtMXgsICRoZWlnaHQtMXgpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtaW1hZ2UtcGF0aChcIiN7JGZpbGUtMXh9XCIpLCBcIiN7JGZpbGUtMXh9XCIpKTtcblxuICBAbWVkaWFcbiAgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgIG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMiksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyLzEpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAgICAgICAgICAgIG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgICAgICAgICBtaW4tcmVzb2x1dGlvbjogMmRwcHgpIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1pbWFnZS1wYXRoKFwiI3skZmlsZS0yeH1cIiksIFwiI3skZmlsZS0yeH1cIikpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJHdpZHRoLTF4ICRoZWlnaHQtMXg7XG4gIH1cbn1cbiIsIi8vIExhYmVsc1xuXG5AbWl4aW4gbGFiZWwtdmFyaWFudCgkY29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXG4gICZbaHJlZl0ge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUmVzZXQgZmlsdGVycyBmb3IgSUVcbi8vXG4vLyBXaGVuIHlvdSBuZWVkIHRvIHJlbW92ZSBhIGdyYWRpZW50IGJhY2tncm91bmQsIGRvIG5vdCBmb3JnZXQgdG8gdXNlIHRoaXMgdG8gcmVzZXRcbi8vIHRoZSBJRSBmaWx0ZXIgZm9yIElFOSBhbmQgYmVsb3cuXG5cbkBtaXhpbiByZXNldC1maWx0ZXIoKSB7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KGVuYWJsZWQgPSBmYWxzZSk7XG59XG4iLCIvLyBSZXNpemUgYW55dGhpbmdcblxuQG1peGluIHJlc2l6YWJsZSgkZGlyZWN0aW9uKSB7XG4gIHJlc2l6ZTogJGRpcmVjdGlvbjsgLy8gT3B0aW9uczogaG9yaXpvbnRhbCwgdmVydGljYWwsIGJvdGhcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFBlciBDU1MzIFVJLCBgcmVzaXplYCBvbmx5IGFwcGxpZXMgd2hlbiBgb3ZlcmZsb3dgIGlzbid0IGB2aXNpYmxlYFxufVxuIiwiLy8gUmVzcG9uc2l2ZSB1dGlsaXRpZXNcblxuLy9cbi8vIE1vcmUgZWFzaWx5IGluY2x1ZGUgYWxsIHRoZSBzdGF0ZXMgZm9yIHJlc3BvbnNpdmUtdXRpbGl0aWVzLmxlc3MuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiByZXNwb25zaXZlLXZpc2liaWxpdHkoJHBhcmVudCkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIHRhYmxlI3skcGFyZW50fSAgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRyI3skcGFyZW50fSAgICAgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0aCN7JHBhcmVudH0sXG4gIHRkI3skcGFyZW50fSAgICAgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbn1cblxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJHBhcmVudCkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vIFNpemluZyBzaG9ydGN1dHNcblxuQG1peGluIHNpemUoJHdpZHRoLCAkaGVpZ2h0KSB7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbn1cblxuQG1peGluIHNxdWFyZSgkc2l6ZSkge1xuICBAaW5jbHVkZSBzaXplKCRzaXplLCAkc2l6ZSk7XG59XG4iLCIvLyBXZWJLaXQtc3R5bGUgZm9jdXNcblxuQG1peGluIHRhYi1mb2N1cygpIHtcbiAgLy8gV2ViS2l0LXNwZWNpZmljLiBPdGhlciBicm93c2VycyB3aWxsIGtlZXAgdGhlaXIgZGVmYXVsdCBvdXRsaW5lIHN0eWxlLlxuICAvLyAoSW5pdGlhbGx5IHRyaWVkIHRvIGFsc28gZm9yY2UgZGVmYXVsdCB2aWEgYG91dGxpbmU6IGluaXRpYWxgLFxuICAvLyBidXQgdGhhdCBzZWVtcyB0byBlcnJvbmVvdXNseSByZW1vdmUgdGhlIG91dGxpbmUgaW4gRmlyZWZveCBhbHRvZ2V0aGVyLilcbiAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbn1cbiIsIkBtaXhpbiByZXNldC10ZXh0KCkge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuIiwiLy8gVHlwb2dyYXBoeVxuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbiAgYSN7JHBhcmVudH06aG92ZXIsXG4gIGEjeyRwYXJlbnR9OmZvY3VzIHtcbiAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gVGV4dCBvdmVyZmxvd1xuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC1vdmVyZmxvdygpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBWZW5kb3IgUHJlZml4ZXNcbi8vXG4vLyBBbGwgdmVuZG9yIG1peGlucyBhcmUgZGVwcmVjYXRlZCBhcyBvZiB2My4yLjAgZHVlIHRvIHRoZSBpbnRyb2R1Y3Rpb24gb2Zcbi8vIEF1dG9wcmVmaXhlciBpbiBvdXIgR3J1bnRmaWxlLiBUaGV5IGhhdmUgYmVlbiByZW1vdmVkIGluIHY0LlxuXG4vLyAtIEFuaW1hdGlvbnNcbi8vIC0gQmFja2ZhY2UgdmlzaWJpbGl0eVxuLy8gLSBCb3ggc2hhZG93XG4vLyAtIEJveCBzaXppbmdcbi8vIC0gQ29udGVudCBjb2x1bW5zXG4vLyAtIEh5cGhlbnNcbi8vIC0gUGxhY2Vob2xkZXIgdGV4dFxuLy8gLSBUcmFuc2Zvcm1hdGlvbnNcbi8vIC0gVHJhbnNpdGlvbnNcbi8vIC0gVXNlciBTZWxlY3RcblxuXG4vLyBBbmltYXRpb25zXG5AbWl4aW4gYW5pbWF0aW9uKCRhbmltYXRpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb246ICRhbmltYXRpb247XG4gICAgICAgLW8tYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tbmFtZSgkbmFtZSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogJG5hbWU7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWR1cmF0aW9uKCRkdXJhdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tZGVsYXkoJGRlbGF5KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG4gICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCgkaXRlcmF0aW9uLWNvdW50KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogJGl0ZXJhdGlvbi1jb3VudDtcbiAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkaXRlcmF0aW9uLWNvdW50O1xufVxuQG1peGluIGFuaW1hdGlvbi1kaXJlY3Rpb24oJGRpcmVjdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tZmlsbC1tb2RlKCRmaWxsLW1vZGUpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiAkZmlsbC1tb2RlO1xuICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XG59XG5cbi8vIEJhY2tmYWNlIHZpc2liaWxpdHlcbi8vIFByZXZlbnQgYnJvd3NlcnMgZnJvbSBmbGlja2VyaW5nIHdoZW4gdXNpbmcgQ1NTIDNEIHRyYW5zZm9ybXMuXG4vLyBEZWZhdWx0IHZhbHVlIGlzIGB2aXNpYmxlYCwgYnV0IGNhbiBiZSBjaGFuZ2VkIHRvIGBoaWRkZW5gXG5cbkBtaXhpbiBiYWNrZmFjZS12aXNpYmlsaXR5KCR2aXNpYmlsaXR5KSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG4gICAgIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG59XG5cbi8vIERyb3Agc2hhZG93c1xuLy9cbi8vIE5vdGU6IERlcHJlY2F0ZWQgYC5ib3gtc2hhZG93KClgIGFzIG9mIHYzLjEuMCBzaW5jZSBhbGwgb2YgQm9vdHN0cmFwJ3Ncbi8vIHN1cHBvcnRlZCBicm93c2VycyB0aGF0IGhhdmUgYm94IHNoYWRvdyBjYXBhYmlsaXRpZXMgbm93IHN1cHBvcnQgaXQuXG5cbkBtaXhpbiBib3gtc2hhZG93KCRzaGFkb3cuLi4pIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAkc2hhZG93OyAvLyBpT1MgPDQuMyAmIEFuZHJvaWQgPDQuMVxuICAgICAgICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG59XG5cbi8vIEJveCBzaXppbmdcbkBtaXhpbiBib3gtc2l6aW5nKCRib3htb2RlbCkge1xuICAtd2Via2l0LWJveC1zaXppbmc6ICRib3htb2RlbDtcbiAgICAgLW1vei1ib3gtc2l6aW5nOiAkYm94bW9kZWw7XG4gICAgICAgICAgYm94LXNpemluZzogJGJveG1vZGVsO1xufVxuXG4vLyBDU1MzIENvbnRlbnQgQ29sdW1uc1xuQG1peGluIGNvbnRlbnQtY29sdW1ucygkY29sdW1uLWNvdW50LCAkY29sdW1uLWdhcDogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIC13ZWJraXQtY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAgICAtbW96LWNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgICAgICAgICBjb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gIC13ZWJraXQtY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG4gICAgIC1tb3otY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG4gICAgICAgICAgY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG59XG5cbi8vIE9wdGlvbmFsIGh5cGhlbmF0aW9uXG5AbWl4aW4gaHlwaGVucygkbW9kZTogYXV0bykge1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtaHlwaGVuczogJG1vZGU7XG4gICAgIC1tb3otaHlwaGVuczogJG1vZGU7XG4gICAgICAtbXMtaHlwaGVuczogJG1vZGU7IC8vIElFMTArXG4gICAgICAgLW8taHlwaGVuczogJG1vZGU7XG4gICAgICAgICAgaHlwaGVuczogJG1vZGU7XG59XG5cbi8vIFBsYWNlaG9sZGVyIHRleHRcbkBtaXhpbiBwbGFjZWhvbGRlcigkY29sb3I6ICRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcikge1xuICAvLyBGaXJlZm94XG4gICY6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgb3BhY2l0eTogMTsgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjZcbiAgfVxuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiAkY29sb3I7IH0gLy8gSW50ZXJuZXQgRXhwbG9yZXIgMTArXG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgIHsgY29sb3I6ICRjb2xvcjsgfSAvLyBTYWZhcmkgYW5kIENocm9tZVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvbnNcbkBtaXhpbiBzY2FsZSgkcmF0aW8uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG59XG5cbkBtaXhpbiBzY2FsZVgoJHJhdGlvKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbn1cbkBtaXhpbiBzY2FsZVkoJHJhdGlvKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbn1cbkBtaXhpbiBza2V3KCR4LCAkeSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzQ4ODU7IElFOStcbiAgICAgICAtby10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xufVxuQG1peGluIHRyYW5zbGF0ZSgkeCwgJHkpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xufVxuQG1peGluIHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHgsICR5LCAkeik7XG59XG5AbWl4aW4gcm90YXRlKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xufVxuQG1peGluIHJvdGF0ZVgoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xufVxuQG1peGluIHJvdGF0ZVkoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xufVxuQG1peGluIHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG4gICAgIC1tb3otcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbiAgICAgICAgICBwZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xufVxuQG1peGluIHBlcnNwZWN0aXZlLW9yaWdpbigkcGVyc3BlY3RpdmUpIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbiAgICAgLW1vei1wZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbiAgICAgICAgICBwZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbn1cbkBtaXhpbiB0cmFuc2Zvcm0tb3JpZ2luKCRvcmlnaW4pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gICAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjsgLy8gSUU5IG9ubHlcbiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xufVxuXG5cbi8vIFRyYW5zaXRpb25zXG5cbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgICAgLW8tdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1wcm9wZXJ0eSgkdHJhbnNpdGlvbi1wcm9wZXJ0eS4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6ICR0cmFuc2l0aW9uLXByb3BlcnR5O1xuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6ICR0cmFuc2l0aW9uLXByb3BlcnR5O1xufVxuQG1peGluIHRyYW5zaXRpb24tZGVsYXkoJHRyYW5zaXRpb24tZGVsYXkpIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLWR1cmF0aW9uKCR0cmFuc2l0aW9uLWR1cmF0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tdHJhbnNmb3JtKCR0cmFuc2l0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgICAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbn1cblxuXG4vLyBVc2VyIHNlbGVjdFxuLy8gRm9yIHNlbGVjdGluZyB0ZXh0IG9uIHRoZSBwYWdlXG5cbkBtaXhpbiB1c2VyLXNlbGVjdCgkc2VsZWN0KSB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG4gICAgIC1tb3otdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG4gICAgICAtbXMtdXNlci1zZWxlY3Q6ICRzZWxlY3Q7IC8vIElFMTArXG4gICAgICAgICAgdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG59XG4iLCIvLyBBbGVydHNcblxuQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICR0ZXh0LWNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcblxuICBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRib3JkZXIsIDUlKTtcbiAgfVxuICAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IGRhcmtlbigkdGV4dC1jb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gQnV0dG9uIHZhcmlhbnRzXG4vL1xuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXG5cbkBtaXhpbiBidXR0b24tdmFyaWFudCgkY29sb3IsICRiYWNrZ3JvdW5kLCAkYm9yZGVyKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDI1JSk7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDEyJSk7XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMTIlKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDE3JSk7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMjUlKTtcbiAgICB9XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgfVxuXG4gIC5iYWRnZSB7XG4gICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLyBCdXR0b24gc2l6ZXNcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xufVxuIiwiLy8gUGFuZWxzXG5cbkBtaXhpbiBwYW5lbC12YXJpYW50KCRib3JkZXIsICRoZWFkaW5nLXRleHQtY29sb3IsICRoZWFkaW5nLWJnLWNvbG9yLCAkaGVhZGluZy1ib3JkZXIpIHtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gICYgPiAucGFuZWwtaGVhZGluZyB7XG4gICAgY29sb3I6ICRoZWFkaW5nLXRleHQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRpbmctYmctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkaGVhZGluZy1ib3JkZXI7XG5cbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICAgIC5iYWRnZSB7XG4gICAgICBjb2xvcjogJGhlYWRpbmctYmctY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZy10ZXh0LWNvbG9yO1xuICAgIH1cbiAgfVxuICAmID4gLnBhbmVsLWZvb3RlciB7XG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUGFnaW5hdGlvblxuXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gID4gbGkge1xuICAgID4gYSxcbiAgICA+IHNwYW4ge1xuICAgICAgcGFkZGluZzogJHBhZGRpbmctdmVydGljYWwgJHBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgfVxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgID4gYSxcbiAgICAgID4gc3BhbiB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gTGlzdCBHcm91cHNcblxuQG1peGluIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRjb2xvcikge1xuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICAgIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJiwgYnV0dG9uJiB0byBhLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0sIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9XG4gIH1cblxuICBhLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0sXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgfVxuICAgICYuYWN0aXZlLFxuICAgICYuYWN0aXZlOmhvdmVyLFxuICAgICYuYWN0aXZlOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG59XG4iLCIvLyBIb3Jpem9udGFsIGRpdmlkZXJzXG4vL1xuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIGRyb3Bkb3ducyBhbmQgbmF2IGxpc3RzXG5cbkBtaXhpbiBuYXYtZGl2aWRlcigkY29sb3I6ICNlNWU1ZTUpIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSAtIDEpIDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbn1cbiIsIi8vIEZvcm0gdmFsaWRhdGlvbiBzdGF0ZXNcbi8vXG4vLyBVc2VkIGluIGZvcm1zLmxlc3MgdG8gZ2VuZXJhdGUgdGhlIGZvcm0gdmFsaWRhdGlvbiBDU1MgZm9yIHdhcm5pbmdzLCBlcnJvcnMsXG4vLyBhbmQgc3VjY2Vzc2VzLlxuXG5AbWl4aW4gZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHRleHQtY29sb3I6ICM1NTUsICRib3JkZXItY29sb3I6ICNjY2MsICRiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1KSB7XG4gIC8vIENvbG9yIHRoZSBsYWJlbCBhbmQgaGVscCB0ZXh0XG4gIC5oZWxwLWJsb2NrLFxuICAuY29udHJvbC1sYWJlbCxcbiAgLnJhZGlvLFxuICAuY2hlY2tib3gsXG4gIC5yYWRpby1pbmxpbmUsXG4gIC5jaGVja2JveC1pbmxpbmUsXG4gICYucmFkaW8gbGFiZWwsXG4gICYuY2hlY2tib3ggbGFiZWwsXG4gICYucmFkaW8taW5saW5lIGxhYmVsLFxuICAmLmNoZWNrYm94LWlubGluZSBsYWJlbCAge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgfVxuICAvLyBTZXQgdGhlIGJvcmRlciBhbmQgYm94IHNoYWRvdyBvbiBzcGVjaWZpYyBpbnB1dHMgdG8gbWF0Y2hcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSkpOyAvLyBSZWRlY2xhcmUgc28gdHJhbnNpdGlvbnMgd29ya1xuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlci1jb2xvciwgMTAlKTtcbiAgICAgICRzaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLCAwIDAgNnB4IGxpZ2h0ZW4oJGJvcmRlci1jb2xvciwgMjAlKTtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJHNoYWRvdyk7XG4gICAgfVxuICB9XG4gIC8vIFNldCB2YWxpZGF0aW9uIHN0YXRlcyBhbHNvIGZvciBhZGRvbnNcbiAgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xuICB9XG4gIC8vIE9wdGlvbmFsIGZlZWRiYWNrIGljb25cbiAgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXG4vL1xuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgJGlucHV0LWJvcmRlci1mb2N1c2AgdmFyaWFibGUuXG4vL1xuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoJGNvbG9yOiAkaW5wdXQtYm9yZGVyLWZvY3VzKSB7XG4gICRjb2xvci1yZ2JhOiByZ2JhKHJlZCgkY29sb3IpLCBncmVlbigkY29sb3IpLCBibHVlKCRjb2xvciksIC42KTtcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLCAwIDAgOHB4ICRjb2xvci1yZ2JhKTtcbiAgfVxufVxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gUmVsYXRpdmUgdGV4dCBzaXplLCBwYWRkaW5nLCBhbmQgYm9yZGVyLXJhZGlpIGNoYW5nZXMgZm9yIGZvcm0gY29udHJvbHMuIEZvclxuLy8gaG9yaXpvbnRhbCBzaXppbmcsIHdyYXAgY29udHJvbHMgaW4gdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLiBgPHNlbGVjdD5gXG4vLyBlbGVtZW50IGdldHMgc3BlY2lhbCBsb3ZlIGJlY2F1c2UgaXQncyBzcGVjaWFsLCBhbmQgdGhhdCdzIGEgZmFjdCFcbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIGlucHV0LXNpemUoJHBhcmVudCwgJGlucHV0LWhlaWdodCwgJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIH1cblxuICBzZWxlY3QjeyRwYXJlbnR9IHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIH1cblxuICB0ZXh0YXJlYSN7JHBhcmVudH0sXG4gIHNlbGVjdFttdWx0aXBsZV0jeyRwYXJlbnR9IHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cbiIsIi8vIFByb2dyZXNzIGJhcnNcblxuQG1peGluIHByb2dyZXNzLWJhci12YXJpYW50KCRjb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgLy8gRGVwcmVjYXRlZCBwYXJlbnQgY2xhc3MgcmVxdWlyZW1lbnQgYXMgb2YgdjMuMi4wXG4gIC5wcm9ncmVzcy1zdHJpcGVkICYge1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQ7XG4gIH1cbn1cbiIsIi8vIFRhYmxlc1xuXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCkge1xuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuICAvLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuICAudGFibGUgPiB0aGVhZCA+IHRyLFxuICAudGFibGUgPiB0Ym9keSA+IHRyLFxuICAudGFibGUgPiB0Zm9vdCA+IHRyIHtcbiAgICA+IHRkLiN7JHN0YXRlfSxcbiAgICA+IHRoLiN7JHN0YXRlfSxcbiAgICAmLiN7JHN0YXRlfSA+IHRkLFxuICAgICYuI3skc3RhdGV9ID4gdGgge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cbiAgLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0ciB7XG4gICAgPiB0ZC4jeyRzdGF0ZX06aG92ZXIsXG4gICAgPiB0aC4jeyRzdGF0ZX06aG92ZXIsXG4gICAgJi4jeyRzdGF0ZX06aG92ZXIgPiB0ZCxcbiAgICAmOmhvdmVyID4gLiN7JHN0YXRlfSxcbiAgICAmLiN7JHN0YXRlfTpob3ZlciA+IHRoIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbiAgYSN7JHBhcmVudH06aG92ZXIsXG4gIGEjeyRwYXJlbnR9OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG4iLCIvLyBHcmFkaWVudHNcblxuXG5cbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG4vLyBDb2xvciBzdG9wcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBJRTkgYW5kIGJlbG93LlxuQG1peGluIGdyYWRpZW50LWhvcml6b250YWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTEpOyAvLyBJRTkgYW5kIGRvd25cbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG4vLyBDb2xvciBzdG9wcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBJRTkgYW5kIGJlbG93LlxuQG1peGluIGdyYWRpZW50LXZlcnRpY2FsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgIC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgIC8vIE9wZXJhIDEyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MCk7IC8vIElFOSBhbmQgZG93blxufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbn1cbkBtaXhpbiBncmFkaWVudC1ob3Jpem9udGFsLXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMGIzZWUsICRtaWQtY29sb3I6ICM3YTQzYjYsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNjMzMyNWYpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MSk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXG59XG5AbWl4aW4gZ3JhZGllbnQtdmVydGljYWwtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTApOyAvLyBJRTkgYW5kIGRvd24sIGdldHMgbm8gY29sb3Itc3RvcCBhdCBhbGwgZm9yIHByb3BlciBmYWxsYmFja1xufVxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICM1NTUsICRvdXRlci1jb2xvcjogIzMzMykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuIiwiLy8gQ2xlYXJmaXhcbi8vXG4vLyBGb3IgbW9kZXJuIGJyb3dzZXJzXG4vLyAxLiBUaGUgc3BhY2UgY29udGVudCBpcyBvbmUgd2F5IHRvIGF2b2lkIGFuIE9wZXJhIGJ1ZyB3aGVuIHRoZVxuLy8gICAgY29udGVudGVkaXRhYmxlIGF0dHJpYnV0ZSBpcyBpbmNsdWRlZCBhbnl3aGVyZSBlbHNlIGluIHRoZSBkb2N1bWVudC5cbi8vICAgIE90aGVyd2lzZSBpdCBjYXVzZXMgc3BhY2UgdG8gYXBwZWFyIGF0IHRoZSB0b3AgYW5kIGJvdHRvbSBvZiBlbGVtZW50c1xuLy8gICAgdGhhdCBhcmUgY2xlYXJmaXhlZC5cbi8vIDIuIFRoZSB1c2Ugb2YgYHRhYmxlYCByYXRoZXIgdGhhbiBgYmxvY2tgIGlzIG9ubHkgbmVjZXNzYXJ5IGlmIHVzaW5nXG4vLyAgICBgOmJlZm9yZWAgdG8gY29udGFpbiB0aGUgdG9wLW1hcmdpbnMgb2YgY2hpbGQgZWxlbWVudHMuXG4vL1xuLy8gU291cmNlOiBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay9cblxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7IC8vIDFcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gMlxuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG4iLCIvLyBDZW50ZXItYWxpZ24gYSBibG9jayBsZXZlbCBlbGVtZW50XG5cbkBtaXhpbiBjZW50ZXItYmxvY2soKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuIiwiLy8gTmF2YmFyIHZlcnRpY2FsIGFsaWduXG4vL1xuLy8gVmVydGljYWxseSBjZW50ZXIgZWxlbWVudHMgaW4gdGhlIG5hdmJhci5cbi8vIEV4YW1wbGU6IGFuIGVsZW1lbnQgaGFzIGEgaGVpZ2h0IG9mIDMwcHgsIHNvIHdyaXRlIG91dCBgLm5hdmJhci12ZXJ0aWNhbC1hbGlnbigzMHB4KTtgIHRvIGNhbGN1bGF0ZSB0aGUgYXBwcm9wcmlhdGUgdG9wIG1hcmdpbi5cblxuQG1peGluIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkZWxlbWVudC1oZWlnaHQpIHtcbiAgbWFyZ2luLXRvcDogKCgkbmF2YmFyLWhlaWdodCAtICRlbGVtZW50LWhlaWdodCkgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogKCgkbmF2YmFyLWhlaWdodCAtICRlbGVtZW50LWhlaWdodCkgLyAyKTtcbn1cbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgZGVmaW5lZCByZWN1cnNpdmVseSBpbiBMRVNTLCBidXQgU2FzcyBzdXBwb3J0cyByZWFsIGxvb3BzXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGk6IDEsICRsaXN0OiBcIi5jb2wteHMtI3skaX0sIC5jb2wtc20tI3skaX0sIC5jb2wtbWQtI3skaX0sIC5jb2wtbGctI3skaX1cIikge1xuICBAZm9yICRpIGZyb20gKDEgKyAxKSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICRsaXN0OiBcIiN7JGxpc3R9LCAuY29sLXhzLSN7JGl9LCAuY29sLXNtLSN7JGl9LCAuY29sLW1kLSN7JGl9LCAuY29sLWxnLSN7JGl9XCI7XG4gIH1cbiAgI3skbGlzdH0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBjb2xsYXBzaW5nIHdoZW4gZW1wdHlcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgLy8gSW5uZXIgZ3V0dGVyIHZpYSBwYWRkaW5nXG4gICAgcGFkZGluZy1sZWZ0OiAgY2VpbCgoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpO1xuICAgIHBhZGRpbmctcmlnaHQ6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gIH1cbn1cblxuXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xuQG1peGluIGZsb2F0LWdyaWQtY29sdW1ucygkY2xhc3MsICRpOiAxLCAkbGlzdDogXCIuY29sLSN7JGNsYXNzfS0jeyRpfVwiKSB7XG4gIEBmb3IgJGkgZnJvbSAoMSArIDEpIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgJGxpc3Q6IFwiI3skbGlzdH0sIC5jb2wtI3skY2xhc3N9LSN7JGl9XCI7XG4gIH1cbiAgI3skbGlzdH0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cblxuQG1peGluIGNhbGMtZ3JpZC1jb2x1bW4oJGluZGV4LCAkY2xhc3MsICR0eXBlKSB7XG4gIEBpZiAoJHR5cGUgPT0gd2lkdGgpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LSN7JGluZGV4fSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1c2gpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LXB1c2gtI3skaW5kZXh9IHtcbiAgICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdXNoKSBhbmQgKCRpbmRleCA9PSAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVzaC0wIHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVsbCkgYW5kICgkaW5kZXggPiAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0jeyRpbmRleH0ge1xuICAgICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdWxsKSBhbmQgKCRpbmRleCA9PSAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0wIHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IG9mZnNldCkge1xuICAgIC5jb2wtI3skY2xhc3N9LW9mZnNldC0jeyRpbmRleH0ge1xuICAgICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGluIExFU1MsIGJ1dCBTYXNzIHN1cHBvcnRzIHJlYWwgbG9vcHNcbkBtaXhpbiBsb29wLWdyaWQtY29sdW1ucygkY29sdW1ucywgJGNsYXNzLCAkdHlwZSkge1xuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICBAaW5jbHVkZSBjYWxjLWdyaWQtY29sdW1uKCRpLCAkY2xhc3MsICR0eXBlKTtcbiAgfVxufVxuXG5cbi8vIENyZWF0ZSBncmlkIGZvciBzcGVjaWZpYyBjbGFzc1xuQG1peGluIG1ha2UtZ3JpZCgkY2xhc3MpIHtcbiAgQGluY2x1ZGUgZmxvYXQtZ3JpZC1jb2x1bW5zKCRjbGFzcyk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgd2lkdGgpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHB1bGwpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHB1c2gpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIG9mZnNldCk7XG59XG4iLCIvLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuLy8gQ2VudGVyZWQgY29udGFpbmVyIGVsZW1lbnRcbkBtaXhpbiBjb250YWluZXItZml4ZWQoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogIGZsb29yKCgkZ3V0dGVyIC8gMikpO1xuICBwYWRkaW5nLXJpZ2h0OiBjZWlsKCgkZ3V0dGVyIC8gMikpO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLy8gQ3JlYXRlcyBhIHdyYXBwZXIgZm9yIGEgc2VyaWVzIG9mIGNvbHVtbnNcbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgbWFyZ2luLWxlZnQ6ICBjZWlsKCgkZ3V0dGVyIC8gLTIpKTtcbiAgbWFyZ2luLXJpZ2h0OiBmbG9vcigoJGd1dHRlciAvIC0yKSk7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4vLyBHZW5lcmF0ZSB0aGUgZXh0cmEgc21hbGwgY29sdW1uc1xuQG1peGluIG1ha2UteHMtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG59XG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbn1cbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuQG1peGluIG1ha2UteHMtY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuXG4vLyBHZW5lcmF0ZSB0aGUgc21hbGwgY29sdW1uc1xuQG1peGluIG1ha2Utc20tY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2Utc20tY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuXG4vLyBHZW5lcmF0ZSB0aGUgbWVkaXVtIGNvbHVtbnNcbkBtaXhpbiBtYWtlLW1kLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbWQtY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cblxuLy8gR2VuZXJhdGUgdGhlIGxhcmdlIGNvbHVtbnNcbkBtaXhpbiBtYWtlLWxnLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbGctY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbiIsIi8qISBub3JtYWxpemUuY3NzIHYzLjAuMyB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLy9cbi8vIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXG4vLyAyLiBQcmV2ZW50IGlPUyBhbmQgSUUgdGV4dCBzaXplIGFkanVzdCBhZnRlciBkZXZpY2Ugb3JpZW50YXRpb24gY2hhbmdlLFxuLy8gICAgd2l0aG91dCBkaXNhYmxpbmcgdXNlciB6b29tLlxuLy9cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAxXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gMlxufVxuXG4vL1xuLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuLy9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLy8gSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxuLy8gYW5kIEZpcmVmb3guXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuLy9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuLy8gMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuLy9cblxuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyAxXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gMlxufVxuXG4vL1xuLy8gUHJldmVudCBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cbi8vIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4vL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXG4vLyBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXG4vL1xuXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gTGlua3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbi8vXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLy9cbi8vIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cbi8vIGFjdGl2ZS9ob3ZlciBzdGF0ZS5cbi8vXG5cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuLy9cblxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vL1xuLy8gQWRkcmVzcyB2YXJpYWJsZSBgaDFgIGZvbnQtc2l6ZSBhbmQgbWFyZ2luIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYFxuLy8gY29udGV4dHMgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLy9cbi8vIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4vL1xuXG5tYXJrIHtcbiAgYmFja2dyb3VuZDogI2ZmMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbi8vXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG4vLyBFbWJlZGRlZCBjb250ZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXG4vL1xuXG5pbWcge1xuICBib3JkZXI6IDA7XG59XG5cbi8vXG4vLyBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cbi8vXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8gR3JvdXBpbmcgY29udGVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpLlxuLy9cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cbi8vXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDtcbn1cblxuLy9cbi8vIENvbnRhaW4gb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8vXG4vLyBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi8vIEZvcm1zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcbi8vIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cbi8vXG5cbi8vXG4vLyAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4vLyAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cbi8vIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4vLyAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbi8vXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiBpbmhlcml0OyAvLyAxXG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgbWFyZ2luOiAwOyAvLyAzXG59XG5cbi8vXG4vLyBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cbi8vXG5cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuLy8gQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbi8vIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXG4vLyBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXG4vL1xuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLy9cbi8vIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4vLyAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cbi8vIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbi8vIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4vLyAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXG4vL1xuXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sIC8vIDFcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxuICBjdXJzb3I6IHBvaW50ZXI7IC8vIDNcbn1cblxuLy9cbi8vIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXG4vL1xuXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8vXG4vLyBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXG4vL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgRmlyZWZveCA0KyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cbi8vIHRoZSBVQSBzdHlsZXNoZWV0LlxuLy9cblxuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vL1xuLy8gSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxuLy8gRmlyZWZveCdzIGltcGxlbWVudGF0aW9uIGRvZXNuJ3QgcmVzcGVjdCBib3gtc2l6aW5nLCBwYWRkaW5nLCBvciB3aWR0aC5cbi8vXG4vLyAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxuLy8gMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cbi8vXG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgcGFkZGluZzogMDsgLy8gMlxufVxuXG4vL1xuLy8gRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cbi8vIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4vLyBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXG4vL1xuXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy9cbi8vIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuLy8gMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbi8vXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8yXG59XG5cbi8vXG4vLyBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cbi8vIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbi8vIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cbi8vXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuLy9cblxuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXG4vLyAyLiBSZW1vdmUgcGFkZGluZyBzbyBwZW9wbGUgYXJlbid0IGNhdWdodCBvdXQgaWYgdGhleSB6ZXJvIG91dCBmaWVsZHNldHMuXG4vL1xuXG5sZWdlbmQge1xuICBib3JkZXI6IDA7IC8vIDFcbiAgcGFkZGluZzogMDsgLy8gMlxufVxuXG4vL1xuLy8gUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cbi8vXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8vXG4vLyBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXG4vLyBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbi8vXG5cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8vIFRhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbi8vXG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbnRkLFxudGgge1xuICBwYWRkaW5nOiAwO1xufVxuIiwiLy9cbi8vIEdyaWQgc3lzdGVtXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbi5jb250YWluZXIge1xuICBAaW5jbHVkZSBjb250YWluZXItZml4ZWQ7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgd2lkdGg6ICRjb250YWluZXItc207XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgd2lkdGg6ICRjb250YWluZXItbWQ7XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgd2lkdGg6ICRjb250YWluZXItbGc7XG4gIH1cbn1cblxuXG4vLyBGbHVpZCBjb250YWluZXJcbi8vXG4vLyBVdGlsaXplcyB0aGUgbWl4aW4gbWVhbnQgZm9yIGZpeGVkIHdpZHRoIGNvbnRhaW5lcnMsIGJ1dCB3aXRob3V0IGFueSBkZWZpbmVkXG4vLyB3aWR0aCBmb3IgZmx1aWQsIGZ1bGwgd2lkdGggbGF5b3V0cy5cblxuLmNvbnRhaW5lci1mbHVpZCB7XG4gIEBpbmNsdWRlIGNvbnRhaW5lci1maXhlZDtcbn1cblxuXG4vLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4gYW5kIGNsZWFyIHRoZSBmbG9hdHMgb2YgeW91ciBjb2x1bW5zLlxuXG4ucm93IHtcbiAgQGluY2x1ZGUgbWFrZS1yb3c7XG59XG5cblxuLy8gQ29sdW1uc1xuLy9cbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcblxuQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnM7XG5cblxuLy8gRXh0cmEgc21hbGwgZ3JpZFxuLy9cbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciBleHRyYSBzbWFsbCBkZXZpY2VzIGxpa2Vcbi8vIHNtYXJ0cGhvbmVzLlxuXG5AaW5jbHVkZSBtYWtlLWdyaWQoeHMpO1xuXG5cbi8vIFNtYWxsIGdyaWRcbi8vXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgdGhlIHNtYWxsIGRldmljZSByYW5nZSwgZnJvbSBwaG9uZXNcbi8vIHRvIHRhYmxldHMuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQoc20pO1xufVxuXG5cbi8vIE1lZGl1bSBncmlkXG4vL1xuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIHRoZSBkZXNrdG9wIGRldmljZSByYW5nZS5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZChtZCk7XG59XG5cblxuLy8gTGFyZ2UgZ3JpZFxuLy9cbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciB0aGUgbGFyZ2UgZGVza3RvcCBkZXZpY2UgcmFuZ2UuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQobGcpO1xufVxuIiwiLy9cbi8vIEZvcm1zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIE5vcm1hbGl6ZSBub24tY29udHJvbHNcbi8vXG4vLyBSZXN0eWxlIGFuZCBiYXNlbGluZSBub24tY29udHJvbCBmb3JtIGVsZW1lbnRzLlxuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xuICAvLyBDaHJvbWUgYW5kIEZpcmVmb3ggc2V0IGEgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXG4gIC8vIHNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGl0IGJlaGF2ZXMgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTkuXG4gIG1pbi13aWR0aDogMDtcbn1cblxubGVnZW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNSk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogJGxlZ2VuZC1jb2xvcjtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxlZ2VuZC1ib3JkZXItY29sb3I7XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIEZvcmNlIElFOCB0byB3cmFwIGxvbmcgY29udGVudCAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTMxNDEpXG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cblxuLy8gTm9ybWFsaXplIGZvcm0gY29udHJvbHNcbi8vXG4vLyBXaGlsZSBtb3N0IG9mIG91ciBmb3JtIHN0eWxlcyByZXF1aXJlIGV4dHJhIGNsYXNzZXMsIHNvbWUgYmFzaWMgbm9ybWFsaXphdGlvblxuLy8gaXMgcmVxdWlyZWQgdG8gZW5zdXJlIG9wdGltdW0gZGlzcGxheSB3aXRoIG9yIHdpdGhvdXQgdGhvc2UgY2xhc3NlcyB0byBiZXR0ZXJcbi8vIGFkZHJlc3MgYnJvd3NlciBpbmNvbnNpc3RlbmNpZXMuXG5cbi8vIE92ZXJyaWRlIGNvbnRlbnQtYm94IGluIE5vcm1hbGl6ZSAoKiBpc24ndCBzcGVjaWZpYyBlbm91Z2gpXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcbn1cblxuLy8gUG9zaXRpb24gcmFkaW9zIGFuZCBjaGVja2JveGVzIGJldHRlclxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgbWFyZ2luOiA0cHggMCAwO1xuICBtYXJnaW4tdG9wOiAxcHggXFw5OyAvLyBJRTgtOVxuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG5pbnB1dFt0eXBlPVwiZmlsZVwiXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBNYWtlIHJhbmdlIGlucHV0cyBiZWhhdmUgbGlrZSB0ZXh0dWFsIGZvcm0gY29udHJvbHNcbmlucHV0W3R5cGU9XCJyYW5nZVwiXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLy8gTWFrZSBtdWx0aXBsZSBzZWxlY3QgZWxlbWVudHMgaGVpZ2h0IG5vdCBmaXhlZFxuc2VsZWN0W211bHRpcGxlXSxcbnNlbGVjdFtzaXplXSB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy8gRm9jdXMgZm9yIGZpbGUsIHJhZGlvLCBhbmQgY2hlY2tib3hcbmlucHV0W3R5cGU9XCJmaWxlXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZvY3VzIHtcbiAgQGluY2x1ZGUgdGFiLWZvY3VzO1xufVxuXG4vLyBBZGp1c3Qgb3V0cHV0IGVsZW1lbnRcbm91dHB1dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbn1cblxuXG4vLyBDb21tb24gZm9ybSBjb250cm9sc1xuLy9cbi8vIFNoYXJlZCBzaXplIGFuZCB0eXBlIHJlc2V0cyBmb3IgZm9ybSBjb250cm9scy4gQXBwbHkgYC5mb3JtLWNvbnRyb2xgIHRvIGFueVxuLy8gb2YgdGhlIGZvbGxvd2luZyBmb3JtIGNvbnRyb2xzOlxuLy9cbi8vIHNlbGVjdFxuLy8gdGV4dGFyZWFcbi8vIGlucHV0W3R5cGU9XCJ0ZXh0XCJdXG4vLyBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl1cbi8vIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXVxuLy8gaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdXG4vLyBpbnB1dFt0eXBlPVwiZGF0ZVwiXVxuLy8gaW5wdXRbdHlwZT1cIm1vbnRoXCJdXG4vLyBpbnB1dFt0eXBlPVwidGltZVwiXVxuLy8gaW5wdXRbdHlwZT1cIndlZWtcIl1cbi8vIGlucHV0W3R5cGU9XCJudW1iZXJcIl1cbi8vIGlucHV0W3R5cGU9XCJlbWFpbFwiXVxuLy8gaW5wdXRbdHlwZT1cInVybFwiXVxuLy8gaW5wdXRbdHlwZT1cInNlYXJjaFwiXVxuLy8gaW5wdXRbdHlwZT1cInRlbFwiXVxuLy8gaW5wdXRbdHlwZT1cImNvbG9yXCJdXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlOyAvLyBNYWtlIGlucHV0cyBhdCBsZWFzdCB0aGUgaGVpZ2h0IG9mIHRoZWlyIGJ1dHRvbiBjb3VudGVycGFydCAoYmFzZSBsaW5lLWhlaWdodCArIHBhZGRpbmcgKyBib3JkZXIpXG4gIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTRcbiAgYm9yZGVyOiAxcHggc29saWQgJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXM7IC8vIE5vdGU6IFRoaXMgaGFzIG5vIGVmZmVjdCBvbiA8c2VsZWN0PnMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIDxzZWxlY3Q+cyBpbiBDU1MuXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSkpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJvcmRlci1jb2xvciBlYXNlLWluLW91dCAuMTVzLCBib3gtc2hhZG93IGVhc2UtaW4tb3V0IC4xNXMpO1xuXG4gIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1c2Agc3RhdGUgdG8gaW1pdGF0ZSBuYXRpdmUgV2ViS2l0IHN0eWxlcy5cbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLWZvY3VzO1xuXG4gIC8vIFBsYWNlaG9sZGVyXG4gIEBpbmNsdWRlIHBsYWNlaG9sZGVyO1xuXG4gIC8vIFVuc3R5bGUgdGhlIGNhcmV0IG9uIGA8c2VsZWN0PmBzIGluIElFMTArLlxuICAmOjotbXMtZXhwYW5kIHtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICZbZGlzYWJsZWRdLFxuICAmW3JlYWRvbmx5XSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZy1kaXNhYmxlZDtcbiAgICBvcGFjaXR5OiAxOyAvLyBpT1MgZml4IGZvciB1bnJlYWRhYmxlIGRpc2FibGVkIGNvbnRlbnQ7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjU1XG4gIH1cblxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgfVxuXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCB0ZXh0YXJlYSYgdG8gdGV4dGFyZWEuZm9ybS1jb250cm9sXG59XG5cbi8vIFJlc2V0IGhlaWdodCBmb3IgYHRleHRhcmVhYHNcbnRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuXG4vLyBTZWFyY2ggaW5wdXRzIGluIGlPU1xuLy9cbi8vIFRoaXMgb3ZlcnJpZGVzIHRoZSBleHRyYSByb3VuZGVkIGNvcm5lcnMgb24gc2VhcmNoIGlucHV0cyBpbiBpT1Mgc28gdGhhdCBvdXJcbi8vIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxuLy8gYmUgYWRkZWQgdG8gYC5mb3JtLWNvbnRyb2xgIGFzIGl0J3Mgbm90IHNwZWNpZmljIGVub3VnaC4gRm9yIGRldGFpbHMsIHNlZVxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU4Ni5cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuXG4vLyBTcGVjaWFsIHN0eWxlcyBmb3IgaU9TIHRlbXBvcmFsIGlucHV0c1xuLy9cbi8vIEluIE1vYmlsZSBTYWZhcmksIHNldHRpbmcgYGRpc3BsYXk6IGJsb2NrYCBvbiB0ZW1wb3JhbCBpbnB1dHMgY2F1c2VzIHRoZVxuLy8gdGV4dCB3aXRoaW4gdGhlIGlucHV0IHRvIGJlY29tZSB2ZXJ0aWNhbGx5IG1pc2FsaWduZWQuIEFzIGEgd29ya2Fyb3VuZCwgd2Vcbi8vIHNldCBhIHBpeGVsIGxpbmUtaGVpZ2h0IHRoYXQgbWF0Y2hlcyB0aGUgZ2l2ZW4gaGVpZ2h0IG9mIHRoZSBpbnB1dCwgYnV0IG9ubHlcbi8vIGZvciBTYWZhcmkuIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5ODQ4XG4vL1xuLy8gTm90ZSB0aGF0IGFzIG9mIDkuMywgaU9TIGRvZXNuJ3Qgc3VwcG9ydCBgd2Vla2AuXG5cbkBtZWRpYSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDApIHtcbiAgaW5wdXRbdHlwZT1cImRhdGVcIl0sXG4gIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4gIGlucHV0W3R5cGU9XCJtb250aFwiXSB7XG4gICAgJi5mb3JtLWNvbnRyb2wge1xuICAgICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtYmFzZTtcbiAgICB9XG5cbiAgICAmLmlucHV0LXNtLFxuICAgIC5pbnB1dC1ncm91cC1zbSAmIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICAgIH1cblxuICAgICYuaW5wdXQtbGcsXG4gICAgLmlucHV0LWdyb3VwLWxnICYge1xuICAgICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG4gICAgfVxuICB9XG59XG5cblxuLy8gRm9ybSBncm91cHNcbi8vXG4vLyBEZXNpZ25lZCB0byBoZWxwIHdpdGggdGhlIG9yZ2FuaXphdGlvbiBhbmQgc3BhY2luZyBvZiB2ZXJ0aWNhbCBmb3Jtcy4gRm9yXG4vLyBob3Jpem9udGFsIGZvcm1zLCB1c2UgdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLlxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b207XG59XG5cblxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG4vL1xuLy8gSW5kZW50IHRoZSBsYWJlbHMgdG8gcG9zaXRpb24gcmFkaW9zL2NoZWNrYm94ZXMgYXMgaGFuZ2luZyBjb250cm9scy5cblxuLnJhZGlvLFxuLmNoZWNrYm94IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICBsYWJlbCB7XG4gICAgbWluLWhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkOyAvLyBFbnN1cmUgdGhlIGlucHV0IGRvZXNuJ3QganVtcCB3aGVuIHRoZXJlIGlzIG5vIHRleHRcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuLnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbi5yYWRpby1pbmxpbmUgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbi5jaGVja2JveC1pbmxpbmUgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gIG1hcmdpbi10b3A6IDRweCBcXDk7XG59XG5cbi5yYWRpbyArIC5yYWRpbyxcbi5jaGVja2JveCArIC5jaGVja2JveCB7XG4gIG1hcmdpbi10b3A6IC01cHg7IC8vIE1vdmUgdXAgc2libGluZyByYWRpb3Mgb3IgY2hlY2tib3hlcyBmb3IgdGlnaHRlciBzcGFjaW5nXG59XG5cbi8vIFJhZGlvcyBhbmQgY2hlY2tib3hlcyBvbiBzYW1lIGxpbmVcbi5yYWRpby1pbmxpbmUsXG4uY2hlY2tib3gtaW5saW5lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnJhZGlvLWlubGluZSArIC5yYWRpby1pbmxpbmUsXG4uY2hlY2tib3gtaW5saW5lICsgLmNoZWNrYm94LWlubGluZSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4OyAvLyBzcGFjZSBvdXQgY29uc2VjdXRpdmUgaW5saW5lIGNvbnRyb2xzXG59XG5cbi8vIEFwcGx5IHNhbWUgZGlzYWJsZWQgY3Vyc29yIHR3ZWFrIGFzIGZvciBpbnB1dHNcbi8vIFNvbWUgc3BlY2lhbCBjYXJlIGlzIG5lZWRlZCBiZWNhdXNlIDxsYWJlbD5zIGRvbid0IGluaGVyaXQgdGhlaXIgcGFyZW50J3MgYGN1cnNvcmAuXG4vL1xuLy8gTm90ZTogTmVpdGhlciByYWRpb3Mgbm9yIGNoZWNrYm94ZXMgY2FuIGJlIHJlYWRvbmx5LlxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgJltkaXNhYmxlZF0sXG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gIH1cbn1cbi8vIFRoZXNlIGNsYXNzZXMgYXJlIHVzZWQgZGlyZWN0bHkgb24gPGxhYmVsPnNcbi5yYWRpby1pbmxpbmUsXG4uY2hlY2tib3gtaW5saW5lIHtcbiAgJi5kaXNhYmxlZCxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgfVxufVxuLy8gVGhlc2UgY2xhc3NlcyBhcmUgdXNlZCBvbiBlbGVtZW50cyB3aXRoIDxsYWJlbD4gZGVzY2VuZGFudHNcbi5yYWRpbyxcbi5jaGVja2JveCB7XG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBsYWJlbCB7XG4gICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8gU3RhdGljIGZvcm0gY29udHJvbCB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSBgcGAgZWxlbWVudCB0byBtYWtlIGFueSBzdHJpbmcgb2YgdGV4dCBhbGlnbiB3aXRoIGxhYmVscyBpblxuLy8gYSBob3Jpem9udGFsIGZvcm0gbGF5b3V0LlxuXG4uZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gIC8vIFNpemUgaXQgYXBwcm9wcmlhdGVseSBuZXh0IHRvIHJlYWwgZm9ybSBjb250cm9sc1xuICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTtcbiAgcGFkZGluZy1ib3R0b206ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7XG4gIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBmcm9tIGBwYFxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJGZvbnQtc2l6ZS1iYXNlKTtcblxuICAmLmlucHV0LWxnLFxuICAmLmlucHV0LXNtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBUaGUgYC5mb3JtLWdyb3VwLSogZm9ybS1jb250cm9sYCB2YXJpYXRpb25zIGFyZSBzYWRseSBkdXBsaWNhdGVkIHRvIGF2b2lkIHRoZVxuLy8gaXNzdWUgZG9jdW1lbnRlZCBpbiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE1MDc0LlxuXG5AaW5jbHVkZSBpbnB1dC1zaXplKCcuaW5wdXQtc20nLCAkaW5wdXQtaGVpZ2h0LXNtYWxsLCAkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG4uZm9ybS1ncm91cC1zbSB7XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXNtYWxsO1xuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsO1xuICB9XG4gIHNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgfVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXG4gIHNlbGVjdFttdWx0aXBsZV0uZm9ybS1jb250cm9sIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJGZvbnQtc2l6ZS1zbWFsbCk7XG4gICAgcGFkZGluZzogKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICsgMSkgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1zbWFsbDtcbiAgfVxufVxuXG5AaW5jbHVkZSBpbnB1dC1zaXplKCcuaW5wdXQtbGcnLCAkaW5wdXQtaGVpZ2h0LWxhcmdlLCAkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1sYXJnZSwgJGxpbmUtaGVpZ2h0LWxhcmdlLCAkaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZSk7XG4uZm9ybS1ncm91cC1sZyB7XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWxhcmdlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlO1xuICB9XG4gIHNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgfVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXG4gIHNlbGVjdFttdWx0aXBsZV0uZm9ybS1jb250cm9sIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJGZvbnQtc2l6ZS1sYXJnZSk7XG4gICAgcGFkZGluZzogKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICsgMSkgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1sYXJnZTtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBmZWVkYmFjayBzdGF0ZXNcbi8vXG4vLyBBcHBseSBjb250ZXh0dWFsIGFuZCBzZW1hbnRpYyBzdGF0ZXMgdG8gaW5kaXZpZHVhbCBmb3JtIGNvbnRyb2xzLlxuXG4uaGFzLWZlZWRiYWNrIHtcbiAgLy8gRW5hYmxlIGFic29sdXRlIHBvc2l0aW9uaW5nXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAvLyBFbnN1cmUgaWNvbnMgZG9uJ3Qgb3ZlcmxhcCB0ZXh0XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIHBhZGRpbmctcmlnaHQ6ICgkaW5wdXQtaGVpZ2h0LWJhc2UgKiAxLjI1KTtcbiAgfVxufVxuLy8gRmVlZGJhY2sgaWNvbiAocmVxdWlyZXMgLmdseXBoaWNvbiBjbGFzc2VzKVxuLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMjsgLy8gRW5zdXJlIGljb24gaXMgYWJvdmUgaW5wdXQgZ3JvdXBzXG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogJGlucHV0LWhlaWdodC1iYXNlO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5pbnB1dC1sZyArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uaW5wdXQtZ3JvdXAtbGcgKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxuLmZvcm0tZ3JvdXAtbGcgLmZvcm0tY29udHJvbCArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICB3aWR0aDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbn1cbi5pbnB1dC1zbSArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uaW5wdXQtZ3JvdXAtc20gKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxuLmZvcm0tZ3JvdXAtc20gLmZvcm0tY29udHJvbCArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICB3aWR0aDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbn1cblxuLy8gRmVlZGJhY2sgc3RhdGVzXG4uaGFzLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkc3RhdGUtc3VjY2Vzcy10ZXh0LCAkc3RhdGUtc3VjY2Vzcy10ZXh0LCAkc3RhdGUtc3VjY2Vzcy1iZyk7XG59XG4uaGFzLXdhcm5pbmcge1xuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkc3RhdGUtd2FybmluZy10ZXh0LCAkc3RhdGUtd2FybmluZy10ZXh0LCAkc3RhdGUtd2FybmluZy1iZyk7XG59XG4uaGFzLWVycm9yIHtcbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHN0YXRlLWRhbmdlci10ZXh0LCAkc3RhdGUtZGFuZ2VyLXRleHQsICRzdGF0ZS1kYW5nZXItYmcpO1xufVxuXG4vLyBSZXBvc2l0aW9uIGZlZWRiYWNrIGljb24gaWYgaW5wdXQgaGFzIHZpc2libGUgbGFiZWwgYWJvdmVcbi5oYXMtZmVlZGJhY2sgbGFiZWwge1xuXG4gICYgfiAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICB0b3A6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyA1KTsgLy8gSGVpZ2h0IG9mIHRoZSBgbGFiZWxgIGFuZCBpdHMgbWFyZ2luXG4gIH1cbiAgJi5zci1vbmx5IH4gLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgdG9wOiAwO1xuICB9XG59XG5cblxuLy8gSGVscCB0ZXh0XG4vL1xuLy8gQXBwbHkgdG8gYW55IGVsZW1lbnQgeW91IHdpc2ggdG8gY3JlYXRlIGxpZ2h0IHRleHQgZm9yIHBsYWNlbWVudCBpbW1lZGlhdGVseVxuLy8gYmVsb3cgYSBmb3JtIGNvbnRyb2wuIFVzZSBmb3IgZ2VuZXJhbCBoZWxwLCBmb3JtYXR0aW5nLCBvciBpbnN0cnVjdGlvbmFsIHRleHQuXG5cbi5oZWxwLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7IC8vIGFjY291bnQgZm9yIGFueSBlbGVtZW50IHVzaW5nIGhlbHAtYmxvY2tcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBjb2xvcjogbGlnaHRlbigkdGV4dC1jb2xvciwgMjUlKTsgLy8gbGlnaHRlbiB0aGUgdGV4dCBzb21lIGZvciBjb250cmFzdFxufVxuXG5cbi8vIElubGluZSBmb3Jtc1xuLy9cbi8vIE1ha2UgZm9ybXMgYXBwZWFyIGlubGluZSgtYmxvY2spIGJ5IGFkZGluZyB0aGUgYC5mb3JtLWlubGluZWAgY2xhc3MuIElubGluZVxuLy8gZm9ybXMgYmVnaW4gc3RhY2tlZCBvbiBleHRyYSBzbWFsbCAobW9iaWxlKSBkZXZpY2VzIGFuZCB0aGVuIGdvIGlubGluZSB3aGVuXG4vLyB2aWV3cG9ydHMgcmVhY2ggPDc2OHB4LlxuLy9cbi8vIFJlcXVpcmVzIHdyYXBwaW5nIGlucHV0cyBhbmQgbGFiZWxzIHdpdGggYC5mb3JtLWdyb3VwYCBmb3IgcHJvcGVyIGRpc3BsYXkgb2Zcbi8vIGRlZmF1bHQgSFRNTCBmb3JtIGNvbnRyb2xzIGFuZCBvdXIgY3VzdG9tIGZvcm0gY29udHJvbHMgKGUuZy4sIGlucHV0IGdyb3VwcykuXG4vL1xuLy8gSGVhZHMgdXAhIFRoaXMgaXMgbWl4aW4tZWQgaW50byBgLm5hdmJhci1mb3JtYCBpbiBuYXZiYXJzLmxlc3MuXG5cbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBmcm9tIGAuZm9ybS1pbmxpbmVgIGZvciBsaWJzYXNzIGNvbXBhdGliaWxpdHlcbkBtaXhpbiBmb3JtLWlubGluZSB7XG5cbiAgLy8gS2ljayBpbiB0aGUgaW5saW5lXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIC8vIElubGluZS1ibG9jayBhbGwgdGhlIHRoaW5ncyBmb3IgXCJpbmxpbmVcIlxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIEluIG5hdmJhci1mb3JtLCBhbGxvdyBmb2xrcyB0byAqbm90KiB1c2UgYC5mb3JtLWdyb3VwYFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87IC8vIFByZXZlbnQgbGFiZWxzIGZyb20gc3RhY2tpbmcgYWJvdmUgaW5wdXRzIGluIGAuZm9ybS1ncm91cGBcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdGF0aWMgY29udHJvbHMgYmVoYXZlIGxpa2UgcmVndWxhciBvbmVzXG4gICAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtdGFibGU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAuaW5wdXQtZ3JvdXAtYWRkb24sXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuLFxuICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIElucHV0IGdyb3VwcyBuZWVkIHRoYXQgMTAwJSB3aWR0aCB0aG91Z2hcbiAgICAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBvbiByYWRpb3MvY2hlY2tib3hlcyB0aGF0IHdlcmUgdXNlZCBmb3Igc3RhY2tpbmcsIGFuZFxuICAgIC8vIHRoZW4gdW5kbyB0aGUgZmxvYXRpbmcgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzIHRvIG1hdGNoLlxuICAgIC5yYWRpbyxcbiAgICAuY2hlY2tib3gge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICAuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC8vIFJlLW92ZXJyaWRlIHRoZSBmZWVkYmFjayBpY29uLlxuICAgIC5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuICB9XG59XG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYXMgYEBtaXhpbiBmb3JtLWlubGluZWAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxuLmZvcm0taW5saW5lIHtcbiAgQGluY2x1ZGUgZm9ybS1pbmxpbmU7XG59XG5cblxuXG4vLyBIb3Jpem9udGFsIGZvcm1zXG4vL1xuLy8gSG9yaXpvbnRhbCBmb3JtcyBhcmUgYnVpbHQgb24gZ3JpZCBjbGFzc2VzIGFuZCBhbGxvdyB5b3UgdG8gY3JlYXRlIGZvcm1zIHdpdGhcbi8vIGxhYmVscyBvbiB0aGUgbGVmdCBhbmQgaW5wdXRzIG9uIHRoZSByaWdodC5cblxuLmZvcm0taG9yaXpvbnRhbCB7XG5cbiAgLy8gQ29uc2lzdGVudCB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzXG4gIC8vXG4gIC8vIExhYmVscyBhbHNvIGdldCBzb21lIHJlc2V0IHN0eWxlcywgYnV0IHRoYXQgaXMgc2NvcGVkIHRvIGEgbWVkaWEgcXVlcnkgYmVsb3cuXG4gIC5yYWRpbyxcbiAgLmNoZWNrYm94LFxuICAucmFkaW8taW5saW5lLFxuICAuY2hlY2tib3gtaW5saW5lIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7IC8vIERlZmF1bHQgcGFkZGluZyBwbHVzIGEgYm9yZGVyXG4gIH1cbiAgLy8gQWNjb3VudCBmb3IgcGFkZGluZyB3ZSdyZSBhZGRpbmcgdG8gZW5zdXJlIHRoZSBhbGlnbm1lbnQgYW5kIG9mIGhlbHAgdGV4dFxuICAvLyBhbmQgb3RoZXIgY29udGVudCBiZWxvdyBpdGVtc1xuICAucmFkaW8sXG4gIC5jaGVja2JveCB7XG4gICAgbWluLWhlaWdodDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSkpO1xuICB9XG5cbiAgLy8gTWFrZSBmb3JtIGdyb3VwcyBiZWhhdmUgbGlrZSByb3dzXG4gIC5mb3JtLWdyb3VwIHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdztcbiAgfVxuXG4gIC8vIFJlc2V0IHNwYWNpbmcgYW5kIHJpZ2h0IGFsaWduIGxhYmVscywgYnV0IHNjb3BlIHRvIG1lZGlhIHF1ZXJpZXMgc28gdGhhdFxuICAvLyBsYWJlbHMgb24gbmFycm93IHZpZXdwb3J0cyBzdGFjayB0aGUgc2FtZSBhcyBhIGRlZmF1bHQgZm9ybSBleGFtcGxlLlxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAuY29udHJvbC1sYWJlbCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTsgLy8gRGVmYXVsdCBwYWRkaW5nIHBsdXMgYSBib3JkZXJcbiAgICB9XG4gIH1cblxuICAvLyBWYWxpZGF0aW9uIHN0YXRlc1xuICAvL1xuICAvLyBSZXBvc2l0aW9uIHRoZSBpY29uIGJlY2F1c2UgaXQncyBub3cgd2l0aGluIGEgZ3JpZCBjb2x1bW4gYW5kIGNvbHVtbnMgaGF2ZVxuICAvLyBgcG9zaXRpb246IHJlbGF0aXZlO2Agb24gdGhlbS4gQWxzbyBhY2NvdW50cyBmb3IgdGhlIGdyaWQgZ3V0dGVyIHBhZGRpbmcuXG4gIC5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgcmlnaHQ6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gIH1cblxuICAvLyBGb3JtIGdyb3VwIHNpemVzXG4gIC8vXG4gIC8vIFF1aWNrIHV0aWxpdHkgY2xhc3MgZm9yIGFwcGx5aW5nIGAuaW5wdXQtbGdgIGFuZCBgLmlucHV0LXNtYCBzdHlsZXMgdG8gdGhlXG4gIC8vIGlucHV0cyBhbmQgbGFiZWxzIHdpdGhpbiBhIGAuZm9ybS1ncm91cGAuXG4gIC5mb3JtLWdyb3VwLWxnIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCArIDEpO1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5mb3JtLWdyb3VwLXNtIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCArIDEpO1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQnV0dG9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIHN0eWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gRm9yIGlucHV0LmJ0blxuICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZXNldCB1bnVzdWFsIEZpcmVmb3gtb24tQW5kcm9pZCBkZWZhdWx0IHN0eWxlOyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcy9pc3N1ZXMvMjE0XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZy1iYXNlLXZlcnRpY2FsLCAkcGFkZGluZy1iYXNlLWhvcml6b250YWwsICRmb250LXNpemUtYmFzZSwgJGxpbmUtaGVpZ2h0LWJhc2UsICRidG4tYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgQGluY2x1ZGUgdXNlci1zZWxlY3Qobm9uZSk7XG5cbiAgJixcbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgQGluY2x1ZGUgdGFiLWZvY3VzO1xuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGNvbG9yOiAkYnRuLWRlZmF1bHQtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDNweCA1cHggcmdiYSgwLDAsMCwuMTI1KSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICBAaW5jbHVkZSBvcGFjaXR5KC42NSk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxuXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJiB0byBhLmJ0blxufVxuXG5hLmJ0biB7XG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcbiAgfVxufVxuXG5cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuLWRlZmF1bHQge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWRlZmF1bHQtY29sb3IsICRidG4tZGVmYXVsdC1iZywgJGJ0bi1kZWZhdWx0LWJvcmRlcik7XG59XG4uYnRuLXByaW1hcnkge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXByaW1hcnktY29sb3IsICRidG4tcHJpbWFyeS1iZywgJGJ0bi1wcmltYXJ5LWJvcmRlcik7XG59XG4vLyBTdWNjZXNzIGFwcGVhcnMgYXMgZ3JlZW5cbi5idG4tc3VjY2VzcyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tc3VjY2Vzcy1jb2xvciwgJGJ0bi1zdWNjZXNzLWJnLCAkYnRuLXN1Y2Nlc3MtYm9yZGVyKTtcbn1cbi8vIEluZm8gYXBwZWFycyBhcyBibHVlLWdyZWVuXG4uYnRuLWluZm8ge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWluZm8tY29sb3IsICRidG4taW5mby1iZywgJGJ0bi1pbmZvLWJvcmRlcik7XG59XG4vLyBXYXJuaW5nIGFwcGVhcnMgYXMgb3JhbmdlXG4uYnRuLXdhcm5pbmcge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXdhcm5pbmctY29sb3IsICRidG4td2FybmluZy1iZywgJGJ0bi13YXJuaW5nLWJvcmRlcik7XG59XG4vLyBEYW5nZXIgYW5kIGVycm9yIGFwcGVhciBhcyByZWRcbi5idG4tZGFuZ2VyIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1kYW5nZXItY29sb3IsICRidG4tZGFuZ2VyLWJnLCAkYnRuLWRhbmdlci1ib3JkZXIpO1xufVxuXG5cbi8vIExpbmsgYnV0dG9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xuLmJ0bi1saW5rIHtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICYsXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBCdXR0b24gU2l6ZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4tbGcge1xuICAvLyBsaW5lLWhlaWdodDogZW5zdXJlIGV2ZW4tbnVtYmVyZWQgaGVpZ2h0IG9mIGJ1dHRvbiBuZXh0IHRvIGxhcmdlIGlucHV0XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsLCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsLCAkZm9udC1zaXplLWxhcmdlLCAkbGluZS1oZWlnaHQtbGFyZ2UsICRidG4tYm9yZGVyLXJhZGl1cy1sYXJnZSk7XG59XG4uYnRuLXNtIHtcbiAgLy8gbGluZS1oZWlnaHQ6IGVuc3VyZSBwcm9wZXIgaGVpZ2h0IG9mIGJ1dHRvbiBuZXh0IHRvIHNtYWxsIGlucHV0XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsLCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsLCAkZm9udC1zaXplLXNtYWxsLCAkbGluZS1oZWlnaHQtc21hbGwsICRidG4tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG59XG4uYnRuLXhzIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmcteHMtdmVydGljYWwsICRwYWRkaW5nLXhzLWhvcml6b250YWwsICRmb250LXNpemUtc21hbGwsICRsaW5lLWhlaWdodC1zbWFsbCwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsKTtcbn1cblxuXG4vLyBCbG9jayBidXR0b25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8vIFZlcnRpY2FsbHkgc3BhY2Ugb3V0IG11bHRpcGxlIGJsb2NrIGJ1dHRvbnNcbi5idG4tYmxvY2sgKyAuYnRuLWJsb2NrIHtcbiAgbWFyZ2luLXRvcDogNXB4O1xufVxuXG4vLyBTcGVjaWZpY2l0eSBvdmVycmlkZXNcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgJi5idG4tYmxvY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvL1xuLy8gRHJvcGRvd24gbWVudXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gRHJvcGRvd24gYXJyb3cvY2FyZXRcbi5jYXJldCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXRvcDogICAkY2FyZXQtd2lkdGgtYmFzZSBkYXNoZWQ7XG4gIGJvcmRlci10b3A6ICAgJGNhcmV0LXdpZHRoLWJhc2Ugc29saWQgXFw5OyAvLyBJRThcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGgtYmFzZSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6ICAkY2FyZXQtd2lkdGgtYmFzZSBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGRpdilcbi5kcm9wdXAsXG4uZHJvcGRvd24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8vIFByZXZlbnQgdGhlIGZvY3VzIG9uIHRoZSBkcm9wZG93biB0b2dnbGUgd2hlbiBjbG9zaW5nIGRyb3Bkb3duc1xuLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIFRoZSBkcm9wZG93biBtZW51ICh1bClcbi5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZHJvcGRvd247XG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XG4gIGZsb2F0OiBsZWZ0O1xuICBtaW4td2lkdGg6IDE2MHB4O1xuICBwYWRkaW5nOiA1cHggMDtcbiAgbWFyZ2luOiAycHggMCAwOyAvLyBvdmVycmlkZSBkZWZhdWx0IHVsXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJGRyb3Bkb3duLWZhbGxiYWNrLWJvcmRlcjsgLy8gSUU4IGZhbGxiYWNrXG4gIGJvcmRlcjogMXB4IHNvbGlkICRkcm9wZG93bi1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMCA2cHggMTJweCByZ2JhKDAsMCwwLC4xNzUpKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcblxuICAvLyBBbGlnbnMgdGhlIGRyb3Bkb3duIG1lbnUgdG8gcmlnaHRcbiAgLy9cbiAgLy8gRGVwcmVjYXRlZCBhcyBvZiAzLjEuMCBpbiBmYXZvciBvZiBgLmRyb3Bkb3duLW1lbnUtW2Rpcl1gXG4gICYucHVsbC1yaWdodCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuXG4gIC8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiB0aGUgZHJvcGRvd25cbiAgLmRpdmlkZXIge1xuICAgIEBpbmNsdWRlIG5hdi1kaXZpZGVyKCRkcm9wZG93bi1kaXZpZGVyLWJnKTtcbiAgfVxuXG4gIC8vIExpbmtzIHdpdGhpbiB0aGUgZHJvcGRvd24gbWVudVxuICA+IGxpID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogM3B4IDIwcHg7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xuICB9XG59XG5cbi8vIEhvdmVyL0ZvY3VzIHN0YXRlXG4uZHJvcGRvd24tbWVudSA+IGxpID4gYSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItYmc7XG4gIH1cbn1cblxuLy8gQWN0aXZlIHN0YXRlXG4uZHJvcGRvd24tbWVudSA+IC5hY3RpdmUgPiBhIHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtYmc7XG4gIH1cbn1cblxuLy8gRGlzYWJsZWQgc3RhdGVcbi8vXG4vLyBHcmF5IG91dCB0ZXh0IGFuZCBlbnN1cmUgdGhlIGhvdmVyL2ZvY3VzIHN0YXRlIHJlbWFpbnMgZ3JheVxuXG4uZHJvcGRvd24tbWVudSA+IC5kaXNhYmxlZCA+IGEge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gIH1cblxuICAvLyBOdWtlIGhvdmVyL2ZvY3VzIGVmZmVjdHNcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRcbiAgICBAaW5jbHVkZSByZXNldC1maWx0ZXI7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICB9XG59XG5cbi8vIE9wZW4gc3RhdGUgZm9yIHRoZSBkcm9wZG93blxuLm9wZW4ge1xuICAvLyBTaG93IHRoZSBtZW51XG4gID4gLmRyb3Bkb3duLW1lbnUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBvdXRsaW5lIHdoZW4gOmZvY3VzIGlzIHRyaWdnZXJlZFxuICA+IGEge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLy8gTWVudSBwb3NpdGlvbmluZ1xuLy9cbi8vIEFkZCBleHRyYSBjbGFzcyB0byBgLmRyb3Bkb3duLW1lbnVgIHRvIGZsaXAgdGhlIGFsaWdubWVudCBvZiB0aGUgZHJvcGRvd25cbi8vIG1lbnUgd2l0aCB0aGUgcGFyZW50LlxuLmRyb3Bkb3duLW1lbnUtcmlnaHQge1xuICBsZWZ0OiBhdXRvOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIGAuZHJvcGRvd24tbWVudWBcbiAgcmlnaHQ6IDA7XG59XG4vLyBXaXRoIHYzLCB3ZSBlbmFibGVkIGF1dG8tZmxpcHBpbmcgaWYgeW91IGhhdmUgYSBkcm9wZG93biB3aXRoaW4gYSByaWdodFxuLy8gYWxpZ25lZCBuYXYgY29tcG9uZW50LiBUbyBlbmFibGUgdGhlIHVuZG9pbmcgb2YgdGhhdCwgd2UgcHJvdmlkZSBhbiBvdmVycmlkZVxuLy8gdG8gcmVzdG9yZSB0aGUgZGVmYXVsdCBkcm9wZG93biBtZW51IGFsaWdubWVudC5cbi8vXG4vLyBUaGlzIGlzIG9ubHkgZm9yIGxlZnQtYWxpZ25pbmcgYSBkcm9wZG93biBtZW51IHdpdGhpbiBhIGAubmF2YmFyLXJpZ2h0YCBvclxuLy8gYC5wdWxsLXJpZ2h0YCBuYXYgY29tcG9uZW50LlxuLmRyb3Bkb3duLW1lbnUtbGVmdCB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4vLyBEcm9wZG93biBzZWN0aW9uIGhlYWRlcnNcbi5kcm9wZG93bi1oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogM3B4IDIwcHg7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGRyb3Bkb3duLWhlYWRlci1jb2xvcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxufVxuXG4vLyBCYWNrZHJvcCB0byBjYXRjaCBib2R5IGNsaWNrcyBvbiBtb2JpbGUsIGV0Yy5cbi5kcm9wZG93bi1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAoJHppbmRleC1kcm9wZG93biAtIDEwKTtcbn1cblxuLy8gUmlnaHQgYWxpZ25lZCBkcm9wZG93bnNcbi5wdWxsLXJpZ2h0ID4gLmRyb3Bkb3duLW1lbnUge1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bztcbn1cblxuLy8gQWxsb3cgZm9yIGRyb3Bkb3ducyB0byBnbyBib3R0b20gdXAgKGFrYSwgZHJvcHVwLW1lbnUpXG4vL1xuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LCBicm8uXG4vLyBUT0RPOiBhYnN0cmFjdCB0aGlzIHNvIHRoYXQgdGhlIG5hdmJhciBmaXhlZCBzdHlsZXMgYXJlIG5vdCBwbGFjZWQgaGVyZT9cblxuLmRyb3B1cCxcbi5uYXZiYXItZml4ZWQtYm90dG9tIC5kcm9wZG93biB7XG4gIC8vIFJldmVyc2UgdGhlIGNhcmV0XG4gIC5jYXJldCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGgtYmFzZSBkYXNoZWQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoLWJhc2Ugc29saWQgXFw5OyAvLyBJRThcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG4gIC8vIERpZmZlcmVudCBwb3NpdGlvbmluZyBmb3IgYm90dG9tIHVwIG1lbnVcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICB9XG59XG5cblxuLy8gQ29tcG9uZW50IGFsaWdubWVudFxuLy9cbi8vIFJlaXRlcmF0ZSBwZXIgbmF2YmFyLmxlc3MgYW5kIHRoZSBtb2RpZmllZCBjb21wb25lbnQgYWxpZ25tZW50IHRoZXJlLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAubmF2YmFyLXJpZ2h0IHtcbiAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICByaWdodDogMDsgbGVmdDogYXV0bztcbiAgICB9XG4gICAgLy8gTmVjZXNzYXJ5IGZvciBvdmVycmlkZXMgb2YgdGhlIGRlZmF1bHQgcmlnaHQgYWxpZ25lZCBtZW51LlxuICAgIC8vIFdpbGwgcmVtb3ZlIGNvbWUgdjQgaW4gYWxsIGxpa2VsaWhvb2QuXG4gICAgLmRyb3Bkb3duLW1lbnUtbGVmdCB7XG4gICAgICBsZWZ0OiAwOyByaWdodDogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCdXR0b24gZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIG1hdGNoIC5idG4gYWxpZ25tZW50IGdpdmVuIGZvbnQtc2l6ZSBoYWNrIGFib3ZlXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGJ1dHRvbiB0byB0aGUgZnJvbnRcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG4gIH1cbn1cblxuLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxuLmJ0bi1ncm91cCB7XG4gIC5idG4gKyAuYnRuLFxuICAuYnRuICsgLmJ0bi1ncm91cCxcbiAgLmJ0bi1ncm91cCArIC5idG4sXG4gIC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgfVxufVxuXG4vLyBPcHRpb25hbDogR3JvdXAgbXVsdGlwbGUgYnV0dG9uIGdyb3VwcyB0b2dldGhlciBmb3IgYSB0b29sYmFyXG4uYnRuLXRvb2xiYXIge1xuICBtYXJnaW4tbGVmdDogLTVweDsgLy8gT2Zmc2V0IHRoZSBmaXJzdCBjaGlsZCdzIG1hcmdpblxuICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICAuYnRuLFxuICAuYnRuLWdyb3VwLFxuICAuaW5wdXQtZ3JvdXAge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwLFxuICA+IC5pbnB1dC1ncm91cCB7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgfVxufVxuXG4uYnRuLWdyb3VwID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8vIFNldCBjb3JuZXJzIGluZGl2aWR1YWwgYmVjYXVzZSBzb21ldGltZXMgYSBzaW5nbGUgYnV0dG9uIGNhbiBiZSBpbiBhIC5idG4tZ3JvdXAgYW5kIHdlIG5lZWQgOmZpcnN0LWNoaWxkIGFuZCA6bGFzdC1jaGlsZCB0byBib3RoIG1hdGNoXG4uYnRuLWdyb3VwID4gLmJ0bjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICAmOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICB9XG59XG4vLyBOZWVkIC5kcm9wZG93bi10b2dnbGUgc2luY2UgOmxhc3QtY2hpbGQgZG9lc24ndCBhcHBseSwgZ2l2ZW4gdGhhdCBhIC5kcm9wZG93bi1tZW51IGlzIHVzZWQgaW1tZWRpYXRlbHkgYWZ0ZXIgaXRcbi5idG4tZ3JvdXAgPiAuYnRuOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4uYnRuLWdyb3VwID4gLmRyb3Bkb3duLXRvZ2dsZTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cblxuLy8gQ3VzdG9tIGVkaXRzIGZvciBpbmNsdWRpbmcgYnRuLWdyb3VwcyB3aXRoaW4gYnRuLWdyb3VwcyAodXNlZnVsIGZvciBpbmNsdWRpbmcgZHJvcGRvd24gYnV0dG9ucyB3aXRoaW4gYSBidG4tZ3JvdXApXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gID4gLmJ0bjpsYXN0LWNoaWxkLFxuICA+IC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gIH1cbn1cbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuXG4vLyBPbiBhY3RpdmUgYW5kIG9wZW4sIGRvbid0IHNob3cgb3V0bGluZVxuLmJ0bi1ncm91cCAuZHJvcGRvd24tdG9nZ2xlOmFjdGl2ZSxcbi5idG4tZ3JvdXAub3BlbiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgb3V0bGluZTogMDtcbn1cblxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBidXR0b24gc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyIG1hbmlwdWxhdGlvbi5cblxuLmJ0bi1ncm91cC14cyA+IC5idG4geyBAZXh0ZW5kIC5idG4teHM7IH1cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vIFNwbGl0IGJ1dHRvbiBkcm9wZG93bnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gR2l2ZSB0aGUgbGluZSBiZXR3ZWVuIGJ1dHRvbnMgc29tZSBkZXB0aFxuLmJ0bi1ncm91cCA+IC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDhweDtcbn1cbi5idG4tZ3JvdXAgPiAuYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHBhZGRpbmctbGVmdDogMTJweDtcbiAgcGFkZGluZy1yaWdodDogMTJweDtcbn1cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBSZW1vdmUgdGhlIGdyYWRpZW50IGFuZCBzZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG4uYnRuLWdyb3VwLm9wZW4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwwLDAsLjEyNSkpO1xuXG4gIC8vIFNob3cgbm8gc2hhZG93IGZvciBgLmJ0bi1saW5rYCBzaW5jZSBpdCBoYXMgbm8gb3RoZXIgYnV0dG9uIHN0eWxlcy5cbiAgJi5idG4tbGluayB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vIFJlcG9zaXRpb24gdGhlIGNhcmV0XG4uYnRuIC5jYXJldCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLy8gQ2FyZXRzIGluIG90aGVyIGJ1dHRvbiBzaXplc1xuLmJ0bi1sZyAuY2FyZXQge1xuICBib3JkZXItd2lkdGg6ICRjYXJldC13aWR0aC1sYXJnZSAkY2FyZXQtd2lkdGgtbGFyZ2UgMDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbn1cbi8vIFVwc2lkZSBkb3duIGNhcmV0cyBmb3IgLmRyb3B1cFxuLmRyb3B1cCAuYnRuLWxnIC5jYXJldCB7XG4gIGJvcmRlci13aWR0aDogMCAkY2FyZXQtd2lkdGgtbGFyZ2UgJGNhcmV0LXdpZHRoLWxhcmdlO1xufVxuXG5cbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwLFxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBDbGVhciBmbG9hdHMgc28gZHJvcGRvd24gbWVudXMgY2FuIGJlIHByb3Blcmx5IHBsYWNlZFxuICA+IC5idG4tZ3JvdXAge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgID4gLmJ0biB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG4gIH1cblxuICA+IC5idG4gKyAuYnRuLFxuICA+IC5idG4gKyAuYnRuLWdyb3VwLFxuICA+IC5idG4tZ3JvdXAgKyAuYnRuLFxuICA+IC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcbiAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIHtcbiAgJjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG4gICY6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG4gICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICB9XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgPiAuYnRuOmxhc3QtY2hpbGQsXG4gID4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gIH1cbn1cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG59XG5cblxuLy8gSnVzdGlmaWVkIGJ1dHRvbiBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1ncm91cC1qdXN0aWZpZWQge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHdpZHRoOiAxJTtcbiAgfVxuICA+IC5idG4tZ3JvdXAgLmJ0biB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG4tZ3JvdXAgLmRyb3Bkb3duLW1lbnUge1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveCBhbmQgcmFkaW8gb3B0aW9uc1xuLy9cbi8vIEluIG9yZGVyIHRvIHN1cHBvcnQgdGhlIGJyb3dzZXIncyBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2ssIHBvd2VyZWQgYnkgdGhlXG4vLyBgcmVxdWlyZWRgIGF0dHJpYnV0ZSwgd2UgaGF2ZSB0byBcImhpZGVcIiB0aGUgaW5wdXRzIHZpYSBgY2xpcGAuIFdlIGNhbm5vdCB1c2Vcbi8vIGBkaXNwbGF5OiBub25lO2Agb3IgYHZpc2liaWxpdHk6IGhpZGRlbjtgIGFzIHRoYXQgYWxzbyBoaWRlcyB0aGUgcG9wb3Zlci5cbi8vIFNpbXBseSB2aXN1YWxseSBoaWRpbmcgdGhlIGlucHV0cyB2aWEgYG9wYWNpdHlgIHdvdWxkIGxlYXZlIHRoZW0gY2xpY2thYmxlIGluXG4vLyBjZXJ0YWluIGNhc2VzIHdoaWNoIGlzIHByZXZlbnRlZCBieSB1c2luZyBgY2xpcGAgYW5kIGBwb2ludGVyLWV2ZW50c2AuXG4vLyBUaGlzIHdheSwgd2UgZW5zdXJlIGEgRE9NIGVsZW1lbnQgaXMgdmlzaWJsZSB0byBwb3NpdGlvbiB0aGUgcG9wb3ZlciBmcm9tLlxuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMjc5NCBhbmRcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzE0NTU5IGZvciBtb3JlIGluZm9ybWF0aW9uLlxuXG5bZGF0YS10b2dnbGU9XCJidXR0b25zXCJdIHtcbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBJbnB1dCBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEJhc2Ugc3R5bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBkcm9wZG93bnNcbiAgZGlzcGxheTogdGFibGU7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7IC8vIHByZXZlbnQgaW5wdXQgZ3JvdXBzIGZyb20gaW5oZXJpdGluZyBib3JkZXIgc3R5bGVzIGZyb20gdGFibGUgY2VsbHMgd2hlbiBwbGFjZWQgd2l0aGluIGEgdGFibGVcblxuICAvLyBVbmRvIHBhZGRpbmcgYW5kIGZsb2F0IG9mIGdyaWQgY2xhc3Nlc1xuICAmW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgLy8gRW5zdXJlIHRoYXQgdGhlIGlucHV0IGlzIGFsd2F5cyBhYm92ZSB0aGUgKmFwcGVuZGVkKiBhZGRvbiBidXR0b24gZm9yXG4gICAgLy8gcHJvcGVyIGJvcmRlciBjb2xvcnMuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAvLyBJRTkgZnViYXJzIHRoZSBwbGFjZWhvbGRlciBhdHRyaWJ1dGUgaW4gdGV4dCBpbnB1dHMgYW5kIHRoZSBhcnJvd3Mgb25cbiAgICAvLyBzZWxlY3QgZWxlbWVudHMgaW4gaW5wdXQgZ3JvdXBzLiBUbyBmaXggaXQsIHdlIGZsb2F0IHRoZSBpbnB1dC4gRGV0YWlsczpcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTYxI2lzc3VlY29tbWVudC0yODkzNjg1NVxuICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogMztcbiAgICB9XG4gIH1cbn1cblxuLy8gU2l6aW5nIG9wdGlvbnNcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBmb3JtIGNvbnRyb2wgc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyXG4vLyBtYW5pcHVsYXRpb24uXG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biB7XG4gIEBleHRlbmQgLmlucHV0LWxnO1xufVxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuIHtcbiAgQGV4dGVuZCAuaW5wdXQtc207XG59XG5cblxuLy8gRGlzcGxheSBhcyB0YWJsZS1jZWxsXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtYnRuLFxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuXG4gICY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuLy8gQWRkb24gYW5kIGFkZG9uIHdyYXBwZXIgZm9yIGJ1dHRvbnNcbi5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cC1idG4ge1xuICB3aWR0aDogMSU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIE1hdGNoIHRoZSBpbnB1dHNcbn1cblxuLy8gVGV4dCBpbnB1dCBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5pbnB1dC1ncm91cC1hZGRvbiB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1cztcblxuICAvLyBTaXppbmdcbiAgJi5pbnB1dC1zbSB7XG4gICAgcGFkZGluZzogJHBhZGRpbmctc21hbGwtdmVydGljYWwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw7XG4gIH1cbiAgJi5pbnB1dC1sZyB7XG4gICAgcGFkZGluZzogJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gIH1cblxuICAvLyBOdWtlIGRlZmF1bHQgbWFyZ2lucyBmcm9tIGNoZWNrYm94ZXMgYW5kIHJhZGlvcyB0byB2ZXJ0aWNhbGx5IGNlbnRlciB3aXRoaW4uXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6Zmlyc3QtY2hpbGQsXG4uaW5wdXQtZ3JvdXAtYWRkb246Zmlyc3QtY2hpbGQsXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuLWdyb3VwID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuZHJvcGRvd24tdG9nZ2xlLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xufVxuLmlucHV0LWdyb3VwLWFkZG9uOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xufVxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6bGFzdC1jaGlsZCxcbi5pbnB1dC1ncm91cC1hZGRvbjpsYXN0LWNoaWxkLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4tZ3JvdXAgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmRyb3Bkb3duLXRvZ2dsZSxcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuLmlucHV0LWdyb3VwLWFkZG9uOmxhc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogMDtcbn1cblxuLy8gQnV0dG9uIGlucHV0IGdyb3Vwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmlucHV0LWdyb3VwLWJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gSmFua2lseSBwcmV2ZW50IGlucHV0IGJ1dHRvbiBncm91cHMgZnJvbSB3cmFwcGluZyB3aXRoIGB3aGl0ZS1zcGFjZWAgYW5kXG4gIC8vIGBmb250LXNpemVgIGluIGNvbWJpbmF0aW9uIHdpdGggYGlubGluZS1ibG9ja2Agb24gYnV0dG9ucy5cbiAgZm9udC1zaXplOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3Igc3BhY2luZywgcG9zaXRpb24gZm9yIGJyaW5naW5nIGhvdmVyZWQvZm9jdXNlZC9hY3RpdmVkXG4gIC8vIGVsZW1lbnQgYWJvdmUgdGhlIHNpYmxpbmdzLlxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICArIC5idG4ge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgfVxuICAgIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGJ1dHRvbiB0byB0aGUgZnJvbnRcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUge1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG4gIH1cblxuICAvLyBOZWdhdGl2ZSBtYXJnaW4gdG8gb25seSBoYXZlIGEgMXB4IGJvcmRlciBiZXR3ZWVuIHRoZSB0d29cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgPiAuYnRuLFxuICAgID4gLmJ0bi1ncm91cCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG4gICAgfVxuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgPiAuYnRuLFxuICAgID4gLmJ0bi1ncm91cCB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gTW9kYWxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc2hpdFxuXG4vLyBLaWxsIHRoZSBzY3JvbGwgb24gdGhlIGJvZHlcbi5tb2RhbC1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICBkaXNwbGF5OiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbDtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXG4gICYuZmFkZSAubW9kYWwtZGlhbG9nIHtcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUoMCwgLTI1JSk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi10cmFuc2Zvcm0oMC4zcyBlYXNlLW91dCk7XG4gIH1cbiAgJi5pbiAubW9kYWwtZGlhbG9nIHsgQGluY2x1ZGUgdHJhbnNsYXRlKDAsIDApIH1cbn1cbi5tb2RhbC1vcGVuIC5tb2RhbCB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAxMHB4O1xufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtY29udGVudC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJG1vZGFsLWNvbnRlbnQtZmFsbGJhY2stYm9yZGVyLWNvbG9yOyAvL29sZCBicm93c2VycyBmYWxsYmFjayAoaWU4IGV0YylcbiAgYm9yZGVyOiAxcHggc29saWQgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDNweCA5cHggcmdiYSgwLDAsMCwuNSkpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IEBpbmNsdWRlIG9wYWNpdHkoMCk7IH1cbiAgJi5pbiB7IEBpbmNsdWRlIG9wYWNpdHkoJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHkpOyB9XG59XG5cbi8vIE1vZGFsIGhlYWRlclxuLy8gVG9wIHNlY3Rpb24gb2YgdGhlIG1vZGFsIHcvIHRpdGxlIGFuZCBkaXNtaXNzXG4ubW9kYWwtaGVhZGVyIHtcbiAgcGFkZGluZzogJG1vZGFsLXRpdGxlLXBhZGRpbmc7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG4vLyBDbG9zZSBpY29uXG4ubW9kYWwtaGVhZGVyIC5jbG9zZSB7XG4gIG1hcmdpbi10b3A6IC0ycHg7XG59XG5cbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBsaW5lLWhlaWdodDogJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyAvLyByaWdodCBhbGlnbiBidXR0b25zXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7IC8vIGNsZWFyIGl0IGluIGNhc2UgZm9sa3MgdXNlIC5wdWxsLSogY2xhc3NlcyBvbiBidXR0b25zXG5cbiAgLy8gUHJvcGVybHkgc3BhY2Ugb3V0IGJ1dHRvbnNcbiAgLmJ0biArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gYWNjb3VudCBmb3IgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB3aGljaCBnZXRzIHRoZSBib3R0b20gbWFyZ2luIGxpa2UgYWxsIG90aGVyIGlucHV0c1xuICB9XG4gIC8vIGJ1dCBvdmVycmlkZSB0aGF0IGZvciBidXR0b24gZ3JvdXBzXG4gIC5idG4tZ3JvdXAgLmJ0biArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICB9XG4gIC8vIGFuZCBvdmVycmlkZSBpdCBmb3IgYmxvY2sgYnV0dG9ucyBhcyB3ZWxsXG4gIC5idG4tYmxvY2sgKyAuYnRuLWJsb2NrIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4vLyBNZWFzdXJlIHNjcm9sbGJhciB3aWR0aCBmb3IgcGFkZGluZyBib2R5IGR1cmluZyBtb2RhbCBzaG93L2hpZGVcbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBvdmVyZmxvdzogc2Nyb2xsO1xufVxuXG4vLyBTY2FsZSB1cCB0aGUgbW9kYWxcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIHdpZHRoOiAkbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAzMHB4IGF1dG87XG4gIH1cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCA1cHggMTVweCByZ2JhKDAsMCwwLC41KSk7XG4gIH1cblxuICAvLyBNb2RhbCBzaXplc1xuICAubW9kYWwtc20geyB3aWR0aDogJG1vZGFsLXNtOyB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAubW9kYWwtbGcgeyB3aWR0aDogJG1vZGFsLWxnOyB9XG59XG4iLCIvL1xuLy8gVG9vbHRpcHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuXG4gIEBpbmNsdWRlIG9wYWNpdHkoMCk7XG5cbiAgJi5pbiAgICAgeyBAaW5jbHVkZSBvcGFjaXR5KCR0b29sdGlwLW9wYWNpdHkpOyB9XG4gICYudG9wICAgIHsgbWFyZ2luLXRvcDogIC0zcHg7IHBhZGRpbmc6ICR0b29sdGlwLWFycm93LXdpZHRoIDA7IH1cbiAgJi5yaWdodCAgeyBtYXJnaW4tbGVmdDogIDNweDsgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy13aWR0aDsgfVxuICAmLmJvdHRvbSB7IG1hcmdpbi10b3A6ICAgM3B4OyBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAwOyB9XG4gICYubGVmdCAgIHsgbWFyZ2luLWxlZnQ6IC0zcHg7IHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGg7IH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogM3B4IDhweDtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xufVxuXG4vLyBBcnJvd3Ncbi50b29sdGlwLWFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xufVxuLy8gTm90ZTogRGVwcmVjYXRlZCAudG9wLWxlZnQsIC50b3AtcmlnaHQsIC5ib3R0b20tbGVmdCwgYW5kIC5ib3R0b20tcmlnaHQgYXMgb2YgdjMuMy4xXG4udG9vbHRpcCB7XG4gICYudG9wIC50b29sdGlwLWFycm93IHtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG4gICYudG9wLWxlZnQgLnRvb2x0aXAtYXJyb3cge1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWJvdHRvbTogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLnRvcC1yaWdodCAudG9vbHRpcC1hcnJvdyB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi1ib3R0b206IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5yaWdodCAudG9vbHRpcC1hcnJvdyB7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5sZWZ0IC50b29sdGlwLWFycm93IHtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLmJvdHRvbSAudG9vbHRpcC1hcnJvdyB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLmJvdHRvbS1sZWZ0IC50b29sdGlwLWFycm93IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5ib3R0b20tcmlnaHQgLnRvb2x0aXAtYXJyb3cge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG59XG4iLCIvL1xuLy8gVXRpbGl0eSBjbGFzc2VzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEZsb2F0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uY2xlYXJmaXgge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cbi5jZW50ZXItYmxvY2sge1xuICBAaW5jbHVkZSBjZW50ZXItYmxvY2s7XG59XG4ucHVsbC1yaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xufVxuLnB1bGwtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cblxuLy8gVG9nZ2xpbmcgY29udGVudFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBOb3RlOiBEZXByZWNhdGVkIC5oaWRlIGluIGZhdm9yIG9mIC5oaWRkZW4gb3IgLnNyLW9ubHkgKGFzIGFwcHJvcHJpYXRlKSBpbiB2My4wLjFcbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLnNob3cge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi50ZXh0LWhpZGUge1xuICBAaW5jbHVkZSB0ZXh0LWhpZGU7XG59XG5cblxuLy8gSGlkZSBmcm9tIHNjcmVlbnJlYWRlcnMgYW5kIGJyb3dzZXJzXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5cbi8vIEZvciBBZmZpeCBwbHVnaW5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmFmZml4IHtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuIiwiLy9cbi8vIFJlc3BvbnNpdmU6IFV0aWxpdHkgY2xhc3Nlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBJRTEwIGluIFdpbmRvd3MgKFBob25lKSA4XG4vL1xuLy8gU3VwcG9ydCBmb3IgcmVzcG9uc2l2ZSB2aWV3cyB2aWEgbWVkaWEgcXVlcmllcyBpcyBraW5kIG9mIGJvcmtlZCBpbiBJRTEwLCBmb3Jcbi8vIFN1cmZhY2UvZGVza3RvcCBpbiBzcGxpdCB2aWV3IGFuZCBmb3IgV2luZG93cyBQaG9uZSA4LiBUaGlzIHBhcnRpY3VsYXIgZml4XG4vLyBtdXN0IGJlIGFjY29tcGFuaWVkIGJ5IGEgc25pcHBldCBvZiBKYXZhU2NyaXB0IHRvIHNuaWZmIHRoZSB1c2VyIGFnZW50IGFuZFxuLy8gYXBwbHkgc29tZSBjb25kaXRpb25hbCBDU1MgdG8gKm9ubHkqIHRoZSBTdXJmYWNlL2Rlc2t0b3AgV2luZG93cyA4LiBMb29rIGF0XG4vLyBvdXIgR2V0dGluZyBTdGFydGVkIHBhZ2UgZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gdGhpcyBidWcuXG4vL1xuLy8gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgZm9sbG93aW5nOlxuLy9cbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEwNDk3XG4vLyBEb2NzOiBodHRwOi8vZ2V0Ym9vdHN0cmFwLmNvbS9nZXR0aW5nLXN0YXJ0ZWQvI3N1cHBvcnQtaWUxMC13aWR0aFxuLy8gU291cmNlOiBodHRwOi8vdGlta2FkbGVjLmNvbS8yMDEzLzAxL3dpbmRvd3MtcGhvbmUtOC1hbmQtZGV2aWNlLXdpZHRoL1xuLy8gU291cmNlOiBodHRwOi8vdGlta2FkbGVjLmNvbS8yMDEyLzEwL2llMTAtc25hcC1tb2RlLWFuZC1yZXNwb25zaXZlLWRlc2lnbi9cblxuQGF0LXJvb3Qge1xuICBALW1zLXZpZXdwb3J0IHtcbiAgICB3aWR0aDogZGV2aWNlLXdpZHRoO1xuICB9XG59XG5cblxuLy8gVmlzaWJpbGl0eSB1dGlsaXRpZXNcbi8vIE5vdGU6IERlcHJlY2F0ZWQgLnZpc2libGUteHMsIC52aXNpYmxlLXNtLCAudmlzaWJsZS1tZCwgYW5kIC52aXNpYmxlLWxnIGFzIG9mIHYzLjIuMFxuXG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUteHMnKTtcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1zbScpO1xuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLW1kJyk7XG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtbGcnKTtcblxuLnZpc2libGUteHMtYmxvY2ssXG4udmlzaWJsZS14cy1pbmxpbmUsXG4udmlzaWJsZS14cy1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1zbS1ibG9jayxcbi52aXNpYmxlLXNtLWlubGluZSxcbi52aXNpYmxlLXNtLWlubGluZS1ibG9jayxcbi52aXNpYmxlLW1kLWJsb2NrLFxuLnZpc2libGUtbWQtaW5saW5lLFxuLnZpc2libGUtbWQtaW5saW5lLWJsb2NrLFxuLnZpc2libGUtbGctYmxvY2ssXG4udmlzaWJsZS1sZy1pbmxpbmUsXG4udmlzaWJsZS1sZy1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLXhzJyk7XG59XG4udmlzaWJsZS14cy1ibG9jayB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXhzLWlubGluZSB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS14cy1pbmxpbmUtYmxvY2sge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLXNtJyk7XG59XG4udmlzaWJsZS1zbS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtc20taW5saW5lIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtc20taW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLW1kJyk7XG59XG4udmlzaWJsZS1tZC1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbWQtaW5saW5lIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbWQtaW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1sZycpO1xufVxuLnZpc2libGUtbGctYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1sZy1pbmxpbmUge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbGctaW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXhzJyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXNtJyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLW1kJyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1sZycpO1xufVxuXG5cbi8vIFByaW50IHV0aWxpdGllc1xuLy9cbi8vIE1lZGlhIHF1ZXJpZXMgYXJlIHBsYWNlZCBvbiB0aGUgaW5zaWRlIHRvIGJlIG1peGluLWZyaWVuZGx5LlxuXG4vLyBOb3RlOiBEZXByZWNhdGVkIC52aXNpYmxlLXByaW50IGFzIG9mIHYzLjIuMFxuXG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtcHJpbnQnKTtcblxuQG1lZGlhIHByaW50IHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1wcmludCcpO1xufVxuLnZpc2libGUtcHJpbnQtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1wcmludC1pbmxpbmUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtcHJpbnQtaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50IHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tcHJpbnQnKTtcbn1cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyB2YXJpYWJsZXMgY29tbXVuZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gY291bGV1cnNcbiR3aGl0ZSA6ICNGRkY7XG4kYmxhY2sgOiAjMDAwO1xuXG4kZ3JleUxpZ2h0IDogI2Y2ZjZmNjtcbiRncmV5OiAjZGJkZGUzO1xuJGdyZXlEYXJrIDogIzhhOGE4YTtcbiRncmV5VmVyeURhcmsgOiAjNDI0MjQyO1xuJGdyZXlCbHVlIDogIzk5YTRiMTtcblxuJGJsdWUgOiAjMDA4MmFkO1xuJHBpbmsgOiAjZmY0ZDQyO1xuJHBpbmtMaWdodCA6ICNmZWFjOTQ7XG4kcGlua1ZlcnlMaWdodCA6ICNmZmY2ZjU7XG4kZ3JlZW4gOiAjYzZkOGMxO1xuXG4kYmFzZS1jb2xvciA6ICRibGFjaztcbiRhbHBoYS1jb2xvciA6ICRibHVlO1xuJGVycm9yLWNvbG9yIDogI2RjMzU0NTtcbiRzdWNjZXNzLWNvbG9yIDogIzI4YTc0NTtcblxuLy8gdHlwb2dyYXBoaWVcbiRiYXNlLWZvbnQtc2l6ZSA6IDEuNXJlbTtcbiRiYXNlLWxpbmUtaGVpZ2h0IDogMS4zO1xuJGZvbnQtZmFtaWx5LTEgOiAnQXBlcmN1JywgQXJpYWwsIHNhbnMtc2VyaWY7XG4kZm9udC1mYW1pbHktMiA6ICdTcGVjdHJhbCcsIHNlcmlmO1xuJGZvbnQtZmFtaWx5LTMgOiAnRGFsYSBNb2EnLCBzZXJpZjtcbiRiYXNlLWZvbnQtZmFtaWx5IDogJGZvbnQtZmFtaWx5LTE7XG5cbi8vIG1hcmdpblxuJGJhc2UtbWFyZ2luIDogNHJlbTtcblxuLy8gcGFkZGluZ1xuJGJhc2UtcGFkZGluZyA6IDRyZW07XG5cbi8vIGJveCBzaGFkb3dcbiRib3gtc2hhZG93IDogMCAwIDE1cHggMXB4IHJnYmEoMCwgMCwgMCwgLjA3KTtcblxuLy8gbmF2IG1vYmlsZSBoZWlnaHRcbiRuYXZNb2JpbGVIZWlnaHQgOiA2LjVyZW07XG5cbi8vIGRlc2t0b3AgbWF4IGhlaWdodFxuJHNjcmVlbi1tYXgtaGVpZ2h0IDogODIwcHg7IiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIGZ1bmN0aW9uc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cbi8vIHBpeGVscyB0byByZW0gY29udmVyc2lvblxuQGZ1bmN0aW9uIHJlbSgkcGl4ZWxzLCAkYm9keUZvbnRTaXplOjkpIHtcbiAgQHJldHVybiAkcGl4ZWxzIC8gJGJvZHlGb250U2l6ZSAqIDFyZW07XG59XG5cblxuLy8vIFNsaWdodGx5IGxpZ2h0ZW4gYSBjb2xvclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gY29sb3IgdG8gdGludFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGVyY2VudGFnZSAtIHBlcmNlbnRhZ2Ugb2YgYCRjb2xvcmAgaW4gcmV0dXJuZWQgY29sb3Jcbi8vLyBAcmV0dXJuIHtDb2xvcn1cbkBmdW5jdGlvbiB0aW50KCRjb2xvciwgJHBlcmNlbnRhZ2UpIHtcbiAgQHJldHVybiBtaXgod2hpdGUsICRjb2xvciwgJHBlcmNlbnRhZ2UpO1xufVxuXG4vLy8gU2xpZ2h0bHkgZGFya2VuIGEgY29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIGNvbG9yIHRvIHNoYWRlXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwZXJjZW50YWdlIC0gcGVyY2VudGFnZSBvZiBgJGNvbG9yYCBpbiByZXR1cm5lZCBjb2xvclxuLy8vIEByZXR1cm4ge0NvbG9yfVxuQGZ1bmN0aW9uIHNoYWRlKCRjb2xvciwgJHBlcmNlbnRhZ2UpIHtcbiAgQHJldHVybiBtaXgoYmxhY2ssICRjb2xvciwgJHBlcmNlbnRhZ2UpO1xufVxuXG5cbkBmdW5jdGlvbiBpY29uLWNoYXIoJGZpbGVuYW1lKSB7XG4gICAgJGNoYXI6IFwiXCI7XG5cbiAgICBAaWYgJGZpbGVuYW1lID09IGFnZW5kYSB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAwMVwiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IGF2aW9uIHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDAyXCI7XG4gICAgfVxuICAgIEBpZiAkZmlsZW5hbWUgPT0gY2FybmV0IHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDAzXCI7XG4gICAgfVxuICAgIEBpZiAkZmlsZW5hbWUgPT0gY2FydGUge1xuICAgICAgICAkY2hhcjogXCJcXEUwMDRcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSBjYXNxdWUge1xuICAgICAgICAkY2hhcjogXCJcXEUwMDVcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSBjaGVjayB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAwNlwiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IGNsb3NlIHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDA3XCI7XG4gICAgfVxuICAgIEBpZiAkZmlsZW5hbWUgPT0gY29uY2llcmdlcmllIHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDA4XCI7XG4gICAgfVxuICAgIEBpZiAkZmlsZW5hbWUgPT0gZGF0ZXBpY2tlciB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAwOVwiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IGRldmlzZSB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAwQVwiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IGZhY2Vib29rIHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDBCXCI7XG4gICAgfVxuICAgIEBpZiAkZmlsZW5hbWUgPT0gZmxlY2hlLWJvdXRvbiB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAwQ1wiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IGZsZWNoZS1uYXYge1xuICAgICAgICAkY2hhcjogXCJcXEUwMERcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSBmbGVjaGUtc2VsZWN0IHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDBFXCI7XG4gICAgfVxuICAgIEBpZiAkZmlsZW5hbWUgPT0gZ29vZ2xlLXBsdXMge1xuICAgICAgICAkY2hhcjogXCJcXEUwMEZcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSBncHMge1xuICAgICAgICAkY2hhcjogXCJcXEUwMTBcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSBndWlsbGVtZXQtZmVybWUge1xuICAgICAgICAkY2hhcjogXCJcXEUwMTFcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSBndWlsbGVtZXQtb3V2ZXJ0IHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDEyXCI7XG4gICAgfVxuICAgIEBpZiAkZmlsZW5hbWUgPT0gaG9yYWlyZSB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAxM1wiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IGluc3RhZ3JhbSB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAxNFwiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IGxpbmtlZGluIHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDE1XCI7XG4gICAgfVxuICAgIEBpZiAkZmlsZW5hbWUgPT0gbGlzdGUge1xuICAgICAgICAkY2hhcjogXCJcXEUwMTZcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSBtYWlsIHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDE3XCI7XG4gICAgfVxuICAgIEBpZiAkZmlsZW5hbWUgPT0gbWlsZXMge1xuICAgICAgICAkY2hhcjogXCJcXEUwMThcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSBwaW50ZXJlc3Qge1xuICAgICAgICAkY2hhcjogXCJcXEUwMTlcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSBzY3JvbGwge1xuICAgICAgICAkY2hhcjogXCJcXEUwMUFcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSBzZWxlY3Qge1xuICAgICAgICAkY2hhcjogXCJcXEUwMUJcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSBzbGlkZXItbGVmdCB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAxQ1wiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IHNsaWRlci1yaWdodCB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAxRFwiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IHN0YXItaGFsZiB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAxRVwiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IHN0YXIge1xuICAgICAgICAkY2hhcjogXCJcXEUwMUZcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSB0Y2hhdCB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAyMFwiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IHRlbCB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAyMVwiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IHR3aXR0ZXIge1xuICAgICAgICAkY2hhcjogXCJcXEUwMjJcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSB1c2VyIHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDIzXCI7XG4gICAgfVxuICAgIEBpZiAkZmlsZW5hbWUgPT0gd2lmaSB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAyNFwiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IHlvdXR1YmUge1xuICAgICAgICAkY2hhcjogXCJcXEUwMjVcIjtcbiAgICB9XG5cbiAgICBAcmV0dXJuICRjaGFyO1xufSIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBtaXhpbnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIE1hcmdpblxuQG1peGluIG1hclYgKCAkdG9wIDogJGJhc2UtbWFyZ2luLCAkYm90dG9tIDogJHRvcCkge1xuICAgIG1hcmdpbi10b3A6ICR0b3A7XG4gICAgbWFyZ2luLWJvdHRvbTogJGJvdHRvbTtcbn1cblxuQG1peGluIG1hckggKCAkbGVmdCA6IGF1dG8sICRyaWdodCA6ICRsZWZ0KSB7XG4gICAgbWFyZ2luLWxlZnQ6ICRsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogJHJpZ2h0O1xufVxuXG4vLyBQYWRkaW5nXG5AbWl4aW4gcGFkViAoICR0b3AgOiAkYmFzZS1wYWRkaW5nLCAkYm90dG9tIDogJHRvcCkge1xuICAgIHBhZGRpbmctdG9wOiAkdG9wO1xuICAgIHBhZGRpbmctYm90dG9tOiAkYm90dG9tO1xufVxuXG5AbWl4aW4gcGFkSCAoICRsZWZ0IDogJGJhc2UtcGFkZGluZywgJHJpZ2h0IDogJGxlZnQpIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6ICRyaWdodDtcbn1cblxuXG5cbi8vIHZlcnRpY2FsQWxpZ25DZW50ZXJcbkBtaXhpbiB2ZXJ0aWNhbEFsaWduQ2VudGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAmID4gKiB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7XG4gICAgfVxufVxuXG4vLyBjb3ZlclxuQG1peGluIGNvdmVyKCAkYmctcG9zaXRpb24teCA6IDUwJSwgJGJnLXBvc2l0aW9uLXkgOiA1MCUpIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRiZy1wb3NpdGlvbi14ICRiZy1wb3NpdGlvbi15O1xufVxuXG4vLyBjb250YWluXG5AbWl4aW4gY29udGFpbiggJGJnLXBvc2l0aW9uLXggOiA1MCUsICRiZy1wb3NpdGlvbi15IDogNTAlKSB7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRiZy1wb3NpdGlvbi14ICRiZy1wb3NpdGlvbi15O1xufVxuXG4vLyBib3hTaGFkb3dcbkBtaXhpbiBib3hTaGFkb3cgKCRkZWZhdWx0IDogJGJveC1zaGFkb3cgKSAge1xuICAgIGJveC1zaGFkb3c6ICRkZWZhdWx0O1xufVxuXG5cbi8vIHBsYWNlaG9sZGVyXG5AbWl4aW4gcGxhY2Vob2xkZXIge1xuICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyBAY29udGVudDsgfVxuICAgICY6Oi1tb3otcGxhY2Vob2xkZXIgeyBAY29udGVudDsgfVxuICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgQGNvbnRlbnQ7IH1cbiAgICAmOi1tb3otcGxhY2Vob2xkZXIgeyBAY29udGVudDsgfVxufVxuXG4vLyBjdXN0b21TY3JvbGxiYXJcbkBtaXhpbiBjdXN0b21TY3JvbGxiYXIgKCRjb2xvciA6ICNiOWI4YjgsICRiZ0NvbG9yIDogI2U1ZTVlNSApe1xuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgIHdpZHRoOjAuNXJlbTtcbiAgICB9XG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJnQ29sb3I7XG4gICAgfVxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICB9XG59XG5cbi8vIGNlbnRlckljb25cbkBtaXhpbiBjZW50ZXJJY29uKCRwYXJlbnRQb3NpdGlvbiA6IHJlbGF0aXZlLCAkcHNldWRvIDogYmVmb3JlKSB7XG4gICAgcG9zaXRpb246JHBhcmVudFBvc2l0aW9uO1xuICAgICY6I3skcHNldWRvfSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgfVxufVxuXG4vLyBmbGV4Q2VudGVyXG5AbWl4aW4gZmxleENlbnRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vLyB3aXRoUHNldWRvQ2xhc3NcbkBtaXhpbiB3aXRoUHNldWRvQ2xhc3Mge1xuICAgICYsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG5cbi8vIGNvbG9ySG92ZXJGb2N1c1xuQG1peGluIGNvbG9ySG92ZXJGb2N1cygkY29sb3I6aW5oZXJpdCkge1xuICAgICYsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6JGNvbG9yO1xuICAgIH1cbn1cblxuLy8gYmxvY2tNb2JpbGVcbkBtaXhpbiBibG9ja01vYmlsZSAoJHRvcCA6IDFyZW0sICRib3R0b20gOiAkdG9wKSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIG1hcmdpbi10b3A6JHRvcDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTokYm90dG9tO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6YXV0bztcbiAgICAgICAgbWFyZ2luLWxlZnQ6YXV0bztcbiAgICAgICAgZmxvYXQ6bm9uZTtcbiAgICB9XG59XG5cblxuLy8gdGV4dCBvdmVyZmxvd1xuQG1peGluIHRleHRPdmVyZmxvdyAoJGRlZmF1bHQ6MS41cmVtKSB7XG4gICAgbWF4LWhlaWdodDogJGRlZmF1bHQ7XG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xufVxuXG4vLyBab29tIHZpc3VhbCBvbiBob3ZlclxuQG1peGluIHpvb21WaXN1YWxPbkhvdmVyIHtcbiAgLm5vLXRvdWNoICYge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBvdmVyZmxvdzpoaWRkZW47XG4gICAgICBpbWcge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0O1xuICAgICAgfVxuICAgICAgJjpob3ZlciBpbWcge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEFuaW1hdGlvbiBkZSBsYSBmbGVjaGUgbGlyZSB1biBhcnRpY2xlXG5AbWl4aW4gYW5pbVJlYWRNb3JlQXJyb3cge1xuICAubm8tdG91Y2ggJiB7XG4gICAgJjpob3ZlciB7XG4gICAgICAubGluay1hcnJvdyB7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cblxuXG5cbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vL1xuLy8gQ1NTIGFycm93XG4vL1xuLy8gQHBhcmFtIGRpcmVjdGlvbiAgICAgICA6ICB1cCwgZG93biwgbGVmdCwgcmlnaHRcbi8vIEBwYXJhbSB3aWR0aCAgICAgICAgICAgOiAgcHgsIGVtXG4vLyBAcGFyYW0gaGVpZ2h0ICAgICAgICAgIDogIHB4LCBlbVxuLy8gQHBhcmFtIGNvbG9yICAgICAgICAgICA6ICBoZXgsIHJnYlxuLy9cbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBtaXhpbiBhcnJvdygkZGlyZWN0aW9uOiB1cCwgJHdpZHRoOiAxcmVtLCAkaGVpZ2h0OiAxcmVtLCAkY29sb3I6IG51bGwpIHtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG5cbiAgICAvLyBSaWdodFxuICAgIEBpZiAkZGlyZWN0aW9uID09IHJpZ2h0IHtcbiAgICAgICAgYm9yZGVyLXRvcDogJHdpZHRoLzIgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206ICR3aWR0aC8yIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgQGlmICRjb2xvciA9PSBudWxsIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAkaGVpZ2h0IHNvbGlkO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAkaGVpZ2h0IHNvbGlkICRjb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyBMZWZ0XG4gICAgQGlmICRkaXJlY3Rpb24gPT0gbGVmdCB7XG4gICAgICAgIGJvcmRlci10b3A6ICR3aWR0aC8yIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItYm90dG9tOiAkd2lkdGgvMiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgQGlmICRjb2xvciA9PSBudWxsIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogJGhlaWdodCBzb2xpZDtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6ICRoZWlnaHQgc29saWQgJGNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIFVwXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gdXAge1xuICAgICAgICBib3JkZXItbGVmdDogJHdpZHRoLzIgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1yaWdodDogJHdpZHRoLzIgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIEBpZiAkY29sb3IgPT0gbnVsbCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAkaGVpZ2h0IHNvbGlkO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206ICRoZWlnaHQgc29saWQgJGNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIERvd25cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6ICR3aWR0aC8yIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItcmlnaHQ6ICR3aWR0aC8yIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBAaWYgJGNvbG9yID09IG51bGwge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogJGhlaWdodCBzb2xpZDtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAkaGVpZ2h0IHNvbGlkICRjb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5cbi8vICBUaGlzIG1peGluIGNhbiBiZSB1c2VkIHRvIHNldCB0aGUgb2JqZWN0LWZpdDpcbi8vICBAaW5jbHVkZSBvYmplY3QtZml0KGNvbnRhaW4pO1xuLy8gIG9yIG9iamVjdC1maXQgYW5kIG9iamVjdC1wb3NpdGlvbjpcbi8vICBAaW5jbHVkZSBvYmplY3QtZml0KGNvdmVyLCB0b3ApO1xuLy9cbkBtaXhpbiBvYmplY3QtZml0KCRmaXQ6IGNvdmVyLCAkcG9zaXRpb246IG51bGwpe1xuICAtby1vYmplY3QtZml0OiAkZml0O1xuICAgICBvYmplY3QtZml0OiAkZml0O1xuICBAaWYgJHBvc2l0aW9uIHtcbiAgICAtby1vYmplY3QtcG9zaXRpb246ICRwb3NpdGlvbjtcbiAgICAgICBvYmplY3QtcG9zaXRpb246ICRwb3NpdGlvbjtcbiAgICBmb250LWZhbWlseTogJ29iamVjdC1maXQ6ICN7JGZpdH07IG9iamVjdC1wb3NpdGlvbjogI3skcG9zaXRpb259JztcbiAgfSBAZWxzZSB7XG4gICAgZm9udC1mYW1pbHk6ICdvYmplY3QtZml0OiAjeyRmaXR9JztcbiAgfVxufVxuXG5cbi8vIGd1dHRlclxuQG1peGluIGd1dHRlcigkZ3V0dGVyIDogMTVweCkge1xuICBAaW5jbHVkZSBtYXJIKC0kZ3V0dGVyKTtcbiAgJiA+ICogeyBAaW5jbHVkZSBwYWRIKCRndXR0ZXIpO31cbn1cblxuXG4vLyBwb3VyIHN1cnNoYXJnZXIgbGVzIGJvdXRvbnMgYm9vdHN0cmFwXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQtZXh0ZW5zaW9uKCRjb2xvciwgJGJhY2tncm91bmQsICRib3JkZXIpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICB9XG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgLm9wZW4gPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgfVxuXG4gIC5iYWRnZSB7XG4gICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG5cbkBtaXhpbiBhbmltYXRpb24taGFja3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7XG59XG5cbi8vIEljb24gUG9wXG5AbWl4aW4gaWNvblBvcCB7XG4gIEBrZXlmcmFtZXMgdmRtLWljb24tcG9wIHtcbiAgICA1MCUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMS4zKTtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgYW5pbWF0aW9uLWhhY2tzKCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGFuaW1hdGlvbi1uYW1lOiB2ZG0taWNvbi1wb3A7XG4gICAgICBhbmltYXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xuICAgIH1cbiAgfVxufVxuXG5cbkBtaXhpbiBidWxsZXRMaXN0IHtcbiAgbGkge1xuICAgIHRleHQtaW5kZW50OiAwLjhlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDAuM2VtO1xuICAgICAgaGVpZ2h0OiAwLjNlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYXNlLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICAgICAgdG9wOiAwLjVlbTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGdlbmVyaWNCb3gge1xuICBAaW5jbHVkZSBwYWRWOyBcbn1cbiBcblxuQG1peGluIGljb24tc3R5bGVzIHtcbiAgICBmb250LWZhbWlseTogXCJpY29uZm9udFwiO1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAvLyBzcGVhazogbm9uZTsgLy8gb25seSBuZWNlc3NhcnkgaWYgbm90IHVzaW5nIHRoZSBwcml2YXRlIHVuaWNvZGUgcmFuZ2UgKGZpcnN0R2x5cGggb3B0aW9uKVxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuXG5AbWl4aW4gaWNvbigkZmlsZW5hbWUsICRpbnNlcnQ6IGJlZm9yZSwgJGV4dGVuZDogZmFsc2UpIHtcbiAgICAmOiN7JGluc2VydH0ge1xuICAgICAgICBAaWYgJGV4dGVuZCB7XG4gICAgICAgICAgICBAZXh0ZW5kICVpY29uO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGljb24tc3R5bGVzO1xuICAgICAgICB9XG4gICAgICAgIGNvbnRlbnQ6IGljb24tY2hhcigkZmlsZW5hbWUpO1xuICAgIH1cbn0iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gbWl4aW5zIGJ1dHRvbnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBtaXhpbiBnZW5lcmljQnV0dG9uKCRwYWRWIDogMnJlbSwgJHBhZEggOiAzcmVtLCAkZm9udFdlaWdodDo3MDApIHtcbiAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiRmb250V2VpZ2h0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBhZGRpbmc6JHBhZFYgJHBhZEg7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6MTAwJTtcbiAgfVxuICAmLmZ1bGwtd2lkdGgge1xuICAgIHdpZHRoOjEwMCU7XG4gIH1cbiAgJi5zbWFsbGVyIHtcbiAgICBAaW5jbHVkZSBwYWRWKDApO1xuICAgIGhlaWdodDo1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OjVyZW07XG4gIH1cbn1cblxuQG1peGluIGJ0biB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCdXR0b247XG4gIGJhY2tncm91bmQtY29sb3I6JGFscGhhLWNvbG9yO1xuICBjb2xvcjokd2hpdGU7XG59XG5cbkBtaXhpbiBsaW5rIHtcbiAgZm9udC13ZWlnaHQ6NzAwO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuQG1peGluIGxpbmstYWxwaGEge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgY29sb3I6JGFscGhhLWNvbG9yO1xufVxuXG5AbWl4aW4gd29iYmxlLWhvcml6b250YWwge1xuICAkZGl2aWRlciA6IDI7XG4gIEBrZXlmcmFtZXMgdmRtLXdvYmJsZS1ob3Jpem9udGFsIHtcbiAgICAjezE2LjY1IC8gJGRpdmlkZXJ9JSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoOHB4KTtcbiAgICB9XG4gICAgI3szMy4zIC8gJGRpdmlkZXJ9JSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCk7XG4gICAgfVxuICAgICN7NDkuOTUgLyAkZGl2aWRlcn0lIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpO1xuICAgIH1cbiAgICAjezY2LjYgLyAkZGl2aWRlcn0lIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KTtcbiAgICB9XG4gICAgI3s4My4yNSAvICRkaXZpZGVyfSUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDFweCk7XG4gICAgfVxuICAgIDUwJSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBhbmltYXRpb24taGFja3MoKTtcbiAgLndvYmJsZS1ob3Jpem9udGFsLWFuaW1hdGVkICYge1xuICAgIGFuaW1hdGlvbi1uYW1lOiB2ZG0td29iYmxlLWhvcml6b250YWw7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAycztcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xuICB9XG59XG5cbkBtaXhpbiB3b2JibGUtdmVydGljYWwge1xuICAkZGl2aWRlciA6IDI7XG4gIEBrZXlmcmFtZXMgdmRtLXdvYmJsZS12ZXJ0aWNhbCB7XG4gICAgI3sxNi42NSAvICRkaXZpZGVyfSUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7XG4gICAgfVxuICAgICN7MzMuMyAvICRkaXZpZGVyfSUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpO1xuICAgIH1cbiAgICAjezQ5Ljk1IC8gJGRpdmlkZXJ9JSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNHB4KTtcbiAgICB9XG4gICAgI3s2Ni42IC8gJGRpdmlkZXJ9JSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gICAgfVxuICAgICN7ODMuMjUgLyAkZGl2aWRlcn0lIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxcHgpO1xuICAgIH1cbiAgICA1MCUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgYW5pbWF0aW9uLWhhY2tzKCk7XG4gIGFuaW1hdGlvbi1uYW1lOiB2ZG0td29iYmxlLXZlcnRpY2FsO1xuICBhbmltYXRpb24tZHVyYXRpb246IDJzO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG59XG5AbWl4aW4gYm91bmNlLXRvLXJpZ2h0ICgkYmdDb2xvckFjdGl2ZSA6IHRpbnQoJGJsdWUsIDIwJSksICRjb2xvckFjdGl2ZSA6ICR3aGl0ZSkge1xuICBAaW5jbHVkZSBhbmltYXRpb24taGFja3MoKTtcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yLCBib3JkZXItY29sb3I7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRiZ0NvbG9yQWN0aXZlIDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDUwJTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41cztcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6JGNvbG9yQWN0aXZlO1xuICAgIGJvcmRlci1jb2xvcjokYmdDb2xvckFjdGl2ZTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41MiwgMS42NCwgMC4zNywgMC42Nik7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBidG5BbHBoYSB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCdXR0b247XG4gIGJvcmRlcjoxcHggc29saWQgY3VycmVudENvbG9yO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcyBlYXNlLW91dDtcbiAgJjpob3ZlciB7XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4IGluc2V0O1xuICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgkd2hpdGUsIC4xKTtcbiAgfVxufVxuXG5AbWl4aW4gYnRuQmV0YSB7XG4gIEBpbmNsdWRlIHBhZEgoMnJlbSk7XG4gIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDVyZW07XG4gIGxpbmUtaGVpZ2h0OjVyZW07XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBmb250LXdlaWdodDo1MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAqICsgJl9faWNvbiB7XG4gICAgbWFyZ2luLWxlZnQ6MXJlbTtcbiAgfVxuICAuc3Itb25seSArICZfX2ljb24ge1xuICAgIG1hcmdpbi1sZWZ0OjA7XG4gIH1cbiAgJl9faWNvbiB7XG4gICAgQGluY2x1ZGUgaWNvbihmbGVjaGUtYm91dG9uKTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBmb250LXNpemU6MnJlbTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBidG5NZW51IHtcbiAgQGluY2x1ZGUgZ2VuZXJpY0J1dHRvbigxLjVyZW0pO1xuICBib3JkZXI6M3B4IHNvbGlkICRwaW5rTGlnaHQ7XG59XG5cbkBtaXhpbiBidG5GcmllbmQge1xuICBAaW5jbHVkZSBnZW5lcmljQnV0dG9uKCRwYWRWIDogMS41cmVtLCAkZm9udFdlaWdodDo1MDApO1xuICBib3JkZXI6MXB4IHNvbGlkICRhbHBoYS1jb2xvcjtcbiAgY29sb3I6JGFscGhhLWNvbG9yO1xuICBtaW4td2lkdGg6MzByZW07XG4gIGZvbnQtc2l6ZToxLjNyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjJyZW07XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICYgcmVzZXRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbnVsLFxuaDEsXG5oMixcbmgzLFxuaDQsXG5wIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuaDEsXG5oMixcbmgzLFxuaDQge1xuICBmb250LXdlaWdodDppbmhlcml0O1xufVxuXG4qIHtcbiAgICAmLFxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIH1cbn1cblxuXG4vLyBSZXNldCB0aGUgYm94LXNpemluZ1xuKiB7XG4gIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG59XG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xufVxuXG5cbi8vIFJlc2V0IGZvbnRzIGZvciByZWxldmFudCBlbGVtZW50c1xuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbn1cblxuXG4vLyBJbWFnZXNcbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8vIE9ubHkgZGlzcGxheSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzXG4vL1xuLy8gU2VlOiBodHRwOi8vYTExeXByb2plY3QuY29tL3Bvc3RzL2hvdy10by1oaWRlLWNvbnRlbnRcblxuLnNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gIGJvcmRlcjogMDtcbn1cblxuYnV0dG9uOmZvY3VzLFxuW3R5cGU9XCJ0ZXh0XCJdOmZvY3VzLFxuW3R5cGU9XCJwYXNzd29yZFwiXTpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAmIGJhc2VcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbmh0bWwge1xuICAgIGZvbnQtc2l6ZTogNjIuNSU7IC8qIDE2cHggPiAxMHB4IChiYXNlIDEwKSAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICAgICAgZm9udC1zaXplOiA1Ni4zJTsgLyogMTZweCA+IDlweCAoYmFzZSA5KSAqL1xuICAgIH1cbn1cbmJvZHkge1xuICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplO1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBmb250LXNpemU6cmVtKDE2KTtcbiAgfVxuICBsaW5lLWhlaWdodCA6ICRiYXNlLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGJhc2UtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAmOmJlZm9yZSB7XG4gICAgZGlzcGxheTpub25lO1xuICAgIGNvbnRlbnQ6IFwic2NyZWVuLXh4c1wiO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXhzKSB7XG4gICAgICBjb250ZW50OiBcInNjcmVlbi14c1wiO1xuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgY29udGVudDogXCJzY3JlZW4tc21cIjtcbiAgICB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcbiAgICAgIGNvbnRlbnQ6IFwic2NyZWVuLW1kXCI7XG4gICAgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnKSB7XG4gICAgICBjb250ZW50OiBcInNjcmVlbi1sZ1wiO1xuICAgIH1cbiAgfVxuICAmOmFmdGVyIHtcbiAgICBkaXNwbGF5Om5vbmU7XG4gICAgY29udGVudDogXCJtb2JpbGVcIjtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgY29udGVudDogXCJkZXNrdG9wXCI7XG4gICAgfVxuICB9XG4gICYucGFnZS1kZHYge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOnVybCguLi9pbWFnZXMvYmFja2dyb3VuZC9kZHYvMTkyMHgyMzA4LmpwZyk7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtcbiAgICAgICYucGFnZS1kZHYtbGlnaHQge1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYub3ZlcmZsb3ctaGlkZGVuIHtcbiAgICBvdmVyZmxvdzpoaWRkZW47XG4gIH1cbn1cblxudWwgeyBsaXN0LXN0eWxlOiBub25lOyB9XG5cbmltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgIH1cbn1cblxuYnV0dG9uIHtcbiAgICBib3JkZXI6bm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nOjA7XG4gICAgJjpmb2N1c3tcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICB9XG59XG5cbnAge1xuICAgIG1hcmdpbjogMXJlbSAwIDA7XG4gICAgJjpmaXJzdC1jaGlsZCB7IG1hcmdpbi10b3A6IDA7IH1cbn1cblxuLnJvdyB7XG4gICYucmVtb3ZlLWd1dHRlciB7XG4gICAgQGluY2x1ZGUgZ3V0dGVyKDApO1xuICB9XG4gICYuZ3V0dGVyLTUge1xuICAgIEBpbmNsdWRlIGd1dHRlcig1cHgpO1xuICB9XG4gICYuZ3V0dGVyLTMwIHtcbiAgICBAaW5jbHVkZSBndXR0ZXIoMzBweCk7XG4gIH1cbiAgJi5pcy1mbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxufVxuXG4ucm93LWZsZXgge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgfVxuICBtYXJnaW4tbGVmdDowO1xuICBtYXJnaW4tcmlnaHQ6MDtcbiAgJiA+ICoge1xuICAgIHBhZGRpbmctbGVmdDowO1xuICAgIHBhZGRpbmctcmlnaHQ6MDtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICBvdmVyZmxvdzpoaWRkZW47IC8vIElFMTEgYnVnXG4gIH1cbn1cblxuLnJvdy10YWJsZSB7XG4gIGRpc3BsYXk6dGFibGU7XG4gIHdpZHRoOjEwMCU7XG4gIHRhYmxlLWxheW91dDpmaXhlZDtcbiAgPiAqIHtcbiAgICBkaXNwbGF5OnRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxufVxuXG5cbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLm92ZXJmbG93LWhpZGRlbiB7b3ZlcmZsb3c6aGlkZGVuO31cbi5ibG9jayB7IGRpc3BsYXk6YmxvY2s7fVxuLy8gQWxpZ25tZW50XG4udGV4dC1sZWZ0ICAgICAgICAgICB7IHRleHQtYWxpZ246IGxlZnQ7IH1cbi50ZXh0LXJpZ2h0ICAgICAgICAgIHsgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbi50ZXh0LWNlbnRlciAgICAgICAgIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4udGV4dC1qdXN0aWZ5ICAgICAgICB7IHRleHQtYWxpZ246IGp1c3RpZnk7IH1cbi50ZXh0LW5vd3JhcCAgICAgICAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4vLyBUcmFuc2Zvcm1hdGlvblxuLnRleHQtbG93ZXJjYXNlICAgICAgeyB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlOyB9XG4udGV4dC11cHBlcmNhc2UgICAgICB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbi50ZXh0LWNhcGl0YWxpemUgICAgIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cblxuXG5cbi5jb250YWluZXIge1xuICBAbWVkaWEgKG1pbi13aWR0aDogMTA4NnB4KSBhbmQgKG1heC13aWR0aDoxMzk5cHgpIHtcbiAgICAgd2lkdGg6IDk0MHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoO1xuICB9XG59XG5cbi5jb2wteHhzLWZ1bGwsXG4uY29sLXh4cy0yNCB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzKSB7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBmbG9hdDpub25lO1xuICB9XG59XG5cbi5jb2wteHhzLTEyIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMpIHtcbiAgICB3aWR0aDo1MCU7XG4gIH1cbn1cblxuLy8gY29sb25uZXMgcXVpbnRlIFxuLmNvbC14cy1maWZ0aCxcbi5jb2wtc20tZmlmdGgsXG4uY29sLW1kLWZpZnRoLFxuLmNvbC1sZy1maWZ0aCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6ICBjZWlsKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gIHBhZGRpbmctcmlnaHQ6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gIGZsb2F0OmxlZnQ7XG59XG5cbi5jb2wteHMtZmlmdGgge1xuICB3aWR0aDoyMCU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgLmNvbC1zbS1maWZ0aCB7XG4gICAgd2lkdGg6MjAlO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgLmNvbC1tZC1maWZ0aCB7XG4gICAgd2lkdGg6MjAlO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgLmNvbC1sZy1maWZ0aCB7XG4gICAgd2lkdGg6MjAlO1xuICB9XG59XG5cbi5qcy1yZWFkbW9yZS1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uanMtdGV4dC1vdmVyZmxvdyB7XG4gIG92ZXJmbG93OmhpZGRlbjtcbn1cblxuLm5vLWpzIHtcbiAgLmxhenlsb2FkIHtcbiAgICBkaXNwbGF5Om5vbmU7XG4gIH1cbn1cblxuXG4uc2hvdy10aXRsZXMge1xuICAkc2hvd1RpdGxlU3R5bGUgOiBkYXNoZWQ7XG4gICRzaG93VGl0bGVXaWR0aCA6IDNweDtcbiAgaDEge1xuICAgIG91dGxpbmUgOiAkc2hvd1RpdGxlV2lkdGggJHNob3dUaXRsZVN0eWxlIHJlZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEocmVkLDAuMSk7XG4gIH1cbiAgaDIge1xuICAgIG91dGxpbmUgOiAkc2hvd1RpdGxlV2lkdGggJHNob3dUaXRsZVN0eWxlIGJsdWU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKGJsdWUsMC4xKTtcbiAgfVxuICBoMyB7XG4gICAgb3V0bGluZSA6ICRzaG93VGl0bGVXaWR0aCAkc2hvd1RpdGxlU3R5bGUgZ3JlZW47XG4gICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKGdyZWVuLDAuMSk7XG4gIH1cbiAgaDQge1xuICAgIG91dGxpbmUgOiAkc2hvd1RpdGxlV2lkdGggJHNob3dUaXRsZVN0eWxlIG9yYW5nZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEob3JhbmdlLDAuMSk7XG4gIH1cbn1cblxuXG4vLyBjb2xzIGF1dG8tY2xlYXJcbkBtZWRpYSAobWluLXdpZHRoOiRzY3JlZW4tbGcpe1xuICAuYXV0by1jbGVhciB7XG4gICAgLmNvbC1sZy0xOm50aC1jaGlsZCgyNG4rMSl7Y2xlYXI6bGVmdDt9XG4gICAgLmNvbC1sZy0yOm50aC1jaGlsZCgxMm4rMSl7Y2xlYXI6bGVmdDt9XG4gICAgLmNvbC1sZy0zOm50aC1jaGlsZCg4bisxKXtjbGVhcjpsZWZ0O31cbiAgICAuY29sLWxnLTQ6bnRoLWNoaWxkKDZuKzEpe2NsZWFyOmxlZnQ7fVxuICAgIC5jb2wtbGctNjpudGgtY2hpbGQoNG4rMSl7Y2xlYXI6bGVmdDt9XG4gICAgLmNvbC1sZy04Om50aC1jaGlsZCgzbisxKXtjbGVhcjpsZWZ0O31cbiAgICAuY29sLWxnLTEyOm50aC1jaGlsZCgybisxKXtjbGVhcjpsZWZ0O31cbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6JHNjcmVlbi1tZCkgYW5kIChtYXgtd2lkdGg6JHNjcmVlbi1tZC1tYXgpe1xuICAuYXV0by1jbGVhciB7XG4gICAgLmNvbC1tZC0xOm50aC1jaGlsZCgyNG4rMSl7Y2xlYXI6bGVmdDt9XG4gICAgLmNvbC1tZC0yOm50aC1jaGlsZCgxMm4rMSl7Y2xlYXI6bGVmdDt9XG4gICAgLmNvbC1tZC0zOm50aC1jaGlsZCg4bisxKXtjbGVhcjpsZWZ0O31cbiAgICAuY29sLW1kLTQ6bnRoLWNoaWxkKDZuKzEpe2NsZWFyOmxlZnQ7fVxuICAgIC5jb2wtbWQtNjpudGgtY2hpbGQoNG4rMSl7Y2xlYXI6bGVmdDt9XG4gICAgLmNvbC1tZC04Om50aC1jaGlsZCgzbisxKXtjbGVhcjpsZWZ0O31cbiAgICAuY29sLW1kLTEyOm50aC1jaGlsZCgybisxKXtjbGVhcjpsZWZ0O31cbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6JHNjcmVlbi1zbSkgYW5kIChtYXgtd2lkdGg6JHNjcmVlbi1zbS1tYXgpe1xuICAuYXV0by1jbGVhciB7XG4gICAgLmNvbC1zbS0xOm50aC1jaGlsZCgyNG4rMSl7Y2xlYXI6bGVmdDt9XG4gICAgLmNvbC1zbS0yOm50aC1jaGlsZCgxMm4rMSl7Y2xlYXI6bGVmdDt9XG4gICAgLmNvbC1zbS0zOm50aC1jaGlsZCg4bisxKXtjbGVhcjpsZWZ0O31cbiAgICAuY29sLXNtLTQ6bnRoLWNoaWxkKDZuKzEpe2NsZWFyOmxlZnQ7fVxuICAgIC5jb2wtc20tNjpudGgtY2hpbGQoNG4rMSl7Y2xlYXI6bGVmdDt9XG4gICAgLmNvbC1zbS04Om50aC1jaGlsZCgzbisxKXtjbGVhcjpsZWZ0O31cbiAgICAuY29sLXNtLTEyOm50aC1jaGlsZCgybisxKXtjbGVhcjpsZWZ0O31cbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6JHNjcmVlbi14cy1tYXgpe1xuICAuYXV0by1jbGVhciB7XG4gICAgLmNvbC14cy0xOm50aC1jaGlsZCgyNG4rMSl7Y2xlYXI6bGVmdDt9XG4gICAgLmNvbC14cy0yOm50aC1jaGlsZCgxMm4rMSl7Y2xlYXI6bGVmdDt9XG4gICAgLmNvbC14cy0zOm50aC1jaGlsZCg4bisxKXtjbGVhcjpsZWZ0O31cbiAgICAuY29sLXhzLTQ6bnRoLWNoaWxkKDZuKzEpe2NsZWFyOmxlZnQ7fVxuICAgIC5jb2wteHMtNjpudGgtY2hpbGQoNG4rMSl7Y2xlYXI6bGVmdDt9XG4gICAgLmNvbC14cy04Om50aC1jaGlsZCgzbisxKXtjbGVhcjpsZWZ0O31cbiAgICAuY29sLXhzLTEyOm50aC1jaGlsZCgybisxKXtjbGVhcjpsZWZ0O31cbiAgfVxufVxuXG5cblxuLnN0eWxlLWluaGVyaXQge1xuICBmb250LXNpemU6aW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6aW5oZXJpdDtcbiAgY29sb3I6aW5oZXJpdDtcbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAmIHR5cG9ncmFwaHlcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblxuJGZvbnRQYXRoIDogJy4uL2ZvbnQvJztcblxuQGZvbnQtZmFjZSB7XG4gICAgJG5hbWUgOiAnaWNvbmZvbnQnO1xuICAgIGZvbnQtZmFtaWx5OiBcImljb25mb250XCI7XG4gICAgc3JjOiAgdXJsKCcjeyRmb250UGF0aH0jeyRuYW1lfS53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgICB1cmwoJyN7JGZvbnRQYXRofSN7JG5hbWV9LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgJG5hbWUgOiAnYXBlcmN1LWxpZ2h0JztcbiAgICBmb250LWZhbWlseTogJ0FwZXJjdSc7XG4gICAgc3JjOiAgdXJsKCcjeyRmb250UGF0aH0jeyRuYW1lfS53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgICB1cmwoJyN7JGZvbnRQYXRofSN7JG5hbWV9LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgJG5hbWUgOiAnYXBlcmN1LXJlZ3VsYXInO1xuICAgIGZvbnQtZmFtaWx5OiAnQXBlcmN1JztcbiAgICBzcmM6ICB1cmwoJyN7JGZvbnRQYXRofSN7JG5hbWV9LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICAgIHVybCgnI3skZm9udFBhdGh9I3skbmFtZX0ud29mZicpIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICAkbmFtZSA6ICdhcGVyY3UtaXRhbGljJztcbiAgICBmb250LWZhbWlseTogJ0FwZXJjdSc7XG4gICAgc3JjOiAgdXJsKCcjeyRmb250UGF0aH0jeyRuYW1lfS53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgICB1cmwoJyN7JGZvbnRQYXRofSN7JG5hbWV9LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgJG5hbWUgOiAnYXBlcmN1LWJvbGQnO1xuICAgIGZvbnQtZmFtaWx5OiAnQXBlcmN1JztcbiAgICBzcmM6ICB1cmwoJyN7JGZvbnRQYXRofSN7JG5hbWV9LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICAgIHVybCgnI3skZm9udFBhdGh9I3skbmFtZX0ud29mZicpIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICAkbmFtZSA6ICdhcGVyY3UtbWVkaXVtJztcbiAgICBmb250LWZhbWlseTogJ0FwZXJjdSc7XG4gICAgc3JjOiAgdXJsKCcjeyRmb250UGF0aH0jeyRuYW1lfS53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgICB1cmwoJyN7JGZvbnRQYXRofSN7JG5hbWV9LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgJG5hbWUgOiAnU3BlY3RyYWwtUmVndWxhcic7XG4gICAgZm9udC1mYW1pbHk6ICdTcGVjdHJhbCc7XG4gICAgc3JjOiAgdXJsKCcjeyRmb250UGF0aH0jeyRuYW1lfS53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgICB1cmwoJyN7JGZvbnRQYXRofSN7JG5hbWV9LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgJG5hbWUgOiAnU3BlY3RyYWwtSXRhbGljJztcbiAgICBmb250LWZhbWlseTogJ1NwZWN0cmFsJztcbiAgICBzcmM6ICB1cmwoJyN7JGZvbnRQYXRofSN7JG5hbWV9LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICAgIHVybCgnI3skZm9udFBhdGh9I3skbmFtZX0ud29mZicpIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICAkbmFtZSA6ICdTcGVjdHJhbC1MaWdodEl0YWxpYyc7XG4gICAgZm9udC1mYW1pbHk6ICdTcGVjdHJhbCc7XG4gICAgc3JjOiAgdXJsKCcjeyRmb250UGF0aH0jeyRuYW1lfS53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgICB1cmwoJyN7JGZvbnRQYXRofSN7JG5hbWV9LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbn0iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gaWNvbmZvbnQgdGVtcGxhdGVcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuQG1peGluIGljb24tc3R5bGVzIHtcbiAgICBmb250LWZhbWlseTogXCJpY29uZm9udFwiO1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAvLyBzcGVhazogbm9uZTsgLy8gb25seSBuZWNlc3NhcnkgaWYgbm90IHVzaW5nIHRoZSBwcml2YXRlIHVuaWNvZGUgcmFuZ2UgKGZpcnN0R2x5cGggb3B0aW9uKVxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuJWljb24ge1xuICAgIEBpbmNsdWRlIGljb24tc3R5bGVzO1xufVxuXG5AZnVuY3Rpb24gaWNvbi1jaGFyKCRmaWxlbmFtZSkge1xuICAgICRjaGFyOiBcIlwiO1xuXG4gICAgQGlmICRmaWxlbmFtZSA9PSBhZ2VuZGEge1xuICAgICAgICAkY2hhcjogXCJcXEUwMDFcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSBhc3Npc3RhbmNlIHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDAyXCI7XG4gICAgfVxuICAgIEBpZiAkZmlsZW5hbWUgPT0gYXZpb24ge1xuICAgICAgICAkY2hhcjogXCJcXEUwMDNcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSBjYXJuZXQge1xuICAgICAgICAkY2hhcjogXCJcXEUwMDRcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSBjYXJ0ZSB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAwNVwiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IGNhc3F1ZSB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAwNlwiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IGNoZWNrIHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDA3XCI7XG4gICAgfVxuICAgIEBpZiAkZmlsZW5hbWUgPT0gY2xvc2Uge1xuICAgICAgICAkY2hhcjogXCJcXEUwMDhcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSBjb25jaWVyZ2VyaWUge1xuICAgICAgICAkY2hhcjogXCJcXEUwMDlcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSBkYXRlcGlja2VyIHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDBBXCI7XG4gICAgfVxuICAgIEBpZiAkZmlsZW5hbWUgPT0gZGV2aXNlIHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDBCXCI7XG4gICAgfVxuICAgIEBpZiAkZmlsZW5hbWUgPT0gZmFjZWJvb2sge1xuICAgICAgICAkY2hhcjogXCJcXEUwMENcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSBmbGVjaGUtYm91dG9uIHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDBEXCI7XG4gICAgfVxuICAgIEBpZiAkZmlsZW5hbWUgPT0gZmxlY2hlLW5hdiB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAwRVwiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IGZsZWNoZS1zZWxlY3Qge1xuICAgICAgICAkY2hhcjogXCJcXEUwMEZcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSBmb29kaW5nIHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDEwXCI7XG4gICAgfVxuICAgIEBpZiAkZmlsZW5hbWUgPT0gZ29vZ2xlLXBsdXMge1xuICAgICAgICAkY2hhcjogXCJcXEUwMTFcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSBncHMge1xuICAgICAgICAkY2hhcjogXCJcXEUwMTJcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSBndWlsbGVtZXQtZmVybWUge1xuICAgICAgICAkY2hhcjogXCJcXEUwMTNcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSBndWlsbGVtZXQtb3V2ZXJ0IHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDE0XCI7XG4gICAgfVxuICAgIEBpZiAkZmlsZW5hbWUgPT0gaG9tZSB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAxNVwiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IGhvcmFpcmUge1xuICAgICAgICAkY2hhcjogXCJcXEUwMTZcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSBpbnN0YWdyYW0ge1xuICAgICAgICAkY2hhcjogXCJcXEUwMTdcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSBsaW5rZWRpbiB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAxOFwiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IGxpc3RlIHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDE5XCI7XG4gICAgfVxuICAgIEBpZiAkZmlsZW5hbWUgPT0gbWFpbCB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAxQVwiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IG1pbGVzIHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDFCXCI7XG4gICAgfVxuICAgIEBpZiAkZmlsZW5hbWUgPT0gcGludGVyZXN0IHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDFDXCI7XG4gICAgfVxuICAgIEBpZiAkZmlsZW5hbWUgPT0gc2Nyb2xsIHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDFEXCI7XG4gICAgfVxuICAgIEBpZiAkZmlsZW5hbWUgPT0gc2VsZWN0IHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDFFXCI7XG4gICAgfVxuICAgIEBpZiAkZmlsZW5hbWUgPT0gc2hhcmUge1xuICAgICAgICAkY2hhcjogXCJcXEUwMUZcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSBzbGlkZXItbGVmdCB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAyMFwiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IHNsaWRlci1yaWdodCB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAyMVwiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IHN0YXItaGFsZiB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAyMlwiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IHN0YXIge1xuICAgICAgICAkY2hhcjogXCJcXEUwMjNcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSB0Y2hhdCB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAyNFwiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IHRlbCB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAyNVwiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IHR3aXR0ZXIge1xuICAgICAgICAkY2hhcjogXCJcXEUwMjZcIjtcbiAgICB9XG4gICAgQGlmICRmaWxlbmFtZSA9PSB1c2VyIHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDI3XCI7XG4gICAgfVxuICAgIEBpZiAkZmlsZW5hbWUgPT0gd2lmaSB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAyOFwiO1xuICAgIH1cbiAgICBAaWYgJGZpbGVuYW1lID09IHlvdXR1YmUge1xuICAgICAgICAkY2hhcjogXCJcXEUwMjlcIjtcbiAgICB9XG5cbiAgICBAcmV0dXJuICRjaGFyO1xufVxuXG5AbWl4aW4gaWNvbigkZmlsZW5hbWUsICRpbnNlcnQ6IGJlZm9yZSwgJGV4dGVuZDogZmFsc2UpIHtcbiAgICAmOiN7JGluc2VydH0ge1xuICAgICAgICBAaWYgJGV4dGVuZCB7XG4gICAgICAgICAgICBAZXh0ZW5kICVpY29uO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGljb24tc3R5bGVzO1xuICAgICAgICB9XG4gICAgICAgIGNvbnRlbnQ6IGljb24tY2hhcigkZmlsZW5hbWUpO1xuICAgIH1cbn1cblxuXG4uaWNvbi1hZ2VuZGEge1xuICAgIEBpbmNsdWRlIGljb24oYWdlbmRhKTtcbn1cbi5pY29uLWFzc2lzdGFuY2Uge1xuICAgIEBpbmNsdWRlIGljb24oYXNzaXN0YW5jZSk7XG59XG4uaWNvbi1hdmlvbiB7XG4gICAgQGluY2x1ZGUgaWNvbihhdmlvbik7XG59XG4uaWNvbi1jYXJuZXQge1xuICAgIEBpbmNsdWRlIGljb24oY2FybmV0KTtcbn1cbi5pY29uLWNhcnRlIHtcbiAgICBAaW5jbHVkZSBpY29uKGNhcnRlKTtcbn1cbi5pY29uLWNhc3F1ZSB7XG4gICAgQGluY2x1ZGUgaWNvbihjYXNxdWUpO1xufVxuLmljb24tY2hlY2sge1xuICAgIEBpbmNsdWRlIGljb24oY2hlY2spO1xufVxuLmljb24tY2xvc2Uge1xuICAgIEBpbmNsdWRlIGljb24oY2xvc2UpO1xufVxuLmljb24tY29uY2llcmdlcmllIHtcbiAgICBAaW5jbHVkZSBpY29uKGNvbmNpZXJnZXJpZSk7XG59XG4uaWNvbi1kYXRlcGlja2VyIHtcbiAgICBAaW5jbHVkZSBpY29uKGRhdGVwaWNrZXIpO1xufVxuLmljb24tZGV2aXNlIHtcbiAgICBAaW5jbHVkZSBpY29uKGRldmlzZSk7XG59XG4uaWNvbi1mYWNlYm9vayB7XG4gICAgQGluY2x1ZGUgaWNvbihmYWNlYm9vayk7XG59XG4uaWNvbi1mbGVjaGUtYm91dG9uIHtcbiAgICBAaW5jbHVkZSBpY29uKGZsZWNoZS1ib3V0b24pO1xufVxuLmljb24tZmxlY2hlLW5hdiB7XG4gICAgQGluY2x1ZGUgaWNvbihmbGVjaGUtbmF2KTtcbn1cbi5pY29uLWZsZWNoZS1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIGljb24oZmxlY2hlLXNlbGVjdCk7XG59XG4uaWNvbi1mb29kaW5nIHtcbiAgICBAaW5jbHVkZSBpY29uKGZvb2RpbmcpO1xufVxuLmljb24tZ29vZ2xlLXBsdXMge1xuICAgIEBpbmNsdWRlIGljb24oZ29vZ2xlLXBsdXMpO1xufVxuLmljb24tZ3BzIHtcbiAgICBAaW5jbHVkZSBpY29uKGdwcyk7XG59XG4uaWNvbi1ndWlsbGVtZXQtZmVybWUge1xuICAgIEBpbmNsdWRlIGljb24oZ3VpbGxlbWV0LWZlcm1lKTtcbn1cbi5pY29uLWd1aWxsZW1ldC1vdXZlcnQge1xuICAgIEBpbmNsdWRlIGljb24oZ3VpbGxlbWV0LW91dmVydCk7XG59XG4uaWNvbi1ob21lIHtcbiAgICBAaW5jbHVkZSBpY29uKGhvbWUpO1xufVxuLmljb24taG9yYWlyZSB7XG4gICAgQGluY2x1ZGUgaWNvbihob3JhaXJlKTtcbn1cbi5pY29uLWluc3RhZ3JhbSB7XG4gICAgQGluY2x1ZGUgaWNvbihpbnN0YWdyYW0pO1xufVxuLmljb24tbGlua2VkaW4ge1xuICAgIEBpbmNsdWRlIGljb24obGlua2VkaW4pO1xufVxuLmljb24tbGlzdGUge1xuICAgIEBpbmNsdWRlIGljb24obGlzdGUpO1xufVxuLmljb24tbWFpbCB7XG4gICAgQGluY2x1ZGUgaWNvbihtYWlsKTtcbn1cbi5pY29uLW1pbGVzIHtcbiAgICBAaW5jbHVkZSBpY29uKG1pbGVzKTtcbn1cbi5pY29uLXBpbnRlcmVzdCB7XG4gICAgQGluY2x1ZGUgaWNvbihwaW50ZXJlc3QpO1xufVxuLmljb24tc2Nyb2xsIHtcbiAgICBAaW5jbHVkZSBpY29uKHNjcm9sbCk7XG59XG4uaWNvbi1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIGljb24oc2VsZWN0KTtcbn1cbi5pY29uLXNoYXJlIHtcbiAgICBAaW5jbHVkZSBpY29uKHNoYXJlKTtcbn1cbi5pY29uLXNsaWRlci1sZWZ0IHtcbiAgICBAaW5jbHVkZSBpY29uKHNsaWRlci1sZWZ0KTtcbn1cbi5pY29uLXNsaWRlci1yaWdodCB7XG4gICAgQGluY2x1ZGUgaWNvbihzbGlkZXItcmlnaHQpO1xufVxuLmljb24tc3Rhci1oYWxmIHtcbiAgICBAaW5jbHVkZSBpY29uKHN0YXItaGFsZik7XG59XG4uaWNvbi1zdGFyIHtcbiAgICBAaW5jbHVkZSBpY29uKHN0YXIpO1xufVxuLmljb24tdGNoYXQge1xuICAgIEBpbmNsdWRlIGljb24odGNoYXQpO1xufVxuLmljb24tdGVsIHtcbiAgICBAaW5jbHVkZSBpY29uKHRlbCk7XG59XG4uaWNvbi10d2l0dGVyIHtcbiAgICBAaW5jbHVkZSBpY29uKHR3aXR0ZXIpO1xufVxuLmljb24tdXNlciB7XG4gICAgQGluY2x1ZGUgaWNvbih1c2VyKTtcbn1cbi5pY29uLXdpZmkge1xuICAgIEBpbmNsdWRlIGljb24od2lmaSk7XG59XG4uaWNvbi15b3V0dWJlIHtcbiAgICBAaW5jbHVkZSBpY29uKHlvdXR1YmUpO1xufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICYgYnV0dG9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmJ1dHRvbiB7XG4gIEBpbmNsdWRlIGJ0bjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuM3MgZWFzZS1vdXQ7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6dGludCgkYmx1ZSwgMTUlKVxuICB9XG59XG5cbi8qIFdvYmJsZSBIb3Jpem9udGFsICovXG4ud29iYmxlLWhvcml6b250YWwge1xuICBAaW5jbHVkZSB3b2JibGUtaG9yaXpvbnRhbDtcbn1cblxuLyogV29iYmxlIHZlcnRpY2FsICovXG4ud29iYmxlLXZlcnRpY2FsIHtcbiAgQGluY2x1ZGUgd29iYmxlLXZlcnRpY2FsO1xufVxuXG5cbi8qIEJvdW5jZSBUbyBSaWdodCAqL1xuLmJvdW5jZS10by1yaWdodCB7XG4gIEBpbmNsdWRlIGJvdW5jZS10by1yaWdodDtcbn1cblxuXG4uYnV0dG9uLWFscGhhIHtcbiAgQGluY2x1ZGUgYnRuQWxwaGE7XG4gICYuYm91bmNlLXRvLXJpZ2h0IHtcbiAgICBAaW5jbHVkZSBib3VuY2UtdG8tcmlnaHQocmdiYSgkZ3JleURhcmssLjUpKTtcbiAgfVxufVxuXG4uYnV0dG9uLWJldGEge1xuICBAaW5jbHVkZSBidG5CZXRhO1xufVxuXG4uYnV0dG9uLW1lbnUge1xuICBAaW5jbHVkZSBidG5NZW51O1xufVxuXG4ubGluayB7XG4gIEBpbmNsdWRlIGxpbms7XG59XG5cbi5saW5rLWFscGhhIHtcbiAgQGluY2x1ZGUgbGluay1hbHBoYTtcbn1cblxuLmxpbmstYmV0YSB7XG4gIGZvbnQtd2VpZ2h0OjcwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIGxldHRlci1zcGFjaW5nOiAuMnJlbTtcbiAgY29sb3I6JGFscGhhLWNvbG9yO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6MnJlbTtcbn1cblxuLmxpbmstYXJyb3cge1xuICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgb3ZlcmZsb3c6aGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjb2xvcjokYWxwaGEtY29sb3I7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHNwYW4ge1xuICAgIEBpbmNsdWRlIGljb24oZmxlY2hlLWJvdXRvbiwgYWZ0ZXIpO1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIC5uby10b3VjaCAmIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnMgZWFzZS1vdXQ7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygtMTAwJSArIDIxcHgpKTsgLy8gMTZweCBlZ2FsZSBsYSBsYXJnZXVyIGRlIGxhIGZsZWNoZVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBtYXJnaW4tbGVmdDo0cHg7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgZm9udC1zaXplOjJyZW07XG4gICAgfVxuICB9XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgJiBmb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuJGZvcm0tYm9yZGVyLWNvbG9yOiAjZTJlM2UzO1xuJGZvcm0tbGluZS1oZWlnaHQgOiAxLjMzMzMzMzM7XG5cbkBtaXhpbiB0ZXh0RXJyb3Ige1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zdHlsZTppdGFsaWM7XG4gIGNvbG9yOiRlcnJvci1jb2xvcjtcbiAgZm9udC13ZWlnaHQ6NDAwO1xuICBtYXJnaW4tdG9wOjAuNXJlbTtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIHBhZGRpbmctbGVmdDoxNnB4O1xufVxuXG5cbmxhYmVsIHtcbiAgY3Vyc29yOnBvaW50ZXI7XG4gICYuZXJyb3Ige1xuICAgIEBpbmNsdWRlIHRleHRFcnJvcjtcbiAgfVxufVxuXG4uZmllbGRzZXQge1xuICBAaW5jbHVkZSBwYWRWKDJyZW0pO1xuICAmICsgJiB7XG4gICAgYm9yZGVyLXRvcDoxcHggc29saWQgJGdyZXk7XG4gIH1cbn1cblxuLmZvcm0tbGFiZWwge1xuICBmb250LXdlaWdodDo0MDA7XG4gIGZvbnQtc2l6ZTpyZW0oMTYpO1xuICAuc21hbGxlciB7XG4gICAgZm9udC1zaXplOjAuN2VtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4uZm9ybS1ob3Jpem9udGFsIHtcbiAgLmNvbnRyb2wtbGFiZWwge1xuICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gICAgcGFkZGluZy10b3A6IDE0cHg7XG4gIH1cbn1cblxuLmZvcm0taW5mbyB7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIG1hcmdpbi10b3A6MC41cmVtO1xuICBwYWRkaW5nLWxlZnQ6MTZweDtcbiAgZm9udC1zaXplOjAuODVlbTtcbiAgZm9udC1zdHlsZTppdGFsaWM7XG59XG5cbkBtaXhpbiBmb3JtQ29udHJvbCB7XG4gIGZvbnQtc2l6ZToxNnB4O1xuICBwYWRkaW5nOiAxMHB4IDE2cHg7XG4gIGhlaWdodDogNDZweDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLWxpbmUtaGVpZ2h0O1xufVxuXG4uZm9ybS1jb250cm9sIHtcbiAgQGluY2x1ZGUgZm9ybUNvbnRyb2w7XG4gIGNvbG9yOiRiYXNlLWNvbG9yO1xuICBib3JkZXItY29sb3I6JGZvcm0tYm9yZGVyLWNvbG9yO1xuICBib3gtc2hhZG93Om5vbmU7XG4gIEBpbmNsdWRlIHBsYWNlaG9sZGVye1xuICAgIGNvbG9yOiRiYXNlLWNvbG9yO1xuICB9XG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyLWNvbG9yOiRibHVlO1xuICAgIGJveC1zaGFkb3c6bm9uZTtcbiAgICBAaW5jbHVkZSBwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjpyZ2JhKCRiYXNlLWNvbG9yLC4yKVxuICAgIH1cbiAgfVxuICAmLmlucHV0LXZhbGlkYXRpb24tZXJyb3Ige1xuICAgIGJvcmRlci1jb2xvcjokZXJyb3ItY29sb3IhaW1wb3J0YW50O1xuICB9XG4gIC5lcnJvciAmIHtcbiAgICBib3JkZXItY29sb3I6JGVycm9yLWNvbG9yO1xuICB9XG4gIC5zdWNjZXNzICYge1xuICAgIGJvcmRlci1jb2xvcjokc3VjY2Vzcy1jb2xvcjtcbiAgfVxufVxuXG4uZmllbGQtdmFsaWRhdGlvbi1lcnJvciB7XG4gIEBpbmNsdWRlIHRleHRFcnJvcjtcbn1cblxuLnZhbGlkYXRpb25TdW1tYXJ5RXJyb3Ige1xuICBjb2xvcjokZXJyb3ItY29sb3I7XG4gIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgc3BhbiB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOjVweDtcbiAgfVxuICB1bCB7XG4gICAgQGluY2x1ZGUgYnVsbGV0TGlzdDtcbiAgfVxufVxuXG4udmFsaWRhdGlvbi1zdW1tYXJ5LXZhbGlkIHtcblx0Y29sb3I6I2ZmNGQ0MjtcbiAgICBkaXNwbGF5Om5vbmU7XG59XG5cblxuLmZvcm0tY291bnRlciB7XG4gIGZvbnQtc2l6ZToxLjJyZW07XG59XG5cbi5mb3JtLWNvbnRyb2wtYWxwaGEge1xuICBwYWRkaW5nOjEuMnJlbSAycmVtO1xuICBoZWlnaHQ6IDVyZW07XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OjUwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICBib3JkZXItcmFkaXVzOjA7XG4gIEBpbmNsdWRlIHBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGJhc2UtY29sb3I7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgbGluZS1oZWlnaHQ6MS44O1xuICB9XG4gIC50b3VjaCAme1xuICAgIGZvbnQtc2l6ZTpyZW0oMTYpO1xuICB9XG59XG5cblxuLmZvcm0tY29udGV4dCB7XG4gIFtjbGFzc149J2NvbC0nXSArIFtjbGFzc149J2NvbC0nXSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIH1cbiAgfVxuICAucm93ICsgLnJvdyB7XG4gICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgfVxufVxuXG4vLyB0eXBlIGRhdGVcbi5kYXRlLXBpY2tlciB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6dXJsKCcuLi9pbWFnZXMvaWNvbi9kYXRlcGlja2VyLnN2ZycpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDEwMCUgLSAxMHB4KSA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogM3JlbTtcbiAgcGFkZGluZy1yaWdodDogNXJlbTtcblxufVxuaW5wdXRbdHlwZT1cImRhdGVcIl0uZm9ybS1jb250cm9sLmRhdGUtcGlja2Vye1xuICBsaW5lLWhlaWdodDokZm9ybS1saW5lLWhlaWdodDtcbn1cblxuLy8gdHlwZSByYWRpb1xuLnJhZGlvLWdyb3VwIHtcbiAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICYgKyAmIHtcbiAgICBtYXJnaW4tbGVmdDoxcmVtO1xuICB9XG59XG5cblxuaW5wdXRbdHlwZT1yYWRpb10ucmFkaW8ge1xuICBkaXNwbGF5OiBub25lO1xuICB+IGxhYmVsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgbGluZS1oZWlnaHQ6IDIuNHJlbTtcbiAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3JkZXItcmFkaXVzOjUwJTtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdG9wOiAycHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZm9ybS1ib3JkZXItY29sb3I7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgdG9wOiA2cHg7XG4gICAgICBsZWZ0OiA0cHg7XG4gICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICB3aWR0aDogMTJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICAgIH1cbiAgfVxuICAmLnJpZ2h0LXNpZGUge1xuICAgIH4gbGFiZWwge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IDRweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJjpjaGVja2VkIHtcbiAgICB+IGxhYmVsIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWxwaGEtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmlucHV0W3R5cGU9cmFkaW9dLnJhZGlvLWFscGhhIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgfiBsYWJlbCB7XG4gICAgQGluY2x1ZGUgZm9ybUNvbnRyb2w7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGZvcm0tYm9yZGVyLWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6NHB4O1xuICAgIG1pbi13aWR0aDo3cmVtO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICB9XG4gICY6Y2hlY2tlZCB7XG4gICAgfiBsYWJlbCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWxwaGEtY29sb3I7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgfVxuICB9XG59XG4vLyBjaGVja2JveFxuaW5wdXRbdHlwZT1jaGVja2JveF0uY2hlY2tib3gge1xuICBkaXNwbGF5OiBub25lO1xuICB+IGxhYmVsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgbGluZS1oZWlnaHQ6IDIuNHJlbTtcbiAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICBAaW5jbHVkZSBpY29uKGNoZWNrLCBhZnRlcik7XG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMnB4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRhbHBoYS1jb2xvcjtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgIH1cbiAgfXNcbiAgJi5yaWdodC1zaWRlIHtcbiAgICB+IGxhYmVsIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgfVxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmOmNoZWNrZWQge1xuICAgIH4gbGFiZWwge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbG9yOiAkYWxwaGEtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gdHlwZSBudW1iZXJcbmlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xufVxuLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gIGJvcmRlci1jb2xvcjogJGZvcm0tYm9yZGVyLWNvbG9yO1xuICBmb250LXNpemU6MnJlbTtcbiAgY3Vyc29yOnBvaW50ZXI7XG59XG5cbi8vIHRleHRhcmVhXG50ZXh0YXJlYSB7XG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cblxuLy8gZm9ybSBzZWN0aW9uXG4uZm9ybS1zZWN0aW9uIHtcbiAgJiArICYge1xuICAgIG1hcmdpbi10b3A6NHJlbTtcbiAgfVxuICAmX19oZWFkZXIge1xuICAgIGRpc3BsYXk6dGFibGU7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JleTtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgfVxuICB9XG4gICZfX2hlYWRlci10aXRsZSB7XG4gICAgZGlzcGxheTp0YWJsZS1jZWxsO1xuICAgIGZvbnQtc2l6ZTozcmVtO1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICBjb2xvcjokYmx1ZTtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICB9XG4gIH1cbiAgJl9faGVhZGVyLXRleHQge1xuICAgIGRpc3BsYXk6dGFibGUtY2VsbDtcbiAgICB0ZXh0LWFsaWduOnJpZ2h0O1xuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIH1cbiAgfVxuICAmX19zdWJ0aXRsZSB7XG4gICAgQGluY2x1ZGUgbWFyVig0cmVtLCAycmVtKTtcbiAgICBmb250LXdlaWdodDo3MDA7XG4gICAgZm9udC1zaXplOjIuMnJlbTtcbiAgfVxufVxuXG4vLyBib3ggc2VjdGlvblxuLmJveC1zZWFyY2gge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6MC41cmVtO1xuICAmX19mb3JtLWdyb3VwIHtcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIEBpbmNsdWRlIHBhZEgoMXJlbSk7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAmICsgJjpiZWZvcmUge1xuICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJhc2UtY29sb3I7XG4gICAgICAgIHdpZHRoOjFweDtcbiAgICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICAgIHRvcDowO1xuICAgICAgICBsZWZ0Oi0ycHg7XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIEBpbmNsdWRlIHBhZFYoMC41cmVtKTtcbiAgICB9XG4gIH1cbiAgJl9fbGFiZWwge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgdGV4dC1hbGlnbjpsZWZ0O1xuICAgIGNvbG9yOiRncmV5RGFyaztcbiAgICBmb250LXdlaWdodDo1MDA7XG4gICAgZm9udC1zaXplOjEuNnJlbTtcbiAgfVxuICAmX19zdWJtaXQge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICB9XG4gIH1cbn1cblxuXG4uaW50bC10ZWwtaW5wdXQge1xuICB3aWR0aDoxMDAlO1xufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAmIGNvbW1vblxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmgyIHtcbiAgZGlzcGxheTpibG9jaztcbiAgZm9udC1zaXplOjVyZW07XG4gIGZvbnQtd2VpZ2h0OjcwMDtcbiAgbGluZS1oZWlnaHQ6MS4xO1xuICBtYXJnaW4tYm90dG9tOjAuNXJlbTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgZm9udC1zaXplOnJlbSgzMCk7XG4gIH1cbn1cblxuLmgyLWFscGhhIHtcbiAgZGlzcGxheTpibG9jaztcbiAgZm9udC1zaXplOjRyZW07XG4gIGZvbnQtd2VpZ2h0OjMwMDtcbiAgbGluZS1oZWlnaHQ6MS4xO1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBmb250LXNpemU6cmVtKDI1KTtcbiAgfVxufVxuXG4uc3VidGl0bGUge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LTI7XG4gIGZvbnQtc2l6ZToycmVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgZm9udC1zaXplOnJlbSgxNCk7XG4gIH1cbn1cblxuXG4uaGVhZGVyLWJveCB7XG4gIHRleHQtYWxpZ246Y2VudGVyO1xuICBtYXJnaW4tYm90dG9tOjNyZW07XG59XG5cbi5hY3Rpb25zIHtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gIG1hcmdpbi10b3A6JGJhc2UtbWFyZ2luO1xufVxuXG4ubm9NYXJnaW5Ub3Age1xuICBtYXJnaW4tdG9wOjA7XG59XG5cbi50ZXh0LWFscGhhIHtcbiAgY29sb3I6JGFscGhhLWNvbG9yO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBib3JkZXItbGVmdDo1cHggc29saWQgJGFscGhhLWNvbG9yO1xuICBwYWRkaW5nLWxlZnQ6MS41cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuXG4ucGFnZXIge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICYgPiBsaSB7XG4gICAgZmxvYXQ6bGVmdDtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAmICsgbGkge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OlwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmFzZS1jb2xvcjtcbiAgICAgICAgd2lkdGg6MnB4O1xuICAgICAgICBoZWlnaHQ6MS41cmVtO1xuICAgICAgICB0b3A6NDglO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB9XG4gICAgfVxuICAgIGEge1xuICAgICAgQGluY2x1ZGUgcGFkSCgwLjdyZW0pO1xuICAgICAgZm9udC1zaXplOjJyZW07XG4gICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBjb2xvcjokYmx1ZTtcbiAgICAgICAgLnBhZ2UtbWFnICZ7XG4gICAgICAgICAgY29sb3I6JHBpbmtMaWdodDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi5idWxsZXQtbGlzdCB7XG4gIEBpbmNsdWRlIGJ1bGxldExpc3Q7IFxufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICYgYm94XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi8vIGNvbW11blxuQGltcG9ydCAnY29tcG9uZW50cy9jb25maWV6LW5vdXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9uZXdzbGV0dGVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3VyLWNhcnRlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvaW50cm8nO1xuQGltcG9ydCAnY29tcG9uZW50cy9taW5pLWludHJvJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FybmV0LXZveWFnZSc7XG5cbi8vIHNwZWNpZmlxdWUgYWNjdWVpbFxuQGltcG9ydCAnY29tcG9uZW50cy9tb25kZS1zZXJ2aWNlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbW9uZGUtZW52aWVzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbW9uZGUtaW1hZ2luYXRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9ub3V2ZWF1eC12b3lhZ2VzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWN0dWFsaXRlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcGx1cy1sb2luJztcblxuLy8gc3BlY2lmaXF1ZSBwYXlzXG5AaW1wb3J0ICdjb21wb25lbnRzL3NlcnZpY2VzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvaWRlZXMtdm95YWdlcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3JlZ2lvbnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9lbnZpZXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy90ZW1vaWduYWdlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZ3VpZGUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9taWV1eC1wcmVwYXJlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2lkZWVzLWFzc29jaWVlcyc7XG5cbi8vIHNwZWNpZmlxdWUgcHJvZHVpdFxuQGltcG9ydCAnY29tcG9uZW50cy92b3VzLWFpbWVyZXonO1xuQGltcG9ydCAnY29tcG9uZW50cy9pdGluZXJhaXJlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYS1sYS1jYXJ0ZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1ZGdldCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL25vcy1leHBlcnRzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY29udGFjdCc7XG5cbi8vIHNwZWNpZmlxdWUgcmVzdWx0YXRzXG5AaW1wb3J0ICdjb21wb25lbnRzL3JlY2hlcmNoZSc7XG5cbi8vIHNwZWNpZmlxdWUgZ3VpZGVcbkBpbXBvcnQgJ2NvbXBvbmVudHMvaW5mb3MtcGF5cyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3F1YW5kLXBhcnRpcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Jvbm5lcy1yYWlzb25zJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdXRpbGUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9hLWRlY291dnJpcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3ZveWFnZXMtcGF5cyc7XG5cbi8vIHNwZWNpZmlxdWUgZ3VpZGUgYXJ0aWNsZVxuQGltcG9ydCAnY29tcG9uZW50cy9hcnRpY2xlcyc7XG5cbi8vIHNwZWNpZmlxdWUgY29uc2VpbGxlcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvaW50cm8tY29uc2VpbGxlcnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jb25zZWlsbGVycyc7XG5cbi8vIHNwZWNpZmlxdWUgY29uc2VpbGxlcnMgcGF5c1xuQGltcG9ydCAnY29tcG9uZW50cy9pbnRlcnZpZXdzJztcblxuLy8gc3BlY2lmaXF1ZSBjb25zZWlsbGVycyBpbnRlcnZpZXdcbkBpbXBvcnQgJ2NvbXBvbmVudHMvaW50ZXJ2aWV3LWRldGFpbCc7XG5cbi8vIHNwZWNpZmlxdWUgYXZpcyBjbGllbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL2F2aXMnO1xuXG4vLyBzcGVjaWZpcXVlIGVudmllc1xuQGltcG9ydCAnY29tcG9uZW50cy9lbnZpZXMtbW9tZW50JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZW52aWVzLXRoZW1lJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZGVjb25uZWN0ZXInO1xuLy9AaW1wb3J0ICdjb21wb25lbnRzL25vcy1vcmllbnRldXJzJztcblxuLy8gc3BlY2lmaXF1ZSByZWNoZXJjaGVcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZGVzdGluYXRpb25zLWZhdm9yaXRlcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NhaXNvbnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9vbnBhcnRvdSc7XG5cbi8vIHNwZWNpZmlxdWUgY2lyY3VpdFxuQGltcG9ydCAnY29tcG9uZW50cy9pZGVlcy1jaXJjdWl0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9wLWRlc3RpbmF0aW9ucyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Jyb2NodXJlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZGl4LWJvbm5lcy1yYWlzb25zJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2VydmljZXMtcGx1cyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL29mZnJlcy1ldC1hdHRlbnRpb25zJztcblxuLy8gc3BlY2lmaXF1ZSBjaGVxdWVzIGNhZGVhdXhcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcHJlc2VudGF0aW9uLWNoZXF1ZXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jb21tZW50LWNhLW1hcmNoZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NoZXF1ZXMtdHVubmVsJztcblxuLy8gc3BlY2lmaXF1ZSBERFZcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZGR2JztcblxuLy8gc3BlY2lmaXF1ZSBhZ2VuY2VcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbm9zLWFnZW5jZXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9zZXJ2aWNlLWNsaWVudCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3ByZXNzZS1ldC10ZWNobmlxdWUnO1xuXG4vLyBzcGVjaWZpcXVlIGFnZW5jZSBkZXRhaWxcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWdlbmNlLWFjY2VzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWdlbmNlLXZpc2l0ZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FnZW5jZS1ldmVuZW1lbnRzJztcblxuLy8gc3BlY2lmaXF1ZSBsaXN0ZSBtYXJpYWdlXG5AaW1wb3J0ICdjb21wb25lbnRzL3ByZXNlbnRhdGlvbi1tYXJpYWdlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYm9ubmVzLXJhaXNvbnMtbWFyaWFnZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2F2YW50YWdlcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3BhcnRpY2lwYXRpb24tY2FkZWF1JztcblxuLy8gc3BlY2lmaXF1ZSBlc3BhY2UgY2xpZW50XG5AaW1wb3J0ICdjb21wb25lbnRzL2VzcGFjZS1jbGllbnQnO1xuXG4vLyBzcGVjaWZpcXVlIGVudmllXG5AaW1wb3J0ICdjb21wb25lbnRzL2Vudmllcy1wYXItcGF5cyc7XG5cbi8vIHNwZWNpZmlxdWUgc2Fpc29uc1xuQGltcG9ydCAnY29tcG9uZW50cy9zYWlzb24nO1xuXG4vLyBzcGVjaWZpcXVlIGJyb2NodXJlc1xuQGltcG9ydCAnY29tcG9uZW50cy9ub3MtYnJvY2h1cmVzJztcblxuLy8gc3BlY2lmaXF1ZSBlc3ByaXQtdm95YWdldXJzXG5AaW1wb3J0ICdjb21wb25lbnRzL2xlLWZvb2RpbmcnO1xuQGltcG9ydCAnY29tcG9uZW50cy9ub3MtbWFpc29ucyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2xhLXByZXNzZS1lbi1wYXJsZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3ZveWFnZS1zdXItbWVzdXJlJztcblxuXG4vLyBzcGVjaWZpcXVlIHZhbGlzZSBpZMOpYWxlXG5AaW1wb3J0ICdjb21wb25lbnRzL3ZhbGlzZS1pZGVhbGUnO1xuXG4vLyBzcGVjaWZpcXVlIGxpYnJhaXJpZVxuQGltcG9ydCAnY29tcG9uZW50cy9saWJyYWlyaWUnO1xuXG4vLyBzcGVjaWZpcXVlIHZhbGV1ciBham91dGVlXG5AaW1wb3J0ICdjb21wb25lbnRzL3ZhbGV1ci1ham91dGVlJztcblxuLy8gc3BlY2lmaXF1ZSBsaWtlIGEgZnJpZW5kXG5AaW1wb3J0ICdjb21wb25lbnRzL2ZyaWVuZHMnO1xuXG4vLyBzcGVjaWZpcXVlIGNvbmNpZXJnZXJpZVxuQGltcG9ydCAnY29tcG9uZW50cy9jb25jaWVyZ2VyaWUnO1xuXG4vLyBzcGVjaWZpcXVlIGNlIHF1ZSBub3VzIGZhaXNvbnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbm91cy1mYWlzb25zJzsiLCIuYm94LWNvbmZpZXotbm91cyB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gICZfX2xpc3Qge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiRzY3JlZW4tc20tbWF4ICkge1xuICAgICAgQGluY2x1ZGUgbWFySCg1ZW0pO1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cykge1xuICAgICAgQGluY2x1ZGUgbWFySCgtMS41cmVtKTtcbiAgICB9XG4gICAgLnNsaWNrLWFycm93IHtcbiAgICAgIHRvcDogMi42cmVtO1xuICAgIH1cbiAgfVxuICAucGFnZS1kZHYtbGlnaHQgJiB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG59XG4uYm94LWNvbmZpZXotaXRlbSB7XG4gICRiIDogJjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBAaW5jbHVkZSBwYWRIKDNyZW0pO1xuICAmX19pbmRleCB7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFscGhhLWNvbG9yO1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICB3aWR0aDo1cmVtO1xuICAgIGhlaWdodDo1cmVtO1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIGJvcmRlci1yYWRpdXM6NTAlO1xuICAgIGZvbnQtc2l6ZToycmVtO1xuICAgIHBhZGRpbmc6MnB4O1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gICAgZm9udC1zaXplOjIuNnJlbTtcbiAgICBsaW5lLWhlaWdodDo0LjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTozcmVtO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgaGVpZ2h0OjNweDtcbiAgICAgIHdpZHRoOmNhbGMoMTAwJSArIDJyZW0pO1xuICAgICAgQGluY2x1ZGUgbWFySCgtMXJlbSk7XG4gICAgICBsZWZ0OjA7XG4gICAgICB0b3A6NTAlO1xuICAgICAgei1pbmRleDotMTtcbiAgICB9XG4gIH1cbiAgJl9faW5kZXgtaW5uZXIge1xuICAgIHdpZHRoOjEwMCU7XG4gICAgaGVpZ2h0OjEwMCU7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBib3JkZXItcmFkaXVzOjUwJTtcbiAgICBib3JkZXI6MXB4IGRvdHRlZCAkd2hpdGU7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6JHNjcmVlbi1zbSApIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgICAgdHJhbnNmb3JtOnNjYWxlKDIpO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1vdXQ7XG4gICAgICAuaW5kZXgtMiAme1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjVzO1xuICAgICAgfVxuICAgICAgLmluZGV4LTMgJntcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMXM7XG4gICAgICB9XG4gICAgICAuY29uZmllei1ub3VzLWlzLWFuaW1hdGVkICYge1xuICAgICAgICB0cmFuc2Zvcm06c2NhbGUoMSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICB9XG4gICZfX3RpdGxlIHtcbiAgICBmb250LXNpemU6MS44cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjJyZW07XG4gICAgQG1lZGlhIChtaW4td2lkdGg6JHNjcmVlbi1zbSApIHtcbiAgICAgIHRyYW5zZm9ybTp0cmFuc2xhdGVZKDNyZW0pO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2Utb3V0O1xuICAgICAgLmluZGV4LTEgJntcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xcztcbiAgICAgIH1cbiAgICAgIC5pbmRleC0yICZ7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuNnM7XG4gICAgICB9XG4gICAgICAuaW5kZXgtMyAme1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAxLjFzO1xuICAgICAgfVxuICAgICAgLmNvbmZpZXotbm91cy1pcy1hbmltYXRlZCAmIHtcbiAgICAgICAgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICZfX3RleHQge1xuICAgIEBpbmNsdWRlIG1hckgoYXV0byk7XG4gICAgbWF4LXdpZHRoOjI4cmVtO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiRzY3JlZW4tc20gKSB7XG4gICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlWSgzcmVtKTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLW91dDtcbiAgICAgIC5pbmRleC0xICZ7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMnM7XG4gICAgICB9XG4gICAgICAuaW5kZXgtMiAme1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjdzO1xuICAgICAgfVxuICAgICAgLmluZGV4LTMgJntcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMS4ycztcbiAgICAgIH1cbiAgICAgIC5jb25maWV6LW5vdXMtaXMtYW5pbWF0ZWQgJiB7XG4gICAgICAgIHRyYW5zZm9ybTp0cmFuc2xhdGVZKDApO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgfVxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAuYm94LWNvbmZpZXotaXRlbV9faW5kZXgge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIHdpZHRoOjQ5OXJlbTtcbiAgICAgICAgaGVpZ2h0OjA7XG4gICAgICAgIGJvcmRlci10b3A6MXB4IGRvdHRlZCAkYmxhY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOjUwJTtcbiAgICAgICAgbGVmdDo1MCU7XG4gICAgICAgIHotaW5kZXg6LTI7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgLmJveC1jb25maWV6LWl0ZW1fX2luZGV4IHtcbiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIHdpZHRoOjQ5OXJlbTtcbiAgICAgICAgaGVpZ2h0OjA7XG4gICAgICAgIGJvcmRlci10b3A6M3B4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6NTAlO1xuICAgICAgICBsZWZ0OjUwJTtcbiAgICAgICAgei1pbmRleDotMjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5ib3gtbmV3c2xldHRlciB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gIGJhY2tncm91bmQtY29sb3I6JGdyZXlWZXJ5RGFyaztcbiAgY29sb3I6JHdoaXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZToyLjdyZW07XG4gIC5wYWdlLWRkdi1saWdodCAmIHtcbiAgICBkaXNwbGF5Om5vbmU7XG4gIH1cbiAgLnBhZ2UtZGR2LWNvbmZpcm1hdGlvbiAmIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICB9XG4gICZfX2xhYmVsIHtcbiAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgfVxuICB9XG4gICZfX2lucHV0IHtcbiAgICBAaW5jbHVkZSBtYXJIKDFyZW0pO1xuICAgIEBpbmNsdWRlIHBhZEgoMC41cmVtKTtcbiAgICBjb2xvcjokcGlua0xpZ2h0O1xuICAgIGJvcmRlcjpub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIG1pbi13aWR0aDozMHJlbTtcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2Utb3V0O1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgICAgQGluY2x1ZGUgbWFyVigwLjVyZW0pO1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgICBwYWRkaW5nLWxlZnQ6MDtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgfVxuICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVye1xuICAgICAgY29sb3I6JHBpbmtMaWdodDtcbiAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICAgIH1cbiAgICB9O1xuICAgICY6Zm9jdXMge1xuXG4gICAgICBvdXRsaW5lOm5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoJHBpbmtMaWdodCwuMDUpO1xuICAgICAgQGluY2x1ZGUgcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjpyZ2JhKCRwaW5rTGlnaHQsLjIpXG4gICAgICB9O1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgkcGlua0xpZ2h0LC4wNSk7XG4gICAgfVxuICB9XG4gICZfX3N1Ym1pdCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgcGFkZGluZzowO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICB9XG4gIH1cbn0iLCIuYm94LXN1ci1jYXJ0ZSB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG59IiwiLmJveC1pbnRybyB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gICZfX3RpdGxlIHtcbiAgICBmb250LXNpemU6Mi40cmVtO1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBsZXR0ZXItc3BhY2luZzogLjFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTozcmVtO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBmb250LXNpemU6cmVtKDE4KTtcbiAgICB9XG4gIH1cbiAgJl9fY29sLXZpc3VhbCB7XG4gICAgZmxleC1zaHJpbms6IDA7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzcmVtO1xuICAgICAgbWF4LXdpZHRoOiAxMHJlbTtcbiAgICB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcbiAgICAgIG1heC13aWR0aDogMTdyZW07XG4gICAgfVxuICB9XG4gICZfX3Zpc3VhbCB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICB9XG4gICZfX3RleHQge1xuICAgIGxpbmUtaGVpZ2h0OjEuNTtcbiAgfVxuICAmX19hY3Rpb25zIHtcbiAgICBtYXJnaW4tdG9wOjJyZW07XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBhbGlnbi1pdGVtcyA6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG4gIH1cbiAgJl9fY29udGFjdCB7XG4gICAgbWFyZ2luLXJpZ2h0OjFyZW07XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgfVxuICB9XG4gICZfX3RlbCB7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgfVxuICB9XG4gICZfX2J0biB7XG4gICAgJiArICYge1xuICAgICAgbWFyZ2luLWxlZnQgOiAxcmVtO1xuICAgIH1cbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG59XG5cbiNib3gtaW50cm8gLmJveC1pbnRyb19fY29sLWNvbnRlbnQgLmpzLXJlYWRtb3JlLS1leHBhbmRlZCBkaXYuanMtcmVhZG1vcmUtY29udGVudHtcblx0ZGlzcGxheTppbmxpbmUhaW1wb3J0YW50O1xufSIsIi5ib3gtbWluaS1pbnRybyB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgJl9fdGV4dCB7XG4gICAgQGluY2x1ZGUgbWFySDtcbiAgICBtYXgtd2lkdGg6ODByZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICA+IHAgKyBwIHtcbiAgICAgICAgbWFyZ2luLXRvcDoycmVtO1xuICAgIH1cbiAgfVxuICAuaGVhZGVyLWJveCArICZfX3RleHQge1xuICAgIG1hcmdpbi10b3A6IDNyZW07XG4gIH1cbn1cbiIsIi5ib3gtY2FybmV0LXZveWFnZSB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gIGJhY2tncm91bmQtY29sb3I6JGdyZXlMaWdodDtcbiAgJl9fbGlzdCB7XG4gICAgQGluY2x1ZGUgbWFySCgtMS43cmVtKTtcbiAgICBkaXNwbGF5Om5vbmU7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pe1xuICAgICAgQGluY2x1ZGUgbWFySCg2cmVtKTtcbiAgICB9XG4gIH1cbiAgLnNsaWNrLWFycm93IHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSl7XG4gICAgICB0b3A6IDI1JTtcbiAgICB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpe1xuICAgICAgdG9wOiAzMCU7XG4gICAgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnKXtcbiAgICAgIHRvcDogMzUlO1xuICAgIH1cbiAgfVxufVxuLmJveC1jYXJuZXQtdm95YWdlLWl0ZW0ge1xuICBAaW5jbHVkZSBwYWRIKDNyZW0pO1xuICAmX192aXN1YWwge1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgfVxuICAmX19jaGFwbyB7XG4gICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgIHdpZHRoOjhweDtcbiAgICAgIGhlaWdodDoxcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRiYXNlLWNvbG9yO1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6MDtcbiAgICAgIHRvcDo3cHg7XG4gICAgfVxuICB9XG4gICZfX3RpdGxlIHtcbiAgICBmb250LXNpemU6MnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgfVxuICAmX190ZXh0IHtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gIH1cbn0iLCIuYm94LW1vbmRlLXNlcnZpY2Uge1xuICBAaW5jbHVkZSBnZW5lcmljQm94O1xuICAuc2xpY2stZG90cyB7XG4gICAgYm90dG9tOjJyZW07XG4gIH1cbiAgLmhlYWRlci1ib3gge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKXtcbiAgICAgIGRpc3BsYXk6bm9uZVxuICAgIH1cbiAgfVxufVxuLmJveC1tb25kZS1zZXJ2aWNlLWl0ZW0ge1xuICBAaW5jbHVkZSB6b29tVmlzdWFsT25Ib3ZlcjtcbiAgZGlzcGxheTpibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjokZ3JleTtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIGNvbG9yOiR3aGl0ZTtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pe1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OlwiXCI7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBwYWRkaW5nLWJvdHRvbToxMDAlO1xuICB9XG4gICYuZG91YmxlLXdpZHRoIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSl7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206Y2FsYyg1MCUgLSAuNXJlbSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuZG91YmxlLWhlaWdodCB7XG4gICAgJjphZnRlciB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTpjYWxjKDIwMCUgKyAxcmVtKTtcbiAgICB9XG4gIH1cbiAgJi5waW5rIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwaW5rTGlnaHQ7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuM3MgZWFzZS1vdXQ7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmV5Qmx1ZTtcbiAgICB9XG4gIH1cbiAgJi5ncmV5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmV5Qmx1ZTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcyBlYXNlLW91dDtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHBpbmtMaWdodDtcbiAgICB9XG4gIH1cbiAgJi50eXBlLTEge1xuICAgIGJhY2tncm91bmQtY29sb3I6JHBpbmtMaWdodDtcbiAgICBjb2xvcjokcGlua0xpZ2h0O1xuICB9XG4gICYudHlwZS0yIHtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgfVxuICAmLnR5cGUtMyB7XG4gIH1cbiAgJl9faW5uZXIge1xuICAgIFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgLnR5cGUtMSAmIHtcbiAgICAgIHBhZGRpbmc6MXJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHBpbmtMaWdodDtcbiAgICB9XG4gICAgLnR5cGUtMiAmIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICAgICAgb3BhY2l0eTouMTU7XG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBoZWlnaHQ6MTAwJTtcbiAgICAgICAgdG9wOjA7XG4gICAgICAgIGxlZnQ6MDtcbiAgICAgICAgei1pbmRleDoxO1xuICAgICAgfVxuICAgIH1cbiAgICAudHlwZS0zICYge1xuICAgICAgcGFkZGluZzoycmVtO1xuICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCl7XG4gICAgICAgIHBhZGRpbmc6MS41cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX19jb250ZW50IHtcbiAgICAudHlwZS0xICYge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgICBwYWRkaW5nOjFyZW0gMS40cmVtO1xuICAgIH1cbiAgICAudHlwZS0yICYge1xuICAgICAgQGluY2x1ZGUgcGFkSCgxcmVtKTtcbiAgICAgIHBvc2l0aW9uIDogYWJzb2x1dGU7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgei1pbmRleDoxO1xuICAgICAgdG9wOmNhbGMoNTAlIC0gMnJlbSk7XG4gICAgfVxuICB9XG4gICZfX3RpdGxlIHtcbiAgICAudHlwZS0xICYge1xuICAgICAgZm9udC1zaXplOjMuOHJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KXtcbiAgICAgICAgZm9udC1zaXplOjIuOHJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnR5cGUtMiAmIHtcbiAgICAgIGZvbnQtc2l6ZTozcmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KXtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KXtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAudHlwZS0zICYge1xuICAgICAgZm9udC1zaXplOjIuNHJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KXtcbiAgICAgICAgZm9udC1zaXplOjJyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG4gICZfX3Zpc3VhbCB7XG4gICAgQGluY2x1ZGUgb2JqZWN0LWZpdChjb3Zlcik7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgfVxuICAmX190ZXh0IHtcbiAgICAudHlwZS0zICYge1xuICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCl7XG4gICAgICAgIGZvbnQtc2l6ZToxLjFyZW07XG4gICAgICB9XG4gICAgfVxuICAgIC50eXBlLTIgJntcblxuICAgIH1cbiAgfVxuICAmX19saW5rIHtcbiAgICBmb250LXNpemU6MS40cmVtO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpe1xuICAgICAgZm9udC1zaXplOjEuMnJlbTtcbiAgICB9XG4gIH1cbn1cbiIsIi5ib3gtbW9uZGUtZW52aWVzIHtcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcbiAgYmFja2dyb3VuZC1jb2xvcjokZ3JleUxpZ2h0O1xuICAmX19saXN0IHtcbiAgICBAaW5jbHVkZSBtYXJIKC0xLjdyZW0pO1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSl7XG4gICAgICBAaW5jbHVkZSBtYXJIKDZyZW0pO1xuICAgIH1cbiAgICAuc2xpY2stYXJyb3cge1xuICAgICAgdG9wOmNhbGMoNTAlIC0gMjBweCk7XG4gICAgfVxuICB9XG59XG5cbi5ib3gtbW9uZGUtZW52aWUge1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgQGluY2x1ZGUgcGFkSCgxcmVtKTtcbiAgJl9fdGV4dCB7XG4gICAgZm9udC1zaXplOjEuNXJlbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIG1hcmdpbi10b3A6MXJlbTtcbiAgfVxuICAmX19saW5rIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxufSIsIi5ib3gtbW9uZGUtaW1hZ2luYXRpb24ge1xuICBAaW5jbHVkZSBnZW5lcmljQm94O1xuICBwYWRkaW5nLWJvdHRvbTowO1xufVxuLmJveC1tb25kZS1pbWFnaW5hdGlvbi1pdGVtIHtcbiAgQGluY2x1ZGUgem9vbVZpc3VhbE9uSG92ZXI7XG4gIEBpbmNsdWRlIG1hckgoYXV0byk7XG4gIG1heC13aWR0aDpyZW0oNDUwKTtcbiAgbWFyZ2luLWJvdHRvbTo0cmVtO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAmX19saW5rIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICB9XG4gICZfX3Zpc3VhbC1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICY6YWZ0ZXJ7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcbiAgICB9XG4gIH1cbiAgJl9fdmlzdWFsLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICAmX192aXN1YWwge1xuICAgIEBpbmNsdWRlIG9iamVjdC1maXQoY292ZXIpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZToycmVtO1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG4gICZfX3RleHQge1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgfVxuICAmX19jb25kaXRpb25zIHtcbiAgICBjb2xvcjokYWxwaGEtY29sb3I7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4xcmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbn0iLCIuYm94LW5vdXZlYXV4LXZveWFnZXMge1xuICBAaW5jbHVkZSBnZW5lcmljQm94O1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmV5TGlnaHQ7XG4gIH1cbiAgLmNvbnRhaW5lciB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgIHdpZHRoOjEwMCUhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzowIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgJl9fbGlzdCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBAaW5jbHVkZSBtYXJIKC0xLjdyZW0pO1xuICAgIH1cbiAgfVxuICAuc2xpY2stYXJyb3cge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBoZWlnaHQ6IDZyZW07XG4gICAgICB3aWR0aDogNnJlbTtcbiAgICAgIHotaW5kZXg6MTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBmb250LXNpemU6IDRyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IDAuMnJlbTsgLy8gbMOpZ2VyIGTDqWNhbGFnZSBwb3VyIGNlbnRyYWdlIHZlcnRpY2FsIHByw6ljaXNcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNsaWNrLXByZXYge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBsZWZ0OiBjYWxjKDMzLjMzJSk7XG4gICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7XG4gICAgfVxuICB9XG4gIC5zbGljay1uZXh0IHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgcmlnaHQ6IGNhbGMoMzMuMzMlKTtcbiAgICAgIHRyYW5zZm9ybTp0cmFuc2xhdGUoNTAlLC01MCUpO1xuICAgIH1cbiAgfVxufVxuXG5cblxuLmJveC1ub3V2ZWF1eC12b3lhZ2VzLWl0ZW0ge1xuICAkdGhpcyA6ICY7XG4gICRyYXRpbyA6ICgxNzcgLyAyOTQpICogMTAwO1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgfVxuICAmX19saW5rIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICBvcGFjaXR5OjAuNTtcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6MTtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICAgIHRvcDo3NSU7XG4gICAgICAgIGxlZnQ6MDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJl9fdmlzdWFsLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIH1cbiAgICAmOmFmdGVye1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZy1ib3R0b206JHJhdGlvICsgJTtcbiAgICB9XG4gIH1cbiAgJl9fdmlzdWFsLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICAmX192aXN1YWwge1xuICAgIEBpbmNsdWRlIG9iamVjdC1maXQoY292ZXIpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgJl9fY29udGVudCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBAaW5jbHVkZSBtYXJIKGF1dG8pO1xuICAgICAgQGluY2x1ZGUgcGFkSCgxLjdyZW0pO1xuICAgICAgbWF4LXdpZHRoOnJlbSg0NTApO1xuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgb3BhY2l0eTowO1xuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgdG9wOjc3JTtcbiAgICAgIGxlZnQ6MDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuM3M7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgIHBhZGRpbmc6MS41JSA0cmVtO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG4gICZfX2NoYXBvIHtcbiAgICBjb2xvcjokYWxwaGEtY29sb3I7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4xcmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBtYXJnaW4tYm90dG9tOjAuNXJlbTtcbiAgICBmb250LXNpemU6aW5oZXJpdDtcbiAgICBtYXgtaGVpZ2h0OiAxLjJlbTtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgQGluY2x1ZGUgbWFySChhdXRvKTtcbiAgICAgIG1heC13aWR0aDozMHJlbTtcbiAgICAgIGNvbG9yOmluaGVyaXQ7XG4gICAgICBmb250LXNpemU6MS4xcmVtO1xuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xuICAgICAgZm9udC1zaXplOjEuMnJlbTtcbiAgICB9XG4gICAgc3BhbiB7XG4gICAgICBmb250LXNpemU6aW5oZXJpdCFpbXBvcnRhbnQ7XG4gICAgICBmb250LWZhbWlseTppbmhlcml0IWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZToycmVtO1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBtYXgtaGVpZ2h0OjEuNGVtO1xuICAgICAgQGluY2x1ZGUgbWFySChhdXRvKTtcbiAgICAgIG1heC13aWR0aDozMHJlbTtcbiAgICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XG4gICAgICBmb250LXNpemU6MnJlbTtcbiAgICB9XG4gICAgc3BhbiB7XG4gICAgICBmb250LXNpemU6aW5oZXJpdCFpbXBvcnRhbnQ7XG4gICAgICBmb250LWZhbWlseTppbmhlcml0IWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgJl9fdGV4dCB7XG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIG1heC1oZWlnaHQ6IDMuOGVtO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBAaW5jbHVkZSBtYXJIKGF1dG8pO1xuICAgICAgbWF4LXdpZHRoOjMwcmVtO1xuICAgICAgb3BhY2l0eTowO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3M7XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgZm9udC1zaXplOmluaGVyaXQhaW1wb3J0YW50O1xuICAgICAgZm9udC1mYW1pbHk6aW5oZXJpdCFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gICZfX3RleHQtbGluayB7XG4gICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBAaW5jbHVkZSBtYXJIKGF1dG8pO1xuICAgICAgbWF4LXdpZHRoOjMwcmVtO1xuICAgICAgb3BhY2l0eTowO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3M7XG4gICAgfVxuICB9XG4gICZfX2NvbmRpdGlvbnMge1xuICAgIGNvbG9yOiRhbHBoYS1jb2xvcjtcbiAgICBsZXR0ZXItc3BhY2luZzogLjFyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuICAmLnNsaWNrLWFjdGl2ZSB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgICN7JHRoaXN9X19jb250ZW50IHtcbiAgICAgICAgb3BhY2l0eToxO1xuICAgICAgfVxuICAgICAgI3skdGhpc31fX2xpbmsge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgI3skdGhpc31fX2NvbnRlbnQge1xuICAgICAgICAgIHRvcDoxNSU7XG4gICAgICAgIH1cbiAgICAgICAgI3skdGhpc31fX2xpbmsge1xuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHRvcDowO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAjeyR0aGlzfV9fdGV4dCxcbiAgICAgICAgI3skdGhpc31fX3RleHQtbGluayB7XG4gICAgICAgICAgb3BhY2l0eToxO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuYm94LWFjdHVhbGl0ZSB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG5cbiAgJl9fbGluayB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgJl9fdmlzdWFsIHtcbiAgICB3aWR0aDoxMDAlO1xuICB9XG4gICZfX2lubmVyIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OlwiXCI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICAgIG9wYWNpdHk6LjE1O1xuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICB0b3A6MDtcbiAgICAgIGxlZnQ6MDtcbiAgICB9XG4gIH1cbiAgJl9fY29udGVudCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBwYWRkaW5nOjNyZW07XG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xuICB9XG4gICZfX3RpdGxlIHtcbiAgICBmb250LXNpemU6MnJlbTtcbiAgICBmb250LXdlaWdodDo3MDA7XG4gICAgbGluZS1oZWlnaHQ6MS4yO1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgIGZvbnQtc2l6ZToyLjVyZW07XG4gICAgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXhzKSB7XG4gICAgICBmb250LXNpemU6Mi41cmVtO1xuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xuICAgICAgZm9udC1zaXplOjMuNnJlbTtcbiAgICAgIHdpZHRoOiAzNnJlbTtcbiAgICB9XG4gIH1cbiAgJl9fc3VidGl0bGUge1xuICAgIGZvbnQtc2l6ZToycmVtO1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICBsaW5lLWhlaWdodDoxLjI7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgIGZvbnQtc2l6ZToyLjVyZW07XG4gICAgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXhzKSB7XG4gICAgICBmb250LXNpemU6Mi41cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xuICAgICAgZm9udC1zaXplOjMuNnJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICB3aWR0aDogMzZyZW07XG4gICAgfVxuXG4gIH1cbiAgJl9fdGV4dCB7XG4gICAgZm9udC1zaXplOjEuMnJlbTtcbiAgICB3aWR0aDoyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBtYXgtd2lkdGg6NjAlO1xuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgIGZvbnQtc2l6ZToxLjNyZW07XG4gICAgfVxuICB9XG4gICZfX2J0biB7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcbiAgICAgIEBpbmNsdWRlIGdlbmVyaWNCdXR0b247XG4gICAgICBib3JkZXI6MXB4IHNvbGlkICRiYXNlLWNvbG9yO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIGZvbnQtc2l6ZToxLjRyZW1cbiAgICB9XG4gIH1cbn1cbiIsIi5ib3gtcGx1cy1sb2luIHtcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcbiAgYmFja2dyb3VuZC1jb2xvcjokZ3JleUxpZ2h0O1xufVxuXG4uYm94LXBsdXMtbG9pbi1pdGVtIHtcbiAgJHJhdGlvIDogKDM1MCAvIDQ1MCkgKiAxMDA7XG4gICR0aGlzOiAmO1xuICBAaW5jbHVkZSB6b29tVmlzdWFsT25Ib3ZlcjtcbiAgZGlzcGxheTpibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjokZ3JleTtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206cmVtKDMwKTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KXtcbiAgICBtYXJnaW4tYm90dG9tOnJlbSgxNSk7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgY29udGVudDpcIlwiO1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgcGFkZGluZy1ib3R0b206JHJhdGlvICsgJTtcbiAgfVxuICAmLmRvdWJsZS13aWR0aCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pe1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOmNhbGMoKCN7JHJhdGlvIC8gMiArICV9KSAtIDEuNHJlbSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuZG91YmxlLWhlaWdodCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pe1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOmNhbGMoKCN7JHJhdGlvICogMiArICV9KSArIDMwcHgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmOmhvdmVyIHtcbiAgICAjeyR0aGlzfV9fdGl0bGUge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICB9XG4gICZfX2lubmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgICAgb3BhY2l0eTouMTU7XG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgICBoZWlnaHQ6MTAwJTtcbiAgICAgIHRvcDowO1xuICAgICAgbGVmdDowO1xuICAgICAgei1pbmRleDoxO1xuICAgIH1cbiAgfVxuICAmX192aXN1YWwge1xuICAgIEBpbmNsdWRlIG9iamVjdC1maXQoY292ZXIpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgJl9fY29udGVudCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTowO1xuICAgIGxlZnQ6MDtcbiAgICB3aWR0aDoxMDAlO1xuICAgIHBhZGRpbmc6MnJlbTtcbiAgICB6LWluZGV4OjE7XG4gIH1cbiAgJl9fcnVicmlxdWUge1xuICAgIGZvbnQtc2l6ZToxLjRyZW07XG4gICAgZm9udC13ZWlnaHQ6NTAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDAuOHJlbSAxLjJyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuICAmX190aXRsZSB7XG4gICAgZm9udC1zaXplOjIuOHJlbTtcbiAgICBtYXgtaGVpZ2h0OnJlbSg1MCk7XG4gICAgbGluZS1oZWlnaHQ6MTtcbiAgICBmb250LXdlaWdodDpib2xkO1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59IiwiLmJveC1zZXJ2aWNlcyB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gICZfX3RpdGxlIHtcbiAgICBmb250LXNpemU6Mi40cmVtO1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBsZXR0ZXItc3BhY2luZzogLjFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTozcmVtO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBmb250LXNpemU6cmVtKDE4KTtcbiAgICB9XG4gIH1cbiAgJl9fbGlzdCB7XG4gICAgZGlzcGxheTpub25lO1xuICAgIEBpbmNsdWRlIG1hckgoNnJlbSk7XG4gIH1cbiAgLnNsaWNrLWFycm93IHtcbiAgICB0b3A6IDI1JTtcbiAgfVxufVxuXG4uYm94LXNlcnZpY2Uge1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgJl9faWNvbiB7XG4gICAgY29sb3I6JGFscGhhLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTo3cmVtO1xuICAgIGhlaWdodDoxMHJlbTtcbiAgICBAaW5jbHVkZSBjZW50ZXJJY29uO1xuICAgIEBpbmNsdWRlIGljb25Qb3A7XG4gICAgJi5pY29uLW1pbGVze1xuICAgICAgZm9udC1zaXplOjguNXJlbTtcbiAgICB9XG4gIH1cbiAgJl9fdGV4dCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6MS40cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAuMnJlbTtcbiAgICBAaW5jbHVkZSBwYWRIKDJyZW0pO1xuICB9XG59IiwiLmJveC1pZGVlcy12b3lhZ2VzIHtcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcbn1cbi5ib3gtaWRlZSB7XG4gICRyYXRpbyA6ICg0OTAgLyA3MzYpICogMTAwO1xuICBtYXJnaW4tYm90dG9tOjRyZW07XG4gICRiOiAmO1xuICAmLmludG9NYXAge1xuICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICBtYXgtd2lkdGg6IDI1cmVtO1xuICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTtcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gIH1cbiAgJl9fdmlzdWFsLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAmOmFmdGVye1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZy1ib3R0b206JHJhdGlvICsgJTtcbiAgICB9XG4gIH1cbiAgJl9fdmlzdWFsLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICAmX192aXN1YWwge1xuICAgIEBpbmNsdWRlIG9iamVjdC1maXQoY292ZXIpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIC5pbnRvTWFwICYge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuICAmX19jaGFwbyB7XG4gICAgY29sb3I6JGFscGhhLWNvbG9yO1xuICAgIGxldHRlci1zcGFjaW5nOiAuMXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIGZvbnQtc2l6ZTppbmhlcml0O1xuICB9XG4gICZfX3RpdGxlIHtcbiAgICBmb250LXNpemU6MnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDoxLjI7XG4gICAgI3skYn1fX2xpbms6aG92ZXIgJiB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xuICAgIH1cbiAgfVxuICAmX190ZXh0IHtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gIH1cbiAgJl9fY29uZGl0aW9ucyB7XG4gICAgY29sb3I6JGFscGhhLWNvbG9yO1xuICAgIGxldHRlci1zcGFjaW5nOiAuMXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG59XG4iLCIuYm94LXJlZ2lvbnMge1xuICBAaW5jbHVkZSBnZW5lcmljQm94O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiRncmV5TGlnaHQ7XG4gICZfX3JvdyB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICB9XG4gICAgJiA+ICoge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgIG92ZXJmbG93OmhpZGRlbjsgLy8gSUUxMSBidWdcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIH1cbiAgfVxuICAmX192aXN1YWwge1xuICAgIG1heC1oZWlnaHQ6NDUwcHg7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICB9XG4gICZfX2xpc3Qge1xuICAgIGZvbnQtc2l6ZToycmVtO1xuICAgIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgICBcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICBjb2x1bW4tY291bnQ6IDI7XG4gICAgICBtYXgtd2lkdGg6IDQwcmVtO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgZm9udC1zaXplOnJlbSgxNyk7XG4gICAgfVxuICB9XG4gICZfX2l0ZW0ge1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICB3aWR0aDogMC43cmVtO1xuICAgICAgICBoZWlnaHQ6IDAuN3JlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhc2UtY29sb3I7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxLjJyZW07XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgPiBhIHtcbiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICAgICAgQGluY2x1ZGUgaWNvbihmbGVjaGUtbmF2KTtcbiAgICAgICAgfVxuICAgICAgICBjb2xvcjokYWxwaGEtY29sb3I7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogLTJyZW07XG4gICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgIHRvcDogMC4zcmVtO1xuICAgICAgICAgIGNvbG9yOiRiYXNlLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuYm94LWVudmllcyB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLnNsaWNrLWFycm93IHtcbiAgICB0b3A6IGNhbGMoNTAlIC0gM3JlbSk7XG4gIH1cbiAgLnNsaWNrLXNsaWRlciB7XG4gICAgQGluY2x1ZGUgbWFySCg2cmVtKTtcbiAgfVxuICAmX19idXR0b24ge1xuICAgIEBpbmNsdWRlIGljb24oZmxlY2hlLW5hdiwgYWZ0ZXIpO1xuICAgIEBpbmNsdWRlIGNlbnRlckljb247XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBtYXJnaW4tbGVmdDowLjVyZW07XG4gICAgICBtYXJnaW4tdG9wOiAtMC4ycmVtO1xuICAgICAgdHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyk7XG4gICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgIC5qcy1yZWFkbW9yZS0tZXhwYW5kZWQgJiB7XG4gICAgICAgIHRyYW5zZm9ybTpyb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6MXJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTAuM3JlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5ib3gtZW52aWUge1xuICAkdGhpczogJjtcbiAgbWFyZ2luLWJvdHRvbTo0cmVtO1xuICAmX190ZXh0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOjEuOHJlbTtcbiAgICBoZWlnaHQ6IDQuNnJlbTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICBtYXJnaW4tdG9wOjFyZW07XG4gIH1cbiAgJl9fbGluayB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICAmOmhvdmVyICN7JHRoaXN9X190ZXh0e1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICB9XG4gICZfX3Zpc3VhbC1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICY6YWZ0ZXJ7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcbiAgICB9XG4gIH1cbiAgJl9fdmlzdWFsLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICAmX192aXN1YWwge1xuICAgIEBpbmNsdWRlIG9iamVjdC1maXQoY292ZXIpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cbn1cbiIsIi5ib3gtdGVtb2lnbmFnZSB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gIGJhY2tncm91bmQtY29sb3I6JGdyZXlMaWdodDtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICZfX3RpdGxlIHtcbiAgICBjb2xvcjokYWxwaGEtY29sb3I7XG4gICAgbWFyZ2luLWJvdHRvbToyLjVyZW07XG4gIH1cbiAgJl9fc3VidGl0bGUge1xuICBcbiAgfVxuICAmX19ub3RlIHtcbiAgICBtYXJnaW4tYm90dG9tOjEuNXJlbTtcbiAgICAkb3BhY2l0eS1zdGFyLW9mZiA6IDAuMTU7XG4gICAgLmljb24ge1xuICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OjE7XG4gICAgICB9XG4gICAgfVxuICAgIC5pY29uLXN0YXItaGFsZiB7XG4gICAgICBAaW5jbHVkZSBpY29uKHN0YXIsYWZ0ZXIpO1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICBjb2xvcjogY3VycmVudENvbG9yO1xuICAgICAgICBvcGFjaXR5OiAkb3BhY2l0eS1zdGFyLW9mZjtcbiAgICAgICAgbGVmdDowO1xuICAgICAgfVxuICAgIH1cbiAgICAuaWNvbi1zdGFyLW9mZiB7XG4gICAgICBAaW5jbHVkZSBpY29uKHN0YXIpO1xuICAgICAgb3BhY2l0eTogJG9wYWNpdHktc3Rhci1vZmY7XG4gICAgfVxuICB9XG4gICZfX3RleHQge1xuICAgIGZvbnQtc2l6ZToyLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6MS42O1xuICAgIGZvbnQtc3R5bGU6aXRhbGljO1xuICAgIG1hcmdpbjowIGF1dG87XG4gICAgbWF4LXdpZHRoOjc1cmVtO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBmb250LXNpemU6cmVtKDE2KTtcbiAgICB9XG4gIH1cbiAgJl9fbGluayB7XG4gICAgZm9udC1zaXplOjEuNXJlbTtcbiAgICBmb250LXN0eWxlOm5vcm1hbDtcbiAgfVxuICAmX19kb3RzIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OlwiXFwyMDI2XCI7XG4gICAgfVxuICAgIC5qcy1yZWFkbW9yZS0tZXhwYW5kZWQgJi5oaWRhYmxlIHtcbiAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICB9XG4gIH1cbiAgJl9fbGRxdW8ge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6XCJcXDIwMUNcIjtcbiAgICB9XG4gIH1cbiAgJl9fcmRxdW8ge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6XCJcXDIwMURcIjtcbiAgICB9XG4gICAgLmpzLXJlYWRtb3JlLS1leHBhbmRlZCAmLmhpZGFibGUge1xuICAgICAgZGlzcGxheTpub25lO1xuICAgIH1cbiAgfVxufVxuXG4vL3A6YmVmb3JlIHsgY29udGVudDpcIlxcMjAxRVwiOyIsIi5ib3gtZ3VpZGUge1xuICBAaW5jbHVkZSBnZW5lcmljQm94O1xuICAmX19hY3Rpb25zIHtcbiAgfVxuICAmX19idG4td3JhcHBlciB7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMpIHtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgfVxuICAgICYgKyAmIHtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXhzKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OjFyZW07XG4gICAgICB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgICBtYXJnaW4tbGVmdDo1cmVtO1xuICAgICAgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMpIHtcbiAgICAgICAgbWFyZ2luLXRvcDoycmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmJveC1taWV1eC1wcmVwYXJlciB7XG4gIEBpbmNsdWRlIHBhZFYoMnJlbSk7XG4gIGJvcmRlci10b3A6MXB4IHNvbGlkICRiYXNlLWNvbG9yO1xuICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkYmFzZS1jb2xvcjtcbiAgbWFyZ2luLXRvcDoycmVtO1xuICAmX19idXR0b24ge1xuICAgIEBpbmNsdWRlIGljb24oZmxlY2hlLW5hdik7XG4gICAgZm9udC1zaXplOjJyZW07XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgdGV4dC1hbGlnbjpsZWZ0O1xuICAgIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTEuNXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnM7XG4gICAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgICBmb250LXNpemU6cmVtKDEwKTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMS4ycmVtO1xuICAgICAgfVxuICAgICAgLmpzLXJlYWRtb3JlLS1leHBhbmRlZCAmIHtcbiAgICAgICAgdHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICZfX2NvbnRlbnQge1xuICAgIEBpbmNsdWRlIHBhZFYoMnJlbSk7XG4gIH1cbiAgJl9fdGl0bGUge1xuICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi10b3A6MDtcbiAgICB9XG4gIH1cbiAgJl9fdGV4dCB7XG4gICAgYSB7XG4gICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cbn0iLCIuYm94LWlkZWVzLWFzc29jaWVlcyB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gIGJhY2tncm91bmQtY29sb3I6JGdyZXk7XG4gIGNvbG9yOiR3aGl0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAmX190aXRsZSB7XG4gICAgZm9udC1zaXplOjJyZW07XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgfVxuICAmX19jb250ZW50IHtcbiAgICBhIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnBhZ2UtaWRlZXMtYXNzb2NpZWVzICNib3gtcGxhbi1kdS1zaXRlXG57XG4gIGJhY2tncm91bmQ6ICNmNmY2ZjY7IFxuICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbiAgcGFkZGluZy10b3A6IDRyZW07IFxufVxuLnBhZ2UtaWRlZXMtYXNzb2NpZWVzICNib3gtcGxhbi1kdS1zaXRlIGgyXG57XG4gIHBhZGRpbmc6IDNyZW0gMCAxcmVtO1xufVxuLnBhZ2UtaWRlZXMtYXNzb2NpZWVzICNib3gtcGxhbi1kdS1zaXRlIGxpXG57XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59IiwiLmJveC12b3VzLWFpbWVyZXoge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiRncmV5TGlnaHQ7XG4gICZfX2Nhcm91c2VsLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICB9XG4gICZfX2Nhcm91c2VsIHtcbiAgICAuc2xpY2stcHJldiB7XG4gICAgICBsZWZ0IDogMS41cmVtO1xuICAgICAgei1pbmRleDoxO1xuICAgIH1cbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICByaWdodCA6IDEuNXJlbTtcbiAgICB9XG4gICAgLnNsaWNrLWFycm93IHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eToxO1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgIHRleHQtc2hhZG93OiAwIDAgMnB4ICRibGFjaztcblx0XHRmb250LXNpemU6IDNyZW07XG5cdFx0Zm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6MS41O1xuICAgICAgfVxuICAgIH1cbiAgICAuc2xpY2stZG90cyB7XG4gICAgICBib3R0b206MnJlbTtcbiAgICB9XG4gICAgJi5zaG93LWFycm93LW9uLWhvdmVyIHtcbiAgICAgIC5zbGljay1hcnJvdyB7XG4gICAgICAgIC5uby10b3VjaCAmIHtcbiAgICAgICAgICBkaXNwbGF5Om5vbmUhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYuc2hvdy1hcnJvdy1vbi1ob3Zlcjpob3ZlciB7XG4gICAgICAuc2xpY2stYXJyb3cge1xuICAgICAgICAubm8tdG91Y2ggJiB7XG4gICAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2shaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICZfX2NvbnRlbnQge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBwYWRkaW5nLXRvcDozcmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206MnJlbTtcbiAgICB9XG4gIH1cbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBAaW5jbHVkZSBtYXJIKHJlbSgtMTUpKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGFscGhhLWNvbG9yO1xuICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgcGFkZGluZzoxcmVtIDNyZW07XG4gICAgfVxuICB9XG4gICZfX2xpc3Qge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjNyZW07XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgcGFkZGluZy1ib3R0b206MnJlbTtcbiAgICB9XG4gIH1cbiAgJl9faXRlbSB7XG4gICAgbWFyZ2luLXRvcDoxcmVtO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLWxlZnQ6MnJlbTtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwLjVyZW07XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIHdpZHRoOjFyZW07XG4gICAgICAgIGhlaWdodDoxcmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOjUwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmx1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJl9fYWN0aW9ucyB7XG4gICAgbWFyZ2luLXRvcDoyLjVyZW07XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICB9XG4gICZfX2J0biB7XG4gICAgQGluY2x1ZGUgcGFkSCgycmVtKTtcbiAgICBtYXJnaW4tdG9wOjFyZW07XG4gICAgbWFyZ2luLXJpZ2h0OjFyZW07XG4gIH1cbiAgJl9fdmlzdWFsLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICBwYWRkaW5nLWJvdHRvbTo2NyU7XG4gICAgfVxuICB9XG4gICZfX3Zpc3VhbCB7XG4gICAgLnNsaWNrLWluaXRpYWxpemVkICZ7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIm9iamVjdC1maXQ6IGNvdmVyXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICB9XG4gICZfX2xlZ2VuZGUge1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIGJvdHRvbTowO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKCRibGFjaywwLjUpO1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICBvcGFjaXR5OjA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNnMgZWFzZS1vdXQ7XG4gICAgcGFkZGluZzowLjJyZW0gMS41cmVtO1xuICAgIGN1cnNvcjpwb2ludGVyO1xuICAgIC5sZWdlbmRlLWlzLXNob3dlZCAme1xuICAgICAgb3BhY2l0eToxO1xuICAgIH1cbiAgICBAaW5jbHVkZSBpY29uKGNsb3NlKTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgIHRvcDo0cHg7XG4gICAgICByaWdodDo0cHg7XG4gICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgIG9wYWNpdHk6IDAuNztcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuYm94LWl0aW5lcmFpcmUge1xuICBAaW5jbHVkZSBnZW5lcmljQm94O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICZfX21hcCB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICB3aWR0aDoxMDAlO1xuICAgIGJhY2tncm91bmQtc2l6ZTpjb250YWluO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICBwYWRkaW5nLXRvcDo0OCU7XG4gICAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgICBwYWRkaW5nLXRvcDoxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX19saXN0IHtcbiAgICBwYWRkaW5nLXRvcDo0cmVtO1xuICB9XG59XG4uYm94LWV0YXBlIHtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICBAaW5jbHVkZSBtYXJIKDEzcmVtKTtcbiAgfVxuICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XG4gICAgQGluY2x1ZGUgbWFySCgyMHJlbSk7XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6XCJcIjtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICBoZWlnaHQ6MTAwJTtcbiAgICB0b3A6MDtcbiAgICB3aWR0aDo0cHg7XG4gICAgdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGJsdWUgMC44cHgsIHRyYW5zcGFyZW50IDEuOHB4KTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDRweCA4cHg7XG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgbGVmdDotMTByZW07XG4gICAgICB0b3A6NXJlbTtcbiAgICB9XG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIHotaW5kZXg6LTE7XG4gICAgfVxuICB9XG4gICYgKyAmIHtcbiAgICBwYWRkaW5nLXRvcDo0cmVtO1xuICB9XG4gICZfX2hlYWRlciB7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgIH1cbiAgfVxuICAmX19pY29uIHtcbiAgICB3aWR0aDoycmVtO1xuICAgIGhlaWdodDoycmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6JGJsdWU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIEBpbmNsdWRlIG1hckgoYXV0byk7XG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgd2lkdGg6N3JlbTtcbiAgICAgIGhlaWdodDo3cmVtO1xuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICBsZWZ0Oi0xMHJlbTtcbiAgICAgIHRvcDo1MCU7XG4gICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7XG4gICAgICBib3JkZXI6MS41cmVtIHNvbGlkICR3aGl0ZTtcbiAgICB9XG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbVxuICAgIH1cbiAgfVxuICAmX19jaGFwbyB7XG4gICAgZm9udC1zaXplOjEuOHJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiRibHVlO1xuICB9XG4gICZfX3RpdGxlIHtcbiAgICBmb250LXNpemU6MS44cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICB9XG4gICZfX3RleHQge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gICAgZm9udC1zaXplOjEuOHJlbTtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgICBtYXJnaW4tdG9wOjA7XG4gICAgICBwYWRkaW5nLXRvcDoycmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gICAgfVxuICB9XG4gICYuZGVwYXJ0LFxuICAmLmFycml2ZSB7XG4gICAgLmJveC1ldGFwZV9faWNvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6MDtcbiAgICAgIHdpZHRoOjlyZW07XG4gICAgICBoZWlnaHQ6OXJlbTtcbiAgICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICAgIHdpZHRoOiA3cmVtO1xuICAgICAgICBoZWlnaHQ6IDZyZW07XG4gICAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgICAgfVxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgaGVpZ2h0OjJweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmx1ZTtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgYm90dG9tOjA7XG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuYm94LWV0YXBlX19pY29uLWlubmVyIHtcbiAgICAgIEBpbmNsdWRlIGljb24oYXZpb24pO1xuICAgICAgQGluY2x1ZGUgY2VudGVySWNvbjtcbiAgICAgIGZvbnQtc2l6ZTo2cmVtO1xuICAgICAgY29sb3I6JGJsdWU7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgfVxuICB9XG4gICYuYXJyaXZlIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICAgIGhlaWdodDowO1xuICAgICAgfVxuICAgIH1cbiAgICAuYm94LWV0YXBlX19pY29uLWlubmVyIHtcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0MGRlZyk7XG4gICAgfVxuICB9XG59XG4iLCIuYm94LWEtbGEtY2FydGUge1xuICBAaW5jbHVkZSBnZW5lcmljQm94O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICZfX2xpc3Qge1xuICAgIHBhZGRpbmctdG9wOjRyZW07XG4gIH1cbn1cbi5ib3gtYS1sYS1jYXJ0ZS1pdGVtIHtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICBAaW5jbHVkZSBtYXJIKDEzcmVtKTtcbiAgfVxuICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XG4gICAgQGluY2x1ZGUgbWFySCgyMHJlbSk7XG4gIH1cbiAgJiArICYge1xuICAgIHBhZGRpbmctdG9wOjRyZW07XG4gIH1cbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZToxLjhyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDo3MDA7XG4gIH1cbiAgJl9fdGV4dCB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgICBmb250LXNpemU6MS44cmVtO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICAgIG1hcmdpbi10b3A6MDtcbiAgICAgIHBhZGRpbmctdG9wOjJyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICB9XG4gIH1cbn0iLCIuYm94LWJ1ZGdldCB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gIGJhY2tncm91bmQtY29sb3I6JGdyZXlMaWdodDtcbiAgJl9fdGl0bGUge1xuICAgIGNvbG9yOiRibHVlO1xuICB9XG4gICZfX2NvbnRlbnQge1xuICAgIGZvbnQtc2l6ZToxLjZyZW07XG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xuICAgICAgQGluY2x1ZGUgbWFySCgyMHJlbSk7XG4gICAgfVxuICB9XG4gICZfX2NvbnRlbnQtdGl0bGUge1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgfVxufVxuLmJveC1wcml4LWNvbXByZW5kIHtcbiAgQGluY2x1ZGUgcGFkVigycmVtKTtcbiAgYm9yZGVyLXRvcDoxcHggc29saWQgJGJhc2UtY29sb3I7XG4gIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRiYXNlLWNvbG9yO1xuICBtYXJnaW4tdG9wOjJyZW07XG4gICZfX2J1dHRvbiB7XG4gICAgQGluY2x1ZGUgaWNvbihmbGVjaGUtbmF2KTtcbiAgICBmb250LXNpemU6MnJlbTtcbiAgICBmb250LXdlaWdodDo3MDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6MTAwJTtcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgZm9udC1zaXplOjEuNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMS41cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycztcbiAgICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTpyZW0oMTApO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xLjJyZW07XG4gICAgICB9XG4gICAgICAuanMtcmVhZG1vcmUtLWV4cGFuZGVkICYge1xuICAgICAgICB0cmFuc2Zvcm06cm90YXRlKDkwZGVnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJl9fY29udGVudCB7XG4gICAgQGluY2x1ZGUgcGFkVigycmVtKTtcbiAgfVxufVxuIiwiLmJveC1ub3MtZXhwZXJ0cyB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gIHRleHQtYWxpZ246Y2VudGVyO1xuICAucGFnZS1jb25zZWlsbGVycy1pbnRlcnZpZXcgJixcbiAgJi5ncmV5Qmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6JGdyZXlMaWdodDtcbiAgfVxuICAmX192aXN1YWwge1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgbWF4LXdpZHRoOiAxNy41cmVtO1xuICB9XG4gICZfX3RleHQge1xuICAgIEBpbmNsdWRlIG1hckg7XG4gICAgbWF4LXdpZHRoOjgwcmVtO1xuICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgbGluZS1oZWlnaHQ6MS41O1xuICB9XG4gICZfX2xpc3Qge1xuICAgIEBpbmNsdWRlIG1hckg7XG4gICAgbWF4LXdpZHRoOjEwMHJlbTtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgfVxuICB9XG4gICZfX2l0ZW0ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgICAgIG1pbi13aWR0aDogMjByZW07XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgdGV4dC1hbGlnbjpsZWZ0O1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgICBib3JkZXItdG9wOjFweCBzb2xpZCAkZ3JleVZlcnlEYXJrO1xuICAgIH1cbiAgfVxuICAmX19hY3Rpb25zIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIG1hcmdpbi10b3A6MDtcbiAgICB9XG4gIH1cbn1cblxuLmJveC1leHBlcnQge1xuICAmX19pY29uIHtcbiAgICBjb2xvcjokYmx1ZTtcbiAgICBmb250LXNpemU6NnJlbTtcbiAgICB3aWR0aDo2cmVtO1xuICAgIGhlaWdodDo2cmVtO1xuICAgIEBpbmNsdWRlIGNlbnRlckljb247XG4gICAgQGluY2x1ZGUgaWNvblBvcDtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgZm9udC1zaXplOjRyZW07XG4gICAgfVxuICB9XG4gICZfX3RleHQge1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICBmb250LXNpemU6MS44cmVtO1xuICAgIG1hcmdpbi10b3A6MDtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIH1cbiAgfVxuICAmX19saW5rIHtcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIuYm94LWNvbnRhY3Qge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgcG9zaXRpb246Zml4ZWQ7XG4gIGJvdHRvbTowO1xuICBsZWZ0OjA7XG4gIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICB3aWR0aDoxMDAlO1xuICBib3JkZXItdG9wOjFweCBzb2xpZCAkYmxhY2s7XG4gIHotaW5kZXg6MztcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgei1pbmRleDoxMDAwO1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgcGFkZGluZy1sZWZ0OjJyZW07XG4gIH1cbiAgJl9fdGl0bGUge1xuICAgIGZsb2F0OmxlZnQ7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIGZvbnQtc2l6ZToxLjZyZW07XG4gICAgbGluZS1oZWlnaHQ6IHJlbSg0NCk7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICB9XG4gICZfX2xpc3Qge1xuICAgIGZsb2F0OnJpZ2h0O1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgfVxuICB9XG4gICZfX2xpbmsge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIEBpbmNsdWRlIHBhZEgoMS41cmVtKTtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgbWFyZ2luLXJpZ2h0OjJyZW07XG4gICAgfVxuICAgICYgKyAmIHtcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICZfX2ljb24ge1xuICAgIGNvbG9yOiRibHVlO1xuICAgIGZvbnQtc2l6ZTozcmVtO1xuICAgIHdpZHRoOjNyZW07XG4gICAgaGVpZ2h0OjNyZW07XG4gICAgZGlzcGxheSA6aW5saW5lLWJsb2NrO1xuICAgIEBpbmNsdWRlIGNlbnRlckljb247XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgIFxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICAgbWFyZ2luLXJpZ2h0OjAuNXJlbTtcbiAgICB9XG4gIH1cbiAgJl9fdGV4dCB7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIGZvbnQtc2l6ZToxLjJyZW07XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgIH1cbiAgfVxuICAmX19idG4ge1xuICAgIHBhZGRpbmc6MS41cmVtIDFyZW07XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBAaW5jbHVkZSBwYWRWKDEuOHJlbSk7XG4gICAgfVxuICB9XG59XG4iLCIubmF2LXJlY2hlcmNoZSB7XG4gIGRpc3BsYXk6ZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gIC8vcG9zaXRpb246cmVsYXRpdmU7XG4gIC8vei1pbmRleDozO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogcmVtKDUzKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmV5O1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgIHotaW5kZXg6YXV0bztcbiAgICBib3JkZXItYm90dG9tOm5vbmU7XG4gIH1cbiAgLnN0aWNreS1uYXYtaXMtZml4ZWQgJiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6cmVtKDUwKTtcbiAgICB9XG4gIH1cbiAgJl9fZmlsdGVycy10b2dnbGUge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgcGFkZGluZzogMCAycmVtIDAgMDtcbiAgICBAaW5jbHVkZSBpY29uKGZsZWNoZS1uYXYsIGFmdGVyKTtcbiAgICBAaW5jbHVkZSBjZW50ZXJJY29uO1xuICAgICY6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICB0b3A6NTAlO1xuICAgICAgcmlnaHQ6MDtcbiAgICAgIG1hcmdpbi10b3A6LTAuNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gICAgICB0cmFuc2Zvcm06cm90YXRlKC05MGRlZyk7XG4gICAgICB3aWR0aDoxcmVtO1xuICAgICAgaGVpZ2h0OjFyZW07XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgLnJlY2hlcmNoZS1maWx0ZXJzLWlzLW9wZW5lZCAmIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX19maWx0ZXJzLWNvbnRlbnQge1xuICAgIHBhZGRpbmctbGVmdDoxLjVyZW07XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBAaW5jbHVkZSBwYWRIKDJyZW0pO1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgbGVmdDowO1xuICAgICAgdG9wOiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB6LWluZGV4OjE7XG4gICAgICBtaW4taGVpZ2h0OiAxMDByZW07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmV5TGlnaHQ7XG4gICAgICBwYWRkaW5nLXRvcDowLjVyZW07XG4gICAgfVxuICB9XG4gICZfX2ZpbHRlcnMtbGlzdCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAuc3RpY2t5LW5hdi1pcy1maXhlZCAmIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoNTUlIC0gMzBweCk7XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlICkge1xuICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgfVxuICB9XG4gICZfX2ZpbHRlcnMtaXRlbSB7XG4gICAgQGluY2x1ZGUgcGFkVigwLjhyZW0pO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBAaW5jbHVkZSBwYWRWKDFyZW0pO1xuICAgICAgcGFkZGluZy1yaWdodDoxcmVtO1xuICAgICAgJiArICYge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6MS4zcmVtO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyZXk7XG4gICAgICAgICAgd2lkdGg6MXB4O1xuICAgICAgICAgIGhlaWdodDoyLjVyZW07XG4gICAgICAgICAgdG9wOjUwJTtcbiAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlICkge1xuICAgICAgd2lkdGg6NTAlO1xuICAgICAgZmxvYXQ6bGVmdDtcbiAgICAgICY6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6MC41cmVtO1xuICAgICAgfVxuICAgICAgJjpudGgtb2YtdHlwZShldmVuKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDowLjVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG4gICZfX2ZpbHRlcnMtbGFiZWwge1xuICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgbWFyZ2luOjAgMCAwLjVyZW0gMS4ycmVtO1xuICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICB9XG4gIH1cbiAgJl9fZmlsdGVycy1zZWxlY3Qge1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgICAgPiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgZm9udC1zaXplOjEuNHJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5ib290c3RyYXAtc2VsZWN0Om5vdChbY2xhc3MqPVwiY29sLVwiXSk6bm90KFtjbGFzcyo9XCJmb3JtLWNvbnRyb2xcIl0pOm5vdCguaW5wdXQtZ3JvdXAtYnRuKSB7XG4gICAgICB3aWR0aDphdXRvO1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICAgICYuYm9vdHN0cmFwLXNlbGVjdDpub3QoW2NsYXNzKj1cImNvbC1cIl0pOm5vdChbY2xhc3MqPVwiZm9ybS1jb250cm9sXCJdKTpub3QoLmlucHV0LWdyb3VwLWJ0bikge1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX19maWx0ZXJzLXN1Ym1pdCB7XG4gICAgQGluY2x1ZGUgbWFySDtcbiAgICBtYXJnaW4tdG9wOjFyZW07XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgZGlzcGxheTpub25lO1xuICAgIH1cbiAgfVxuICAmX19kaXNwbGF5LWxpc3Qge1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC1ncm93OjE7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgcGFkSCgycmVtKTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgcGFkZGluZy1yaWdodDowO1xuICAgIH1cbiAgICAudG91Y2ggJiB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICB9XG4gICZfX2Rpc3BsYXktaXRlbSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICYgKyAmIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAycmVtO1xuICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJl9fZGlzcGxheS1saW5rIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICAgIHBhZGRpbmc6MC4ycmVtIDAuNXJlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6NHB4O1xuICAgIH1cbiAgICAmLmRpc3BsYXktbGlzdGUge1xuICAgICAgLmRpc3BsYXktbW9kZS1saXN0ZSAme1xuICAgICAgICBjb2xvcjokYmx1ZTtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi5kaXNwbGF5LWNhcnRlIHtcbiAgICAgIC5kaXNwbGF5LW1vZGUtY2FydGUgJntcbiAgICAgICAgY29sb3I6JGJsdWU7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYuZGlzcGxheS1oeWJyaWRlIHtcbiAgICAgIC5kaXNwbGF5LW1vZGUtaHlicmlkZSAme1xuICAgICAgICBjb2xvcjokYmx1ZTtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgfVxuICB9XG4gICZfX2Rpc3BsYXktaWNvbiB7XG4gICAgQGluY2x1ZGUgY2VudGVySWNvbjtcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMnJlbTtcbiAgICBoZWlnaHQ6IDJyZW07XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuICAmX19kaXNwbGF5LXRleHQge1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgfVxufVxuXG4uYm94LXJlY2hlcmNoZSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiRzY3JlZW4tc20pIHtcbiAgICBAaW5jbHVkZSBwYWRIKHJlbSg1MCkpO1xuICB9XG4gICZfX3JvdyB7XG4gICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyZXk7XG4gIH1cbiAgJl9fY29sIHtcbiAgICAmLmNvbC1jb250ZW50IHtcbiAgICAgIHdpZHRoOjU1JTtcbiAgICAgIC5kaXNwbGF5LW1vZGUtY2FydGUgJntcbiAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgfVxuICAgIH1cbiAgICAmLmNvbC1tYXAge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgLmRpc3BsYXktbW9kZS1saXN0ZSAme1xuICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICB9XG4gICAgICAuZGlzcGxheS1tb2RlLWNhcnRlICYge1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX19maWx0ZXItbGlzdCB7XG4gICAgQGluY2x1ZGUgbWFyVigxcmVtKTtcbiAgfVxuICAmX19maWx0ZXItaXRlbSB7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gIH1cbiAgJl9fZmlsdGVyIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIGZvbnQtc2l6ZToxLjRyZW07XG4gICAgcGFkZGluZzo2cHggMTJweDtcbiAgICBsZXR0ZXItc3BhY2luZyA6IC4xcmVtO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIEBpbmNsdWRlIGljb24oZmxlY2hlLW5hdiwgYWZ0ZXIpO1xuICAgIEBpbmNsdWRlIGNlbnRlckljb247XG4gICAgJjphZnRlciB7XG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgIHRvcDo1MCU7XG4gICAgICByaWdodDowO1xuICAgICAgbWFyZ2luLXRvcDotMC41cmVtO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgICAgIHRyYW5zZm9ybTpyb3RhdGUoOTBkZWcpO1xuICAgICAgY29sb3I6JGJsdWU7XG4gICAgICB3aWR0aDoxcmVtO1xuICAgICAgaGVpZ2h0OjFyZW07XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgICAmLmRlc2Mge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICZfX2xpc3Qge1xuICAgIG1hcmdpbi10b3A6MXJlbTtcbiAgICBwYWRkaW5nOjAgMnJlbSAycmVtIDJyZW07XG4gIH1cbiAgJl9fbWFwLXdyYXBwZXIge1xuICAgIGhlaWdodDpjYWxjKDEwMHZoIC0gOHJlbSk7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAmLmFmZml4IHtcbiAgICAgIHBvc2l0aW9uOmZpeGVkIWltcG9ydGFudDtcbiAgICAgIHRvcDpyZW0oNTMpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG4gICAgfVxuICAgIC5kaXNwbGF5LW1vZGUtY2FydGUgJiB7XG4gICAgICBoZWlnaHQ6Y2FsYyg3NXZoKTtcbiAgICB9XG4gIH1cbiAgJl9fbWFwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICB9XG4gICZfX3BhZ2VyIHtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgfVxufVxuXG5cbi5nbS1zdHlsZS1pdy1jb250YWluZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC8vIEJhY2tncm91bmRcbiAgPiBkaXY6Zmlyc3QtY2hpbGQge1xuICAgID4gZGl2IHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLy8gQXJyb3cgc2hhZG93XG4gICAgPiBkaXY6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgLy8gRGlzYWJsZVxuICAgIH1cbiAgICAvLyBCb3ggc2hhZG93XG4gICAgPiBkaXY6bnRoLWNoaWxkKDIpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogJGJveC1zaGFkb3cgIWltcG9ydGFudDtcbiAgICAgIGRpc3BsYXk6bm9uZSFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC8vIEFycm93IGltYWdlXG4gICAgPiBkaXY6bnRoLWNoaWxkKDMpIHtcbiAgICAgIG1hcmdpbi10b3A6NHB4IWltcG9ydGFudDtcbiAgICAgID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgIHRyYW5zZm9ybTogc2tld1goNDBkZWcpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm94LXNoYWRvdzogJGJveC1zaGFkb3cgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgPiBkaXY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgIHRyYW5zZm9ybTogc2tld1goLTQwZGVnKSAhaW1wb3J0YW50O1xuICAgICAgICAgIGJveC1zaGFkb3c6ICRib3gtc2hhZG93ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLy8gYmFja2dyb3VuZCBESVZcbiAgICA+IGRpdjpudGgtY2hpbGQoNCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjpyZWQhaW1wb3J0YW50O1xuICAgICAgZGlzcGxheTpub25lIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgLmdtLXN0eWxlLWl3IHtcbiAgICBib3R0b206IDAgIWltcG9ydGFudDtcbiAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDoxNXB4IWltcG9ydGFudDtcbiAgICBwYWRkaW5nOjIwcHggMCAxMHB4IDAhaW1wb3J0YW50O1xuICAgIHRvcDphdXRvIWltcG9ydGFudDtcbiAgICA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICAvLyBjbG9zZSBidXR0b25cbiAgLmdtLXN0eWxlLWl3ICsgZGl2IHtcbiAgICB0b3A6MjJweCFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6MjJweCFpbXBvcnRhbnQ7XG4gIH1cbiAgLmdtLXN0eWxle1xuICAgIGltZyB7XG4gICAgICBtYXgtd2lkdGg6MTAwJTtcbiAgICB9XG4gIH1cbn0iLCIuYm94LWluZm9zLXBheXMge1xuICBAaW5jbHVkZSBnZW5lcmljQm94O1xuICAmX190ZXh0IHtcbiAgICBAaW5jbHVkZSBtYXJIO1xuICAgIG1hcmdpbi1ib3R0b206NHJlbTtcbiAgICBtYXgtd2lkdGg6JGNvbnRhaW5lci1zbTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICB9XG4gICZfX2xpc3Qge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIEBpbmNsdWRlIG1hckgoYXV0byk7XG4gICAgbWF4LXdpZHRoOjgwcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAmX19pdGVtIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIHdpZHRoOjMzLjMzMyU7XG4gICAgZmxvYXQ6bGVmdDtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgYm9yZGVyLXRvcDoxcHggc29saWQgJGdyZXlWZXJ5RGFyaztcbiAgICB9XG4gIH1cbn1cblxuLmJveC1pbmZvLXBheXMge1xuICAmX19saW5rIHtcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIGRpc3BsYXk6dGFibGU7XG4gICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICB9XG4gIH1cbiAgJl9faWNvbiB7XG4gICAgY29sb3I6JHBpbms7XG4gICAgZm9udC1zaXplOjZyZW07XG4gICAgd2lkdGg6NnJlbTtcbiAgICBoZWlnaHQ6NnJlbTtcbiAgICBkaXNwbGF5IDppbmxpbmUtYmxvY2s7XG4gICAgQGluY2x1ZGUgY2VudGVySWNvbjtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIGRpc3BsYXk6dGFibGUtY2VsbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBmb250LXNpemU6NHJlbTtcbiAgICB9XG4gIH1cbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICBmb250LXNpemU6MS44cmVtO1xuICAgIG1hcmdpbi10b3A6MDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgZGlzcGxheTp0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIEBpbmNsdWRlIHBhZEgoMC41cmVtKTtcbiAgICAgIHdpZHRoOjIwcmVtO1xuICAgIH1cbiAgfVxuICAmX190ZXh0IHtcbiAgICBmb250LXdlaWdodDo3MDA7XG4gICAgZm9udC1zaXplOjEuOHJlbTtcbiAgICBtYXJnaW4tdG9wOjA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjokcGluaztcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIGRpc3BsYXk6dGFibGUtY2VsbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG59IiwiLmJveC1xdWFuZC1wYXJ0aXIge1xuICBAaW5jbHVkZSBnZW5lcmljQm94O1xuICAmX19jb250ZW50IHtcbiAgICBAaW5jbHVkZSBjb3ZlcjtcbiAgICBwYWRkaW5nOjRyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gICZfX2xpc3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDFyZW0gMnJlbTtcbiAgfVxufVxuXG5cbi5ib3gtbW9pcyB7XG4gIHRleHQtYWxpZ246Y2VudGVyO1xuICBAaW5jbHVkZSBwYWRWKDFyZW0pO1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xuICAgIHBhZGRpbmc6MnJlbTtcbiAgfVxuICA+IC5pY29uLXN0YXIge1xuICAgIGNvbG9yOiRwaW5rO1xuICB9XG4gICZfX3RpdGxlIHtcbiAgICBmb250LXdlaWdodDpib2xkO1xuICB9XG59XG4iLCIuYm94LWJvbm5lcy1yYWlzb25zIHtcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcbiAgJl9fbGlzdCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMpIHtcbiAgICAgIEBpbmNsdWRlIG1hckgoNS41cmVtKTtcbiAgICB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHMpIHtcbiAgICAgICBAaW5jbHVkZSBtYXJIKDZlbSk7XG4gICAgfVxuICB9XG59XG5cbi5ib3gtYm9ubmUtcmFpc29uIHtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gIEBpbmNsdWRlIHBhZEgoM3JlbSk7XG4gICZfX2luZGV4IHtcbiAgICBjb2xvcjokcGluaztcbiAgICBmb250LXNpemU6NnJlbTtcbiAgfVxufSIsIi5ib3gtdXRpbGUge1xuICBAaW5jbHVkZSBnZW5lcmljQm94O1xuICAmX19jb250ZW50IHtcbiAgICBAaW5jbHVkZSBjb3ZlcjtcbiAgICBwYWRkaW5nOjZyZW0gNHJlbTtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgQGluY2x1ZGUgcGFkVigwcmVtKTtcbiAgICB9XG4gIH1cbiAgJl9fcm93IHtcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgfVxuICB9XG59XG5cbi5ib3gtdXRpbGUtaXRlbSB7XG4gIEBpbmNsdWRlIG1hckgoMTByZW0pO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIHBhZGRpbmc6IDJyZW07XG4gIGJveC1zaGFkb3c6IDEwcHggMTBweCAwcHggMHB4ICRwaW5rO1xuICBoZWlnaHQ6MTAwJTtcbiAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICBAaW5jbHVkZSBtYXJIKDRyZW0pO1xuICB9XG4gIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgbWFyZ2luOjZyZW0gMDtcbiAgfVxuICAmX190aXRsZSB7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgZm9udC1zaXplOjJyZW07XG4gIH1cbiAgJl9fbGlzdCB7XG4gICAgPiBsaSB7XG4gICAgICBtYXJnaW4tdG9wOjAuNXJlbTtcbiAgICAgID4gYSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgICAgICBAaW5jbHVkZSBpY29uKGZsZWNoZS1uYXYpO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgY29sb3I6JHBpbms7XG4gICAgICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICB0b3A6IDAuNHJlbTtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogJHBpbms7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmVcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmJveC1hLWRlY291dnJpciB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgLnJvdyB7XG4gICAgICAmID4gKiB7XG4gICAgICAgIG1hcmdpbi10b3A6NHJlbTtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDowO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5ib3gtYS1kZWNvdXZyaXItaXRlbSB7XG4gIEBpbmNsdWRlIGNvdmVyO1xuICBkaXNwbGF5OmJsb2NrO1xuICBoZWlnaHQ6MjJyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjI1ZW07IC8qIHNwYWNlIHdpZHRoICovXG4gIH1cbiAgJl9fdGl0bGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHBhZGRpbmc6MXJlbSA2cmVtO1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG4iLCIuYm94LXZveWFnZXMtcGF5cyB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG59IiwiLmJveC1hcnRpY2xlcyB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gICZfX2l0ZW0ge1xuICAgIEBpbmNsdWRlIG1hckg7XG4gICAgbWF4LXdpZHRoOiRjb250YWluZXItc207XG5cbiAgICAmICsgJiB7XG4gICAgICBtYXJnaW4tdG9wOjRyZW07XG4gICAgfVxuICB9XG59XG5cbi5ib3gtYXJ0aWNsZSB7XG4gICZfX251bWJlciB7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIGZvbnQtc2l6ZTozcmVtO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIGNvbG9yOiRhbHBoYS1jb2xvcjtcbiAgfVxuICAmX190aXRsZSB7XG4gICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgIGZvbnQtc2l6ZTozcmVtO1xuICAgIG1hcmdpbi10b3A6MDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgfVxuICAmX190ZXh0IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIH1cbiAgJl9fdGV4dCBoMntcbiAgICBmb250LXNpemU6IG1lZGl1bTtcblx0Zm9udC13ZWlnaHQ6Ym9sZDtcblx0bWFyZ2luLXRvcDoycmVtO1xuICB9XG59IiwiLmJveC1pbnRyby1jb25zZWlsbGVycyB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gICZfX2NoYXBvIHtcbiAgICBAaW5jbHVkZSBtYXJWO1xuICAgIEBpbmNsdWRlIG1hckg7XG4gICAgbWF4LXdpZHRoOjcwcmVtO1xuICAgIGZvbnQtc2l6ZToyLjVyZW07XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gIH1cbiAgJl9fdGV4dCB7XG4gICAgQGluY2x1ZGUgbWFySDtcbiAgICBtYXJnaW4tdG9wOjRyZW07XG4gICAgbWF4LXdpZHRoOjcwcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgPiBwICsgcHtcbiAgICAgIG1hcmdpbi10b3A6MnJlbTtcbiAgICB9XG4gIH1cbiAgJl9fdmlzdWFsIHtcbiAgICBAaW5jbHVkZSBtYXJWO1xuICAgIEBpbmNsdWRlIG1hckg7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLmJveC1jb25zZWlsbGVycyB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gIGJhY2tncm91bmQtY29sb3I6JGdyZXlMaWdodDtcbiAgJl9fbGlzdCB7XG4gICAgQGluY2x1ZGUgbWFySCgtMS43cmVtKTtcbiAgICBkaXNwbGF5Om5vbmU7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pe1xuICAgICAgQGluY2x1ZGUgbWFySCg2cmVtKTtcbiAgICB9XG4gIH1cbiAgLnNsaWNrLWFycm93IHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSl7XG4gICAgICB0b3A6IDI1JTtcbiAgICB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpe1xuICAgICAgdG9wOiAzMCU7XG4gICAgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnKXtcbiAgICAgIHRvcDogMzUlO1xuICAgIH1cbiAgfVxufVxuLmJveC1jb25zZWlsbGVycy1pdGVtIHtcbiAgQGluY2x1ZGUgcGFkSCgzcmVtKTtcbiAgJl9fdmlzdWFsLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAmOmFmdGVye1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZy1ib3R0b206MTAwJTtcbiAgICB9XG4gIH1cbiAgJl9fdmlzdWFsLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICAmX192aXN1YWwge1xuICAgIEBpbmNsdWRlIG9iamVjdC1maXQoY292ZXIpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgJl9fY2hhcG8ge1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OlwiXCI7XG4gICAgICB3aWR0aDo4cHg7XG4gICAgICBoZWlnaHQ6MXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmFzZS1jb2xvcjtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OjA7XG4gICAgICB0b3A6N3B4O1xuICAgIH1cbiAgfVxuICAmX190aXRsZSB7XG4gICAgZm9udC1zaXplOjJyZW07XG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIH1cbiAgJl9fdGV4dCB7XG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICB9XG59IiwiLmJveC1pbnRlcnZpZXdzIHtcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcbiAgYmFja2dyb3VuZC1jb2xvcjokZ3JleUxpZ2h0O1xuXG59XG5cbi5ib3gtaW50ZXJ2aWV3IHtcbiAgQGluY2x1ZGUgbWFySDtcbiAgbWF4LXdpZHRoOiAxMDByZW07XG4gICYgKyAmIHtcbiAgICBtYXJnaW4tdG9wOjhyZW07XG4gIH1cbiAgJl9fcm93IHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xuICAgICAgQGluY2x1ZGUgZ3V0dGVyKDMwcHgpO1xuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZykge1xuICAgICAgQGluY2x1ZGUgZ3V0dGVyKDUwcHgpO1xuICAgIH1cbiAgfVxuICAmX192aXN1YWwge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIH1cbiAgfVxuICAmX190aXRsZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIG1hcmdpbi1ib3R0b206NHJlbTtcbiAgICBzcGFuIHtcbiAgICAgIGNvbG9yOiRibHVlO1xuICAgIH1cbiAgfVxuICAmX19xdWVzdGlvbiB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgfVxuICAmX19yZXBvbnNlIHtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICB9XG4gICZfX3BzZXVkby1saW5rIHtcbiAgICBjb2xvcjokYmx1ZTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG59XG4iLCIuYm94LWludGVydmlldy1kZXRhaWwge1xuICBAaW5jbHVkZSBnZW5lcmljQm94O1xuICAmX19oZWFkZXIge1xuICAgIEBpbmNsdWRlIG1hckg7XG4gICAgbWF4LXdpZHRoOiA3MHJlbTtcbiAgICBkaXNwbGF5OnRhYmxlO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgID4gKiB7XG4gICAgICBkaXNwbGF5OnRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gIH1cbiAgJl9faGVhZGVyLWNvbnRlbnQge1xuICAgIHBhZGRpbmctcmlnaHQ6MnJlbTtcbiAgfVxuICAmX19oZWFkZXItdmlzdWFsIHtcbiAgICB3aWR0aDoxNnJlbTtcbiAgfVxuICAmX192aXN1YWwge1xuICAgIGJvcmRlci1yYWRpdXM6NTAlO1xuICB9XG4gICZfX2hlYWRlci10aXRsZSB7XG4gICAgZm9udC1zaXplOjRyZW07XG4gIH1cbiAgJl9faGVhZGVyLXN1YnRpdGxlIHtcbiAgICBjb2xvcjokYmx1ZTtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICBmb250LXNpemU6Mi4zcmVtO1xuICB9XG4gICZfX2xpc3Qge1xuICAgIEBpbmNsdWRlIG1hckg7XG4gICAgbWF4LXdpZHRoOiA3MHJlbTtcbiAgICBtYXJnaW4tYm90dG9tOjZyZW07XG4gIH1cbiAgJl9fdGl0bGUge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAyLjRyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICB9XG4gICZfX3F1ZXN0aW9uIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjNyZW07XG4gIH1cbiAgJl9fcmVwb25zZSB7XG4gICAgbWFyZ2luLXRvcDowO1xuICAgIG1hcmdpbi1ib3R0b206M3JlbTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICB9XG4gICZfX2NvdXAtZGUtY29ldXIge1xuICAgIEBpbmNsdWRlIG1hckg7XG4gICAgbWF4LXdpZHRoOiA3MHJlbTtcbiAgfVxuICAmX19zdWJ0aXRsZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gIH1cbn1cbiIsIi5ib3gtYXZpcyB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gIGJhY2tncm91bmQtY29sb3I6JGdyZXlMaWdodDtcbiAgJl9fc2VhcmNoIHtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOjRyZW07XG4gIH1cbiAgJl9fcGFnZXIge1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIG1hcmdpbi10b3A6NHJlbTtcbiAgfVxufVxuXG4uYm94LWF2aXMtaXRlbSB7XG4gICRyYXRpbyA6ICgzMDAgLyA0NTApICogMTAwO1xuICBAaW5jbHVkZSBtYXJIO1xuICBtYXgtd2lkdGg6IDEwMHJlbTtcbiAgJiArICYge1xuICAgIG1hcmdpbi10b3A6OHJlbTtcbiAgfVxuICAmX19yb3cge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XG4gICAgICBAaW5jbHVkZSBndXR0ZXIoMzBweCk7XG4gICAgfVxuICB9XG4gICZfX3Zpc3VhbC1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgJjphZnRlcntcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmctYm90dG9tOiRyYXRpbyArICU7XG4gICAgfVxuICB9XG4gICZfX3Zpc3VhbC13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgJl9fdmlzdWFsIHtcbiAgICBAaW5jbHVkZSBvYmplY3QtZml0KGNvdmVyKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgfVxuXG4gICZfX25vdGF0aW9uIHtcbiAgICBmb250LXNpemU6Mi40cmVtO1xuICAgIGNvbG9yOiRibHVlO1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgfVxuICAmX19wYXlzIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgfVxuICAmX19jbGllbnQge1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbiAgJl9fZGF0ZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGNvbG9yOiRibHVlO1xuICB9XG4gICZfX3RleHQge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgbWFyZ2luLXRvcDowO1xuXG4gIH1cbiAgJl9fcHNldWRvLWxpbmsge1xuICAgIGNvbG9yOiRibHVlO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxufVxuIiwiLmJveC1lbnZpZXMtbW9tZW50IHtcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcbn1cbi5ib3gtZW52aWVzLW1vbWVudC1pdGVtIHtcbiAgQGluY2x1ZGUgbWFySDtcbiAgbWFyZ2luLWJvdHRvbTozcmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICZfX3Zpc3VhbCB7XG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICB9XG4gICZfX3RpdGxlIHtcbiAgICBmb250LXNpemU6MnJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG59XG4iLCIuYm94LWVudmllcy10aGVtZSB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG59XG4uYm94LWVudmllcy10aGVtZS1pdGVtIHtcbiAgZGlzcGxheTpibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjokZ3JleTtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIGNvbG9yOiR3aGl0ZTtcbiAgbWFyZ2luLWJvdHRvbTozcmVtO1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgJjphZnRlciB7XG4gICAgY29udGVudDpcIlwiO1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgcGFkZGluZy1ib3R0b206MTAwJTtcbiAgfVxuICAmX19pbm5lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OlwiXCI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICAgIG9wYWNpdHk6LjE1O1xuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICB0b3A6MDtcbiAgICAgIGxlZnQ6MDtcbiAgICAgIHotaW5kZXg6MTtcbiAgICB9XG4gICAgLnRoZW1lICYge1xuICAgICAgdG9wOiAyLjVyZW07XG4gICAgICBsZWZ0OiAyLjVyZW07XG4gICAgICByaWdodDogMi41cmVtO1xuICAgICAgYm90dG9tOiAyLjVyZW07XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIG9wYWNpdHk6MDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzKSB7XG4gICAgICAgIHRvcDogMXJlbTtcbiAgICAgICAgbGVmdDogMXJlbTtcbiAgICAgICAgcmlnaHQ6IDFyZW07XG4gICAgICAgIGJvdHRvbTogMXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJl9fY29udGVudCB7XG4gICAgQGluY2x1ZGUgcGFkSCgxcmVtKTtcbiAgICBwb3NpdGlvbiA6IGFic29sdXRlO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgei1pbmRleDoxO1xuICAgIHRvcDpjYWxjKDUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIC50aGVtZSAme1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgICBjb2xvcjokYmFzZS1jb2xvcjtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIHRvcDowO1xuICAgICAgYm90dG9tOjA7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgcGFkZGluZzozcmVtO1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMpIHtcbiAgICAgICAgcGFkZGluZzoxcmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX19zdWJ0aXRsZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6MnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOjAuNXJlbTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14cykgYW5kICAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCl7XG4gICAgICBmb250LXNpemU6MS42cmVtO1xuICAgIH1cbiAgfVxuICAmX190aXRsZSB7XG4gICAgZm9udC1zaXplOjMuMnJlbTtcbiAgICBmb250LXdlaWdodDo1MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cykge1xuICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgIH1cbiAgICAudGhlbWUgJiB7XG4gICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICBmb250LXNpemU6My42cmVtO1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXhzKSBhbmQgIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KXtcbiAgICAgICAgZm9udC1zaXplOjNyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG4gICZfX3Zpc3VhbCB7XG4gICAgQGluY2x1ZGUgb2JqZWN0LWZpdChjb3Zlcik7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgfVxuICAmLnRoZW1lIHtcbiAgICBAaW5jbHVkZSBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2JhY2tncm91bmQvcXVhbmQtcGFydGlyLzcwMngzNjAuanBnKTtcbiAgfVxufVxuXG4iLCIuYm94LWRlY29ubmVjdGVyIHtcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcbiAgJl9faW5uZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6JHBpbmtMaWdodDtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICBkaXNwbGF5OnRhYmxlO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgaGVpZ2h0OjUwcmVtO1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gICAgLmNhcm91c2VsICZ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmVlbjtcbiAgICB9XG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICBoZWlnaHQ6YXV0bztcbiAgICB9XG4gIH1cbiAgJl9faGVhZGVyIHtcbiAgICB3aWR0aDo1MHJlbTtcbiAgICBwYWRkaW5nOjZyZW07XG4gICAgZGlzcGxheTp0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOm1pZGRsZTtcbiAgICBjb2xvcjokd2hpdGU7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgLmNhcm91c2VsICZ7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgICAgQGluY2x1ZGUgYXJyb3coJGRpcmVjdGlvbjogcmlnaHQsICR3aWR0aDogNnJlbSwgJGhlaWdodDogM3JlbSwgJGNvbG9yOiAkZ3JlZW4pO1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgdG9wOjUwJTtcbiAgICAgICAgbGVmdDoxMDAlO1xuICAgICAgICB6LWluZGV4OjE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICAgIHBhZGRpbmc6NHJlbTtcbiAgICAgIHdpZHRoOjQwJTtcbiAgICB9XG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICBwYWRkaW5nOjNyZW07XG4gICAgICB3aWR0aDphdXRvO1xuICAgIH1cbiAgfVxuICAmX19hY3Rpb25zIHtcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gIH1cbiAgJl9fY29udGVudCB7XG4gICAgZGlzcGxheTp0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOnRvcDtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICB9XG4gIH1cbiAgJl9fbGlzdCB7XG4gICAgaGVpZ2h0OjEwMCU7XG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgJixcbiAgICAgICYuc2xpY2stc2xpZGVyIHtcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5zbGljay1saXN0LFxuICAgIC5zbGljay10cmFjayB7XG4gICAgICBoZWlnaHQ6MTAwJTtcbiAgICB9XG4gIH1cbiAgJl9fbGlzdC12aXN1YWwge1xuICAgIGhlaWdodDoxMDAlO1xuICB9XG4gICZfX3RpdGxlIHtcbiAgICBmb250LXNpemU6My40cmVtO1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gIH1cbiAgJl9fdGV4dCB7XG4gICAgbGluZS1oZWlnaHQ6MS41O1xuICAgIGZvbnQtc2l6ZToxLjZyZW07XG4gIH1cbiAgLnNsaWNrLWRvdHMge1xuICAgIGJvdHRvbToycmVtO1xuICB9XG59XG5cbi5ib3gtZGVjb25uZWN0ZXItaXRlbSB7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICBoZWlnaHQ6MTAwJTtcbiAgJl9fY29udGVudCB7XG4gICAgaGVpZ2h0OjEwMCU7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIHBhZGRpbmc6NnJlbTtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAuY2Fyb3VzZWwgJntcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICBvcGFjaXR5OiAuMTU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgcGFkZGluZzozcmVtO1xuICAgICAgaGVpZ2h0OjI1cmVtO1xuICAgIH1cbiAgfVxuICAmX190aXRsZSB7XG4gICAgZm9udC1zaXplOjRyZW07XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgei1pbmRleDogMTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgfVxuICB9XG4gICZfX3Zpc3VhbCB7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBoZWlnaHQ6MTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OjA7XG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIGZvbnQtZmFtaWx5OiBcIm9iamVjdC1maXQ6IGNvdmVyXCI7XG4gIH1cbn1cbiIsIi5ib3gtZGVzdGluYXRpb25zLWZhdm9yaXRlcyB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG59XG4uYm94LWRlc3RpbmF0aW9ucy1mYXZvcml0ZXMtaXRlbSB7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6JGdyZXk7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICBjb2xvcjokd2hpdGU7XG4gIG1hcmdpbi1ib3R0b206M3JlbTtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6XCJcIjtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIHBhZGRpbmctYm90dG9tOjY2LjY2JTtcbiAgfVxuICAmX19pbm5lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OlwiXCI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICAgIG9wYWNpdHk6LjE1O1xuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICB0b3A6MDtcbiAgICAgIGxlZnQ6MDtcbiAgICAgIHotaW5kZXg6MTtcbiAgICB9XG4gIH1cbiAgJl9fY29udGVudCB7XG4gICAgQGluY2x1ZGUgcGFkSCgxcmVtKTtcbiAgICBwb3NpdGlvbiA6IGFic29sdXRlO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgei1pbmRleDoxO1xuICAgIHRvcDpjYWxjKDUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB9XG4gICZfX3RpdGxlIHtcbiAgICBmb250LXNpemU6My4ycmVtO1xuICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzKSB7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgfVxuICB9XG4gICZfX3Zpc3VhbCB7XG4gICAgQGluY2x1ZGUgb2JqZWN0LWZpdChjb3Zlcik7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgfVxufVxuXG4iLCIuYm94LXNhaXNvbnMge1xuICBAaW5jbHVkZSBnZW5lcmljQm94O1xuICBAaW5jbHVkZSBndXR0ZXIoMHB4KTtcbn1cbi5ib3gtc2Fpc29ucy1pdGVtIHtcbiAgZGlzcGxheTpibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjokZ3JleTtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIGNvbG9yOiR3aGl0ZTtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6XCJcIjtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIHBhZGRpbmctYm90dG9tOjEwMCU7XG4gIH1cbiAgJl9faW5uZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDpcIlwiO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gICAgICBvcGFjaXR5Oi4xNTtcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgdG9wOjA7XG4gICAgICBsZWZ0OjA7XG4gICAgICB6LWluZGV4OjE7XG4gICAgfVxuICB9XG4gICZfX2NvbnRlbnQge1xuICAgIEBpbmNsdWRlIHBhZEgoMXJlbSk7XG4gICAgcG9zaXRpb24gOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDoxMDAlO1xuICAgIHotaW5kZXg6MTtcbiAgICB0b3A6Y2FsYyg1MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxuICAmX190aXRsZSB7XG4gICAgZm9udC1zaXplOjRyZW07XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgICAgZm9udC1zaXplOjMuMnJlbTtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMpIHtcbiAgICAgIGZvbnQtc2l6ZTogMi42cmVtO1xuICAgIH1cbiAgfVxuICAmX192aXN1YWwge1xuICAgIEBpbmNsdWRlIG9iamVjdC1maXQoY292ZXIpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cbn1cblxuIiwiLmJveC1vbnBhcnRvdSB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gICZfX2xpbmsge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gIH1cbiAgJl9faW5uZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOjVyZW07XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMpIHtcbiAgICAgIHBhZGRpbmc6MnJlbTtcbiAgICB9XG4gIH1cbiAgJl9fdmlzdWFsIHtcbiAgICB3aWR0aDoxMDAlO1xuICAgIGhlaWdodDoxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6MDtcbiAgICBvdmVyZmxvdzpoaWRkZW47XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgZm9udC1mYW1pbHk6IFwib2JqZWN0LWZpdDogY292ZXJcIjtcbiAgfVxuICAmX19jb250ZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDoxO1xuICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIHBhZGRpbmc6NHJlbTtcbiAgICBtYXgtd2lkdGg6MzJyZW07XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMpIHtcbiAgICAgIHBhZGRpbmc6MnJlbTtcbiAgICB9XG4gIH1cbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTo0LjRyZW07XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIGxpbmUtaGVpZ2h0OjEuMjtcbiAgICBtYXJnaW4tYm90dG9tOjNyZW07XG4gICAgLypcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgIGZvbnQtc2l6ZToyLjVyZW07XG4gICAgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXhzKSB7XG4gICAgICBmb250LXNpemU6Mi41cmVtO1xuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xuICAgICAgZm9udC1zaXplOjMuNnJlbTtcbiAgICB9XG4gICAgKi9cbiAgfVxuICAmX190ZXh0IHtcbiAgICBmb250LXNpemU6MS42cmVtO1xuICAgIG1hcmdpbi1ib3R0b206M3JlbTtcbiAgICAvKlxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgbWF4LXdpZHRoOjYwJTtcbiAgICB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgICBmb250LXNpemU6MS4zcmVtO1xuICAgIH1cbiAgICAqL1xuICB9XG4gICZfX2J0biB7XG4gICAgd2lkdGg6MTAwJTtcbiAgfVxufVxuIiwiLmJveC1pZGVlcy1jaXJjdWl0IHtcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcbn1cbiIsIi5ib3gtdG9wLWRlc3RpbmF0aW9ucyB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gIGJhY2tncm91bmQtY29sb3I6JGdyZXlMaWdodDtcbiAgJl9fY29udGVudCB7XG4gICAgLm5vLXRvdWNoICYge1xuICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgICAgd2lkdGg6NDElO1xuICAgICAgICBmbG9hdDpsZWZ0O1xuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJl9fdmlzdWFsIHtcbiAgICBib3JkZXI6MS4ycmVtIHNvbGlkICR3aGl0ZTtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB0b3A6MDtcbiAgICBsZWZ0OmNhbGMoMTAwJSArIDE1cHgpO1xuICAgIHotaW5kZXg6MTtcbiAgICBtYXgtd2lkdGg6IDQ1LjJyZW07XG4gICAgZGlzcGxheTpub25lO1xuICAgIGEuYWN0aXZlICYge1xuICAgICAgLm5vLXRvdWNoICYge1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcbiAgICAgIG1heC13aWR0aDogNTkuNXJlbTtcbiAgICB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGcpIHtcbiAgICAgIG1heC13aWR0aDogNjguN3JlbTtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDpcIlwiO1xuICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgfVxuICB9XG4gICZfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gIH1cbiAgJl9fbGlzdCB7XG4gICAgY29sdW1uLWNvdW50OiA0O1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgY29sdW1uLWNvdW50OiAyO1xuICAgIH1cbiAgICAubm8tdG91Y2ggJiB7XG4gICAgICBjb2x1bW4tY291bnQ6IDI7XG4gICAgfVxuICAgID4gbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgID4gYSB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAubm8tdG91Y2ggJiB7XG4gICAgICAgICAgICBjb2xvcjokcGluaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5ib3gtYnJvY2h1cmUge1xuICBAaW5jbHVkZSBnZW5lcmljQm94O1xuICAmX19jb250ZW50IHtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgfVxuICAmX19saXN0IHtcbiAgICBib3gtc2hhZG93OiA1cHggNXB4IDVweCAwcHggcmdiYSgkYmxhY2ssIDAuMik7XG4gICAgJi5zbGljay1kb3R0ZWQuc2xpY2stc2xpZGVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206NnJlbTtcbiAgICB9XG4gICAgLnNsaWNrLWRvdHMge1xuICAgICAgYm90dG9tOi00cmVtO1xuICAgIH1cbiAgfVxuICAmX19jb250ZW50IHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZykge1xuICAgICAgcGFkZGluZy10b3A6NnJlbTtcbiAgICB9XG4gIH1cbiAgJl9fdGV4dCB7XG4gICAgQGluY2x1ZGUgbWFySDtcbiAgICBtYXgtd2lkdGg6NDByZW07XG4gIH1cbn0iLCIuYm94LWRpeC1ib25uZXMtcmFpc29ucyB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gIC5oZWFkZXItYm94IHtcbiAgICA+IC5zdWJ0aXRsZSB7XG4gICAgICBjb2xvcjokcGluaztcbiAgICB9XG4gIH1cbiAgJl9faW5uZXIge1xuICAgIEBpbmNsdWRlIGNvdmVyO1xuICAgIHBhZGRpbmc6NHJlbSAxcmVtO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICB9XG4gICZfX2NvbnRlbnQge1xuICAgIEBpbmNsdWRlIG1hckg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgcGFkZGluZzo0cmVtIDRyZW0gMnJlbSA0cmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gICAgbWF4LXdpZHRoOjcwcmVtO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMpIHtcbiAgICAgIHBhZGRpbmc6M3JlbSAzcmVtIDFyZW0gM3JlbTtcbiAgICB9XG4gIH1cbiAgJl9fbGlzdCB7XG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgY29sdW1uLWNvdW50OiAyO1xuICAgICAgY29sdW1uLWdhcCA6IDRyZW07XG4gICAgfVxuICAgID4gbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB9XG4gIH1cbn1cbiIsIi5ib3gtc2VydmljZXMtcGx1cyB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gIC5oZWFkZXItYm94IHtcbiAgICA+IC5zdWJ0aXRsZSB7XG4gICAgICBjb2xvcjokcGluaztcbiAgICB9XG4gIH1cbiAgJl9fbGlzdCB7XG4gICAgQGluY2x1ZGUgcGFkSCgycmVtKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgJl9faXRlbSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBtYXJnaW4tdG9wOjNyZW07XG4gICAgfVxuICB9XG4gICZfX3JvdyB7XG4gICAgQGluY2x1ZGUgZ3V0dGVyKDMwcHgpO1xuICB9XG59XG5cbi5ib3gtc2VydmljZS1wbHVzIHtcbiAgJl9fbGluayB7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gIH1cbiAgJl9faWNvbiB7XG4gICAgY29sb3I6JHBpbms7XG4gICAgZm9udC1zaXplOjZyZW07XG4gICAgd2lkdGg6NnJlbTtcbiAgICBoZWlnaHQ6NnJlbTtcbiAgICBkaXNwbGF5IDppbmxpbmUtYmxvY2s7XG4gICAgQGluY2x1ZGUgY2VudGVySWNvbjtcbiAgfVxuICAmX190aXRsZSB7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIGZvbnQtc2l6ZToxLjhyZW07XG4gICAgbWFyZ2luLXRvcDowO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbiAgJl9fdGV4dCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgfVxuXG59XG4iLCIuYm94LW9mZnJlcy1ldC1hdHRlbnRpb25zIHtcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcbiAgYmFja2dyb3VuZC1jb2xvcjokcGlua1ZlcnlMaWdodDtcbiAgLmhlYWRlci1ib3gge1xuICAgID4gLnN1YnRpdGxlIHtcbiAgICAgIGNvbG9yOiRwaW5rO1xuICAgIH1cbiAgfVxufVxuXG4uYm94LW9mZnJlcy1ldC1hdHRlbnRpb25zLWl0ZW0ge1xuICBAaW5jbHVkZSBtYXJIO1xuICBtYXgtd2lkdGg6IDEwMHJlbTtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICYgKyAmIHtcbiAgICBtYXJnaW4tdG9wOjRyZW07XG4gIH1cbiAgJl9fcm93IHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgIH1cbiAgfVxuICAmX192aXN1YWwge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIH1cbiAgfVxuICAmX19jb250ZW50IHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgcGFkZGluZzo0cmVtO1xuICAgIH1cbiAgfVxuICAmX190aXRsZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMnJlbTtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xuICAgIH1cbiAgfVxuICAmX190ZXh0IHtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICB9XG59XG4iLCIuYm94LXByZXNlbnRhdGlvbi1jaGVxdWUge1xuICBAaW5jbHVkZSBnZW5lcmljQm94O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleUxpZ2h0O1xuICAmX19yb3cge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKXtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICB9XG4gIH1cbiAgJl9fY29sIHtcbiAgICAmICsgJiB7XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpe1xuICAgICAgICBtYXJnaW4tdG9wOjRyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uYm94LXByZXNlbnRhdGlvbi1jaGVxdWUtaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICBoZWlnaHQ6MTAwJTtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gICZfX2lubmVyIHtcbiAgICBwYWRkaW5nOjJyZW0gM3JlbSAzcmVtIDNyZW07XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pe1xuICAgICAgcGFkZGluZy1ib3R0b206OXJlbTtcbiAgICB9XG4gIH1cbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTozcmVtO1xuICAgIGNvbG9yOiRibHVlO1xuICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICB9XG4gICZfX2NvbnRlbnQge1xuICAgIC50aXRsZSB7XG4gICAgICBmb250LXdlaWdodDpib2xkO1xuICAgICAgbWFyZ2luLXRvcDoycmVtO1xuICAgICAgZm9udC1zaXplOjEuOHJlbTtcbiAgICB9XG4gICAgcCB7XG4gICAgICBtYXJnaW4tdG9wOjA7XG4gICAgfVxuICAgIC5saW5rIHtcbiAgICAgIGNvbG9yOiRibHVlO1xuICAgICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tdG9wOjJyZW07XG4gICAgfVxuICB9XG4gICZfX2J0biB7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSl7XG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTowO1xuICAgICAgbGVmdDowO1xuICAgIH1cbiAgfVxufVxuIiwiLmJveC1jb21tZW50LWNhLW1hcmNoZSB7XG4gIEBpbmNsdWRlIGNvdmVyO1xuICBwYWRkaW5nOjEwcmVtIDFyZW07XG4gIHRleHQtYWxpZ246Y2VudGVyO1xuICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIEBpbmNsdWRlIHBhZFY7XG4gIH1cbiAgJl9fY29udGVudCB7XG4gICAgQGluY2x1ZGUgbWFySDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICBwYWRkaW5nOjVyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIG1heC13aWR0aDo3MHJlbTtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzKSB7XG4gICAgICBwYWRkaW5nOjNyZW0gM3JlbSAxcmVtIDNyZW07XG4gICAgfVxuICB9XG4gICZfX3RleHQge1xuICAgIGxpbmUtaGVpZ2h0OjEuNTtcbiAgICBtYXJnaW4tYm90dG9tOjRyZW07XG4gIH1cbiAgJl9fbGluayB7XG4gICAgY29sb3I6JGJsdWU7XG4gICAgZm9udC13ZWlnaHQ6NDAwO1xuICB9XG59XG4iLCIuYm94LWNoZXF1ZXMtdHVubmVsIHtcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcbiAgJl9faW5uZXIge1xuICAgIEBpbmNsdWRlIG1hckg7XG4gICAgbWF4LXdpZHRoOjgwcmVtO1xuICB9XG4gICZfX3N1YnRpdGxlIHtcbiAgICBmb250LXNpemU6M3JlbTtcbiAgICBjb2xvcjokYmx1ZTtcbiAgICBtYXJnaW4tYm90dG9tOjNyZW07XG4gICAgbGluZS1oZWlnaHQ6MS4xO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBmb250LXNpemU6Mi44cmVtO1xuICAgIH1cbiAgfVxuICAmX19yZWNhcCB7XG4gICAgbWF4LXdpZHRoOjU2cmVtO1xuICB9XG4gICZfX2NiLXRleHQge1xuICAgIG1hcmdpbi1ib3R0b206NHJlbTtcbiAgICBmb250LXNpemU6MnJlbTtcbiAgfVxuICAmX19jYi1saXN0IHtcbiAgICBAaW5jbHVkZSBtYXJIO1xuICAgIG1heC13aWR0aDo2MHJlbTtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBpbWcge1xuICAgICAgd2lkdGg6MTJyZW07XG4gICAgfVxuICB9XG4gICZfX2NiLXJvdyB7XG4gICAgQGluY2x1ZGUgZ3V0dGVyKDEwcHgpO1xuICB9XG59XG5cbi5saWduZS1yZWNhcCB7XG4gIG1hcmdpbi1ib3R0b206NHJlbTtcbiAgJl9faGVhZGVyIHtcbiAgICBkaXNwbGF5OnRhYmxlO1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JleTtcbiAgfVxuICAmX19sYWJlbCB7XG4gICAgZGlzcGxheTp0YWJsZS1jZWxsO1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICBmb250LXNpemU6MnJlbTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB9XG4gICZfX3ByaXgge1xuICAgIGRpc3BsYXk6dGFibGUtY2VsbDtcbiAgICBmb250LXNpemU6MnJlbTtcbiAgICB0ZXh0LWFsaWduOnJpZ2h0O1xuICAgIHdpZHRoOjhyZW07XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgfVxuICAmX19jb250ZW50IHtcbiAgICBtYXJnaW4tdG9wOjJyZW07XG4gICAgZm9udC1zaXplOjJyZW07XG4gICAgLmxpbmsge1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIGZvbnQtc2l6ZToxLjZyZW07XG4gICAgICBtYXJnaW4tdG9wOjFyZW07XG4gICAgfVxuICB9XG59XG4iLCIuYm94LWRkdiB7XG4gIG1hcmdpbi10b3A6M3JlbTtcbiAgLnBhZ2UtZGR2LWxpZ2h0ICYge1xuICAgIG1hcmdpbi10b3A6MXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOjRyZW07XG4gICAgLmFjdGlvbnMge1xuICAgICAgbWFyZ2luLXRvcDoycmVtO1xuICAgIH1cbiAgfVxuXG4gIC5wYWdlLWRkdi1wYXlzICYge1xuICAgIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgIG1hcmdpbi10b3A6MDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogLTZyZW07XG4gICAgfVxuICAgIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcbiAgICAgIHRvcDogLTE1cmVtO1xuICAgIH1cbiAgfVxuICAmX19pbm5lciB7XG4gICAgQGluY2x1ZGUgbWFySDtcbiAgICBtYXgtd2lkdGg6ODByZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgLnBhZ2UtZGR2LWxpZ2h0ICZ7XG4gICAgICBtYXgtd2lkdGg6MTAwcmVtO1xuICAgIH1cbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLWxnKSB7XG4gICAgICBtYXgtd2lkdGg6MTAwcmVtO1xuICAgIH1cbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBwYWRkaW5nOjJyZW07XG4gICAgICAucGFnZS1kZHYtY29uZmlybWF0aW9uICYge1xuICAgICAgICBwYWRkaW5nOjJyZW0gNnJlbSA2cmVtIDZyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG4gICZfX3N1YnRpdGxlIHtcbiAgICBmb250LXNpemU6M3JlbTtcbiAgICBjb2xvcjokYmx1ZTtcbiAgICBtYXJnaW4tYm90dG9tOjNyZW07XG4gICAgbGluZS1oZWlnaHQ6MS4xO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBmb250LXNpemU6Mi44cmVtO1xuICAgIH1cbiAgfVxuICAmX190ZXh0IHtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gIH1cbiAgJl9fb2JsaWdhdG9pcmUge1xuICAgIGZvbnQtc2l6ZToxLjJyZW07XG4gICAgdGV4dC1hbGlnbjpyaWdodDtcbiAgICBtYXJnaW4tdG9wOjJyZW07XG4gICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xuICAgIC5wYWdlLWRkdi1saWdodCAmIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0ycmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX19tZW50aW9ucyB7XG4gICAgZm9udC1zaXplOjEuMnJlbTtcbiAgICAucGFnZS1kZHYtbGlnaHQgJiB7XG4gICAgICBmb250LXNpemU6MXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLmJveC1kZHYtbWVhIHtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIHRleHQtYWxpZ246Y2VudGVyO1xuICBjb2xvcjokd2hpdGU7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIG1hcmdpbi1ib3R0b206NHJlbTtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6XCJcIjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICBvcGFjaXR5Oi4yO1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgaGVpZ2h0OjEwMCU7XG4gICAgdG9wOjA7XG4gICAgbGVmdDowO1xuICB9XG4gICZfX3Zpc3VhbCB7XG4gICAgQGluY2x1ZGUgb2JqZWN0LWZpdChjb3Zlcik7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBoZWlnaHQ6MzZyZW07XG4gIH1cbiAgJl9fY29udGVudCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAyO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzAlKTtcbiAgICAgQGluY2x1ZGUgcGFkSCgycmVtKTtcbiAgfVxuICAmX190aXRsZSB7XG4gICAgZm9udC1zaXplOjIuNXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogLjVyZW07XG4gICAgZm9udC13ZWlnaHQ6NTAwO1xuICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcbiAgICBjb2xvcjokd2hpdGU7XG4gICAgbWFyZ2luLWJvdHRvbToxLjVyZW07XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMpIHtcbiAgICAgIGZvbnQtc2l6ZToycmVtO1xuICAgIH1cbiAgfVxuICAmX19zdWJ0aXRsZS1hbHBoYSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS0yO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBmb250LXdlaWdodDozMDA7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIGxldHRlci1zcGFjaW5nOiAuMnJlbTtcbiAgICBmb250LXNpemU6Mi4ycmVtO1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBmb250LXNpemU6MnJlbTtcbiAgICB9XG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xuICAgICAgZm9udC1zaXplOjIuOHJlbTtcbiAgICB9XG4gIH1cbn1cbi5kZHYtY29uZmlybWF0aW9uLWhlYWRlciB7XG4gIHRleHQtYWxpZ246Y2VudGVyO1xuICBtYXJnaW4tYm90dG9tOjJyZW07XG59XG4uZGR2LWNvbmZpcm1hdGlvbi10aXRsZSB7XG4gIGZvbnQtc2l6ZTo0cmVtO1xuICBmb250LXdlaWdodDo3MDA7XG4gIHRleHQtYWxpZ246Y2VudGVyO1xuICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICZfX2ljb24ge1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIGZvbnQtc2l6ZTo2cmVtO1xuICAgIGhlaWdodDo3cmVtO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgfVxuICB9XG59XG5cbi5ib3gtcGRmIHtcbiAgdGV4dC1hbGlnbjpyaWdodDtcbiAgbWFyZ2luLWJvdHRvbTo0cmVtO1xuICAucGFnZS1kZHYtbGlnaHQgJiB7XG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICB9XG4gICZfX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIH1cbiAgJl9fcHNldWRvLWxpbmsge1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICBmb250LXNpemU6MS44cmVtO1xuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcbiAgICB9XG4gIH1cbiAgJl9fZm9ybWF0IHtcbiAgICBmb250LXNpemU6MS4ycmVtO1xuICB9XG4gICZfX3Zpc3VhbCB7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6N3JlbTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB9XG59XG4iLCIuYm94LW5vcy1hZ2VuY2VzIHtcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcbiAgJl9fcm93IHtcbiAgICBAaW5jbHVkZSBndXR0ZXIoNTBweCk7XG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgICAgIEBpbmNsdWRlIGd1dHRlcigzMHB4KTtcbiAgICB9XG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICAgIEBpbmNsdWRlIGd1dHRlcigxNXB4KTtcbiAgICB9XG4gIH1cbn1cbi5ib3gtbm9zLWFnZW5jZXMtaXRlbSB7XG4gIEBpbmNsdWRlIG1hckg7XG4gIG1hcmdpbi1ib3R0b206M3JlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAmX192aXN1YWwge1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgfVxuICAmX190aXRsZSB7XG4gICAgZm9udC1zaXplOjEuN3JlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgcGFkZGluZy1ib3R0b206MXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDpcIlwiO1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIHdpZHRoOjFyZW07XG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgIGhlaWdodDoycHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRiYXNlLWNvbG9yO1xuICAgICAgdG9wOjEwMCU7XG4gICAgICBsZWZ0OjUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi5ib3gtc2VydmljZS1jbGllbnQge1xuICBAaW5jbHVkZSBnZW5lcmljQm94O1xuICAmX19pbm5lciB7XG4gICAgcGFkZGluZzo0cmVtO1xuICAgIG1pbi1oZWlnaHQ6NDByZW07XG4gICAgQGluY2x1ZGUgY292ZXIoMCwwKTtcbiAgfVxuICAmX19jb250ZW50IHtcblxuICB9XG4gICZfX3RpdGxlIHtcbiAgICBmb250LXNpemU6M3JlbTtcbiAgICBmb250LXdlaWdodDo3MDA7XG4gICAgbGluZS1oZWlnaHQ6MS4yO1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xuICAgICAgZm9udC1zaXplOjMuNnJlbTtcbiAgICB9XG4gIH1cblxuICAmX190ZXh0IHtcbiAgICB3aWR0aDozNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOjNyZW07XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBtYXgtd2lkdGg6MTAwJTtcbiAgICB9XG4gIH1cbiAgJl9fYnRuIHtcbiAgICBmb250LXdlaWdodDo3MDA7XG4gICAgQGluY2x1ZGUgZ2VuZXJpY0J1dHRvbjtcbiAgICBib3JkZXI6MXB4IHNvbGlkICRiYXNlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgZm9udC1zaXplOjEuNHJlbVxuICAgIH1cbiAgfVxufVxuIiwiLmJveC1wcmVzc2UtZXQtdGVjaG5pcXVlIHtcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcbiAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAucm93IHtcbiAgICAgICYgPiAqIHtcbiAgICAgICAgbWFyZ2luLXRvcDo0cmVtO1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOjA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmJveC1wcmVzc2UtZXQtdGVjaG5pcXVlLWl0ZW0ge1xuICBAaW5jbHVkZSBjb3ZlcjtcbiAgZGlzcGxheTpibG9jaztcbiAgaGVpZ2h0OjIycmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tbGcpIHtcbiAgICBoZWlnaHQ6MjhyZW07XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjUwZW07IC8qIHNwYWNlIHdpZHRoICovXG4gIH1cbiAgJl9fdGl0bGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHBhZGRpbmc6MXJlbSA2cmVtO1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG4gICZfX2xpbmsge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbn1cbiIsIi5ib3gtYWdlbmNlLWFjY2VzIHtcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcbiAgJl9faWZyYW1lIHtcbiAgICB3aWR0aDoxMDAlO1xuICAgIGJvcmRlcjpub25lO1xuICB9XG59XG4iLCIuYm94LWFnZW5jZS12aXNpdGUge1xuICBAaW5jbHVkZSBnZW5lcmljQm94O1xuICAmX19pZnJhbWUge1xuICAgIHdpZHRoOjEwMCU7XG4gICAgYm9yZGVyOm5vbmU7XG4gIH1cbn1cbiIsIi5ib3gtYWdlbmNlLWV2ZW5lbWVudHMge1xuICBAaW5jbHVkZSBnZW5lcmljQm94O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiRncmV5TGlnaHQ7XG59XG4uYm94LWFnZW5jZS1ldmVuZW1lbnRzLWl0ZW0ge1xuICBAaW5jbHVkZSBtYXJIO1xuICBtYXgtd2lkdGg6IDEwMHJlbTtcbiAgJiArICYge1xuICAgIG1hcmdpbi10b3A6OHJlbTtcbiAgfVxuICAmX19yb3cge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XG4gICAgICBAaW5jbHVkZSBndXR0ZXIoMzBweCk7XG4gICAgfVxuICB9XG4gICZfX3Zpc3VhbCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgfVxuICB9XG4gICZfX3RoZW1lIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZToxLjhyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuICAmX190aXRyZSB7XG4gICAgZm9udC1zaXplOiAyLjZyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcblxuICB9XG4gICZfX2luZm9zIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgY29sb3I6JGJsdWU7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICB9XG4gICZfX3RleHQge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgbWFyZ2luLXRvcDowO1xuICB9XG59XG4iLCIuYm94LXByZXNlbnRhdGlvbi1tYXJpYWdlIHtcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXlMaWdodDtcbiAgJl9fcm93IHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSl7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgfVxuICB9XG4gICZfX2NvbCB7XG4gICAgJiArICYge1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KXtcbiAgICAgICAgbWFyZ2luLXRvcDo0cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmJveC1wcmVzZW50YXRpb24tbWFyaWFnZS1pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gIGhlaWdodDoxMDAlO1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgJl9faW5uZXIge1xuICAgIHBhZGRpbmc6MnJlbSAzcmVtIDNyZW0gM3JlbTtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSl7XG4gICAgICAmLndpdGhDVEEge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTo5cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX190aXRsZSB7XG4gICAgZm9udC1zaXplOjNyZW07XG4gICAgY29sb3I6JGJsdWU7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICBsaW5lLWhlaWdodDoxO1xuICAgIHNwYW4ge1xuICAgICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICB9XG4gIH1cbiAgJl9fc3VidGl0bGUge1xuICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcbiAgICB9XG4gIH1cbiAgJl9fY29udGVudCB7XG4gICAgLnRpdGxlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gICAgICBtYXJnaW4tdG9wOjJyZW07XG4gICAgICBmb250LXNpemU6MS44cmVtO1xuICAgIH1cbiAgICBwIHtcbiAgICAgIG1hcmdpbi10b3A6MDtcbiAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICB9XG4gICAgdWwge1xuICAgIH1cbiAgICBsaSB7XG4gICAgICB0ZXh0LWluZGVudDoxcmVtO1xuICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgd2lkdGg6MC4zcmVtO1xuICAgICAgICBoZWlnaHQ6MC4zcmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOjUwJTtcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJhc2UtY29sb3I7XG4gICAgICAgIHRvcDowLjhyZW07XG4gICAgICB9XG4gICAgfVxuICAgIC5saW5rIHtcbiAgICAgIGNvbG9yOiRibHVlO1xuICAgICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICB9XG4gIH1cbiAgJl9fYnRuIHtcbiAgICB3aWR0aDoxMDAlO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKXtcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgYm90dG9tOjA7XG4gICAgICBsZWZ0OjA7XG4gICAgfVxuICB9XG59XG4iLCIuYm94LWJvbm5lcy1yYWlzb25zLW1hcmlhZ2Uge1xuICBAaW5jbHVkZSBnZW5lcmljQm94O1xuICAmX19saW5rIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICB9XG4gICZfX3JvdyB7XG4gICAgQGluY2x1ZGUgZ3V0dGVyKDUwcHgpO1xuXG4gIH1cbn1cbi5ib3gtYm9ubmVzLXJhaXNvbnMtbWFyaWFnZS1pdGVtIHtcbiAgQGluY2x1ZGUgbWFySDtcbiAgbWFyZ2luLWJvdHRvbTozcmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICZfX3Zpc3VhbCB7XG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIGJvcmRlci1yYWRpdXM6NTAlO1xuICAgIG1heC13aWR0aDogMThyZW07XG4gIH1cbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZToycmVtO1xuICB9XG59XG4iLCIuYm94LWF2YW50YWdlcyB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gICZfX2lubmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwaW5rTGlnaHQ7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgZGlzcGxheTp0YWJsZTtcbiAgICB3aWR0aDoxMDAlO1xuICAgIGhlaWdodDo1MHJlbTtcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgaGVpZ2h0OmF1dG87XG4gICAgfVxuICB9XG4gICZfX2hlYWRlciB7XG4gICAgd2lkdGg6NTByZW07XG4gICAgcGFkZGluZzo2cmVtO1xuICAgIGRpc3BsYXk6dGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgICBwYWRkaW5nOjRyZW07XG4gICAgICB3aWR0aDo0MCU7XG4gICAgfVxuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgcGFkZGluZzozcmVtO1xuICAgICAgd2lkdGg6YXV0bztcbiAgICB9XG4gIH1cbiAgJl9fYWN0aW9ucyB7XG4gICAgdGV4dC1hbGlnbjpsZWZ0O1xuICB9XG4gICZfX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6dGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjp0b3A7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgfVxuICB9XG4gICZfX2xpc3Qge1xuICAgIGZvbnQtc2l6ZToxLjhyZW07XG4gICAgbGkgKyBsaSB7XG4gICAgICBtYXJnaW4tdG9wOjJyZW07XG4gICAgfVxuICB9XG4gICZfX2xpc3QtdmlzdWFsIHtcbiAgICBoZWlnaHQ6MTAwJTtcbiAgfVxuICAmX190aXRsZSB7XG4gICAgZm9udC1zaXplOjMuNHJlbTtcbiAgICBmb250LXdlaWdodDo3MDA7XG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICB9XG4gICZfX3RleHQge1xuICAgIGxpbmUtaGVpZ2h0OjEuNTtcbiAgICBmb250LXNpemU6MS44cmVtO1xuICB9XG59XG5cbi5ib3gtYXZhbnRhZ2VzLWl0ZW0ge1xuICBkaXNwbGF5OmJsb2NrO1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgaGVpZ2h0OjEwMCU7XG4gICZfX2NvbnRlbnQge1xuICAgIGhlaWdodDoxMDAlO1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICBwYWRkaW5nOjZyZW07XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIHBhZGRpbmc6M3JlbTtcbiAgICAgIGhlaWdodDoyNXJlbTtcbiAgICB9XG4gIH1cbiAgJl9fdmlzdWFsIHtcbiAgICB3aWR0aDoxMDAlO1xuICAgIGhlaWdodDoxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6MDtcbiAgICBvdmVyZmxvdzpoaWRkZW47XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgZm9udC1mYW1pbHk6IFwib2JqZWN0LWZpdDogY292ZXJcIjtcbiAgfVxufVxuIiwiLmJveC1wYXJ0aWNpcGF0aW9uLWNhZGVhdSB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gICZfX2lubmVyIHtcbiAgICBAaW5jbHVkZSBtYXJIO1xuICAgIG1heC13aWR0aDo4MHJlbTtcbiAgfVxuICAmX19oZWFkZXIge1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIHBhZGRpbmctYm90dG9tOiA0cmVtO1xuICB9XG4gICZfX2hlYWRlci10aXRsZSB7XG4gICAgZm9udC1zaXplOjMuNnJlbTtcbiAgICBmb250LXdlaWdodDo0MDA7XG4gICAgY29sb3I6JGJsdWU7XG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIGZvbnQtc2l6ZTozLjJyZW07XG4gICAgfVxuICB9XG4gICZfX2hlYWRlci1zdWJ0aXRsZSB7XG4gICAgZm9udC1zaXplOjEuNHJlbTtcbiAgfVxuICAmX19iZW5lZmljaWFpcmUge1xuICAgIGZvbnQtc2l6ZToxLjJlbTtcbiAgICBtYXJnaW4tYm90dG9tOjVyZW07XG4gICAgbGkgKyBsaSB7XG4gICAgICBtYXJnaW4tdG9wOjAuNXJlbTtcbiAgICB9XG4gIH1cbn1cbiIsIi5ib3gtZXNwYWNlLWNsaWVudCB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gICZfX2NvbCB7XG4gICAgJiArICYge1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KXtcbiAgICAgICAgbWFyZ2luLXRvcDo0cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX19mb290ZXIge1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIGNvbG9yOiRibHVlO1xuICAgIG1hcmdpbi10b3A6NHJlbTtcbiAgfVxufVxuLmJveC1lc3BhY2UtY2xpZW50LWl0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleUxpZ2h0O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKXtcbiAgICBtYXJnaW4tdG9wOi0xNXJlbTtcbiAgICAubW9kYWwgJiB7XG4gICAgICBtYXJnaW4tdG9wOjA7XG4gICAgfVxuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKXtcbiAgICBtYXJnaW4tdG9wOi0yMHJlbTtcbiAgICAubW9kYWwgJiB7XG4gICAgICBtYXJnaW4tdG9wOjA7XG4gICAgfVxuICB9XG4gICZfX2lubmVyIHtcbiAgICBwYWRkaW5nOjJyZW0gM3JlbSAzcmVtIDNyZW07XG4gIH1cbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTozcmVtO1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBzcGFuIHtcbiAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgfVxuICB9XG4gICZfX3N1YnRpdGxlIHtcbiAgICBmb250LXdlaWdodDo3MDA7XG4gICAgZm9udC1zaXplOjIuNHJlbTtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gIH1cbiAgJl9fdGV4dCB7XG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICB9XG4gICZfX2NvbnRlbnQge1xuICAgIC50aXRsZSB7XG4gICAgICBmb250LXdlaWdodDpib2xkO1xuICAgICAgbWFyZ2luLXRvcDoycmVtO1xuICAgICAgZm9udC1zaXplOjEuOHJlbTtcbiAgICB9XG4gICAgcCB7XG4gICAgICBtYXJnaW4tdG9wOjA7XG4gICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgfVxuICAgIC5saW5rLWFscGhhIHtcbiAgICAgIG1hcmdpbi10b3A6MC41cmVtO1xuICAgIH1cbiAgfVxuICAmX19idG4ge1xuICAgIHdpZHRoOjEwMCU7XG4gIH1cbiAgJl9fbGluay1ib3R0b20ge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOjEuOHJlbTtcbiAgfVxuICAmX19saXN0IHtcbiAgICBsaTpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmx1ZTtcbiAgICB9XG4gICAgbGkgKyBsaSB7XG4gICAgICBtYXJnaW4tdG9wOjFyZW07XG4gICAgfVxuICB9XG59XG4iLCIuYm94LWVudmllcy1wYXItcGF5cyB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gICZfX2lubmVyIHtcbiAgICBAaW5jbHVkZSBjb3ZlcjtcbiAgICBwYWRkaW5nOjE0cmVtIDFyZW0gNnJlbSAxcmVtO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tbGcpIHtcbiAgICAgIEBpbmNsdWRlIHBhZFYoMTVyZW0pO1xuICAgIH1cbiAgfVxuICAmX19jb250ZW50IHtcbiAgICBAaW5jbHVkZSBtYXJIO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAmX190aXRsZSB7XG4gICAgQGluY2x1ZGUgcGFkSCgycmVtKTtcbiAgICBmb250LXNpemU6NHJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogLjVyZW07XG4gICAgZm9udC13ZWlnaHQ6NTAwO1xuICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcbiAgICBjb2xvcjokd2hpdGU7XG4gICAgbWFyZ2luLWJvdHRvbTozcmVtO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBmb250LXNpemU6cmVtKDMwKTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAuMnJlbTtcbiAgICB9XG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xuICAgICAgZm9udC1zaXplOjVyZW07XG4gICAgfVxuICAgIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tbGcpIHtcbiAgICAgIGZvbnQtc2l6ZTogNnJlbTtcbiAgICB9XG4gIH1cbn1cbiIsIi5ib3gtc2Fpc29ucyB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gIHBhZGRpbmctYm90dG9tOjA7XG59XG5cblxuLmJveC1zYWlzb24taXRlbSB7XG4gICRyYXRpbyA6ICg1MDYgLyA1MDYpICogMTAwO1xuICBAaW5jbHVkZSBtYXJIO1xuXG4gIG1hcmdpbi10b3A6OHJlbTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgbWFyZ2luLXRvcDogNHJlbTtcbiAgfVxuICBcbiAgJl9fcm93IHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xuICAgICAgQGluY2x1ZGUgZ3V0dGVyKDMwcHgpO1xuICAgIH1cbiAgfVxuXG4gICZfX3Zpc3VhbC1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgfVxuICAgICY6YWZ0ZXJ7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nLWJvdHRvbTokcmF0aW8gKyAlO1xuICAgIH1cbiAgfVxuICAmX192aXN1YWwtd3JhcHBlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG4gICZfX3Zpc3VhbCB7XG4gICAgQGluY2x1ZGUgb2JqZWN0LWZpdChjb3Zlcik7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgfVxuICAmX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuICAmX190ZXh0IHtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICAgIG1hcmdpbi1ib3R0b206NHJlbTtcbiAgICBtYXJnaW4tdG9wOjNyZW07XG4gICAgYSB7XG4gICAgICBAaW5jbHVkZSBsaW5rLWFscGhhO1xuICAgIH1cbiAgfVxuICAmX19jdGEge1xuICAgIEBpbmNsdWRlIGJ0bkZyaWVuZDtcbiAgICBtYXJnaW4tdG9wOjJyZW07XG4gIH1cbiAgJl9fY29uZGl0aW9ucyB7XG4gICAgY29sb3I6JGFscGhhLWNvbG9yO1xuICAgIGxldHRlci1zcGFjaW5nOiAuMXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG59XG5cbi5ib3gtc2Fpc29uLW1vaXMge1xuICAkcmF0aW8gOiAoNTA2IC8gNTA2KSAqIDEwMDtcbiAgQGluY2x1ZGUgbWFySDtcbiAgXG4gICZfX3JvdyB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcbiAgICAgIEBpbmNsdWRlIGd1dHRlcigzMHB4KTtcbiAgICB9XG4gIH1cbiAgJl9faXRlbSB7XG4gICAgJiArICYge1xuICAgICAgbWFyZ2luLXRvcDo4cmVtO1xuICAgIH1cbiAgfVxuICAmX192aXN1YWwge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgQGluY2x1ZGUgbWFyVigycmVtKTtcbiAgfVxuICAmX190aXRsZSB7XG4gICAgQGluY2x1ZGUgbWFyVigycmVtKTtcbiAgICBmb250LXNpemU6IDNyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgfVxuICAmX190ZXh0IHtcbiAgICBAaW5jbHVkZSBtYXJIO1xuICAgIEBpbmNsdWRlIG1hclYoMnJlbSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICB0ZXh0LWFsaWduOmp1c3RpZnk7XG5cbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGxpbmstYWxwaGE7XG4gICAgfVxuICB9XG4gICZfX2FjdGlvbnMge1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICB9XG4gICZfX2N0YSB7XG4gICAgQGluY2x1ZGUgYnRuRnJpZW5kO1xuICB9XG59IiwiLmJveC1ub3MtYnJvY2h1cmVzIHtcbiAgcGFkZGluZy10b3A6IDRyZW07XG4gIHBhZGRpbmctYm90dG9tOiA0cmVtO1xuICBwYWRkaW5nLXRvcDogMDtcbn1cblxuLmJveC1ub3MtYnJvY2h1cmVzX19yb3cge1xuICBtYXJnaW4tbGVmdDogLTUwcHg7XG4gIG1hcmdpbi1yaWdodDogLTUwcHg7XG59XG5cbi5ib3gtbm9zLWJyb2NodXJlc19fcm93ID4gKiB7XG4gIHBhZGRpbmctbGVmdDogNTBweDtcbiAgcGFkZGluZy1yaWdodDogNTBweDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEzOTlweCkge1xuICAuYm94LW5vcy1icm9jaHVyZXNfX3JvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zMHB4O1xuICAgIG1hcmdpbi1yaWdodDogLTMwcHg7XG4gIH1cbiAgLmJveC1ub3MtYnJvY2h1cmVzX19yb3cgPiAqIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmJveC1ub3MtYnJvY2h1cmVzX19yb3cge1xuICAgIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuICB9XG4gIC5ib3gtbm9zLWJyb2NodXJlc19fcm93ID4gKiB7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIH1cbn1cblxuLmJveC1ub3MtYnJvY2h1cmVzIC5ib3gtbm9zLWJyb2NodXJlc19fcm93ID4gKiB7XG4gIHBhZGRpbmctbGVmdDogMTVweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5ib3gtbm9zLWJyb2NodXJlcy1pdGVtIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogNnJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYm94LW5vcy1icm9jaHVyZXMtaXRlbV9fbGluayBkaXYge1xuICBiYWNrZ3JvdW5kOiAjZGJkZGUzO1xuICBwYWRkaW5nOiA1LjVyZW0gMCA0cmVtO1xufVxuXG4uYm94LW5vcy1icm9jaHVyZXMtaXRlbV9fdmlzdWFsIHtcbiAgYm94LXNoYWRvdzogNXB4IDVweCA1cHggIzhhOGE4YTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLmJveC1ub3MtYnJvY2h1cmVzLWl0ZW1fX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxLjdyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uYm94LW5vcy1icm9jaHVyZXMtaXRlbV9fdGV4dCB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbi5ib3gtbm9zLWJyb2NodXJlcy1pdGVtX190ZXh0IC5saW5rLWFscGhhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmJveC1ub3MtYnJvY2h1cmVzLWl0ZW0gLmJ1dHRvbi1hbHBoYSB7XG4gICAgZm9udC1zaXplOiAxLjdyZW07XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxufVxuXG4vKkNvbW1hbmRlKi9cbmJvZHkuYnJvY2h1cmVzIC5tb2RhbCB7XG4gIHRvcDogYXV0bztcbiAgbGVmdDogYXV0bztcbn1cbmJvZHkuYnJvY2h1cmVzIC5tb2RhbC1hbHBoYSB7XG4gIHBhZGRpbmctcmlnaHQ6IDE3cHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICBib2R5LmJyb2NodXJlcyAubW9kYWwtYWxwaGEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn0iLCIuYm94LWxlLWZvb2RpbmctaXRlbSB7XHJcbiAgcGFkZGluZy10b3A6IDRyZW07XHJcbiAgcGFkZGluZy1ib3R0b206IDRyZW07XHJcbiAgbWFyZ2luOiAwIDFyZW07XHJcbn1cclxuXHJcbi5ib3gtbGUtZm9vZGluZy1pdGVtX190aXRsZSB7XHJcbiAgY29sb3I6ICMwMDgyYWQ7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBmb250LXdlaWdodDogNTAwO1xyXG4gIGZvbnQtc2l6ZTogMnJlbTtcclxuICBsaW5lLWhlaWdodDogMS41O1xyXG4gIG1hcmdpbi10b3A6IDFyZW07XHJcbn1cclxuXHJcbi5ib3gtbGUtZm9vZGluZy1pdGVtX19zdWJ0aXRsZSB7XHJcbiAgZm9udC1zaXplOiAzcmVtO1xyXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbn1cclxuXHJcbi5ib3gtbGUtZm9vZGluZy1pdGVtX19saWVuIHtcclxuICBjb2xvcjogIzAwODJhZDtcclxufSIsIi5wYWdlLW5vcy1tYWlzb25zICNzdGlja3ktbmF2LXdyYXBwZXIgaW1nXHJcbntcclxuICBwYWRkaW5nLXRvcDogMnJlbTtcclxufVxyXG4ucGFnZS1ub3MtbWFpc29ucy5zdGlja3ktbmF2LWlzLWZpeGVkIC5zdGlja3ktbmF2X19pdGVtIGltZywgXHJcbi5wYWdlLW5vcy1tYWlzb25zLnN0aWNreS1uYXYtaXMtZml4ZWQgLnN0aWNreS1uYXZfX2l0ZW0gYnJcclxue1xyXG4gIGRpc3BsYXk6bm9uZSAhaW1wb3J0YW50O1xyXG59XHJcbiIsIi5wYWdlLWxhLXByZXNzZS1lbi1wYXJsZSAuZG9jdW1lbnRcclxue1xyXG4gIHBhZGRpbmc6IDE1cHggMCAwO1xyXG59IiwiLmJveC12b3lhZ2Utc3VyLW1lc3VyZS1pbnRybyxcclxuLmJveC12b3lhZ2Utc3VyLW1lc3VyZS12aXAsXHJcbi5ib3gtdm95YWdlLXN1ci1tZXN1cmUtdG91cmlzbWUsXHJcbi5ib3gtdm95YWdlLXN1ci1tZXN1cmUtY29tcGVuc2F0aW9uLFxyXG4uYm94LXZveWFnZS1zdXItbWVzdXJlLWhpc3RvaXJlLFxyXG4uYm94LXZveWFnZS1zdXItbWVzdXJlLWRhdGUge1xyXG4gIHBhZGRpbmctdG9wOiA0cmVtO1xyXG4gIHBhZGRpbmctYm90dG9tOiA0cmVtO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLmJveC12b3lhZ2Utc3VyLW1lc3VyZS1pbnRyb19fdGV4dCxcclxuLmJveC12b3lhZ2Utc3VyLW1lc3VyZS12aXBfX3RleHQsXHJcbi5ib3gtdm95YWdlLXN1ci1tZXN1cmUtdG91cmlzbWVfX3RleHQsXHJcbi5ib3gtdm95YWdlLXN1ci1tZXN1cmUtY29tcGVuc2F0aW9uX190ZXh0LFxyXG4uYm94LXZveWFnZS1zdXItbWVzdXJlLWhpc3RvaXJlX190ZXh0LFxyXG4uYm94LXZveWFnZS1zdXItbWVzdXJlLWRhdGVfX3RleHQge1xyXG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gIG1hcmdpbi1yaWdodDogYXV0bztcclxuICBtYXgtd2lkdGg6IDEwMHJlbTtcclxuICBsaW5lLWhlaWdodDogMS41O1xyXG59XHJcblxyXG4uaGVhZGVyLWJveCArIC5ib3gtdm95YWdlLXN1ci1tZXN1cmUtaW50cm9fX3RleHQsIC5oZWFkZXItYm94ICtcclxuLmJveC12b3lhZ2Utc3VyLW1lc3VyZS12aXBfX3RleHQsIC5oZWFkZXItYm94ICtcclxuLmJveC12b3lhZ2Utc3VyLW1lc3VyZS10b3VyaXNtZV9fdGV4dCwgLmhlYWRlci1ib3ggK1xyXG4uYm94LXZveWFnZS1zdXItbWVzdXJlLWNvbXBlbnNhdGlvbl9fdGV4dCwgLmhlYWRlci1ib3ggK1xyXG4uYm94LXZveWFnZS1zdXItbWVzdXJlLWhpc3RvaXJlX190ZXh0LCAuaGVhZGVyLWJveCArXHJcbi5ib3gtdm95YWdlLXN1ci1tZXN1cmUtZGF0ZV9fdGV4dCB7XHJcbiAgbWFyZ2luLXRvcDogM3JlbTtcclxufVxyXG5cclxuLmJveC12b3lhZ2Utc3VyLW1lc3VyZS1lbmdhZ2VtZW50cyB7XHJcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xyXG4gIHBhZGRpbmc6IDEwcmVtIDFyZW07XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAuYm94LXZveWFnZS1zdXItbWVzdXJlLWVuZ2FnZW1lbnRzIHtcclxuICAgIHBhZGRpbmctdG9wOiA0cmVtO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDRyZW07XHJcbiAgfVxyXG59XHJcblxyXG4uYm94LXZveWFnZS1zdXItbWVzdXJlLWVuZ2FnZW1lbnRzX19jb250ZW50IHtcclxuICBtYXJnaW4tbGVmdDogYXV0bztcclxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgY29sb3I6ICNGRkY7XHJcbiAgcGFkZGluZzogNXJlbTtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIG1heC13aWR0aDogNzByZW07XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xyXG4gIC5ib3gtdm95YWdlLXN1ci1tZXN1cmUtZW5nYWdlbWVudHNfX2NvbnRlbnQge1xyXG4gICAgcGFkZGluZzogM3JlbSAzcmVtIDFyZW0gM3JlbTtcclxuICB9XHJcbn1cclxuXHJcbi5ib3gtdm95YWdlLXN1ci1tZXN1cmUtZW5nYWdlbWVudHNfX3RleHQge1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgbWFyZ2luLWJvdHRvbTogNHJlbTtcclxufVxyXG5cclxuLmJveC12b3lhZ2Utc3VyLW1lc3VyZS1lbmdhZ2VtZW50c19fbGluayB7XHJcbiAgY29sb3I6ICMwMDgyYWQ7XHJcbiAgZm9udC13ZWlnaHQ6IDQwMDtcclxufVxyXG5cclxuLmJveC12b3lhZ2Utc3VyLW1lc3VyZS1yZXNwZWN0IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjFGMUYxO1xyXG4gIHBhZGRpbmctdG9wOiA0cmVtO1xyXG4gIHBhZGRpbmctYm90dG9tOiA0cmVtO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLmJveC12b3lhZ2Utc3VyLW1lc3VyZS1yZXNwZWN0X190ZXh0IHtcclxuICBtYXJnaW4tbGVmdDogYXV0bztcclxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgbWF4LXdpZHRoOiAxMDByZW07XHJcbiAgbGluZS1oZWlnaHQ6IDEuNTtcclxufVxyXG5cclxuLmJveC12b3lhZ2Utc3VyLW1lc3VyZS1oaXN0b2lyZV9fY29udGVudCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcclxufVxyXG5cclxuLmJveC12b3lhZ2Utc3VyLW1lc3VyZS1oaXN0b2lyZV9fY29udGVudCxcclxuLmJveC12b3lhZ2Utc3VyLW1lc3VyZS1kYXRlX19jb250ZW50IHtcclxuICBtYXJnaW4tbGVmdDogYXV0bztcclxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgcGFkZGluZzogNXJlbTtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIG1heC13aWR0aDogMTAwcmVtO1xyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcclxuICAuYm94LXZveWFnZS1zdXItbWVzdXJlLWhpc3RvaXJlX19jb250ZW50LFxyXG4gIC5ib3gtdm95YWdlLXN1ci1tZXN1cmUtZGF0ZV9fY29udGVudCB7XHJcbiAgICBwYWRkaW5nOiAzcmVtIDNyZW0gMXJlbSAzcmVtO1xyXG4gIH1cclxufVxyXG5cclxuLmJveC12b3lhZ2Utc3VyLW1lc3VyZS1oaXN0b2lyZV9fY29udGVudCBwLFxyXG4uYm94LXZveWFnZS1zdXItbWVzdXJlLWRhdGVfX2NvbnRlbnQgcCB7XHJcbiAgdGV4dC1hbGlnbjoganVzdGlmeTtcclxufVxyXG5cclxuLmJveC12b3lhZ2Utc3VyLW1lc3VyZS1oaXN0b2lyZV9fY29udGVudCBwOmZpcnN0LWNoaWxkLFxyXG4uYm94LXZveWFnZS1zdXItbWVzdXJlLWRhdGVfX2NvbnRlbnQgcDpmaXJzdC1jaGlsZCB7XHJcbiAgbWFyZ2luLXRvcDogMXJlbTtcclxufSIsIi5wYWdlLXZhbGlzZS1pZGVhbGUgLmJveC1icm9jaHVyZVxuICB7XG4gICAgcGFkZGluZzogMTByZW0gMDtcbiAgfVxuLnBhZ2UtdmFsaXNlLWlkZWFsZSAuYm94LWJyb2NodXJlIGFcbiAge1xuICAgIGJhY2tncm91bmQ6I0ZGRjtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIG1pbi1oZWlnaHQ6IDI3MHB4O1xuICAgIHBhZGRpbmc6IDVyZW0gNXJlbTtcbiAgfSIsIi5ib3gtbGlicmFpcmllLWFjdHVzIHtcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcbiAgYmFja2dyb3VuZC1jb2xvcjokZ3JleUxpZ2h0O1xuICAmX19saXN0IHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSl7XG4gICAgICBAaW5jbHVkZSBtYXJIKDZyZW0pO1xuICAgICAgZGlzcGxheTpub25lO1xuICAgIH1cbiAgfVxuICBcbn1cbi5ib3gtbGlicmFpcmllLWFjdHVzLWl0ZW0ge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAmICsgJiB7XG4gICAgICBtYXJnaW4tdG9wOjRyZW07XG4gICAgfVxuICB9XG4gICZfX3Zpc3VhbCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBAaW5jbHVkZSBtYXJIO1xuICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICB9XG4gIH1cbiAgJl9fdGhlbWUge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOjEuOHJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG4gICZfX3RpdHJlIHtcbiAgICBmb250LXNpemU6IDIuNnJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG4gICZfX2luZm9zIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgY29sb3I6JGFscGhhLWNvbG9yO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgfVxuICAmX190ZXh0IHtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIG1hcmdpbi10b3A6MDtcbiAgfVxuICAmLnNsaWNrLXNsaWRlIHtcbiAgICBAaW5jbHVkZSBwYWRIKDNyZW0pO1xuICAgIG1hcmdpbi10b3A6MDtcbiAgfVxufVxuXG5cbi5ib3gtbGlicmFpcmllLXNlbGVjdGlvbiB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gICZfX3JvdyB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcbiAgICAgIEBpbmNsdWRlIGd1dHRlcigzMHB4KTtcbiAgICB9XG4gIH1cbn1cblxuLmJveC1saWJyYWlyaWUtc2VsZWN0aW9uLWl0ZW0ge1xuICBAaW5jbHVkZSBtYXJIO1xuICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICB9XG5cbiAgJl9fdmlzdWFsIHtcbiAgICBAaW5jbHVkZSBtYXJIO1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICB9XG4gICZfX3RpdGxlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICBmb250LXNpemU6Mi42cmVtO1xuICB9XG4gICZfX2F1dGhvciB7XG4gICAgZm9udC1zaXplOjEuN3JlbTtcbiAgICBtYXJnaW4tYm90dG9tOjEuNXJlbTtcbiAgfVxuICAmX19zdWJ0aXRsZSB7XG4gICAgY29sb3I6JGFscGhhLWNvbG9yO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6NTAwO1xuICAgIGZvbnQtc2l6ZToxLjdyZW07XG4gIH1cbiAgJl9fdGV4dCB7XG4gICAgbWFyZ2luLWJvdHRvbTowLjVyZW07XG4gIH1cbiAgJl9fbGluayB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBtYXJnaW4tYm90dG9tOjEuNXJlbTtcbiAgfVxuICAmX19lZGl0aW9uLXByaXgge1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgfVxufVxuXG4uYm94LWxpYnJhaXJpZS1jb250YWN0IHtcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcbiAgYmFja2dyb3VuZC1jb2xvcjokZ3JleUxpZ2h0O1xuICAmX19pZnJhbWUge1xuICAgIHdpZHRoOjEwMCU7XG4gICAgYm9yZGVyOm5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICB9XG59XG5cbi5ib3gtbGlicmFpcmllLWxpYnJhaXJlcyB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG59XG5cbi5ib3gtbGlicmFpcmllLWxpYnJhaXJlcy1pdGVtIHtcbiAgbWFyZ2luLWJvdHRvbTozcmVtO1xuICAmX190aXRsZSB7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOjFyZW07XG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICB3aWR0aDoxcmVtO1xuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6MnB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmFzZS1jb2xvcjtcbiAgICAgIHRvcDoxMDAlO1xuICAgICAgbGVmdDo1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxuICB9XG4gICZfX3RleHQge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gIH1cbn0iLCIuYm94LXZhbGV1ci1ham91dGVlIHtcbiAgQGluY2x1ZGUgZ2VuZXJpY0JveDtcbiAgLmhlYWRlci1ib3gge1xuICAgIC5zdWJ0aXRsZSB7XG4gICAgICBjb2xvcjokYWxwaGEtY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5ib3gtdmFsZXVyLWFqb3V0ZWUtaXRlbSB7XG4gIEBpbmNsdWRlIG1hckg7XG4gIEBpbmNsdWRlIG1hclYoOHJlbSk7XG4gICZfX3JvdyB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcbiAgICAgIEBpbmNsdWRlIGd1dHRlcigzMHB4KTtcbiAgICB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGcpIHtcbiAgICAgIEBpbmNsdWRlIGd1dHRlcig1MHB4KTtcbiAgICB9XG4gIH1cbiAgJl9fdmlzdWFsIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICB9XG4gIH1cbiAgJl9fdmlzdWFsLXdyYXBwZXIsXG4gICZfX2NvbnRlbnQge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgfVxuICB9XG4gICZfX3RpdGxlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xuICAgIH1cbiAgICBzcGFuIHtcbiAgICAgIGNvbG9yOiRibHVlO1xuICAgIH1cbiAgfVxuICAmX190ZXh0IHtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIG1hcmdpbi10b3A6MnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gIH1cbiAgJl9fbGluayB7XG4gICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuICAgIHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XG4gICAgY29sb3I6JGFscGhhLWNvbG9yO1xuICB9XG59XG5cblxuLmJveC12YWxldXItYWpvdXRlZS1hbHBoYSB7XG4gIEBpbmNsdWRlIG1hckg7XG4gIG1hcmdpbi10b3A6OHJlbTtcbiAgJl9fcm93IHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgXG4gICAgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XG4gICAgICBAaW5jbHVkZSBndXR0ZXIoMTByZW0pO1xuICAgIH1cbiAgfVxuICAmX192aXN1YWwge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIH1cbiAgfVxuICAmX19jb250ZW50IHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGhlaWdodDoxMDAlO1xuICAgIH1cbiAgfVxuICAmX190aXRsZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4ycmVtO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjRyZW07XG4gICAgfVxuICB9XG4gICZfX3RleHQge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIH1cbiAgJl9fbGluayB7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuICAgIHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XG4gICAgY29sb3I6JGFscGhhLWNvbG9yO1xuICAgIG1hcmdpbi10b3A6MXJlbTtcbiAgfVxufVxuXG4uYm94LWFlcm9wb3J0IHtcbiAgQGluY2x1ZGUgY292ZXI7XG4gIHBhZGRpbmc6MTByZW0gMXJlbTtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICZfX2NvbnRlbnQge1xuICAgIEBpbmNsdWRlIG1hckg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgcGFkZGluZzo1cmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBtYXgtd2lkdGg6NzByZW07XG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cykge1xuICAgICAgcGFkZGluZzozcmVtO1xuICAgIH1cbiAgfVxuICAmX19saXN0IHtcbiAgICBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBAaW5jbHVkZSBwYWRWKDAuNHJlbSk7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDAuM2VtO1xuICAgICAgICBoZWlnaHQ6IDAuM2VtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhbHBoYS1jb2xvcjtcbiAgICAgICAgdG9wOiAtMC4ycmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX190ZXh0IHtcbiAgICBsaW5lLWhlaWdodDoxLjU7XG4gICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xuICB9XG4gICZfX2xpbmsge1xuICAgIG1hcmdpbi10b3A6MXJlbTtcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcbiAgICBjb2xvcjokYWxwaGEtY29sb3I7XG4gIH1cbn1cblxuLmJveC12b3VzLWFjY3VlaWxsaXIge1xuICBAaW5jbHVkZSBnZW5lcmljQm94O1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTo0cmVtO1xuICAuaGVhZGVyLWJveCB7XG4gICAgLnN1YnRpdGxlIHtcbiAgICAgIGNvbG9yOiRhbHBoYS1jb2xvcjtcbiAgICB9XG4gIH1cbiAgJl9faW5kZXgge1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICBmb250LWZhbWlseTokZm9udC1mYW1pbHktMztcbiAgICBmb250LXNpemU6MTJyZW07XG4gIH1cbn1cblxuLmJveC1wZW5kYW50LXZveWFnZSB7XG4gIEBpbmNsdWRlIGdlbmVyaWNCb3g7XG4gIGJhY2tncm91bmQtY29sb3I6JGdyZXlMaWdodDtcbiAgLmhlYWRlci1ib3gge1xuICAgIC5zdWJ0aXRsZSB7XG4gICAgICBjb2xvcjokYWxwaGEtY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5ib3gtcGVuZGFudC12b3lhZ2UtbWVhIHtcbiAgQGluY2x1ZGUgbWFyVjtcbiAgQGluY2x1ZGUgY292ZXI7XG4gIHBhZGRpbmc6MTByZW0gMXJlbTtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICZfX2NvbnRlbnQge1xuICAgIEBpbmNsdWRlIG1hckg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgcGFkZGluZzo1cmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBtYXgtd2lkdGg6NzByZW07XG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cykge1xuICAgICAgcGFkZGluZzozcmVtIDNyZW0gMXJlbSAzcmVtO1xuICAgIH1cbiAgfVxuICAmX190aXRsZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4ycmVtO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjRyZW07XG4gICAgfVxuICB9XG4gICZfX3RleHQge1xuICAgIGxpbmUtaGVpZ2h0OjEuNTtcbiAgICBtYXJnaW4tYm90dG9tOjRyZW07XG4gIH1cbiAgJl9fbGluayB7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuICAgIHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XG4gICAgY29sb3I6JGFscGhhLWNvbG9yO1xuICB9XG59XG5cbi5ib3gtcGVuZGFudC12b3lhZ2UtaXRlbSB7XG4gIEBpbmNsdWRlIG1hckg7XG4gIG1heC13aWR0aDogMTAwcmVtO1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgJiArICYge1xuICAgIG1hcmdpbi10b3A6NHJlbTtcbiAgfVxuICAmX19yb3cge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgfVxuICB9XG4gICZfX3Zpc3VhbCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgfVxuICB9XG4gICZfX3Zpc3VhbC13cmFwcGVyIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGhlaWdodDoxMDAlO1xuICAgIH1cbiAgfVxuICAmX19jb250ZW50IHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgXG4gICAgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XG4gICAgICBwYWRkaW5nOjRyZW07XG4gICAgfVxuICB9XG4gICZfX3RpdGxlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4ycmVtO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjRyZW07XG4gICAgfVxuICB9XG4gICZfX3RleHQge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIH1cbiAgJl9fbGluayB7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuICAgIHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XG4gICAgY29sb3I6JGFscGhhLWNvbG9yO1xuICAgIG1hcmdpbi10b3A6MXJlbTtcbiAgfVxufVxuXG4iLCIuYm94LWZyaWVuZHMge1xufVxuXG4uYm94LWZyaWVuZHMtaXRlbSB7XG4gICRyYXRpbyA6ICg0MDAgLyA1NjApICogMTAwO1xuICBAaW5jbHVkZSBtYXJIO1xuICAmICsgJiB7XG4gICAgbWFyZ2luLXRvcDo4cmVtO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgbWFyZ2luLXRvcDogNHJlbTtcbiAgICB9XG4gIH1cbiAgJl9fcm93IHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xuICAgICAgQGluY2x1ZGUgZ3V0dGVyKDMwcHgpO1xuICAgIH1cbiAgfVxuICAmX192aXN1YWwtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIH1cbiAgICAmOmFmdGVye1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZy1ib3R0b206JHJhdGlvICsgJTtcbiAgICB9XG4gIH1cbiAgJl9fdmlzdWFsLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICAmX192aXN1YWwge1xuICAgIEBpbmNsdWRlIG9iamVjdC1maXQoY292ZXIpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgJl9fZGVzdGluYXRpb24ge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktMjtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc3R5bGU6aXRhbGljO1xuICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgICBsaW5lLWhlaWdodDoxO1xuICB9XG4gICZfX3RpdGxlIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBsaW5lLWhlaWdodDoxO1xuICB9XG4gICZfX3RleHQge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgbWFyZ2luLXRvcDowO1xuICAgIHN0cm9uZyB7XG4gICAgICBjb2xvcjokYWxwaGEtY29sb3I7XG4gICAgfVxuICB9XG4gICZfX3BzZXVkby1jdGEge1xuICAgIEBpbmNsdWRlIGJ0bkZyaWVuZDtcbiAgICBtYXJnaW4tdG9wOjJyZW07XG4gIH1cbn1cbiIsIi5ib3gtY29uY2llcmdlLW1lYSB7XG4gIEBpbmNsdWRlIG1hclYoOHJlbSk7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgQGluY2x1ZGUgcGFkVig4cmVtKTtcbiAgfVxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICZfX3Zpc3VhbC13cmFwcGVyIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICAmX192aXN1YWwge1xuICAgIEBpbmNsdWRlIG9iamVjdC1maXQoY292ZXIpO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gIH1cbiAgJl9fY29udGVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgcGFkZGluZzoycmVtO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBwYWRkaW5nOjVyZW07XG4gICAgfVxuICB9XG59XG5cbi5ib3gtbm9zLWNvbmNpZXJnZXMge1xuICBAaW5jbHVkZSBtYXJWO1xuICBAaW5jbHVkZSBjb3ZlcjtcbiAgcGFkZGluZzo1cmVtIDFyZW0gMTByZW0gMXJlbTtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICZfX2NvbnRlbnQge1xuICAgIEBpbmNsdWRlIG1hckg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgcGFkZGluZzo1cmVtIDhyZW07XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgbWF4LXdpZHRoOjcwcmVtO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMpIHtcbiAgICAgIHBhZGRpbmc6NHJlbSAycmVtO1xuICAgIH1cbiAgfVxuICAmX190aXRsZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4ycmVtO1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xuICAgIH1cbiAgfVxufVxuLmJveC1ub3MtY29uY2llcmdlcy1pdGVtIHtcbiAgJl9fZGVzdGluYXRpb24ge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktMjtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc3R5bGU6aXRhbGljO1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICBsaW5lLWhlaWdodDoxO1xuICB9XG4gICZfX3RpdGxlIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBsaW5lLWhlaWdodDoxO1xuICB9XG59IiwiLmJveC1ub3VzLWZhaXNvbnMge1xuICBAaW5jbHVkZSBnZW5lcmljQm94O1xuICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIHBhZGRpbmctYm90dG9tOjA7XG4gIH1cbn1cbi5ib3gtbm91cy1mYWlzb25zLWl0ZW0ge1xuICAkcmF0aW8gOiAoNDkwIC8gNzM2KSAqIDEwMDtcbiAgJGI6ICY7XG5cbiAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBtYXJnaW4tYm90dG9tOjRyZW07XG4gIH1cbiAgJl9fdmlzdWFsLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAmOmFmdGVye1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZy1ib3R0b206JHJhdGlvICsgJTtcbiAgICB9XG4gIH1cbiAgJl9fdmlzdWFsLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICAmX192aXN1YWwge1xuICAgIEBpbmNsdWRlIG9iamVjdC1maXQoY292ZXIpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIC5pbnRvTWFwICYge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuICAmX190aXRsZSB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBmb250LXNpemU6M3JlbTtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDoxLjI7XG4gICAgc3BhbiB7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB9XG4gIH1cbiAgJl9fdGV4dCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gIH1cbiAgJl9fY29uZGl0aW9ucyB7XG4gICAgY29sb3I6JGFscGhhLWNvbG9yO1xuICAgIGxldHRlci1zcGFjaW5nOiAuMXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgJiBoZWFkZXJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5oZWFkZXIge1xuICAmX19pbm5lciB7XG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgcGFkZGluZy10b3A6IDUuOHJlbTtcbiAgICB9XG4gIH1cbiAgJl9fcm93IHtcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgfVxuICB9XG4gICZfX2NvbCB7XG4gICAgd2lkdGg6cmVtKDUwKTtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgZGlzcGxheTpub25lO1xuICAgIH1cbiAgfVxufVxuXG4uaGVhZGVyLWNvbnRhY3Qge1xuICBAaW5jbHVkZSBwYWRWKDEuOHJlbSwgMS45cmVtKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgcm90YXRlKC05MGRlZykgO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDozMHJlbTtcbiAgei1pbmRleDogNDA7XG59XG5cblxuLmhlYWRlci1maWwge1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgdG9wOjFyZW07XG4gIGxlZnQ6MXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIGNvbG9yOiR3aGl0ZTtcbiAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBkaXNwbGF5Om5vbmU7XG4gIH1cbiAgLnBhZ2UtcHJvZHVpdCAmLFxuICAucGFnZS1jaGVxdWVzLWNhZGVhdXgtdHVubmVsICYsXG4gIC5wYWdlLWRkdiAmLFxuICAucGFnZS1tYWctbGlzdGUgJntcbiAgICBjb2xvcjokYmFzZS1jb2xvcjtcbiAgfVxufVxuXG4uaGVhZGVyLXNvY2lhbCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOjE4cmVtO1xuICB3aWR0aDpyZW0oNTApO1xuICB6LWluZGV4OiA0MDtcbiAgJl9fbGluayB7XG4gICAgQGluY2x1ZGUgY2VudGVySWNvbjtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgkZ3JleURhcmssLjkpO1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICB3aWR0aDoxMDAlO1xuICAgIGhlaWdodDpyZW0oNTApO1xuICAgIGZsb2F0OnJpZ2h0O1xuICAgIHRyYW5zaXRpb246IHdpZHRoIC4ycztcbiAgICBmb250LXNpemU6Mi4ycmVtO1xuICAgICY6aG92ZXIge1xuICAgICAgd2lkdGg6MTQwJTtcbiAgICB9XG4gICAgJi5mYWNlYm9vayB7XG4gICAgICBAaW5jbHVkZSBpY29uKGZhY2Vib29rKTtcbiAgICB9XG4gICAgJi50d2l0dGVyIHtcbiAgICAgIEBpbmNsdWRlIGljb24odHdpdHRlcik7XG4gICAgfVxuICAgICYucGludGVyZXN0IHtcbiAgICAgIEBpbmNsdWRlIGljb24ocGludGVyZXN0KTtcbiAgICB9XG4gICAgJi5saW5rZWRpbiB7XG4gICAgICBAaW5jbHVkZSBpY29uKGxpbmtlZGluKTtcbiAgICB9XG4gICAgJi5tYWlsIHtcbiAgICAgIEBpbmNsdWRlIGljb24obWFpbCk7XG4gICAgfVxuICB9XG59XG5cbi8vIHN1cmNoYXJnZSBwb3VyIGxhIHZlcnNpb24gYWRkdGhpcyA6XG5cbi5hdHNzIHtcbiAgei1pbmRleDoxMDMwIWltcG9ydGFudDtcbiAgLmF0LXNoYXJlLWJ0bixcbiAgYSB7XG4gICAgd2lkdGg6cmVtKDUwKSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAuYXQtaWNvbi13cmFwcGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgkZ3JleURhcmssLjkpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC5hdC1zaGFyZS1idG46Zm9jdXMsXG4gIC5hdC1zaGFyZS1idG46aG92ZXIsXG4gIGE6Zm9jdXMsXG4gIGE6aG92ZXIge1xuICAgIHdpZHRoOjE0MCUgIWltcG9ydGFudDtcbiAgfVxufVxuI2F0NC1zaGFyZSxcbiNhdDQtc29jIHtcbiAgdG9wOjE4cmVtICFpbXBvcnRhbnQ7XG59XG5cblxuLmhlYWRlci1wcm9kdWl0IHtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIHRleHQtYWxpZ246Y2VudGVyO1xuICBmbGV4OjEgMSAwJTtcbiAgcGFkZGluZy10b3A6NXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDRyZW07XG4gIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgcGFkZGluZy10b3A6JG5hdk1vYmlsZUhlaWdodDtcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gIH1cbiAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICBwYWRkaW5nLXRvcDokbmF2TW9iaWxlSGVpZ2h0O1xuICB9XG5cbiAgJl9fY29udGVudCB7XG4gICAgQGluY2x1ZGUgcGFkSChyZW0oMTUpKTtcbiAgICBwYWRkaW5nLXRvcDoycmVtO1xuICB9XG4gICZfX2NoYXBvIHtcbiAgICBjb2xvcjokYWxwaGEtY29sb3I7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4xcmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgZm9udC1zaXplOmluaGVyaXQ7XG4gIH1cbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTozcmVtO1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICB9XG4gIH1cbiAgJl9fZXRhcGVzIHtcbiAgICBjb2xvcjokZ3JleUJsdWU7XG4gICAgZm9udC1zaXplOjEuN3JlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIG1hcmdpbi1ib3R0b206MS42cmVtO1xuICB9XG4gICZfX3N1YnRpdGxlIHtcbiAgICBmb250LXNpemU6MS44cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIH1cbn1cblxuLmhlYWRlci1jaGVxdWVzLXR1bm5lbCB7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgZmxleDoxIDEgMCU7XG4gIHBhZGRpbmctdG9wOjExcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbiAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBwYWRkaW5nLXRvcDokbmF2TW9iaWxlSGVpZ2h0O1xuICAgIHRleHQtYWxpZ246bGVmdDtcbiAgfVxuICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgIHBhZGRpbmctdG9wOiRuYXZNb2JpbGVIZWlnaHQ7XG4gIH1cbiAgJl9fY29udGVudCB7XG4gICAgQGluY2x1ZGUgcGFkSChyZW0oMTUpKTtcbiAgICBwYWRkaW5nLXRvcDoycmVtO1xuICB9XG4gICZfX3RpdGxlIHtcbiAgICBmb250LXNpemU6My42cmVtO1xuICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICBjb2xvcjokYmx1ZTtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgZm9udC1zaXplOjMuMnJlbTtcbiAgICB9XG4gIH1cbiAgJl9fc3VidGl0bGUge1xuICAgIGZvbnQtc2l6ZToxLjRyZW07XG4gIH1cbn1cblxuLmhlYWRlci1kZHYge1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gIGZsZXg6MSAxIDAlO1xuICBwYWRkaW5nLXRvcDo1cmVtO1xuICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIHBhZGRpbmctdG9wOiRuYXZNb2JpbGVIZWlnaHQ7XG4gICAgdGV4dC1hbGlnbjpsZWZ0O1xuICB9XG4gIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgcGFkZGluZy10b3A6JG5hdk1vYmlsZUhlaWdodDtcbiAgfVxuICAmX19jb250ZW50IHtcbiAgICBAaW5jbHVkZSBwYWRIKHJlbSgxNSkpO1xuICAgIHBhZGRpbmctdG9wOjJyZW07XG4gIH1cbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTozLjZyZW07XG4gICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgIGNvbG9yOiRibHVlO1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBmb250LXNpemU6My4ycmVtO1xuICAgIH1cbiAgICAucGFnZS1kZHYtbGlnaHQgJiB7XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgfVxuICB9XG4gICZfX3N1YnRpdGxlIHtcbiAgICBmb250LXNpemU6MS44cmVtO1xuICAgIC5wYWdlLWRkdi1saWdodCAmIHtcbiAgICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgfVxuICB9XG59XG5cbi5oZWFkZXItZGR2LXBheXMge1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gIGZsZXg6MSAxIDAlO1xuICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgbWFyZ2luLXRvcDogJG5hdk1vYmlsZUhlaWdodDtcbiAgICB9XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OlwiXCI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gICAgb3BhY2l0eTouMjtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB3aWR0aDoxMDAlO1xuICAgIGhlaWdodDoxMDAlO1xuICAgIHRvcDowO1xuICAgIGxlZnQ6MDtcbiAgfVxuICAmX192aXN1YWwge1xuICAgIEBpbmNsdWRlIG9iamVjdC1maXQoY292ZXIpO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgaGVpZ2h0OjUxcmVtO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgICBoZWlnaHQ6MzRyZW07XG4gICAgfVxuXG4gIH1cbiAgJl9fY29udGVudCB7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAyO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBwYWRkaW5nOjFyZW07XG4gIH1cbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTozLjZyZW07XG4gICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgZm9udC1zaXplOjMuMnJlbTtcbiAgICB9XG4gIH1cbiAgJl9fc3VidGl0bGUge1xuICAgIGZvbnQtc2l6ZToxLjhyZW07XG4gICAgY29sb3I6JHdoaXRlO1xuICB9XG59XG5cbi5oZWFkZXItZGR2LXByb2R1aXQge1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgZmxleDoxIDEgMCU7XG4gIHBhZGRpbmctdG9wOjVyZW07XG4gIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgcGFkZGluZy10b3A6JG5hdk1vYmlsZUhlaWdodDtcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gIH1cbiAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICBwYWRkaW5nLXRvcDokbmF2TW9iaWxlSGVpZ2h0O1xuICB9XG4gICZfX2NvbnRlbnQge1xuICAgIEBpbmNsdWRlIG1hckg7XG4gICAgQGluY2x1ZGUgcGFkSChyZW0oMTUpKTtcbiAgICBwYWRkaW5nLXRvcDoycmVtO1xuICAgIG1heC13aWR0aDo4MHJlbTtcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLWxnKSB7XG4gICAgICBtYXgtd2lkdGg6MTAwcmVtO1xuICAgIH1cbiAgfVxuICAmX3JvdyB7XG4gICAgZGlzcGxheTp0YWJsZTtcbiAgICB3aWR0aDoxMDAlO1xuICB9XG4gICZfX2NvbC1jb250ZW50IHtcbiAgICBkaXNwbGF5OnRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246bWlkZGxlO1xuICAgIHdpZHRoOjYwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OjJyZW07XG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgcGFkZGluZy1yaWdodDowO1xuICAgIH1cbiAgfVxuICAmX19jb2wtdmlzdWFsIHtcbiAgICBkaXNwbGF5OnRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246bWlkZGxlO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgIH1cbiAgfVxuICAmX190aXRsZSB7XG4gICAgZm9udC1zaXplOjMuNnJlbTtcbiAgICBmb250LXdlaWdodDo0MDA7XG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBmb250LXNpemU6My4ycmVtO1xuICAgIH1cbiAgfVxuICAmX192aXN1YWwtd3JhcHBlciB7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OlwiXCI7XG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgIHRvcDotMnJlbTtcbiAgICAgIHJpZ2h0Oi0xcmVtO1xuICAgICAgd2lkdGg6MTFyZW07XG4gICAgICBoZWlnaHQ6MTFyZW07XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTp1cmwoLi4vaW1hZ2VzL3RhbXBvbi5wbmcpO1xuICAgICAgYmFja2dyb3VuZC1zaXplOmNvbnRhaW47XG4gICAgfVxuICB9XG4gICZfX3Zpc3VhbCB7XG4gICAgYm9yZGVyOjFyZW0gc29saWQgJHdoaXRlO1xuICB9XG59XG5cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAmIGhlYWRlciBNRUEgKE1pc2UgZW4gQXZhbnQpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uaGVhZGVyLW1lYSB7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgZmxleDoxIDAgMCU7XG4gIC5wYWdlLWFjY3VlaWwgJiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gI3tyZW0oMTAwKX0pO1xuICAgIH1cbiAgfVxuICAucGFnZS1yZXN1bHRhdHMgJiB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBAaW5jbHVkZSBwYWRWKDFyZW0pO1xuICAgICAgbWFyZ2luLXRvcDokbmF2TW9iaWxlSGVpZ2h0O1xuICAgIH1cbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDpcIlwiO1xuICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgIG9wYWNpdHk6LjI7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBoZWlnaHQ6MTAwJTtcbiAgICB0b3A6MDtcbiAgICBsZWZ0OjA7XG4gICAgLnBhZ2UtcmVzdWx0YXRzICYge1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnBhZ2UtYWNjdWVpbCAmIHtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJl9fdGl0bGUtY2Fyb3VzZWwge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgICAmLnNsaWNrLWluaXRpYWxpemVkIHtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgfVxuICB9XG4gICZfX3RpdGxlLXdyYXBwZXItbW9iaWxlIHtcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICB9XG4gICZfX3RpdGxlLXdyYXBwZXIge1xuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdG9wOiAxM3JlbTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cbiAgICAucGFnZS1yZXN1bHRhdHMgJiB7XG4gICAgICBwb3NpdGlvbjpzdGF0aWM7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuICB9XG4gICZfX3RpdGxlIHtcbiAgICBAaW5jbHVkZSBwYWRIKDJyZW0pO1xuICAgIGZvbnQtc2l6ZTo0cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAuNXJlbTtcbiAgICBmb250LXdlaWdodDo1MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgZm9udC1zaXplOnJlbSgzMCk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLjJyZW07XG4gICAgICBsaW5lLWhlaWdodDoxLjE7XG4gICAgfVxuICAgIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcbiAgICAgIGZvbnQtc2l6ZTo1cmVtO1xuICAgIH1cbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLWxnKSB7XG4gICAgICBmb250LXNpemU6NnJlbTtcbiAgICB9XG4gICAgLnBhZ2UtYWNjdWVpbCAmIHtcbiAgICAgIGZvbnQtc2l6ZTozcmVtO1xuICAgICAgbGluZS1oZWlnaHQ6MS4xO1xuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC4zcmVtO1xuICAgICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgICAgZm9udC1zaXplOnJlbSgyNSk7XG4gICAgICAgIHBvc2l0aW9uOnN0YXRpYztcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgfVxuICAgICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xuICAgICAgICBmb250LXNpemU6NHJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnBhZ2UtcmVzdWx0YXRzICYge1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICAgIGNvbG9yOiRiYXNlLWNvbG9yO1xuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgIGZvbnQtc2l6ZToycmVtO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjJyZW07XG4gICAgICB9XG4gICAgfVxuICAgIGJyIHtcbiAgICAgICYuaGlkZGVuLW1kIHtcbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xuICAgICAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5oaWRkZW4tbGcge1xuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLWxnKSB7XG4gICAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICZfX3N1YnRpdGxlIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LTI7XG4gICAgZm9udC1zdHlsZTppdGFsaWM7XG4gICAgZm9udC13ZWlnaHQ6MzAwO1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICBsZXR0ZXItc3BhY2luZzogLjJyZW07XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgZm9udC1zaXplOjIuMnJlbTtcbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICB3aWR0aDoycmVtO1xuICAgICAgaGVpZ2h0OjFweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6Y3VycmVudENvbG9yO1xuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICB0b3A6NTAlO1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICBsZWZ0Oi0zcmVtO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIHJpZ2h0Oi0zcmVtO1xuICAgIH1cbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xuICAgICAgZm9udC1zaXplOjIuMnJlbTtcbiAgICB9XG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1sZykge1xuICAgICAgZm9udC1zaXplOjIuNnJlbTtcbiAgICB9XG4gICAgLnBhZ2UtcmVzdWx0YXRzICYge1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICAgIGNvbG9yOiRiYXNlLWNvbG9yO1xuICAgICAgICBtYXJnaW4tdG9wOjA7XG4gICAgICAgIHRyYW5zZm9ybTpub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX19zdWJ0aXRsZS1hbHBoYSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS0yO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBmb250LXdlaWdodDozMDA7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIGxldHRlci1zcGFjaW5nOiAuMnJlbTtcbiAgICBmb250LXNpemU6Mi4ycmVtO1xuICAgIG1hcmdpbi10b3A6MDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBmb250LXNpemU6MnJlbTtcbiAgICB9XG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xuICAgICAgZm9udC1zaXplOjIuOHJlbTtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIH1cbiAgfVxuICAmX190ZXh0IHtcbiAgICBjb2xvcjokd2hpdGU7XG4gICAgbWF4LXdpZHRoOiA0MHJlbTtcbiAgICBAaW5jbHVkZSBtYXJIO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICB9XG4gICZfX3Zpc3VhbC1tb2JpbGUge1xuICAgIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICB9XG4gIH1cbiAgJl9fdmlzdWFsLWNhcm91c2VsIHtcbiAgICBvdmVyZmxvdzpoaWRkZW47XG4gICAgaGVpZ2h0OjUxcmVtO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgICBoZWlnaHQ6MzRyZW07XG4gICAgfVxuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICAgIEBtZWRpYShtYXgtaGVpZ2h0OiAkc2NyZWVuLW1heC1oZWlnaHQpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgICAgaGVpZ2h0OjQycmVtO1xuICAgIH1cbiAgICAuc2xpY2stZG90cyB7XG4gICAgICBib3R0b206MXJlbTtcbiAgICB9XG4gIH1cbiAgJl9fdmlzdWFsLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgICAgb3BhY2l0eTouMjtcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgdG9wOjA7XG4gICAgICBsZWZ0OjA7XG4gICAgICAucGFnZS1yZXN1bHRhdHMgJiB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX192aXN1YWwge1xuICAgIEBpbmNsdWRlIG9iamVjdC1maXQoY292ZXIpO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgaGVpZ2h0OjUxcmVtO1xuICAgIFxuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgICBoZWlnaHQ6IDMzLjhyZW07XG4gICAgfVxuICAgIEBtZWRpYShtYXgtaGVpZ2h0OiAkc2NyZWVuLW1heC1oZWlnaHQpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgICAgaGVpZ2h0OiA0MnJlbTtcbiAgICB9XG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIG1hcmdpbi10b3A6ICRuYXZNb2JpbGVIZWlnaHQ7XG4gICAgICBoZWlnaHQ6IDIycmVtO1xuICAgICAgLnBhZ2UtYWNjdWVpbCAmLFxuICAgICAgLnBhZ2UtcGF5cy1wYXlzICYsXG4gICAgICAucGFnZS1wYXlzLXJlZ2lvbnMgJixcbiAgICAgIC5wYWdlLWVudmllLWJhc2UgJiB7XG4gICAgICAgIGhlaWdodDpjYWxjKDEwMHZoIC0gI3skbmF2TW9iaWxlSGVpZ2h0fSk7XG4gICAgICB9XG4gICAgICAucGFnZS1hZ2VuY2UgJixcbiAgICAgIC5wYWdlLXJlY2hlcmNoZSAmLFxuICAgICAgLnBhZ2UtaG9tZS1ndWlkZSAmLFxuICAgICAgLnBhZ2UtZ3VpZGUtcGF5cyAmLFxuICAgICAgLnBhZ2UtY29uc2VpbGxlcnMgJixcbiAgICAgIC5wYWdlLWVudmllcyAmLFxuICAgICAgLnBhZ2UtbWFnLXBheXMgJixcbiAgICAgIC5wYWdlLXNhaXNvbiAmLFxuICAgICAgLnBhZ2UtcGF5cy10YWcgJiB7XG4gICAgICAgIGhlaWdodDogMzMuOHJlbTtcbiAgICAgIH1cbiAgICAgIC5wYWdlLWFjY3VlaWwuc2Nyb2xsdG9wICYge1xuICAgICAgICBoZWlnaHQ6Y2FsYygxMDB2aCk7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgICAucGFnZS1yZXN1bHRhdHMgJiB7XG4gICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhXG4gICAgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksXG4gICAgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpIHtcbiAgICAgICAgLyogUmV0aW5hLXNwZWNpZmljIHN0dWZmIGhlcmUgKi9cbiAgICB9XG4gICAgLnBhZ2UtbWFnLWZvcm0gJiB7XG4gICAgICBoZWlnaHQ6IDMzLjhyZW07XG4gICAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgICAgICBoZWlnaHQ6MjRyZW07XG4gICAgICB9XG4gICAgfVxuICAgIC5wYWdlLW1hZy1hY2N1ZWlsICYsXG4gICAgLnBhZ2UtbWFnLWFydGljbGUgJiB7XG4gICAgICBoZWlnaHQ6IDMzLjhyZW07XG4gICAgfVxuICB9XG4gICZfX2xpbmsge1xuICAgIEBpbmNsdWRlIGljb24oc2Nyb2xsLGFmdGVyKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgJjphZnRlciB7XG4gICAgICBAaW5jbHVkZSB3b2JibGUtdmVydGljYWw7XG4gICAgICBtYXJnaW4tdG9wOjFyZW07XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgIH1cbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICAgIC5wYWdlLXBheXMgJixcbiAgICAucGFnZS1lbnZpZS1iYXNlICYsXG4gICAgLnBhZ2UtZW52aWVzICYsXG4gICAgLnBhZ2UtZ3VpZGUtcGF5cyAmIHtcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3R0b206IDEwcmVtO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxuICAgIC5wYWdlLWFjY3VlaWwgJntcbiAgICAgIG1hcmdpbi10b3A6NnJlbTtcbiAgICB9XG4gIH1cbiAgJl9fbGluay1zY3JvbGwge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNi41cmVtO1xuICAgIGJvdHRvbTogNi41cmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgZGlzcGxheTpub25lO1xuICAgIH1cbiAgfVxuICAmX19jb250ZW50IHtcbiAgICB3aWR0aDoxMDAlO1xuICAgIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuICAgIC5wYWdlLWFjY3VlaWwgJntcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwJSk7XG4gICAgICBsZWZ0OjA7XG4gICAgICB6LWluZGV4OjI7XG4gICAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLXNtKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDNlbSk7XG4gICAgICB9XG4gICAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XG4gICAgICAgIHRvcDogY2FsYyg1MCUgKyAycmVtKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnBhZ2UtYWNjdWVpbC5zY3JvbGx0b3AgJiB7XG4gICAgICBAbWVkaWEobWF4LXdpZHRoOiAzMjBweCkge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTQ3JSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICZfX2NvbnRlbnQtaW5uZXIge1xuICAgIG1hcmdpbi10b3A6M3JlbTtcbiAgICBAaW5jbHVkZSBtYXJIKDNyZW0pO1xuICAgIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgIEBpbmNsdWRlIG1hckgoYXV0byk7XG4gICAgICBtYXgtd2lkdGg6MzJyZW07XG4gICAgfVxuICAgIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcbiAgICAgIG1hcmdpbi10b3A6NHJlbTtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIH1cbiAgfVxuICAmX19mb290ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDRyZW07XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDoxMDAlO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICAucGFnZS1hY2N1ZWlsICYsXG4gICAgICAucGFnZS1wYXlzICYsXG4gICAgICAucGFnZS1lbnZpZS1iYXNlICYge1xuICAgICAgICBib3R0b206IDEwcmVtO1xuICAgICAgfVxuICAgICAgLnBhZ2UtY29uc2VpbGxlcnMgJiB7XG4gICAgICAgIGJvdHRvbTogMnJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJl9fc2VhcmNoLXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgID4gLmF3ZXNvbXBsZXRlLWNvbnRhaW5lciB7XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgICBmbG9hdDpsZWZ0O1xuICAgICAgICB3aWR0aDpjYWxjKDEwMCUgLSAjeyRuYXZNb2JpbGVIZWlnaHR9KTtcbiAgICAgIH1cbiAgICAgIGlucHV0IHtcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjpsZWZ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICB1bCB7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICAgICAgd2lkdGg6Y2FsYygxMDAlICsgI3skbmF2TW9iaWxlSGVpZ2h0fSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJl9fc2VhcmNoLXN1Ym1pdCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgIGZsb2F0OnJpZ2h0O1xuXG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgbWFyZ2luLXRvcDoxcmVtO1xuICAgIH1cbiAgfVxuICAmX19zZWFyY2gtc3VibWl0LWljb24ge1xuICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICB9XG4gICZfX3NlYXJjaC1zdWJtaXQtdGV4dCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICB9XG4gIH1cbiAgJl9fYnRuIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIEBpbmNsdWRlIGxpbms7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luLXRvcDoycmVtO1xuXG4gIH1cbiAgJl9fcHJldixcbiAgJl9fbmV4dCB7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOjUwJTtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIHBhZGRpbmc6MXJlbTtcbiAgICB6LWluZGV4OiAyO1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICB0b3A6YXV0bztcbiAgICAgIGJvdHRvbToxcmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKCR3aGl0ZSwgMC4yKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6MC44cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC4ycmVtO1xuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC41cmVtO1xuICAgIH1cbiAgfVxuICAmX19wcmV2IHtcbiAgICBsZWZ0OjEuNXJlbTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIFxuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuICAgIH1cbiAgICBcbiAgfVxuICAmX19uZXh0IHtcbiAgICByaWdodDoxLjVyZW07XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpIHJvdGF0ZSg5MGRlZyk7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3A7XG4gICAgfVxuICB9XG59XG5cblxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICYgZm9vdGVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi5mb290ZXIge1xuICBAaW5jbHVkZSBnZW5lcmljQm94O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiRncmV5TGlnaHQ7XG4gIC5wYWdlLWRkdi1saWdodCAmIHtcbiAgICBkaXNwbGF5Om5vbmU7XG4gIH1cbiAgLnBhZ2UtZGR2LWNvbmZpcm1hdGlvbiAmIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICB9XG59XG4uZm9vdGVyLWxpc3Qge1xuICBtYXJnaW4tYm90dG9tOjJyZW07XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzKSB7XG4gICAgZm9udC1zaXplOjJyZW07XG4gIH1cbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG4gICZfX2xpc3Qge1xuICAgID4gbGkge1xuICAgICAgbWFyZ2luLXRvcDoycHg7XG4gICAgICA+IGEge1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJl9fbG9nbyB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBtYXJnaW4tdG9wOjFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTowLjVyZW07XG4gIH1cbn1cblxuLnNvY2lhbCB7XG4gIHRleHQtYWxpZ246Y2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiRiYXNlLW1hcmdpbjtcbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZToyLjdyZW07XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIG1hcmdpbi1ib3R0b206M3JlbTtcbiAgfVxuICAmX19saXN0IHtcbiAgfVxuICAmX19pdGVtIHtcbiAgICBkaXNwbGF5OmlubGluZTtcbiAgfVxuICAmX19saW5rIHtcbiAgICBAaW5jbHVkZSBtYXJIKDFyZW0pO1xuICAgIEBpbmNsdWRlIGNlbnRlckljb247XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokYWxwaGEtY29sb3I7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIHdpZHRoOjUuNnJlbTtcbiAgICBoZWlnaHQ6NS42cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6NTAlO1xuICAgIGZvbnQtc2l6ZTozcmVtO1xuICAgIG1hcmdpbi1ib3R0b206MC41cmVtO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjNzIGVhc2Utb3V0O1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjp0aW50KCRibHVlLCAxNSUpXG4gICAgfVxuICAgICYuZmFjZWJvb2sge1xuICAgICAgQGluY2x1ZGUgaWNvbihmYWNlYm9vayk7XG4gICAgfVxuICAgICYuZ29vZ2xlLXBsdXMge1xuICAgICAgQGluY2x1ZGUgaWNvbihnb29nbGUtcGx1cyk7XG4gICAgfVxuICAgICYudHdpdHRlciB7XG4gICAgICBAaW5jbHVkZSBpY29uKHR3aXR0ZXIpO1xuICAgIH1cbiAgICAmLnBpbnRlcmVzdCB7XG4gICAgICBAaW5jbHVkZSBpY29uKHBpbnRlcmVzdCk7XG4gICAgfVxuICAgICYuaW5zdGFncmFtIHtcbiAgICAgIEBpbmNsdWRlIGljb24oaW5zdGFncmFtKTtcbiAgICB9XG4gICAgJi55b3V0dWJlIHtcbiAgICAgIEBpbmNsdWRlIGljb24oeW91dHViZSk7XG4gICAgfVxuICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICYgbmF2aWdhdGlvblxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLm5hdiB7XG4gIGRpc3BsYXk6ZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwb3NpdGlvbjpmaXhlZDtcbiAgdG9wOjA7XG4gIGxlZnQ6MDtcbiAgd2lkdGg6MTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gIHotaW5kZXg6MztcbiAgJjpob3ZlciB7XG4gICAgei1pbmRleDo0O1xuICB9XG4gIHBhZGRpbmctbGVmdDoxcmVtO1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgIC5zY3JvbGxlZCAmLFxuICAgIC5wYWdlLXByb2R1aXQgJixcbiAgICAucGFnZS1jaGVxdWVzLWNhZGVhdXgtdHVubmVsICYsXG4gICAgLnBhZ2UtZGR2ICYsXG4gICAgLnBhZ2UtZGR2LXByb2R1aXQgJixcbiAgICAucGFnZS1tYWcgJiB7XG4gICAgICBib3gtc2hhZG93OiAkYm94LXNoYWRvdztcbiAgICB9XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcbiAgICBAaW5jbHVkZSBwYWRIKHJlbSg1MCkpO1xuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIEBpbmNsdWRlIHBhZEgoMCk7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICBjb2xvcjokd2hpdGU7XG4gICAgaGVpZ2h0OiAkbmF2TW9iaWxlSGVpZ2h0O1xuICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICAucGFnZS1hY2N1ZWlsLnNjcm9sbHRvcDpub3QoLm1lbnUtbW9iaWxlLW9wZW5lZCk6bm90KC5jb250YWN0LW1vYmlsZS1vcGVuZWQpICYge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cbiAgICAuc3RpY2t5LW5hdi1tb2JpbGUtaXMtZml4ZWQgJiB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICB9XG5cbiAgJl9fbGlzdCB7XG4gICAgZmxleC1ncm93OjE7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgJi5sZWZ0IHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgICYucmlnaHQge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB9XG4gIH1cbiAgJl9faXRlbSB7XG4gICAgJi5vcGVuLW1lbnUge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICAgIEBpbmNsdWRlIGFycm93KCRkaXJlY3Rpb246IHVwLCAkd2lkdGg6IDNyZW0sICRoZWlnaHQ6IDEuNXJlbSwgJGNvbG9yOiAkcGlua0xpZ2h0KTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIGJvdHRvbTogLTFweDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJl9fbGluayB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBwYWRkaW5nOjJyZW0gMXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogLjFyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICAgIGZvbnQtc2l6ZToxLjRyZW07XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBwYWRkaW5nOjA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmb250LXNpemU6IDIuN3JlbTtcbiAgICAgIHdpZHRoOiAzcmVtO1xuICAgIH1cbiAgICAub3Blbi1tZW51ICYge1xuICAgICAgQGluY2x1ZGUgaWNvbihmbGVjaGUtbmF2LCBhZnRlcik7XG4gICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6Mi41cmVtO1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICB0b3A6NTAlO1xuICAgICAgICByaWdodDogMXJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDotMC41cmVtO1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gICAgICAgIHdpZHRoOjFyZW07XG4gICAgICAgIGhlaWdodDoxcmVtO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgIGNvbG9yOiRhbHBoYS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gICAgLm9wZW4tbWVudTpob3ZlciAmLFxuICAgIC5vcGVuLW1lbnU6Zm9jdXMgJiB7XG4gICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgfVxuICB9XG4gICZfX2J0biB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgIEBpbmNsdWRlIHBhZEgoMS41cmVtKTtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5hY2NvdW50IHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgfVxuICAmX19saW5rIHtcbiAgICBAaW5jbHVkZSBpY29uKHVzZXIpO1xuICAgIEBpbmNsdWRlIGNlbnRlckljb247XG4gICAgQGluY2x1ZGUgcGFkVigxcmVtKTtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgbWFyZ2luLXJpZ2h0OjFyZW07XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDEuNXJlbTtcbiAgICAgIGhlaWdodDogJG5hdk1vYmlsZUhlaWdodDtcbiAgICAgIHRyYW5zaXRpb246IHJpZ2h0IC4ycztcbiAgICAgIC5wYWdlLWFjY3VlaWwuc2Nyb2xsdG9wOm5vdCgubWVudS1tb2JpbGUtb3BlbmVkKTpub3QoLmNvbnRhY3QtbW9iaWxlLW9wZW5lZCkgJiB7XG4gICAgICAgIHJpZ2h0OiAtNS41cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAudG9vbHRpcC5ib3R0b20ge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgICBsZWZ0OiAtOC4xcmVtO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZy10b3A6MjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTowO1xuICAgIC50b29sdGlwLWFycm93IHtcbiAgICAgIHRvcDoxMHB4O1xuICAgIH1cbiAgICAudG9vbHRpcC1pbm5lciB7XG4gICAgICB3aWR0aDogMThyZW07XG4gICAgICBAaW5jbHVkZSBwYWRWKDApO1xuICAgIH1cbiAgfVxuICAmOmhvdmVyIHtcbiAgICAudG9vbHRpcCB7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgIH1cbiAgfVxuICAmX19pdGVtIHtcbiAgICBAaW5jbHVkZSBwYWRWKDAuOHJlbSk7XG4gICAgJiArICYge1xuICAgICAgYm9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgkd2hpdGUsMC40KTtcbiAgICB9XG4gIH1cbn1cblxuLnRlbCB7XG4gICZfX2xpbmsge1xuICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgIEBpbmNsdWRlIHBhZFYoMXJlbSk7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBAaW5jbHVkZSBpY29uKHRlbCk7XG4gICAgICBAaW5jbHVkZSBjZW50ZXJJY29uO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDdyZW07XG4gICAgICBoZWlnaHQ6ICRuYXZNb2JpbGVIZWlnaHQ7XG4gICAgICB0cmFuc2l0aW9uOiByaWdodCAuMnM7XG4gICAgICAucGFnZS1hY2N1ZWlsLnNjcm9sbHRvcDpub3QoLm1lbnUtbW9iaWxlLW9wZW5lZCk6bm90KC5jb250YWN0LW1vYmlsZS1vcGVuZWQpICYge1xuICAgICAgICByaWdodDogLTNyZW07XG4gICAgICB9XG4gICAgICAuY29udGFjdC1tb2JpbGUtb3BlbmVkICYge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgd2lkdGg6IDQuOHJlbTtcbiAgICAgICAgICBoZWlnaHQ6IDQuOHJlbTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiR3aGl0ZTtcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgei1pbmRleDotMTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOjUwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnRvb2x0aXAge1xuICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIGRpc3BsYXk6bm9uZSFpbXBvcnRhbnQ7XG4gICAgIH1cbiAgfVxufVxuXG4ubG9nby12ZG0ge1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgdG9wOjJyZW07XG4gIGxlZnQ6NTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIHdpZHRoOiAxM3JlbTtcbiAgei1pbmRleDogMTtcbiAgdHJhbnNpdGlvbiA6IHdpZHRoIC4ycywgdG9wIC4ycztcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgdG9wOi0zLjVyZW07XG4gICAgei1pbmRleDogMDtcbiAgICAucGFnZS1hY2N1ZWlsLnNjcm9sbHRvcDpub3QoLm1lbnUtbW9iaWxlLW9wZW5lZCk6bm90KC5jb250YWN0LW1vYmlsZS1vcGVuZWQpICYge1xuICAgICAgdG9wOjJyZW07XG4gICAgICB3aWR0aDoxM3JlbTtcbiAgICB9XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gICAgLnBhZ2UtYWNjdWVpbC5zY3JvbGx0b3A6bm90KC5tZW51LW1vYmlsZS1vcGVuZWQpOm5vdCguY29udGFjdC1tb2JpbGUtb3BlbmVkKSAmIHtcbiAgICAgIHdpZHRoOjEwcmVtO1xuICAgIH1cbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgd2lkdGg6IDlyZW07XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAuc2Nyb2xsZWQgJixcbiAgICAucGFnZS1wcm9kdWl0ICYsXG4gICAgLnBhZ2UtY2hlcXVlcy1jYWRlYXV4LXR1bm5lbCAmLFxuICAgIC5wYWdlLWRkdiAmLFxuICAgIC5wYWdlLWRkdi1wcm9kdWl0ICYsXG4gICAgLnBhZ2UtbWFnICYsXG4gICAgLnBhZ2Utb25wYXJ0b3UgJiB7XG4gICAgICB3aWR0aDogOXJlbTtcbiAgICAgIHRvcDogMXJlbTtcbiAgICB9XG4gICAgLmxvZ28taXMtaGlkZGVuICYge1xuICAgICAgdG9wOi05cmVtO1xuICAgIH1cbiAgfVxufVxuXG4ubWVudS1idXR0b24ge1xuICBiYWNrZ3JvdW5kOiRiYXNlLWNvbG9yO1xuICBoZWlnaHQ6MTAwJTtcbiAgd2lkdGg6cmVtKDUwKTtcbiAgaGVpZ2h0OnJlbSg1Myk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTpibG9jaztcbiAgLm5hdiAmIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgZGlzcGxheTpub25lO1xuICAgIH1cbiAgfVxuICAmLnNjcm9sbFRvcEJ1dHRvblN0aWNreU5hdiB7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xuICAgIEBpbmNsdWRlIGljb24oZmxlY2hlLXNlbGVjdCk7XG4gICAgQGluY2x1ZGUgY2VudGVySWNvbjtcbiAgfVxuICAubmF2LWljb24ge1xuICAgIHNwYW4ge1xuICAgICAgJHdpZHRoIDogMjVweDtcbiAgICAgICRoZWlnaHQgOiAycHg7XG4gICAgICAkY29sb3IgOiAkd2hpdGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW4tb3V0IDBzO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gICAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgICAgJjpiZWZvcmUsXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogJHdpZHRoO1xuICAgICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW4tb3V0IDBzO1xuICAgICAgfVxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICB0b3A6LTdweDtcbiAgICAgIH1cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICB0b3A6N3B4O1xuICAgICAgfVxuICAgICAgLm1lbnUtbW9iaWxlLW9wZW5lZCAmIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgJiBzdGlja3kgbmF2XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi5zdGlja3ktbmF2IHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgei1pbmRleDozO1xuICB3aWR0aDogMTAwJTtcbiAgQGluY2x1ZGUgcGFkSChyZW0oNTApKTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgZGlzcGxheTpub25lO1xuICAgIC5wYWdlLXJlc3VsdGF0cyAmIHtcbiAgICAgIEBpbmNsdWRlIHBhZEgoMnJlbSk7XG4gICAgICBwb3NpdGlvbjpmaXhlZDtcbiAgICAgIGxlZnQ6MDtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibHVlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcblxuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlLWluO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbiAgICAucGFnZS1yZXN1bHRhdHMucmVjaGVyY2hlLWZpbHRlcnMtaXMtb3BlbmVkICZ7XG5cbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMjVzIGVhc2Utb3V0O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKGNhbGMoLTEwMHZoICsgI3tyZW0oNTApfSkpO1xuICAgIH1cbiAgfVxuICAuc3RpY2t5LW5hdi1pcy1maXhlZCAmIHtcbiAgICBwb3NpdGlvbjpmaXhlZDtcbiAgICB0b3A6MDtcbiAgICBsZWZ0OjA7XG4gICAgQGluY2x1ZGUgcGFkSCgwKTtcbiAgICB6LWluZGV4OjQwO1xuICB9XG4gIC5wYWdlLXByb2R1aXQgJixcbiAgLnBhZ2UtbGlicmFpcmllICYge1xuICAgIEBpbmNsdWRlIHBhZEgocmVtKDApKTtcbiAgfVxuICAmX19saXN0IHtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgLnBhZ2UtcHJvZHVpdCAmLFxuICAgIC5wYWdlLWxpYnJhaXJpZSAmIHtcbiAgICAgIEBpbmNsdWRlIGNvbnRhaW5lci1maXhlZDtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICAgIHdpZHRoOiAkY29udGFpbmVyLXNtO1xuICAgICAgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcbiAgICAgICAgd2lkdGg6ICRjb250YWluZXItbWQ7XG4gICAgICB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZykge1xuICAgICAgICB3aWR0aDogJGNvbnRhaW5lci1sZztcbiAgICAgIH1cbiAgICB9XG4gICAgLnN0aWNreS1uYXYtaXMtZml4ZWQgJiB7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgQGluY2x1ZGUgcGFkSCgwKTtcbiAgICB9XG4gICAgLnBhZ2UtY29uc2VpbGxlcnMtcGF5cyAmLFxuICAgIC5wYWdlLWNvbnNlaWxsZXJzLWludGVydmlldyAmIHtcbiAgICAgIEBpbmNsdWRlIG1hckg7XG4gICAgICBtYXgtd2lkdGg6MTAwcmVtO1xuICAgIH1cbiAgICAucGFnZS1jaGVxdWVzLWNhZGVhdXgtdHVubmVsICYge1xuICAgICAgQGluY2x1ZGUgbWFySDtcbiAgICAgIG1heC13aWR0aDo4MHJlbTtcbiAgICB9XG5cbiAgICAucGFnZS1jb25zZWlsbGVycy1wYXlzLnN0aWNreS1uYXYtaXMtZml4ZWQgJixcbiAgICAucGFnZS1jb25zZWlsbGVycy1pbnRlcnZpZXcuc3RpY2t5LW5hdi1pcy1maXhlZCAmLFxuICAgIC5wYWdlLWNoZXF1ZXMtY2FkZWF1eC10dW5uZWwuc3RpY2t5LW5hdi1pcy1maXhlZCAmIHtcbiAgICAgIG1heC13aWR0aDpub25lO1xuICAgIH1cbiAgfVxuICAmX19pdGVtIHtcbiAgICBmbGV4LWdyb3c6MTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbGluZS1oZWlnaHQ6cmVtKDQzKTtcbiAgICAmICsgJiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJhc2UtY29sb3I7XG4gICAgICAgICAgd2lkdGg6MXB4O1xuICAgICAgICAgIGhlaWdodDoyLjVyZW07XG4gICAgICAgICAgdG9wOjUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnBhZ2UtY29uc2VpbGxlcnMtaW50ZXJ2aWV3ICYsXG4gICAgLnBhZ2UtY2hlcXVlcy1jYWRlYXV4LXR1bm5lbCAmIHtcbiAgICAgIHdpZHRoOjMzLjMzJTtcbiAgICB9XG4gIH1cbiAgJl9fbGluayB7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBoZWlnaHQ6cmVtKDQzKTtcbiAgICBsaW5lLWhlaWdodDpyZW0oNDMpO1xuICAgIG1hcmdpbjowLjVyZW07XG4gICAgQGluY2x1ZGUgcGFkSCgxcmVtKVxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOjEuNHJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogLjJyZW07XG4gICAgJi5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmx1ZTtcbiAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICB9XG4gICAgPiBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgIH1cbiAgfVxuXG4gICZfX2ZpeGVkLWl0ZW0ge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgLnN0aWNreS1uYXYtaXMtZml4ZWQgJiB7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICZfX2J1dHRvbiB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgQGluY2x1ZGUgcGFkSCgxLjVyZW0pO1xuICAgIH1cbiAgfVxufVxuXG5hLnN0aWNreS1uYXZfX2xpbmsge1xuICAmLmFjdGl2ZSB7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgfVxuICB9XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiRibHVlO1xuICB9XG59XG5cbi5zdGlja3ktbmF2LXdyYXBwZXIge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBoZWlnaHQ6MCFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnN0aWNreS1uYXYtbW9iaWxlLXdyYXBwZXIge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgfVxufVxuLnN0aWNreS1uYXYtbW9iaWxlIHtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIHotaW5kZXg6NDtcbiAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKCR3aGl0ZSwwLjk3KTtcbiAgLnN0aWNreS1uYXYtbW9iaWxlLWlzLWZpeGVkICYge1xuICAgIHBvc2l0aW9uOmZpeGVkO1xuICAgIHRvcDowO1xuICAgIGxlZnQ6MDtcbiAgICB3aWR0aDoxMDAlO1xuICB9XG4gICZfX2J1dHRvbiB7XG4gICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgcGFkZGluZzoycmVtIDFyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6MS44cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAuMnJlbTtcbiAgICB3aWR0aDoxMDAlO1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgfVxuICAmX19idXR0b24tdGV4dCB7XG4gICAgQGluY2x1ZGUgaWNvbihzZWxlY3QsYWZ0ZXIpO1xuICAgICY6YWZ0ZXIge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cbiAgLnN0aWNreS1uYXZfX2xpbmsge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkYmFzZS1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgLnN0aWNreS1uYXYtbW9iaWxlLWlzLW9wZW5lZCAmIHtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgJiBtZW51XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuJGJlbG93SXBhZExhbmRzY2FwZSA6IDEwMjNweDtcbiRpcGFkTGFuZHNjYXBlIDogMTAyNHB4O1xuJGFib3ZlSXBhZExhbmRzY2FwZSA6IDEwMjVweDtcblxuXG4ubWVudSB7XG4gIGRpc3BsYXk6bm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDUuOXJlbTtcbiAgbGVmdDogcmVtKDUwKTtcbiAgcmlnaHQ6IHJlbSg1MCk7XG4gIHotaW5kZXg6IDExMDA7XG4gIGJvcmRlcjpyZW0oOCkgc29saWQgJHBpbmtMaWdodDtcbiAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gIHBhZGRpbmc6NHJlbTtcbiAgb3ZlcmZsb3c6aGlkZGVuO1xuXG4gIC5vcGVuLW1lbnU6aG92ZXIgJixcbiAgLm9wZW4tbWVudTpmb2N1cyAmIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICB9XG4gICAgXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgfVxuICAmX19pbm5lciB7XG4gICAgaGVpZ2h0OjEwMCU7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gIH1cbiAgJl9fY2xvc2Uge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgfVxufVxuXG4uYm94LW1lbnUge1xuICBkaXNwbGF5OmZsZXg7XG4gIGhlaWdodDogMTAwJTtcbiAgJl9fbWFpbiB7XG4gICAgZmxleC1ncm93OjE7XG4gIH1cbiAgJl9fbWFpbi1pbm5lciB7XG4gICAgb3ZlcmZsb3cteDpoaWRkZW47XG4gICAgb3ZlcmZsb3cteTphdXRvO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuICAmX19saXN0ICB7XG4gICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xuICB9XG4gICZfX2l0ZW0ge1xuICAgIG1hcmdpbi10b3A6MXJlbTtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGFib3ZlSXBhZExhbmRzY2FwZSkge1xuICAgICAgbWFyZ2luLXRvcDoycmVtO1xuICAgIH1cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi10b3A6MDtcbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgfVxuICB9XG4gICZfX2xpbmsge1xuICAgIGZvbnQtc2l6ZTozcmVtO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkaXBhZExhbmRzY2FwZSkge1xuICAgICAgZm9udC1zaXplOjJyZW07XG4gICAgfVxuICB9XG4gICZfX3N1Ymxpc3Qge1xuXG4gIH1cbiAgJl9fc3ViaXRlbSB7XG4gICAgJi5hY3RpdmUge1xuICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIH1cbiAgfVxuICAmX19zdWJsaW5rIHtcbiAgICBAaW5jbHVkZSBpY29uKGZsZWNoZS1uYXYpO1xuICAgIGNvbG9yOiRhbHBoYS1jb2xvcjtcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOjJyZW07XG4gICAgJjpiZWZvcmUge1xuICAgICAgZm9udC1zaXplOjEuNnJlbTtcbiAgICAgIGNvbG9yOiRiYXNlLWNvbG9yO1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJGlwYWRMYW5kc2NhcGUpIHtcbiAgICAgIGZvbnQtc2l6ZToxLjRyZW07XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX190ZWwge1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICBmb250LXNpemU6MS43cmVtO1xuICB9XG59XG5cbi5zb2NpYWwtbWVudSB7XG4gIG1hcmdpbi10b3A6MnJlbTtcbiAgY29sb3I6JGdyZXlEYXJrO1xuICAmX190aXRsZSB7XG4gICAgZm9udC1zaXplOjEuMnJlbTtcbiAgICBmb250LXdlaWdodDo3MDA7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBmb250LXNpemU6MnJlbTtcbiAgICB9XG4gIH1cbiAgJl9fbGlzdCB7XG4gICAgbWFyZ2luLXRvcDoxcmVtO1xuICB9XG4gICZfX2l0ZW0ge1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICYgKyAmIHtcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkaXBhZExhbmRzY2FwZSkge1xuICAgICAgICBtYXJnaW4tbGVmdDowLjVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG4gICZfX2xpbmsge1xuICAgIEBpbmNsdWRlIGNlbnRlckljb247XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBmb250LXNpemU6MS44cmVtO1xuICAgIHdpZHRoOjIuNHJlbTtcbiAgICBoZWlnaHQ6Mi40cmVtO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6JHBpbmtMaWdodDtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBmb250LXNpemU6Mi42cmVtO1xuICAgICAgd2lkdGg6NC40cmVtO1xuICAgICAgaGVpZ2h0OjQuNHJlbTtcbiAgICB9XG4gICAgJi5mYWNlYm9vayB7XG4gICAgICBAaW5jbHVkZSBpY29uKGZhY2Vib29rKTtcbiAgICB9XG4gICAgJi5nb29nbGUtcGx1cyB7XG4gICAgICBAaW5jbHVkZSBpY29uKGdvb2dsZS1wbHVzKTtcbiAgICB9XG4gICAgJi50d2l0dGVyIHtcbiAgICAgIEBpbmNsdWRlIGljb24odHdpdHRlcik7XG4gICAgfVxuICAgICYucGludGVyZXN0IHtcbiAgICAgIEBpbmNsdWRlIGljb24ocGludGVyZXN0KTtcbiAgICB9XG4gICAgJi5pbnN0YWdyYW0ge1xuICAgICAgQGluY2x1ZGUgaWNvbihpbnN0YWdyYW0pO1xuICAgIH1cbiAgICAmLnlvdXR1YmUge1xuICAgICAgQGluY2x1ZGUgaWNvbih5b3V0dWJlKTtcbiAgICB9XG4gIH1cbn1cblxuLmJveC1saXN0IHtcbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZToyLjJyZW07XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIG1hcmdpbi1ib3R0b206MS41cmVtO1xuICB9XG4gICZfX2xpc3Qge1xuICAgID4gbGkge1xuICAgICAgbWFyZ2luLXRvcDouNXJlbTtcbiAgICAgID4gYSB7XG4gICAgICAgIGZvbnQtc2l6ZToxLjhyZW07XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG5cbi5ib3gtZGVzdGluYXRpb25zIHtcbiAgQGluY2x1ZGUgbWFySChhdXRvKTtcbiAgbWF4LXdpZHRoOiAxMzByZW07XG59XG5cbi5ib3gtaW5zcGlyYXRpb25zIHtcbiAgQGluY2x1ZGUgbWFySChhdXRvKTtcbiAgbWF4LXdpZHRoOiAxMTVyZW07XG4gICZfX3JvdyB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcbiAgICAgIEBpbmNsdWRlIGd1dHRlcigzcmVtKTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAmID4gKiArICoge1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM4YThhOGE7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICZfX2xpc3Qge1xuICAgIG1hcmdpbi10b3A6IDhyZW07XG4gICAgJiA+IGxpIHtcbiAgICAgICYgKyBsaSB7XG4gICAgICAgIG1hcmdpbi10b3A6MXJlbTtcbiAgICAgIH1cbiAgICAgICYgPiBhIHtcbiAgICAgICAgQGluY2x1ZGUgaWNvbihmbGVjaGUtbmF2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5ib3gtZW52aWUge1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAmX190ZXh0IHtcbiAgICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cbiAgfVxuICAuYnV0dG9uLW1lbnUge1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgfVxuICAuYm94LWxpc3RfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOjA7XG4gIH1cbn1cblxuLmJveC1hLXByb3BvcyB7XG4gIEBpbmNsdWRlIG1hckgoYXV0byk7XG4gIG1heC13aWR0aDogMTE3cmVtO1xuICAmX19yb3cge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XG4gICAgICBAaW5jbHVkZSBndXR0ZXIoM3JlbSk7XG4gICAgfVxuICB9XG4gIC5ib3gtZW52aWUge1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAmX190ZXh0IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxuICB9XG4gIC5hY3Rpb25zIHtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xuICB9XG59XG5cbi5saXN0LWNvbnRpbmVudCB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgY29sdW1uczogNDtcbiAgICA+IGxpIHtcbiAgICAgICYgKyBsaSB7XG4gICAgICAgIG1hcmdpbi10b3A6MXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmxpc3QtY29udGluZW50X19saW5rIHtcbiAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgIGNvbG9yOiRhbHBoYS1jb2xvcjtcbiAgICAgIG1hcmdpbi1ib3R0b206MC4ycmVtO1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICB9XG4gICAgYnV0dG9uLmxpc3QtY29udGluZW50X19saW5rIHtcbiAgICAgIGN1cnNvcjpkZWZhdWx0O1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICB9XG4gICAgYS5saXN0LWNvbnRpbmVudF9fbGluayB7XG4gICAgICAmOmhvdmVye1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWF4KSBhbmQgKG1heC13aWR0aDogJGJlbG93SXBhZExhbmRzY2FwZSkge1xuICAgIGNvbHVtbnM6IDU7XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRpcGFkTGFuZHNjYXBlKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgICBjb2x1bW5zOiA3O1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnKSB7XG4gICAgY29sdW1uczogNztcbiAgfVxufVxuLmxpc3QtcGF5cyB7XG4gID4gbGkge1xuICAgID4gYSB7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgZm9udC1zaXplOjEuNHJlbTtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmJveC1tZW51LXNhaXNvbnMge1xuICBjb2xvcjokYWxwaGEtY29sb3I7XG4gIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgJiArICYge1xuICAgIG1hcmdpbi10b3A6NHJlbTtcbiAgfVxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICBtYXJnaW4tdG9wOjJyZW07XG4gIH1cbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZToycmVtO1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIH1cbiAgfVxuICAmX19saXN0IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICAgIGNvbHVtbnM6IDQ7XG4gICAgfVxuICAgID4gbGkge1xuICAgICAgQGluY2x1ZGUgaWNvbihmbGVjaGUtbmF2KTtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgPiBhIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4uYm94LWNvbW1hbmRlLWJyb2NodXJlIHtcbiAgbWFyZ2luLXRvcDozcmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICZfX3RleHQge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOjEuM3JlbTtcbiAgfVxufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICYgbWVudSBtb2JpbGVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5tZW51LW1vYmlsZSB7XG4gIGRpc3BsYXk6bm9uZTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogNi41cmVtO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICB6LWluZGV4OiAxMDAxO1xuXG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gICAgXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlLWluO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG5cbiAgICAubWVudS1tb2JpbGUtb3BlbmVkICYge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4yNXMgZWFzZS1vdXQ7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgfSBcbiAgICAmX19mb290ZXIge1xuICAgICAgQGluY2x1ZGUgcGFkSCgycmVtKTtcbiAgICAgIHBhZGRpbmctYm90dG9tOjFyZW07XG4gICAgICBwb3NpdGlvbjpmaXhlZDtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgICBib3R0b206IDZyZW07XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiByZXNldFN0eWxlKCl7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBsZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgbWFyZ2luOjA7XG4gIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmV5O1xufVxuLm1lbnUtbW9iaWxlLWxpc3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDo1MDA7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICB6LWluZGV4OjE7XG4gIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICBhIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICB9XG4gID4gbGkge1xuICAgID4gYSB7XG4gICAgICBAaW5jbHVkZSByZXNldFN0eWxlKCk7XG4gICAgICBwYWRkaW5nOjEuNXJlbSAycmVtO1xuICAgICAgZm9udC1zaXplOjIuNHJlbTtcblxuICAgICAgJi5qcy10b2dnbGUtbWVudSB7XG4gICAgICAgIEBpbmNsdWRlIGljb24oY2xvc2UpO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OjVyZW07XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICByaWdodDoycmVtO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3M7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm9wZW5lZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyZXlEYXJrO1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgICYgKyB1bCB7XG4gICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgPiB1bCB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICA+IGxpIHtcbiAgICAgICAgPiAuanMtbWVudS1tb2JpbGUtbml2MiB7XG4gICAgICAgICAgQGluY2x1ZGUgcmVzZXRTdHlsZSgpO1xuICAgICAgICAgIHBhZGRpbmc6MS41cmVtIDNyZW07XG4gICAgICAgICAgZm9udC1zaXplOjEuNnJlbTtcbiAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICAgICAgICAmLmpzLXRvZ2dsZS1tZW51IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGljb24oY2xvc2UpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcztcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6NXJlbTtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgICAgIHJpZ2h0OjIuNHJlbTtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcztcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJi5vcGVuZWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjojZDFkMWQxO1xuICAgICAgICAgICAgJiArIHVsIHtcbiAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgID4gdWwge1xuICAgICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgID4gLmpzLW1lbnUtbW9iaWxlLW5pdjMge1xuICAgICAgICAgICAgICBAaW5jbHVkZSByZXNldFN0eWxlKCk7XG4gICAgICAgICAgICAgIHBhZGRpbmc6MS41cmVtIDVyZW0gMS41cmVtIDRyZW07XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZToxLjZyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICYub3BlbmVkIHtcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgJiBjb250YWN0XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uY29udGFjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMTEwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXlMaWdodDtcbiAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyZXk7XG4gIHBhZGRpbmc6NXJlbSAycmVtO1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgb3ZlcmZsb3c6aGlkZGVuO1xuXG4gIHRyYW5zaXRpb246IDAuNHMgZWFzZS1pbjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMjAlKTtcbiAgYm9yZGVyOiAwLjg4ODg5cmVtIHNvbGlkICRwaW5rTGlnaHQ7XG5cbiAgbWFyZ2luOiA0cmVtIGF1dG87XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICBtYXgtd2lkdGg6OTByZW07XG4gICAgbWF4LWhlaWdodDo3MHJlbTtcbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xuICAgIG1heC13aWR0aDoxMTByZW07XG4gICAgbWF4LWhlaWdodDo3NXJlbTtcbiAgfVxuIFxuICAuY29udGFjdC1vcGVuZWQgJiB7XG4gICAgdHJhbnNpdGlvbjogMC41cyBlYXNlLW91dDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgXG4gIH1cbiAgJl9faW5uZXIge1xuICAgIGhlaWdodDoxMDAlO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICB9XG4gICZfX2Nsb3NlIHtcbiAgICBAaW5jbHVkZSBpY29uKGNsb3NlKTtcbiAgICBAaW5jbHVkZSBjZW50ZXJJY29uO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHdpZHRoOiAycmVtO1xuICAgIGhlaWdodDogMnJlbTtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB0b3A6IC0ycmVtO1xuICAgIGxlZnQ6IDJyZW07XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRhYm92ZUlwYWRMYW5kc2NhcGUpIHtcbiAgICAgIHdpZHRoOiAyLjVyZW07XG4gICAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgIH1cbiAgICBzcGFuIHtcbiAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICB9XG4gIH1cbiAgJl9fc2VjdGlvbiB7XG4gICAgbWFyZ2luLXRvcDozcmVtO1xuICB9XG4gICZfX3RpdGxlIHtcbiAgICBmb250LXNpemU6NC40cmVtO1xuICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICBmb250LXdlaWdodDpub3JtYWw7XG4gICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gICZfX2FjdGlvbnMge1xuICAgIEBpbmNsdWRlIG1hclY7XG4gIH1cbiAgJl9fbGlzdCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgQGluY2x1ZGUgbWFySDtcbiAgICBtYXgtd2lkdGg6IDYwcmVtO1xuICAgIG1hcmdpbi1ib3R0b206NHJlbTtcbiAgfVxuICAmX19pdGVtIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogNTAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gICZfX3RhYi1jb250ZW50IHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAyNHJlbSk7XG4gIH1cbn1cblxuLm1lbnUtY29udGFjdCB7XG4gIGZvbnQtc2l6ZToycmVtO1xuICBtYXJnaW4tYm90dG9tOjRyZW07XG4gICZfX2l0ZW0ge1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICYuYWN0aXZlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgIC5tZW51LWNvbnRhY3RfX2xpbmsge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cbiAgICAmICsgLm1lbnUtY29udGFjdF9faXRlbSB7XG4gICAgICBtYXJnaW4tbGVmdDo0cmVtO1xuICAgIH1cbiAgfVxufVxuXG4uY29udGFjdCAuY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOjg4MnB4O1xufVxuXG4uY29udGFjdC1hY2N1ZWlsIHtcbiAgJl9fbGlua3Mge1xuICAgIEBpbmNsdWRlIG1hckg7XG4gICAgbWF4LXdpZHRoOiA2MHJlbTtcbiAgfVxuICAmX19saW5rIHtcbiAgICBAaW5jbHVkZSBpY29uKGZsZWNoZS1uYXYpO1xuICAgIGZvbnQtc2l6ZToycmVtO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgZm9udC1zaXplOjEuNXJlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogMC4ycmVtO1xuICAgIH1cbiAgfVxufVxuXG4uY29udGFjdC1wYXlzIHtcbiAgJl9faW5uZXIge1xuICAgIEBpbmNsdWRlIG1hckg7XG4gIH1cblxuICAmX190ZXh0IHtcbiAgICBmb250LXNpemU6My41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206NHJlbTtcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gIH1cbiAgJl9fbGlzdCB7XG4gICAgdGV4dC1hbGlnbjpsZWZ0O1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIGNvbHVtbi1jb3VudCA6IDM7XG4gICAgY29sdW1uLWdhcCA6IDEycmVtO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgICAgY29sdW1uLWdhcCA6IDRyZW07XG4gICAgfVxuICAgIGxpIHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgJiArIGxpIHtcbiAgICAgICAgbWFyZ2luLXRvcDowLjJyZW07XG4gICAgICB9XG4gICAgfVxuICAgIC52YWx1ZSB7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgd2lkdGg6IDEwcmVtO1xuICAgIH1cbiAgfVxufVxuXG4uY29udGFjdC1hZ2VuY2VzIHtcbiAgJl9faW5uZXIge1xuICAgIEBpbmNsdWRlIG1hckg7XG4gICAgQGluY2x1ZGUgcGFkSCgxNXB4KTtcblxuICB9XG4gICZfX2xpc3Qge1xuICAgIG1hcmdpbi10b3A6MnJlbTtcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gICAgbGkge1xuICAgICAgbWluLWhlaWdodDo4NXB4O1xuICAgICAgJiArIGxpIHtcbiAgICAgICAgbWFyZ2luLXRvcDoycmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAudGV4dCB7XG4gICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgfVxuICB9XG59XG5cbi5jb250YWN0LWl0ZW0ge1xuICAmX19pY29uIHtcbiAgICBjb2xvcjokcGlua0xpZ2h0O1xuICAgIGZvbnQtc2l6ZTo2cmVtO1xuICAgIHdpZHRoOjZyZW07XG4gICAgaGVpZ2h0OjZyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIEBpbmNsdWRlIGNlbnRlckljb247XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgZm9udC1zaXplOjRyZW07XG4gICAgfVxuICB9XG4gICZfX3RleHQge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOjEuOHJlbTtcbiAgICBtYXJnaW4tdG9wOjA7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICB9XG4gIH1cbiAgJl9fbGluayB7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgIH1cbiAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAmIGNvbnRhY3QgbW9iaWxlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uY29udGFjdC1tb2JpbGUge1xuICBkaXNwbGF5Om5vbmU7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDYuNXJlbTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjByZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgei1pbmRleDogMTAwMTtcblxuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlLWluO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcblxuICAgIC5jb250YWN0LW1vYmlsZS1vcGVuZWQgJiB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjI1cyBlYXNlLW91dDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB9IFxuICAgICZfX2Zvb3RlciB7XG4gICAgICBAaW5jbHVkZSBwYWRIKDJyZW0pO1xuICAgICAgcGFkZGluZy1ib3R0b206MXJlbTtcbiAgICAgIHBvc2l0aW9uOmZpeGVkO1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIGJvdHRvbTowO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gcmVzZXRTdHlsZSgpe1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIG1hcmdpbjowO1xuICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JleTtcbn1cbi5jb250YWN0LW1vYmlsZS1saXN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6NTAwO1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgei1pbmRleDoxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgYSB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgfVxuICA+IGxpIHtcbiAgICA+IGEge1xuICAgICAgQGluY2x1ZGUgcmVzZXRTdHlsZSgpO1xuICAgICAgcGFkZGluZzoxLjVyZW0gMnJlbTtcbiAgICAgIGZvbnQtc2l6ZToyLjRyZW07XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgLnZhbHVlIHtcbiAgICAgICAgZmxvYXQ6cmlnaHQ7XG4gICAgICAgIGNvbG9yOiRhbHBoYS1jb2xvcjtcbiAgICAgIH1cbiAgICAgICYuanMtdG9nZ2xlLW1lbnUge1xuICAgICAgICBAaW5jbHVkZSBpY29uKGNsb3NlKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcztcbiAgICAgICAgcGFkZGluZy1yaWdodDo1cmVtO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgcmlnaHQ6MnJlbTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYub3BlbmVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JleURhcms7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgJiArIHVsIHtcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICB9XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICA+IHVsIHtcbiAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgID4gbGkge1xuICAgICAgICA+IC5jb250YWN0LW1vYmlsZS1uaXYyIHtcbiAgICAgICAgICBAaW5jbHVkZSByZXNldFN0eWxlKCk7XG4gICAgICAgICAgcGFkZGluZzoxLjVyZW0gM3JlbTtcbiAgICAgICAgICBmb250LXNpemU6MS42cmVtO1xuICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgdGV4dC1hbGlnbjpsZWZ0O1xuICAgICAgICAgIC50ZXh0IHtcblxuICAgICAgICAgIH1cbiAgICAgICAgICAudmFsdWUge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgY29sb3I6ICRhbHBoYS1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5zY3JvbGxUb3BCdXR0b24ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDQwMDtcbiAgYm90dG9tOiA4cmVtO1xuICByaWdodDogM3JlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKCRncmV5RGFyaywuOCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgb3BhY2l0eTogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgcGFkZGluZzogMTVweDtcbiAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgbGluZS1oZWlnaHQ6MTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjZzIGVhc2Utb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4zcyBlYXNlLW91dDtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKHRpbnQoJGdyZXlEYXJrLCAxNSUpLC44KTtcbiAgfVxuICBAaW5jbHVkZSBpY29uKGZsZWNoZS1zZWxlY3QpO1xuICAmOmJlZm9yZSB7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgdG9wOjAuMnJlbTtcbiAgfVxuXG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC5zY3JvbGx0b3AtYnV0dG9uLWlzLXNob3dlZCAmIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIC5wYWdlLW1hZyAmIHtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAzcmVtO1xuICAgIH1cbiAgfVxufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICYgbmF2IHVuaXZlcnMgXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4ubmF2LXVuaXZlcnMge1xuICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDpcIlwiO1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIGhlaWdodDoycHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRiYXNlLWNvbG9yO1xuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICBib3R0b206MDtcbiAgICAgIGxlZnQ6MDtcbiAgICAgIHJpZ2h0OjA7XG4gICAgfVxuICAgIC5uYXYtdW5pdmVycy1tb2JpbGUtaXMtZml4ZWQgJiB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgdG9wOiAkbmF2TW9iaWxlSGVpZ2h0O1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxuICAmX19pbm5lciB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgQGluY2x1ZGUgcGFkSChyZW0oNTApKTtcbiAgICB9XG4gIH1cbiAgJl9fbGlzdCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICB3aGl0ZS1zcGFjZTpub3dyYXA7XG4gICAgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgfVxuICAmX19pdGVtIHtcbiAgICBmbGV4LWdyb3c6MTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIH1cbiAgICAmICsgJiB7XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJhc2UtY29sb3I7XG4gICAgICAgICAgd2lkdGg6MXB4O1xuICAgICAgICAgIGhlaWdodDoyLjVyZW07XG4gICAgICAgICAgdG9wOjUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIC5uby10b3VjaCAmIHtcbiAgICAgICAgLm5hdi11bml2ZXJzX19saW5rIHtcbiAgICAgICAgICBjb2xvcjokYWxwaGEtY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmRyb3Bkb3duLWJhY2tkcm9wIHtcbiAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICB9XG4gIH1cbiAgJl9fbGluayB7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBoZWlnaHQ6cmVtKDQzKTtcbiAgICBsaW5lLWhlaWdodDpyZW0oNDMpO1xuICAgIEBpbmNsdWRlIHBhZEgoMXJlbSlcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZToxLjRyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4ycmVtO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgaGVpZ2h0OnJlbSg1MCk7XG4gICAgICBsaW5lLWhlaWdodDpyZW0oNTApO1xuICAgICAgZm9udC1zaXplOjEuNnJlbTtcbiAgICB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgIG1hcmdpbjowLjVyZW07XG4gICAgfVxuICAgID4gc3BhbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICB9XG4gICAgLndpdGgtc291c25hdiAmIHtcbiAgICAgIEBpbmNsdWRlIGljb24oZmxlY2hlLW5hdiwgYWZ0ZXIpO1xuICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OjIuNXJlbTtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgdG9wOjUwJTtcbiAgICAgICAgcmlnaHQ6IDFyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgd2lkdGg6MXJlbTtcbiAgICAgICAgaGVpZ2h0OjFyZW07XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKSB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICBsaW5lLWhlaWdodDpub3JtYWw7XG4gICAgICAgIG1hcmdpbi10b3A6IC0wLjJyZW07XG4gICAgICB9XG4gICAgfVxuICAgIC5ob21lICYgc3BhbiB7XG4gICAgICBAaW5jbHVkZSBpY29uKGhvbWUpO1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAwLjg0ZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAtMC4xZW07XG4gICAgICB9XG4gICAgfVxuICAgIC5hY3RpdmUgJntcbiAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgIGhlaWdodDo0cHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmFzZS1jb2xvcjtcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICBib3R0b206MDtcbiAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAudG91Y2ggLm9wZW4gJiB7XG4gICAgICBjb2xvcjokYWxwaGEtY29sb3I7XG4gICAgfVxuICB9XG4gICZfX2Nsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOjA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDRyZW07XG4gICAgaGVpZ2h0OiA0cmVtO1xuICAgIGxpbmUtaGVpZ2h0OjRyZW07XG4gICAgZm9udC1zaXplOjRyZW07XG4gICAgY29sb3I6JGFscGhhLWNvbG9yO1xuICAgIC5uby10b3VjaCAmIHtcbiAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICB9IFxuICB9XG59XG4ubmF2LXVuaXZlcnMtbW9iaWxlLXdyYXBwZXIge1xuICBoZWlnaHQ6cmVtKDUwKTtcbn1cblxuLnNvdXNuYXYtdW5pdmVycyB7XG4gIGRpc3BsYXk6bm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXI6IDJweCBzb2xpZCAkYWxwaGEtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBsaW5lLWhlaWdodDpub3JtYWw7XG4gIEBpbmNsdWRlIGJveFNoYWRvdztcbiAgdGV4dC1hbGlnbjpsZWZ0O1xuICB6LWluZGV4OiA5OTU7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIGxlZnQ6IDJyZW07XG4gICAgcmlnaHQ6IDJyZW07XG4gICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICBib3JkZXItd2lkdGg6IDNweDtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgbWFyZ2luLXRvcDotMXJlbTtcbiAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxuICAudG91Y2ggJiB7XG4gICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDE4cmVtKTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG5cbiAgJl9fbGluayB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgICY6aG92ZXIge1xuICAgICAgLm5vLXRvdWNoICYge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG4gICAgLnRvdWNoICYge1xuICAgICAgcGFkZGluZy1yaWdodDozcmVtO1xuICAgIH1cbiAgfVxuICAubmF2LXVuaXZlcnNfX2l0ZW06aG92ZXIgJixcbiAgLm5hdi11bml2ZXJzX19pdGVtOmZvY3VzICYge1xuICAgIC5uby10b3VjaCAmIHtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgfVxuICB9XG4gIC50b3VjaCAub3BlbiAmIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICB9XG59IiwiLyogU2xpZGVyICovXG5cbi5zbGljay1zbGlkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uc2xpY2stbGlzdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmRyYWdnaW5nIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjdXJzb3I6IGhhbmQ7XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OmF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OmF1dG87XG4gICAgfVxuICAgICYuc2xpY2stbG9hZGluZyBpbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAmLmRyYWdnaW5nIGltZyB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgIC5zbGljay1pbml0aWFsaXplZCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuc2xpY2stdmVydGljYWwgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cbn1cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vIERlZmF1bHQgVmFyaWFibGVzXG5cbi8vIFNsaWNrIGljb24gZW50aXR5IGNvZGVzIG91dHB1dHMgdGhlIGZvbGxvd2luZ1xuLy8gXCJcXDIxOTBcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKGkFwiXG4vLyBcIlxcMjE5MlwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oaSXCJcbi8vIFwiXFwyMDIyXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLigKJcIlxuXG4kc2xpY2stZm9udC1wYXRoOiBcIi4uL2ZvbnQvXCIgIWRlZmF1bHQ7XG4kc2xpY2stZm9udC1mYW1pbHk6IFwic2xpY2tcIiAhZGVmYXVsdDtcbiRzbGljay1sb2FkZXItcGF0aDogXCIuLi9pbWFnZXMvXCIgIWRlZmF1bHQ7XG4kc2xpY2stYXJyb3ctY29sb3I6IHJnYmEoMCwwLDAsMSkgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNvbG9yOiAjZWVlICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU6ICMxMTEgIWRlZmF1bHQ7XG4kc2xpY2stcHJldi1jaGFyYWN0ZXI6IFwiXFwyMTkwXCIgIWRlZmF1bHQ7XG4kc2xpY2stbmV4dC1jaGFyYWN0ZXI6IFwiXFwyMTkyXCIgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNoYXJhY3RlcjogXCJcXDIwMjJcIiAhZGVmYXVsdDtcbiRzbGljay1kb3Qtc2l6ZTogMTBweCAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LWRlZmF1bHQ6IDAuNzUgIWRlZmF1bHQ7XG4kc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjogMSAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU6IDAuMjUgIWRlZmF1bHQ7XG5cbkBmdW5jdGlvbiBzbGljay1pbWFnZS11cmwoJHVybCkge1xuICAgIEBpZiBmdW5jdGlvbi1leGlzdHMoaW1hZ2UtdXJsKSB7XG4gICAgICAgIEByZXR1cm4gaW1hZ2UtdXJsKCR1cmwpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAgIEByZXR1cm4gdXJsKCRzbGljay1sb2FkZXItcGF0aCArICR1cmwpO1xuICAgIH1cbn1cblxuQGZ1bmN0aW9uIHNsaWNrLWZvbnQtdXJsKCR1cmwpIHtcbiAgICBAaWYgZnVuY3Rpb24tZXhpc3RzKGZvbnQtdXJsKSB7XG4gICAgICAgIEByZXR1cm4gZm9udC11cmwoJHVybCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgQHJldHVybiB1cmwoJHNsaWNrLWZvbnQtcGF0aCArICR1cmwpO1xuICAgIH1cbn1cblxuLyogU2xpZGVyICovXG5cbi5zbGljay1saXN0IHtcbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZiBzbGljay1pbWFnZS11cmwoXCJhamF4LWxvYWRlci5naWZcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgfVxufVxuXG4vKiBJY29ucyAqL1xuQGlmICRzbGljay1mb250LWZhbWlseSA9PSBcInNsaWNrXCIge1xuICAgIEBmb250LWZhY2Uge1xuICAgICAgICBmb250LWZhbWlseTogXCJzbGlja1wiO1xuICAgICAgICBzcmM6IHNsaWNrLWZvbnQtdXJsKFwic2xpY2suZW90XCIpO1xuICAgICAgICBzcmM6IHNsaWNrLWZvbnQtdXJsKFwic2xpY2suZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2sudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLnN2ZyNzbGlja1wiKSBmb3JtYXQoXCJzdmdcIik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICB9XG59XG5cbi8qIEFycm93cyAqL1xuXG4uc2xpY2stcHJldixcbi5zbGljay1uZXh0IHtcbiAgIEBpbmNsdWRlIGNlbnRlckljb24oYWJzb2x1dGUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogM3JlbTtcbiAgICB3aWR0aDogM3JlbTtcbiAgICBsaW5lLWhlaWdodDogMHB4O1xuICAgIGZvbnQtc2l6ZTogMHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdG9wOiA1MCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktb24taG92ZXI7XG4gICAgICB9XG4gICAgfVxuICAgICYuc2xpY2stZGlzYWJsZWQge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkc2xpY2stZm9udC1mYW1pbHk7XG4gICAgICAgIGZvbnQtc2l6ZTogNnJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGNvbG9yOiAkc2xpY2stYXJyb3ctY29sb3I7XG4gICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LWRlZmF1bHQ7XG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIH1cbn1cbi5uby10b3VjaCB7XG4gIC5zbGljay1wcmV2LFxuICAuc2xpY2stbmV4dCB7XG4gICAgJjpob3ZlciB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW9uLWhvdmVyO1xuICAgICAgfVxuICAgICAgJi5zbGljay1kaXNhYmxlZCB7XG4gICAgICAgIGN1cnNvcjpkZWZhdWx0O1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4kYnV0dG9uT2Zmc2V0IDogLTVyZW07XG4uc2xpY2stcHJldiB7XG4gIGxlZnQ6ICRidXR0b25PZmZzZXQ7XG4gIEBpbmNsdWRlIGljb24oc2xpZGVyLWxlZnQpXG4gIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgQGluY2x1ZGUgaWNvbihzbGlkZXItcmlnaHQpXG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogJGJ1dHRvbk9mZnNldDtcbiAgfVxufVxuXG4uc2xpY2stbmV4dCB7XG4gIEBpbmNsdWRlIGljb24oc2xpZGVyLXJpZ2h0KVxuICByaWdodDogJGJ1dHRvbk9mZnNldDtcbiAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICBAaW5jbHVkZSBpY29uKHNsaWRlci1yaWdodClcbiAgICBsZWZ0OiAkYnV0dG9uT2Zmc2V0O1xuICAgIHJpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi8qIERvdHMgKi9cblxuLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5zbGljay1kb3RzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtMjVweDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMHB4O1xuICAgICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAkc2xpY2stZG90LWNoYXJhY3RlcjtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRzbGljay1mb250LWZhbWlseTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRzbGljay1kb3Qtc2l6ZTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRzbGljay1kb3QtY29sb3I7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgICAgICAgY29sb3I6ICRzbGljay1kb3QtY29sb3ItYWN0aXZlO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5hd2Vzb21wbGV0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgW2hpZGRlbl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnZpc3VhbGx5LWhpZGRlbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIH1cbiAgPiBpbnB1dCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgPiB1bCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTtcbiAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgJjplbXB0eSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIG1hcmdpbjogLjJlbSAwIDA7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMXB4IDBweCByZ2JhKCRibGFjaywgMC4yKTtcbiAgICA+IGxpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmc6IC41ZW0gLjdlbTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICAgIGZvbnQtc2l6ZToxLjhyZW07XG4gICAgICAmOmhvdmVyLFxuICAgICAgJlthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRncmV5TGlnaHQ7XG4gICAgICB9XG4gICAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICAgIHBhZGRpbmc6IC4yZW0gLjVlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgbWFyayB7XG4gICAgY29sb3I6JGJsdWU7XG4gICAgZm9udC13ZWlnaHQ6Ym9sZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICB9XG59XG4iLCJAaW1wb3J0IFwidmFyaWFibGVzXCI7XG5cbi8vIE1peGluc1xuQG1peGluIGN1cnNvci1kaXNhYmxlZCgpIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuQG1peGluIGJveC1zaXppbmcoJGZtdCkge1xuICAtd2Via2l0LWJveC1zaXppbmc6ICRmbXQ7XG4gICAgIC1tb3otYm94LXNpemluZzogJGZtdDtcbiAgICAgICAgICBib3gtc2l6aW5nOiAkZm10O1xufVxuXG5AbWl4aW4gYm94LXNoYWRvdygkZm10KSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogJGZtdDtcbiAgICAgICAgICBib3gtc2hhZG93OiAkZm10O1xufVxuXG5AZnVuY3Rpb24gZmFkZSgkY29sb3IsICRhbW50KSB7XG4gIEBpZiAkYW1udCA+IDEge1xuICAgICRhbW50OiAkYW1udCAvIDEwMDsgLy8gY29udmVydCB0byBwZXJjZW50YWdlIGlmIGludFxuICB9XG4gIEByZXR1cm4gcmdiYSgkY29sb3IsICRhbW50KTtcbn1cblxuLy8gUnVsZXNcbnNlbGVjdC5icy1zZWxlY3QtaGlkZGVuLFxuc2VsZWN0LnNlbGVjdHBpY2tlciB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmJvb3RzdHJhcC1zZWxlY3Qge1xuICB3aWR0aDogMjIwcHggXFwwOyAvKklFOSBhbmQgYmVsb3cqL1xuXG4gIC8vIFRoZSBzZWxlY3RwaWNrZXIgYnV0dG9uXG4gID4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgJi5icy1wbGFjZWhvbGRlcixcbiAgICAmLmJzLXBsYWNlaG9sZGVyOmhvdmVyLFxuICAgICYuYnMtcGxhY2Vob2xkZXI6Zm9jdXMsXG4gICAgJi5icy1wbGFjZWhvbGRlcjphY3RpdmUgeyBjb2xvcjogJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOyB9XG4gIH1cblxuICA+IHNlbGVjdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAwLjVweCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuXG4gICAgJi5tb2JpbGUtZGV2aWNlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuICB9XG5cbiAgLy8gRXJyb3IgZGlzcGxheVxuICAuaGFzLWVycm9yICYgLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLmVycm9yICYgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItcmVkLWVycm9yO1xuICB9XG5cbiAgJi5maXQtd2lkdGgge1xuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmOm5vdChbY2xhc3MqPVwiY29sLVwiXSk6bm90KFtjbGFzcyo9XCJmb3JtLWNvbnRyb2xcIl0pOm5vdCguaW5wdXQtZ3JvdXAtYnRuKSB7XG4gICAgd2lkdGg6ICR3aWR0aC1kZWZhdWx0O1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gICAgb3V0bGluZTogdGhpbiBkb3R0ZWQgIzMzMzMzMyAhaW1wb3J0YW50O1xuICAgIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvciAhaW1wb3J0YW50O1xuICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICB9XG59XG5cbi5ib290c3RyYXAtc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTtcblxuICAmOm5vdChbY2xhc3MqPVwiY29sLVwiXSkge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgJi5pbnB1dC1ncm91cC1idG4ge1xuICAgIHotaW5kZXg6IGF1dG87XG5cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgPiAuYnRuIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gVGhlIHNlbGVjdHBpY2tlciBjb21wb25lbnRzXG4uYm9vdHN0cmFwLXNlbGVjdC5idG4tZ3JvdXAge1xuICAmOm5vdCguaW5wdXQtZ3JvdXAtYnRuKSxcbiAgJltjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAvLyBGb3JjZXMgdGhlIHB1bGwgdG8gdGhlIHJpZ2h0LCBpZiBuZWNlc3NhcnlcbiAgJixcbiAgJltjbGFzcyo9XCJjb2wtXCJdLFxuICAucm93ICZbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgJi5kcm9wZG93bi1tZW51LXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cblxuICAuZm9ybS1pbmxpbmUgJixcbiAgLmZvcm0taG9yaXpvbnRhbCAmLFxuICAuZm9ybS1ncm91cCAmIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLmZvcm0tZ3JvdXAtbGcgJi5mb3JtLWNvbnRyb2wsXG4gIC5mb3JtLWdyb3VwLXNtICYuZm9ybS1jb250cm9sIHtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG4gICAgfVxuICB9XG5cbiAgLy8gU2V0IHRoZSB3aWR0aCBvZiB0aGUgbGl2ZSBzZWFyY2ggKGFuZCBhbnkgb3RoZXIgZm9ybSBjb250cm9sIHdpdGhpbiBhbiBpbmxpbmUgZm9ybSlcbiAgLy8gc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zaWx2aW9tb3JldG8vYm9vdHN0cmFwLXNlbGVjdC9pc3N1ZXMvNjg1XG4gIC5mb3JtLWlubGluZSAmIC5mb3JtLWNvbnRyb2wge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgPiAuZGlzYWJsZWQge1xuICAgIEBpbmNsdWRlIGN1cnNvci1kaXNhYmxlZCgpO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgJi5icy1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICB6LWluZGV4OiAkemluZGV4LXNlbGVjdC1kcm9wZG93bjtcbiAgICB9XG4gIH1cblxuICAvLyBUaGUgc2VsZWN0cGlja2VyIGJ1dHRvblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAuZmlsdGVyLW9wdGlvbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxuICAgIC5jYXJldCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHJpZ2h0OiAxMnB4O1xuICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG5cbiAgJltjbGFzcyo9XCJjb2wtXCJdIC5kcm9wZG93bi10b2dnbGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gVGhlIHNlbGVjdHBpY2tlciBkcm9wZG93blxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG5cbiAgICAmLmlubmVyIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICYuYWN0aXZlIHNtYWxsIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQgYSB7XG4gICAgICAgIEBpbmNsdWRlIGN1cnNvci1kaXNhYmxlZCgpO1xuICAgICAgfVxuXG4gICAgICBhIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcblxuICAgICAgICAmLm9wdCB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMi4yNWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgc3Bhbi5jaGVjay1tYXJrIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgc3Bhbi50ZXh0IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgc21hbGwge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNWVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5ub3RpZnkge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiA1cHg7XG4gICAgICB3aWR0aDogOTYlO1xuICAgICAgbWFyZ2luOiAwIDIlO1xuICAgICAgbWluLWhlaWdodDogMjZweDtcbiAgICAgIHBhZGRpbmc6IDNweCA1cHg7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2IoMjQ1LCAyNDUsIDI0NSk7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2IoMjI3LCAyMjcsIDIyNyk7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCBmYWRlKHJnYigwLCAwLCAwKSwgNSkpO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICBvcGFjaXR5OiAwLjk7XG4gICAgICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xuICAgIH1cbiAgfVxuXG4gIC5uby1yZXN1bHRzIHtcbiAgICBwYWRkaW5nOiAzcHg7XG4gICAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgICBtYXJnaW46IDAgNXB4O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cblxuICAmLmZpdC13aWR0aCAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAuZmlsdGVyLW9wdGlvbiB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIH1cblxuICAgIC5jYXJldCB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICB9XG4gIH1cblxuICAmLnNob3ctdGljayAuZHJvcGRvd24tbWVudSBsaSB7XG4gICAgJi5zZWxlY3RlZCBhIHNwYW4uY2hlY2stbWFyayB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICByaWdodDogMTVweDtcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICB9XG5cbiAgICBhIHNwYW4udGV4dCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDM0cHg7XG4gICAgfVxuICB9XG59XG5cbi5ib290c3RyYXAtc2VsZWN0LnNob3ctbWVudS1hcnJvdyB7XG4gICYub3BlbiA+IC5kcm9wZG93bi10b2dnbGUge1xuICAgIHotaW5kZXg6ICgkemluZGV4LXNlbGVjdC1kcm9wZG93biArIDEpO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBib3JkZXItbGVmdDogN3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJpZ2h0OiA3cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItYm90dG9tOiA3cHggc29saWQgJGNvbG9yLWdyZXktYXJyb3c7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IC00cHg7XG4gICAgICBsZWZ0OiA5cHg7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBib3JkZXItbGVmdDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJpZ2h0OiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItYm90dG9tOiA2cHggc29saWQgd2hpdGU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IC00cHg7XG4gICAgICBsZWZ0OiAxMHB4O1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmLmRyb3B1cCAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgICB0b3A6IC0zcHg7XG4gICAgICBib3JkZXItdG9wOiA3cHggc29saWQgJGNvbG9yLWdyZXktYXJyb3c7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgdG9wOiAtM3B4O1xuICAgICAgYm9yZGVyLXRvcDogNnB4IHNvbGlkIHdoaXRlO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAmLnB1bGwtcmlnaHQgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDEycHg7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgcmlnaHQ6IDEzcHg7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gICYub3BlbiA+IC5kcm9wZG93bi10b2dnbGUge1xuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG5cbi5icy1zZWFyY2hib3gsXG4uYnMtYWN0aW9uc2JveCxcbi5icy1kb25lYnV0dG9uIHtcbiAgcGFkZGluZzogNHB4IDhweDtcbn1cblxuLmJzLWFjdGlvbnNib3gge1xuICB3aWR0aDogMTAwJTtcbiAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcblxuICAmIC5idG4tZ3JvdXAgYnV0dG9uIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG5cbi5icy1kb25lYnV0dG9uIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xuXG4gICYgLmJ0bi1ncm91cCBidXR0b24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5icy1zZWFyY2hib3gge1xuICAmICsgLmJzLWFjdGlvbnNib3gge1xuICAgIHBhZGRpbmc6IDAgOHB4IDRweDtcbiAgfVxuXG4gICYgLmZvcm0tY29udHJvbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuIiwiJGNvbG9yLXJlZC1lcnJvcjogcmdiKDE4NSwgNzQsIDcyKSAhZGVmYXVsdDtcbiRjb2xvci1ncmV5LWFycm93OiByZ2JhKDIwNCwgMjA0LCAyMDQsIDAuMikgIWRlZmF1bHQ7XG5cbiR3aWR0aC1kZWZhdWx0OiAyMjBweCAhZGVmYXVsdDsgLy8gMyA5NjBweC1ncmlkIGNvbHVtbnNcblxuJHppbmRleC1zZWxlY3QtZHJvcGRvd246IDEwNjAgIWRlZmF1bHQ7IC8vIG11c3QgYmUgaGlnaGVyIHRoYW4gYSBtb2RhbCBiYWNrZ3JvdW5kICgxMDUwKVxuXG4vLyoqIFBsYWNlaG9sZGVyIHRleHQgY29sb3JcbiRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcjogIzk5OSAhZGVmYXVsdDsiLCIvKiFcbiAqIERhdGVwaWNrZXIgZm9yIEJvb3RzdHJhcCB2MS43LjEgKGh0dHBzOi8vZ2l0aHViLmNvbS91eHNvbHV0aW9ucy9ib290c3RyYXAtZGF0ZXBpY2tlcilcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UgdjIuMCAoaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wKVxuICovXG5cbi5kYXRlcGlja2VyIHtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBkaXJlY3Rpb246IGx0cjtcbn1cbi5kYXRlcGlja2VyLWlubGluZSB7XG4gIHdpZHRoOiAyMjBweDtcbn1cbi5kYXRlcGlja2VyLXJ0bCB7XG4gIGRpcmVjdGlvbjogcnRsO1xufVxuLmRhdGVwaWNrZXItcnRsLmRyb3Bkb3duLW1lbnUge1xuICBsZWZ0OiBhdXRvO1xufVxuLmRhdGVwaWNrZXItcnRsIHRhYmxlIHRyIHRkIHNwYW4ge1xuICBmbG9hdDogcmlnaHQ7XG59XG4uZGF0ZXBpY2tlci1kcm9wZG93biB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogNHB4O1xufVxuLmRhdGVwaWNrZXItZHJvcGRvd246YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLWxlZnQ6IDdweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiA3cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDdweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5kYXRlcGlja2VyLWRyb3Bkb3duOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLWxlZnQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDZweCBzb2xpZCAjZmZmO1xuICBib3JkZXItdG9wOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4uZGF0ZXBpY2tlci1kcm9wZG93bi5kYXRlcGlja2VyLW9yaWVudC1sZWZ0OmJlZm9yZSB7XG4gIGxlZnQ6IDZweDtcbn1cbi5kYXRlcGlja2VyLWRyb3Bkb3duLmRhdGVwaWNrZXItb3JpZW50LWxlZnQ6YWZ0ZXIge1xuICBsZWZ0OiA3cHg7XG59XG4uZGF0ZXBpY2tlci1kcm9wZG93bi5kYXRlcGlja2VyLW9yaWVudC1yaWdodDpiZWZvcmUge1xuICByaWdodDogNnB4O1xufVxuLmRhdGVwaWNrZXItZHJvcGRvd24uZGF0ZXBpY2tlci1vcmllbnQtcmlnaHQ6YWZ0ZXIge1xuICByaWdodDogN3B4O1xufVxuLmRhdGVwaWNrZXItZHJvcGRvd24uZGF0ZXBpY2tlci1vcmllbnQtYm90dG9tOmJlZm9yZSB7XG4gIHRvcDogLTdweDtcbn1cbi5kYXRlcGlja2VyLWRyb3Bkb3duLmRhdGVwaWNrZXItb3JpZW50LWJvdHRvbTphZnRlciB7XG4gIHRvcDogLTZweDtcbn1cbi5kYXRlcGlja2VyLWRyb3Bkb3duLmRhdGVwaWNrZXItb3JpZW50LXRvcDpiZWZvcmUge1xuICBib3R0b206IC03cHg7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci10b3A6IDdweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuLmRhdGVwaWNrZXItZHJvcGRvd24uZGF0ZXBpY2tlci1vcmllbnQtdG9wOmFmdGVyIHtcbiAgYm90dG9tOiAtNnB4O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItdG9wOiA2cHggc29saWQgI2ZmZjtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHtcbiAgbWFyZ2luOiAwO1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGgge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyOiBub25lO1xufVxuLnRhYmxlLXN0cmlwZWQgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQsXG4udGFibGUtc3RyaXBlZCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQub2xkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQubmV3IHtcbiAgY29sb3I6ICM3Nzc3Nzc7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5kYXk6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5mb2N1c2VkIHtcbiAgYmFja2dyb3VuZDogI2VlZWVlZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiAjNzc3Nzc3O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5oaWdobGlnaHRlZCB7XG4gIGNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDllZGY3O1xuICBib3JkZXItY29sb3I6ICM4NWM1ZTU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5oaWdobGlnaHRlZDpmb2N1cyxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmhpZ2hsaWdodGVkLmZvY3VzIHtcbiAgY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhZmQ5ZWU7XG4gIGJvcmRlci1jb2xvcjogIzI5OGZjMjtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmhpZ2hsaWdodGVkOmhvdmVyIHtcbiAgY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhZmQ5ZWU7XG4gIGJvcmRlci1jb2xvcjogIzUyYWRkYjtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmhpZ2hsaWdodGVkOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmhpZ2hsaWdodGVkLmFjdGl2ZSB7XG4gIGNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWZkOWVlO1xuICBib3JkZXItY29sb3I6ICM1MmFkZGI7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5oaWdobGlnaHRlZDphY3RpdmU6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5oaWdobGlnaHRlZC5hY3RpdmU6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5oaWdobGlnaHRlZDphY3RpdmU6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5oaWdobGlnaHRlZC5hY3RpdmU6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5oaWdobGlnaHRlZDphY3RpdmUuZm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5oaWdobGlnaHRlZC5hY3RpdmUuZm9jdXMge1xuICBjb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzkxY2JlODtcbiAgYm9yZGVyLWNvbG9yOiAjMjk4ZmMyO1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuaGlnaGxpZ2h0ZWQuZGlzYWJsZWQ6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5oaWdobGlnaHRlZFtkaXNhYmxlZF06aG92ZXIsXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuaGlnaGxpZ2h0ZWQ6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5oaWdobGlnaHRlZC5kaXNhYmxlZDpmb2N1cyxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmhpZ2hsaWdodGVkW2Rpc2FibGVkXTpmb2N1cyxcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5oaWdobGlnaHRlZDpmb2N1cyxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmhpZ2hsaWdodGVkLmRpc2FibGVkLmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuaGlnaGxpZ2h0ZWRbZGlzYWJsZWRdLmZvY3VzLFxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmhpZ2hsaWdodGVkLmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q5ZWRmNztcbiAgYm9yZGVyLWNvbG9yOiAjODVjNWU1O1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuaGlnaGxpZ2h0ZWQuZm9jdXNlZCB7XG4gIGJhY2tncm91bmQ6ICNhZmQ5ZWU7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5oaWdobGlnaHRlZC5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmhpZ2hsaWdodGVkLmRpc2FibGVkOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNkOWVkZjc7XG4gIGNvbG9yOiAjNzc3Nzc3O1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXkge1xuICBjb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZGI5OTtcbiAgYm9yZGVyLWNvbG9yOiAjZmZiNzMzO1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXk6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5mb2N1cyB7XG4gIGNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjOTY2O1xuICBib3JkZXItY29sb3I6ICNiMzc0MDA7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheTpob3ZlciB7XG4gIGNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjOTY2O1xuICBib3JkZXItY29sb3I6ICNmNTllMDA7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheTphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5hY3RpdmUge1xuICBjb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzk2NjtcbiAgYm9yZGVyLWNvbG9yOiAjZjU5ZTAwO1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXk6YWN0aXZlOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXkuYWN0aXZlOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXk6YWN0aXZlOmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXkuYWN0aXZlOmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXk6YWN0aXZlLmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXkuYWN0aXZlLmZvY3VzIHtcbiAgY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmJjNDI7XG4gIGJvcmRlci1jb2xvcjogI2IzNzQwMDtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXlbZGlzYWJsZWRdOmhvdmVyLFxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5OmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXkuZGlzYWJsZWQ6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheVtkaXNhYmxlZF06Zm9jdXMsXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXk6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5kaXNhYmxlZC5mb2N1cyxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5W2Rpc2FibGVkXS5mb2N1cyxcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5mb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmRiOTk7XG4gIGJvcmRlci1jb2xvcjogI2ZmYjczMztcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmZvY3VzZWQge1xuICBiYWNrZ3JvdW5kOiAjZmZjOTY2O1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXkuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5kaXNhYmxlZDphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjZmZkYjk5O1xuICBjb2xvcjogIzc3Nzc3Nztcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlIHtcbiAgY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7XG4gIGJvcmRlci1jb2xvcjogI2JiYmJiYjtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlOmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UuZm9jdXMge1xuICBjb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q1ZDVkNTtcbiAgYm9yZGVyLWNvbG9yOiAjN2M3YzdjO1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2U6aG92ZXIge1xuICBjb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q1ZDVkNTtcbiAgYm9yZGVyLWNvbG9yOiAjOWQ5ZDlkO1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2U6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UuYWN0aXZlIHtcbiAgY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNWQ1ZDU7XG4gIGJvcmRlci1jb2xvcjogIzlkOWQ5ZDtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlOmFjdGl2ZTpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmFjdGl2ZTpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlOmFjdGl2ZTpmb2N1cyxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmFjdGl2ZTpmb2N1cyxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlOmFjdGl2ZS5mb2N1cyxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmFjdGl2ZS5mb2N1cyB7XG4gIGNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzNjM2MzO1xuICBib3JkZXItY29sb3I6ICM3YzdjN2M7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5kaXNhYmxlZDpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlW2Rpc2FibGVkXTpob3ZlcixcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZTpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmRpc2FibGVkOmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2VbZGlzYWJsZWRdOmZvY3VzLFxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlOmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UuZGlzYWJsZWQuZm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZVtkaXNhYmxlZF0uZm9jdXMsXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UuZm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlO1xuICBib3JkZXItY29sb3I6ICNiYmJiYmI7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5mb2N1c2VkIHtcbiAgYmFja2dyb3VuZDogI2Q1ZDVkNTtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UuZGlzYWJsZWQ6YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI2VlZWVlZTtcbiAgY29sb3I6ICM3Nzc3Nzc7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5oaWdobGlnaHRlZCB7XG4gIGNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlZWYzO1xuICBib3JkZXItY29sb3I6ICM5ZGMxZDM7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5oaWdobGlnaHRlZDpmb2N1cyxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmhpZ2hsaWdodGVkLmZvY3VzIHtcbiAgY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMWQ3ZTM7XG4gIGJvcmRlci1jb2xvcjogIzRiODhhNjtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmhpZ2hsaWdodGVkOmhvdmVyIHtcbiAgY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMWQ3ZTM7XG4gIGJvcmRlci1jb2xvcjogIzczYTZjMDtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmhpZ2hsaWdodGVkOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmhpZ2hsaWdodGVkLmFjdGl2ZSB7XG4gIGNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzFkN2UzO1xuICBib3JkZXItY29sb3I6ICM3M2E2YzA7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5oaWdobGlnaHRlZDphY3RpdmU6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5oaWdobGlnaHRlZC5hY3RpdmU6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5oaWdobGlnaHRlZDphY3RpdmU6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5oaWdobGlnaHRlZC5hY3RpdmU6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5oaWdobGlnaHRlZDphY3RpdmUuZm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5oaWdobGlnaHRlZC5hY3RpdmUuZm9jdXMge1xuICBjb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E4YzhkODtcbiAgYm9yZGVyLWNvbG9yOiAjNGI4OGE2O1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UuaGlnaGxpZ2h0ZWQuZGlzYWJsZWQ6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5oaWdobGlnaHRlZFtkaXNhYmxlZF06aG92ZXIsXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UuaGlnaGxpZ2h0ZWQ6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5oaWdobGlnaHRlZC5kaXNhYmxlZDpmb2N1cyxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmhpZ2hsaWdodGVkW2Rpc2FibGVkXTpmb2N1cyxcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5oaWdobGlnaHRlZDpmb2N1cyxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmhpZ2hsaWdodGVkLmRpc2FibGVkLmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UuaGlnaGxpZ2h0ZWRbZGlzYWJsZWRdLmZvY3VzLFxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmhpZ2hsaWdodGVkLmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U0ZWVmMztcbiAgYm9yZGVyLWNvbG9yOiAjOWRjMWQzO1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UuaGlnaGxpZ2h0ZWQuZm9jdXNlZCB7XG4gIGJhY2tncm91bmQ6ICNjMWQ3ZTM7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5oaWdobGlnaHRlZC5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmhpZ2hsaWdodGVkLmRpc2FibGVkOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNlNGVlZjM7XG4gIGNvbG9yOiAjNzc3Nzc3O1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkge1xuICBjb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3Y2E3NztcbiAgYm9yZGVyLWNvbG9yOiAjZjFhNDE3O1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheS5mb2N1cyB7XG4gIGNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRiNzQ3O1xuICBib3JkZXItY29sb3I6ICM4MTU2MDg7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheTpob3ZlciB7XG4gIGNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRiNzQ3O1xuICBib3JkZXItY29sb3I6ICNiZjgwMGM7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheTphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheS5hY3RpdmUge1xuICBjb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0Yjc0NztcbiAgYm9yZGVyLWNvbG9yOiAjYmY4MDBjO1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6YWN0aXZlOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuYWN0aXZlOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6YWN0aXZlOmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuYWN0aXZlOmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6YWN0aXZlLmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuYWN0aXZlLmZvY3VzIHtcbiAgY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmFhMjU7XG4gIGJvcmRlci1jb2xvcjogIzgxNTYwODtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LmRpc2FibGVkOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXlbZGlzYWJsZWRdOmhvdmVyLFxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5OmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQ6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheVtkaXNhYmxlZF06Zm9jdXMsXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheS5kaXNhYmxlZC5mb2N1cyxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5W2Rpc2FibGVkXS5mb2N1cyxcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheS5mb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2NhNzc7XG4gIGJvcmRlci1jb2xvcjogI2YxYTQxNztcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQ6YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI2Y3Y2E3NztcbiAgY29sb3I6ICM3Nzc3Nzc7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmhpZ2hsaWdodGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3Nzc3Nzc7XG4gIGJvcmRlci1jb2xvcjogIzU1NTU1NTtcbiAgdGV4dC1zaGFkb3c6IDAgLTFweCAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDpmb2N1cyxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmhpZ2hsaWdodGVkOmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuZm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5oaWdobGlnaHRlZC5mb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWU1ZTVlO1xuICBib3JkZXItY29sb3I6ICMxNjE2MTY7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmhpZ2hsaWdodGVkOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1ZTVlNWU7XG4gIGJvcmRlci1jb2xvcjogIzM3MzczNztcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmhpZ2hsaWdodGVkOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmhpZ2hsaWdodGVkLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWU1ZTVlO1xuICBib3JkZXItY29sb3I6ICMzNzM3Mzc7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDphY3RpdmU6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5oaWdobGlnaHRlZDphY3RpdmU6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5hY3RpdmU6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5oaWdobGlnaHRlZC5hY3RpdmU6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDphY3RpdmU6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5oaWdobGlnaHRlZDphY3RpdmU6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5hY3RpdmU6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5oaWdobGlnaHRlZC5hY3RpdmU6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDphY3RpdmUuZm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5oaWdobGlnaHRlZDphY3RpdmUuZm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5hY3RpdmUuZm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5oaWdobGlnaHRlZC5hY3RpdmUuZm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRjNGM0YztcbiAgYm9yZGVyLWNvbG9yOiAjMTYxNjE2O1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuZGlzYWJsZWQ6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5oaWdobGlnaHRlZC5kaXNhYmxlZDpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkW2Rpc2FibGVkXTpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmhpZ2hsaWdodGVkW2Rpc2FibGVkXTpob3ZlcixcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDpob3ZlcixcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5oaWdobGlnaHRlZDpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmRpc2FibGVkOmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuaGlnaGxpZ2h0ZWQuZGlzYWJsZWQ6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZFtkaXNhYmxlZF06Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5oaWdobGlnaHRlZFtkaXNhYmxlZF06Zm9jdXMsXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQ6Zm9jdXMsXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuaGlnaGxpZ2h0ZWQ6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZC5mb2N1cyxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmhpZ2hsaWdodGVkLmRpc2FibGVkLmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWRbZGlzYWJsZWRdLmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuaGlnaGxpZ2h0ZWRbZGlzYWJsZWRdLmZvY3VzLFxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmZvY3VzLFxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmhpZ2hsaWdodGVkLmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc3Nzc3NztcbiAgYm9yZGVyLWNvbG9yOiAjNTU1NTU1O1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmhpZ2hsaWdodGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzdhYjc7XG4gIGJvcmRlci1jb2xvcjogIzJlNmRhNDtcbiAgdGV4dC1zaGFkb3c6IDAgLTFweCAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmU6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuaGlnaGxpZ2h0ZWQ6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuaGlnaGxpZ2h0ZWQuZm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI4NjA5MDtcbiAgYm9yZGVyLWNvbG9yOiAjMTIyYjQwO1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmhpZ2hsaWdodGVkOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyODYwOTA7XG4gIGJvcmRlci1jb2xvcjogIzIwNGQ3NDtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuaGlnaGxpZ2h0ZWQ6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5oaWdobGlnaHRlZC5hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI4NjA5MDtcbiAgYm9yZGVyLWNvbG9yOiAjMjA0ZDc0O1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmFjdGl2ZTpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5oaWdobGlnaHRlZDphY3RpdmU6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuYWN0aXZlOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmhpZ2hsaWdodGVkLmFjdGl2ZTpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTphY3RpdmU6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuaGlnaGxpZ2h0ZWQ6YWN0aXZlOmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmFjdGl2ZTpmb2N1cyxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5oaWdobGlnaHRlZC5hY3RpdmU6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmU6YWN0aXZlLmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmhpZ2hsaWdodGVkOmFjdGl2ZS5mb2N1cyxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5hY3RpdmUuZm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuaGlnaGxpZ2h0ZWQuYWN0aXZlLmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMDRkNzQ7XG4gIGJvcmRlci1jb2xvcjogIzEyMmI0MDtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZDpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5oaWdobGlnaHRlZC5kaXNhYmxlZDpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZVtkaXNhYmxlZF06aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuaGlnaGxpZ2h0ZWRbZGlzYWJsZWRdOmhvdmVyLFxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTpob3ZlcixcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuaGlnaGxpZ2h0ZWQ6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQ6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuaGlnaGxpZ2h0ZWQuZGlzYWJsZWQ6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmVbZGlzYWJsZWRdOmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmhpZ2hsaWdodGVkW2Rpc2FibGVkXTpmb2N1cyxcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmU6Zm9jdXMsXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmhpZ2hsaWdodGVkOmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkLmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmhpZ2hsaWdodGVkLmRpc2FibGVkLmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlW2Rpc2FibGVkXS5mb2N1cyxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5oaWdobGlnaHRlZFtkaXNhYmxlZF0uZm9jdXMsXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmZvY3VzLFxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5oaWdobGlnaHRlZC5mb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzdhYjc7XG4gIGJvcmRlci1jb2xvcjogIzJlNmRhNDtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDIzJTtcbiAgaGVpZ2h0OiA1NHB4O1xuICBsaW5lLWhlaWdodDogNTRweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMSU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbjpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uZm9jdXNlZCB7XG4gIGJhY2tncm91bmQ6ICNlZWVlZWU7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiAjNzc3Nzc3O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzM3YWI3O1xuICBib3JkZXItY29sb3I6ICMyZTZkYTQ7XG4gIHRleHQtc2hhZG93OiAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3Zlcjpmb2N1cyxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXI6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5mb2N1cyxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyLmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQuZm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3Zlci5mb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjg2MDkwO1xuICBib3JkZXItY29sb3I6ICMxMjJiNDA7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3Zlcjpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjg2MDkwO1xuICBib3JkZXItY29sb3I6ICMyMDRkNzQ7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3Zlci5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZC5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3Zlci5hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI4NjA5MDtcbiAgYm9yZGVyLWNvbG9yOiAjMjA0ZDc0O1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6YWN0aXZlOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXI6YWN0aXZlOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6YWN0aXZlOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXI6YWN0aXZlOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuYWN0aXZlOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXIuYWN0aXZlOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQuYWN0aXZlOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIuYWN0aXZlOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6YWN0aXZlOmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXI6YWN0aXZlOmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6YWN0aXZlOmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXI6YWN0aXZlOmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuYWN0aXZlOmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXIuYWN0aXZlOmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQuYWN0aXZlOmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIuYWN0aXZlOmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6YWN0aXZlLmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXI6YWN0aXZlLmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6YWN0aXZlLmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXI6YWN0aXZlLmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuYWN0aXZlLmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXIuYWN0aXZlLmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQuYWN0aXZlLmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIuYWN0aXZlLmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMDRkNzQ7XG4gIGJvcmRlci1jb2xvcjogIzEyMmI0MDtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXIuZGlzYWJsZWQ6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZC5kaXNhYmxlZDpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyLmRpc2FibGVkOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmVbZGlzYWJsZWRdOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXJbZGlzYWJsZWRdOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWRbZGlzYWJsZWRdOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXJbZGlzYWJsZWRdOmhvdmVyLFxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyLFxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyOmhvdmVyLFxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyLFxuZmllbGRzZXRbZGlzYWJsZWRdIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3Zlci5kaXNhYmxlZDpmb2N1cyxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkLmRpc2FibGVkOmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIuZGlzYWJsZWQ6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZVtkaXNhYmxlZF06Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3ZlcltkaXNhYmxlZF06Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZFtkaXNhYmxlZF06Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3ZlcltkaXNhYmxlZF06Zm9jdXMsXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6Zm9jdXMsXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXI6Zm9jdXMsXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6Zm9jdXMsXG5maWVsZHNldFtkaXNhYmxlZF0gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXI6Zm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZC5mb2N1cyxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyLmRpc2FibGVkLmZvY3VzLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQuZGlzYWJsZWQuZm9jdXMsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3Zlci5kaXNhYmxlZC5mb2N1cyxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlW2Rpc2FibGVkXS5mb2N1cyxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyW2Rpc2FibGVkXS5mb2N1cyxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkW2Rpc2FibGVkXS5mb2N1cyxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyW2Rpc2FibGVkXS5mb2N1cyxcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5mb2N1cyxcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3Zlci5mb2N1cyxcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZC5mb2N1cyxcbmZpZWxkc2V0W2Rpc2FibGVkXSAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3Zlci5mb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzdhYjc7XG4gIGJvcmRlci1jb2xvcjogIzJlNmRhNDtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4ub2xkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5uZXcge1xuICBjb2xvcjogIzc3Nzc3Nztcbn1cbi5kYXRlcGlja2VyIC5kYXRlcGlja2VyLXN3aXRjaCB7XG4gIHdpZHRoOiAxNDVweDtcbn1cbi5kYXRlcGlja2VyIC5kYXRlcGlja2VyLXN3aXRjaCxcbi5kYXRlcGlja2VyIC5wcmV2LFxuLmRhdGVwaWNrZXIgLm5leHQsXG4uZGF0ZXBpY2tlciB0Zm9vdCB0ciB0aCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5kYXRlcGlja2VyIC5kYXRlcGlja2VyLXN3aXRjaDpob3Zlcixcbi5kYXRlcGlja2VyIC5wcmV2OmhvdmVyLFxuLmRhdGVwaWNrZXIgLm5leHQ6aG92ZXIsXG4uZGF0ZXBpY2tlciB0Zm9vdCB0ciB0aDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNlZWVlZWU7XG59XG4uZGF0ZXBpY2tlciAucHJldi5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIC5uZXh0LmRpc2FibGVkIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLmRhdGVwaWNrZXIgLmN3IHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICB3aWR0aDogMTJweDtcbiAgcGFkZGluZzogMCAycHggMCA1cHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4uaW5wdXQtZ3JvdXAuZGF0ZSAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uaW5wdXQtZGF0ZXJhbmdlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uaW5wdXQtZGF0ZXJhbmdlIGlucHV0IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmlucHV0LWRhdGVyYW5nZSBpbnB1dDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDNweCAwIDAgM3B4O1xufVxuLmlucHV0LWRhdGVyYW5nZSBpbnB1dDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAzcHggM3B4IDA7XG59XG4uaW5wdXQtZGF0ZXJhbmdlIC5pbnB1dC1ncm91cC1hZGRvbiB7XG4gIHdpZHRoOiBhdXRvO1xuICBtaW4td2lkdGg6IDE2cHg7XG4gIHBhZGRpbmc6IDRweCA1cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODU3MTQzO1xuICB0ZXh0LXNoYWRvdzogMCAxcHggMCAjZmZmO1xuICBib3JkZXItd2lkdGg6IDFweCAwO1xuICBtYXJnaW4tbGVmdDogLTVweDtcbiAgbWFyZ2luLXJpZ2h0OiAtNXB4O1xufVxuLyojIHNvdXJjZU1hcHBpbmdVUkw9Ym9vdHN0cmFwLWRhdGVwaWNrZXIzLmNzcy5tYXAgKi8iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgJiBzdXJjaGFnZSBib290c3RyYXAgbW9kYWwuY3NzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi5tb2RhbCB7XG4gLmNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgQGluY2x1ZGUgaWNvbihjbG9zZSk7XG4gICAgQGluY2x1ZGUgY2VudGVySWNvbjtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB3aWR0aDogMnJlbTtcbiAgICBoZWlnaHQ6IDJyZW07XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOiAxLjNyZW07XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgc3BhbiB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5tb2RhbC1hbHBoYSB7XG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICAgd2lkdGg6IDQwcmVtO1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBib3JkZXItcmFkaXVzOjA7XG4gICAgYm9yZGVyOnJlbSg4KSBzb2xpZCAkcGlua0xpZ2h0O1xuICB9XG5cbiAgLm1vZGFsLXRpdGxlIHtcbiAgICBjb2xvcjokcGlua0xpZ2h0O1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIEBpbmNsdWRlIHBhZEgoMnJlbSk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6MnJlbTtcbiAgICBmb250LXdlaWdodDo3MDA7XG4gIH1cblxuICAubW9kYWwtaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAzcmVtIDFyZW0gMXJlbSAxcmVtO1xuICAgIGJvcmRlcjpub25lO1xuXG4gIH1cblxuICAubW9kYWwtYm9keSB7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgcGFkZGluZzogMXJlbSAxcmVtIDNyZW0gMXJlbTtcbiAgfVxuICAubW9kYWwtY29tbWFuZGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyLXJhZGl1czowO1xuICAgIGJvcmRlcjpyZW0oOCkgc29saWQgJGJsdWU7XG4gICAgcGFkZGluZzogMnJlbSAycmVtIDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuXG4ubW9kYWwtY29tbWFuZGUgLm1vZGFsLXRpdGxlIHtcbiAgY29sb3I6IzAwMDAwMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi5tb2RhbC1jb21tYW5kZSAubW9kYWwtYm9keSB7XG4gIHRleHQtYWxpZ246bGVmdCFpbXBvcnRhbnQ7XG59XG4ubW9kYWwtY29tbWFuZGUgLmJ1dHRvbiB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG59XG5cbi5tb2RhbC1zZS1jb25uZWN0ZXIge1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgIHdpZHRoOiA0N3JlbTtcbiAgICB9XG4gIH1cbn1cbi5tb2RhbC1wYXNzd29yZC1vdWJsaWUge1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgIHdpZHRoOiA0N3JlbTtcbiAgICB9XG4gIH1cbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgJiBzdXJjaGFnZSBib290c3RyYXAgdG9vbHRpcFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuJHRvb2x0aXAtYXJyb3ctd2lkdGggOiAxMHB4O1xuJHRvb2x0aXAtYXJyb3ctY29sb3IgOiAkcGlua0xpZ2h0O1xuJHRvb2x0aXAtb3BhY2l0eTogMTtcblxuXG4udG9vbHRpcCB7XG4gIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemU7XG5cbiAgJi5pbiAgICAgeyBAaW5jbHVkZSBvcGFjaXR5KCR0b29sdGlwLW9wYWNpdHkpOyB9XG4gICYudG9wICAgIHsgbWFyZ2luLXRvcDogIC0zcHg7IHBhZGRpbmc6ICR0b29sdGlwLWFycm93LXdpZHRoIDA7IH1cbiAgJi5yaWdodCAgeyBtYXJnaW4tbGVmdDogIDNweDsgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy13aWR0aDsgfVxuICAmLmJvdHRvbSB7IG1hcmdpbi10b3A6ICAgM3B4OyBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAwOyB9XG4gICYubGVmdCAgIHsgbWFyZ2luLWxlZnQ6IC0zcHg7IHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGg7IH1cbn1cblxuXG4udG9vbHRpcC1pbm5lciB7XG4gIHBhZGRpbmc6IDFyZW0gMnJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBpbmtMaWdodDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgbWF4LXdpZHRoOiAyOHJlbTtcbn1cblxuXG4udG9vbHRpcCB7XG4gICYudG9wIC50b29sdGlwLWFycm93IHtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG4gICYudG9wLWxlZnQgLnRvb2x0aXAtYXJyb3cge1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWJvdHRvbTogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLnRvcC1yaWdodCAudG9vbHRpcC1hcnJvdyB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi1ib3R0b206IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5yaWdodCAudG9vbHRpcC1hcnJvdyB7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5sZWZ0IC50b29sdGlwLWFycm93IHtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLmJvdHRvbSAudG9vbHRpcC1hcnJvdyB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLmJvdHRvbS1sZWZ0IC50b29sdGlwLWFycm93IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5ib3R0b20tcmlnaHQgLnRvb2x0aXAtYXJyb3cge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICYgc3VyY2hhZ2UgYm9vdHN0cmFwLXNlbGVjdC5jc3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblxuXG4uYm9vdHN0cmFwLXNlbGVjdCB7XG4gICYuYnRuLWdyb3VwIHtcbiAgICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50LWV4dGVuc2lvbiAoJGJhc2UtY29sb3IsICR3aGl0ZSwgJGZvcm0tYm9yZGVyLWNvbG9yKTtcbiAgICAgIGJveC1zaGFkb3c6bm9uZTtcbiAgICAgIGZvbnQtc2l6ZTppbmhlcml0O1xuICAgICAgcGFkZGluZzogMTBweCAzNXB4IDEwcHggMTZweDtcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIC5jYXJldCB7XG4gICAgICAgIEBpbmNsdWRlIGljb24oZmxlY2hlLXNlbGVjdCk7XG4gICAgICAgIGNvbG9yOiRibHVlO1xuICAgICAgICByaWdodDowO1xuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTpub25lO1xuICAgICAgICBib3JkZXI6bm9uZTtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgIHRvcDo1MCU7XG4gICAgICAgICAgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5lcnJvciAmIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiRlcnJvci1jb2xvcjtcbiAgICAgIH1cbiAgICAgIC5zdWNjZXNzICYge1xuICAgICAgICBib3JkZXItY29sb3I6JHN1Y2Nlc3MtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgIEBpbmNsdWRlIGJveFNoYWRvdztcbiAgICAgIHBhZGRpbmc6MDtcbiAgICAgIGZvbnQtc2l6ZTppbmhlcml0O1xuICAgICAgYm9yZGVyLWNvbG9yOiRmb3JtLWJvcmRlci1jb2xvcjtcbiAgICAgID4gbGkge1xuICAgICAgICA+IGEge1xuICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4O1xuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgICAgICAgICAgQGluY2x1ZGUgcGFkVigxcmVtKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi5vcGVuIHtcbiAgICAgIC5kcm9wZG93bi10b2dnbGUge1xuICAgICAgICBib3JkZXItY29sb3I6JGJsdWU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLmJvb3RzdHJhcC1zZWxlY3QuYWxwaGEge1xuICAmLmJ0bi1ncm91cDpub3QoW2NsYXNzKj1cImNvbC1cIl0pOm5vdChbY2xhc3MqPVwiZm9ybS1jb250cm9sXCJdKTpub3QoLmlucHV0LWdyb3VwLWJ0bikge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIG1pbi13aWR0aDoxNXJlbTtcbiAgICB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgIHdpZHRoOmF1dG87XG4gICAgICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQtZXh0ZW5zaW9uICgkYmFzZS1jb2xvciwgdHJhbnNwYXJlbnQsIHRyYW5zcGFyZW50KTtcbiAgICAgICAgYm9yZGVyOm5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6MDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OjA7XG4gICAgICAgIHBhZGRpbmctdG9wOjA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOjA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6MjNweDtcbiAgICAgICAgLmZpbHRlci1vcHRpb24ge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICBib3JkZXItcmFkaXVzOjA7XG4gICAgICAgIG1hcmdpbi1sZWZ0Oi0wLjVyZW07XG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAgICAgPiBsaSB7XG4gICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDoxLjNyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgJiBzdXJjaGFnZSBib290c3RyYXAgZGF0ZXBpY2tlclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4uZGF0ZXBpY2tlciB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB0YWJsZSB7XG4gICAgICAgIHRyIHtcbiAgICAgICAgICAgIHRkLFxuICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMuNXJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDNyZW07XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgICYuZG93IHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6JGFscGhhLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgJjphY3RpdmUsXG4gICAgICAgICAgICAgICAgICAgICYuaGlnaGxpZ2h0ZWQ6YWN0aXZlLFxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSxcbiAgICAgICAgICAgICAgICAgICAgJi5oaWdobGlnaHRlZC5hY3RpdmUsXG4gICAgICAgICAgICAgICAgICAgICY6YWN0aXZlOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAmLmhpZ2hsaWdodGVkOmFjdGl2ZTpob3ZlcixcbiAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmU6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICYuaGlnaGxpZ2h0ZWQuYWN0aXZlOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAmOmFjdGl2ZTpmb2N1cyxcbiAgICAgICAgICAgICAgICAgICAgJi5oaWdobGlnaHRlZDphY3RpdmU6Zm9jdXMsXG4gICAgICAgICAgICAgICAgICAgICYuYWN0aXZlOmZvY3VzLFxuICAgICAgICAgICAgICAgICAgICAmLmhpZ2hsaWdodGVkLmFjdGl2ZTpmb2N1cyxcbiAgICAgICAgICAgICAgICAgICAgJjphY3RpdmUuZm9jdXMsXG4gICAgICAgICAgICAgICAgICAgICYuaGlnaGxpZ2h0ZWQ6YWN0aXZlLmZvY3VzLFxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZS5mb2N1cyxcbiAgICAgICAgICAgICAgICAgICAgJi5oaWdobGlnaHRlZC5hY3RpdmUuZm9jdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtc2hhZG93Om5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5zZWxlY3RlZCxcbiAgICAgICAgICAgICAgICAmLnNlbGVjdGVkLmhpZ2hsaWdodGVkLFxuICAgICAgICAgICAgICAgICYucmFuZ2Uge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleUxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRncmV5TGlnaHQ7XG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5kYXk6aG92ZXIsXG4gICAgICAgICAgICAgICAgJi5mb2N1c2VkIHtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOnBvaW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYub2xkLFxuICAgICAgICAgICAgICAgICYubmV3IHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoJGJhc2UtY29sb3IsLjMpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLnRvZGF5IHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6Ym9sZDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYuZGlzYWJsZWQsXG4gICAgICAgICAgICAgICAgJi5kaXNhYmxlZDpob3ZlciAge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgkYmFzZS1jb2xvciwuMik7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOm5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQuNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQuNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgJixcbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmRpc2FibGVkLFxuICAgICAgICAgICAgICAgICAgICAgICAgJi5kaXNhYmxlZDpob3ZlcixcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWN0aXZlLFxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlcjphY3RpdmUsXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmRpc2FibGVkOmFjdGl2ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICYuZGlzYWJsZWQ6aG92ZXI6YWN0aXZlLFxuICAgICAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUsXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLmFjdGl2ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIuYWN0aXZlOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmU6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmRpc2FibGVkLmFjdGl2ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICYuZGlzYWJsZWQ6aG92ZXIuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXNoYWRvdzpub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICYuZm9jdXNlZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmLmRpc2FibGVke1xuICAgICAgICAgICAgICAgICAgICAgICAgJixcbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiByZ2JhKCRiYXNlLWNvbG9yLC4yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOm5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmRhdGVwaWNrZXItZGF5cyB7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgfVxuICAgICYuZGF0ZXBpY2tlci1pbmxpbmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgICYtZHJvcGRvd24ge1xuICAgICAgQGluY2x1ZGUgcGFkSCgwKTtcbiAgICB9XG59XG5cblxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUNBQTs7OztHQUlHO0FpQ0pILDRFQUE0RTtBQVE1RSxBQUFBLElBQUksQ0FBQztFQUNILFdBQVcsRUFBRSxVQUFVO0VBQ3ZCLG9CQUFvQixFQUFFLElBQUk7RUFDMUIsd0JBQXdCLEVBQUUsSUFBSTtDQUMvQjs7QUFNRCxBQUFBLElBQUksQ0FBQztFQUNILE1BQU0sRUFBRSxDQUFDO0NBQ1Y7O0FBWUQsQUFBQSxPQUFPO0FBQ1AsQUFBQSxLQUFLO0FBQ0wsQUFBQSxPQUFPO0FBQ1AsQUFBQSxVQUFVO0FBQ1YsQUFBQSxNQUFNO0FBQ04sQUFBQSxNQUFNO0FBQ04sQUFBQSxNQUFNO0FBQ04sQUFBQSxNQUFNO0FBQ04sQUFBQSxJQUFJO0FBQ0osQUFBQSxJQUFJO0FBQ0osQUFBQSxHQUFHO0FBQ0gsQUFBQSxPQUFPO0FBQ1AsQUFBQSxPQUFPLENBQUM7RUFDTixPQUFPLEVBQUUsS0FBSztDQUNmOztBQU9ELEFBQUEsS0FBSztBQUNMLEFBQUEsTUFBTTtBQUNOLEFBQUEsUUFBUTtBQUNSLEFBQUEsS0FBSyxDQUFDO0VBQ0osT0FBTyxFQUFFLFlBQVk7RUFDckIsY0FBYyxFQUFFLFFBQVE7Q0FDekI7O0FBT0QsQUFBQSxLQUFLLEFBQUEsSUFBSyxFQUFBLEFBQUEsQUFBQSxRQUFDLEFBQUEsR0FBVztFQUNwQixPQUFPLEVBQUUsSUFBSTtFQUNiLE1BQU0sRUFBRSxDQUFDO0NBQ1Y7O0NBT0QsQUFBQSxBQUFBLE1BQUMsQUFBQTtBQUNELEFBQUEsUUFB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LEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxFQUFFLEFBQUEsVUFBVSxDQUFqbEM7RUFDUCxRQUFRLEVBQUUsUUFBUTtFQUVsQixVQUFVLEVBQUUsR0FBRztFQUVmLFlBQVksRUFBRyxJQUE4QjtFQUM3QyxhQUFhLEVBQUUsSUFBK0I7Q0FDL0M7O0FBU0QsQUFBQSxTQUFTLEVBQUUsQUFBQSxTQUFTLEVBQUUsQUFBQSxTQUFTLEVBQUUsQUFBQSxTQUFTLEVBQUUsQUFBQSxTQUFTLEVBQUUsQUFBQSxTQUFTLEVBQUUsQUFBQSxTQUFTLEVBQUUsQUFBQSxTQUFTLEVBQUUsQUFBQSxTQUFTLEVBQUUsQUFBQSxVQUFVLEVBQUUsQUFBQSxVQUFVLEVBQUUsQUFBQSxVQUFVLEVBQUUsQUFBQSxVQUFVLEVBQUUsQUFBQSxVQUFVLEVBQUUsQUFBQSxVQUFVLEVBQUUsQUFBQSxVQUFVLEVBQUUsQUFBQSxVQUFVLEVBQUUsQUFBQSxVQUFVLEVBQUUsQUFBQSxVQUFVLEVBQUUsQUFBQSxVQUFVLEVBQUUsQUFBQSxVQUFVLEVBQUUsQUFBQSxVQUFVLEVBQUUsQUFBQSxVQUFVLEVBQUUsQUFBQSxVQUFVLENBQTVRO0VBQ1AsS0FBSyxFQUFFLElBQUk7Q0FDWjs7QUFNQyxBQUFBLFNBQVMsQ0FBZ0I7RUFDdkIsS0FBSyxFQUFFLFFBQW9DO0NBQzVDOztBQUZELEFBQUEsU0FBUyxDQUFnQjtFQUN2QixLQUFLLEVBQUUsUUFBb0M7Q0FDNUM7O0FBRkQsQUFBQSxTQUFTLENBQWdCO0VBQ3ZCLEtBQUssRUFBRSxLQUFvQztDQUM1Qzs7QUFGRCxBQUFBLFNBQVMsQ0FBZ0I7RUFDdkIsS0FBSyxFQUFFLFNBQW9DO0NBQzVDOztBQUZELEFBQUEsU0FBUyxDQUFnQjtFQUN2QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxTQUFTLENBQWdCO0VBQ3ZCLEtBQUssRUFBRSxHQUFvQztDQUM1Qzs7QUFGRCxBQUFBLFNBQVMsQ0FBZ0I7RUFDdkIsS0FBSyxFQUFFLFNBQW9DO0NBQzVDOztBQUZELEFBQUEsU0FBUyxDQUFnQjtFQUN2QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxTQUFTLENBQWdCO0VBQ3ZCLEtBQUssRUFBRSxLQUFvQztDQUM1Qzs7QUFGRCxBQUFBLFVBQVUsQ0FBZTtFQUN2QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxVQUFVLENBQWU7RUFDdkIsS0FBSyxFQUFFLFNBQW9DO0NBQzVDOztBQUZELEFBQUEsVUFBVSxDQUFlO0VBQ3ZCLEtBQUssRUFBRSxHQUFvQztDQUM1Qzs7QUFGRCxBQUFBLFVBQVUsQ0FBZTtFQUN2QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxVQUFVLENBQWU7RUFDdkIsS0FBSyxFQUFFLFNBQW9DO0NBQzVDOztBQUZELEFBQUEsVUFBVSxDQUFlO0VBQ3ZCLEtBQUssRUFBRSxLQUFvQztDQUM1Qzs7QUFGRCxBQUFBLFVBQVUsQ0FBZTtFQUN2QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxVQUFVLENBQWU7RUFDdkIsS0FBSyxFQUFFLFNBQW9DO0NBQzVDOztBQUZELEFBQUEsVUFBVSxDQUFlO0VBQ3ZCLEtBQUssRUFBRSxHQUFvQztDQUM1Qzs7QUFGRCxBQUFBLFVBQVUsQ0FBZTtFQUN2QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxVQUFVLENBQWU7RUFDdkIsS0FBSyxFQUFFLFNBQW9DO0NBQzVDOztBQUZELEFBQUEsVUFBVSxDQUFlO0VBQ3ZCLEtBQUssRUFBRSxLQUFvQztDQUM1Qzs7QUFGRCxBQUFBLFVBQVUsQ0FBZTtFQUN2QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxVQUFVLENBQWU7RUFDdkIsS0FBSyxFQUFFLFNBQW9DO0NBQzVDOztBQUZELEFBQUEsVUFBVSxDQUFlO0VBQ3ZCLEtBQUssRUFBRSxJQUFvQztDQUM1Qzs7QUFrQkQsQUFBQSxjQUFjLENBQVE7RUFDcEIsS0FBSyxFQUFFLElBQUk7Q0FDWjs7QUFQRCxBQUFBLGNBQWMsQ0FBZ0I7RUFDNUIsS0FBSyxFQUFFLFFBQW9DO0NBQzVDOztBQUZELEFBQUEsY0FBYyxDQUFnQjtFQUM1QixLQUFLLEVBQUUsUUFBb0M7Q0FDNUM7O0FBRkQsQUFBQSxjQUFjLENBQWdCO0VBQzVCLEtBQUssRUFBRSxLQUFvQztDQUM1Qzs7QUFGRCxBQUFBLGNBQWMsQ0FBZ0I7RUFDNUIsS0FBSyxFQUFFLFNBQW9DO0NBQzVDOztBQUZELEFBQUEsY0FBYyxDQUFnQjtFQUM1QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxjQUFjLENBQWdCO0VBQzVCLEtBQUssRUFBRSxHQUFvQztDQUM1Qzs7QUFGRCxBQUFBLGNBQWMsQ0FBZ0I7RUFDNUIsS0FBSyxFQUFFLFNBQW9DO0NBQzVDOztBQUZELEFBQUEsY0FBYyxDQUFnQjtFQUM1QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxjQUFjLENBQWdCO0VBQzVCLEtBQUssRUFBRSxLQUFvQztDQUM1Qzs7QUFGRCxBQUFBLGVBQWUsQ0FBZTtFQUM1QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxlQUFlLENBQWU7RUFDNUIsS0FBSyxFQUFFLFNBQW9DO0NBQzVDOztBQUZELEFBQUEsZUFBZSxDQUFlO0VBQzVCLEtBQUssRUFBRSxHQUFvQztDQUM1Qzs7QUFGRCxBQUFBLGVBQWUsQ0FBZTtFQUM1QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxlQUFlLENBQWU7RUFDNUIsS0FBSyxFQUFFLFNBQW9DO0NBQzVDOztBQUZELEFBQUEsZUFBZSxDQUFlO0VBQzVCLEtBQUssRUFBRSxLQUFvQztDQUM1Qzs7QUFGRCxBQUFBLGVBQWUsQ0FBZTtFQUM1QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxlQUFlLENBQWU7RUFDNUIsS0FBSyxFQUFFLFNBQW9DO0NBQzVDOztBQUZELEFBQUEsZUFBZSxDQUFlO0VBQzVCLEtBQUssRUFBRSxHQUFvQztDQUM1Qzs7QUFGRCxBQUFBLGVBQWUsQ0FBZTtFQUM1QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxlQUFlLENBQWU7RUFDNUIsS0FBSyxFQUFFLFNBQW9DO0NBQzVDOztBQUZELEFBQUEsZUFBZSxDQUFlO0VBQzVCLEtBQUssRUFBRSxLQUFvQztDQUM1Qzs7QUFGRCxBQUFBLGVBQWUsQ0FBZTtFQUM1QixLQUFLLEVBQUUsU0FBb0M7Q0FDNUM7O0FBRkQsQUFBQSxlQUFlLENBQWU7RUFDNUIsS0FBSyxFQUFFLFNBQW9DO0NBQzVDOztBQUZELEFBQUEsZUFBZSxDQUFlO0VBQzVCLEtBQUssRUFBRSxJQUFvQztDQUM1Qzs7QUFQRCxBQUFBLGNBQWMsQ0FBUTtFQUNwQixJQUFJLEVBQUUsSUFBSTtDQUNYOztBQVBELEFBQUEsY0FBYyxDQUFnQjtFQUM1QixJQUFJLEVBQUUsUUFBb0M7Q0FDM0M7O0FBRkQsQUFBQSxjQUFjLENBQWdCO0VBQzVCLElBQUksRUFBRSxRQUFvQztDQUMzQzs7QUFGRCxBQUFBLGNBQWMsQ0FBZ0I7RUFDNUIsSUFBSSxFQUFFLEtBQW9DO0NBQzNDOztBQUZELEFBQUEsY0FBYyxDQUFnQjtFQUM1QixJQUFJLEVBQUUsU0FBb0M7Q0FDM0M7O0FBRkQsQUFBQSxjQUFjLENBQWdCO0VBQzVCLElBQUksRUFBRSxTQUFvQztDQUMzQzs7QUFGRCxBQUFBLGNBQWMsQ0FBZ0I7RUFDNUIsSUFBSSxFQUFFLEdBQW9DO0NBQzNDOztBQUZELEFBQUEsY0FBYyxDQUFnQjtFQUM1QixJQUFJLEVBQUUsU0FBb0M7Q0FDM0M7O0FBRkQsQUFBQSxjQUFjLENBQWdCO0VBQzVCLElBQUksRUFBRSxTQUFvQztDQUMzQzs7QUFGRCxBQUFBLGNBQWMsQ0FBZ0I7RUFDNUIsSUFBSSxFQUFFLEtBQW9DO0NBQzNDOztBQUZELEFBQUEsZUFBZSxDQUFlO0VBQzVCLElBQUksRUFBRSxTQUFvQztDQUMzQzs7QUFGRCxBQUFBLGVBQWUsQ0FBZTtFQUM1QixJQUFJLEVBQUUsU0FBb0M7Q0FDM0M7O0FBRkQsQUFBQSxlQUFlLENBQWU7RUFDNUIsSUFBSSxFQUFFLEdBQW9DO0NBQzNDOztBQUZELEFBQUEsZUFBZSxDQUFlO0VBQzVCLElBQUksRUFBRSxTQUFvQztDQUMzQzs7QUFGRCxBQUFBLGVBQWUsQ0FBZTtFQUM1QixJQUFJLEVBQUUsU0FBb0M7Q0FDM0M7O0FBRkQsQUFBQSxlQUFlLENBQWU7RUFDNUIsSUFBSSxFQUFFLEtBQW9DO0NBQzNDOztBQUZELEFBQUEsZUFBZSxDQUFlO0VBQzVCLElBQUksRUFBRSxTQUFvQztDQUMzQzs7QUFGRCxBQUFBLGVBQWUsQ0FBZTtFQUM1QixJQUFJLEVBQUUsU0FBb0M7Q0FDM0M7O0FBRkQsQUFBQSxlQUFlLENBQWU7RUFDNUIsSUFBSSxFQUFFLEdBQW9DO0NBQzNDOztBQUZELEFBQUEsZUFBZSxDQUFlO0VBQzVCLElBQUksRUFBRSxTQUFvQztDQUMzQzs7QUFGRCxBQUFBLGVBQWUsQ0FBZTtFQUM1QixJQUFJLEVBQUUsU0FBb0M7Q0FDM0M7O0FBRkQsQUFBQSxlQUFlLENBQWU7RUFDNUIsSUFBSSxFQUFFLEtBQW9DO0NBQzNDOztBQUZELEFBQUEsZUFBZSxDQUFlO0VBQzVCLElBQUksRUFBRSxTQUFvQztDQUMzQzs7QUFGRCxBQUFBLGVBQWUsQ0FBZTtFQUM1QixJQUFJLEVBQUUsU0FBb0M7Q0FDM0M7O0FBRkQsQUFBQSxlQUFlLENBQWU7RUFDNUIsSUFBSSxFQUFFLElBQW9DO0NBQzNDOztBQWtCRCxBQUFBLGdCQUFnQixDQUFnQjtFQUM5QixXQUFXLEVBQUUsRUFBb0M7Q0FDbEQ7O0FBRkQsQUFBQSxnQkFBZ0IsQ0FBZ0I7RUFDOUIsV0FBVyxFQUFFLFFBQW9DO0NBQ2xEOztBQUZELEFBQUEsZ0JBQWdCLENBQWdCO0VBQzlCLFdBQVcsRUFBRSxRQUFvQztDQUNsRDs7QUFGRCxBQUFBLGdCQUFnQixDQUFnQjtFQUM5QixXQUFXLEVBQUUsS0FBb0M7Q0FDbEQ7O0FBRkQsQUFBQSxnQkFBZ0IsQ0FBZ0I7RUFDOUIsV0FBVyxFQUFFLFNBQW9DO0NBQ2xEOztBQUZELEFBQUEsZ0JBQWdCLENBQWdCO0VBQzlCLFdBQVcsRUFBRSxTQUFvQztDQUNsRDs7QUFGRCxBQUFBLGdCQUFnQixDQUFnQjtFQUM5QixXQUFXLEVBQUUsR0FBb0M7Q0FDbEQ7O0FBRkQsQUFBQSxnQkFBZ0IsQ0FBZ0I7RUFDOUIsV0FBVyxFQUFFLFNBQW9DO0NBQ2xEOztBQUZELEFBQUEsZ0JBQWdCLENBQWdCO0VBQzlCLFdBQVcsRUFBRSxTQUFvQztDQUNsRDs7QUFGRCxBQUFBLGdCQUFnQixDQUFnQjtFQUM5QixXQUFXLEVBQUUsS0FBb0M7Q0FDbEQ7O0FBRkQsQUFBQSxpQkFBaUIsQ0FBZTtFQUM5QixXQUFXLEVBQUUsU0FBb0M7Q0FDbEQ7O0FBRkQsQUFBQSxpQkFBaUIsQ0FBZTtFQUM5QixXQUFXLEVBQUUsU0FBb0M7Q0FDbEQ7O0FBRkQsQUFBQSxpQkFBaUIsQ0FBZTtFQUM5QixXQUFXLEVBQUUsR0FBb0M7Q0FDbEQ7O0FBRkQsQUFBQSxpQkFBaUIsQ0FBZTtFQUM5QixXQUFXLEVBQUUsU0FBb0M7Q0FDbEQ7O0FBRkQsQUFBQSxpQkFBaUIsQ0FBZTtFQUM5QixXQUFXLEVBQUUsU0FBb0M7Q0FDbEQ7O0FBRkQsQUFBQSxpQkFBaUIsQ0FBZTtFQUM5QixXQUFXLEVBQUUsS0FBb0M7Q0FDbEQ7O0FBRkQsQUFBQSxpQkFBaUIsQ0FBZTtFQUM5QixXQUFXLEVBQUUsU0FBb0M7Q0FDbEQ7O0FBRkQsQUFBQSxpQkFBaUIsQ0FBZTtFQUM5QixXQUFXLEVBQUUsU0FBb0M7Q0FDbEQ7O0FBRkQsQUFBQSxpQkFBaUIsQ0FBZTtFQUM5QixXQUFXLEVBQUUsR0FBb0M7Q0FDbEQ7O0FBRkQsQUFBQSxpQkFBaUIsQ0FBZTtFQUM5QixXQUFXLEVBQUUsU0FBb0M7Q0FDbEQ7O0FBRkQsQUFBQSxpQkFBaUIsQ0FBZTtFQUM5QixXQUFXLEVBQUUsU0FBb0M7Q0FDbEQ7O0FBRkQsQUFBQSxpQkFBaUIsQ0FBZTtFQUM5QixXQUFXLEVBQUUsS0FBb0M7Q0FDbEQ7O0FBRkQsQUFBQSxpQkFBaUIsQ0FBZTtFQUM5QixXQUFXLEVBQUUsU0FBb0M7Q0FDbEQ7O0FBRkQsQUFBQSxpQkFBaUIsQ0FBZTtFQUM5QixXQUFXLEVBQUUsU0FBb0M7Q0FDbEQ7O0FBRkQsQUFBQSxpQkFBaUIsQ0FBZTtFQUM5QixXQUFXLEVBQUUsSUFBb0M7Q0FDbEQ7O0FHRUwsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VIckN0QixBQUFBLFNBQVMsRUFBRSxBQUFBLFNBQVMsRUFBRSxBQUFBLFNBQVMsRUFBRSxB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QUEsY0FBYyxDQUFnQjtJQUM1QixLQUFLLEVBQUUsR0FBb0M7R0FDNUM7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLEtBQUssRUFBRSxTQUFvQztHQUM1QztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixLQUFLLEVBQUUsS0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsR0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsS0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsR0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsS0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsSUFBb0M7R0FDNUM7RUFQRCxBQUFBLGNBQWMsQ0FBUTtJQUNwQixJQUFJLEVBQUUsSUFBSTtHQUNYO0VBUEQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxRQUFvQztHQUMzQztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsUUFBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLEtBQW9DO0dBQzNDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsU0FBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLEdBQW9DO0dBQzNDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsU0FBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLEtBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLEdBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLEtBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLEdBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLEtBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLElBQW9DO0dBQzNDO0VBa0JELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxFQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxRQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxRQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxLQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxTQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxTQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxHQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxTQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxTQUFvQztHQUNsRDtFQUZELEFBQUEsZ0JBQWdCLENBQWdCO0lBQzlCLFdBQVcsRUFBRSxLQUFvQztHQUNsRDtFQUZELEFBQUEsaUJBQWlCLENBQWU7SUFDOUIsV0FBVyxFQUFFLFNBQW9DO0dBQ2xEO0VBRkQsQUFBQSxpQkFBaUIsQ0FBZTtJ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QztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixLQUFLLEVBQUUsS0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsR0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsS0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsR0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsS0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsU0FBb0M7R0FDNUM7RUFGRCxBQUFBLGVBQWUsQ0FBZTtJQUM1QixLQUFLLEVBQUUsSUFBb0M7R0FDNUM7RUFQRCxBQUFBLGNBQWMsQ0FBUTtJQUNwQixJQUFJLEVBQUUsSUFBSTtHQUNYO0VBUEQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxRQUFvQztHQUMzQztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsUUFBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLEtBQW9DO0dBQzNDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsU0FBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLEdBQW9DO0dBQzNDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsU0FBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLEtBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLEdBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLEtBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLEdBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxlQUFl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QW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLEdBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLEtBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLEdBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLEtBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLFNBQW9DO0dBQzVDO0VBRkQsQUFBQSxlQUFlLENBQWU7SUFDNUIsS0FBSyxFQUFFLElBQW9DO0dBQzVDO0VBUEQsQUFBQSxjQUFjLENBQVE7SUFDcEIsSUFBSSxFQUFFLElBQUk7R0FDWDtFQVBELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsUUFBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLFFBQW9DO0dBQzNDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxLQUFvQztHQUMzQztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsU0FBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxHQUFvQztHQUMzQztFQUZELEFBQUEsY0FBYyxDQUFnQjtJQUM1QixJQUFJLEVBQUUsU0FBb0M7R0FDM0M7RUFGRCxBQUFBLGNBQWMsQ0FBZ0I7SUFDNUIsSUFBSSxFQUFFLFNBQW9DO0dBQzNDO0VBRkQsQUFBQSxjQUFjLENBQWdCO0lBQzVCLElBQUksRUFBRSxLQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxHQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxLQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxHQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxLQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFBQUEsZUFBZSxDQUFlO0lBQzVCLElBQUksRUFBRSxTQUFvQztHQUMzQztFQUZELEFB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QUFJO0VBRDNDLEFBRUUsV0FGUyxDQUVULFNBQVMsQUFBQSxVQUFXLENBQUEsS0FBSyxFQUFDO0lBQUMsS0FBSyxFQUFDLElBQUk7R0FBSTtFQUYzQyxBQUdFLFdBSFMsQ0FHVCxTQUFTLEFBQUEsVUFBVyxDQUFBLElBQUksRUFBQztJQUFDLEtBQUssRUFBQyxJQUFJO0dBQUk7RUFIMUMsQUFJRSxXQUpTLENBSVQsU0FBUyxBQUFBLFVBQVcsQ0FBQSxJQUFJLEVBQUM7SUFBQyxLQUFLLEVBQUMsSUFBSTtHQUFJO0VBSjFDLEFBS0UsV0FMUyxDQUtULFNBQVMsQUFBQSxVQUFXLENBQUEsSUFBSSxFQUFDO0lBQUMsS0FBSyxFQUFDLElBQUk7R0FBSTtFQUwxQyxBQU1FLFdBTlMsQ0FNVCxTQUFTLEFBQUEsVUFBVyxDQUFBLElBQUksRUFBQztJQUFDLEtBQUssRUFBQyxJQUFJO0dBQUk7RUFOMUMsQUFPRSxXQVBTLENBT1QsVUFBVSxBQUFBLFVBQVcsQ0FBQSxJQUFJLEVBQUM7SUFBQyxLQUFLLEVBQUMsSUFBSTtHQUFJOzs7QUFHN0MsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLE1BQU07RUFDOUMsQUFDRSxXQURTLENBQ1QsU0FBUyxBQUFBLFVBQVcsQ0FBQSxLQUFLLEVBQUM7SUFBQyxLQUFLLEVBQUMsSUFBSTtHQUFJO0VBRDNDLEFBRUUsV0FGUyxDQUVULFNBQVMsQUFBQSxVQUFXLENBQUEsS0FBSyxFQUFDO0lBQUMsS0FBSyxFQUFDLElBQUk7R0FBSTtFQUYzQyxBQUdFLFdBSFMsQ0FHVCxTQUFTLEFBQUEsVUFBVyxDQUFBLElBQUksRUFBQztJQUFDLEtBQUssRUFBQyxJQUFJO0dBQUk7RUFIMUMsQUFJRSxXQUpTLENBSVQsU0FBUyxBQUFBLFVBQVcsQ0FBQSxJQUFJLEVBQUM7SUFBQyxLQUFLLEVBQUMsSUFBSTtHQUFJO0VBSjFDLEFBS0UsV0FMUyxDQUtULFNBQVMsQUFBQSxVQUFXLENBQUEsSUFBSSxFQUFDO0lBQUMsS0FBSyxFQUFDLElBQUk7R0FBSTtFQUwxQyxB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QyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEFBQUEsT0FBTyxBQUFBLE1BQU0sQUFBQSxNQUFNO0FBQy9DLEFBQXdCLFdBQWIsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEFBQUEsT0FBTyxBQUFBLFNBQVMsQUFBQSxNQUFNO0FBQ2xELEFBQXdCLFdBQWIsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEFBQUEsT0FBTyxBQUFBLFNBQVMsQUFBQSxNQUFNLEFBQUEsTUFBTSxDQUFDO0VBQ3ZELEtBQUssRUFBRSxJQUFJO0VBQ1gsZ0JBQWdCLEVBQUUsT0FBTztFQUN6QixZQUFZLEVBQUUsT0FBTztDQUN0Qjs7QUFDRCxBQUF3QixXQUFiLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxBQUFBLE9BQU8sQUFBQSxNQUFNO0FBQ3pDLEFBQXdCLFdBQWIsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEFBQUEsT0FBTyxBQUFBLE1BQU0sQUFBQSxNQUFNO0FBQy9DLEFBQXdCLFdBQWIsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEFBQUEsT0FBTyxBQUFBLFNBQVMsQUFBQSxNQUFNO0FBQ2xELEFBQXdCLFdBQWIsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEFBQUEsT0FBTyxBQUFBLFNBQVMsQUFBQSxNQUFNLEFBQUEsTUFBTSxDQUFDO0VBQ3ZELEtBQUssRUFBRSxJQUFJO0VBQ1gsZ0JBQWdCLEVBQUUsT0FBTztFQUN6QixZQUFZLEVBQUUsT0FBTztDQUN0Qjs7QUFDRCxBQUF3QixXQUFiLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxBQUFBLE9BQU8sQUFBQSxPQUFPO0FBQzFDLEFBQXdCLFdBQWIsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEFBQUEsT0FBTyxBQUFBLE1B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 */
