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

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

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

body {
  margin: 0;
  font-family: Klein, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.6;
  color: #000;
  text-align: left;
  background-color: #fff; }

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

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

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

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

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
  text-decoration-skip-ink: none; }

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

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

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

dt {
  font-weight: 700; }

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

blockquote {
  margin: 0 0 1rem; }

b,
strong {
  font-weight: 700; }

small {
  font-size: 80%; }

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

sub {
  bottom: -.25em; }

sup {
  top: -.5em; }

a {
  color: #000;
  text-decoration: underline;
  background-color: transparent; }
  a:hover {
    color: #000;
    text-decoration: none; }

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

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

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

figure {
  margin: 0 0 1rem; }

img {
  vertical-align: middle;
  border-style: none; }

svg {
  overflow: hidden;
  vertical-align: middle; }

table {
  border-collapse: collapse; }

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

th {
  text-align: inherit; }

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

button {
  border-radius: 0; }

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

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit; }

button,
input {
  overflow: visible; }

button,
select {
  text-transform: none; }

select {
  word-wrap: normal; }

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

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
  cursor: pointer; }

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none; }

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

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

textarea {
  overflow: auto;
  resize: vertical; }

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

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

progress {
  vertical-align: baseline; }

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

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

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

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

output {
  display: inline-block; }

summary {
  display: list-item;
  cursor: pointer; }

template {
  display: none; }

[hidden] {
  display: none !important; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.list-inline-item {
  display: inline-block; }
  .list-inline-item:not(:last-child) {
    margin-right: 0.5rem; }

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

.blockquote {
  margin-bottom: 1rem;
  font-size: 1.25rem; }

.blockquote-footer {
  display: block;
  font-size: 80%;
  color: #6c757d; }
  .blockquote-footer::before {
    content: "\2014\00A0"; }

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

.img-thumbnail {
  padding: 0.25rem;
  background-color: #fff;
  border: 1px solid #dee2e6;
  border-radius: 0.25rem;
  max-width: 100%;
  height: auto; }

.figure {
  display: inline-block; }

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

.figure-caption {
  font-size: 90%;
  color: #6c757d; }

code {
  font-size: 87.5%;
  color: #e83e8c;
  word-break: break-word; }
  a > code {
    color: inherit; }

kbd {
  padding: 0.2rem 0.4rem;
  font-size: 87.5%;
  color: #fff;
  background-color: #212529;
  border-radius: 0.2rem; }
  kbd kbd {
    padding: 0;
    font-size: 100%;
    font-weight: 700; }

pre {
  display: block;
  font-size: 87.5%;
  color: #212529; }
  pre code {
    font-size: inherit;
    color: inherit;
    word-break: normal; }

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

.table {
  width: 100%;
  margin-bottom: 1rem;
  color: #212529; }
  .table th,
  .table td {
    padding: 0.75rem;
    vertical-align: top;
    border-top: 1px solid #dee2e6; }
  .table thead th {
    vertical-align: bottom;
    border-bottom: 2px solid #dee2e6; }
  .table tbody + tbody {
    border-top: 2px solid #dee2e6; }

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

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

.table-borderless th,
.table-borderless td,
.table-borderless thead th,
.table-borderless tbody + tbody {
  border: 0; }

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

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

.table-primary,
.table-primary > th,
.table-primary > td {
  background-color: #b8b8b8; }

.table-primary th,
.table-primary td,
.table-primary thead th,
.table-primary tbody + tbody {
  border-color: #7a7a7a; }

.table-hover .table-primary:hover {
  background-color: #ababab; }
  .table-hover .table-primary:hover > td,
  .table-hover .table-primary:hover > th {
    background-color: #ababab; }

.table-secondary,
.table-secondary > th,
.table-secondary > td {
  background-color: #d6d8db; }

.table-secondary th,
.table-secondary td,
.table-secondary thead th,
.table-secondary tbody + tbody {
  border-color: #b3b7bb; }

.table-hover .table-secondary:hover {
  background-color: #c8cbcf; }
  .table-hover .table-secondary:hover > td,
  .table-hover .table-secondary:hover > th {
    background-color: #c8cbcf; }

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

.table-success th,
.table-success td,
.table-success thead th,
.table-success tbody + tbody {
  border-color: #8fd19e; }

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

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

.table-info th,
.table-info td,
.table-info thead th,
.table-info tbody + tbody {
  border-color: #86cfda; }

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

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

.table-warning th,
.table-warning td,
.table-warning thead th,
.table-warning tbody + tbody {
  border-color: #ffdf7e; }

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

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

.table-danger th,
.table-danger td,
.table-danger thead th,
.table-danger tbody + tbody {
  border-color: #ed969e; }

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

.table-light,
.table-light > th,
.table-light > td {
  background-color: #fdfdfe; }

.table-light th,
.table-light td,
.table-light thead th,
.table-light tbody + tbody {
  border-color: #fbfcfc; }

.table-hover .table-light:hover {
  background-color: #ececf6; }
  .table-hover .table-light:hover > td,
  .table-hover .table-light:hover > th {
    background-color: #ececf6; }

.table-dark,
.table-dark > th,
.table-dark > td {
  background-color: #c6c8ca; }

.table-dark th,
.table-dark td,
.table-dark thead th,
.table-dark tbody + tbody {
  border-color: #95999c; }

.table-hover .table-dark:hover {
  background-color: #b9bbbe; }
  .table-hover .table-dark:hover > td,
  .table-hover .table-dark:hover > th {
    background-color: #b9bbbe; }

.table-gray,
.table-gray > th,
.table-gray > td {
  background-color: #c6c6c6; }

.table-gray th,
.table-gray td,
.table-gray thead th,
.table-gray tbody + tbody {
  border-color: #959595; }

.table-hover .table-gray:hover {
  background-color: #b9b9b9; }
  .table-hover .table-gray:hover > td,
  .table-hover .table-gray:hover > th {
    background-color: #b9b9b9; }

.table-red,
.table-red > th,
.table-red > td {
  background-color: #f4c7c9; }

.table-red th,
.table-red td,
.table-red thead th,
.table-red tbody + tbody {
  border-color: #ea979a; }

.table-hover .table-red:hover {
  background-color: #f0b2b4; }
  .table-hover .table-red:hover > td,
  .table-hover .table-red:hover > th {
    background-color: #f0b2b4; }

.table-green,
.table-green > th,
.table-green > td {
  background-color: #cbe9ce; }

.table-green th,
.table-green td,
.table-green thead th,
.table-green tbody + tbody {
  border-color: #9ed6a5; }

.table-hover .table-green:hover {
  background-color: #b9e1bd; }
  .table-hover .table-green:hover > td,
  .table-hover .table-green:hover > th {
    background-color: #b9e1bd; }

.table-yellow,
.table-yellow > th,
.table-yellow > td {
  background-color: #fce6c1; }

.table-yellow th,
.table-yellow td,
.table-yellow thead th,
.table-yellow tbody + tbody {
  border-color: #fad18d; }

.table-hover .table-yellow:hover {
  background-color: #fbdca9; }
  .table-hover .table-yellow:hover > td,
  .table-hover .table-yellow:hover > th {
    background-color: #fbdca9; }

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

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

.table .thead-dark th {
  color: #fff;
  background-color: #343a40;
  border-color: #454d55; }

.table .thead-light th {
  color: #495057;
  background-color: #e9ecef;
  border-color: #dee2e6; }

.table-dark {
  color: #fff;
  background-color: #343a40; }
  .table-dark th,
  .table-dark td,
  .table-dark thead th {
    border-color: #454d55; }
  .table-dark.table-bordered {
    border: 0; }
  .table-dark.table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(255, 255, 255, 0.05); }
  .table-dark.table-hover tbody tr:hover {
    color: #fff;
    background-color: rgba(255, 255, 255, 0.075); }

@media (max-width: 374.98px) {
  .table-responsive-xs {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; }
    .table-responsive-xs > .table-bordered {
      border: 0; } }

@media (max-width: 575.98px) {
  .table-responsive-sm {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; }
    .table-responsive-sm > .table-bordered {
      border: 0; } }

@media (max-width: 767.98px) {
  .table-responsive-md {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; }
    .table-responsive-md > .table-bordered {
      border: 0; } }

@media (max-width: 1023.98px) {
  .table-responsive-lg {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; }
    .table-responsive-lg > .table-bordered {
      border: 0; } }

@media (max-width: 1199.98px) {
  .table-responsive-xl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; }
    .table-responsive-xl > .table-bordered {
      border: 0; } }

@media (max-width: 1439.98px) {
  .table-responsive-xxl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; }
    .table-responsive-xxl > .table-bordered {
      border: 0; } }

@media (max-width: 1919.98px) {
  .table-responsive-xxxl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; }
    .table-responsive-xxxl > .table-bordered {
      border: 0; } }

.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch; }
  .table-responsive > .table-bordered {
    border: 0; }

.form-control {
  display: block;
  width: 100%;
  height: 4.4rem;
  padding: 0.375rem 0.75rem;
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.5;
  color: #000;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #696969;
  border-radius: 0;
  -webkit-transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
  transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; }
  @media (prefers-reduced-motion: reduce) {
    .form-control {
      -webkit-transition: none;
      transition: none; } }
  .form-control::-ms-expand {
    background-color: transparent;
    border: 0; }
  .form-control:focus {
    color: #495057;
    background-color: #fff;
    border-color: #80bdff;
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
            box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
  .form-control::-webkit-input-placeholder {
    color: #6c757d;
    opacity: 1; }
  .form-control::-moz-placeholder {
    color: #6c757d;
    opacity: 1; }
  .form-control::-ms-input-placeholder {
    color: #6c757d;
    opacity: 1; }
  .form-control::placeholder {
    color: #6c757d;
    opacity: 1; }
  .form-control:disabled, .form-control[readonly] {
    background-color: #f4f4f4;
    opacity: 1; }

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

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

.col-form-label {
  padding-top: calc(0.375rem + 1px);
  padding-bottom: calc(0.375rem + 1px);
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.5; }

.col-form-label-lg {
  padding-top: calc(0.5rem + 1px);
  padding-bottom: calc(0.5rem + 1px);
  font-size: 1.25rem;
  line-height: 1.5; }

.col-form-label-sm {
  padding-top: calc(0.25rem + 1px);
  padding-bottom: calc(0.25rem + 1px);
  font-size: 0.875rem;
  line-height: 1.5; }

.form-control-plaintext {
  display: block;
  width: 100%;
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
  margin-bottom: 0;
  line-height: 1.5;
  color: #212529;
  background-color: transparent;
  border: solid transparent;
  border-width: 1px 0; }
  .form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
    padding-right: 0;
    padding-left: 0; }

.form-control-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem; }

.form-control-lg {
  height: calc(1.5em + 1rem + 2px);
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem; }

select.form-control[size], select.form-control[multiple] {
  height: auto; }

textarea.form-control {
  height: auto; }

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

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

.form-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-right: -5px;
  margin-left: -5px; }
  .form-row > .col,
  .form-row > [class*="col-"] {
    padding-right: 5px;
    padding-left: 5px; }

.form-check {
  position: relative;
  display: block;
  padding-left: 0; }

.form-check-input {
  position: absolute;
  margin-top: 0.3rem;
  margin-left: 0; }
  .form-check-input:disabled ~ .form-check-label {
    color: #6c757d; }

.form-check-label {
  margin-bottom: 0; }

.form-check-inline {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 0;
  margin-right: 0.75rem; }
  .form-check-inline .form-check-input {
    position: static;
    margin-top: 0;
    margin-right: 0.3125rem;
    margin-left: 0; }

.valid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #28a745; }

.valid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(40, 167, 69, 0.9);
  border-radius: 0.25rem; }

.was-validated .form-control:valid, .form-control.is-valid {
  border-color: #28a745; }
  .was-validated .form-control:valid:focus, .form-control.is-valid:focus {
    border-color: #28a745;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
            box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); }
  .was-validated .form-control:valid ~ .valid-feedback,
  .was-validated .form-control:valid ~ .valid-tooltip, .form-control.is-valid ~ .valid-feedback,
  .form-control.is-valid ~ .valid-tooltip {
    display: block; }

.was-validated .custom-select:valid, .custom-select.is-valid {
  border-color: #28a745; }
  .was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {
    border-color: #28a745;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
            box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); }
  .was-validated .custom-select:valid ~ .valid-feedback,
  .was-validated .custom-select:valid ~ .valid-tooltip, .custom-select.is-valid ~ .valid-feedback,
  .custom-select.is-valid ~ .valid-tooltip {
    display: block; }

.was-validated .form-control-file:valid ~ .valid-feedback,
.was-validated .form-control-file:valid ~ .valid-tooltip, .form-control-file.is-valid ~ .valid-feedback,
.form-control-file.is-valid ~ .valid-tooltip {
  display: block; }

.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: #28a745; }

.was-validated .form-check-input:valid ~ .valid-feedback,
.was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback,
.form-check-input.is-valid ~ .valid-tooltip {
  display: block; }

.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {
  color: #28a745; }
  .was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {
    border-color: #28a745; }

.was-validated .custom-control-input:valid ~ .valid-feedback,
.was-validated .custom-control-input:valid ~ .valid-tooltip, .custom-control-input.is-valid ~ .valid-feedback,
.custom-control-input.is-valid ~ .valid-tooltip {
  display: block; }

.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  border-color: #34ce57;
  background-color: #34ce57; }

.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before {
  -webkit-box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
          box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); }

.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #28a745; }

.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {
  border-color: #28a745; }

.was-validated .custom-file-input:valid ~ .valid-feedback,
.was-validated .custom-file-input:valid ~ .valid-tooltip, .custom-file-input.is-valid ~ .valid-feedback,
.custom-file-input.is-valid ~ .valid-tooltip {
  display: block; }

.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {
  border-color: #28a745;
  -webkit-box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
          box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); }

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #dc3545; }

.invalid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(220, 53, 69, 0.9);
  border-radius: 0.25rem; }

.was-validated .form-control:invalid, .form-control.is-invalid {
  border-color: #dc3545; }
  .was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
    border-color: #dc3545;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
            box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }
  .was-validated .form-control:invalid ~ .invalid-feedback,
  .was-validated .form-control:invalid ~ .invalid-tooltip, .form-control.is-invalid ~ .invalid-feedback,
  .form-control.is-invalid ~ .invalid-tooltip {
    display: block; }

.was-validated .custom-select:invalid, .custom-select.is-invalid {
  border-color: #dc3545; }
  .was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {
    border-color: #dc3545;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
            box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }
  .was-validated .custom-select:invalid ~ .invalid-feedback,
  .was-validated .custom-select:invalid ~ .invalid-tooltip, .custom-select.is-invalid ~ .invalid-feedback,
  .custom-select.is-invalid ~ .invalid-tooltip {
    display: block; }

.was-validated .form-control-file:invalid ~ .invalid-feedback,
.was-validated .form-control-file:invalid ~ .invalid-tooltip, .form-control-file.is-invalid ~ .invalid-feedback,
.form-control-file.is-invalid ~ .invalid-tooltip {
  display: block; }

.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: #dc3545; }

.was-validated .form-check-input:invalid ~ .invalid-feedback,
.was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback,
.form-check-input.is-invalid ~ .invalid-tooltip {
  display: block; }

.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label {
  color: #dc3545; }
  .was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {
    border-color: #dc3545; }

.was-validated .custom-control-input:invalid ~ .invalid-feedback,
.was-validated .custom-control-input:invalid ~ .invalid-tooltip, .custom-control-input.is-invalid ~ .invalid-feedback,
.custom-control-input.is-invalid ~ .invalid-tooltip {
  display: block; }

.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  border-color: #e4606d;
  background-color: #e4606d; }

.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before {
  -webkit-box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
          box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }

.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #dc3545; }

.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {
  border-color: #dc3545; }

.was-validated .custom-file-input:invalid ~ .invalid-feedback,
.was-validated .custom-file-input:invalid ~ .invalid-tooltip, .custom-file-input.is-invalid ~ .invalid-feedback,
.custom-file-input.is-invalid ~ .invalid-tooltip {
  display: block; }

.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {
  border-color: #dc3545;
  -webkit-box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
          box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }

.form-inline {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .form-inline .form-check {
    width: 100%; }
  @media (min-width: 576px) {
    .form-inline label {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      margin-bottom: 0; }
    .form-inline .form-group {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-flex: 0;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-flow: row wrap;
              flex-flow: row wrap;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      margin-bottom: 0; }
    .form-inline .form-control {
      display: inline-block;
      width: auto;
      vertical-align: middle; }
    .form-inline .form-control-plaintext {
      display: inline-block; }
    .form-inline .input-group,
    .form-inline .custom-select {
      width: auto; }
    .form-inline .form-check {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      width: auto;
      padding-left: 0; }
    .form-inline .form-check-input {
      position: relative;
      -ms-flex-negative: 0;
          flex-shrink: 0;
      margin-top: 0;
      margin-right: 0.25rem;
      margin-left: 0; }
    .form-inline .custom-control {
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
    .form-inline .custom-control-label {
      margin-bottom: 0; } }

.fade {
  -webkit-transition: opacity 0.15s linear;
  transition: opacity 0.15s linear; }
  @media (prefers-reduced-motion: reduce) {
    .fade {
      -webkit-transition: none;
      transition: none; } }
  .fade:not(.show) {
    opacity: 0; }

.collapse:not(.show) {
  display: none; }

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  -webkit-transition: height 0.35s ease;
  transition: height 0.35s ease; }
  @media (prefers-reduced-motion: reduce) {
    .collapsing {
      -webkit-transition: none;
      transition: none; } }

.dropup,
.dropright,
.dropdown,
.dropleft {
  position: relative; }

.dropdown-toggle {
  white-space: nowrap; }
  .dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.3em solid;
    border-right: 0.3em solid transparent;
    border-bottom: 0;
    border-left: 0.3em solid transparent; }
  .dropdown-toggle:empty::after {
    margin-left: 0; }

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

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

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

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

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

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

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

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

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

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

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

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

.dropup .dropdown-toggle:empty::after {
  margin-left: 0; }

.dropright .dropdown-menu {
  top: 0;
  right: auto;
  left: 100%;
  margin-top: 0;
  margin-left: 0.125rem; }

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

.dropright .dropdown-toggle:empty::after {
  margin-left: 0; }

.dropright .dropdown-toggle::after {
  vertical-align: 0; }

.dropleft .dropdown-menu {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: 0.125rem; }

.dropleft .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: ""; }

.dropleft .dropdown-toggle::after {
  display: none; }

.dropleft .dropdown-toggle::before {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0.3em solid;
  border-bottom: 0.3em solid transparent; }

.dropleft .dropdown-toggle:empty::after {
  margin-left: 0; }

.dropleft .dropdown-toggle::before {
  vertical-align: 0; }

.dropdown-menu[x-placement^="top"], .dropdown-menu[x-placement^="right"], .dropdown-menu[x-placement^="bottom"], .dropdown-menu[x-placement^="left"] {
  right: auto;
  bottom: auto; }

.dropdown-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid #e9ecef; }

.dropdown-item {
  display: block;
  width: 100%;
  padding: 0.25rem 1.5rem;
  clear: both;
  font-weight: 400;
  color: #212529;
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0; }
  .dropdown-item:hover, .dropdown-item:focus {
    color: #16181b;
    text-decoration: none;
    background-color: #f8f9fa; }
  .dropdown-item.active, .dropdown-item:active {
    color: #fff;
    text-decoration: none;
    background-color: #007bff; }
  .dropdown-item.disabled, .dropdown-item:disabled {
    color: #6c757d;
    pointer-events: none;
    background-color: transparent; }

.dropdown-menu.show {
  display: block; }

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

.dropdown-item-text {
  display: block;
  padding: 0.25rem 1.5rem;
  color: #212529; }

.btn-group,
.btn-group-vertical {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  vertical-align: middle; }
  .btn-group > .btn,
  .btn-group-vertical > .btn {
    position: relative;
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
    .btn-group > .btn:hover,
    .btn-group-vertical > .btn:hover {
      z-index: 1; }
    .btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
    .btn-group-vertical > .btn:focus,
    .btn-group-vertical > .btn:active,
    .btn-group-vertical > .btn.active {
      z-index: 1; }

.btn-toolbar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start; }
  .btn-toolbar .input-group {
    width: auto; }

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

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

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

.dropdown-toggle-split {
  padding-right: 0.5625rem;
  padding-left: 0.5625rem; }
  .dropdown-toggle-split::after,
  .dropup .dropdown-toggle-split::after,
  .dropright .dropdown-toggle-split::after {
    margin-left: 0; }
  .dropleft .dropdown-toggle-split::before {
    margin-right: 0; }

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

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

.btn-group-vertical {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .btn-group-vertical > .btn,
  .btn-group-vertical > .btn-group {
    width: 100%; }
  .btn-group-vertical > .btn:not(:first-child),
  .btn-group-vertical > .btn-group:not(:first-child) {
    margin-top: -1px; }
  .btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
  .btn-group-vertical > .btn-group:not(:last-child) > .btn {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0; }
  .btn-group-vertical > .btn:not(:first-child),
  .btn-group-vertical > .btn-group:not(:first-child) > .btn {
    border-top-left-radius: 0;
    border-top-right-radius: 0; }

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

.input-group {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  width: 100%; }
  .input-group > .form-control,
  .input-group > .form-control-plaintext,
  .input-group > .custom-select,
  .input-group > .custom-file {
    position: relative;
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    width: 1%;
    margin-bottom: 0; }
    .input-group > .form-control + .form-control,
    .input-group > .form-control + .custom-select,
    .input-group > .form-control + .custom-file,
    .input-group > .form-control-plaintext + .form-control,
    .input-group > .form-control-plaintext + .custom-select,
    .input-group > .form-control-plaintext + .custom-file,
    .input-group > .custom-select + .form-control,
    .input-group > .custom-select + .custom-select,
    .input-group > .custom-select + .custom-file,
    .input-group > .custom-file + .form-control,
    .input-group > .custom-file + .custom-select,
    .input-group > .custom-file + .custom-file {
      margin-left: -1px; }
  .input-group > .form-control:focus,
  .input-group > .custom-select:focus,
  .input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {
    z-index: 3; }
  .input-group > .custom-file .custom-file-input:focus {
    z-index: 4; }
  .input-group > .form-control:not(:last-child),
  .input-group > .custom-select:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0; }
  .input-group > .form-control:not(:first-child),
  .input-group > .custom-select:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0; }
  .input-group > .custom-file {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .input-group > .custom-file:not(:last-child) .custom-file-label,
    .input-group > .custom-file:not(:last-child) .custom-file-label::after {
      border-top-right-radius: 0;
      border-bottom-right-radius: 0; }
    .input-group > .custom-file:not(:first-child) .custom-file-label {
      border-top-left-radius: 0;
      border-bottom-left-radius: 0; }

.input-group-prepend,
.input-group-append {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .input-group-prepend .btn,
  .input-group-append .btn {
    position: relative;
    z-index: 2; }
    .input-group-prepend .btn:focus,
    .input-group-append .btn:focus {
      z-index: 3; }
  .input-group-prepend .btn + .btn,
  .input-group-prepend .btn + .input-group-text,
  .input-group-prepend .input-group-text + .input-group-text,
  .input-group-prepend .input-group-text + .btn,
  .input-group-append .btn + .btn,
  .input-group-append .btn + .input-group-text,
  .input-group-append .input-group-text + .input-group-text,
  .input-group-append .input-group-text + .btn {
    margin-left: -1px; }

.input-group-prepend {
  margin-right: -1px; }

.input-group-append {
  margin-left: -1px; }

.input-group-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.375rem 0.75rem;
  margin-bottom: 0;
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  text-align: center;
  white-space: nowrap;
  background-color: #e9ecef;
  border: 1px solid #ced4da;
  border-radius: 0; }
  .input-group-text input[type="radio"],
  .input-group-text input[type="checkbox"] {
    margin-top: 0; }

.input-group-lg > .form-control:not(textarea),
.input-group-lg > .custom-select {
  height: calc(1.5em + 1rem + 2px); }

.input-group-lg > .form-control,
.input-group-lg > .custom-select,
.input-group-lg > .input-group-prepend > .input-group-text,
.input-group-lg > .input-group-append > .input-group-text,
.input-group-lg > .input-group-prepend > .btn,
.input-group-lg > .input-group-append > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem; }

.input-group-sm > .form-control:not(textarea),
.input-group-sm > .custom-select {
  height: calc(1.5em + 0.5rem + 2px); }

.input-group-sm > .form-control,
.input-group-sm > .custom-select,
.input-group-sm > .input-group-prepend > .input-group-text,
.input-group-sm > .input-group-append > .input-group-text,
.input-group-sm > .input-group-prepend > .btn,
.input-group-sm > .input-group-append > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem; }

.input-group-lg > .custom-select,
.input-group-sm > .custom-select {
  padding-right: 1.75rem; }

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

.input-group > .input-group-append > .btn,
.input-group > .input-group-append > .input-group-text,
.input-group > .input-group-prepend:not(:first-child) > .btn,
.input-group > .input-group-prepend:not(:first-child) > .input-group-text,
.input-group > .input-group-prepend:first-child > .btn:not(:first-child),
.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

.custom-control {
  position: relative;
  display: block;
  min-height: 2.24rem;
  padding-left: 1.5rem; }

.custom-control-inline {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-right: 1rem; }

.custom-control-input {
  position: absolute;
  z-index: -1;
  opacity: 0; }
  .custom-control-input:checked ~ .custom-control-label::before {
    color: #fff;
    border-color: #007bff;
    background-color: #007bff; }
  .custom-control-input:focus ~ .custom-control-label::before {
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
            box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
  .custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
    border-color: #80bdff; }
  .custom-control-input:not(:disabled):active ~ .custom-control-label::before {
    color: #fff;
    background-color: #b3d7ff;
    border-color: #b3d7ff; }
  .custom-control-input:disabled ~ .custom-control-label {
    color: #6c757d; }
    .custom-control-input:disabled ~ .custom-control-label::before {
      background-color: #e9ecef; }

.custom-control-label {
  position: relative;
  margin-bottom: 0;
  vertical-align: top; }
  .custom-control-label::before {
    position: absolute;
    top: 0.62rem;
    left: -1.5rem;
    display: block;
    width: 1rem;
    height: 1rem;
    pointer-events: none;
    content: "";
    background-color: #fff;
    border: #adb5bd solid 1px; }
  .custom-control-label::after {
    position: absolute;
    top: 0.62rem;
    left: -1.5rem;
    display: block;
    width: 1rem;
    height: 1rem;
    content: "";
    background: no-repeat 50% / 50% 50%; }

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

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e"); }

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
  border-color: #007bff;
  background-color: #007bff; }

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e"); }

.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5); }

.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5); }

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

.custom-radio .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e"); }

.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5); }

.custom-switch {
  padding-left: 2.25rem; }
  .custom-switch .custom-control-label::before {
    left: -2.25rem;
    width: 1.75rem;
    pointer-events: all;
    border-radius: 0.5rem; }
  .custom-switch .custom-control-label::after {
    top: calc(0.62rem + 2px);
    left: calc(-2.25rem + 2px);
    width: calc(1rem - 4px);
    height: calc(1rem - 4px);
    background-color: #adb5bd;
    border-radius: 0.5rem;
    -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; }
    @media (prefers-reduced-motion: reduce) {
      .custom-switch .custom-control-label::after {
        -webkit-transition: none;
        transition: none; } }
  .custom-switch .custom-control-input:checked ~ .custom-control-label::after {
    background-color: #fff;
    -webkit-transform: translateX(0.75rem);
            transform: translateX(0.75rem); }
  .custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
    background-color: rgba(0, 123, 255, 0.5); }

.custom-select {
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 1.75rem 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  vertical-align: middle;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
  .custom-select:focus {
    border-color: #80bdff;
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
            box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
    .custom-select:focus::-ms-value {
      color: #000;
      background-color: #fff; }
  .custom-select[multiple], .custom-select[size]:not([size="1"]) {
    height: auto;
    padding-right: 0.75rem;
    background-image: none; }
  .custom-select:disabled {
    color: #6c757d;
    background-color: #f4f4f4; }
  .custom-select::-ms-expand {
    display: none; }

.custom-select-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.5rem;
  font-size: 0.875rem; }

.custom-select-lg {
  height: calc(1.5em + 1rem + 2px);
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  font-size: 1.25rem; }

.custom-file {
  position: relative;
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin-bottom: 0; }

.custom-file-input {
  position: relative;
  z-index: 2;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin: 0;
  opacity: 0; }
  .custom-file-input:focus ~ .custom-file-label {
    border-color: #80bdff;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
            box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
  .custom-file-input:disabled ~ .custom-file-label {
    background-color: #e9ecef; }
  .custom-file-input:lang(en) ~ .custom-file-label::after {
    content: "Browse"; }
  .custom-file-input ~ .custom-file-label[data-browse]::after {
    content: attr(data-browse); }

.custom-file-label {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: 0.25rem; }
  .custom-file-label::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 3;
    display: block;
    height: calc(1.5em + 0.75rem);
    padding: 0.375rem 0.75rem;
    line-height: 1.5;
    color: #495057;
    content: "Browse";
    background-color: #e9ecef;
    border-left: inherit;
    border-radius: 0 0.25rem 0.25rem 0; }

.custom-range {
  width: 100%;
  height: calc(1rem + 0.4rem);
  padding: 0;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
  .custom-range:focus {
    outline: none; }
    .custom-range:focus::-webkit-slider-thumb {
      -webkit-box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
              box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
    .custom-range:focus::-moz-range-thumb {
      box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
    .custom-range:focus::-ms-thumb {
      box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
  .custom-range::-moz-focus-outer {
    border: 0; }
  .custom-range::-webkit-slider-thumb {
    width: 1rem;
    height: 1rem;
    margin-top: -0.25rem;
    background-color: #007bff;
    border: 0;
    border-radius: 1rem;
    -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    -webkit-appearance: none;
            appearance: none; }
    @media (prefers-reduced-motion: reduce) {
      .custom-range::-webkit-slider-thumb {
        -webkit-transition: none;
        transition: none; } }
    .custom-range::-webkit-slider-thumb:active {
      background-color: #b3d7ff; }
  .custom-range::-webkit-slider-runnable-track {
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    background-color: #dee2e6;
    border-color: transparent;
    border-radius: 1rem; }
  .custom-range::-moz-range-thumb {
    width: 1rem;
    height: 1rem;
    background-color: #007bff;
    border: 0;
    border-radius: 1rem;
    -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    -moz-appearance: none;
         appearance: none; }
    @media (prefers-reduced-motion: reduce) {
      .custom-range::-moz-range-thumb {
        -webkit-transition: none;
        transition: none; } }
    .custom-range::-moz-range-thumb:active {
      background-color: #b3d7ff; }
  .custom-range::-moz-range-track {
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    background-color: #dee2e6;
    border-color: transparent;
    border-radius: 1rem; }
  .custom-range::-ms-thumb {
    width: 1rem;
    height: 1rem;
    margin-top: 0;
    margin-right: 0.2rem;
    margin-left: 0.2rem;
    background-color: #007bff;
    border: 0;
    border-radius: 1rem;
    -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    appearance: none; }
    @media (prefers-reduced-motion: reduce) {
      .custom-range::-ms-thumb {
        -webkit-transition: none;
        transition: none; } }
    .custom-range::-ms-thumb:active {
      background-color: #b3d7ff; }
  .custom-range::-ms-track {
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    background-color: transparent;
    border-color: transparent;
    border-width: 0.5rem; }
  .custom-range::-ms-fill-lower {
    background-color: #dee2e6;
    border-radius: 1rem; }
  .custom-range::-ms-fill-upper {
    margin-right: 15px;
    background-color: #dee2e6;
    border-radius: 1rem; }
  .custom-range:disabled::-webkit-slider-thumb {
    background-color: #adb5bd; }
  .custom-range:disabled::-webkit-slider-runnable-track {
    cursor: default; }
  .custom-range:disabled::-moz-range-thumb {
    background-color: #adb5bd; }
  .custom-range:disabled::-moz-range-track {
    cursor: default; }
  .custom-range:disabled::-ms-thumb {
    background-color: #adb5bd; }

.custom-control-label::before,
.custom-file-label,
.custom-select {
  -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; }
  @media (prefers-reduced-motion: reduce) {
    .custom-control-label::before,
    .custom-file-label,
    .custom-select {
      -webkit-transition: none;
      transition: none; } }

.nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none; }

.nav-link {
  display: block;
  padding: 0.5rem 1rem; }
  .nav-link:hover, .nav-link:focus {
    text-decoration: none; }
  .nav-link.disabled {
    color: #6c757d;
    pointer-events: none;
    cursor: default; }

.nav-tabs {
  border-bottom: 1px solid #dee2e6; }
  .nav-tabs .nav-item {
    margin-bottom: -1px; }
  .nav-tabs .nav-link {
    border: 1px solid transparent;
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem; }
    .nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
      border-color: #e9ecef #e9ecef #dee2e6; }
    .nav-tabs .nav-link.disabled {
      color: #6c757d;
      background-color: transparent;
      border-color: transparent; }
  .nav-tabs .nav-link.active,
  .nav-tabs .nav-item.show .nav-link {
    color: #495057;
    background-color: #fff;
    border-color: #dee2e6 #dee2e6 #fff; }
  .nav-tabs .dropdown-menu {
    margin-top: -1px;
    border-top-left-radius: 0;
    border-top-right-radius: 0; }

.nav-pills .nav-link {
  border-radius: 0.25rem; }

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: #fff;
  background-color: #007bff; }

.nav-fill .nav-item {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  text-align: center; }

.nav-justified .nav-item {
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  text-align: center; }

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

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

.card {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: border-box;
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: 0.25rem; }
  .card > hr {
    margin-right: 0;
    margin-left: 0; }
  .card > .list-group:first-child .list-group-item:first-child {
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem; }
  .card > .list-group:last-child .list-group-item:last-child {
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem; }

.card-body {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  padding: 1.25rem; }

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

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

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

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

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

.card-header {
  padding: 0.75rem 1.25rem;
  margin-bottom: 0;
  background-color: rgba(0, 0, 0, 0.03);
  border-bottom: 1px solid rgba(0, 0, 0, 0.125); }
  .card-header:first-child {
    border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0; }
  .card-header + .list-group .list-group-item:first-child {
    border-top: 0; }

.card-footer {
  padding: 0.75rem 1.25rem;
  background-color: rgba(0, 0, 0, 0.03);
  border-top: 1px solid rgba(0, 0, 0, 0.125); }
  .card-footer:last-child {
    border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px); }

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

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

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

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

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

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

.card-deck {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }
  .card-deck .card {
    margin-bottom: 15px; }
  @media (min-width: 576px) {
    .card-deck {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-flow: row wrap;
              flex-flow: row wrap;
      margin-right: -15px;
      margin-left: -15px; }
      .card-deck .card {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-flex: 1;
            -ms-flex: 1 0 0%;
                flex: 1 0 0%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        margin-right: 15px;
        margin-bottom: 0;
        margin-left: 15px; } }

.card-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }
  .card-group > .card {
    margin-bottom: 15px; }
  @media (min-width: 576px) {
    .card-group {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-flow: row wrap;
              flex-flow: row wrap; }
      .card-group > .card {
        -webkit-box-flex: 1;
            -ms-flex: 1 0 0%;
                flex: 1 0 0%;
        margin-bottom: 0; }
        .card-group > .card + .card {
          margin-left: 0;
          border-left: 0; }
        .card-group > .card:not(:last-child) {
          border-top-right-radius: 0;
          border-bottom-right-radius: 0; }
          .card-group > .card:not(:last-child) .card-img-top,
          .card-group > .card:not(:last-child) .card-header {
            border-top-right-radius: 0; }
          .card-group > .card:not(:last-child) .card-img-bottom,
          .card-group > .card:not(:last-child) .card-footer {
            border-bottom-right-radius: 0; }
        .card-group > .card:not(:first-child) {
          border-top-left-radius: 0;
          border-bottom-left-radius: 0; }
          .card-group > .card:not(:first-child) .card-img-top,
          .card-group > .card:not(:first-child) .card-header {
            border-top-left-radius: 0; }
          .card-group > .card:not(:first-child) .card-img-bottom,
          .card-group > .card:not(:first-child) .card-footer {
            border-bottom-left-radius: 0; } }

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

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

.accordion > .card {
  overflow: hidden; }
  .accordion > .card:not(:first-of-type) .card-header:first-child {
    border-radius: 0; }
  .accordion > .card:not(:first-of-type):not(:last-of-type) {
    border-bottom: 0;
    border-radius: 0; }
  .accordion > .card:first-of-type {
    border-bottom: 0;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0; }
  .accordion > .card:last-of-type {
    border-top-left-radius: 0;
    border-top-right-radius: 0; }
  .accordion > .card .card-header {
    margin-bottom: -1px; }

.breadcrumb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  list-style: none;
  background-color: #e9ecef;
  border-radius: 0.25rem; }

.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem; }
  .breadcrumb-item + .breadcrumb-item::before {
    display: inline-block;
    padding-right: 0.5rem;
    color: #6c757d;
    content: "/"; }

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: underline; }

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: none; }

.breadcrumb-item.active {
  color: #6c757d; }

.pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-left: 0;
  list-style: none;
  border-radius: 0.25rem; }

.page-link {
  position: relative;
  display: block;
  padding: 0.5rem 0.75rem;
  margin-left: -1px;
  line-height: 1.25;
  color: #007bff;
  background-color: #fff;
  border: 1px solid #dee2e6; }
  .page-link:hover {
    z-index: 2;
    color: #0056b3;
    text-decoration: none;
    background-color: #e9ecef;
    border-color: #dee2e6; }
  .page-link:focus {
    z-index: 2;
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
            box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }

.page-item:first-child .page-link {
  margin-left: 0;
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem; }

.page-item:last-child .page-link {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem; }

.page-item.active .page-link {
  z-index: 1;
  color: #fff;
  background-color: #007bff;
  border-color: #007bff; }

.page-item.disabled .page-link {
  color: #6c757d;
  pointer-events: none;
  cursor: auto;
  background-color: #fff;
  border-color: #dee2e6; }

.pagination-lg .page-link {
  padding: 0.75rem 1.5rem;
  font-size: 1.7rem;
  line-height: 1.5; }

.pagination-lg .page-item:first-child .page-link {
  border-top-left-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem; }

.pagination-lg .page-item:last-child .page-link {
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem; }

.pagination-sm .page-link {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5; }

.pagination-sm .page-item:first-child .page-link {
  border-top-left-radius: 0.2rem;
  border-bottom-left-radius: 0.2rem; }

.pagination-sm .page-item:last-child .page-link {
  border-top-right-radius: 0.2rem;
  border-bottom-right-radius: 0.2rem; }

.badge {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
  -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; }
  @media (prefers-reduced-motion: reduce) {
    .badge {
      -webkit-transition: none;
      transition: none; } }
  a.badge:hover, a.badge:focus {
    text-decoration: none; }
  .badge:empty {
    display: none; }

.btn .badge {
  position: relative;
  top: -1px; }

.badge-pill {
  padding-right: 0.6em;
  padding-left: 0.6em;
  border-radius: 10rem; }

.badge-primary {
  color: #fff;
  background-color: #000; }
  a.badge-primary:hover, a.badge-primary:focus {
    color: #fff;
    background-color: black; }
  a.badge-primary:focus, a.badge-primary.focus {
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }

.badge-secondary {
  color: #fff;
  background-color: #6c757d; }
  a.badge-secondary:hover, a.badge-secondary:focus {
    color: #fff;
    background-color: #545b62; }
  a.badge-secondary:focus, a.badge-secondary.focus {
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); }

.badge-success {
  color: #fff;
  background-color: #28a745; }
  a.badge-success:hover, a.badge-success:focus {
    color: #fff;
    background-color: #1e7e34; }
  a.badge-success:focus, a.badge-success.focus {
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5); }

.badge-info {
  color: #fff;
  background-color: #17a2b8; }
  a.badge-info:hover, a.badge-info:focus {
    color: #fff;
    background-color: #117a8b; }
  a.badge-info:focus, a.badge-info.focus {
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5); }

.badge-warning {
  color: #212529;
  background-color: #ffc107; }
  a.badge-warning:hover, a.badge-warning:focus {
    color: #212529;
    background-color: #d39e00; }
  a.badge-warning:focus, a.badge-warning.focus {
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5); }

.badge-danger {
  color: #fff;
  background-color: #dc3545; }
  a.badge-danger:hover, a.badge-danger:focus {
    color: #fff;
    background-color: #bd2130; }
  a.badge-danger:focus, a.badge-danger.focus {
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); }

.badge-light {
  color: #212529;
  background-color: #f8f9fa; }
  a.badge-light:hover, a.badge-light:focus {
    color: #212529;
    background-color: #dae0e5; }
  a.badge-light:focus, a.badge-light.focus {
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5); }

.badge-dark {
  color: #fff;
  background-color: #343a40; }
  a.badge-dark:hover, a.badge-dark:focus {
    color: #fff;
    background-color: #1d2124; }
  a.badge-dark:focus, a.badge-dark.focus {
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5); }

.badge-gray {
  color: #fff;
  background-color: #333; }
  a.badge-gray:hover, a.badge-gray:focus {
    color: #fff;
    background-color: #1a1a1a; }
  a.badge-gray:focus, a.badge-gray.focus {
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(51, 51, 51, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(51, 51, 51, 0.5); }

.badge-red {
  color: #fff;
  background-color: #d7373d; }
  a.badge-red:hover, a.badge-red:focus {
    color: #fff;
    background-color: #b7252a; }
  a.badge-red:focus, a.badge-red.focus {
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(215, 55, 61, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(215, 55, 61, 0.5); }

.badge-green {
  color: #fff;
  background-color: #44b151; }
  a.badge-green:hover, a.badge-green:focus {
    color: #fff;
    background-color: #368c40; }
  a.badge-green:focus, a.badge-green.focus {
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(68, 177, 81, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(68, 177, 81, 0.5); }

.badge-yellow {
  color: #212529;
  background-color: #f5a623; }
  a.badge-yellow:hover, a.badge-yellow:focus {
    color: #212529;
    background-color: #db8c0a; }
  a.badge-yellow:focus, a.badge-yellow.focus {
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(245, 166, 35, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(245, 166, 35, 0.5); }

.jumbotron {
  padding: 2rem 1rem;
  margin-bottom: 2rem;
  background-color: #e9ecef;
  border-radius: 0.3rem; }
  @media (min-width: 576px) {
    .jumbotron {
      padding: 4rem 2rem; } }

.jumbotron-fluid {
  padding-right: 0;
  padding-left: 0;
  border-radius: 0; }

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

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

.progress {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 0.4rem;
  overflow: hidden;
  font-size: 0.75rem;
  background-color: #e4e4e4;
  border-radius: 0; }

.progress-bar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  background-color: #000;
  -webkit-transition: width 0.6s ease;
  transition: width 0.6s ease; }
  @media (prefers-reduced-motion: reduce) {
    .progress-bar {
      -webkit-transition: none;
      transition: none; } }

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

.progress-bar-animated {
  -webkit-animation: progress-bar-stripes 1s linear infinite;
          animation: progress-bar-stripes 1s linear infinite; }
  @media (prefers-reduced-motion: reduce) {
    .progress-bar-animated {
      -webkit-animation: none;
              animation: none; } }

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

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

.list-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-left: 0;
  margin-bottom: 0; }

.list-group-item-action {
  width: 100%;
  color: #495057;
  text-align: inherit; }
  .list-group-item-action:hover, .list-group-item-action:focus {
    z-index: 1;
    color: #495057;
    text-decoration: none;
    background-color: #f8f9fa; }
  .list-group-item-action:active {
    color: #212529;
    background-color: #e9ecef; }

.list-group-item {
  position: relative;
  display: block;
  padding: 0.75rem 1.25rem;
  margin-bottom: -1px;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.125); }
  .list-group-item:first-child {
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem; }
  .list-group-item:last-child {
    margin-bottom: 0;
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem; }
  .list-group-item.disabled, .list-group-item:disabled {
    color: #6c757d;
    pointer-events: none;
    background-color: #fff; }
  .list-group-item.active {
    z-index: 2;
    color: #fff;
    background-color: #007bff;
    border-color: #007bff; }

.list-group-horizontal {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row; }
  .list-group-horizontal .list-group-item {
    margin-right: -1px;
    margin-bottom: 0; }
    .list-group-horizontal .list-group-item:first-child {
      border-top-left-radius: 0.25rem;
      border-bottom-left-radius: 0.25rem;
      border-top-right-radius: 0; }
    .list-group-horizontal .list-group-item:last-child {
      margin-right: 0;
      border-top-right-radius: 0.25rem;
      border-bottom-right-radius: 0.25rem;
      border-bottom-left-radius: 0; }

@media (min-width: 375px) {
  .list-group-horizontal-xs {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
    .list-group-horizontal-xs .list-group-item {
      margin-right: -1px;
      margin-bottom: 0; }
      .list-group-horizontal-xs .list-group-item:first-child {
        border-top-left-radius: 0.25rem;
        border-bottom-left-radius: 0.25rem;
        border-top-right-radius: 0; }
      .list-group-horizontal-xs .list-group-item:last-child {
        margin-right: 0;
        border-top-right-radius: 0.25rem;
        border-bottom-right-radius: 0.25rem;
        border-bottom-left-radius: 0; } }

@media (min-width: 576px) {
  .list-group-horizontal-sm {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
    .list-group-horizontal-sm .list-group-item {
      margin-right: -1px;
      margin-bottom: 0; }
      .list-group-horizontal-sm .list-group-item:first-child {
        border-top-left-radius: 0.25rem;
        border-bottom-left-radius: 0.25rem;
        border-top-right-radius: 0; }
      .list-group-horizontal-sm .list-group-item:last-child {
        margin-right: 0;
        border-top-right-radius: 0.25rem;
        border-bottom-right-radius: 0.25rem;
        border-bottom-left-radius: 0; } }

@media (min-width: 768px) {
  .list-group-horizontal-md {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
    .list-group-horizontal-md .list-group-item {
      margin-right: -1px;
      margin-bottom: 0; }
      .list-group-horizontal-md .list-group-item:first-child {
        border-top-left-radius: 0.25rem;
        border-bottom-left-radius: 0.25rem;
        border-top-right-radius: 0; }
      .list-group-horizontal-md .list-group-item:last-child {
        margin-right: 0;
        border-top-right-radius: 0.25rem;
        border-bottom-right-radius: 0.25rem;
        border-bottom-left-radius: 0; } }

@media (min-width: 1024px) {
  .list-group-horizontal-lg {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
    .list-group-horizontal-lg .list-group-item {
      margin-right: -1px;
      margin-bottom: 0; }
      .list-group-horizontal-lg .list-group-item:first-child {
        border-top-left-radius: 0.25rem;
        border-bottom-left-radius: 0.25rem;
        border-top-right-radius: 0; }
      .list-group-horizontal-lg .list-group-item:last-child {
        margin-right: 0;
        border-top-right-radius: 0.25rem;
        border-bottom-right-radius: 0.25rem;
        border-bottom-left-radius: 0; } }

@media (min-width: 1200px) {
  .list-group-horizontal-xl {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
    .list-group-horizontal-xl .list-group-item {
      margin-right: -1px;
      margin-bottom: 0; }
      .list-group-horizontal-xl .list-group-item:first-child {
        border-top-left-radius: 0.25rem;
        border-bottom-left-radius: 0.25rem;
        border-top-right-radius: 0; }
      .list-group-horizontal-xl .list-group-item:last-child {
        margin-right: 0;
        border-top-right-radius: 0.25rem;
        border-bottom-right-radius: 0.25rem;
        border-bottom-left-radius: 0; } }

@media (min-width: 1440px) {
  .list-group-horizontal-xxl {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
    .list-group-horizontal-xxl .list-group-item {
      margin-right: -1px;
      margin-bottom: 0; }
      .list-group-horizontal-xxl .list-group-item:first-child {
        border-top-left-radius: 0.25rem;
        border-bottom-left-radius: 0.25rem;
        border-top-right-radius: 0; }
      .list-group-horizontal-xxl .list-group-item:last-child {
        margin-right: 0;
        border-top-right-radius: 0.25rem;
        border-bottom-right-radius: 0.25rem;
        border-bottom-left-radius: 0; } }

@media (min-width: 1920px) {
  .list-group-horizontal-xxxl {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
    .list-group-horizontal-xxxl .list-group-item {
      margin-right: -1px;
      margin-bottom: 0; }
      .list-group-horizontal-xxxl .list-group-item:first-child {
        border-top-left-radius: 0.25rem;
        border-bottom-left-radius: 0.25rem;
        border-top-right-radius: 0; }
      .list-group-horizontal-xxxl .list-group-item:last-child {
        margin-right: 0;
        border-top-right-radius: 0.25rem;
        border-bottom-right-radius: 0.25rem;
        border-bottom-left-radius: 0; } }

.list-group-flush .list-group-item {
  border-right: 0;
  border-left: 0;
  border-radius: 0; }
  .list-group-flush .list-group-item:last-child {
    margin-bottom: -1px; }

.list-group-flush:first-child .list-group-item:first-child {
  border-top: 0; }

.list-group-flush:last-child .list-group-item:last-child {
  margin-bottom: 0;
  border-bottom: 0; }

.list-group-item-primary {
  color: black;
  background-color: #b8b8b8; }
  .list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {
    color: black;
    background-color: #ababab; }
  .list-group-item-primary.list-group-item-action.active {
    color: #fff;
    background-color: black;
    border-color: black; }

.list-group-item-secondary {
  color: #383d41;
  background-color: #d6d8db; }
  .list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {
    color: #383d41;
    background-color: #c8cbcf; }
  .list-group-item-secondary.list-group-item-action.active {
    color: #fff;
    background-color: #383d41;
    border-color: #383d41; }

.list-group-item-success {
  color: #155724;
  background-color: #c3e6cb; }
  .list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {
    color: #155724;
    background-color: #b1dfbb; }
  .list-group-item-success.list-group-item-action.active {
    color: #fff;
    background-color: #155724;
    border-color: #155724; }

.list-group-item-info {
  color: #0c5460;
  background-color: #bee5eb; }
  .list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {
    color: #0c5460;
    background-color: #abdde5; }
  .list-group-item-info.list-group-item-action.active {
    color: #fff;
    background-color: #0c5460;
    border-color: #0c5460; }

.list-group-item-warning {
  color: #856404;
  background-color: #ffeeba; }
  .list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {
    color: #856404;
    background-color: #ffe8a1; }
  .list-group-item-warning.list-group-item-action.active {
    color: #fff;
    background-color: #856404;
    border-color: #856404; }

.list-group-item-danger {
  color: #721c24;
  background-color: #f5c6cb; }
  .list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {
    color: #721c24;
    background-color: #f1b0b7; }
  .list-group-item-danger.list-group-item-action.active {
    color: #fff;
    background-color: #721c24;
    border-color: #721c24; }

.list-group-item-light {
  color: #818182;
  background-color: #fdfdfe; }
  .list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {
    color: #818182;
    background-color: #ececf6; }
  .list-group-item-light.list-group-item-action.active {
    color: #fff;
    background-color: #818182;
    border-color: #818182; }

.list-group-item-dark {
  color: #1b1e21;
  background-color: #c6c8ca; }
  .list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {
    color: #1b1e21;
    background-color: #b9bbbe; }
  .list-group-item-dark.list-group-item-action.active {
    color: #fff;
    background-color: #1b1e21;
    border-color: #1b1e21; }

.list-group-item-gray {
  color: #1b1b1b;
  background-color: #c6c6c6; }
  .list-group-item-gray.list-group-item-action:hover, .list-group-item-gray.list-group-item-action:focus {
    color: #1b1b1b;
    background-color: #b9b9b9; }
  .list-group-item-gray.list-group-item-action.active {
    color: #fff;
    background-color: #1b1b1b;
    border-color: #1b1b1b; }

.list-group-item-red {
  color: #701d20;
  background-color: #f4c7c9; }
  .list-group-item-red.list-group-item-action:hover, .list-group-item-red.list-group-item-action:focus {
    color: #701d20;
    background-color: #f0b2b4; }
  .list-group-item-red.list-group-item-action.active {
    color: #fff;
    background-color: #701d20;
    border-color: #701d20; }

.list-group-item-green {
  color: #235c2a;
  background-color: #cbe9ce; }
  .list-group-item-green.list-group-item-action:hover, .list-group-item-green.list-group-item-action:focus {
    color: #235c2a;
    background-color: #b9e1bd; }
  .list-group-item-green.list-group-item-action.active {
    color: #fff;
    background-color: #235c2a;
    border-color: #235c2a; }

.list-group-item-yellow {
  color: #7f5612;
  background-color: #fce6c1; }
  .list-group-item-yellow.list-group-item-action:hover, .list-group-item-yellow.list-group-item-action:focus {
    color: #7f5612;
    background-color: #fbdca9; }
  .list-group-item-yellow.list-group-item-action.active {
    color: #fff;
    background-color: #7f5612;
    border-color: #7f5612; }

.close {
  float: right;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: .5; }
  .close:hover {
    color: #000;
    text-decoration: none; }
  .close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus {
    opacity: .75; }

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

a.close.disabled {
  pointer-events: none; }

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

.modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  display: none;
  width: 100%;
  height: 100%;
  overflow: hidden;
  outline: 0; }

.modal-dialog {
  position: relative;
  width: auto;
  margin: 0;
  pointer-events: none; }
  .modal.fade .modal-dialog {
    -webkit-transition: -webkit-transform 0.3s ease-out;
    transition: -webkit-transform 0.3s ease-out;
    transition: transform 0.3s ease-out;
    transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
    -webkit-transform: translate(0, -50px);
            transform: translate(0, -50px); }
    @media (prefers-reduced-motion: reduce) {
      .modal.fade .modal-dialog {
        -webkit-transition: none;
        transition: none; } }
  .modal.show .modal-dialog {
    -webkit-transform: none;
            transform: none; }

.modal-dialog-scrollable {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-height: calc(100% - 0); }
  .modal-dialog-scrollable .modal-content {
    max-height: calc(100vh - 0);
    overflow: hidden; }
  .modal-dialog-scrollable .modal-header,
  .modal-dialog-scrollable .modal-footer {
    -ms-flex-negative: 0;
        flex-shrink: 0; }
  .modal-dialog-scrollable .modal-body {
    overflow-y: auto; }

.modal-dialog-centered {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: calc(100% - 0); }
  .modal-dialog-centered::before {
    display: block;
    height: calc(100vh - 0);
    content: ""; }
  .modal-dialog-centered.modal-dialog-scrollable {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 100%; }
    .modal-dialog-centered.modal-dialog-scrollable .modal-content {
      max-height: none; }
    .modal-dialog-centered.modal-dialog-scrollable::before {
      content: none; }

.modal-content {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-color: #000;
  background-clip: padding-box;
  border: 0 solid rgba(0, 0, 0, 0.2);
  border-radius: 0;
  outline: 0; }

.modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100vw;
  height: 100vh;
  background-color: #000; }
  .modal-backdrop.fade {
    opacity: 0; }
  .modal-backdrop.show {
    opacity: 0.8; }

.modal-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 1rem 0;
  border-bottom: 0 solid #dee2e6;
  border-top-left-radius: 0;
  border-top-right-radius: 0; }
  .modal-header .close {
    padding: 1rem 0;
    margin: -1rem -1rem -1rem auto; }

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

.modal-body {
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  padding: 1rem 0; }

.modal-footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding: 1rem 0;
  border-top: 0 solid #dee2e6;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0; }
  .modal-footer > :not(:first-child) {
    margin-left: .25rem; }
  .modal-footer > :not(:last-child) {
    margin-right: .25rem; }

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

@media (min-width: 576px) {
  .modal-dialog {
    max-width: none;
    margin: 0 auto; }
  .modal-dialog-scrollable {
    max-height: calc(100% - 0); }
    .modal-dialog-scrollable .modal-content {
      max-height: calc(100vh - 0); }
  .modal-dialog-centered {
    min-height: calc(100% - 0); }
    .modal-dialog-centered::before {
      height: calc(100vh - 0); }
  .modal-sm {
    max-width: 48rem; } }

@media (min-width: 1024px) {
  .modal-lg,
  .modal-xl {
    max-width: 67.6rem; } }

@media (min-width: 1200px) {
  .modal-xl {
    max-width: 1140px; } }

.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  margin: 0;
  font-family: Klein, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-style: normal;
  font-weight: 400;
  line-height: 1.6;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  opacity: 0; }
  .tooltip.show {
    opacity: 1; }
  .tooltip .arrow {
    position: absolute;
    display: block;
    width: 0.8rem;
    height: 0.4rem; }
    .tooltip .arrow::before {
      position: absolute;
      content: "";
      border-color: transparent;
      border-style: solid; }

.bs-tooltip-top, .bs-tooltip-auto[x-placement^="top"] {
  padding: 0.4rem 0; }
  .bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^="top"] .arrow {
    bottom: 0; }
    .bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^="top"] .arrow::before {
      top: 0;
      border-width: 0.4rem 0.4rem 0;
      border-top-color: #000; }

.bs-tooltip-right, .bs-tooltip-auto[x-placement^="right"] {
  padding: 0 0.4rem; }
  .bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^="right"] .arrow {
    left: 0;
    width: 0.4rem;
    height: 0.8rem; }
    .bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^="right"] .arrow::before {
      right: 0;
      border-width: 0.4rem 0.4rem 0.4rem 0;
      border-right-color: #000; }

.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^="bottom"] {
  padding: 0.4rem 0; }
  .bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^="bottom"] .arrow {
    top: 0; }
    .bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
      bottom: 0;
      border-width: 0 0.4rem 0.4rem;
      border-bottom-color: #000; }

.bs-tooltip-left, .bs-tooltip-auto[x-placement^="left"] {
  padding: 0 0.4rem; }
  .bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^="left"] .arrow {
    right: 0;
    width: 0.4rem;
    height: 0.8rem; }
    .bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^="left"] .arrow::before {
      left: 0;
      border-width: 0.4rem 0 0.4rem 0.4rem;
      border-left-color: #000; }

.tooltip-inner {
  max-width: 26rem;
  padding: 1.3rem 1.3rem;
  color: #000;
  text-align: center;
  background-color: #fff;
  border-radius: 0.3rem; }

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: block;
  max-width: 276px;
  font-family: Klein, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-style: normal;
  font-weight: 400;
  line-height: 1.6;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem; }
  .popover .arrow {
    position: absolute;
    display: block;
    width: 1rem;
    height: 0.5rem;
    margin: 0 0.3rem; }
    .popover .arrow::before, .popover .arrow::after {
      position: absolute;
      display: block;
      content: "";
      border-color: transparent;
      border-style: solid; }

.bs-popover-top, .bs-popover-auto[x-placement^="top"] {
  margin-bottom: 0.5rem; }
  .bs-popover-top > .arrow, .bs-popover-auto[x-placement^="top"] > .arrow {
    bottom: calc((0.5rem + 1px) * -1); }
    .bs-popover-top > .arrow::before, .bs-popover-auto[x-placement^="top"] > .arrow::before {
      bottom: 0;
      border-width: 0.5rem 0.5rem 0;
      border-top-color: rgba(0, 0, 0, 0.25); }
    .bs-popover-top > .arrow::after, .bs-popover-auto[x-placement^="top"] > .arrow::after {
      bottom: 1px;
      border-width: 0.5rem 0.5rem 0;
      border-top-color: #fff; }

.bs-popover-right, .bs-popover-auto[x-placement^="right"] {
  margin-left: 0.5rem; }
  .bs-popover-right > .arrow, .bs-popover-auto[x-placement^="right"] > .arrow {
    left: calc((0.5rem + 1px) * -1);
    width: 0.5rem;
    height: 1rem;
    margin: 0.3rem 0; }
    .bs-popover-right > .arrow::before, .bs-popover-auto[x-placement^="right"] > .arrow::before {
      left: 0;
      border-width: 0.5rem 0.5rem 0.5rem 0;
      border-right-color: rgba(0, 0, 0, 0.25); }
    .bs-popover-right > .arrow::after, .bs-popover-auto[x-placement^="right"] > .arrow::after {
      left: 1px;
      border-width: 0.5rem 0.5rem 0.5rem 0;
      border-right-color: #fff; }

.bs-popover-bottom, .bs-popover-auto[x-placement^="bottom"] {
  margin-top: 0.5rem; }
  .bs-popover-bottom > .arrow, .bs-popover-auto[x-placement^="bottom"] > .arrow {
    top: calc((0.5rem + 1px) * -1); }
    .bs-popover-bottom > .arrow::before, .bs-popover-auto[x-placement^="bottom"] > .arrow::before {
      top: 0;
      border-width: 0 0.5rem 0.5rem 0.5rem;
      border-bottom-color: rgba(0, 0, 0, 0.25); }
    .bs-popover-bottom > .arrow::after, .bs-popover-auto[x-placement^="bottom"] > .arrow::after {
      top: 1px;
      border-width: 0 0.5rem 0.5rem 0.5rem;
      border-bottom-color: #fff; }
  .bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^="bottom"] .popover-header::before {
    position: absolute;
    top: 0;
    left: 50%;
    display: block;
    width: 1rem;
    margin-left: -0.5rem;
    content: "";
    border-bottom: 1px solid #f7f7f7; }

.bs-popover-left, .bs-popover-auto[x-placement^="left"] {
  margin-right: 0.5rem; }
  .bs-popover-left > .arrow, .bs-popover-auto[x-placement^="left"] > .arrow {
    right: calc((0.5rem + 1px) * -1);
    width: 0.5rem;
    height: 1rem;
    margin: 0.3rem 0; }
    .bs-popover-left > .arrow::before, .bs-popover-auto[x-placement^="left"] > .arrow::before {
      right: 0;
      border-width: 0.5rem 0 0.5rem 0.5rem;
      border-left-color: rgba(0, 0, 0, 0.25); }
    .bs-popover-left > .arrow::after, .bs-popover-auto[x-placement^="left"] > .arrow::after {
      right: 1px;
      border-width: 0.5rem 0 0.5rem 0.5rem;
      border-left-color: #fff; }

.popover-header {
  padding: 0.5rem 0.75rem;
  margin-bottom: 0;
  font-size: 1.4rem;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px); }
  .popover-header:empty {
    display: none; }

.popover-body {
  padding: 0.5rem 0.75rem;
  color: #212529; }

.carousel {
  position: relative; }

.carousel.pointer-event {
  -ms-touch-action: pan-y;
      touch-action: pan-y; }

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden; }
  .carousel-inner::after {
    display: block;
    clear: both;
    content: ""; }

.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transition: -webkit-transform 0.6s ease-in-out;
  transition: -webkit-transform 0.6s ease-in-out;
  transition: transform 0.6s ease-in-out;
  transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out; }
  @media (prefers-reduced-motion: reduce) {
    .carousel-item {
      -webkit-transition: none;
      transition: none; } }

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
  display: block; }

.carousel-item-next:not(.carousel-item-left),
.active.carousel-item-right {
  -webkit-transform: translateX(100%);
          transform: translateX(100%); }

.carousel-item-prev:not(.carousel-item-right),
.active.carousel-item-left {
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%); }

.carousel-fade .carousel-item {
  opacity: 0;
  -webkit-transition-property: opacity;
  transition-property: opacity;
  -webkit-transform: none;
          transform: none; }

.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-left,
.carousel-fade .carousel-item-prev.carousel-item-right {
  z-index: 1;
  opacity: 1; }

.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
  z-index: 0;
  opacity: 0;
  -webkit-transition: 0s 0.6s opacity;
  transition: 0s 0.6s opacity; }
  @media (prefers-reduced-motion: reduce) {
    .carousel-fade .active.carousel-item-left,
    .carousel-fade .active.carousel-item-right {
      -webkit-transition: none;
      transition: none; } }

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 15%;
  color: #fff;
  text-align: center;
  opacity: 0.5;
  -webkit-transition: opacity 0.15s ease;
  transition: opacity 0.15s ease; }
  @media (prefers-reduced-motion: reduce) {
    .carousel-control-prev,
    .carousel-control-next {
      -webkit-transition: none;
      transition: none; } }
  .carousel-control-prev:hover, .carousel-control-prev:focus,
  .carousel-control-next:hover,
  .carousel-control-next:focus {
    color: #fff;
    text-decoration: none;
    outline: 0;
    opacity: 0.9; }

.carousel-control-prev {
  left: 0; }

.carousel-control-next {
  right: 0; }

.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  background: no-repeat 50% / 100% 100%; }

.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3e%3c/svg%3e"); }

.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3e%3c/svg%3e"); }

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 15;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-left: 0;
  margin-right: 15%;
  margin-left: 15%;
  list-style: none; }
  .carousel-indicators li {
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
    width: 30px;
    height: 3px;
    margin-right: 3px;
    margin-left: 3px;
    text-indent: -999px;
    cursor: pointer;
    background-color: #fff;
    background-clip: padding-box;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    opacity: .5;
    -webkit-transition: opacity 0.6s ease;
    transition: opacity 0.6s ease; }
    @media (prefers-reduced-motion: reduce) {
      .carousel-indicators li {
        -webkit-transition: none;
        transition: none; } }
  .carousel-indicators .active {
    opacity: 1; }

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center; }

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

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

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

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

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

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

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

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

.bg-secondary {
  background-color: #6c757d !important; }

a.bg-secondary:hover, a.bg-secondary:focus,
button.bg-secondary:hover,
button.bg-secondary:focus {
  background-color: #545b62 !important; }

.bg-success {
  background-color: #28a745 !important; }

a.bg-success:hover, a.bg-success:focus,
button.bg-success:hover,
button.bg-success:focus {
  background-color: #1e7e34 !important; }

.bg-info {
  background-color: #17a2b8 !important; }

a.bg-info:hover, a.bg-info:focus,
button.bg-info:hover,
button.bg-info:focus {
  background-color: #117a8b !important; }

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

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

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

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

.bg-light {
  background-color: #f8f9fa !important; }

a.bg-light:hover, a.bg-light:focus,
button.bg-light:hover,
button.bg-light:focus {
  background-color: #dae0e5 !important; }

.bg-dark {
  background-color: #343a40 !important; }

a.bg-dark:hover, a.bg-dark:focus,
button.bg-dark:hover,
button.bg-dark:focus {
  background-color: #1d2124 !important; }

.bg-gray {
  background-color: #333 !important; }

a.bg-gray:hover, a.bg-gray:focus,
button.bg-gray:hover,
button.bg-gray:focus {
  background-color: #1a1a1a !important; }

.bg-red {
  background-color: #d7373d !important; }

a.bg-red:hover, a.bg-red:focus,
button.bg-red:hover,
button.bg-red:focus {
  background-color: #b7252a !important; }

.bg-green {
  background-color: #44b151 !important; }

a.bg-green:hover, a.bg-green:focus,
button.bg-green:hover,
button.bg-green:focus {
  background-color: #368c40 !important; }

.bg-yellow {
  background-color: #f5a623 !important; }

a.bg-yellow:hover, a.bg-yellow:focus,
button.bg-yellow:hover,
button.bg-yellow:focus {
  background-color: #db8c0a !important; }

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

.bg-transparent {
  background-color: transparent !important; }

.border {
  border: 1px solid #dee2e6 !important; }

.border-top {
  border-top: 1px solid #dee2e6 !important; }

.border-right {
  border-right: 1px solid #dee2e6 !important; }

.border-bottom {
  border-bottom: 1px solid #dee2e6 !important; }

.border-left {
  border-left: 1px solid #dee2e6 !important; }

.border-0 {
  border: 0 !important; }

.border-top-0 {
  border-top: 0 !important; }

.border-right-0 {
  border-right: 0 !important; }

.border-bottom-0 {
  border-bottom: 0 !important; }

.border-left-0 {
  border-left: 0 !important; }

.border-primary {
  border-color: #000 !important; }

.border-secondary {
  border-color: #6c757d !important; }

.border-success {
  border-color: #28a745 !important; }

.border-info {
  border-color: #17a2b8 !important; }

.border-warning {
  border-color: #ffc107 !important; }

.border-danger {
  border-color: #dc3545 !important; }

.border-light {
  border-color: #f8f9fa !important; }

.border-dark {
  border-color: #343a40 !important; }

.border-gray {
  border-color: #333 !important; }

.border-red {
  border-color: #d7373d !important; }

.border-green {
  border-color: #44b151 !important; }

.border-yellow {
  border-color: #f5a623 !important; }

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

.rounded-sm {
  border-radius: 0.2rem !important; }

.rounded {
  border-radius: 0.25rem !important; }

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

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

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

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

.rounded-lg {
  border-radius: 0.3rem !important; }

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

.rounded-pill {
  border-radius: 50rem !important; }

.rounded-0 {
  border-radius: 0 !important; }

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

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

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

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

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

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

.d-table-row {
  display: table-row !important; }

.d-table-cell {
  display: table-cell !important; }

.d-flex {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important; }

.d-inline-flex {
  display: -webkit-inline-box !important;
  display: -ms-inline-flexbox !important;
  display: inline-flex !important; }

@media (min-width: 375px) {
  .d-xs-none {
    display: none !important; }
  .d-xs-inline {
    display: inline !important; }
  .d-xs-inline-block {
    display: inline-block !important; }
  .d-xs-block {
    display: block !important; }
  .d-xs-table {
    display: table !important; }
  .d-xs-table-row {
    display: table-row !important; }
  .d-xs-table-cell {
    display: table-cell !important; }
  .d-xs-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important; }
  .d-xs-inline-flex {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important; } }

@media (min-width: 576px) {
  .d-sm-none {
    display: none !important; }
  .d-sm-inline {
    display: inline !important; }
  .d-sm-inline-block {
    display: inline-block !important; }
  .d-sm-block {
    display: block !important; }
  .d-sm-table {
    display: table !important; }
  .d-sm-table-row {
    display: table-row !important; }
  .d-sm-table-cell {
    display: table-cell !important; }
  .d-sm-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important; }
  .d-sm-inline-flex {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important; } }

@media (min-width: 768px) {
  .d-md-none {
    display: none !important; }
  .d-md-inline {
    display: inline !important; }
  .d-md-inline-block {
    display: inline-block !important; }
  .d-md-block {
    display: block !important; }
  .d-md-table {
    display: table !important; }
  .d-md-table-row {
    display: table-row !important; }
  .d-md-table-cell {
    display: table-cell !important; }
  .d-md-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important; }
  .d-md-inline-flex {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important; } }

@media (min-width: 1024px) {
  .d-lg-none {
    display: none !important; }
  .d-lg-inline {
    display: inline !important; }
  .d-lg-inline-block {
    display: inline-block !important; }
  .d-lg-block {
    display: block !important; }
  .d-lg-table {
    display: table !important; }
  .d-lg-table-row {
    display: table-row !important; }
  .d-lg-table-cell {
    display: table-cell !important; }
  .d-lg-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important; }
  .d-lg-inline-flex {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important; } }

@media (min-width: 1200px) {
  .d-xl-none {
    display: none !important; }
  .d-xl-inline {
    display: inline !important; }
  .d-xl-inline-block {
    display: inline-block !important; }
  .d-xl-block {
    display: block !important; }
  .d-xl-table {
    display: table !important; }
  .d-xl-table-row {
    display: table-row !important; }
  .d-xl-table-cell {
    display: table-cell !important; }
  .d-xl-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important; }
  .d-xl-inline-flex {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important; } }

@media (min-width: 1440px) {
  .d-xxl-none {
    display: none !important; }
  .d-xxl-inline {
    display: inline !important; }
  .d-xxl-inline-block {
    display: inline-block !important; }
  .d-xxl-block {
    display: block !important; }
  .d-xxl-table {
    display: table !important; }
  .d-xxl-table-row {
    display: table-row !important; }
  .d-xxl-table-cell {
    display: table-cell !important; }
  .d-xxl-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important; }
  .d-xxl-inline-flex {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important; } }

@media (min-width: 1920px) {
  .d-xxxl-none {
    display: none !important; }
  .d-xxxl-inline {
    display: inline !important; }
  .d-xxxl-inline-block {
    display: inline-block !important; }
  .d-xxxl-block {
    display: block !important; }
  .d-xxxl-table {
    display: table !important; }
  .d-xxxl-table-row {
    display: table-row !important; }
  .d-xxxl-table-cell {
    display: table-cell !important; }
  .d-xxxl-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important; }
  .d-xxxl-inline-flex {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important; } }

@media print {
  .d-print-none {
    display: none !important; }
  .d-print-inline {
    display: inline !important; }
  .d-print-inline-block {
    display: inline-block !important; }
  .d-print-block {
    display: block !important; }
  .d-print-table {
    display: table !important; }
  .d-print-table-row {
    display: table-row !important; }
  .d-print-table-cell {
    display: table-cell !important; }
  .d-print-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important; }
  .d-print-inline-flex {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important; } }

.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden; }
  .embed-responsive::before {
    display: block;
    content: ""; }
  .embed-responsive .embed-responsive-item,
  .embed-responsive iframe,
  .embed-responsive embed,
  .embed-responsive object,
  .embed-responsive video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0; }

.embed-responsive-21by9::before {
  padding-top: 42.85714%; }

.embed-responsive-16by9::before {
  padding-top: 56.25%; }

.embed-responsive-4by3::before {
  padding-top: 75%; }

.embed-responsive-1by1::before {
  padding-top: 100%; }

.flex-row {
  -webkit-box-orient: horizontal !important;
  -webkit-box-direction: normal !important;
      -ms-flex-direction: row !important;
          flex-direction: row !important; }

.flex-column {
  -webkit-box-orient: vertical !important;
  -webkit-box-direction: normal !important;
      -ms-flex-direction: column !important;
          flex-direction: column !important; }

.flex-row-reverse {
  -webkit-box-orient: horizontal !important;
  -webkit-box-direction: reverse !important;
      -ms-flex-direction: row-reverse !important;
          flex-direction: row-reverse !important; }

.flex-column-reverse {
  -webkit-box-orient: vertical !important;
  -webkit-box-direction: reverse !important;
      -ms-flex-direction: column-reverse !important;
          flex-direction: column-reverse !important; }

.flex-wrap {
  -ms-flex-wrap: wrap !important;
      flex-wrap: wrap !important; }

.flex-nowrap {
  -ms-flex-wrap: nowrap !important;
      flex-wrap: nowrap !important; }

.flex-wrap-reverse {
  -ms-flex-wrap: wrap-reverse !important;
      flex-wrap: wrap-reverse !important; }

.flex-fill {
  -webkit-box-flex: 1 !important;
      -ms-flex: 1 1 auto !important;
          flex: 1 1 auto !important; }

.flex-grow-0 {
  -webkit-box-flex: 0 !important;
      -ms-flex-positive: 0 !important;
          flex-grow: 0 !important; }

.flex-grow-1 {
  -webkit-box-flex: 1 !important;
      -ms-flex-positive: 1 !important;
          flex-grow: 1 !important; }

.flex-shrink-0 {
  -ms-flex-negative: 0 !important;
      flex-shrink: 0 !important; }

.flex-shrink-1 {
  -ms-flex-negative: 1 !important;
      flex-shrink: 1 !important; }

.justify-content-start {
  -webkit-box-pack: start !important;
      -ms-flex-pack: start !important;
          justify-content: flex-start !important; }

.justify-content-end {
  -webkit-box-pack: end !important;
      -ms-flex-pack: end !important;
          justify-content: flex-end !important; }

.justify-content-center {
  -webkit-box-pack: center !important;
      -ms-flex-pack: center !important;
          justify-content: center !important; }

.justify-content-between {
  -webkit-box-pack: justify !important;
      -ms-flex-pack: justify !important;
          justify-content: space-between !important; }

.justify-content-around {
  -ms-flex-pack: distribute !important;
      justify-content: space-around !important; }

.align-items-start {
  -webkit-box-align: start !important;
      -ms-flex-align: start !important;
          align-items: flex-start !important; }

.align-items-end {
  -webkit-box-align: end !important;
      -ms-flex-align: end !important;
          align-items: flex-end !important; }

.align-items-center {
  -webkit-box-align: center !important;
      -ms-flex-align: center !important;
          align-items: center !important; }

.align-items-baseline {
  -webkit-box-align: baseline !important;
      -ms-flex-align: baseline !important;
          align-items: baseline !important; }

.align-items-stretch {
  -webkit-box-align: stretch !important;
      -ms-flex-align: stretch !important;
          align-items: stretch !important; }

.align-content-start {
  -ms-flex-line-pack: start !important;
      align-content: flex-start !important; }

.align-content-end {
  -ms-flex-line-pack: end !important;
      align-content: flex-end !important; }

.align-content-center {
  -ms-flex-line-pack: center !important;
      align-content: center !important; }

.align-content-between {
  -ms-flex-line-pack: justify !important;
      align-content: space-between !important; }

.align-content-around {
  -ms-flex-line-pack: distribute !important;
      align-content: space-around !important; }

.align-content-stretch {
  -ms-flex-line-pack: stretch !important;
      align-content: stretch !important; }

.align-self-auto {
  -ms-flex-item-align: auto !important;
      -ms-grid-row-align: auto !important;
      align-self: auto !important; }

.align-self-start {
  -ms-flex-item-align: start !important;
      align-self: flex-start !important; }

.align-self-end {
  -ms-flex-item-align: end !important;
      align-self: flex-end !important; }

.align-self-center {
  -ms-flex-item-align: center !important;
      -ms-grid-row-align: center !important;
      align-self: center !important; }

.align-self-baseline {
  -ms-flex-item-align: baseline !important;
      align-self: baseline !important; }

.align-self-stretch {
  -ms-flex-item-align: stretch !important;
      -ms-grid-row-align: stretch !important;
      align-self: stretch !important; }

@media (min-width: 375px) {
  .flex-xs-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
            flex-direction: row !important; }
  .flex-xs-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important; }
  .flex-xs-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important; }
  .flex-xs-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-reverse !important;
            flex-direction: column-reverse !important; }
  .flex-xs-wrap {
    -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important; }
  .flex-xs-nowrap {
    -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important; }
  .flex-xs-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important; }
  .flex-xs-fill {
    -webkit-box-flex: 1 !important;
        -ms-flex: 1 1 auto !important;
            flex: 1 1 auto !important; }
  .flex-xs-grow-0 {
    -webkit-box-flex: 0 !important;
        -ms-flex-positive: 0 !important;
            flex-grow: 0 !important; }
  .flex-xs-grow-1 {
    -webkit-box-flex: 1 !important;
        -ms-flex-positive: 1 !important;
            flex-grow: 1 !important; }
  .flex-xs-shrink-0 {
    -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important; }
  .flex-xs-shrink-1 {
    -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important; }
  .justify-content-xs-start {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important; }
  .justify-content-xs-end {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important; }
  .justify-content-xs-center {
    -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important; }
  .justify-content-xs-between {
    -webkit-box-pack: justify !important;
        -ms-flex-pack: justify !important;
            justify-content: space-between !important; }
  .justify-content-xs-around {
    -ms-flex-pack: distribute !important;
        justify-content: space-around !important; }
  .align-items-xs-start {
    -webkit-box-align: start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important; }
  .align-items-xs-end {
    -webkit-box-align: end !important;
        -ms-flex-align: end !important;
            align-items: flex-end !important; }
  .align-items-xs-center {
    -webkit-box-align: center !important;
        -ms-flex-align: center !important;
            align-items: center !important; }
  .align-items-xs-baseline {
    -webkit-box-align: baseline !important;
        -ms-flex-align: baseline !important;
            align-items: baseline !important; }
  .align-items-xs-stretch {
    -webkit-box-align: stretch !important;
        -ms-flex-align: stretch !important;
            align-items: stretch !important; }
  .align-content-xs-start {
    -ms-flex-line-pack: start !important;
        align-content: flex-start !important; }
  .align-content-xs-end {
    -ms-flex-line-pack: end !important;
        align-content: flex-end !important; }
  .align-content-xs-center {
    -ms-flex-line-pack: center !important;
        align-content: center !important; }
  .align-content-xs-between {
    -ms-flex-line-pack: justify !important;
        align-content: space-between !important; }
  .align-content-xs-around {
    -ms-flex-line-pack: distribute !important;
        align-content: space-around !important; }
  .align-content-xs-stretch {
    -ms-flex-line-pack: stretch !important;
        align-content: stretch !important; }
  .align-self-xs-auto {
    -ms-flex-item-align: auto !important;
        -ms-grid-row-align: auto !important;
        align-self: auto !important; }
  .align-self-xs-start {
    -ms-flex-item-align: start !important;
        align-self: flex-start !important; }
  .align-self-xs-end {
    -ms-flex-item-align: end !important;
        align-self: flex-end !important; }
  .align-self-xs-center {
    -ms-flex-item-align: center !important;
        -ms-grid-row-align: center !important;
        align-self: center !important; }
  .align-self-xs-baseline {
    -ms-flex-item-align: baseline !important;
        align-self: baseline !important; }
  .align-self-xs-stretch {
    -ms-flex-item-align: stretch !important;
        -ms-grid-row-align: stretch !important;
        align-self: stretch !important; } }

@media (min-width: 576px) {
  .flex-sm-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
            flex-direction: row !important; }
  .flex-sm-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important; }
  .flex-sm-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important; }
  .flex-sm-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-reverse !important;
            flex-direction: column-reverse !important; }
  .flex-sm-wrap {
    -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important; }
  .flex-sm-nowrap {
    -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important; }
  .flex-sm-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important; }
  .flex-sm-fill {
    -webkit-box-flex: 1 !important;
        -ms-flex: 1 1 auto !important;
            flex: 1 1 auto !important; }
  .flex-sm-grow-0 {
    -webkit-box-flex: 0 !important;
        -ms-flex-positive: 0 !important;
            flex-grow: 0 !important; }
  .flex-sm-grow-1 {
    -webkit-box-flex: 1 !important;
        -ms-flex-positive: 1 !important;
            flex-grow: 1 !important; }
  .flex-sm-shrink-0 {
    -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important; }
  .flex-sm-shrink-1 {
    -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important; }
  .justify-content-sm-start {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important; }
  .justify-content-sm-end {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important; }
  .justify-content-sm-center {
    -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important; }
  .justify-content-sm-between {
    -webkit-box-pack: justify !important;
        -ms-flex-pack: justify !important;
            justify-content: space-between !important; }
  .justify-content-sm-around {
    -ms-flex-pack: distribute !important;
        justify-content: space-around !important; }
  .align-items-sm-start {
    -webkit-box-align: start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important; }
  .align-items-sm-end {
    -webkit-box-align: end !important;
        -ms-flex-align: end !important;
            align-items: flex-end !important; }
  .align-items-sm-center {
    -webkit-box-align: center !important;
        -ms-flex-align: center !important;
            align-items: center !important; }
  .align-items-sm-baseline {
    -webkit-box-align: baseline !important;
        -ms-flex-align: baseline !important;
            align-items: baseline !important; }
  .align-items-sm-stretch {
    -webkit-box-align: stretch !important;
        -ms-flex-align: stretch !important;
            align-items: stretch !important; }
  .align-content-sm-start {
    -ms-flex-line-pack: start !important;
        align-content: flex-start !important; }
  .align-content-sm-end {
    -ms-flex-line-pack: end !important;
        align-content: flex-end !important; }
  .align-content-sm-center {
    -ms-flex-line-pack: center !important;
        align-content: center !important; }
  .align-content-sm-between {
    -ms-flex-line-pack: justify !important;
        align-content: space-between !important; }
  .align-content-sm-around {
    -ms-flex-line-pack: distribute !important;
        align-content: space-around !important; }
  .align-content-sm-stretch {
    -ms-flex-line-pack: stretch !important;
        align-content: stretch !important; }
  .align-self-sm-auto {
    -ms-flex-item-align: auto !important;
        -ms-grid-row-align: auto !important;
        align-self: auto !important; }
  .align-self-sm-start {
    -ms-flex-item-align: start !important;
        align-self: flex-start !important; }
  .align-self-sm-end {
    -ms-flex-item-align: end !important;
        align-self: flex-end !important; }
  .align-self-sm-center {
    -ms-flex-item-align: center !important;
        -ms-grid-row-align: center !important;
        align-self: center !important; }
  .align-self-sm-baseline {
    -ms-flex-item-align: baseline !important;
        align-self: baseline !important; }
  .align-self-sm-stretch {
    -ms-flex-item-align: stretch !important;
        -ms-grid-row-align: stretch !important;
        align-self: stretch !important; } }

@media (min-width: 768px) {
  .flex-md-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
            flex-direction: row !important; }
  .flex-md-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important; }
  .flex-md-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important; }
  .flex-md-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-reverse !important;
            flex-direction: column-reverse !important; }
  .flex-md-wrap {
    -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important; }
  .flex-md-nowrap {
    -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important; }
  .flex-md-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important; }
  .flex-md-fill {
    -webkit-box-flex: 1 !important;
        -ms-flex: 1 1 auto !important;
            flex: 1 1 auto !important; }
  .flex-md-grow-0 {
    -webkit-box-flex: 0 !important;
        -ms-flex-positive: 0 !important;
            flex-grow: 0 !important; }
  .flex-md-grow-1 {
    -webkit-box-flex: 1 !important;
        -ms-flex-positive: 1 !important;
            flex-grow: 1 !important; }
  .flex-md-shrink-0 {
    -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important; }
  .flex-md-shrink-1 {
    -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important; }
  .justify-content-md-start {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important; }
  .justify-content-md-end {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important; }
  .justify-content-md-center {
    -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important; }
  .justify-content-md-between {
    -webkit-box-pack: justify !important;
        -ms-flex-pack: justify !important;
            justify-content: space-between !important; }
  .justify-content-md-around {
    -ms-flex-pack: distribute !important;
        justify-content: space-around !important; }
  .align-items-md-start {
    -webkit-box-align: start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important; }
  .align-items-md-end {
    -webkit-box-align: end !important;
        -ms-flex-align: end !important;
            align-items: flex-end !important; }
  .align-items-md-center {
    -webkit-box-align: center !important;
        -ms-flex-align: center !important;
            align-items: center !important; }
  .align-items-md-baseline {
    -webkit-box-align: baseline !important;
        -ms-flex-align: baseline !important;
            align-items: baseline !important; }
  .align-items-md-stretch {
    -webkit-box-align: stretch !important;
        -ms-flex-align: stretch !important;
            align-items: stretch !important; }
  .align-content-md-start {
    -ms-flex-line-pack: start !important;
        align-content: flex-start !important; }
  .align-content-md-end {
    -ms-flex-line-pack: end !important;
        align-content: flex-end !important; }
  .align-content-md-center {
    -ms-flex-line-pack: center !important;
        align-content: center !important; }
  .align-content-md-between {
    -ms-flex-line-pack: justify !important;
        align-content: space-between !important; }
  .align-content-md-around {
    -ms-flex-line-pack: distribute !important;
        align-content: space-around !important; }
  .align-content-md-stretch {
    -ms-flex-line-pack: stretch !important;
        align-content: stretch !important; }
  .align-self-md-auto {
    -ms-flex-item-align: auto !important;
        -ms-grid-row-align: auto !important;
        align-self: auto !important; }
  .align-self-md-start {
    -ms-flex-item-align: start !important;
        align-self: flex-start !important; }
  .align-self-md-end {
    -ms-flex-item-align: end !important;
        align-self: flex-end !important; }
  .align-self-md-center {
    -ms-flex-item-align: center !important;
        -ms-grid-row-align: center !important;
        align-self: center !important; }
  .align-self-md-baseline {
    -ms-flex-item-align: baseline !important;
        align-self: baseline !important; }
  .align-self-md-stretch {
    -ms-flex-item-align: stretch !important;
        -ms-grid-row-align: stretch !important;
        align-self: stretch !important; } }

@media (min-width: 1024px) {
  .flex-lg-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
            flex-direction: row !important; }
  .flex-lg-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important; }
  .flex-lg-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important; }
  .flex-lg-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-reverse !important;
            flex-direction: column-reverse !important; }
  .flex-lg-wrap {
    -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important; }
  .flex-lg-nowrap {
    -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important; }
  .flex-lg-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important; }
  .flex-lg-fill {
    -webkit-box-flex: 1 !important;
        -ms-flex: 1 1 auto !important;
            flex: 1 1 auto !important; }
  .flex-lg-grow-0 {
    -webkit-box-flex: 0 !important;
        -ms-flex-positive: 0 !important;
            flex-grow: 0 !important; }
  .flex-lg-grow-1 {
    -webkit-box-flex: 1 !important;
        -ms-flex-positive: 1 !important;
            flex-grow: 1 !important; }
  .flex-lg-shrink-0 {
    -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important; }
  .flex-lg-shrink-1 {
    -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important; }
  .justify-content-lg-start {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important; }
  .justify-content-lg-end {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important; }
  .justify-content-lg-center {
    -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important; }
  .justify-content-lg-between {
    -webkit-box-pack: justify !important;
        -ms-flex-pack: justify !important;
            justify-content: space-between !important; }
  .justify-content-lg-around {
    -ms-flex-pack: distribute !important;
        justify-content: space-around !important; }
  .align-items-lg-start {
    -webkit-box-align: start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important; }
  .align-items-lg-end {
    -webkit-box-align: end !important;
        -ms-flex-align: end !important;
            align-items: flex-end !important; }
  .align-items-lg-center {
    -webkit-box-align: center !important;
        -ms-flex-align: center !important;
            align-items: center !important; }
  .align-items-lg-baseline {
    -webkit-box-align: baseline !important;
        -ms-flex-align: baseline !important;
            align-items: baseline !important; }
  .align-items-lg-stretch {
    -webkit-box-align: stretch !important;
        -ms-flex-align: stretch !important;
            align-items: stretch !important; }
  .align-content-lg-start {
    -ms-flex-line-pack: start !important;
        align-content: flex-start !important; }
  .align-content-lg-end {
    -ms-flex-line-pack: end !important;
        align-content: flex-end !important; }
  .align-content-lg-center {
    -ms-flex-line-pack: center !important;
        align-content: center !important; }
  .align-content-lg-between {
    -ms-flex-line-pack: justify !important;
        align-content: space-between !important; }
  .align-content-lg-around {
    -ms-flex-line-pack: distribute !important;
        align-content: space-around !important; }
  .align-content-lg-stretch {
    -ms-flex-line-pack: stretch !important;
        align-content: stretch !important; }
  .align-self-lg-auto {
    -ms-flex-item-align: auto !important;
        -ms-grid-row-align: auto !important;
        align-self: auto !important; }
  .align-self-lg-start {
    -ms-flex-item-align: start !important;
        align-self: flex-start !important; }
  .align-self-lg-end {
    -ms-flex-item-align: end !important;
        align-self: flex-end !important; }
  .align-self-lg-center {
    -ms-flex-item-align: center !important;
        -ms-grid-row-align: center !important;
        align-self: center !important; }
  .align-self-lg-baseline {
    -ms-flex-item-align: baseline !important;
        align-self: baseline !important; }
  .align-self-lg-stretch {
    -ms-flex-item-align: stretch !important;
        -ms-grid-row-align: stretch !important;
        align-self: stretch !important; } }

@media (min-width: 1200px) {
  .flex-xl-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
            flex-direction: row !important; }
  .flex-xl-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important; }
  .flex-xl-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important; }
  .flex-xl-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-reverse !important;
            flex-direction: column-reverse !important; }
  .flex-xl-wrap {
    -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important; }
  .flex-xl-nowrap {
    -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important; }
  .flex-xl-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important; }
  .flex-xl-fill {
    -webkit-box-flex: 1 !important;
        -ms-flex: 1 1 auto !important;
            flex: 1 1 auto !important; }
  .flex-xl-grow-0 {
    -webkit-box-flex: 0 !important;
        -ms-flex-positive: 0 !important;
            flex-grow: 0 !important; }
  .flex-xl-grow-1 {
    -webkit-box-flex: 1 !important;
        -ms-flex-positive: 1 !important;
            flex-grow: 1 !important; }
  .flex-xl-shrink-0 {
    -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important; }
  .flex-xl-shrink-1 {
    -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important; }
  .justify-content-xl-start {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important; }
  .justify-content-xl-end {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important; }
  .justify-content-xl-center {
    -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important; }
  .justify-content-xl-between {
    -webkit-box-pack: justify !important;
        -ms-flex-pack: justify !important;
            justify-content: space-between !important; }
  .justify-content-xl-around {
    -ms-flex-pack: distribute !important;
        justify-content: space-around !important; }
  .align-items-xl-start {
    -webkit-box-align: start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important; }
  .align-items-xl-end {
    -webkit-box-align: end !important;
        -ms-flex-align: end !important;
            align-items: flex-end !important; }
  .align-items-xl-center {
    -webkit-box-align: center !important;
        -ms-flex-align: center !important;
            align-items: center !important; }
  .align-items-xl-baseline {
    -webkit-box-align: baseline !important;
        -ms-flex-align: baseline !important;
            align-items: baseline !important; }
  .align-items-xl-stretch {
    -webkit-box-align: stretch !important;
        -ms-flex-align: stretch !important;
            align-items: stretch !important; }
  .align-content-xl-start {
    -ms-flex-line-pack: start !important;
        align-content: flex-start !important; }
  .align-content-xl-end {
    -ms-flex-line-pack: end !important;
        align-content: flex-end !important; }
  .align-content-xl-center {
    -ms-flex-line-pack: center !important;
        align-content: center !important; }
  .align-content-xl-between {
    -ms-flex-line-pack: justify !important;
        align-content: space-between !important; }
  .align-content-xl-around {
    -ms-flex-line-pack: distribute !important;
        align-content: space-around !important; }
  .align-content-xl-stretch {
    -ms-flex-line-pack: stretch !important;
        align-content: stretch !important; }
  .align-self-xl-auto {
    -ms-flex-item-align: auto !important;
        -ms-grid-row-align: auto !important;
        align-self: auto !important; }
  .align-self-xl-start {
    -ms-flex-item-align: start !important;
        align-self: flex-start !important; }
  .align-self-xl-end {
    -ms-flex-item-align: end !important;
        align-self: flex-end !important; }
  .align-self-xl-center {
    -ms-flex-item-align: center !important;
        -ms-grid-row-align: center !important;
        align-self: center !important; }
  .align-self-xl-baseline {
    -ms-flex-item-align: baseline !important;
        align-self: baseline !important; }
  .align-self-xl-stretch {
    -ms-flex-item-align: stretch !important;
        -ms-grid-row-align: stretch !important;
        align-self: stretch !important; } }

@media (min-width: 1440px) {
  .flex-xxl-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
            flex-direction: row !important; }
  .flex-xxl-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important; }
  .flex-xxl-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important; }
  .flex-xxl-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-reverse !important;
            flex-direction: column-reverse !important; }
  .flex-xxl-wrap {
    -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important; }
  .flex-xxl-nowrap {
    -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important; }
  .flex-xxl-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important; }
  .flex-xxl-fill {
    -webkit-box-flex: 1 !important;
        -ms-flex: 1 1 auto !important;
            flex: 1 1 auto !important; }
  .flex-xxl-grow-0 {
    -webkit-box-flex: 0 !important;
        -ms-flex-positive: 0 !important;
            flex-grow: 0 !important; }
  .flex-xxl-grow-1 {
    -webkit-box-flex: 1 !important;
        -ms-flex-positive: 1 !important;
            flex-grow: 1 !important; }
  .flex-xxl-shrink-0 {
    -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important; }
  .flex-xxl-shrink-1 {
    -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important; }
  .justify-content-xxl-start {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important; }
  .justify-content-xxl-end {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important; }
  .justify-content-xxl-center {
    -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important; }
  .justify-content-xxl-between {
    -webkit-box-pack: justify !important;
        -ms-flex-pack: justify !important;
            justify-content: space-between !important; }
  .justify-content-xxl-around {
    -ms-flex-pack: distribute !important;
        justify-content: space-around !important; }
  .align-items-xxl-start {
    -webkit-box-align: start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important; }
  .align-items-xxl-end {
    -webkit-box-align: end !important;
        -ms-flex-align: end !important;
            align-items: flex-end !important; }
  .align-items-xxl-center {
    -webkit-box-align: center !important;
        -ms-flex-align: center !important;
            align-items: center !important; }
  .align-items-xxl-baseline {
    -webkit-box-align: baseline !important;
        -ms-flex-align: baseline !important;
            align-items: baseline !important; }
  .align-items-xxl-stretch {
    -webkit-box-align: stretch !important;
        -ms-flex-align: stretch !important;
            align-items: stretch !important; }
  .align-content-xxl-start {
    -ms-flex-line-pack: start !important;
        align-content: flex-start !important; }
  .align-content-xxl-end {
    -ms-flex-line-pack: end !important;
        align-content: flex-end !important; }
  .align-content-xxl-center {
    -ms-flex-line-pack: center !important;
        align-content: center !important; }
  .align-content-xxl-between {
    -ms-flex-line-pack: justify !important;
        align-content: space-between !important; }
  .align-content-xxl-around {
    -ms-flex-line-pack: distribute !important;
        align-content: space-around !important; }
  .align-content-xxl-stretch {
    -ms-flex-line-pack: stretch !important;
        align-content: stretch !important; }
  .align-self-xxl-auto {
    -ms-flex-item-align: auto !important;
        -ms-grid-row-align: auto !important;
        align-self: auto !important; }
  .align-self-xxl-start {
    -ms-flex-item-align: start !important;
        align-self: flex-start !important; }
  .align-self-xxl-end {
    -ms-flex-item-align: end !important;
        align-self: flex-end !important; }
  .align-self-xxl-center {
    -ms-flex-item-align: center !important;
        -ms-grid-row-align: center !important;
        align-self: center !important; }
  .align-self-xxl-baseline {
    -ms-flex-item-align: baseline !important;
        align-self: baseline !important; }
  .align-self-xxl-stretch {
    -ms-flex-item-align: stretch !important;
        -ms-grid-row-align: stretch !important;
        align-self: stretch !important; } }

@media (min-width: 1920px) {
  .flex-xxxl-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
            flex-direction: row !important; }
  .flex-xxxl-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important; }
  .flex-xxxl-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important; }
  .flex-xxxl-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-reverse !important;
            flex-direction: column-reverse !important; }
  .flex-xxxl-wrap {
    -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important; }
  .flex-xxxl-nowrap {
    -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important; }
  .flex-xxxl-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important; }
  .flex-xxxl-fill {
    -webkit-box-flex: 1 !important;
        -ms-flex: 1 1 auto !important;
            flex: 1 1 auto !important; }
  .flex-xxxl-grow-0 {
    -webkit-box-flex: 0 !important;
        -ms-flex-positive: 0 !important;
            flex-grow: 0 !important; }
  .flex-xxxl-grow-1 {
    -webkit-box-flex: 1 !important;
        -ms-flex-positive: 1 !important;
            flex-grow: 1 !important; }
  .flex-xxxl-shrink-0 {
    -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important; }
  .flex-xxxl-shrink-1 {
    -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important; }
  .justify-content-xxxl-start {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important; }
  .justify-content-xxxl-end {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important; }
  .justify-content-xxxl-center {
    -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important; }
  .justify-content-xxxl-between {
    -webkit-box-pack: justify !important;
        -ms-flex-pack: justify !important;
            justify-content: space-between !important; }
  .justify-content-xxxl-around {
    -ms-flex-pack: distribute !important;
        justify-content: space-around !important; }
  .align-items-xxxl-start {
    -webkit-box-align: start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important; }
  .align-items-xxxl-end {
    -webkit-box-align: end !important;
        -ms-flex-align: end !important;
            align-items: flex-end !important; }
  .align-items-xxxl-center {
    -webkit-box-align: center !important;
        -ms-flex-align: center !important;
            align-items: center !important; }
  .align-items-xxxl-baseline {
    -webkit-box-align: baseline !important;
        -ms-flex-align: baseline !important;
            align-items: baseline !important; }
  .align-items-xxxl-stretch {
    -webkit-box-align: stretch !important;
        -ms-flex-align: stretch !important;
            align-items: stretch !important; }
  .align-content-xxxl-start {
    -ms-flex-line-pack: start !important;
        align-content: flex-start !important; }
  .align-content-xxxl-end {
    -ms-flex-line-pack: end !important;
        align-content: flex-end !important; }
  .align-content-xxxl-center {
    -ms-flex-line-pack: center !important;
        align-content: center !important; }
  .align-content-xxxl-between {
    -ms-flex-line-pack: justify !important;
        align-content: space-between !important; }
  .align-content-xxxl-around {
    -ms-flex-line-pack: distribute !important;
        align-content: space-around !important; }
  .align-content-xxxl-stretch {
    -ms-flex-line-pack: stretch !important;
        align-content: stretch !important; }
  .align-self-xxxl-auto {
    -ms-flex-item-align: auto !important;
        -ms-grid-row-align: auto !important;
        align-self: auto !important; }
  .align-self-xxxl-start {
    -ms-flex-item-align: start !important;
        align-self: flex-start !important; }
  .align-self-xxxl-end {
    -ms-flex-item-align: end !important;
        align-self: flex-end !important; }
  .align-self-xxxl-center {
    -ms-flex-item-align: center !important;
        -ms-grid-row-align: center !important;
        align-self: center !important; }
  .align-self-xxxl-baseline {
    -ms-flex-item-align: baseline !important;
        align-self: baseline !important; }
  .align-self-xxxl-stretch {
    -ms-flex-item-align: stretch !important;
        -ms-grid-row-align: stretch !important;
        align-self: stretch !important; } }

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

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

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

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

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

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

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

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

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

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

.overflow-auto {
  overflow: auto !important; }

.overflow-hidden {
  overflow: hidden !important; }

.position-static {
  position: static !important; }

.position-relative {
  position: relative !important; }

.position-absolute {
  position: absolute !important; }

.position-fixed {
  position: fixed !important; }

.position-sticky {
  position: sticky !important; }

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

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

@supports (position: sticky) {
  .sticky-top {
    position: sticky;
    top: 0;
    z-index: 1020; } }

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

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

.shadow-sm {
  -webkit-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
          box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important; }

.shadow {
  -webkit-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
          box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important; }

.shadow-lg {
  -webkit-box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
          box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important; }

.shadow-none {
  -webkit-box-shadow: none !important;
          box-shadow: none !important; }

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

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

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

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

.w-auto {
  width: auto !important; }

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

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

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

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

.h-auto {
  height: auto !important; }

.mw-100 {
  max-width: 100% !important; }

.mh-100 {
  max-height: 100% !important; }

.min-vw-100 {
  min-width: 100vw !important; }

.min-vh-100 {
  min-height: 100vh !important; }

.vw-100 {
  width: 100vw !important; }

.vh-100 {
  height: 100vh !important; }

.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: rgba(0, 0, 0, 0); }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.mt-4,
.my-4 {
  margin-top: 4rem !important; }

.mr-4,
.mx-4 {
  margin-right: 4rem !important; }

.mb-4,
.my-4 {
  margin-bottom: 4rem !important; }

.ml-4,
.mx-4 {
  margin-left: 4rem !important; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.pt-4,
.py-4 {
  padding-top: 4rem !important; }

.pr-4,
.px-4 {
  padding-right: 4rem !important; }

.pb-4,
.py-4 {
  padding-bottom: 4rem !important; }

.pl-4,
.px-4 {
  padding-left: 4rem !important; }

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

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

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

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

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

.m-n1 {
  margin: -0.25rem !important; }

.mt-n1,
.my-n1 {
  margin-top: -0.25rem !important; }

.mr-n1,
.mx-n1 {
  margin-right: -0.25rem !important; }

.mb-n1,
.my-n1 {
  margin-bottom: -0.25rem !important; }

.ml-n1,
.mx-n1 {
  margin-left: -0.25rem !important; }

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

.mt-n2,
.my-n2 {
  margin-top: -2rem !important; }

.mr-n2,
.mx-n2 {
  margin-right: -2rem !important; }

.mb-n2,
.my-n2 {
  margin-bottom: -2rem !important; }

.ml-n2,
.mx-n2 {
  margin-left: -2rem !important; }

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

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

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

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

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

.m-n4 {
  margin: -4rem !important; }

.mt-n4,
.my-n4 {
  margin-top: -4rem !important; }

.mr-n4,
.mx-n4 {
  margin-right: -4rem !important; }

.mb-n4,
.my-n4 {
  margin-bottom: -4rem !important; }

.ml-n4,
.mx-n4 {
  margin-left: -4rem !important; }

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

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

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

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

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

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

.mt-auto,
.my-auto {
  margin-top: auto !important; }

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

.mb-auto,
.my-auto {
  margin-bottom: auto !important; }

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

@media (min-width: 375px) {
  .m-xs-0 {
    margin: 0 !important; }
  .mt-xs-0,
  .my-xs-0 {
    margin-top: 0 !important; }
  .mr-xs-0,
  .mx-xs-0 {
    margin-right: 0 !important; }
  .mb-xs-0,
  .my-xs-0 {
    margin-bottom: 0 !important; }
  .ml-xs-0,
  .mx-xs-0 {
    margin-left: 0 !important; }
  .m-xs-1 {
    margin: 0.25rem !important; }
  .mt-xs-1,
  .my-xs-1 {
    margin-top: 0.25rem !important; }
  .mr-xs-1,
  .mx-xs-1 {
    margin-right: 0.25rem !important; }
  .mb-xs-1,
  .my-xs-1 {
    margin-bottom: 0.25rem !important; }
  .ml-xs-1,
  .mx-xs-1 {
    margin-left: 0.25rem !important; }
  .m-xs-2 {
    margin: 2rem !important; }
  .mt-xs-2,
  .my-xs-2 {
    margin-top: 2rem !important; }
  .mr-xs-2,
  .mx-xs-2 {
    margin-right: 2rem !important; }
  .mb-xs-2,
  .my-xs-2 {
    margin-bottom: 2rem !important; }
  .ml-xs-2,
  .mx-xs-2 {
    margin-left: 2rem !important; }
  .m-xs-3 {
    margin: 1rem !important; }
  .mt-xs-3,
  .my-xs-3 {
    margin-top: 1rem !important; }
  .mr-xs-3,
  .mx-xs-3 {
    margin-right: 1rem !important; }
  .mb-xs-3,
  .my-xs-3 {
    margin-bottom: 1rem !important; }
  .ml-xs-3,
  .mx-xs-3 {
    margin-left: 1rem !important; }
  .m-xs-4 {
    margin: 4rem !important; }
  .mt-xs-4,
  .my-xs-4 {
    margin-top: 4rem !important; }
  .mr-xs-4,
  .mx-xs-4 {
    margin-right: 4rem !important; }
  .mb-xs-4,
  .my-xs-4 {
    margin-bottom: 4rem !important; }
  .ml-xs-4,
  .mx-xs-4 {
    margin-left: 4rem !important; }
  .m-xs-5 {
    margin: 3rem !important; }
  .mt-xs-5,
  .my-xs-5 {
    margin-top: 3rem !important; }
  .mr-xs-5,
  .mx-xs-5 {
    margin-right: 3rem !important; }
  .mb-xs-5,
  .my-xs-5 {
    margin-bottom: 3rem !important; }
  .ml-xs-5,
  .mx-xs-5 {
    margin-left: 3rem !important; }
  .p-xs-0 {
    padding: 0 !important; }
  .pt-xs-0,
  .py-xs-0 {
    padding-top: 0 !important; }
  .pr-xs-0,
  .px-xs-0 {
    padding-right: 0 !important; }
  .pb-xs-0,
  .py-xs-0 {
    padding-bottom: 0 !important; }
  .pl-xs-0,
  .px-xs-0 {
    padding-left: 0 !important; }
  .p-xs-1 {
    padding: 0.25rem !important; }
  .pt-xs-1,
  .py-xs-1 {
    padding-top: 0.25rem !important; }
  .pr-xs-1,
  .px-xs-1 {
    padding-right: 0.25rem !important; }
  .pb-xs-1,
  .py-xs-1 {
    padding-bottom: 0.25rem !important; }
  .pl-xs-1,
  .px-xs-1 {
    padding-left: 0.25rem !important; }
  .p-xs-2 {
    padding: 2rem !important; }
  .pt-xs-2,
  .py-xs-2 {
    padding-top: 2rem !important; }
  .pr-xs-2,
  .px-xs-2 {
    padding-right: 2rem !important; }
  .pb-xs-2,
  .py-xs-2 {
    padding-bottom: 2rem !important; }
  .pl-xs-2,
  .px-xs-2 {
    padding-left: 2rem !important; }
  .p-xs-3 {
    padding: 1rem !important; }
  .pt-xs-3,
  .py-xs-3 {
    padding-top: 1rem !important; }
  .pr-xs-3,
  .px-xs-3 {
    padding-right: 1rem !important; }
  .pb-xs-3,
  .py-xs-3 {
    padding-bottom: 1rem !important; }
  .pl-xs-3,
  .px-xs-3 {
    padding-left: 1rem !important; }
  .p-xs-4 {
    padding: 4rem !important; }
  .pt-xs-4,
  .py-xs-4 {
    padding-top: 4rem !important; }
  .pr-xs-4,
  .px-xs-4 {
    padding-right: 4rem !important; }
  .pb-xs-4,
  .py-xs-4 {
    padding-bottom: 4rem !important; }
  .pl-xs-4,
  .px-xs-4 {
    padding-left: 4rem !important; }
  .p-xs-5 {
    padding: 3rem !important; }
  .pt-xs-5,
  .py-xs-5 {
    padding-top: 3rem !important; }
  .pr-xs-5,
  .px-xs-5 {
    padding-right: 3rem !important; }
  .pb-xs-5,
  .py-xs-5 {
    padding-bottom: 3rem !important; }
  .pl-xs-5,
  .px-xs-5 {
    padding-left: 3rem !important; }
  .m-xs-n1 {
    margin: -0.25rem !important; }
  .mt-xs-n1,
  .my-xs-n1 {
    margin-top: -0.25rem !important; }
  .mr-xs-n1,
  .mx-xs-n1 {
    margin-right: -0.25rem !important; }
  .mb-xs-n1,
  .my-xs-n1 {
    margin-bottom: -0.25rem !important; }
  .ml-xs-n1,
  .mx-xs-n1 {
    margin-left: -0.25rem !important; }
  .m-xs-n2 {
    margin: -2rem !important; }
  .mt-xs-n2,
  .my-xs-n2 {
    margin-top: -2rem !important; }
  .mr-xs-n2,
  .mx-xs-n2 {
    margin-right: -2rem !important; }
  .mb-xs-n2,
  .my-xs-n2 {
    margin-bottom: -2rem !important; }
  .ml-xs-n2,
  .mx-xs-n2 {
    margin-left: -2rem !important; }
  .m-xs-n3 {
    margin: -1rem !important; }
  .mt-xs-n3,
  .my-xs-n3 {
    margin-top: -1rem !important; }
  .mr-xs-n3,
  .mx-xs-n3 {
    margin-right: -1rem !important; }
  .mb-xs-n3,
  .my-xs-n3 {
    margin-bottom: -1rem !important; }
  .ml-xs-n3,
  .mx-xs-n3 {
    margin-left: -1rem !important; }
  .m-xs-n4 {
    margin: -4rem !important; }
  .mt-xs-n4,
  .my-xs-n4 {
    margin-top: -4rem !important; }
  .mr-xs-n4,
  .mx-xs-n4 {
    margin-right: -4rem !important; }
  .mb-xs-n4,
  .my-xs-n4 {
    margin-bottom: -4rem !important; }
  .ml-xs-n4,
  .mx-xs-n4 {
    margin-left: -4rem !important; }
  .m-xs-n5 {
    margin: -3rem !important; }
  .mt-xs-n5,
  .my-xs-n5 {
    margin-top: -3rem !important; }
  .mr-xs-n5,
  .mx-xs-n5 {
    margin-right: -3rem !important; }
  .mb-xs-n5,
  .my-xs-n5 {
    margin-bottom: -3rem !important; }
  .ml-xs-n5,
  .mx-xs-n5 {
    margin-left: -3rem !important; }
  .m-xs-auto {
    margin: auto !important; }
  .mt-xs-auto,
  .my-xs-auto {
    margin-top: auto !important; }
  .mr-xs-auto,
  .mx-xs-auto {
    margin-right: auto !important; }
  .mb-xs-auto,
  .my-xs-auto {
    margin-bottom: auto !important; }
  .ml-xs-auto,
  .mx-xs-auto {
    margin-left: auto !important; } }

@media (min-width: 576px) {
  .m-sm-0 {
    margin: 0 !important; }
  .mt-sm-0,
  .my-sm-0 {
    margin-top: 0 !important; }
  .mr-sm-0,
  .mx-sm-0 {
    margin-right: 0 !important; }
  .mb-sm-0,
  .my-sm-0 {
    margin-bottom: 0 !important; }
  .ml-sm-0,
  .mx-sm-0 {
    margin-left: 0 !important; }
  .m-sm-1 {
    margin: 0.25rem !important; }
  .mt-sm-1,
  .my-sm-1 {
    margin-top: 0.25rem !important; }
  .mr-sm-1,
  .mx-sm-1 {
    margin-right: 0.25rem !important; }
  .mb-sm-1,
  .my-sm-1 {
    margin-bottom: 0.25rem !important; }
  .ml-sm-1,
  .mx-sm-1 {
    margin-left: 0.25rem !important; }
  .m-sm-2 {
    margin: 2rem !important; }
  .mt-sm-2,
  .my-sm-2 {
    margin-top: 2rem !important; }
  .mr-sm-2,
  .mx-sm-2 {
    margin-right: 2rem !important; }
  .mb-sm-2,
  .my-sm-2 {
    margin-bottom: 2rem !important; }
  .ml-sm-2,
  .mx-sm-2 {
    margin-left: 2rem !important; }
  .m-sm-3 {
    margin: 1rem !important; }
  .mt-sm-3,
  .my-sm-3 {
    margin-top: 1rem !important; }
  .mr-sm-3,
  .mx-sm-3 {
    margin-right: 1rem !important; }
  .mb-sm-3,
  .my-sm-3 {
    margin-bottom: 1rem !important; }
  .ml-sm-3,
  .mx-sm-3 {
    margin-left: 1rem !important; }
  .m-sm-4 {
    margin: 4rem !important; }
  .mt-sm-4,
  .my-sm-4 {
    margin-top: 4rem !important; }
  .mr-sm-4,
  .mx-sm-4 {
    margin-right: 4rem !important; }
  .mb-sm-4,
  .my-sm-4 {
    margin-bottom: 4rem !important; }
  .ml-sm-4,
  .mx-sm-4 {
    margin-left: 4rem !important; }
  .m-sm-5 {
    margin: 3rem !important; }
  .mt-sm-5,
  .my-sm-5 {
    margin-top: 3rem !important; }
  .mr-sm-5,
  .mx-sm-5 {
    margin-right: 3rem !important; }
  .mb-sm-5,
  .my-sm-5 {
    margin-bottom: 3rem !important; }
  .ml-sm-5,
  .mx-sm-5 {
    margin-left: 3rem !important; }
  .p-sm-0 {
    padding: 0 !important; }
  .pt-sm-0,
  .py-sm-0 {
    padding-top: 0 !important; }
  .pr-sm-0,
  .px-sm-0 {
    padding-right: 0 !important; }
  .pb-sm-0,
  .py-sm-0 {
    padding-bottom: 0 !important; }
  .pl-sm-0,
  .px-sm-0 {
    padding-left: 0 !important; }
  .p-sm-1 {
    padding: 0.25rem !important; }
  .pt-sm-1,
  .py-sm-1 {
    padding-top: 0.25rem !important; }
  .pr-sm-1,
  .px-sm-1 {
    padding-right: 0.25rem !important; }
  .pb-sm-1,
  .py-sm-1 {
    padding-bottom: 0.25rem !important; }
  .pl-sm-1,
  .px-sm-1 {
    padding-left: 0.25rem !important; }
  .p-sm-2 {
    padding: 2rem !important; }
  .pt-sm-2,
  .py-sm-2 {
    padding-top: 2rem !important; }
  .pr-sm-2,
  .px-sm-2 {
    padding-right: 2rem !important; }
  .pb-sm-2,
  .py-sm-2 {
    padding-bottom: 2rem !important; }
  .pl-sm-2,
  .px-sm-2 {
    padding-left: 2rem !important; }
  .p-sm-3 {
    padding: 1rem !important; }
  .pt-sm-3,
  .py-sm-3 {
    padding-top: 1rem !important; }
  .pr-sm-3,
  .px-sm-3 {
    padding-right: 1rem !important; }
  .pb-sm-3,
  .py-sm-3 {
    padding-bottom: 1rem !important; }
  .pl-sm-3,
  .px-sm-3 {
    padding-left: 1rem !important; }
  .p-sm-4 {
    padding: 4rem !important; }
  .pt-sm-4,
  .py-sm-4 {
    padding-top: 4rem !important; }
  .pr-sm-4,
  .px-sm-4 {
    padding-right: 4rem !important; }
  .pb-sm-4,
  .py-sm-4 {
    padding-bottom: 4rem !important; }
  .pl-sm-4,
  .px-sm-4 {
    padding-left: 4rem !important; }
  .p-sm-5 {
    padding: 3rem !important; }
  .pt-sm-5,
  .py-sm-5 {
    padding-top: 3rem !important; }
  .pr-sm-5,
  .px-sm-5 {
    padding-right: 3rem !important; }
  .pb-sm-5,
  .py-sm-5 {
    padding-bottom: 3rem !important; }
  .pl-sm-5,
  .px-sm-5 {
    padding-left: 3rem !important; }
  .m-sm-n1 {
    margin: -0.25rem !important; }
  .mt-sm-n1,
  .my-sm-n1 {
    margin-top: -0.25rem !important; }
  .mr-sm-n1,
  .mx-sm-n1 {
    margin-right: -0.25rem !important; }
  .mb-sm-n1,
  .my-sm-n1 {
    margin-bottom: -0.25rem !important; }
  .ml-sm-n1,
  .mx-sm-n1 {
    margin-left: -0.25rem !important; }
  .m-sm-n2 {
    margin: -2rem !important; }
  .mt-sm-n2,
  .my-sm-n2 {
    margin-top: -2rem !important; }
  .mr-sm-n2,
  .mx-sm-n2 {
    margin-right: -2rem !important; }
  .mb-sm-n2,
  .my-sm-n2 {
    margin-bottom: -2rem !important; }
  .ml-sm-n2,
  .mx-sm-n2 {
    margin-left: -2rem !important; }
  .m-sm-n3 {
    margin: -1rem !important; }
  .mt-sm-n3,
  .my-sm-n3 {
    margin-top: -1rem !important; }
  .mr-sm-n3,
  .mx-sm-n3 {
    margin-right: -1rem !important; }
  .mb-sm-n3,
  .my-sm-n3 {
    margin-bottom: -1rem !important; }
  .ml-sm-n3,
  .mx-sm-n3 {
    margin-left: -1rem !important; }
  .m-sm-n4 {
    margin: -4rem !important; }
  .mt-sm-n4,
  .my-sm-n4 {
    margin-top: -4rem !important; }
  .mr-sm-n4,
  .mx-sm-n4 {
    margin-right: -4rem !important; }
  .mb-sm-n4,
  .my-sm-n4 {
    margin-bottom: -4rem !important; }
  .ml-sm-n4,
  .mx-sm-n4 {
    margin-left: -4rem !important; }
  .m-sm-n5 {
    margin: -3rem !important; }
  .mt-sm-n5,
  .my-sm-n5 {
    margin-top: -3rem !important; }
  .mr-sm-n5,
  .mx-sm-n5 {
    margin-right: -3rem !important; }
  .mb-sm-n5,
  .my-sm-n5 {
    margin-bottom: -3rem !important; }
  .ml-sm-n5,
  .mx-sm-n5 {
    margin-left: -3rem !important; }
  .m-sm-auto {
    margin: auto !important; }
  .mt-sm-auto,
  .my-sm-auto {
    margin-top: auto !important; }
  .mr-sm-auto,
  .mx-sm-auto {
    margin-right: auto !important; }
  .mb-sm-auto,
  .my-sm-auto {
    margin-bottom: auto !important; }
  .ml-sm-auto,
  .mx-sm-auto {
    margin-left: auto !important; } }

@media (min-width: 768px) {
  .m-md-0 {
    margin: 0 !important; }
  .mt-md-0,
  .my-md-0 {
    margin-top: 0 !important; }
  .mr-md-0,
  .mx-md-0 {
    margin-right: 0 !important; }
  .mb-md-0,
  .my-md-0 {
    margin-bottom: 0 !important; }
  .ml-md-0,
  .mx-md-0 {
    margin-left: 0 !important; }
  .m-md-1 {
    margin: 0.25rem !important; }
  .mt-md-1,
  .my-md-1 {
    margin-top: 0.25rem !important; }
  .mr-md-1,
  .mx-md-1 {
    margin-right: 0.25rem !important; }
  .mb-md-1,
  .my-md-1 {
    margin-bottom: 0.25rem !important; }
  .ml-md-1,
  .mx-md-1 {
    margin-left: 0.25rem !important; }
  .m-md-2 {
    margin: 2rem !important; }
  .mt-md-2,
  .my-md-2 {
    margin-top: 2rem !important; }
  .mr-md-2,
  .mx-md-2 {
    margin-right: 2rem !important; }
  .mb-md-2,
  .my-md-2 {
    margin-bottom: 2rem !important; }
  .ml-md-2,
  .mx-md-2 {
    margin-left: 2rem !important; }
  .m-md-3 {
    margin: 1rem !important; }
  .mt-md-3,
  .my-md-3 {
    margin-top: 1rem !important; }
  .mr-md-3,
  .mx-md-3 {
    margin-right: 1rem !important; }
  .mb-md-3,
  .my-md-3 {
    margin-bottom: 1rem !important; }
  .ml-md-3,
  .mx-md-3 {
    margin-left: 1rem !important; }
  .m-md-4 {
    margin: 4rem !important; }
  .mt-md-4,
  .my-md-4 {
    margin-top: 4rem !important; }
  .mr-md-4,
  .mx-md-4 {
    margin-right: 4rem !important; }
  .mb-md-4,
  .my-md-4 {
    margin-bottom: 4rem !important; }
  .ml-md-4,
  .mx-md-4 {
    margin-left: 4rem !important; }
  .m-md-5 {
    margin: 3rem !important; }
  .mt-md-5,
  .my-md-5 {
    margin-top: 3rem !important; }
  .mr-md-5,
  .mx-md-5 {
    margin-right: 3rem !important; }
  .mb-md-5,
  .my-md-5 {
    margin-bottom: 3rem !important; }
  .ml-md-5,
  .mx-md-5 {
    margin-left: 3rem !important; }
  .p-md-0 {
    padding: 0 !important; }
  .pt-md-0,
  .py-md-0 {
    padding-top: 0 !important; }
  .pr-md-0,
  .px-md-0 {
    padding-right: 0 !important; }
  .pb-md-0,
  .py-md-0 {
    padding-bottom: 0 !important; }
  .pl-md-0,
  .px-md-0 {
    padding-left: 0 !important; }
  .p-md-1 {
    padding: 0.25rem !important; }
  .pt-md-1,
  .py-md-1 {
    padding-top: 0.25rem !important; }
  .pr-md-1,
  .px-md-1 {
    padding-right: 0.25rem !important; }
  .pb-md-1,
  .py-md-1 {
    padding-bottom: 0.25rem !important; }
  .pl-md-1,
  .px-md-1 {
    padding-left: 0.25rem !important; }
  .p-md-2 {
    padding: 2rem !important; }
  .pt-md-2,
  .py-md-2 {
    padding-top: 2rem !important; }
  .pr-md-2,
  .px-md-2 {
    padding-right: 2rem !important; }
  .pb-md-2,
  .py-md-2 {
    padding-bottom: 2rem !important; }
  .pl-md-2,
  .px-md-2 {
    padding-left: 2rem !important; }
  .p-md-3 {
    padding: 1rem !important; }
  .pt-md-3,
  .py-md-3 {
    padding-top: 1rem !important; }
  .pr-md-3,
  .px-md-3 {
    padding-right: 1rem !important; }
  .pb-md-3,
  .py-md-3 {
    padding-bottom: 1rem !important; }
  .pl-md-3,
  .px-md-3 {
    padding-left: 1rem !important; }
  .p-md-4 {
    padding: 4rem !important; }
  .pt-md-4,
  .py-md-4 {
    padding-top: 4rem !important; }
  .pr-md-4,
  .px-md-4 {
    padding-right: 4rem !important; }
  .pb-md-4,
  .py-md-4 {
    padding-bottom: 4rem !important; }
  .pl-md-4,
  .px-md-4 {
    padding-left: 4rem !important; }
  .p-md-5 {
    padding: 3rem !important; }
  .pt-md-5,
  .py-md-5 {
    padding-top: 3rem !important; }
  .pr-md-5,
  .px-md-5 {
    padding-right: 3rem !important; }
  .pb-md-5,
  .py-md-5 {
    padding-bottom: 3rem !important; }
  .pl-md-5,
  .px-md-5 {
    padding-left: 3rem !important; }
  .m-md-n1 {
    margin: -0.25rem !important; }
  .mt-md-n1,
  .my-md-n1 {
    margin-top: -0.25rem !important; }
  .mr-md-n1,
  .mx-md-n1 {
    margin-right: -0.25rem !important; }
  .mb-md-n1,
  .my-md-n1 {
    margin-bottom: -0.25rem !important; }
  .ml-md-n1,
  .mx-md-n1 {
    margin-left: -0.25rem !important; }
  .m-md-n2 {
    margin: -2rem !important; }
  .mt-md-n2,
  .my-md-n2 {
    margin-top: -2rem !important; }
  .mr-md-n2,
  .mx-md-n2 {
    margin-right: -2rem !important; }
  .mb-md-n2,
  .my-md-n2 {
    margin-bottom: -2rem !important; }
  .ml-md-n2,
  .mx-md-n2 {
    margin-left: -2rem !important; }
  .m-md-n3 {
    margin: -1rem !important; }
  .mt-md-n3,
  .my-md-n3 {
    margin-top: -1rem !important; }
  .mr-md-n3,
  .mx-md-n3 {
    margin-right: -1rem !important; }
  .mb-md-n3,
  .my-md-n3 {
    margin-bottom: -1rem !important; }
  .ml-md-n3,
  .mx-md-n3 {
    margin-left: -1rem !important; }
  .m-md-n4 {
    margin: -4rem !important; }
  .mt-md-n4,
  .my-md-n4 {
    margin-top: -4rem !important; }
  .mr-md-n4,
  .mx-md-n4 {
    margin-right: -4rem !important; }
  .mb-md-n4,
  .my-md-n4 {
    margin-bottom: -4rem !important; }
  .ml-md-n4,
  .mx-md-n4 {
    margin-left: -4rem !important; }
  .m-md-n5 {
    margin: -3rem !important; }
  .mt-md-n5,
  .my-md-n5 {
    margin-top: -3rem !important; }
  .mr-md-n5,
  .mx-md-n5 {
    margin-right: -3rem !important; }
  .mb-md-n5,
  .my-md-n5 {
    margin-bottom: -3rem !important; }
  .ml-md-n5,
  .mx-md-n5 {
    margin-left: -3rem !important; }
  .m-md-auto {
    margin: auto !important; }
  .mt-md-auto,
  .my-md-auto {
    margin-top: auto !important; }
  .mr-md-auto,
  .mx-md-auto {
    margin-right: auto !important; }
  .mb-md-auto,
  .my-md-auto {
    margin-bottom: auto !important; }
  .ml-md-auto,
  .mx-md-auto {
    margin-left: auto !important; } }

@media (min-width: 1024px) {
  .m-lg-0 {
    margin: 0 !important; }
  .mt-lg-0,
  .my-lg-0 {
    margin-top: 0 !important; }
  .mr-lg-0,
  .mx-lg-0 {
    margin-right: 0 !important; }
  .mb-lg-0,
  .my-lg-0 {
    margin-bottom: 0 !important; }
  .ml-lg-0,
  .mx-lg-0 {
    margin-left: 0 !important; }
  .m-lg-1 {
    margin: 0.25rem !important; }
  .mt-lg-1,
  .my-lg-1 {
    margin-top: 0.25rem !important; }
  .mr-lg-1,
  .mx-lg-1 {
    margin-right: 0.25rem !important; }
  .mb-lg-1,
  .my-lg-1 {
    margin-bottom: 0.25rem !important; }
  .ml-lg-1,
  .mx-lg-1 {
    margin-left: 0.25rem !important; }
  .m-lg-2 {
    margin: 2rem !important; }
  .mt-lg-2,
  .my-lg-2 {
    margin-top: 2rem !important; }
  .mr-lg-2,
  .mx-lg-2 {
    margin-right: 2rem !important; }
  .mb-lg-2,
  .my-lg-2 {
    margin-bottom: 2rem !important; }
  .ml-lg-2,
  .mx-lg-2 {
    margin-left: 2rem !important; }
  .m-lg-3 {
    margin: 1rem !important; }
  .mt-lg-3,
  .my-lg-3 {
    margin-top: 1rem !important; }
  .mr-lg-3,
  .mx-lg-3 {
    margin-right: 1rem !important; }
  .mb-lg-3,
  .my-lg-3 {
    margin-bottom: 1rem !important; }
  .ml-lg-3,
  .mx-lg-3 {
    margin-left: 1rem !important; }
  .m-lg-4 {
    margin: 4rem !important; }
  .mt-lg-4,
  .my-lg-4 {
    margin-top: 4rem !important; }
  .mr-lg-4,
  .mx-lg-4 {
    margin-right: 4rem !important; }
  .mb-lg-4,
  .my-lg-4 {
    margin-bottom: 4rem !important; }
  .ml-lg-4,
  .mx-lg-4 {
    margin-left: 4rem !important; }
  .m-lg-5 {
    margin: 3rem !important; }
  .mt-lg-5,
  .my-lg-5 {
    margin-top: 3rem !important; }
  .mr-lg-5,
  .mx-lg-5 {
    margin-right: 3rem !important; }
  .mb-lg-5,
  .my-lg-5 {
    margin-bottom: 3rem !important; }
  .ml-lg-5,
  .mx-lg-5 {
    margin-left: 3rem !important; }
  .p-lg-0 {
    padding: 0 !important; }
  .pt-lg-0,
  .py-lg-0 {
    padding-top: 0 !important; }
  .pr-lg-0,
  .px-lg-0 {
    padding-right: 0 !important; }
  .pb-lg-0,
  .py-lg-0 {
    padding-bottom: 0 !important; }
  .pl-lg-0,
  .px-lg-0 {
    padding-left: 0 !important; }
  .p-lg-1 {
    padding: 0.25rem !important; }
  .pt-lg-1,
  .py-lg-1 {
    padding-top: 0.25rem !important; }
  .pr-lg-1,
  .px-lg-1 {
    padding-right: 0.25rem !important; }
  .pb-lg-1,
  .py-lg-1 {
    padding-bottom: 0.25rem !important; }
  .pl-lg-1,
  .px-lg-1 {
    padding-left: 0.25rem !important; }
  .p-lg-2 {
    padding: 2rem !important; }
  .pt-lg-2,
  .py-lg-2 {
    padding-top: 2rem !important; }
  .pr-lg-2,
  .px-lg-2 {
    padding-right: 2rem !important; }
  .pb-lg-2,
  .py-lg-2 {
    padding-bottom: 2rem !important; }
  .pl-lg-2,
  .px-lg-2 {
    padding-left: 2rem !important; }
  .p-lg-3 {
    padding: 1rem !important; }
  .pt-lg-3,
  .py-lg-3 {
    padding-top: 1rem !important; }
  .pr-lg-3,
  .px-lg-3 {
    padding-right: 1rem !important; }
  .pb-lg-3,
  .py-lg-3 {
    padding-bottom: 1rem !important; }
  .pl-lg-3,
  .px-lg-3 {
    padding-left: 1rem !important; }
  .p-lg-4 {
    padding: 4rem !important; }
  .pt-lg-4,
  .py-lg-4 {
    padding-top: 4rem !important; }
  .pr-lg-4,
  .px-lg-4 {
    padding-right: 4rem !important; }
  .pb-lg-4,
  .py-lg-4 {
    padding-bottom: 4rem !important; }
  .pl-lg-4,
  .px-lg-4 {
    padding-left: 4rem !important; }
  .p-lg-5 {
    padding: 3rem !important; }
  .pt-lg-5,
  .py-lg-5 {
    padding-top: 3rem !important; }
  .pr-lg-5,
  .px-lg-5 {
    padding-right: 3rem !important; }
  .pb-lg-5,
  .py-lg-5 {
    padding-bottom: 3rem !important; }
  .pl-lg-5,
  .px-lg-5 {
    padding-left: 3rem !important; }
  .m-lg-n1 {
    margin: -0.25rem !important; }
  .mt-lg-n1,
  .my-lg-n1 {
    margin-top: -0.25rem !important; }
  .mr-lg-n1,
  .mx-lg-n1 {
    margin-right: -0.25rem !important; }
  .mb-lg-n1,
  .my-lg-n1 {
    margin-bottom: -0.25rem !important; }
  .ml-lg-n1,
  .mx-lg-n1 {
    margin-left: -0.25rem !important; }
  .m-lg-n2 {
    margin: -2rem !important; }
  .mt-lg-n2,
  .my-lg-n2 {
    margin-top: -2rem !important; }
  .mr-lg-n2,
  .mx-lg-n2 {
    margin-right: -2rem !important; }
  .mb-lg-n2,
  .my-lg-n2 {
    margin-bottom: -2rem !important; }
  .ml-lg-n2,
  .mx-lg-n2 {
    margin-left: -2rem !important; }
  .m-lg-n3 {
    margin: -1rem !important; }
  .mt-lg-n3,
  .my-lg-n3 {
    margin-top: -1rem !important; }
  .mr-lg-n3,
  .mx-lg-n3 {
    margin-right: -1rem !important; }
  .mb-lg-n3,
  .my-lg-n3 {
    margin-bottom: -1rem !important; }
  .ml-lg-n3,
  .mx-lg-n3 {
    margin-left: -1rem !important; }
  .m-lg-n4 {
    margin: -4rem !important; }
  .mt-lg-n4,
  .my-lg-n4 {
    margin-top: -4rem !important; }
  .mr-lg-n4,
  .mx-lg-n4 {
    margin-right: -4rem !important; }
  .mb-lg-n4,
  .my-lg-n4 {
    margin-bottom: -4rem !important; }
  .ml-lg-n4,
  .mx-lg-n4 {
    margin-left: -4rem !important; }
  .m-lg-n5 {
    margin: -3rem !important; }
  .mt-lg-n5,
  .my-lg-n5 {
    margin-top: -3rem !important; }
  .mr-lg-n5,
  .mx-lg-n5 {
    margin-right: -3rem !important; }
  .mb-lg-n5,
  .my-lg-n5 {
    margin-bottom: -3rem !important; }
  .ml-lg-n5,
  .mx-lg-n5 {
    margin-left: -3rem !important; }
  .m-lg-auto {
    margin: auto !important; }
  .mt-lg-auto,
  .my-lg-auto {
    margin-top: auto !important; }
  .mr-lg-auto,
  .mx-lg-auto {
    margin-right: auto !important; }
  .mb-lg-auto,
  .my-lg-auto {
    margin-bottom: auto !important; }
  .ml-lg-auto,
  .mx-lg-auto {
    margin-left: auto !important; } }

@media (min-width: 1200px) {
  .m-xl-0 {
    margin: 0 !important; }
  .mt-xl-0,
  .my-xl-0 {
    margin-top: 0 !important; }
  .mr-xl-0,
  .mx-xl-0 {
    margin-right: 0 !important; }
  .mb-xl-0,
  .my-xl-0 {
    margin-bottom: 0 !important; }
  .ml-xl-0,
  .mx-xl-0 {
    margin-left: 0 !important; }
  .m-xl-1 {
    margin: 0.25rem !important; }
  .mt-xl-1,
  .my-xl-1 {
    margin-top: 0.25rem !important; }
  .mr-xl-1,
  .mx-xl-1 {
    margin-right: 0.25rem !important; }
  .mb-xl-1,
  .my-xl-1 {
    margin-bottom: 0.25rem !important; }
  .ml-xl-1,
  .mx-xl-1 {
    margin-left: 0.25rem !important; }
  .m-xl-2 {
    margin: 2rem !important; }
  .mt-xl-2,
  .my-xl-2 {
    margin-top: 2rem !important; }
  .mr-xl-2,
  .mx-xl-2 {
    margin-right: 2rem !important; }
  .mb-xl-2,
  .my-xl-2 {
    margin-bottom: 2rem !important; }
  .ml-xl-2,
  .mx-xl-2 {
    margin-left: 2rem !important; }
  .m-xl-3 {
    margin: 1rem !important; }
  .mt-xl-3,
  .my-xl-3 {
    margin-top: 1rem !important; }
  .mr-xl-3,
  .mx-xl-3 {
    margin-right: 1rem !important; }
  .mb-xl-3,
  .my-xl-3 {
    margin-bottom: 1rem !important; }
  .ml-xl-3,
  .mx-xl-3 {
    margin-left: 1rem !important; }
  .m-xl-4 {
    margin: 4rem !important; }
  .mt-xl-4,
  .my-xl-4 {
    margin-top: 4rem !important; }
  .mr-xl-4,
  .mx-xl-4 {
    margin-right: 4rem !important; }
  .mb-xl-4,
  .my-xl-4 {
    margin-bottom: 4rem !important; }
  .ml-xl-4,
  .mx-xl-4 {
    margin-left: 4rem !important; }
  .m-xl-5 {
    margin: 3rem !important; }
  .mt-xl-5,
  .my-xl-5 {
    margin-top: 3rem !important; }
  .mr-xl-5,
  .mx-xl-5 {
    margin-right: 3rem !important; }
  .mb-xl-5,
  .my-xl-5 {
    margin-bottom: 3rem !important; }
  .ml-xl-5,
  .mx-xl-5 {
    margin-left: 3rem !important; }
  .p-xl-0 {
    padding: 0 !important; }
  .pt-xl-0,
  .py-xl-0 {
    padding-top: 0 !important; }
  .pr-xl-0,
  .px-xl-0 {
    padding-right: 0 !important; }
  .pb-xl-0,
  .py-xl-0 {
    padding-bottom: 0 !important; }
  .pl-xl-0,
  .px-xl-0 {
    padding-left: 0 !important; }
  .p-xl-1 {
    padding: 0.25rem !important; }
  .pt-xl-1,
  .py-xl-1 {
    padding-top: 0.25rem !important; }
  .pr-xl-1,
  .px-xl-1 {
    padding-right: 0.25rem !important; }
  .pb-xl-1,
  .py-xl-1 {
    padding-bottom: 0.25rem !important; }
  .pl-xl-1,
  .px-xl-1 {
    padding-left: 0.25rem !important; }
  .p-xl-2 {
    padding: 2rem !important; }
  .pt-xl-2,
  .py-xl-2 {
    padding-top: 2rem !important; }
  .pr-xl-2,
  .px-xl-2 {
    padding-right: 2rem !important; }
  .pb-xl-2,
  .py-xl-2 {
    padding-bottom: 2rem !important; }
  .pl-xl-2,
  .px-xl-2 {
    padding-left: 2rem !important; }
  .p-xl-3 {
    padding: 1rem !important; }
  .pt-xl-3,
  .py-xl-3 {
    padding-top: 1rem !important; }
  .pr-xl-3,
  .px-xl-3 {
    padding-right: 1rem !important; }
  .pb-xl-3,
  .py-xl-3 {
    padding-bottom: 1rem !important; }
  .pl-xl-3,
  .px-xl-3 {
    padding-left: 1rem !important; }
  .p-xl-4 {
    padding: 4rem !important; }
  .pt-xl-4,
  .py-xl-4 {
    padding-top: 4rem !important; }
  .pr-xl-4,
  .px-xl-4 {
    padding-right: 4rem !important; }
  .pb-xl-4,
  .py-xl-4 {
    padding-bottom: 4rem !important; }
  .pl-xl-4,
  .px-xl-4 {
    padding-left: 4rem !important; }
  .p-xl-5 {
    padding: 3rem !important; }
  .pt-xl-5,
  .py-xl-5 {
    padding-top: 3rem !important; }
  .pr-xl-5,
  .px-xl-5 {
    padding-right: 3rem !important; }
  .pb-xl-5,
  .py-xl-5 {
    padding-bottom: 3rem !important; }
  .pl-xl-5,
  .px-xl-5 {
    padding-left: 3rem !important; }
  .m-xl-n1 {
    margin: -0.25rem !important; }
  .mt-xl-n1,
  .my-xl-n1 {
    margin-top: -0.25rem !important; }
  .mr-xl-n1,
  .mx-xl-n1 {
    margin-right: -0.25rem !important; }
  .mb-xl-n1,
  .my-xl-n1 {
    margin-bottom: -0.25rem !important; }
  .ml-xl-n1,
  .mx-xl-n1 {
    margin-left: -0.25rem !important; }
  .m-xl-n2 {
    margin: -2rem !important; }
  .mt-xl-n2,
  .my-xl-n2 {
    margin-top: -2rem !important; }
  .mr-xl-n2,
  .mx-xl-n2 {
    margin-right: -2rem !important; }
  .mb-xl-n2,
  .my-xl-n2 {
    margin-bottom: -2rem !important; }
  .ml-xl-n2,
  .mx-xl-n2 {
    margin-left: -2rem !important; }
  .m-xl-n3 {
    margin: -1rem !important; }
  .mt-xl-n3,
  .my-xl-n3 {
    margin-top: -1rem !important; }
  .mr-xl-n3,
  .mx-xl-n3 {
    margin-right: -1rem !important; }
  .mb-xl-n3,
  .my-xl-n3 {
    margin-bottom: -1rem !important; }
  .ml-xl-n3,
  .mx-xl-n3 {
    margin-left: -1rem !important; }
  .m-xl-n4 {
    margin: -4rem !important; }
  .mt-xl-n4,
  .my-xl-n4 {
    margin-top: -4rem !important; }
  .mr-xl-n4,
  .mx-xl-n4 {
    margin-right: -4rem !important; }
  .mb-xl-n4,
  .my-xl-n4 {
    margin-bottom: -4rem !important; }
  .ml-xl-n4,
  .mx-xl-n4 {
    margin-left: -4rem !important; }
  .m-xl-n5 {
    margin: -3rem !important; }
  .mt-xl-n5,
  .my-xl-n5 {
    margin-top: -3rem !important; }
  .mr-xl-n5,
  .mx-xl-n5 {
    margin-right: -3rem !important; }
  .mb-xl-n5,
  .my-xl-n5 {
    margin-bottom: -3rem !important; }
  .ml-xl-n5,
  .mx-xl-n5 {
    margin-left: -3rem !important; }
  .m-xl-auto {
    margin: auto !important; }
  .mt-xl-auto,
  .my-xl-auto {
    margin-top: auto !important; }
  .mr-xl-auto,
  .mx-xl-auto {
    margin-right: auto !important; }
  .mb-xl-auto,
  .my-xl-auto {
    margin-bottom: auto !important; }
  .ml-xl-auto,
  .mx-xl-auto {
    margin-left: auto !important; } }

@media (min-width: 1440px) {
  .m-xxl-0 {
    margin: 0 !important; }
  .mt-xxl-0,
  .my-xxl-0 {
    margin-top: 0 !important; }
  .mr-xxl-0,
  .mx-xxl-0 {
    margin-right: 0 !important; }
  .mb-xxl-0,
  .my-xxl-0 {
    margin-bottom: 0 !important; }
  .ml-xxl-0,
  .mx-xxl-0 {
    margin-left: 0 !important; }
  .m-xxl-1 {
    margin: 0.25rem !important; }
  .mt-xxl-1,
  .my-xxl-1 {
    margin-top: 0.25rem !important; }
  .mr-xxl-1,
  .mx-xxl-1 {
    margin-right: 0.25rem !important; }
  .mb-xxl-1,
  .my-xxl-1 {
    margin-bottom: 0.25rem !important; }
  .ml-xxl-1,
  .mx-xxl-1 {
    margin-left: 0.25rem !important; }
  .m-xxl-2 {
    margin: 2rem !important; }
  .mt-xxl-2,
  .my-xxl-2 {
    margin-top: 2rem !important; }
  .mr-xxl-2,
  .mx-xxl-2 {
    margin-right: 2rem !important; }
  .mb-xxl-2,
  .my-xxl-2 {
    margin-bottom: 2rem !important; }
  .ml-xxl-2,
  .mx-xxl-2 {
    margin-left: 2rem !important; }
  .m-xxl-3 {
    margin: 1rem !important; }
  .mt-xxl-3,
  .my-xxl-3 {
    margin-top: 1rem !important; }
  .mr-xxl-3,
  .mx-xxl-3 {
    margin-right: 1rem !important; }
  .mb-xxl-3,
  .my-xxl-3 {
    margin-bottom: 1rem !important; }
  .ml-xxl-3,
  .mx-xxl-3 {
    margin-left: 1rem !important; }
  .m-xxl-4 {
    margin: 4rem !important; }
  .mt-xxl-4,
  .my-xxl-4 {
    margin-top: 4rem !important; }
  .mr-xxl-4,
  .mx-xxl-4 {
    margin-right: 4rem !important; }
  .mb-xxl-4,
  .my-xxl-4 {
    margin-bottom: 4rem !important; }
  .ml-xxl-4,
  .mx-xxl-4 {
    margin-left: 4rem !important; }
  .m-xxl-5 {
    margin: 3rem !important; }
  .mt-xxl-5,
  .my-xxl-5 {
    margin-top: 3rem !important; }
  .mr-xxl-5,
  .mx-xxl-5 {
    margin-right: 3rem !important; }
  .mb-xxl-5,
  .my-xxl-5 {
    margin-bottom: 3rem !important; }
  .ml-xxl-5,
  .mx-xxl-5 {
    margin-left: 3rem !important; }
  .p-xxl-0 {
    padding: 0 !important; }
  .pt-xxl-0,
  .py-xxl-0 {
    padding-top: 0 !important; }
  .pr-xxl-0,
  .px-xxl-0 {
    padding-right: 0 !important; }
  .pb-xxl-0,
  .py-xxl-0 {
    padding-bottom: 0 !important; }
  .pl-xxl-0,
  .px-xxl-0 {
    padding-left: 0 !important; }
  .p-xxl-1 {
    padding: 0.25rem !important; }
  .pt-xxl-1,
  .py-xxl-1 {
    padding-top: 0.25rem !important; }
  .pr-xxl-1,
  .px-xxl-1 {
    padding-right: 0.25rem !important; }
  .pb-xxl-1,
  .py-xxl-1 {
    padding-bottom: 0.25rem !important; }
  .pl-xxl-1,
  .px-xxl-1 {
    padding-left: 0.25rem !important; }
  .p-xxl-2 {
    padding: 2rem !important; }
  .pt-xxl-2,
  .py-xxl-2 {
    padding-top: 2rem !important; }
  .pr-xxl-2,
  .px-xxl-2 {
    padding-right: 2rem !important; }
  .pb-xxl-2,
  .py-xxl-2 {
    padding-bottom: 2rem !important; }
  .pl-xxl-2,
  .px-xxl-2 {
    padding-left: 2rem !important; }
  .p-xxl-3 {
    padding: 1rem !important; }
  .pt-xxl-3,
  .py-xxl-3 {
    padding-top: 1rem !important; }
  .pr-xxl-3,
  .px-xxl-3 {
    padding-right: 1rem !important; }
  .pb-xxl-3,
  .py-xxl-3 {
    padding-bottom: 1rem !important; }
  .pl-xxl-3,
  .px-xxl-3 {
    padding-left: 1rem !important; }
  .p-xxl-4 {
    padding: 4rem !important; }
  .pt-xxl-4,
  .py-xxl-4 {
    padding-top: 4rem !important; }
  .pr-xxl-4,
  .px-xxl-4 {
    padding-right: 4rem !important; }
  .pb-xxl-4,
  .py-xxl-4 {
    padding-bottom: 4rem !important; }
  .pl-xxl-4,
  .px-xxl-4 {
    padding-left: 4rem !important; }
  .p-xxl-5 {
    padding: 3rem !important; }
  .pt-xxl-5,
  .py-xxl-5 {
    padding-top: 3rem !important; }
  .pr-xxl-5,
  .px-xxl-5 {
    padding-right: 3rem !important; }
  .pb-xxl-5,
  .py-xxl-5 {
    padding-bottom: 3rem !important; }
  .pl-xxl-5,
  .px-xxl-5 {
    padding-left: 3rem !important; }
  .m-xxl-n1 {
    margin: -0.25rem !important; }
  .mt-xxl-n1,
  .my-xxl-n1 {
    margin-top: -0.25rem !important; }
  .mr-xxl-n1,
  .mx-xxl-n1 {
    margin-right: -0.25rem !important; }
  .mb-xxl-n1,
  .my-xxl-n1 {
    margin-bottom: -0.25rem !important; }
  .ml-xxl-n1,
  .mx-xxl-n1 {
    margin-left: -0.25rem !important; }
  .m-xxl-n2 {
    margin: -2rem !important; }
  .mt-xxl-n2,
  .my-xxl-n2 {
    margin-top: -2rem !important; }
  .mr-xxl-n2,
  .mx-xxl-n2 {
    margin-right: -2rem !important; }
  .mb-xxl-n2,
  .my-xxl-n2 {
    margin-bottom: -2rem !important; }
  .ml-xxl-n2,
  .mx-xxl-n2 {
    margin-left: -2rem !important; }
  .m-xxl-n3 {
    margin: -1rem !important; }
  .mt-xxl-n3,
  .my-xxl-n3 {
    margin-top: -1rem !important; }
  .mr-xxl-n3,
  .mx-xxl-n3 {
    margin-right: -1rem !important; }
  .mb-xxl-n3,
  .my-xxl-n3 {
    margin-bottom: -1rem !important; }
  .ml-xxl-n3,
  .mx-xxl-n3 {
    margin-left: -1rem !important; }
  .m-xxl-n4 {
    margin: -4rem !important; }
  .mt-xxl-n4,
  .my-xxl-n4 {
    margin-top: -4rem !important; }
  .mr-xxl-n4,
  .mx-xxl-n4 {
    margin-right: -4rem !important; }
  .mb-xxl-n4,
  .my-xxl-n4 {
    margin-bottom: -4rem !important; }
  .ml-xxl-n4,
  .mx-xxl-n4 {
    margin-left: -4rem !important; }
  .m-xxl-n5 {
    margin: -3rem !important; }
  .mt-xxl-n5,
  .my-xxl-n5 {
    margin-top: -3rem !important; }
  .mr-xxl-n5,
  .mx-xxl-n5 {
    margin-right: -3rem !important; }
  .mb-xxl-n5,
  .my-xxl-n5 {
    margin-bottom: -3rem !important; }
  .ml-xxl-n5,
  .mx-xxl-n5 {
    margin-left: -3rem !important; }
  .m-xxl-auto {
    margin: auto !important; }
  .mt-xxl-auto,
  .my-xxl-auto {
    margin-top: auto !important; }
  .mr-xxl-auto,
  .mx-xxl-auto {
    margin-right: auto !important; }
  .mb-xxl-auto,
  .my-xxl-auto {
    margin-bottom: auto !important; }
  .ml-xxl-auto,
  .mx-xxl-auto {
    margin-left: auto !important; } }

@media (min-width: 1920px) {
  .m-xxxl-0 {
    margin: 0 !important; }
  .mt-xxxl-0,
  .my-xxxl-0 {
    margin-top: 0 !important; }
  .mr-xxxl-0,
  .mx-xxxl-0 {
    margin-right: 0 !important; }
  .mb-xxxl-0,
  .my-xxxl-0 {
    margin-bottom: 0 !important; }
  .ml-xxxl-0,
  .mx-xxxl-0 {
    margin-left: 0 !important; }
  .m-xxxl-1 {
    margin: 0.25rem !important; }
  .mt-xxxl-1,
  .my-xxxl-1 {
    margin-top: 0.25rem !important; }
  .mr-xxxl-1,
  .mx-xxxl-1 {
    margin-right: 0.25rem !important; }
  .mb-xxxl-1,
  .my-xxxl-1 {
    margin-bottom: 0.25rem !important; }
  .ml-xxxl-1,
  .mx-xxxl-1 {
    margin-left: 0.25rem !important; }
  .m-xxxl-2 {
    margin: 2rem !important; }
  .mt-xxxl-2,
  .my-xxxl-2 {
    margin-top: 2rem !important; }
  .mr-xxxl-2,
  .mx-xxxl-2 {
    margin-right: 2rem !important; }
  .mb-xxxl-2,
  .my-xxxl-2 {
    margin-bottom: 2rem !important; }
  .ml-xxxl-2,
  .mx-xxxl-2 {
    margin-left: 2rem !important; }
  .m-xxxl-3 {
    margin: 1rem !important; }
  .mt-xxxl-3,
  .my-xxxl-3 {
    margin-top: 1rem !important; }
  .mr-xxxl-3,
  .mx-xxxl-3 {
    margin-right: 1rem !important; }
  .mb-xxxl-3,
  .my-xxxl-3 {
    margin-bottom: 1rem !important; }
  .ml-xxxl-3,
  .mx-xxxl-3 {
    margin-left: 1rem !important; }
  .m-xxxl-4 {
    margin: 4rem !important; }
  .mt-xxxl-4,
  .my-xxxl-4 {
    margin-top: 4rem !important; }
  .mr-xxxl-4,
  .mx-xxxl-4 {
    margin-right: 4rem !important; }
  .mb-xxxl-4,
  .my-xxxl-4 {
    margin-bottom: 4rem !important; }
  .ml-xxxl-4,
  .mx-xxxl-4 {
    margin-left: 4rem !important; }
  .m-xxxl-5 {
    margin: 3rem !important; }
  .mt-xxxl-5,
  .my-xxxl-5 {
    margin-top: 3rem !important; }
  .mr-xxxl-5,
  .mx-xxxl-5 {
    margin-right: 3rem !important; }
  .mb-xxxl-5,
  .my-xxxl-5 {
    margin-bottom: 3rem !important; }
  .ml-xxxl-5,
  .mx-xxxl-5 {
    margin-left: 3rem !important; }
  .p-xxxl-0 {
    padding: 0 !important; }
  .pt-xxxl-0,
  .py-xxxl-0 {
    padding-top: 0 !important; }
  .pr-xxxl-0,
  .px-xxxl-0 {
    padding-right: 0 !important; }
  .pb-xxxl-0,
  .py-xxxl-0 {
    padding-bottom: 0 !important; }
  .pl-xxxl-0,
  .px-xxxl-0 {
    padding-left: 0 !important; }
  .p-xxxl-1 {
    padding: 0.25rem !important; }
  .pt-xxxl-1,
  .py-xxxl-1 {
    padding-top: 0.25rem !important; }
  .pr-xxxl-1,
  .px-xxxl-1 {
    padding-right: 0.25rem !important; }
  .pb-xxxl-1,
  .py-xxxl-1 {
    padding-bottom: 0.25rem !important; }
  .pl-xxxl-1,
  .px-xxxl-1 {
    padding-left: 0.25rem !important; }
  .p-xxxl-2 {
    padding: 2rem !important; }
  .pt-xxxl-2,
  .py-xxxl-2 {
    padding-top: 2rem !important; }
  .pr-xxxl-2,
  .px-xxxl-2 {
    padding-right: 2rem !important; }
  .pb-xxxl-2,
  .py-xxxl-2 {
    padding-bottom: 2rem !important; }
  .pl-xxxl-2,
  .px-xxxl-2 {
    padding-left: 2rem !important; }
  .p-xxxl-3 {
    padding: 1rem !important; }
  .pt-xxxl-3,
  .py-xxxl-3 {
    padding-top: 1rem !important; }
  .pr-xxxl-3,
  .px-xxxl-3 {
    padding-right: 1rem !important; }
  .pb-xxxl-3,
  .py-xxxl-3 {
    padding-bottom: 1rem !important; }
  .pl-xxxl-3,
  .px-xxxl-3 {
    padding-left: 1rem !important; }
  .p-xxxl-4 {
    padding: 4rem !important; }
  .pt-xxxl-4,
  .py-xxxl-4 {
    padding-top: 4rem !important; }
  .pr-xxxl-4,
  .px-xxxl-4 {
    padding-right: 4rem !important; }
  .pb-xxxl-4,
  .py-xxxl-4 {
    padding-bottom: 4rem !important; }
  .pl-xxxl-4,
  .px-xxxl-4 {
    padding-left: 4rem !important; }
  .p-xxxl-5 {
    padding: 3rem !important; }
  .pt-xxxl-5,
  .py-xxxl-5 {
    padding-top: 3rem !important; }
  .pr-xxxl-5,
  .px-xxxl-5 {
    padding-right: 3rem !important; }
  .pb-xxxl-5,
  .py-xxxl-5 {
    padding-bottom: 3rem !important; }
  .pl-xxxl-5,
  .px-xxxl-5 {
    padding-left: 3rem !important; }
  .m-xxxl-n1 {
    margin: -0.25rem !important; }
  .mt-xxxl-n1,
  .my-xxxl-n1 {
    margin-top: -0.25rem !important; }
  .mr-xxxl-n1,
  .mx-xxxl-n1 {
    margin-right: -0.25rem !important; }
  .mb-xxxl-n1,
  .my-xxxl-n1 {
    margin-bottom: -0.25rem !important; }
  .ml-xxxl-n1,
  .mx-xxxl-n1 {
    margin-left: -0.25rem !important; }
  .m-xxxl-n2 {
    margin: -2rem !important; }
  .mt-xxxl-n2,
  .my-xxxl-n2 {
    margin-top: -2rem !important; }
  .mr-xxxl-n2,
  .mx-xxxl-n2 {
    margin-right: -2rem !important; }
  .mb-xxxl-n2,
  .my-xxxl-n2 {
    margin-bottom: -2rem !important; }
  .ml-xxxl-n2,
  .mx-xxxl-n2 {
    margin-left: -2rem !important; }
  .m-xxxl-n3 {
    margin: -1rem !important; }
  .mt-xxxl-n3,
  .my-xxxl-n3 {
    margin-top: -1rem !important; }
  .mr-xxxl-n3,
  .mx-xxxl-n3 {
    margin-right: -1rem !important; }
  .mb-xxxl-n3,
  .my-xxxl-n3 {
    margin-bottom: -1rem !important; }
  .ml-xxxl-n3,
  .mx-xxxl-n3 {
    margin-left: -1rem !important; }
  .m-xxxl-n4 {
    margin: -4rem !important; }
  .mt-xxxl-n4,
  .my-xxxl-n4 {
    margin-top: -4rem !important; }
  .mr-xxxl-n4,
  .mx-xxxl-n4 {
    margin-right: -4rem !important; }
  .mb-xxxl-n4,
  .my-xxxl-n4 {
    margin-bottom: -4rem !important; }
  .ml-xxxl-n4,
  .mx-xxxl-n4 {
    margin-left: -4rem !important; }
  .m-xxxl-n5 {
    margin: -3rem !important; }
  .mt-xxxl-n5,
  .my-xxxl-n5 {
    margin-top: -3rem !important; }
  .mr-xxxl-n5,
  .mx-xxxl-n5 {
    margin-right: -3rem !important; }
  .mb-xxxl-n5,
  .my-xxxl-n5 {
    margin-bottom: -3rem !important; }
  .ml-xxxl-n5,
  .mx-xxxl-n5 {
    margin-left: -3rem !important; }
  .m-xxxl-auto {
    margin: auto !important; }
  .mt-xxxl-auto,
  .my-xxxl-auto {
    margin-top: auto !important; }
  .mr-xxxl-auto,
  .mx-xxxl-auto {
    margin-right: auto !important; }
  .mb-xxxl-auto,
  .my-xxxl-auto {
    margin-bottom: auto !important; }
  .ml-xxxl-auto,
  .mx-xxxl-auto {
    margin-left: auto !important; } }

.text-monospace {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important; }

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

.text-wrap {
  white-space: normal !important; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.font-weight-light {
  font-weight: 300 !important; }

.font-weight-lighter {
  font-weight: lighter !important; }

.font-weight-normal {
  font-weight: 400 !important; }

.font-weight-bold {
  font-weight: 500 !important; }

.font-weight-bolder {
  font-weight: 700 !important; }

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

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

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

a.text-primary:hover, a.text-primary:focus {
  color: black !important; }

.text-secondary {
  color: #6c757d !important; }

a.text-secondary:hover, a.text-secondary:focus {
  color: #494f54 !important; }

.text-success {
  color: #28a745 !important; }

a.text-success:hover, a.text-success:focus {
  color: #19692c !important; }

.text-info {
  color: #17a2b8 !important; }

a.text-info:hover, a.text-info:focus {
  color: #0f6674 !important; }

.text-warning {
  color: #ffc107 !important; }

a.text-warning:hover, a.text-warning:focus {
  color: #ba8b00 !important; }

.text-danger {
  color: #dc3545 !important; }

a.text-danger:hover, a.text-danger:focus {
  color: #a71d2a !important; }

.text-light {
  color: #f8f9fa !important; }

a.text-light:hover, a.text-light:focus {
  color: #cbd3da !important; }

.text-dark {
  color: #343a40 !important; }

a.text-dark:hover, a.text-dark:focus {
  color: #121416 !important; }

.text-gray {
  color: #333 !important; }

a.text-gray:hover, a.text-gray:focus {
  color: #0d0d0d !important; }

.text-red {
  color: #d7373d !important; }

a.text-red:hover, a.text-red:focus {
  color: #a12025 !important; }

.text-green {
  color: #44b151 !important; }

a.text-green:hover, a.text-green:focus {
  color: #2f7a38 !important; }

.text-yellow {
  color: #f5a623 !important; }

a.text-yellow:hover, a.text-yellow:focus {
  color: #c37d09 !important; }

.text-body {
  color: #000 !important; }

.text-muted {
  color: #6c757d !important; }

.text-black-50 {
  color: rgba(0, 0, 0, 0.5) !important; }

.text-white-50 {
  color: rgba(255, 255, 255, 0.5) !important; }

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

.text-decoration-none {
  text-decoration: none !important; }

.text-break {
  word-break: break-word !important;
  overflow-wrap: break-word !important; }

.text-reset {
  color: inherit !important; }

.visible {
  visibility: visible !important; }

.invisible {
  visibility: hidden !important; }

@media print {
  *,
  *::before,
  *::after {
    text-shadow: none !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important; }
  a:not(.btn) {
    text-decoration: underline; }
  abbr[title]::after {
    content: " (" attr(title) ")"; }
  pre {
    white-space: pre-wrap !important; }
  pre,
  blockquote {
    border: 1px solid #696969;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  @page {
    size: a3; }
  body {
    min-width: 992px !important; }
  .container {
    min-width: 992px !important; }
  .navbar {
    display: none; }
  .badge {
    border: 1px solid #000; }
  .table {
    border-collapse: collapse !important; }
    .table td,
    .table th {
      background-color: #fff !important; }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #ccc !important; }
  .table-dark {
    color: inherit; }
    .table-dark th,
    .table-dark td,
    .table-dark thead th,
    .table-dark tbody + tbody {
      border-color: #dee2e6; }
  .table .thead-dark th {
    color: inherit;
    border-color: #dee2e6; } }

img {
  max-width: 100%; }

input[placeholder] {
  text-overflow: ellipsis; }

:focus {
  outline: none !important; }

:focus-visible {
  outline: #000 solid 0.2rem !important; }

.bold {
  font-weight: 500; }

.grecaptcha-badge {
  visibility: hidden; }

html {
  font-size: 62.5%; }

/* stylelint-disable selector-class-pattern */
h1, h2, h3, h4, h5, h6 {
  font-weight: 400; }

h1 {
  font-size: 2.4rem; }

h2 {
  font-size: 1.8rem; }

h3 {
  font-size: 1.6rem; }

h4 {
  font-size: 1.5rem; }

h5 {
  font-size: 1rem; }

h6 {
  font-size: 0.8rem; }

@media (min-width: 768px) {
  h1 {
    font-size: 3.2rem; }
  h2 {
    font-size: 2.4rem; }
  h3 {
    font-size: 1.8rem; }
  h4 {
    font-size: 1.6rem; }
  h5 {
    font-size: 1.2rem; }
  h6 {
    font-size: 1rem; } }

.font-secondary h1,
.font-secondary h2,
.font-secondary h3 {
  font-family: KleinCondensed, Klein, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; }

/* stylelint-enable */
._fill {
  height: 100%;
  min-height: 100%; }

._disabled-scrolling {
  position: fixed;
  overflow: hidden;
  width: 100%; }

._pointer-events-none {
  pointer-events: none; }

._disabled,
.disabled {
  opacity: 0.7;
  pointer-events: none; }

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

.-no-events {
  pointer-events: none; }

.-pointer {
  cursor: pointer; }

.mobile-row-grid {
  padding-right: 0;
  padding-left: 0; }

.mobile-row-grid .region:last-child .experience-component {
  margin-right: 0; }

@media (min-width: 576px) {
  .mobile-row-grid .experience-component {
    margin-right: 0.9rem; } }

@media (min-width: 1024px) {
  .mobile-row-grid {
    padding-right: 4rem;
    padding-left: 4rem; } }

/* stylelint-disable */
.custom-layout .image-and-text-container .image-wrapper {
  height: auto;
  margin-bottom: 0; }

.custom-layout .six-buttons,
.custom-layout .six-buttons .content-wrapper {
  height: 100%; }

.custom-layout .experience-component,
.custom-layout .text-button-block,
.custom-layout .text-button-block .content-wrapper {
  height: 100%; }

.custom-layout .-with-margin {
  margin-bottom: 0.4rem; }

.custom-layout .experience-commerce_assets-imageAndText,
.custom-layout .image-and-text-container,
.custom-layout .image-and-text-container > .row {
  height: 100%; }

.experience-commerce_layouts-mobileGrid1r1c > .container-fluid .region {
  overflow: hidden;
  padding-right: 0;
  padding-left: 0; }

.experience-commerce_layouts-mobileGrid2r1c > .container-fluid .region {
  padding-right: 0;
  padding-left: 0; }

.experience-commerce_layouts-mobileGrid2r3c > .container-fluid .region.-first,
.experience-commerce_layouts-mobileGrid3r2c > .container-fluid .region.-first,
.experience-commerce_layouts-mobileGrid3r2c > .container-fluid .region.-third,
.experience-commerce_layouts-mobileGrid3r2c > .container-fluid .region.-five,
.experience-commerce_layouts-mobileGrid3r1c > .container-fluid .region.-first,
.experience-commerce_layouts-mobileGrid3r1c > .container-fluid .region.-second,
.experience-commerce_layouts-mobileGrid3r1c > .container-fluid .region.-third,
.experience-commerce_layouts-mobileGrid2r3c > .container-fluid .region.-four,
.experience-commerce_layouts-mobileGrid2r2c > .container-fluid .region.-first,
.experience-commerce_layouts-mobileGrid2r2c > .container-fluid .region.-third {
  padding-left: 0; }

.experience-commerce_layouts-mobileGrid2r3c > .container-fluid .region.-third,
.experience-commerce_layouts-mobileGrid3r2c > .container-fluid .region.-second,
.experience-commerce_layouts-mobileGrid3r2c > .container-fluid .region.-four,
.experience-commerce_layouts-mobileGrid3r2c > .container-fluid .region.-six,
.experience-commerce_layouts-mobileGrid2r3c > .container-fluid .region.-six,
.experience-commerce_layouts-mobileGrid2r2c > .container-fluid .region.-second,
.experience-commerce_layouts-mobileGrid2r2c > .container-fluid .region.-fourth,
.experience-commerce_layouts-mobileGrid3r1c > .container-fluid .region.-first,
.experience-commerce_layouts-mobileGrid3r1c > .container-fluid .region.-second,
.experience-commerce_layouts-mobileGrid3r1c > .container-fluid .region.-third {
  padding-right: 0; }

.custom-layout.container-fluid .col-lg-3.-left {
  padding-left: 0; }

.custom-layout.container-fluid .col-lg-3.-right {
  padding-right: 0; }

.custom-layout.container-fluid .col-lg-6 {
  padding-right: 0;
  padding-left: 0; }

.pd-gutters .region {
  margin-bottom: 0.4rem; }

.no-space .-with-margin,
.no-space .region {
  margin-bottom: 0; }

@media (min-width: 768px) {
  .experience-commerce_layouts-mobileGrid2r1c > .container-fluid .region.-left,
  .experience-commerce_layouts-mobileGrid2r2c > .container-fluid .region.-second,
  .experience-commerce_layouts-mobileGrid2r3c > .container-fluid .region.-third,
  .experience-commerce_layouts-mobileGrid3r1c > .container-fluid .region.-second,
  .experience-commerce_layouts-mobileGrid3r1c > .container-fluid .region.-first,
  .experience-commerce_layouts-mobileGrid3r2c > .container-fluid .region.-second,
  .experience-commerce_layouts-mobileGrid3r2c > .container-fluid .region.-four {
    padding-right: 0.2rem; }
  .experience-commerce_layouts-mobileGrid2r1c > .container-fluid .region.-right,
  .experience-commerce_layouts-mobileGrid2r2c > .container-fluid .region.-third,
  .experience-commerce_layouts-mobileGrid3r1c > .container-fluid .region.-second,
  .experience-commerce_layouts-mobileGrid3r1c > .container-fluid .region.-third,
  .experience-commerce_layouts-mobileGrid3r2c > .container-fluid .region.-third,
  .experience-commerce_layouts-mobileGrid2r3c > .container-fluid .region.-four,
  .experience-commerce_layouts-mobileGrid3r2c > .container-fluid .region.-five {
    padding-left: 0.2rem; }
  .experience-commerce_layouts-mobileGrid3r2c > .container-fluid .region.-four {
    padding-left: 0; }
  .experience-commerce_layouts-mobileGrid3r2c > .container-fluid .region.-third {
    padding-right: 0; } }

@media (min-width: 1024px) {
  .custom-layout .-with-margin {
    margin-bottom: 0; }
  .experience-commerce_layouts-mobileGrid2r1c > .container-fluid .region.-left,
  .experience-commerce_layouts-mobileGrid2r2c > .container-fluid .region.-second,
  .experience-commerce_layouts-mobileGrid2r3c > .container-fluid .region.-third,
  .experience-commerce_layouts-mobileGrid3r1c > .container-fluid .region.-second,
  .experience-commerce_layouts-mobileGrid3r1c > .container-fluid .region.-first,
  .experience-commerce_layouts-mobileGrid3r2c > .container-fluid .region.-second,
  .experience-commerce_layouts-mobileGrid3r2c > .container-fluid .region.-four {
    padding-right: 0.4rem; }
  .experience-commerce_layouts-mobileGrid2r1c > .container-fluid .region.-right,
  .experience-commerce_layouts-mobileGrid2r2c > .container-fluid .region.-third,
  .experience-commerce_layouts-mobileGrid3r1c > .container-fluid .region.-second,
  .experience-commerce_layouts-mobileGrid3r1c > .container-fluid .region.-third,
  .experience-commerce_layouts-mobileGrid3r2c > .container-fluid .region.-third,
  .experience-commerce_layouts-mobileGrid2r3c > .container-fluid .region.-four,
  .experience-commerce_layouts-mobileGrid3r2c > .container-fluid .region.-five {
    padding-left: 0.4rem; }
  .pd-gutters > [class*='col-'],
  .pd-gutters .col {
    padding-right: 0.4rem;
    padding-left: 0.4rem; }
  .wrapper-252550.container-fluid .col-lg-3.-left {
    padding-left: 0; }
  .wrapper-252550.container-fluid .col-lg-3.-right {
    padding-right: 0.4rem; }
  .wrapper-252550.container-fluid .col-lg-6 {
    padding-right: 0;
    padding-left: 0.4rem; }
  .wrapper-255025.container-fluid .col-lg-6 {
    padding-right: 0.4rem;
    padding-left: 0.4rem; }
  .wrapper-502525.container-fluid .col-lg-6 {
    padding-right: 0.4rem;
    padding-left: 0; }
  .wrapper-502525.container-fluid .col-lg-3.-left {
    padding-left: 0.4rem; } }

/* stylelint-enable */
/* stylelint-disable */
.image-text-btn {
  position: relative;
  height: 52.9rem; }

.image-text-btn .small-text.-absolute {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 0 2rem; }

.image-text-btn .buttons-wrapper.-vertical-mobile .btn-wrapper:not(:first-child) a {
  margin-top: 2rem; }

.image-text-btn .buttons-wrapper.-vertical-mobile.-horizontal-desktop .btn-wrapper:first-child a {
  margin-top: 2rem; }

.image-text-btn .buttons-wrapper.-horizontal-mobile .btn-wrapper,
.image-text-btn .buttons-wrapper.-horizontal-desktop .btn-wrapper {
  width: 100%; }

.image-text-btn .buttons-wrapper.-horizontal-mobile .btn-wrapper.autowidth,
.image-text-btn .buttons-wrapper.-horizontal-desktop .btn-wrapper.autowidth {
  width: auto; }

.image-text-btn .buttons-wrapper.-horizontal-mobile.center,
.image-text-btn .buttons-wrapper.-horizontal-desktop.center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.image-text-btn .video-block {
  width: 100%;
  height: 100%; }

.image-text-btn.-has-image {
  height: auto; }

.image-text-btn.-has-image .image-wrapper {
  position: static; }

.image-text-btn .wrapper {
  position: absolute;
  bottom: 0;
  left: 0; }

.image-text-btn .vertical-mobile-top.wrapper {
  top: 2rem; }

.image-text-btn .vertical-mobile-center.wrapper {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  bottom: auto; }

.image-text-btn.-has-image .image {
  height: auto; }

.image-text-btn .text.text-center p,
.image-text-btn .text.text-center h1,
.image-text-btn .text.text-center h2,
.image-text-btn .text.text-center h3,
.image-text-btn .text.text-center h4 {
  margin-right: auto;
  margin-left: auto; }

.image-text-btn .countdown-wrapper.text-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.image-text-btn.-centered .btn-wrapper {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0; }

.image-text-btn.-centered .content-wrapper h1,
.image-text-btn.-centered .content-wrapper h2,
.image-text-btn.-centered .content-wrapper h3,
.image-text-btn.-centered .content-wrapper h4,
.image-text-btn.-centered .content-wrapper h5,
.image-text-btn.-centered .content-wrapper h6 {
  margin-bottom: 0.8rem; }

.image-text-btn .image-wrapper {
  position: absolute;
  z-index: auto;
  top: 0;
  width: 100%;
  height: 100%; }

.image-text-btn .link {
  position: relative;
  width: 100%;
  height: 100%;
  cursor: initial;
  text-decoration: none; }

.image-text-btn .btn-wrapper {
  z-index: 1; }
  .image-text-btn .btn-wrapper .btn {
    padding-right: 0;
    padding-left: 0; }

.image-text-btn .image-wrapper .image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover; }

.image-text-btn .wrapper {
  margin-bottom: 2rem; }

.image-text-btn .btn {
  width: 100%;
  margin-top: 1rem; }

.image-text-btn .small-text {
  margin-bottom: 0.8rem; }

.image-text-btn .small-text p {
  max-width: 100%; }

@media (max-width: 767.98px) {
  .image-text-btn .left.vertical-mobile-center {
    width: 100%;
    height: 100%;
    background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .image-text-btn .center.vertical-mobile-center {
    height: 100%;
    background-image: radial-gradient(circle at 50% 50%, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0) 82%); }
  .image-text-btn .left.vertical-mobile-top {
    height: 100%;
    background-image: linear-gradient(133deg, #000 -40%, rgba(0, 0, 0, 0) 100%); }
  .image-text-btn .center.vertical-mobile-top {
    top: 0;
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(-40%, #000), to(rgba(0, 0, 0, 0)));
    background-image: linear-gradient(180deg, #000 -40%, rgba(0, 0, 0, 0) 100%); } }

@media (min-width: 768px) {
  .image-text-btn {
    height: 86.6rem; }
  .image-text-btn .buttons-wrapper.-horizontal-mobile .btn-wrapper,
  .image-text-btn .buttons-wrapper.-horizontal-desktop .btn-wrapper {
    width: auto; }
  .image-text-btn .vertical-desktop-center.wrapper {
    top: 50%;
    bottom: auto;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }
  .image-text-btn .vertical-desktop-top.wrapper {
    top: 2rem;
    -webkit-transform: none;
            transform: none; }
  .image-text-btn .vertical-desktop-bottom.wrapper {
    top: auto;
    bottom: 0;
    -webkit-transform: none;
            transform: none; }
  .image-text-btn .buttons-wrapper .btn-wrapper {
    width: auto; }
  .image-text-btn .content-wrapper.text-center {
    margin-right: auto;
    margin-left: auto; }
  .image-text-btn.-centered .content-wrapper {
    max-width: 60rem;
    margin: inherit; }
  .image-text-btn.-centered .btn-wrapper {
    position: static;
    text-align: center; }
  .image-text-btn.-centered .btn {
    min-width: 27.7rem; }
  .image-text-btn.-centered .content-wrapper h1,
  .image-text-btn.-centered .content-wrapper h2,
  .image-text-btn.-centered .content-wrapper h3,
  .image-text-btn.-centered .content-wrapper h4,
  .image-text-btn.-centered .content-wrapper h5,
  .image-text-btn.-centered .content-wrapper h6 {
    max-width: 48rem;
    margin-right: auto;
    margin-bottom: 1.5rem;
    margin-left: auto; }
  .image-text-btn .content-wrapper {
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
    margin: unset; }
  .image-text-btn .btn:not(.-white-underlined):not(.-black-underlined) {
    width: auto;
    min-width: 25.6rem; }
  .image-text-btn .left.vertical-desktop-bottom {
    width: 100%;
    background-image: linear-gradient(45deg, #000 -40%, rgba(0, 0, 0, 0) 60%); }
  .image-text-btn .center.vertical-desktop-bottom {
    background-image: -webkit-gradient(linear, left bottom, left top, color-stop(-40%, #000), to(rgba(0, 0, 0, 0)));
    background-image: linear-gradient(360deg, #000 -40%, rgba(0, 0, 0, 0) 100%); }
  .image-text-btn .left.vertical-desktop-top {
    width: 100%;
    background-image: linear-gradient(135deg, #000 -40%, rgba(0, 0, 0, 0) 60%); }
  .image-text-btn .center.vertical-desktop-top {
    width: 100%;
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(-40%, #000), color-stop(60%, rgba(0, 0, 0, 0)));
    background-image: linear-gradient(180deg, #000 -40%, rgba(0, 0, 0, 0) 60%); } }

@media (max-width: 1023.98px) {
  .image-text-btn .buttons-wrapper.-horizontal-mobile {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
  .image-text-btn .buttons-wrapper.-horizontal-mobile .btn-wrapper:not(:last-child) {
    margin-right: 2rem; } }

@media (min-width: 1024px) {
  .image-text-btn {
    height: 63rem; }
  .image-text-btn .countdown-wrapper.text-center {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .image-text-btn .desktop-align-right p:not(.item),
  .image-text-btn .desktop-align-right h1:not(.item),
  .image-text-btn .desktop-align-right h2:not(.item),
  .image-text-btn .desktop-align-right h3:not(.item),
  .image-text-btn .desktop-align-right h4:not(.item),
  .image-text-btn .small-text.desktop-align-right,
  .image-text-btn .desktop-align-right .countdown-wrapper {
    margin-right: 0 !important;
    margin-left: auto;
    text-align: left; }
  .image-text-btn .desktop-align-right .buttons-wrapper {
    max-width: 50rem;
    margin-left: auto; }
  .image-text-btn .desktop-align-right .buttons-wrapper.-horizontal-desktop {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important; }
  .image-text-btn .desktop-align-right .btn-wrapper {
    margin-right: auto !important; }
  .image-text-btn .desktop-align-center .content-wrapper {
    text-align: center !important; }
  .image-text-btn .desktop-align-center .buttons-wrapper {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .image-text-btn .desktop-align-center p:not(.item),
  .image-text-btn .desktop-align-center h1:not(.item),
  .image-text-btn .desktop-align-center h2:not(.item),
  .image-text-btn .desktop-align-center h3:not(.item),
  .image-text-btn .desktop-align-center h4:not(.item),
  .image-text-btn .desktop-align-center .countdown-wrapper {
    margin-right: auto !important;
    margin-left: auto !important;
    text-align: center; }
  .image-text-btn .desktop-align-center .countdown-wrapper {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .image-text-btn .desktop-align-left p,
  .image-text-btn .desktop-align-left h1,
  .image-text-btn .desktop-align-left h2,
  .image-text-btn .desktop-align-left h3,
  .image-text-btn .desktop-align-left h4 {
    margin-right: auto !important;
    margin-left: 0 !important;
    text-align: left; }
  .image-text-btn .desktop-align-left .buttons-wrapper {
    -webkit-box-align: start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important;
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important; }
  .image-text-btn .buttons-wrapper.-horizontal-desktop .btn-wrapper:not(:last-child) {
    margin-right: 2rem; }
  .image-text-btn .buttons-wrapper.-horizontal-desktop {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
  .image-text-btn .small-text.-absolute {
    padding: 0 4rem; }
  .image-text-btn.-centered {
    height: 70.4rem; }
  .image-text-btn.-centered .content-wrapper {
    max-width: none; }
  .image-text-btn.-centered .content-wrapper h1,
  .image-text-btn.-centered .content-wrapper h2,
  .image-text-btn.-centered .content-wrapper h3,
  .image-text-btn.-centered .content-wrapper h4,
  .image-text-btn.-centered .content-wrapper h5,
  .image-text-btn.-centered .content-wrapper h6 {
    max-width: none; }
  .image-text-btn.-centered p {
    max-width: 65rem;
    margin-right: auto;
    margin-left: auto; }
  .image-text-btn .content-wrapper {
    max-width: none; }
  .image-text-btn p {
    max-width: 64rem; }
  .image-text-btn .decreased-width p,
  .image-text-btn .decreased-width h1,
  .image-text-btn .decreased-width h2,
  .image-text-btn .decreased-width h3,
  .image-text-btn .decreased-width h4,
  .image-text-btn .decreased-width.countdown-wrapper {
    max-width: 50rem; }
  .image-text-btn .btn:not(.-white-underlined):not(.-black-underlined) {
    min-width: 25.6rem; } }

/* stylelint-enable */
.photo-tile-container .photo-tile-image {
  width: 100%;
  height: 21.4rem;
  -o-object-fit: cover;
     object-fit: cover; }

@media (min-width: 768px) {
  .photo-tile-container .photo-tile-image {
    height: 30.6rem; } }

@media (min-width: 1024px) {
  .photo-tile-container .photo-tile-image {
    height: 57.8rem; } }

.textbox .content-wrapper {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem; }

.textbox .description p {
  margin-bottom: 0; }

.textbox h1,
.textbox h2,
.textbox h3,
.textbox h4,
.textbox h5,
.textbox h6 {
  margin-bottom: 1.8rem; }

@media (min-width: 768px) {
  .textbox h1,
  .textbox h2,
  .textbox h3,
  .textbox h4,
  .textbox h5,
  .textbox h6 {
    margin-bottom: 2.1rem; } }

.two-col-image-text .image-wrapper {
  margin-bottom: 1rem; }

.two-col-image-text .autowidth .btn {
  width: auto; }

.two-col-image-text .autowidth {
  min-width: auto !important; }

.two-col-image-text .-equal-buttons .btn-wrapper {
  width: 50%;
  min-width: 50%; }

.two-col-image-text .btn-wrapper {
  margin-bottom: 11px; }

.two-col-image-text .btn {
  width: 100%; }

.two-col-image-text .promo-wrapper {
  padding: 2rem; }

.two-col-image-text .image {
  width: 100%; }

@media (min-width: 768px) {
  .two-col-image-text {
    /* stylelint-disable*/
    /* stylelint-enable  */ }
    .two-col-image-text .image-wrapper {
      margin-bottom: 0; }
    .two-col-image-text .-equal-buttons .btn-wrapper,
    .two-col-image-text .-equal-buttons .btn {
      min-width: auto; }
    .two-col-image-text .text-center .text-wrapper p {
      margin-right: auto;
      margin-left: auto; }
    .two-col-image-text .btn:not(.-white-underlined):not(.-black-underlined) {
      width: auto;
      min-width: 26.5rem;
      margin: auto; } }

@media (min-width: 1024px) {
  .two-col-image-text .text-wrapper p {
    max-width: 60rem; }
  .two-col-image-text .decreased-width p {
    max-width: 40rem; } }

.video-block {
  overflow: hidden; }
  .video-block .frame-wrapper {
    position: relative;
    padding: 56.25% 0 0; }
  .video-block .frame {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .video-block video {
    display: block;
    -webkit-filter: grayscale(0);
            filter: grayscale(0);
    width: 100%;
    -webkit-transform: scale(1.01);
            transform: scale(1.01); }

.clp-carousel h1,
.clp-carousel h2,
.clp-carousel h3,
.clp-carousel h4,
.clp-carousel h5,
.clp-carousel h6 {
  margin-bottom: 1.8rem;
  letter-spacing: 0.2rem; }

.clp-carousel .slider-wrapper {
  margin-bottom: 2.5rem; }

.clp-carousel .btn-wrapper .btn {
  width: 100%; }

@media (min-width: 768px) {
  .clp-carousel {
    margin-right: auto;
    margin-left: auto; }
  .clp-carousel .btn-wrapper .btn {
    width: auto; } }

@media (min-width: 1024px) {
  .clp-carousel .slider-wrapper {
    margin-bottom: 0; } }

.six-buttons.-has-image,
.six-buttons .coupon-text-pd {
  position: relative; }

.six-buttons.-has-image .content-wrapper {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; }

.six-buttons .image-gradient {
  top: 0; }

.six-buttons .six-buttons-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.six-buttons .six-buttons-wrapper .btn-wrapper {
  width: 47.5%;
  margin-bottom: 0.7rem; }

.six-buttons .six-buttons-wrapper .btn:not(.-white-underlined):not(.-black-underlined) {
  width: 100%; }

.six-buttons .content-wrapper {
  padding-top: 2.5rem;
  padding-bottom: 0.7rem; }

.six-buttons .wrapper {
  position: relative; }

@media (min-width: 768px) {
  .six-buttons .six-buttons-wrapper .btn-wrapper {
    width: 32%; }
  .six-buttons .six-buttons-wrapper .btn:not(.-white-underlined):not(.-black-underlined) {
    width: 100%; } }

@media (min-width: 1024px) {
  .six-buttons .content-wrapper {
    padding-bottom: 2.5rem; } }

.two-col-two-images .block-title h1,
.two-col-two-images .block-title h2,
.two-col-two-images .block-title h3,
.two-col-two-images .block-title h4,
.two-col-two-images .block-title h5,
.two-col-two-images .block-title h6,
.two-col-two-images .block-title p {
  padding-top: 1rem;
  padding-bottom: 1rem;
  margin-bottom: 0; }

.two-col-two-images .image {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover; }

.two-col-two-images .large-image-wrapper.order-first {
  margin-bottom: 2rem; }

.two-col-two-images .small-image-wrapper .image {
  margin-bottom: 0rem; }

.two-col-two-images .small-image-wrapper.order-first {
  margin-bottom: 4rem; }

.two-col-two-images .-vertical .btn-wrapper:not(:first-child) {
  margin-top: 2rem; }

.two-col-two-images .btn:not(.-white-underlined):not(.-black-underlined) {
  display: block; }

@media (max-width: 767.98px) {
  .block-title h1,
  .block-title h2,
  .block-title h3,
  .block-title h4,
  .block-title h5,
  .block-title h6 {
    letter-spacing: 0.1rem;
    line-height: 3.2rem; } }

@media (min-width: 768px) {
  .two-col-two-images .large-image-wrapper .image {
    height: 54.6rem; }
  .two-col-two-images .large-image-wrapper {
    width: 53%; }
  .two-col-two-images .large-image-wrapper.order-first {
    margin-bottom: 0; }
  .two-col-two-images .small-image-wrapper {
    width: 45%; }
  .two-col-two-images .small-image-wrapper .content-wrapper {
    max-width: 35.2rem; }
  .two-col-two-images .small-image-wrapper .link-wrapper {
    margin-bottom: 4rem; }
  .two-col-two-images .btn-wrapper .btn {
    width: auto; } }

@media (min-width: 1024px) {
  .two-col-two-images .block-title h1,
  .two-col-two-images .block-title h2,
  .two-col-two-images .block-title h3,
  .two-col-two-images .block-title h4,
  .two-col-two-images .block-title h5,
  .two-col-two-images .block-title h6,
  .two-col-two-images .block-title p {
    padding-bottom: 2.5rem; }
  .two-col-two-images .large-image-wrapper .image {
    height: 100%; }
  .two-col-two-images .large-image-wrapper {
    width: 60%; }
  .two-col-two-images .small-image-wrapper {
    width: 40%; } }

.shop-category-component {
  position: relative; }
  @media (min-width: 768px) {
    .shop-category-component {
      padding: 2em 4em; } }
  @media (min-width: 375px) {
    .shop-category-component {
      padding: 1em 2em; } }

.shop-category-component-filter::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: inherit;
  -webkit-filter: brightness(40%);
          filter: brightness(40%); }

.shop-category-header {
  color: #00174f;
  font-family: FuturaSTD;
  font-weight: 900; }
  @media (min-width: 1024px) {
    .shop-category-header {
      padding-right: 4em; } }
  @media (min-width: 768px) {
    .shop-category-header {
      padding-right: 2em; } }

.shop-category-header-text-color-other {
  color: #fff; }

.shop-category-label {
  padding: 0.375em 0.5em;
  font-family: FuturaSTD;
  text-decoration: underline; }
  @media (min-width: 768px) {
    .shop-category-label {
      padding: 0.625em 1.5em; } }

.shop-category-label-a {
  color: #00174f !important; }

.shop-category-label-a-color-other {
  color: #fff !important; }

.search-banner.-mobile {
  padding: 0 2rem; }

.page-title.-plp {
  padding-top: 1.6rem;
  padding-bottom: 2rem;
  text-align: left; }

.page-title.-srp {
  padding-top: 2.5rem;
  font-weight: 400; }

@media (min-width: 768px) {
  .page-title.-plp {
    padding-top: 1.6rem;
    padding-bottom: 1.3rem;
    font-size: 2.4rem; }
  .page-title.-srp {
    padding-top: 4.4rem;
    margin-bottom: 1.8rem; } }

@media (min-width: 1024px) {
  .search-banner {
    position: relative;
    max-width: 192rem;
    margin: auto; }
  .search-banner .image-wrapper {
    margin-top: 2rem; }
  .search-banner .page-title {
    padding: 1.6rem 4rem;
    color: #000; }
  .search-banner .page-title.with-image {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    position: absolute;
    width: 100%;
    color: #fff;
    text-align: left; }
  .search-banner .image {
    width: 100%;
    height: 32.6rem;
    -o-object-fit: cover;
       object-fit: cover; }
  .page-title.-plp {
    padding-bottom: 0.5rem; } }

/* stylelint-disable */
.banner-carousel {
  overflow: hidden; }

.banner-carousel .swiper-button-next,
.banner-carousel .swiper-button-prev {
  -webkit-transform: none;
          transform: none; }

.banner-carousel .image-and-text-container .image-wrapper {
  height: auto; }

.banner-carousel .image-and-text-container .image-heading-container {
  right: 0;
  left: 0; }

.banner-carousel .swiper-container:not(.initialized) .swiper-slide {
  height: 0; }

.banner-carousel .shading-enabled .swiper-slide {
  -webkit-box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.6);
          box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.6); }

.banner-carousel .shading-enabled .swiper-container {
  padding: 0.4rem 0.4rem;
  -webkit-transform: translate(-0.4rem, -0.4rem);
          transform: translate(-0.4rem, -0.4rem); }

.banner-carousel .product-tile-body,
.banner-carousel .image-text-btn {
  margin-bottom: 0 !important; }

.banner-carousel .product-tile-body {
  padding-bottom: 0; }

.banner-carousel .narrow-column,
.banner-carousel .wide-column {
  width: 100%; }

.banner-carousel .clp-carousel {
  margin-top: -2rem; }

.banner-carousel .product-tile-pd {
  background-color: #fff; }

.banner-carousel .product-tile-pd .btn-wrapper,
.banner-carousel .product-tile-pd .sizes-overlay {
  display: none !important; }

@media (max-width: 767.98px) {
  .banner-carousel .mobile-shifted.clp-carousel {
    margin-left: 2rem; }
  .banner-carousel .mobile-shifted .swiper-container {
    width: 106%; }
  .banner-carousel .mobile-shifted .swiper-button-next {
    right: 2.6rem; }
  .banner-carousel .mobile-two-tiles {
    margin-left: 0 !important; }
  .banner-carousel .mobile-two-tiles .swiper-container {
    width: 100% !important; }
  .banner-carousel .mobile-centered .swiper-container {
    width: 49.5%; }
  .banner-carousel .clp-carousel.mobile-centered {
    margin-left: 0; } }

@media (min-width: 768px) and (max-width: 1439.98px) {
  .banner-carousel .clp-carousel {
    margin-top: -23.5%; }
  .banner-carousel .tablet-1 .swiper-container {
    width: 31%; }
  .banner-carousel .tablet-2 .swiper-container {
    width: 63%; }
  .banner-carousel .tablet-3 .swiper-container {
    width: 95%; } }

@media (min-width: 1024px) {
  .banner-carousel .clp-carousel {
    margin-top: -2rem; } }

@media (min-width: 1200px) {
  .banner-carousel .product-tile .product-tile-body {
    padding-right: 1rem;
    padding-left: 1rem; } }

@media (min-width: 1200px) {
  .banner-carousel {
    padding-right: 0; }
  .banner-carousel.change-order .columns-wrapper {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .banner-carousel.change-order .desktop-2 .swiper-container {
    margin-right: -7.3rem;
    margin-left: auto; }
  .banner-carousel.change-order .desktop-3 .swiper-container {
    margin-right: -72%;
    margin-left: auto; }
  .banner-carousel.container {
    padding-top: 4rem;
    padding-bottom: 4rem; }
  .banner-carousel .columns-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .banner-carousel .wide-column {
    width: 72%; }
  .banner-carousel .narrow-column {
    width: 28%; }
  .banner-carousel .clp-carousel {
    margin-top: 0; }
  .banner-carousel .desktop-1 .swiper-container {
    width: 52.5%; }
  .banner-carousel .desktop-2 .swiper-container {
    width: 107.2%;
    margin-left: -7.3rem; }
  .banner-carousel .desktop-3 .swiper-container {
    width: 165%;
    margin-left: -72%; } }

/* stylelint-enable */
.newsletter-pd .email-subscription {
  padding: 3rem 2rem 2.8rem;
  background-color: transparent;
  color: #000; }

.newsletter-pd .js-subscribe-email.-black-underlined,
.newsletter-pd .js-subscribe-email.-white-underlined {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none; }

.newsletter-pd .form-control {
  background-color: #fff;
  color: #000; }

.newsletter-pd .js-form {
  width: 100%; }

.newsletter-pd .main-text {
  margin-bottom: 0.8rem; }

.newsletter-pd .main-text h1,
.newsletter-pd .main-text h2,
.newsletter-pd .main-text h3,
.newsletter-pd .main-text h4,
.newsletter-pd .main-text h5,
.newsletter-pd .main-text h6 {
  margin-bottom: 2.3rem; }

.newsletter-pd .subscription-success h1,
.newsletter-pd .subscription-success h2,
.newsletter-pd .subscription-success h3,
.newsletter-pd .subscription-success h4,
.newsletter-pd .subscription-success h5,
.newsletter-pd .subscription-success h6 {
  margin-bottom: 2rem; }

.newsletter-pd .subscription-success p:last-child {
  margin-bottom: 0; }

.newsletter-pd .email-wrapper {
  margin-bottom: 2rem; }

.newsletter-pd .additional {
  padding-top: 0.3rem; }

.newsletter-pd .checkbox-wrapper .custom-checkbox:not(:last-child) {
  margin-right: 4rem; }

.newsletter-pd .consent {
  margin-top: 2.5rem; }

@media (min-width: 768px) {
  .newsletter-pd .email-subscription {
    height: 100%;
    padding-top: 4rem; }
  .newsletter-pd .js-form {
    -ms-flex-item-align: start;
        align-self: flex-start; }
  .newsletter-pd .image {
    width: 100%;
    height: 100%;
    min-height: 57.8rem;
    -o-object-fit: cover;
       object-fit: cover; }
  .newsletter-pd .btn.js-subscribe-email {
    margin: 0; }
  .newsletter-pd .subscription-success {
    height: auto;
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center; } }

@media (min-width: 1200px) {
  .newsletter-pd .email-subscription {
    padding-right: 11.6rem;
    padding-left: 11.6rem; }
  .newsletter-pd .js-form {
    padding-top: 6rem; }
  .newsletter-pd .email-subscription .consent {
    margin-bottom: 1rem; } }

@media (min-width: 1920px) {
  .newsletter-pd .js-form {
    max-width: 56rem;
    padding-top: 11rem;
    margin-left: 9rem; } }

.gender-block {
  position: relative; }

.gender-block .buttons-block {
  position: absolute;
  bottom: 4rem;
  width: 100%; }

.gender-block .btn-wrapper:not(:last-child) {
  margin-bottom: 1.2rem; }

.gender-block .item {
  pointer-events: none; }

.gender-block .image {
  width: 100%;
  height: 100%;
  font-family: 'object-fit: cover; object-position: center top;';
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center top;
     object-position: center top; }

.gender-block .item:nth-child(1),
.gender-block .item:nth-child(3) {
  display: none; }

.gender-block .link-wrapper {
  display: block;
  height: calc(100vh - 10.5rem); }

.gender-block .btn:not(.-white-underlined):not(.-black-underlined) {
  min-width: 28rem; }

.body-wrapper.is-transparent .gender-block .link-wrapper {
  display: block;
  height: 100vh; }

@media (min-width: 768px) {
  .gender-block .btn:not(.-white-underlined):not(.-black-underlined) {
    display: block !important;
    width: 32rem;
    min-width: 32rem;
    margin: auto; }
  .gender-block .btn.-white-underlined,
  .gender-block .btn.-black-underlined {
    display: inline-block !important; } }

@media (min-width: 1024px) {
  .gender-block {
    pointer-events: none; }
  .gender-block .link-wrapper {
    height: calc(100vh - 11.1rem); }
  .gender-block:hover .item:not(:hover) {
    background-color: #fff;
    opacity: 0.7;
    -webkit-transition: opacity 0.3s linear;
    transition: opacity 0.3s linear; }
  .gender-block .item:nth-child(1),
  .gender-block .item:nth-child(3) {
    display: block; }
  .gender-block .link-wrapper {
    margin-right: 0.4rem;
    pointer-events: auto; }
  .gender-block .item .btn-wrapper {
    position: absolute;
    bottom: 4rem;
    width: 100%; }
  .gender-block .item:nth-child(3) .link-wrapper {
    margin-right: 0; }
  .body-wrapper.is-transparent .gender-block .link-wrapper {
    height: 100vh; } }

:root {
  /** ==================================================================== **/
  /** Create Custom CSS Variables from "sfra bootstrap override" variables **/
  /** ==================================================================== **/
  --color-white: #fff;
  --color-black: #000;
  --color-blue: #007bff;
  --color-green: #44b151;
  --color-primary: #00a1e0;
  --color-red: #d7373d;
  --color-success: var(--color-green);
  --color-danger: var(--color-red);
  --color-light-blue: #7ed0ee;
  --color-grey1: #f9f9f9;
  --color-grey2: #eee;
  --color-grey3: #ccc;
  --color-grey4: #999;
  --color-grey5: #666;
  --color-grey6: #444;
  --color-grey7: #222;
  --color-grey8: #333;
  --color-grey-transparent-1: rgba(0, 0, 0, 0.65);
  --color-grey-transparent-2: rgba(0, 0, 0, 0.25);
  --color-light-gray: var(--color-grey1);
  --color-slightly-darker-gray: var(--color-grey4);
  --color-dark-gray: var(--color-grey6);
  --color-darker-gray: var(--color-grey7);
  --color-horizontal-rule-grey: var(--color-grey3);
  --color-product-number-grey: var(--color-grey3);
  --color-horizontal-border-grey: var(--color-grey4);
  --color-menu-link: var(--color-grey6);
  --color-close-menu-bg: var(--color-grey2);
  --color-link-color: var(--color-dark-gray);
  --color-hr-border-color: var(--color-grey3);
  /** ==================================================================== **/
  /** Define skin named variables here                                    **/
  /** ==================================================================== **/
  --skin-background-color-1: var(--color-gray1);
  --skin-border-color-1: var(--color-white);
  --skin-main-text-color-1: var(--color-gray7);
  --skin-main-text-color-2: var(--color-gray7);
  --skin-menu-color-1: #444;
  --skin-menu-color-1-invert: var(--color-white);
  --skin-menu-color-2: #222;
  --skin-link-color-1: #444;
  --skin-link-color-2: var(--color-blue);
  --skin-primary-color-1: var(--color-primary);
  --skin-primary-color-2: var(--color-primary);
  --skin-primary-color-invert-1: var(--color-white);
  --skin-selectbox-background-color-1: var(--color-white);
  --skin-selectbox-text-color-1: var(--skin-main-text-color-1);
  --skin-banner-background-color-1: #444;
  --skin-banner-background-color-2: #222;
  --skin-banner-text-color-1: var(--color-white);
  --skin-heading-color-1: var(--color-primary);
  --skin-heading-color-1-invert: var(--color-white);
  --skin-price-1: var(--color-gray7);
  --skin-header-font: 'Dosis';
  --skin-body-font: var(--font-family-sans-serif); }

@media (max-width: 374.98px) {
  .pull-left-xxs {
    float: left; }
  .pull-right-xxs {
    float: right; } }

@media (min-width: 375px) {
  .pull-left-xs {
    float: left; }
  .pull-right-xs {
    float: right; } }

@media (min-width: 576px) and (max-width: 767.98px) {
  .pull-left-sm {
    float: left; }
  .pull-right-sm {
    float: right; } }

@media (min-width: 768px) and (max-width: 1023.98px) {
  .pull-left-md {
    float: left; }
  .pull-right-md {
    float: right; } }

@media (min-width: 1024px) and (max-width: 1199.98px) {
  .pull-left-lg {
    float: left; }
  .pull-right-lg {
    float: right; } }

@media (min-width: 1200px) and (max-width: 1439.98px) {
  .pull-left-xl {
    float: left; }
  .pull-right-xl {
    float: right; } }

@media (min-width: 1440px) and (max-width: 1919.98px) {
  .pull-left-xxl {
    float: left; }
  .pull-right-xxl {
    float: right; } }

@media (min-width: 1920px) {
  .pull-left-xxxl {
    float: left; }
  .pull-right-xxxl {
    float: right; } }

@media (max-width: 374.98px) {
  .hidden-xxs-down {
    display: none !important; } }

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

@media (max-width: 767.98px) {
  .hidden-sm-down {
    display: none !important; } }

@media (max-width: 1023.98px) {
  .hidden-md-down {
    display: none !important; } }

@media (max-width: 1199.98px) {
  .hidden-lg-down {
    display: none !important; } }

@media (max-width: 1439.98px) {
  .hidden-xl-down {
    display: none !important; } }

@media (max-width: 1919.98px) {
  .hidden-xxl-down {
    display: none !important; } }

.hidden-xxxl-down {
  display: none !important; }

.row.equal-height > [class^="col"] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.flag-icon-background, .flag-icon {
  background-size: contain;
  background-position: 50%;
  background-repeat: no-repeat; }

.flag-icon {
  position: relative;
  display: inline-block;
  width: 1.33333em;
  line-height: 1em; }
  .flag-icon:before {
    content: '\00a0'; }
  .flag-icon.flag-icon-squared {
    width: 1em; }

.flag-icon-ad {
  background-image: url(../fonts/flags//4x3/ad.svg); }
  .flag-icon-ad.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ad.svg); }

.flag-icon-ae {
  background-image: url(../fonts/flags//4x3/ae.svg); }
  .flag-icon-ae.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ae.svg); }

.flag-icon-af {
  background-image: url(../fonts/flags//4x3/af.svg); }
  .flag-icon-af.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/af.svg); }

.flag-icon-ag {
  background-image: url(../fonts/flags//4x3/ag.svg); }
  .flag-icon-ag.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ag.svg); }

.flag-icon-ai {
  background-image: url(../fonts/flags//4x3/ai.svg); }
  .flag-icon-ai.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ai.svg); }

.flag-icon-al {
  background-image: url(../fonts/flags//4x3/al.svg); }
  .flag-icon-al.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/al.svg); }

.flag-icon-am {
  background-image: url(../fonts/flags//4x3/am.svg); }
  .flag-icon-am.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/am.svg); }

.flag-icon-ao {
  background-image: url(../fonts/flags//4x3/ao.svg); }
  .flag-icon-ao.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ao.svg); }

.flag-icon-aq {
  background-image: url(../fonts/flags//4x3/aq.svg); }
  .flag-icon-aq.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/aq.svg); }

.flag-icon-ar {
  background-image: url(../fonts/flags//4x3/ar.svg); }
  .flag-icon-ar.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ar.svg); }

.flag-icon-as {
  background-image: url(../fonts/flags//4x3/as.svg); }
  .flag-icon-as.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/as.svg); }

.flag-icon-at {
  background-image: url(../fonts/flags//4x3/at.svg); }
  .flag-icon-at.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/at.svg); }

.flag-icon-au {
  background-image: url(../fonts/flags//4x3/au.svg); }
  .flag-icon-au.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/au.svg); }

.flag-icon-aw {
  background-image: url(../fonts/flags//4x3/aw.svg); }
  .flag-icon-aw.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/aw.svg); }

.flag-icon-ax {
  background-image: url(../fonts/flags//4x3/ax.svg); }
  .flag-icon-ax.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ax.svg); }

.flag-icon-az {
  background-image: url(../fonts/flags//4x3/az.svg); }
  .flag-icon-az.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/az.svg); }

.flag-icon-ba {
  background-image: url(../fonts/flags//4x3/ba.svg); }
  .flag-icon-ba.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ba.svg); }

.flag-icon-bb {
  background-image: url(../fonts/flags//4x3/bb.svg); }
  .flag-icon-bb.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/bb.svg); }

.flag-icon-bd {
  background-image: url(../fonts/flags//4x3/bd.svg); }
  .flag-icon-bd.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/bd.svg); }

.flag-icon-be {
  background-image: url(../fonts/flags//4x3/be.svg); }
  .flag-icon-be.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/be.svg); }

.flag-icon-bf {
  background-image: url(../fonts/flags//4x3/bf.svg); }
  .flag-icon-bf.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/bf.svg); }

.flag-icon-bg {
  background-image: url(../fonts/flags//4x3/bg.svg); }
  .flag-icon-bg.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/bg.svg); }

.flag-icon-bh {
  background-image: url(../fonts/flags//4x3/bh.svg); }
  .flag-icon-bh.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/bh.svg); }

.flag-icon-bi {
  background-image: url(../fonts/flags//4x3/bi.svg); }
  .flag-icon-bi.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/bi.svg); }

.flag-icon-bj {
  background-image: url(../fonts/flags//4x3/bj.svg); }
  .flag-icon-bj.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/bj.svg); }

.flag-icon-bl {
  background-image: url(../fonts/flags//4x3/bl.svg); }
  .flag-icon-bl.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/bl.svg); }

.flag-icon-bm {
  background-image: url(../fonts/flags//4x3/bm.svg); }
  .flag-icon-bm.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/bm.svg); }

.flag-icon-bn {
  background-image: url(../fonts/flags//4x3/bn.svg); }
  .flag-icon-bn.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/bn.svg); }

.flag-icon-bo {
  background-image: url(../fonts/flags//4x3/bo.svg); }
  .flag-icon-bo.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/bo.svg); }

.flag-icon-bq {
  background-image: url(../fonts/flags//4x3/bq.svg); }
  .flag-icon-bq.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/bq.svg); }

.flag-icon-br {
  background-image: url(../fonts/flags//4x3/br.svg); }
  .flag-icon-br.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/br.svg); }

.flag-icon-bs {
  background-image: url(../fonts/flags//4x3/bs.svg); }
  .flag-icon-bs.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/bs.svg); }

.flag-icon-bt {
  background-image: url(../fonts/flags//4x3/bt.svg); }
  .flag-icon-bt.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/bt.svg); }

.flag-icon-bv {
  background-image: url(../fonts/flags//4x3/bv.svg); }
  .flag-icon-bv.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/bv.svg); }

.flag-icon-bw {
  background-image: url(../fonts/flags//4x3/bw.svg); }
  .flag-icon-bw.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/bw.svg); }

.flag-icon-by {
  background-image: url(../fonts/flags//4x3/by.svg); }
  .flag-icon-by.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/by.svg); }

.flag-icon-bz {
  background-image: url(../fonts/flags//4x3/bz.svg); }
  .flag-icon-bz.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/bz.svg); }

.flag-icon-ca {
  background-image: url(../fonts/flags//4x3/ca.svg); }
  .flag-icon-ca.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ca.svg); }

.flag-icon-cc {
  background-image: url(../fonts/flags//4x3/cc.svg); }
  .flag-icon-cc.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/cc.svg); }

.flag-icon-cd {
  background-image: url(../fonts/flags//4x3/cd.svg); }
  .flag-icon-cd.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/cd.svg); }

.flag-icon-cf {
  background-image: url(../fonts/flags//4x3/cf.svg); }
  .flag-icon-cf.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/cf.svg); }

.flag-icon-cg {
  background-image: url(../fonts/flags//4x3/cg.svg); }
  .flag-icon-cg.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/cg.svg); }

.flag-icon-ch {
  background-image: url(../fonts/flags//4x3/ch.svg); }
  .flag-icon-ch.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ch.svg); }

.flag-icon-ci {
  background-image: url(../fonts/flags//4x3/ci.svg); }
  .flag-icon-ci.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ci.svg); }

.flag-icon-ck {
  background-image: url(../fonts/flags//4x3/ck.svg); }
  .flag-icon-ck.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ck.svg); }

.flag-icon-cl {
  background-image: url(../fonts/flags//4x3/cl.svg); }
  .flag-icon-cl.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/cl.svg); }

.flag-icon-cm {
  background-image: url(../fonts/flags//4x3/cm.svg); }
  .flag-icon-cm.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/cm.svg); }

.flag-icon-cn {
  background-image: url(../fonts/flags//4x3/cn.svg); }
  .flag-icon-cn.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/cn.svg); }

.flag-icon-co {
  background-image: url(../fonts/flags//4x3/co.svg); }
  .flag-icon-co.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/co.svg); }

.flag-icon-cr {
  background-image: url(../fonts/flags//4x3/cr.svg); }
  .flag-icon-cr.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/cr.svg); }

.flag-icon-cu {
  background-image: url(../fonts/flags//4x3/cu.svg); }
  .flag-icon-cu.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/cu.svg); }

.flag-icon-cv {
  background-image: url(../fonts/flags//4x3/cv.svg); }
  .flag-icon-cv.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/cv.svg); }

.flag-icon-cw {
  background-image: url(../fonts/flags//4x3/cw.svg); }
  .flag-icon-cw.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/cw.svg); }

.flag-icon-cx {
  background-image: url(../fonts/flags//4x3/cx.svg); }
  .flag-icon-cx.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/cx.svg); }

.flag-icon-cy {
  background-image: url(../fonts/flags//4x3/cy.svg); }
  .flag-icon-cy.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/cy.svg); }

.flag-icon-cz {
  background-image: url(../fonts/flags//4x3/cz.svg); }
  .flag-icon-cz.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/cz.svg); }

.flag-icon-de {
  background-image: url(../fonts/flags//4x3/de.svg); }
  .flag-icon-de.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/de.svg); }

.flag-icon-dj {
  background-image: url(../fonts/flags//4x3/dj.svg); }
  .flag-icon-dj.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/dj.svg); }

.flag-icon-dk {
  background-image: url(../fonts/flags//4x3/dk.svg); }
  .flag-icon-dk.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/dk.svg); }

.flag-icon-dm {
  background-image: url(../fonts/flags//4x3/dm.svg); }
  .flag-icon-dm.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/dm.svg); }

.flag-icon-do {
  background-image: url(../fonts/flags//4x3/do.svg); }
  .flag-icon-do.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/do.svg); }

.flag-icon-dz {
  background-image: url(../fonts/flags//4x3/dz.svg); }
  .flag-icon-dz.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/dz.svg); }

.flag-icon-ec {
  background-image: url(../fonts/flags//4x3/ec.svg); }
  .flag-icon-ec.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ec.svg); }

.flag-icon-ee {
  background-image: url(../fonts/flags//4x3/ee.svg); }
  .flag-icon-ee.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ee.svg); }

.flag-icon-eg {
  background-image: url(../fonts/flags//4x3/eg.svg); }
  .flag-icon-eg.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/eg.svg); }

.flag-icon-eh {
  background-image: url(../fonts/flags//4x3/eh.svg); }
  .flag-icon-eh.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/eh.svg); }

.flag-icon-er {
  background-image: url(../fonts/flags//4x3/er.svg); }
  .flag-icon-er.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/er.svg); }

.flag-icon-es {
  background-image: url(../fonts/flags//4x3/es.svg); }
  .flag-icon-es.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/es.svg); }

.flag-icon-et {
  background-image: url(../fonts/flags//4x3/et.svg); }
  .flag-icon-et.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/et.svg); }

.flag-icon-fi {
  background-image: url(../fonts/flags//4x3/fi.svg); }
  .flag-icon-fi.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/fi.svg); }

.flag-icon-fj {
  background-image: url(../fonts/flags//4x3/fj.svg); }
  .flag-icon-fj.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/fj.svg); }

.flag-icon-fk {
  background-image: url(../fonts/flags//4x3/fk.svg); }
  .flag-icon-fk.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/fk.svg); }

.flag-icon-fm {
  background-image: url(../fonts/flags//4x3/fm.svg); }
  .flag-icon-fm.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/fm.svg); }

.flag-icon-fo {
  background-image: url(../fonts/flags//4x3/fo.svg); }
  .flag-icon-fo.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/fo.svg); }

.flag-icon-fr {
  background-image: url(../fonts/flags//4x3/fr.svg); }
  .flag-icon-fr.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/fr.svg); }

.flag-icon-ga {
  background-image: url(../fonts/flags//4x3/ga.svg); }
  .flag-icon-ga.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ga.svg); }

.flag-icon-gb {
  background-image: url(../fonts/flags//4x3/gb.svg); }
  .flag-icon-gb.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/gb.svg); }

.flag-icon-gd {
  background-image: url(../fonts/flags//4x3/gd.svg); }
  .flag-icon-gd.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/gd.svg); }

.flag-icon-ge {
  background-image: url(../fonts/flags//4x3/ge.svg); }
  .flag-icon-ge.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ge.svg); }

.flag-icon-gf {
  background-image: url(../fonts/flags//4x3/gf.svg); }
  .flag-icon-gf.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/gf.svg); }

.flag-icon-gg {
  background-image: url(../fonts/flags//4x3/gg.svg); }
  .flag-icon-gg.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/gg.svg); }

.flag-icon-gh {
  background-image: url(../fonts/flags//4x3/gh.svg); }
  .flag-icon-gh.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/gh.svg); }

.flag-icon-gi {
  background-image: url(../fonts/flags//4x3/gi.svg); }
  .flag-icon-gi.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/gi.svg); }

.flag-icon-gl {
  background-image: url(../fonts/flags//4x3/gl.svg); }
  .flag-icon-gl.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/gl.svg); }

.flag-icon-gm {
  background-image: url(../fonts/flags//4x3/gm.svg); }
  .flag-icon-gm.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/gm.svg); }

.flag-icon-gn {
  background-image: url(../fonts/flags//4x3/gn.svg); }
  .flag-icon-gn.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/gn.svg); }

.flag-icon-gp {
  background-image: url(../fonts/flags//4x3/gp.svg); }
  .flag-icon-gp.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/gp.svg); }

.flag-icon-gq {
  background-image: url(../fonts/flags//4x3/gq.svg); }
  .flag-icon-gq.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/gq.svg); }

.flag-icon-gr {
  background-image: url(../fonts/flags//4x3/gr.svg); }
  .flag-icon-gr.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/gr.svg); }

.flag-icon-gs {
  background-image: url(../fonts/flags//4x3/gs.svg); }
  .flag-icon-gs.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/gs.svg); }

.flag-icon-gt {
  background-image: url(../fonts/flags//4x3/gt.svg); }
  .flag-icon-gt.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/gt.svg); }

.flag-icon-gu {
  background-image: url(../fonts/flags//4x3/gu.svg); }
  .flag-icon-gu.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/gu.svg); }

.flag-icon-gw {
  background-image: url(../fonts/flags//4x3/gw.svg); }
  .flag-icon-gw.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/gw.svg); }

.flag-icon-gy {
  background-image: url(../fonts/flags//4x3/gy.svg); }
  .flag-icon-gy.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/gy.svg); }

.flag-icon-hk {
  background-image: url(../fonts/flags//4x3/hk.svg); }
  .flag-icon-hk.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/hk.svg); }

.flag-icon-hm {
  background-image: url(../fonts/flags//4x3/hm.svg); }
  .flag-icon-hm.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/hm.svg); }

.flag-icon-hn {
  background-image: url(../fonts/flags//4x3/hn.svg); }
  .flag-icon-hn.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/hn.svg); }

.flag-icon-hr {
  background-image: url(../fonts/flags//4x3/hr.svg); }
  .flag-icon-hr.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/hr.svg); }

.flag-icon-ht {
  background-image: url(../fonts/flags//4x3/ht.svg); }
  .flag-icon-ht.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ht.svg); }

.flag-icon-hu {
  background-image: url(../fonts/flags//4x3/hu.svg); }
  .flag-icon-hu.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/hu.svg); }

.flag-icon-id {
  background-image: url(../fonts/flags//4x3/id.svg); }
  .flag-icon-id.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/id.svg); }

.flag-icon-ie {
  background-image: url(../fonts/flags//4x3/ie.svg); }
  .flag-icon-ie.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ie.svg); }

.flag-icon-il {
  background-image: url(../fonts/flags//4x3/il.svg); }
  .flag-icon-il.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/il.svg); }

.flag-icon-im {
  background-image: url(../fonts/flags//4x3/im.svg); }
  .flag-icon-im.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/im.svg); }

.flag-icon-in {
  background-image: url(../fonts/flags//4x3/in.svg); }
  .flag-icon-in.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/in.svg); }

.flag-icon-io {
  background-image: url(../fonts/flags//4x3/io.svg); }
  .flag-icon-io.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/io.svg); }

.flag-icon-iq {
  background-image: url(../fonts/flags//4x3/iq.svg); }
  .flag-icon-iq.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/iq.svg); }

.flag-icon-ir {
  background-image: url(../fonts/flags//4x3/ir.svg); }
  .flag-icon-ir.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ir.svg); }

.flag-icon-is {
  background-image: url(../fonts/flags//4x3/is.svg); }
  .flag-icon-is.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/is.svg); }

.flag-icon-it {
  background-image: url(../fonts/flags//4x3/it.svg); }
  .flag-icon-it.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/it.svg); }

.flag-icon-je {
  background-image: url(../fonts/flags//4x3/je.svg); }
  .flag-icon-je.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/je.svg); }

.flag-icon-jm {
  background-image: url(../fonts/flags//4x3/jm.svg); }
  .flag-icon-jm.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/jm.svg); }

.flag-icon-jo {
  background-image: url(../fonts/flags//4x3/jo.svg); }
  .flag-icon-jo.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/jo.svg); }

.flag-icon-jp {
  background-image: url(../fonts/flags//4x3/jp.svg); }
  .flag-icon-jp.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/jp.svg); }

.flag-icon-ke {
  background-image: url(../fonts/flags//4x3/ke.svg); }
  .flag-icon-ke.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ke.svg); }

.flag-icon-kg {
  background-image: url(../fonts/flags//4x3/kg.svg); }
  .flag-icon-kg.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/kg.svg); }

.flag-icon-kh {
  background-image: url(../fonts/flags//4x3/kh.svg); }
  .flag-icon-kh.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/kh.svg); }

.flag-icon-ki {
  background-image: url(../fonts/flags//4x3/ki.svg); }
  .flag-icon-ki.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ki.svg); }

.flag-icon-km {
  background-image: url(../fonts/flags//4x3/km.svg); }
  .flag-icon-km.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/km.svg); }

.flag-icon-kn {
  background-image: url(../fonts/flags//4x3/kn.svg); }
  .flag-icon-kn.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/kn.svg); }

.flag-icon-kp {
  background-image: url(../fonts/flags//4x3/kp.svg); }
  .flag-icon-kp.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/kp.svg); }

.flag-icon-kr {
  background-image: url(../fonts/flags//4x3/kr.svg); }
  .flag-icon-kr.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/kr.svg); }

.flag-icon-kw {
  background-image: url(../fonts/flags//4x3/kw.svg); }
  .flag-icon-kw.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/kw.svg); }

.flag-icon-ky {
  background-image: url(../fonts/flags//4x3/ky.svg); }
  .flag-icon-ky.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ky.svg); }

.flag-icon-kz {
  background-image: url(../fonts/flags//4x3/kz.svg); }
  .flag-icon-kz.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/kz.svg); }

.flag-icon-la {
  background-image: url(../fonts/flags//4x3/la.svg); }
  .flag-icon-la.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/la.svg); }

.flag-icon-lb {
  background-image: url(../fonts/flags//4x3/lb.svg); }
  .flag-icon-lb.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/lb.svg); }

.flag-icon-lc {
  background-image: url(../fonts/flags//4x3/lc.svg); }
  .flag-icon-lc.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/lc.svg); }

.flag-icon-li {
  background-image: url(../fonts/flags//4x3/li.svg); }
  .flag-icon-li.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/li.svg); }

.flag-icon-lk {
  background-image: url(../fonts/flags//4x3/lk.svg); }
  .flag-icon-lk.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/lk.svg); }

.flag-icon-lr {
  background-image: url(../fonts/flags//4x3/lr.svg); }
  .flag-icon-lr.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/lr.svg); }

.flag-icon-ls {
  background-image: url(../fonts/flags//4x3/ls.svg); }
  .flag-icon-ls.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ls.svg); }

.flag-icon-lt {
  background-image: url(../fonts/flags//4x3/lt.svg); }
  .flag-icon-lt.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/lt.svg); }

.flag-icon-lu {
  background-image: url(../fonts/flags//4x3/lu.svg); }
  .flag-icon-lu.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/lu.svg); }

.flag-icon-lv {
  background-image: url(../fonts/flags//4x3/lv.svg); }
  .flag-icon-lv.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/lv.svg); }

.flag-icon-ly {
  background-image: url(../fonts/flags//4x3/ly.svg); }
  .flag-icon-ly.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ly.svg); }

.flag-icon-ma {
  background-image: url(../fonts/flags//4x3/ma.svg); }
  .flag-icon-ma.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ma.svg); }

.flag-icon-mc {
  background-image: url(../fonts/flags//4x3/mc.svg); }
  .flag-icon-mc.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/mc.svg); }

.flag-icon-md {
  background-image: url(../fonts/flags//4x3/md.svg); }
  .flag-icon-md.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/md.svg); }

.flag-icon-me {
  background-image: url(../fonts/flags//4x3/me.svg); }
  .flag-icon-me.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/me.svg); }

.flag-icon-mf {
  background-image: url(../fonts/flags//4x3/mf.svg); }
  .flag-icon-mf.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/mf.svg); }

.flag-icon-mg {
  background-image: url(../fonts/flags//4x3/mg.svg); }
  .flag-icon-mg.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/mg.svg); }

.flag-icon-mh {
  background-image: url(../fonts/flags//4x3/mh.svg); }
  .flag-icon-mh.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/mh.svg); }

.flag-icon-mk {
  background-image: url(../fonts/flags//4x3/mk.svg); }
  .flag-icon-mk.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/mk.svg); }

.flag-icon-ml {
  background-image: url(../fonts/flags//4x3/ml.svg); }
  .flag-icon-ml.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ml.svg); }

.flag-icon-mm {
  background-image: url(../fonts/flags//4x3/mm.svg); }
  .flag-icon-mm.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/mm.svg); }

.flag-icon-mn {
  background-image: url(../fonts/flags//4x3/mn.svg); }
  .flag-icon-mn.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/mn.svg); }

.flag-icon-mo {
  background-image: url(../fonts/flags//4x3/mo.svg); }
  .flag-icon-mo.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/mo.svg); }

.flag-icon-mp {
  background-image: url(../fonts/flags//4x3/mp.svg); }
  .flag-icon-mp.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/mp.svg); }

.flag-icon-mq {
  background-image: url(../fonts/flags//4x3/mq.svg); }
  .flag-icon-mq.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/mq.svg); }

.flag-icon-mr {
  background-image: url(../fonts/flags//4x3/mr.svg); }
  .flag-icon-mr.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/mr.svg); }

.flag-icon-ms {
  background-image: url(../fonts/flags//4x3/ms.svg); }
  .flag-icon-ms.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ms.svg); }

.flag-icon-mt {
  background-image: url(../fonts/flags//4x3/mt.svg); }
  .flag-icon-mt.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/mt.svg); }

.flag-icon-mu {
  background-image: url(../fonts/flags//4x3/mu.svg); }
  .flag-icon-mu.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/mu.svg); }

.flag-icon-mv {
  background-image: url(../fonts/flags//4x3/mv.svg); }
  .flag-icon-mv.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/mv.svg); }

.flag-icon-mw {
  background-image: url(../fonts/flags//4x3/mw.svg); }
  .flag-icon-mw.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/mw.svg); }

.flag-icon-mx {
  background-image: url(../fonts/flags//4x3/mx.svg); }
  .flag-icon-mx.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/mx.svg); }

.flag-icon-my {
  background-image: url(../fonts/flags//4x3/my.svg); }
  .flag-icon-my.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/my.svg); }

.flag-icon-mz {
  background-image: url(../fonts/flags//4x3/mz.svg); }
  .flag-icon-mz.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/mz.svg); }

.flag-icon-na {
  background-image: url(../fonts/flags//4x3/na.svg); }
  .flag-icon-na.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/na.svg); }

.flag-icon-nc {
  background-image: url(../fonts/flags//4x3/nc.svg); }
  .flag-icon-nc.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/nc.svg); }

.flag-icon-ne {
  background-image: url(../fonts/flags//4x3/ne.svg); }
  .flag-icon-ne.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ne.svg); }

.flag-icon-nf {
  background-image: url(../fonts/flags//4x3/nf.svg); }
  .flag-icon-nf.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/nf.svg); }

.flag-icon-ng {
  background-image: url(../fonts/flags//4x3/ng.svg); }
  .flag-icon-ng.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ng.svg); }

.flag-icon-ni {
  background-image: url(../fonts/flags//4x3/ni.svg); }
  .flag-icon-ni.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ni.svg); }

.flag-icon-nl {
  background-image: url(../fonts/flags//4x3/nl.svg); }
  .flag-icon-nl.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/nl.svg); }

.flag-icon-no {
  background-image: url(../fonts/flags//4x3/no.svg); }
  .flag-icon-no.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/no.svg); }

.flag-icon-np {
  background-image: url(../fonts/flags//4x3/np.svg); }
  .flag-icon-np.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/np.svg); }

.flag-icon-nr {
  background-image: url(../fonts/flags//4x3/nr.svg); }
  .flag-icon-nr.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/nr.svg); }

.flag-icon-nu {
  background-image: url(../fonts/flags//4x3/nu.svg); }
  .flag-icon-nu.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/nu.svg); }

.flag-icon-nz {
  background-image: url(../fonts/flags//4x3/nz.svg); }
  .flag-icon-nz.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/nz.svg); }

.flag-icon-om {
  background-image: url(../fonts/flags//4x3/om.svg); }
  .flag-icon-om.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/om.svg); }

.flag-icon-pa {
  background-image: url(../fonts/flags//4x3/pa.svg); }
  .flag-icon-pa.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/pa.svg); }

.flag-icon-pe {
  background-image: url(../fonts/flags//4x3/pe.svg); }
  .flag-icon-pe.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/pe.svg); }

.flag-icon-pf {
  background-image: url(../fonts/flags//4x3/pf.svg); }
  .flag-icon-pf.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/pf.svg); }

.flag-icon-pg {
  background-image: url(../fonts/flags//4x3/pg.svg); }
  .flag-icon-pg.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/pg.svg); }

.flag-icon-ph {
  background-image: url(../fonts/flags//4x3/ph.svg); }
  .flag-icon-ph.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ph.svg); }

.flag-icon-pk {
  background-image: url(../fonts/flags//4x3/pk.svg); }
  .flag-icon-pk.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/pk.svg); }

.flag-icon-pl {
  background-image: url(../fonts/flags//4x3/pl.svg); }
  .flag-icon-pl.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/pl.svg); }

.flag-icon-pm {
  background-image: url(../fonts/flags//4x3/pm.svg); }
  .flag-icon-pm.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/pm.svg); }

.flag-icon-pn {
  background-image: url(../fonts/flags//4x3/pn.svg); }
  .flag-icon-pn.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/pn.svg); }

.flag-icon-pr {
  background-image: url(../fonts/flags//4x3/pr.svg); }
  .flag-icon-pr.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/pr.svg); }

.flag-icon-ps {
  background-image: url(../fonts/flags//4x3/ps.svg); }
  .flag-icon-ps.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ps.svg); }

.flag-icon-pt {
  background-image: url(../fonts/flags//4x3/pt.svg); }
  .flag-icon-pt.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/pt.svg); }

.flag-icon-pw {
  background-image: url(../fonts/flags//4x3/pw.svg); }
  .flag-icon-pw.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/pw.svg); }

.flag-icon-py {
  background-image: url(../fonts/flags//4x3/py.svg); }
  .flag-icon-py.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/py.svg); }

.flag-icon-qa {
  background-image: url(../fonts/flags//4x3/qa.svg); }
  .flag-icon-qa.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/qa.svg); }

.flag-icon-re {
  background-image: url(../fonts/flags//4x3/re.svg); }
  .flag-icon-re.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/re.svg); }

.flag-icon-ro {
  background-image: url(../fonts/flags//4x3/ro.svg); }
  .flag-icon-ro.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ro.svg); }

.flag-icon-rs {
  background-image: url(../fonts/flags//4x3/rs.svg); }
  .flag-icon-rs.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/rs.svg); }

.flag-icon-ru {
  background-image: url(../fonts/flags//4x3/ru.svg); }
  .flag-icon-ru.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ru.svg); }

.flag-icon-rw {
  background-image: url(../fonts/flags//4x3/rw.svg); }
  .flag-icon-rw.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/rw.svg); }

.flag-icon-sa {
  background-image: url(../fonts/flags//4x3/sa.svg); }
  .flag-icon-sa.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/sa.svg); }

.flag-icon-sb {
  background-image: url(../fonts/flags//4x3/sb.svg); }
  .flag-icon-sb.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/sb.svg); }

.flag-icon-sc {
  background-image: url(../fonts/flags//4x3/sc.svg); }
  .flag-icon-sc.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/sc.svg); }

.flag-icon-sd {
  background-image: url(../fonts/flags//4x3/sd.svg); }
  .flag-icon-sd.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/sd.svg); }

.flag-icon-se {
  background-image: url(../fonts/flags//4x3/se.svg); }
  .flag-icon-se.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/se.svg); }

.flag-icon-sg {
  background-image: url(../fonts/flags//4x3/sg.svg); }
  .flag-icon-sg.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/sg.svg); }

.flag-icon-sh {
  background-image: url(../fonts/flags//4x3/sh.svg); }
  .flag-icon-sh.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/sh.svg); }

.flag-icon-si {
  background-image: url(../fonts/flags//4x3/si.svg); }
  .flag-icon-si.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/si.svg); }

.flag-icon-sj {
  background-image: url(../fonts/flags//4x3/sj.svg); }
  .flag-icon-sj.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/sj.svg); }

.flag-icon-sk {
  background-image: url(../fonts/flags//4x3/sk.svg); }
  .flag-icon-sk.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/sk.svg); }

.flag-icon-sl {
  background-image: url(../fonts/flags//4x3/sl.svg); }
  .flag-icon-sl.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/sl.svg); }

.flag-icon-sm {
  background-image: url(../fonts/flags//4x3/sm.svg); }
  .flag-icon-sm.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/sm.svg); }

.flag-icon-sn {
  background-image: url(../fonts/flags//4x3/sn.svg); }
  .flag-icon-sn.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/sn.svg); }

.flag-icon-so {
  background-image: url(../fonts/flags//4x3/so.svg); }
  .flag-icon-so.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/so.svg); }

.flag-icon-sr {
  background-image: url(../fonts/flags//4x3/sr.svg); }
  .flag-icon-sr.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/sr.svg); }

.flag-icon-ss {
  background-image: url(../fonts/flags//4x3/ss.svg); }
  .flag-icon-ss.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ss.svg); }

.flag-icon-st {
  background-image: url(../fonts/flags//4x3/st.svg); }
  .flag-icon-st.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/st.svg); }

.flag-icon-sv {
  background-image: url(../fonts/flags//4x3/sv.svg); }
  .flag-icon-sv.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/sv.svg); }

.flag-icon-sx {
  background-image: url(../fonts/flags//4x3/sx.svg); }
  .flag-icon-sx.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/sx.svg); }

.flag-icon-sy {
  background-image: url(../fonts/flags//4x3/sy.svg); }
  .flag-icon-sy.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/sy.svg); }

.flag-icon-sz {
  background-image: url(../fonts/flags//4x3/sz.svg); }
  .flag-icon-sz.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/sz.svg); }

.flag-icon-tc {
  background-image: url(../fonts/flags//4x3/tc.svg); }
  .flag-icon-tc.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/tc.svg); }

.flag-icon-td {
  background-image: url(../fonts/flags//4x3/td.svg); }
  .flag-icon-td.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/td.svg); }

.flag-icon-tf {
  background-image: url(../fonts/flags//4x3/tf.svg); }
  .flag-icon-tf.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/tf.svg); }

.flag-icon-tg {
  background-image: url(../fonts/flags//4x3/tg.svg); }
  .flag-icon-tg.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/tg.svg); }

.flag-icon-th {
  background-image: url(../fonts/flags//4x3/th.svg); }
  .flag-icon-th.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/th.svg); }

.flag-icon-tj {
  background-image: url(../fonts/flags//4x3/tj.svg); }
  .flag-icon-tj.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/tj.svg); }

.flag-icon-tk {
  background-image: url(../fonts/flags//4x3/tk.svg); }
  .flag-icon-tk.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/tk.svg); }

.flag-icon-tl {
  background-image: url(../fonts/flags//4x3/tl.svg); }
  .flag-icon-tl.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/tl.svg); }

.flag-icon-tm {
  background-image: url(../fonts/flags//4x3/tm.svg); }
  .flag-icon-tm.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/tm.svg); }

.flag-icon-tn {
  background-image: url(../fonts/flags//4x3/tn.svg); }
  .flag-icon-tn.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/tn.svg); }

.flag-icon-to {
  background-image: url(../fonts/flags//4x3/to.svg); }
  .flag-icon-to.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/to.svg); }

.flag-icon-tr {
  background-image: url(../fonts/flags//4x3/tr.svg); }
  .flag-icon-tr.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/tr.svg); }

.flag-icon-tt {
  background-image: url(../fonts/flags//4x3/tt.svg); }
  .flag-icon-tt.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/tt.svg); }

.flag-icon-tv {
  background-image: url(../fonts/flags//4x3/tv.svg); }
  .flag-icon-tv.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/tv.svg); }

.flag-icon-tw {
  background-image: url(../fonts/flags//4x3/tw.svg); }
  .flag-icon-tw.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/tw.svg); }

.flag-icon-tz {
  background-image: url(../fonts/flags//4x3/tz.svg); }
  .flag-icon-tz.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/tz.svg); }

.flag-icon-ua {
  background-image: url(../fonts/flags//4x3/ua.svg); }
  .flag-icon-ua.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ua.svg); }

.flag-icon-ug {
  background-image: url(../fonts/flags//4x3/ug.svg); }
  .flag-icon-ug.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ug.svg); }

.flag-icon-um {
  background-image: url(../fonts/flags//4x3/um.svg); }
  .flag-icon-um.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/um.svg); }

.flag-icon-us {
  background-image: url(../fonts/flags//4x3/us.svg); }
  .flag-icon-us.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/us.svg); }

.flag-icon-uy {
  background-image: url(../fonts/flags//4x3/uy.svg); }
  .flag-icon-uy.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/uy.svg); }

.flag-icon-uz {
  background-image: url(../fonts/flags//4x3/uz.svg); }
  .flag-icon-uz.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/uz.svg); }

.flag-icon-va {
  background-image: url(../fonts/flags//4x3/va.svg); }
  .flag-icon-va.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/va.svg); }

.flag-icon-vc {
  background-image: url(../fonts/flags//4x3/vc.svg); }
  .flag-icon-vc.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/vc.svg); }

.flag-icon-ve {
  background-image: url(../fonts/flags//4x3/ve.svg); }
  .flag-icon-ve.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ve.svg); }

.flag-icon-vg {
  background-image: url(../fonts/flags//4x3/vg.svg); }
  .flag-icon-vg.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/vg.svg); }

.flag-icon-vi {
  background-image: url(../fonts/flags//4x3/vi.svg); }
  .flag-icon-vi.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/vi.svg); }

.flag-icon-vn {
  background-image: url(../fonts/flags//4x3/vn.svg); }
  .flag-icon-vn.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/vn.svg); }

.flag-icon-vu {
  background-image: url(../fonts/flags//4x3/vu.svg); }
  .flag-icon-vu.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/vu.svg); }

.flag-icon-wf {
  background-image: url(../fonts/flags//4x3/wf.svg); }
  .flag-icon-wf.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/wf.svg); }

.flag-icon-ws {
  background-image: url(../fonts/flags//4x3/ws.svg); }
  .flag-icon-ws.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ws.svg); }

.flag-icon-ye {
  background-image: url(../fonts/flags//4x3/ye.svg); }
  .flag-icon-ye.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/ye.svg); }

.flag-icon-yt {
  background-image: url(../fonts/flags//4x3/yt.svg); }
  .flag-icon-yt.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/yt.svg); }

.flag-icon-za {
  background-image: url(../fonts/flags//4x3/za.svg); }
  .flag-icon-za.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/za.svg); }

.flag-icon-zm {
  background-image: url(../fonts/flags//4x3/zm.svg); }
  .flag-icon-zm.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/zm.svg); }

.flag-icon-zw {
  background-image: url(../fonts/flags//4x3/zw.svg); }
  .flag-icon-zw.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/zw.svg); }

.flag-icon-es-ct {
  background-image: url(../fonts/flags//4x3/es-ct.svg); }
  .flag-icon-es-ct.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/es-ct.svg); }

.flag-icon-eu {
  background-image: url(../fonts/flags//4x3/eu.svg); }
  .flag-icon-eu.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/eu.svg); }

.flag-icon-gb-eng {
  background-image: url(../fonts/flags//4x3/gb-eng.svg); }
  .flag-icon-gb-eng.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/gb-eng.svg); }

.flag-icon-gb-nir {
  background-image: url(../fonts/flags//4x3/gb-nir.svg); }
  .flag-icon-gb-nir.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/gb-nir.svg); }

.flag-icon-gb-sct {
  background-image: url(../fonts/flags//4x3/gb-sct.svg); }
  .flag-icon-gb-sct.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/gb-sct.svg); }

.flag-icon-gb-wls {
  background-image: url(../fonts/flags//4x3/gb-wls.svg); }
  .flag-icon-gb-wls.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/gb-wls.svg); }

.flag-icon-un {
  background-image: url(../fonts/flags//4x3/un.svg); }
  .flag-icon-un.flag-icon-squared {
    background-image: url(../fonts/flags//1x1/un.svg); }

.veil {
  position: absolute;
  z-index: 100;
  text-align: center;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }
  .veil .underlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0.5;
    background-color: #000; }

.spinner {
  width: 80px;
  height: 80px;
  text-align: center;
  -webkit-animation: sk-rotate 2s infinite linear;
          animation: sk-rotate 2s infinite linear;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -40px;
  margin-left: -40px; }

.dot1,
.dot2 {
  width: 60%;
  height: 60%;
  display: inline-block;
  position: absolute;
  top: 0;
  background-color: #fff;
  border-radius: 100%;
  -webkit-animation: sk-bounce 2s infinite ease-in-out;
          animation: sk-bounce 2s infinite ease-in-out; }

.dot2 {
  top: auto;
  bottom: 0;
  -webkit-animation-delay: -1s;
          animation-delay: -1s; }

@-webkit-keyframes sk-rotate {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes sk-rotate {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@-webkit-keyframes sk-bounce {
  0%,
  100% {
    -webkit-transform: scale(0);
            transform: scale(0); }
  50% {
    -webkit-transform: scale(1);
            transform: scale(1); } }

@keyframes sk-bounce {
  0%,
  100% {
    -webkit-transform: scale(0);
            transform: scale(0); }
  50% {
    -webkit-transform: scale(1);
            transform: scale(1); } }

.notify {
  position: fixed;
  top: 0; }

.form-nav .nav-tabs .nav-link {
  color: #333; }

.form-nav .nav-tabs .nav-link.active,
.form-nav .nav-tabs .nav-link.active:focus,
.form-nav .nav-tabs .nav-link.active:hover {
  background-color: #fff;
  color: #333; }

.nav-tabs .nav-link.active {
  background-color: transparent; }

@media (min-width: 1024px) {
  .form-nav .nav-item > .nav-link {
    color: #333; } }

/* 20/16 */
.info-icon {
  position: relative;
  cursor: pointer;
  display: inline-block;
  border: none;
  padding: 0;
  background: inherit; }
  .info-icon .icon {
    border-radius: 1.25rem;
    background-color: var(--skin-primary-color-1);
    width: 1.5625rem;
    display: inline-block;
    text-align: center;
    color: #fff;
    font-weight: 600; }
  .info-icon .tooltip {
    position: absolute;
    bottom: 100%;
    padding: 0.312rem;
    border-radius: 0.25rem;
    background-color: #444;
    color: #fff;
    font-size: 0.928rem;
    min-width: 20rem;
    max-width: 15rem;
    -webkit-transform: translate(-50%, -0.625em);
            transform: translate(-50%, -0.625em);
    left: 50%;
    margin-left: 4px;
    -webkit-animation: fade-in 0.5s linear forwards;
            animation: fade-in 0.5s linear forwards; }

@-webkit-keyframes fade-in {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes fade-in {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
    .info-icon .tooltip::before {
      content: " ";
      position: absolute;
      display: block;
      height: 1.25em;
      /* 20/16 */
      left: 0;
      bottom: -1.25em;
      width: 100%; }
    .info-icon .tooltip::after {
      border-left: solid transparent 0.625em;
      /* 10/16 */
      border-right: solid transparent 0.625em;
      /* 10/16 */
      border-top: solid #444 0.625em;
      bottom: -0.625em;
      content: " ";
      height: 0;
      left: 50%;
      margin-left: -13px;
      position: absolute;
      width: 0; }

/* stylelint-disable */
.is-mb-transparent.body-wrapper .sticky-header.-fixed {
  background-color: #fff; }

.is-mb-transparent .sticky-header:not(.-fixed):not(.-hovered) {
  border-bottom-color: transparent;
  background-color: transparent; }

.is-mb-transparent.header-mb-white .sticky-header:not(.-fixed):not(.-hovered) .header .icon,
.is-mb-transparent.header-mb-white .sticky-header:not(.-fixed):not(.-hovered) .search-mobile .icon {
  fill: #fff; }

.is-mb-transparent.header-mb-white .sticky-header:not(.-fixed):not(.-hovered) .search-field {
  background-color: rgba(170, 170, 170, 0.6); }

.is-mb-transparent.header-mb-white .sticky-header:not(.-fixed):not(.-hovered) .logo.-black {
  display: none; }

.is-mb-transparent.header-mb-white .sticky-header:not(.-fixed):not(.-hovered) .logo.-white {
  display: inline-block; }

.is-mb-transparent.header-mb-white .sticky-header:not(.-fixed):not(.-hovered) .search-field {
  color: #fff; }

.is-mb-transparent.header-mb-white .sticky-header:not(.-fixed):not(.-hovered) .search-field::-webkit-input-placeholder {
  color: #ccc; }

.is-mb-transparent.header-mb-white .sticky-header:not(.-fixed):not(.-hovered) .search-field::-moz-placeholder {
  color: #ccc; }

.is-mb-transparent.header-mb-white .sticky-header:not(.-fixed):not(.-hovered) .search-field::-ms-input-placeholder {
  color: #ccc; }

.is-mb-transparent.header-mb-white .sticky-header:not(.-fixed):not(.-hovered) .search-field::placeholder {
  color: #ccc; }

.is-mb-transparent.header-mb-white .sticky-header:not(.-fixed):not(.-hovered) .minicart-quantity {
  background-color: #fff;
  color: #000; }

.is-mb-transparent.header-mb-black .sticky-header:not(.-fixed):not(.-hovered) .search-field {
  background-color: rgba(244, 244, 244, 0.6); }

.is-mb-transparent .maincontent {
  margin-top: -11.1rem; }

.coupon-text-pd {
  text-decoration: none; }

.coupon-text-pd > p {
  display: inline-block; }

.image-gradient {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 33%;
  background-image: -webkit-gradient(linear, left bottom, left top, color-stop(-40%, #000), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(360deg, #000 -40%, rgba(0, 0, 0, 0) 100%); }

.buttons-wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }

.buttons-wrapper .btn-wrapper {
  width: 100%; }

.buttons-wrapper .btn-wrapper.autowidth {
  width: auto !important; }

.buttons-wrapper.center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.buttons-wrapper.left {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }

.buttons-wrapper.-horizontal .btn-wrapper:not(:last-child) {
  margin-right: 20px; }

.buttons-wrapper.-horizontal {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row; }

.buttons-wrapper.-horizontal .btn-wrapper {
  width: auto; }

.buttons-wrapper.-horizontal.center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.decreased-margin h1,
.decreased-margin h2,
.decreased-margin h3,
.decreased-margin h4 {
  margin-bottom: 0.5rem !important; }

.text-increased h1,
.text-increased h2,
.text-increased h3,
.text-increased h4 {
  line-height: 1 !important; }

.text-increased h1 {
  font-size: 4.8rem !important; }

.text-increased h2 {
  font-size: 3.4rem !important; }

.text-increased h3 {
  font-size: 2.2rem !important; }

.text-increased h4 {
  font-size: 1.8rem !important; }

.custom-fontsizes h1:not(.item) {
  margin-bottom: 0;
  font-size: 3.2rem;
  line-height: 3.8rem; }

.custom-fontsizes h2:not(.item) {
  margin-bottom: 0;
  font-size: 2.2rem;
  line-height: 3.3rem; }

.custom-fontsizes h3:not(.item) {
  margin-bottom: 0;
  font-size: 1.8rem;
  line-height: 3rem; }

.custom-fontsizes p:not(.item) {
  margin-bottom: 0;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 2.8rem; }

.custom-fontsizes .coupon-text-pd {
  display: inline-block;
  margin-bottom: 1rem; }

.custom-fontsizes .btn {
  font-size: 1.4rem; }

.sound-icon {
  position: absolute;
  bottom: 1.5rem;
  right: 0.2rem;
  z-index: 1;
  cursor: pointer; }

.sound-icon.Top {
  bottom: auto;
  top: 1.5rem; }

.sound-icon .icon.-off {
  display: none; }

.sound-icon .icon.-on {
  display: block; }

.sound-icon.off .icon.-on {
  display: none; }

.sound-icon.off .icon.-off {
  display: block; }

@media (min-width: 1024px) {
  .text-increased h1 {
    font-size: 9rem !important; }
  .text-increased h2 {
    font-size: 6rem !important; }
  .text-increased h3 {
    font-size: 4.8rem !important; }
  .text-increased h4 {
    font-size: 3.4rem !important; }
  .custom-fontsizes h1:not(.item) {
    margin-bottom: 0;
    font-size: 4.8rem;
    line-height: 4.6rem; }
  .custom-fontsizes h2:not(.item) {
    margin-bottom: 0;
    font-size: 2.8rem;
    line-height: 3.5rem; }
  .custom-fontsizes h3:not(.item) {
    margin-bottom: 0;
    font-size: 2.2rem;
    line-height: 3.4rem; }
  .custom-fontsizes p:not(.item) {
    font-size: 1.8rem;
    line-height: 3rem; }
  .custom-fontsizes .btn {
    font-size: 1.6rem; } }

@media (min-width: 768px) {
  .text-center.-gradient,
  .image-gradient.center {
    height: 100%;
    background-image: radial-gradient(circle at 50% 50%, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0) 82%); }
  .-gradient,
  .text-left.-gradient,
  .image-gradient.left {
    width: 33%;
    height: 100%;
    background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); } }

.layout .row.no-gutters > .col,
.layout .row.no-gutters > [class*='col-'] {
  padding-right: 0 !important;
  padding-left: 0 !important; }

.experience-component a:not(.btn) {
  color: inherit; }

.storepage:not(.plp) .experience-component:first-child > .container,
.storepage:not(.plp) .experience-component:first-child > .container-fluid {
  margin-top: 0 !important; }

@media (min-width: 1024px) {
  .is-mb-transparent:not(.is-dsk-transparent) .sticky-header:not(.-fixed):not(.-hovered) {
    border-bottom-color: #fff;
    background-color: #fff; }
  .is-mb-transparent:not(.is-dsk-transparent) .maincontent {
    margin-top: 0; }
  .is-mb-transparent:not(.is-dsk-transparent) .header .logo {
    display: inline-block !important; }
  .is-mb-transparent:not(.is-dsk-transparent) .header .logo.-white {
    display: none !important; }
  .is-mb-transparent:not(.is-dsk-transparent) .search-field {
    background-color: #f4f4f4 !important; }
  .is-mb-transparent:not(.is-dsk-transparent) .header .icon {
    fill: #000 !important; }
  .is-dsk-transparent .sticky-header:not(.-fixed):not(.-hovered) .main-menu,
  .is-dsk-transparent .sticky-header:not(.-fixed):not(.-hovered) .navbar {
    background-color: transparent; }
  .is-dsk-transparent.header-dsk-white .sticky-header:not(.-fixed):not(.-hovered) .gender-links-wrapper .menu-link {
    color: #ccc; }
  .is-dsk-transparent.header-dsk-white .sticky-header:not(.-fixed):not(.-hovered) .gender-links-wrapper .main-nav-item.active .menu-link,
  .is-dsk-transparent.header-dsk-white .sticky-header:not(.-fixed):not(.-hovered) .main-menu .menu-link,
  .is-dsk-transparent.header-dsk-white .sticky-header:not(.-fixed):not(.-hovered) .main-menu .menu-link a {
    color: #fff; }
  .is-dsk-transparent.body-wrapper .sticky-header.-fixed {
    background-color: #fff; }
  .is-dsk-transparent .sticky-header:not(.-fixed):not(.-hovered) {
    border-bottom-color: transparent;
    background-color: transparent; }
  .is-dsk-transparent.header-dsk-white .sticky-header:not(.-fixed):not(.-hovered) .header .icon,
  .is-dsk-transparent.header-dsk-white .sticky-header:not(.-fixed):not(.-hovered) .search-mobile .icon {
    fill: #fff; }
  .is-dsk-transparent.header-dsk-white .sticky-header:not(.-fixed):not(.-hovered) .search-field {
    background-color: rgba(170, 170, 170, 0.6); }
  .is-dsk-transparent.header-dsk-white .sticky-header:not(.-fixed):not(.-hovered) .logo.-black {
    display: none; }
  .is-dsk-transparent.header-dsk-white .sticky-header:not(.-fixed):not(.-hovered) .logo.-white {
    display: inline-block; }
  .is-dsk-transparent.header-dsk-white .sticky-header:not(.-fixed):not(.-hovered) .search-field {
    color: #fff; }
  .is-dsk-transparent.header-dsk-white .sticky-header:not(.-fixed):not(.-hovered) .search-field::-webkit-input-placeholder {
    color: #ccc; }
  .is-dsk-transparent.header-dsk-white .sticky-header:not(.-fixed):not(.-hovered) .search-field::-moz-placeholder {
    color: #ccc; }
  .is-dsk-transparent.header-dsk-white .sticky-header:not(.-fixed):not(.-hovered) .search-field::-ms-input-placeholder {
    color: #ccc; }
  .is-dsk-transparent.header-dsk-white .sticky-header:not(.-fixed):not(.-hovered) .search-field::placeholder {
    color: #ccc; }
  .is-dsk-transparent.header-dsk-white .sticky-header:not(.-fixed):not(.-hovered) .minicart-quantity {
    background-color: #fff;
    color: #000; }
  .is-dsk-transparent.header-dsk-black .sticky-header:not(.-fixed):not(.-hovered) .search-field {
    background-color: rgba(244, 244, 244, 0.6); }
  .is-dsk-transparent .maincontent {
    margin-top: -11.1rem; } }

/* stylelint-enable */

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcmVib290LnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3ZlbmRvci9fcmZzLnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9hcHAvYXBwX2V3YXZlX3B2aF9jay9jYXJ0cmlkZ2UvY2xpZW50L2RlZmF1bHQvc2Nzcy90aGVtZXMvZGVmYXVsdC92YXJpYWJsZXMvX3R5cG9ncmFwaHkuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL2FwcC9hcHBfZXdhdmVfcHZoX2NrL2NhcnRyaWRnZS9jbGllbnQvZGVmYXVsdC9zY3NzL2V4cGVyaWVuY2Uvc3RvcmVQYWdlLnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9hcHAvYXBwX2V3YXZlX3B2aF9jay9jYXJ0cmlkZ2UvY2xpZW50L2RlZmF1bHQvc2Nzcy90aGVtZXMvZGVmYXVsdC92YXJpYWJsZXMvY29tcG9uZW50cy9fbGluay5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9faG92ZXIuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHlwZS5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdHMuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9faW1hZ2VzLnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19pbWFnZS5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jb2RlLnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RhYmxlcy5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGFibGUtcm93LnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Z1bmN0aW9ucy5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvYXBwL2FwcF9ld2F2ZV9wdmhfY2svY2FydHJpZGdlL2NsaWVudC9kZWZhdWx0L3Njc3MvdXRpbHMvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19mb3Jtcy5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvYXBwL2FwcF9ld2F2ZV9wdmhfY2svY2FydHJpZGdlL2NsaWVudC9kZWZhdWx0L3Njc3MvdXRpbHMvX2Z1bmN0aW9ucy5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvYXBwL2FwcF9ld2F2ZV9wdmhfY2svY2FydHJpZGdlL2NsaWVudC9kZWZhdWx0L3Njc3MvdGhlbWVzL2RlZmF1bHQvdmFyaWFibGVzL19jb2xvcnMuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL2FwcC9hcHBfZXdhdmVfcHZoX2NrL2NhcnRyaWRnZS9jbGllbnQvZGVmYXVsdC9zY3NzL3RoZW1lcy9kZWZhdWx0L3ZhcmlhYmxlcy9jb21wb25lbnRzL19mb3Jtcy5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdHJhbnNpdGlvbi5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZm9ybXMuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190cmFuc2l0aW9ucy5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19kcm9wZG93bi5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2FyZXQuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbi1ncm91cC5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19pbnB1dC1ncm91cC5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jdXN0b20tZm9ybXMuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbmF2LnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2NhcmQuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnJlYWRjcnVtYi5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wYWdpbmF0aW9uLnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JhZGdlLnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYWRnZS5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19qdW1ib3Ryb24uc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcHJvZ3Jlc3Muc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL2FwcC9hcHBfZXdhdmVfcHZoX2NrL2NhcnRyaWRnZS9jbGllbnQvZGVmYXVsdC9zY3NzL3RoZW1lcy9kZWZhdWx0L3ZhcmlhYmxlcy92ZW5kb3JzL19ib290c3RyYXAuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbWVkaWEuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbGlzdC1ncm91cC5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jbG9zZS5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19tb2RhbC5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvYXBwL2FwcF9ld2F2ZV9wdmhfY2svY2FydHJpZGdlL2NsaWVudC9kZWZhdWx0L3Njc3MvdGhlbWVzL2RlZmF1bHQvdmFyaWFibGVzL2NvbXBvbmVudHMvX21vZGFsLnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Rvb2x0aXAuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL2FwcC9hcHBfZXdhdmVfcHZoX2NrL2NhcnRyaWRnZS9jbGllbnQvZGVmYXVsdC9zY3NzL3RoZW1lcy9kZWZhdWx0L3ZhcmlhYmxlcy9jb21wb25lbnRzL190b29sdGlwLnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3BvcG92ZXIuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2Fyb3VzZWwuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19hbGlnbi5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19iYWNrZ3JvdW5kLnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19ib3JkZXJzLnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19kaXNwbGF5LnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19lbWJlZC5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZmxleC5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZmxvYXQuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX292ZXJmbG93LnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19wb3NpdGlvbi5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc2NyZWVucmVhZGVycy5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fc2NyZWVuLXJlYWRlci5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc2hhZG93cy5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc2l6aW5nLnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zdHJldGNoZWQtbGluay5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc3BhY2luZy5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fdGV4dC5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC1oaWRlLnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL192aXNpYmlsaXR5LnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ByaW50LnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9hcHAvYXBwX2V3YXZlX3B2aF9jay9jYXJ0cmlkZ2UvY2xpZW50L2RlZmF1bHQvc2Nzcy9iYXNpcy9fYmFzZS5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvYXBwL2FwcF9ld2F2ZV9wdmhfY2svY2FydHJpZGdlL2NsaWVudC9kZWZhdWx0L3Njc3MvYmFzaXMvX3R5cG9ncmFwaHkuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL2FwcC9hcHBfZXdhdmVfcHZoX2NrL2NhcnRyaWRnZS9jbGllbnQvZGVmYXVsdC9zY3NzL2Jhc2lzL19oZWxwZXJzLnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9hcHAvYXBwX2V3YXZlX3B2aF9jay9jYXJ0cmlkZ2UvY2xpZW50L2RlZmF1bHQvc2Nzcy90aGVtZXMvZGVmYXVsdC92YXJpYWJsZXMvX2hlbHBlcnMuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL2FwcC9hcHBfZXdhdmVfcHZoX2NrL2NhcnRyaWRnZS9jbGllbnQvZGVmYXVsdC9zY3NzL2V4cGVyaWVuY2UvY29tcG9uZW50cy9sYXlvdXRzL19tb2JpbGUtcm93LWdyaWQuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL2FwcC9hcHBfZXdhdmVfcHZoX2NrL2NhcnRyaWRnZS9jbGllbnQvZGVmYXVsdC9zY3NzL2V4cGVyaWVuY2UvY29tcG9uZW50cy9sYXlvdXRzL19jdXN0b20tbGF5b3V0LnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9hcHAvYXBwX2V3YXZlX3B2aF9jay9jYXJ0cmlkZ2UvY2xpZW50L2RlZmF1bHQvc2Nzcy9leHBlcmllbmNlL2NvbXBvbmVudHMvcHZoX2Fzc2V0cy9faW1hZ2UtdGV4dC1idG4uc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL2FwcC9hcHBfZXdhdmVfcHZoX2NrL2NhcnRyaWRnZS9jbGllbnQvZGVmYXVsdC9zY3NzL3V0aWxzL21peGlucy9faGVscGVycy5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvYXBwL2FwcF9ld2F2ZV9wdmhfY2svY2FydHJpZGdlL2NsaWVudC9kZWZhdWx0L3Njc3MvZXhwZXJpZW5jZS9jb21wb25lbnRzL3B2aF9hc3NldHMvX2ltYWdlLXRpbGUuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL2FwcC9hcHBfZXdhdmVfcHZoX2NrL2NhcnRyaWRnZS9jbGllbnQvZGVmYXVsdC9zY3NzL2V4cGVyaWVuY2UvY29tcG9uZW50cy9wdmhfYXNzZXRzL190ZXh0Ym94LnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9hcHAvYXBwX2V3YXZlX3B2aF9jay9jYXJ0cmlkZ2UvY2xpZW50L2RlZmF1bHQvc2Nzcy9leHBlcmllbmNlL2NvbXBvbmVudHMvcHZoX2Fzc2V0cy9fdHdvLWNvbC1pbWFnZS10ZXh0LnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9hcHAvYXBwX2V3YXZlX3B2aF9jay9jYXJ0cmlkZ2UvY2xpZW50L2RlZmF1bHQvc2Nzcy9leHBlcmllbmNlL2NvbXBvbmVudHMvcHZoX2Fzc2V0cy9fdmlkZW8tYmxvY2suc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL2FwcC9hcHBfZXdhdmVfcHZoX2NrL2NhcnRyaWRnZS9jbGllbnQvZGVmYXVsdC9zY3NzL2V4cGVyaWVuY2UvY29tcG9uZW50cy9wdmhfYXNzZXRzL19jbHAtY2Fyb3VzZWwuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL2FwcC9hcHBfZXdhdmVfcHZoX2NrL2NhcnRyaWRnZS9jbGllbnQvZGVmYXVsdC9zY3NzL2V4cGVyaWVuY2UvY29tcG9uZW50cy9wdmhfYXNzZXRzL19zaXgtYnV0dG9ucy5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvYXBwL2FwcF9ld2F2ZV9wdmhfY2svY2FydHJpZGdlL2NsaWVudC9kZWZhdWx0L3Njc3MvZXhwZXJpZW5jZS9jb21wb25lbnRzL3B2aF9hc3NldHMvX3R3by1jb2wtdHdvLWltYWdlcy5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvYXBwL2FwcF9ld2F2ZV9wdmhfY2svY2FydHJpZGdlL2NsaWVudC9kZWZhdWx0L3Njc3MvZXhwZXJpZW5jZS9jb21wb25lbnRzL2NvbW1lcmNlQXNzZXRzL2NhdGVnb3J5LnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvYXBwL2FwcF9ld2F2ZV9wdmhfY2svY2FydHJpZGdlL2NsaWVudC9kZWZhdWx0L3Njc3MvZXhwZXJpZW5jZS92YXJpYWJsZXMuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL2FwcC9hcHBfZXdhdmVfcHZoX2NrL2NhcnRyaWRnZS9jbGllbnQvZGVmYXVsdC9zY3NzL2Jsb2Nrcy9zZWFyY2gvX3NlYXJjaC1iYW5uZXIuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL2FwcC9hcHBfZXdhdmVfcHZoX2NrL2NhcnRyaWRnZS9jbGllbnQvZGVmYXVsdC9zY3NzL2V4cGVyaWVuY2UvY29tcG9uZW50cy9wdmhfYXNzZXRzL19iYW5uZXItY2Fyb3VzZWwuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL2FwcC9hcHBfZXdhdmVfcHZoX2NrL2NhcnRyaWRnZS9jbGllbnQvZGVmYXVsdC9zY3NzL2V4cGVyaWVuY2UvY29tcG9uZW50cy9wdmhfYXNzZXRzL19uZXdzbGV0dGVyLnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9hcHAvYXBwX2V3YXZlX3B2aF9jay9jYXJ0cmlkZ2UvY2xpZW50L2RlZmF1bHQvc2Nzcy9ibG9ja3MvaG9tZXBhZ2UvX2dlbmRlci1ibG9jay5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvdmVuZG9yL3NhbGVzZm9yY2VfYmFzZS9hcHBfc3RvcmVmcm9udF9iYXNlL2NhcnRyaWRnZS9jbGllbnQvZGVmYXVsdC9zY3NzL3NraW4vX3NraW5WYXJpYWJsZXMuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL3ZlbmRvci9zYWxlc2ZvcmNlX2Jhc2UvYXBwX3N0b3JlZnJvbnRfYmFzZS9jYXJ0cmlkZ2UvY2xpZW50L2RlZmF1bHQvc2Nzcy91dGlsaXRpZXMvX3Jlc3BvbnNpdmVVdGlscy5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvbm9kZV9tb2R1bGVzL2ZsYWctaWNvbi1jc3Mvc2Fzcy9fZmxhZy1pY29uLWJhc2Uuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL3ZlbmRvci9zYWxlc2ZvcmNlX2Jhc2UvYXBwX3N0b3JlZnJvbnRfYmFzZS9jYXJ0cmlkZ2UvY2xpZW50L2RlZmF1bHQvc2Nzcy9jb21wb25lbnRzL19zcGlubmVyLnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC92ZW5kb3Ivc2FsZXNmb3JjZV9iYXNlL2FwcF9zdG9yZWZyb250X2Jhc2UvY2FydHJpZGdlL2NsaWVudC9kZWZhdWx0L3Njc3MvY29tcG9uZW50cy9fbm90aWZpY2F0aW9uLnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC92ZW5kb3Ivc2FsZXNmb3JjZV9iYXNlL2FwcF9zdG9yZWZyb250X2Jhc2UvY2FydHJpZGdlL2NsaWVudC9kZWZhdWx0L3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzIiwiZmlsZTovLy9DOi9Qcm9qZWN0cy9wdmgvdmVuZG9yL3NhbGVzZm9yY2VfYmFzZS9hcHBfc3RvcmVmcm9udF9iYXNlL2NhcnRyaWRnZS9jbGllbnQvZGVmYXVsdC9zY3NzL192YXJpYWJsZXMuc2NzcyIsImZpbGU6Ly8vQzovUHJvamVjdHMvcHZoL3ZlbmRvci9zYWxlc2ZvcmNlX2Jhc2UvYXBwX3N0b3JlZnJvbnRfYmFzZS9jYXJ0cmlkZ2UvY2xpZW50L2RlZmF1bHQvc2Nzcy9jb21wb25lbnRzL190b29sdGlwLnNjc3MiLCJmaWxlOi8vL0M6L1Byb2plY3RzL3B2aC9hcHAvYXBwX2V3YXZlX3B2aF9jay9jYXJ0cmlkZ2UvY2xpZW50L2RlZmF1bHQvc2Nzcy9leHBlcmllbmNlL3BhZ2VzL19wYWdlRGVzaWduZXIuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFrQkE7OztFQUdFLDhCQUFzQjtVQUF0QixzQkFBc0I7O0FBR3hCO0VBQ0UsdUJBQXVCO0VBQ3ZCLGlCQUFpQjtFQUNqQiw4QkFBOEI7RUFDOUIsNkNDWGE7O0FEaUJmO0VBQ0UsY0FBYzs7QUFVaEI7RUFDRSxTQUFTO0VBQ1QseU1DaU9pTjtFQ2pKN00saUJBdENZO0VGeENoQixnQkMwTytCO0VEek8vQixnQkczQ29CO0VINENwQixXQ2xDYTtFRG1DYixnQkFBZ0I7RUFDaEIsc0JDOUNhOztBR2lCZjtFSnNDRSxxQkFBcUI7O0FBU3ZCO0VBQ0UsK0JBQXVCO1VBQXZCLHVCQUF1QjtFQUN2QixTQUFTO0VBQ1QsaUJBQWlCOztBQWFuQjtFQUNFLGFBQWE7RUFDYixxQkNnTnVDOztBRHpNekM7RUFDRSxhQUFhO0VBQ2IsbUJDb0Y4Qjs7QUR6RWhDOztFQUVFLDBCQUEwQjtFQUMxQix5Q0FBaUM7VUFBakMsaUNBQWlDO0VBQ2pDLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsOEJBQThCOztBQUdoQztFQUNFLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIsb0JBQW9COztBQUd0Qjs7O0VBR0UsYUFBYTtFQUNiLG1CQUFtQjs7QUFHckI7Ozs7RUFJRSxnQkFBZ0I7O0FBR2xCO0VBQ0UsZ0JDaUorQjs7QUQ5SWpDO0VBQ0Usb0JBQW9CO0VBQ3BCLGNBQWM7O0FBR2hCO0VBQ0UsZ0JBQWdCOztBQUdsQjs7RUFFRSxnQkd0SXNCOztBSHlJeEI7RUVwRkksY0FBVzs7QUY2RmY7O0VBRUUsa0JBQWtCO0VFL0ZoQixjQUFXO0VGaUdiLGNBQWM7RUFDZCx3QkFBd0I7O0FBRzFCO0VBQU0sY0FBYzs7QUFDcEI7RUFBTSxVQUFVOztBQU9oQjtFQUNFLFdDckthO0VEc0tiLDBCS2pMeUI7RUxrTHpCLDZCQUE2QjtFTTVLN0I7SU4rS0UsV0MxS1c7SUQyS1gscUJLckx3Qjs7QUwrTDVCO0VBQ0UsY0FBYztFQUNkLHFCQUFxQjtFTXhMckI7SU4yTEUsY0FBYztJQUNkLHFCQUFxQjtFQU56QjtJQVVJLFVBQVU7O0FBU2Q7Ozs7RUFJRSxpR0NvRGdIO0VDek05RyxjQUFXOztBRnlKZjtFQUVFLGFBQWE7RUFFYixtQkFBbUI7RUFFbkIsY0FBYzs7QUFRaEI7RUFFRSxnQkFBZ0I7O0FBUWxCO0VBQ0Usc0JBQXNCO0VBQ3RCLGtCQUFrQjs7QUFHcEI7RUFHRSxnQkFBZ0I7RUFDaEIsc0JBQXNCOztBQVF4QjtFQUNFLHlCQUF5Qjs7QUFHM0I7RUFDRSxvQkMyRWtDO0VEMUVsQyx1QkMwRWtDO0VEekVsQyxjQ3BRZ0I7RURxUWhCLGdCQUFnQjtFQUNoQixvQkFBb0I7O0FBR3RCO0VBR0UsbUJBQW1COztBQVFyQjtFQUVFLHFCQUFxQjtFQUNyQixxQkM0SjJDOztBRHRKN0M7RUFFRSxnQkFBZ0I7O0FBT2xCO0VBQ0UsbUJBQW1CO0VBQ25CLDBDQUEwQzs7QUFHNUM7Ozs7O0VBS0UsU0FBUztFQUNULG9CQUFvQjtFRXRQbEIsa0JBQVc7RUZ3UGIsb0JBQW9COztBQUd0Qjs7RUFFRSxpQkFBaUI7O0FBR25COztFQUVFLG9CQUFvQjs7QUFNdEI7RUFDRSxpQkFBaUI7O0FBT25COzs7O0VBSUUsMEJBQTBCOztBQUsxQjs7OztFQUtJLGVBQWU7O0FBTXJCOzs7O0VBSUUsVUFBVTtFQUNWLGtCQUFrQjs7QUFHcEI7O0VBRUUsOEJBQXNCO1VBQXRCLHNCQUFzQjtFQUN0QixVQUFVOztBQUlaOzs7O0VBU0UsMkJBQTJCOztBQUc3QjtFQUNFLGNBQWM7RUFFZCxnQkFBZ0I7O0FBR2xCO0VBTUUsWUFBWTtFQUVaLFVBQVU7RUFDVixTQUFTO0VBQ1QsU0FBUzs7QUFLWDtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsZUFBZTtFQUNmLFVBQVU7RUFDVixvQkFBb0I7RUVsU2hCLGlCQXRDWTtFRjBVaEIsb0JBQW9CO0VBQ3BCLGNBQWM7RUFDZCxtQkFBbUI7O0FBR3JCO0VBQ0Usd0JBQXdCOztBSS9MMUI7O0VKcU1FLFlBQVk7O0FJak1kO0VKeU1FLG9CQUFvQjtFQUNwQix3QkFBd0I7O0FJdE0xQjtFSjhNRSx3QkFBd0I7O0FBUTFCO0VBQ0UsYUFBYTtFQUNiLDBCQUEwQjs7QUFPNUI7RUFDRSxxQkFBcUI7O0FBR3ZCO0VBQ0Usa0JBQWtCO0VBQ2xCLGVBQWU7O0FBR2pCO0VBQ0UsYUFBYTs7QUl4TmY7RUo4TkUsd0JBQXdCOztBTzNkMUI7O0VBRUUscUJOaVN1QztFTS9SdkMsZ0JKUW9CO0VJUHBCLGdCTmlTK0I7O0FNN1JqQztFTGdITSxpQkF0Q1k7O0FLekVsQjtFTCtHTSxlQXRDWTs7QUt4RWxCO0VMOEdNLGtCQXRDWTs7QUt2RWxCO0VMNkdNLGlCQXRDWTs7QUt0RWxCO0VMNEdNLGtCQXRDWTs7QUtyRWxCO0VMMkdNLGVBdENZOztBS25FbEI7RUx5R00sa0JBdENZO0VLakVoQixnQk5tUytCOztBTS9SakM7RUxtR00sZUF0Q1k7RUszRGhCLGdCTnNSK0I7RU1yUi9CLGdCTjZRK0I7O0FNM1FqQztFTDhGTSxpQkF0Q1k7RUt0RGhCLGdCTmtSK0I7RU1qUi9CLGdCTndRK0I7O0FNdFFqQztFTHlGTSxpQkF0Q1k7RUtqRGhCLGdCTjhRK0I7RU03US9CLGdCTm1RK0I7O0FNalFqQztFTG9GTSxpQkF0Q1k7RUs1Q2hCLGdCTjBRK0I7RU16US9CLGdCTjhQK0I7O0FEck9qQztFT2hCRSxnQk4wRVc7RU16RVgsbUJOeUVXO0VNeEVYLFNBQVM7RUFDVCx3Q056Q2E7O0FNaURmOztFTE1JLGNBQVc7RUtIYixnQk5zTitCOztBTW5OakM7O0VBRUUsY044UGdDO0VNN1BoQyx5Qk5zUW1DOztBTTlQckM7RUMvRUUsZUFBZTtFQUNmLGdCQUFnQjs7QURtRmxCO0VDcEZFLGVBQWU7RUFDZixnQkFBZ0I7O0FEc0ZsQjtFQUNFLHFCQUFxQjtFQUR2QjtJQUlJLG9CTmdQK0I7O0FNdE9uQztFTGpDSSxjQUFXO0VLbUNiLHlCQUF5Qjs7QUFJM0I7RUFDRSxtQk5pQlc7RUNGUCxrQkF0Q1k7O0FLMkJsQjtFQUNFLGNBQWM7RUw3Q1osY0FBVztFSytDYixjTjFHZ0I7RU11R2xCO0lBTUkscUJBQXFCOztBRW5IekI7RUNJRSxlQUFlO0VBR2YsWUFBWTs7QUREZDtFQUNFLGdCUisrQndDO0VROStCeEMsc0JSUmE7RVFTYix5QlJOZ0I7RVVMZCxzQlZxT2dDO0VTL05sQyxlQUFlO0VBR2YsWUFBWTs7QURjZDtFQUVFLHFCQUFxQjs7QUFHdkI7RUFDRSxxQkFBMEI7RUFDMUIsY0FBYzs7QUFHaEI7RVBrQ0ksY0FBVztFT2hDYixjUjNCZ0I7O0FXWmxCO0VWdUVJLGdCQUFXO0VVckViLGNYb0NlO0VXbkNmLHNCQUFzQjtFQUd0QjtJQUNFLGNBQWM7O0FBS2xCO0VBQ0Usc0JYaWtDdUM7RUN2Z0NyQyxnQkFBVztFVXhEYixXWFRhO0VXVWIseUJYRGdCO0VVWGQscUJWdU8rQjtFVy9ObkM7SUFTSSxVQUFVO0lWa0RWLGVBQVc7SVVoRFgsZ0JYb1E2Qjs7QUQzRGpDO0VZbE1FLGNBQWM7RVZ5Q1osZ0JBQVc7RVV2Q2IsY1hqQmdCO0VXY2xCO0lWMENJLGtCQUFXO0lVbENYLGNBQWM7SUFDZCxrQkFBa0I7O0FBS3RCO0VBQ0UsaUJYd2lDdUM7RVd2aUN2QyxrQkFBa0I7O0FDMUNwQjtFQUNFLFdBQVc7RUFDWCxtQloySFc7RVkxSFgsY1pTZ0I7RVlabEI7O0lBUUksZ0JaOFVnQztJWTdVaEMsbUJBQW1CO0lBQ25CLDZCWkpjO0VZTmxCO0lBY0ksc0JBQXNCO0lBQ3RCLGdDWlRjO0VZTmxCO0lBbUJJLDZCWmJjOztBWXNCbEI7O0VBR0ksZVp3VCtCOztBWS9TbkM7RUFDRSx5QlpuQ2dCO0VZa0NsQjs7SUFLSSx5Qlp2Q2M7RVlrQ2xCOztJQVdNLHdCQUE0Qzs7QUFLbEQ7Ozs7RUFLSSxTQUFTOztBQVFiO0VBRUkscUNaMURXOztBS0xiO0VPMkVJLGNadkVZO0VZd0VaLHNDWnZFUzs7QWFaYjs7O0VBSUkseUJDMkU0RDs7QUQvRWhFOzs7O0VBWU0scUJDbUUwRDs7QVR4RWhFO0VRaUJNLHlCQUpzQztFQUQ1Qzs7SUFTUSx5QkFSb0M7O0FBcEI1Qzs7O0VBSUkseUJDMkU0RDs7QUQvRWhFOzs7O0VBWU0scUJDbUUwRDs7QVR4RWhFO0VRaUJNLHlCQUpzQztFQUQ1Qzs7SUFTUSx5QkFSb0M7O0FBcEI1Qzs7O0VBSUkseUJDMkU0RDs7QUQvRWhFOzs7O0VBWU0scUJDbUUwRDs7QVR4RWhFO0VRaUJNLHlCQUpzQztFQUQ1Qzs7SUFTUSx5QkFSb0M7O0FBcEI1Qzs7O0VBSUkseUJDMkU0RDs7QUQvRWhFOzs7O0VBWU0scUJDbUUwRDs7QVR4RWhFO0VRaUJNLHlCQUpzQztFQUQ1Qzs7SUFTUSx5QkFSb0M7O0FBcEI1Qzs7O0VBSUkseUJDMkU0RDs7QUQvRWhFOzs7O0VBWU0scUJDbUUwRDs7QVR4RWhFO0VRaUJNLHlCQUpzQztFQUQ1Qzs7SUFTUSx5QkFSb0M7O0FBcEI1Qzs7O0VBSUkseUJDMkU0RDs7QUQvRWhFOzs7O0VBWU0scUJDbUUwRDs7QVR4RWhFO0VRaUJNLHlCQUpzQztFQUQ1Qzs7SUFTUSx5QkFSb0M7O0FBcEI1Qzs7O0VBSUkseUJDMkU0RDs7QUQvRWhFOzs7O0VBWU0scUJDbUUwRDs7QVR4RWhFO0VRaUJNLHlCQUpzQztFQUQ1Qzs7SUFTUSx5QkFSb0M7O0FBcEI1Qzs7O0VBSUkseUJDMkU0RDs7QUQvRWhFOzs7O0VBWU0scUJDbUUwRDs7QVR4RWhFO0VRaUJNLHlCQUpzQztFQUQ1Qzs7SUFTUSx5QkFSb0M7O0FBcEI1Qzs7O0VBSUkseUJDMkU0RDs7QUQvRWhFOzs7O0VBWU0scUJDbUUwRDs7QVR4RWhFO0VRaUJNLHlCQUpzQztFQUQ1Qzs7SUFTUSx5QkFSb0M7O0FBcEI1Qzs7O0VBSUkseUJDMkU0RDs7QUQvRWhFOzs7O0VBWU0scUJDbUUwRDs7QVR4RWhFO0VRaUJNLHlCQUpzQztFQUQ1Qzs7SUFTUSx5QkFSb0M7O0FBcEI1Qzs7O0VBSUkseUJDMkU0RDs7QUQvRWhFOzs7O0VBWU0scUJDbUUwRDs7QVR4RWhFO0VRaUJNLHlCQUpzQztFQUQ1Qzs7SUFTUSx5QkFSb0M7O0FBcEI1Qzs7O0VBSUkseUJDMkU0RDs7QUQvRWhFOzs7O0VBWU0scUJDbUUwRDs7QVR4RWhFO0VRaUJNLHlCQUpzQztFQUQ1Qzs7SUFTUSx5QkFSb0M7O0FBcEI1Qzs7O0VBSUksc0NiUVM7O0FLTGI7RVFpQk0sc0NBSnNDO0VBRDVDOztJQVNRLHNDQVJvQzs7QURzRjlDO0VBR00sV1ozR1M7RVk0R1QseUJacEdZO0VZcUdaLHFCWjJQcUQ7O0FZaFEzRDtFQVdNLGNaNUdZO0VZNkdaLHlCWmxIWTtFWW1IWixxQlpsSFk7O0FZdUhsQjtFQUNFLFdaM0hhO0VZNEhiLHlCWnBIZ0I7RVlrSGxCOzs7SUFPSSxxQlp1T3VEO0VZOU8zRDtJQVdJLFNBQVM7RUFYYjtJQWdCTSwyQ1oxSVM7RUtLYjtJTzRJTSxXWmpKTztJWWtKUCw0Q1psSk87O0FlZ0NQO0VIbUlKO0lBRUksY0FBYztJQUNkLFdBQVc7SUFDWCxnQkFBZ0I7SUFDaEIsaUNBQWlDO0lBTHBDO01BU0ssU0FBUyxJQUNWOztBRzdJRDtFSG1JSjtJQUVJLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGlDQUFpQztJQUxwQztNQVNLLFNBQVMsSUFDVjs7QUc3SUQ7RUhtSUo7SUFFSSxjQUFjO0lBQ2QsV0FBVztJQUNYLGdCQUFnQjtJQUNoQixpQ0FBaUM7SUFMcEM7TUFTSyxTQUFTLElBQ1Y7O0FHN0lEO0VIbUlKO0lBRUksY0FBYztJQUNkLFdBQVc7SUFDWCxnQkFBZ0I7SUFDaEIsaUNBQWlDO0lBTHBDO01BU0ssU0FBUyxJQUNWOztBRzdJRDtFSG1JSjtJQUVJLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGlDQUFpQztJQUxwQztNQVNLLFNBQVMsSUFDVjs7QUc3SUQ7RUhtSUo7SUFFSSxjQUFjO0lBQ2QsV0FBVztJQUNYLGdCQUFnQjtJQUNoQixpQ0FBaUM7SUFMcEM7TUFTSyxTQUFTLElBQ1Y7O0FHN0lEO0VIbUlKO0lBRUksY0FBYztJQUNkLFdBQVc7SUFDWCxnQkFBZ0I7SUFDaEIsaUNBQWlDO0lBTHBDO01BU0ssU0FBUyxJQUNWOztBQWZUO0VBT1EsY0FBYztFQUNkLFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIsaUNBQWlDO0VBVnpDO0lBY1UsU0FBUzs7QUk3S25CO0VBQ0UsY0FBYztFQUNkLFdBQVc7RUFDWCxjQ00wQjtFREwxQix5QmhCcVhrQztFQ2hROUIsaUJBdENZO0VlNUVoQixnQmhCOFErQjtFZ0I3US9CLGdCaEJrUitCO0VnQmpSL0IsV2hCRWE7RWdCRGIsc0JoQlRhO0VnQlViLDRCQUE0QjtFQUM1Qix5QkVSZ0I7RVJMZCxnQlNPbUI7RUNOakIsd0ZwQjRlNEY7RW9CNWU1RixnRnBCNGU0RjtFb0I1ZTVGLHdFcEI0ZTRGO0VvQjVlNUYsOEdwQjRlNEY7RW9CdmU5RjtJSkxKO01JTU0sd0JBQWdCO01BQWhCLGdCQUFnQixJSnlDckI7RUEvQ0Q7SUFzQkksNkJBQTZCO0lBQzdCLFNBQVM7RUtoQlg7SUFDRSxjckJBYztJcUJDZCxzQnJCUlc7SXFCU1gscUJyQmdkc0U7SXFCL2N0RSxVQUFVO0lBS1Isd0RyQmNXO1lxQmRYLGdEckJjVztFZ0I5QmpCO0lBK0JJLGNoQnhCYztJZ0IwQmQsVUFBVTtFQWpDZDtJQStCSSxjaEJ4QmM7SWdCMEJkLFVBQVU7RUFqQ2Q7SUErQkksY2hCeEJjO0lnQjBCZCxVQUFVO0VBakNkO0lBK0JJLGNoQnhCYztJZ0IwQmQsVUFBVTtFQWpDZDtJQTJDSSx5QkUzQ2M7SUY2Q2QsVUFBVTs7QUFJZDtFQU9JLFdoQjdDVztFZ0I4Q1gsc0JoQnhEVzs7QWdCNkRmOztFQUVFLGNBQWM7RUFDZCxXQUFXOztBQVViO0VBQ0UsaUNBQStEO0VBQy9ELG9DQUFrRTtFQUNsRSxnQkFBZ0I7RWZaZCxrQkFBVztFZWNiLGdCaEIwTStCOztBZ0J2TWpDO0VBQ0UsK0JBQWtFO0VBQ2xFLGtDQUFxRTtFZm9DakUsa0JBdENZO0VlSWhCLGdCaEJ1SStCOztBZ0JwSWpDO0VBQ0UsZ0NBQWtFO0VBQ2xFLG1DQUFxRTtFZjZCakUsbUJBdENZO0VlV2hCLGdCaEJpSStCOztBZ0J4SGpDO0VBQ0UsY0FBYztFQUNkLFdBQVc7RUFDWCxxQmhCOFFtQztFZ0I3UW5DLHdCaEI2UW1DO0VnQjVRbkMsZ0JBQWdCO0VBQ2hCLGdCaEI2SytCO0VnQjVLL0IsY2hCcEdnQjtFZ0JxR2hCLDZCQUE2QjtFQUM3Qix5QkFBeUI7RUFDekIsbUJBQW1DO0VBVnJDO0lBY0ksZ0JBQWdCO0lBQ2hCLGVBQWU7O0FBWW5CO0VBQ0Usa0NoQnNXcUk7RWdCcldySSx1QmhCK1BpQztFQzFRN0IsbUJBdENZO0VlbURoQixnQmhCeUYrQjtFVWhPN0IscUJWdU8rQjs7QWdCNUZuQztFQUNFLGdDaEIrVnFJO0VnQjlWckksb0JoQjRQZ0M7RUMvUTVCLGtCQXRDWTtFZTJEaEIsZ0JoQmdGK0I7RVUvTjdCLHFCVnNPK0I7O0FnQmxGbkM7RUFHSSxZQUFZOztBQUloQjtFQUNFLFlBQVk7O0FBUWQ7RUFDRSxxQkMzSjBCOztBRDhKNUI7RUFDRSxjQUFjO0VBQ2QsbUJoQnFVNEM7O0FnQjdUOUM7RUFDRSxvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLG1CQUFlO01BQWYsZUFBZTtFQUNmLGtCQUEwQztFQUMxQyxpQkFBeUM7RUFKM0M7O0lBUUksa0JBQTBDO0lBQzFDLGlCQUF5Qzs7QUFTN0M7RUFDRSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLGVHak15Qjs7QUhvTTNCO0VBQ0Usa0JBQWtCO0VBQ2xCLGtCaEJzUzJDO0VnQnJTM0MsY0d2TXlCO0VIb00zQjtJQU1JLGNoQnhNYzs7QWdCNE1sQjtFQUNFLGdCQUFnQjs7QUFHbEI7RUFDRSwyQkFBb0I7RUFBcEIsMkJBQW9CO0VBQXBCLG9CQUFvQjtFQUNwQix5QkFBbUI7TUFBbkIsc0JBQW1CO1VBQW5CLG1CQUFtQjtFQUNuQixlQUFlO0VBQ2YscUJoQnlSNEM7RWdCN1I5QztJQVFJLGdCQUFnQjtJQUNoQixhQUFhO0lBQ2IsdUJoQm9SNEM7SWdCblI1QyxjQUFjOztBSzNNaEI7RUFDRSxhQUFhO0VBQ2IsV0FBVztFQUNYLG1CckJvZDBDO0VDNWExQyxjQUFXO0VvQnRDWCxjckJTYTs7QXFCTmY7RUFDRSxrQkFBa0I7RUFDbEIsU0FBUztFQUNULFVBQVU7RUFDVixhQUFhO0VBQ2IsZUFBZTtFQUNmLHVCckJzeUJxQztFcUJyeUJyQyxpQkFBaUI7RXBCbUZmLG1CQXRDWTtFb0IzQ2QsZ0JyQmtQNkI7RXFCalA3QixXckJ4Q1c7RXFCeUNYLHdDckJMYTtFVXRDYixzQlZxT2dDOztBcUJyTGhDO0VBRUUscUJyQlpXO0VxQlViO0lBYUkscUJyQnZCUztJcUJ3QlQsd0RyQnhCUztZcUJ3QlQsZ0RyQnhCUztFcUJVYjs7O0lBbUJJLGNBQWM7O0FBaUJsQjtFQUVFLHFCckJoRFc7RXFCOENiO0lBVUkscUJyQnhEUztJcUJ5RFQsd0RyQnpEUztZcUJ5RFQsZ0RyQnpEUztFcUI4Q2I7OztJQWdCSSxjQUFjOztBQU9sQjs7O0VBSUksY0FBYzs7QUFNbEI7RUFHSSxjckJsRlM7O0FxQitFYjs7O0VBUUksY0FBYzs7QUFNbEI7RUFHSSxjckJoR1M7RXFCNkZiO0lBTU0scUJyQm5HTzs7QXFCNkZiOzs7RUFZSSxjQUFjOztBQVpsQjtFQWlCTSxxQkFBa0M7RUNuSnhDLHlCRG9KK0M7O0FBbEIvQztFQXdCTSx3RHJCckhPO1VxQnFIUCxnRHJCckhPOztBcUI2RmI7RUE0Qk0scUJyQnpITzs7QXFCaUliO0VBR0kscUJyQnBJUzs7QXFCaUliOzs7RUFRSSxjQUFjOztBQVJsQjtFQWFNLHFCckI5SU87RXFCK0lQLHdEckIvSU87VXFCK0lQLGdEckIvSU87O0FxQmRmO0VBQ0UsYUFBYTtFQUNiLFdBQVc7RUFDWCxtQnJCb2QwQztFQzVhMUMsY0FBVztFb0J0Q1gsY3JCTWE7O0FxQkhmO0VBQ0Usa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxVQUFVO0VBQ1YsYUFBYTtFQUNiLGVBQWU7RUFDZix1QnJCc3lCcUM7RXFCcnlCckMsaUJBQWlCO0VwQm1GZixtQkF0Q1k7RW9CM0NkLGdCckJrUDZCO0VxQmpQN0IsV3JCeENXO0VxQnlDWCx3Q3JCUmE7RVVuQ2Isc0JWcU9nQzs7QXFCckxoQztFQUVFLHFCckJmVztFcUJhYjtJQWFJLHFCckIxQlM7SXFCMkJULHdEckIzQlM7WXFCMkJULGdEckIzQlM7RXFCYWI7OztJQW1CSSxjQUFjOztBQWlCbEI7RUFFRSxxQnJCbkRXO0VxQmlEYjtJQVVJLHFCckIzRFM7SXFCNERULHdEckI1RFM7WXFCNERULGdEckI1RFM7RXFCaURiOzs7SUFnQkksY0FBYzs7QUFPbEI7OztFQUlJLGNBQWM7O0FBTWxCO0VBR0ksY3JCckZTOztBcUJrRmI7OztFQVFJLGNBQWM7O0FBTWxCO0VBR0ksY3JCbkdTO0VxQmdHYjtJQU1NLHFCckJ0R087O0FxQmdHYjs7O0VBWUksY0FBYzs7QUFabEI7RUFpQk0scUJBQWtDO0VDbkp4Qyx5QkRvSitDOztBQWxCL0M7RUF3Qk0sd0RyQnhITztVcUJ3SFAsZ0RyQnhITzs7QXFCZ0diO0VBNEJNLHFC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a1krRTtJNkJqWS9FLG1CQUFtQjtJQUVuQixxQjdCZ1k0RTtFNkJ6WWxGO0lBYU0sd0JBQTBJO0lBQzFJLDBCQUErRztJQUMvRyx1QjdCMlhpSTtJNkIxWGpJLHdCN0IwWGlJO0k2QnpYakkseUI3QjNLWTtJNkI2S1oscUI3QnNYNEU7SW9CemlCNUUsaUtwQjhmK0g7SW9COWYvSCx5SnBCOGYrSDtJb0I5Zi9ILHlJcEI4ZitIO0lvQjlmL0gsb05wQjhmK0g7SW9CemZqSTtNUzJKSjtRVDFKTSx3QkFBZ0I7UUFBaEIsZ0JBQWdCLElTK0tqQjtFQXJCTDtJQTBCTSxzQjdCekxTO0k2QjBMVCxzQ0FBNEU7WUFBNUUsOEJBQTRFO0VBM0JsRjtJQWlDTSx3QzdCbktXOztBNkIrS2pCO0VBQ0UscUJBQXFCO0VBQ3JCLFdBQVc7RUFDWCxtQzdCd1IySDtFNkJ2UjNILDBDN0J3S2tDO0VDaFE5QixlQXRDWTtFNEJpSWhCLGdCN0JpRStCO0U2QmhFL0IsZ0I3QnFFK0I7RTZCcEUvQixjN0I5TWdCO0U2QitNaEIsc0JBQXNCO0VBQ3RCLDZNN0JtV21JO0U2QmxXbkksc0I3QnhOYTtFNkJ5TmIseUI3QnJOZ0I7RVVOZCxzQlZxT2dDO0U2QlBsQyx3QkFBZ0I7S0FBaEIscUJBQWdCO1VBQWhCLGdCQUFnQjtFQWhCbEI7SUFtQkkscUI3QjBQc0U7STZCelB0RSxVQUFVO0lBSVIsd0Q3QnZNVztZNkJ1TVgsZ0Q3QnZNVztJNkIrS2pCO01BaUNNLFc3Qm5PUztNNkJvT1Qsc0I3QjlPUztFNkI0TWY7SUF3Q0ksWUFBWTtJQUNaLHNCN0JtSWdDO0k2QmxJaEMsc0JBQXNCO0VBMUMxQjtJQThDSSxjN0JwUGM7STZCcVBkLHlCWDVQYztFVzZNbEI7SUFvREksYUFBYTs7QUFJakI7RUFDRSxrQzdCbU9xSTtFNkJsT3JJLG9CN0IySGtDO0U2QjFIbEMsdUI3QjBIa0M7RTZCekhsQyxvQjdCMEhpQztFQzFRN0IsbUJBdENZOztBNEIwTGxCO0VBQ0UsZ0M3QjROcUk7RTZCM05ySSxtQjdCd0hpQztFNkJ2SGpDLHNCN0J1SGlDO0U2QnRIakMsa0I3QnVIZ0M7RUMvUTVCLGtCQXRDWTs7QTRCdU1sQjtFQUNFLGtCQUFrQjtFQUNsQixxQkFBcUI7RUFDckIsV0FBVztFQUNYLG1DN0IwTTJIO0U2QnpNM0gsZ0JBQWdCOztBQUdsQjtFQUNFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsV0FBVztFQUNYLG1DN0JrTTJIO0U2QmpNM0gsU0FBUztFQUNULFVBQVU7RUFOWjtJQVNJLHFCN0IrS3NFO0k2QjlLdEUsd0Q3QjlRYTtZNkI4UWIsZ0Q3QjlRYTtFNkJvUWpCO0lBY0kseUI3QjdTYztFNkIrUmxCO0lBbUJNLGlCN0JxVVE7RTZCeFZkO0lBd0JJLDBCQUEwQjs7QUFJOUI7RUFDRSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQVE7RUFDUixPQUFPO0VBQ1AsVUFBVTtFQUNWLG1DN0JvSzJIO0U2Qm5LM0gseUI3Qm9Ea0M7RTZCbERsQyxnQjdCbEQrQjtFNkJtRC9CLGdCN0I5QytCO0U2QitDL0IsYzdCalVnQjtFNkJrVWhCLHNCN0J6VWE7RTZCMFViLHlCN0J0VWdCO0VVTmQsc0JWcU9nQztFNkIwRnBDO0lBa0JJLGtCQUFrQjtJQUNsQixNQUFNO0lBQ04sUUFBUTtJQUNSLFNBQVM7SUFDVCxVQUFVO0lBQ1YsY0FBYztJQUNkLDZCN0I4SStGO0k2QjdJL0YseUI3QmtDZ0M7STZCakNoQyxnQjdCOUQ2QjtJNkIrRDdCLGM3QmpWYztJNkJrVmQsaUJBQWlCO0lQMVZqQix5QnRCR2M7STZCeVZkLG9CQUFvQjtJbkI3VnBCLGtDbUI4VmdGOztBQVVwRjtFQUNFLFdBQVc7RUFDWCwyQkFBK0Y7RUFDL0YsVUFBVTtFQUNWLDZCQUE2QjtFQUM3Qix3QkFBZ0I7S0FBaEIscUJBQWdCO1VBQWhCLGdCQUFnQjtFQUxsQjtJQVFJLGFBQWE7SUFSakI7TUFZOEIsd0U3QnJWYjtjNkJxVmEsZ0U3QnJWYjtJNkJ5VWpCO01BYThCLGdFN0J0VmI7STZCeVVqQjtNQWM4QixnRTdCdlZiO0U2QnlVakI7SUFrQkksU0FBUztFQWxCYjtJQXNCSSxXN0I4TjZDO0k2QjdON0MsWTdCNk42QztJNkI1TjdDLG9CQUF5RTtJUC9YekUseUJ0QjhCYTtJNkJtV2IsUzdCNk4wQztJVS9sQjFDLG1CVmdtQjZDO0lvQi9sQjNDLDRIcEI4ZitIO0lvQjlmL0gsb0hwQjhmK0g7SW9COWYvSCw0R3BCOGYrSDtJb0I5Zi9ILGtKcEI4ZitIO0k2QnpIakksd0JBQWdCO1lBQWhCLGdCQUFnQjtJVGhZaEI7TVNrV0o7UVRqV00sd0JBQWdCO1FBQWhCLGdCQUFnQixJU29ZbkI7SUFuQ0g7TVB2V0kseUJ0Qm1tQjJFO0U2QjVQL0U7SUFzQ0ksVzdCdU1vQztJNkJ0TXBDLGM3QnVNcUM7STZCdE1yQyxrQkFBa0I7SUFDbEIsZTdCc011QztJNkJyTXZDLHlCN0I3WWM7STZCOFlkLHlCQUF5QjtJbkJuWnpCLG1CVnlsQm9DO0U2QmpQeEM7SUFpREksVzdCbU02QztJNkJsTTdDLFk3QmtNNkM7SXNCM2xCN0MseUJ0QjhCYTtJNkI2WGIsUzdCbU0wQztJVS9sQjFDLG1CVmdtQjZDO0lvQi9sQjNDLDRIcEI4ZitIO0lvQjlmL0gsb0hwQjhmK0g7SW9COWYvSCw0R3BCOGYrSDtJb0I5Zi9ILGtKcEI4ZitIO0k2Qi9GakkscUJBQWdCO1NBQWhCLGdCQUFnQjtJVDFaaEI7TVNrV0o7UVRqV00sd0JBQWdCO1FBQWhCLGdCQUFnQixJUzhabkI7SUE3REg7TVB2V0kseUJ0Qm1tQjJFO0U2QjVQL0U7SUFnRUksVzdCNktvQztJNkI1S3BDLGM3QjZLcUM7STZCNUtyQyxrQkFBa0I7SUFDbEIsZTdCNEt1QztJNkIzS3ZDLHlCN0J2YWM7STZCd2FkLHlCQUF5QjtJbkI3YXpCLG1CVnlsQm9DO0U2QmpQeEM7SUEyRUksVzdCeUs2QztJNkJ4SzdDLFk3QndLNkM7STZCdks3QyxhQUFhO0lBQ2Isb0I3QnZEK0I7STZCd0QvQixtQjdCeEQrQjtJc0I5WC9CLHlCdEI4QmE7STZCMFpiLFM3QnNLMEM7SVUvbEIxQyxtQlZnbUI2QztJb0IvbEIzQyw0SHBCOGYrSDtJb0I5Zi9ILG9IcEI4ZitIO0lvQjlmL0gsNEdwQjhm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WWhDbWdDdUM7O0FnQzVnQzdDO0VBb0JJLDBCQUEwQjs7QUFwQjlCO0VBd0JJLHFCQUFxQjs7QUF4QnpCO0VBNEJJLGNoQ3pCYzs7QWlDYmxCO0VBQ0Usb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RTFCR2IsZUFBZTtFQUNmLGdCQUFnQjtFR0FkLHNCVnFPZ0M7O0FpQ3BPcEM7RUFDRSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLHVCakNxd0J3QztFaUNwd0J4QyxpQmpDNk4rQjtFaUM1Ti9CLGlCakN3d0JzQztFaUN2d0J0QyxjakN3QmU7RWlDdkJmLHNCakNOYTtFaUNPYix5QmpDSmdCO0VpQ0psQjtJQVdJLFVBQVU7SUFDVixjakMySjhEO0lpQzFKOUQscUJBQXFCO0lBQ3JCLHlCakNYYztJaUNZZCxxQmpDWGM7RWlDSmxCO0lBbUJJLFVBQVU7SUFDVixVakNpd0JpQztJaUNod0JqQyx3RGpDU2E7WWlDVGIsZ0RqQ1NhOztBaUNMakI7RUFHTSxjQUFjO0V2QkNoQiwrQlZ1TWdDO0VVdE1oQyxrQ1ZzTWdDOztBaUMzTXBDO0V2QlZJLGdDVnFOZ0M7RVVwTmhDLG1DVm9OZ0M7O0FpQzNNcEM7RUFjSSxVQUFVO0VBQ1YsV2pDdkNXO0VpQ3dDWCx5QmpDWGE7RWlDWWIscUJqQ1phOztBaUNMakI7RUFxQkksY2pDdkNjO0VpQ3dDZCxvQkFBb0I7RUFFcEIsWUFBWTtFQUNaLHNCakNqRFc7RWlDa0RYLHFCakMvQ2M7O0FrQ1BoQjtFQUNFLHVCbEM4d0JzQztFQ25wQnBDLGlCQXRDWTtFaUNuRmQsZ0JsQzhONkI7O0FrQ3pOM0I7RXhCd0JGLDhCVndNK0I7RVV2TS9CLGlDVnVNK0I7O0FrQzNON0I7RXhCS0YsK0JWc04rQjtFVXJOL0Isa0NWcU4rQjs7QWtDeE9qQztFQUNFLHVCbEM0d0JxQztFQ2pwQm5DLG1CQXRDWTtFaUNuRmQsZ0JsQytONkI7O0FrQzFOM0I7RXhCd0JGLDhCVnlNK0I7RVV4TS9CLGlDVndNK0I7O0FrQzVON0I7RXhCS0YsK0JWdU4rQjtFVXROL0Isa0NWc04rQjs7QW1Ddk9uQztFQUNFLHFCQUFxQjtFQUNyQixxQm5DMjRCc0M7RUMxMEJwQyxjQUFXO0VrQy9EYixnQm5DbVIrQjtFbUNsUi9CLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLHdCQUF3QjtFekJSdEIsc0JWcU9nQztFb0JwTzlCLHFKcEJxYjZJO0VvQnJiN0ksNklwQnFiNkk7RW9CcmI3SSxxSXBCcWI2STtFb0JyYjdJLDJLcEJxYjZJO0VvQmhiL0k7SWVOSjtNZk9NLHdCQUFnQjtNQUFoQixnQkFBZ0IsSWVlckI7RTlCWEM7SThCR0kscUJBQXFCO0VBZDNCO0lBb0JJLGFBQWE7O0FBS2pCO0VBQ0Usa0JBQWtCO0VBQ2xCLFNBQVM7O0FBT1g7RUFDRSxvQm5DZzNCc0M7RW1DLzJCdEMsbUJuQysyQnNDO0VVbjVCcEMsb0JWczVCcUM7O0FtQ3oyQnZDO0VDakRBLFdwQ01hO0VvQ0xiLHNCcENlYTtFS0RiO0krQlZJLFdwQ0NTO0lvQ0FULHVCQUFrQztFQUg5QjtJQVFKLFVBQVU7SUFDVixtRHBDSVM7WW9DSlQsMkNwQ0lTOztBbUNpQ2I7RUNqREEsV3BDTWE7RW9DTGIseUJwQ1dnQjtFS0doQjtJK0JWSSxXcENDUztJb0NBVCx5QkFBa0M7RUFIOUI7SUFRSixVQUFVO0lBQ1YseURwQ0FZO1lvQ0FaLGlEcENBWTs7QW1DcUNoQjtFQ2pEQSxXcENNYTtFb0NMYix5QnBDeUNlO0VLM0JmO0krQlZJLFdwQ0NTO0lvQ0FULHlCQUFrQztFQUg5QjtJQVFKLFVBQVU7SUFDVix1RHBDOEJXO1lvQzlCWCwrQ3BDOEJXOztBbUNPZjtFQ2pEQSxXcENNYTtFb0NMYix5QnBDMkNlO0VLN0JmO0krQlZJLFdwQ0NTO0lvQ0FULHlCQUFrQztFQUg5QjtJQVFKLFVBQVU7SUFDVix3RHBDZ0NXO1lvQ2hDWCxnRHBDZ0NXOztBbUNLZjtFQ2pEQSxjcENlZ0I7RW9DZGhCLHlCcEN3Q2U7RUsxQmY7SStCVkksY3BDVVk7SW9DVFoseUJBQWtDO0VBSDlCO0lBUUosVUFBVTtJQUNWLHVEcEM2Qlc7WW9DN0JYLCtDcEM2Qlc7O0FtQ1FmO0VDakRBLFdwQ01hO0VvQ0xiLHlCcENzQ2U7RUt4QmY7SStCVkksV3BDQ1M7SW9DQVQseUJBQWtDO0VBSDlCO0lBUUosVUFBVTtJQUNWLHVEcEMyQlc7WW9DM0JYLCtDcEMyQlc7O0FtQ1VmO0VDakRBLGNwQ2VnQjtFb0NkaEIseUJwQ01nQjtFS1FoQjtJK0JWSSxjcENVWTtJb0NUWix5QkFBa0M7RUFIOUI7SUFRSixVQUFVO0lBQ1YseURwQ0xZO1lvQ0taLGlEcENMWTs7QW1DMENoQjtFQ2pEQSxXcENNYTtFb0NMYix5QnBDYWdCO0VLQ2hCO0krQlZJLFdwQ0NTO0lvQ0FULHlCQUFrQztFQUg5QjtJQVFKLFVBQVU7SUFDVixzRHBDRVk7WW9DRlosOENwQ0VZOztBbUNtQ2hCO0VDakRBLFdwQ01hO0VvQ0xiLHNCbEJvQ29CO0VidEJwQjtJK0JWSSxXcENDUztJb0NBVCx5QkFBa0M7RUFIOUI7SUFRSixVQUFVO0lBQ1Ysc0RsQnlCZ0I7WWtCekJoQiw4Q2xCeUJnQjs7QWlCWXBCO0VDakRBLFdwQ01hO0VvQ0xiLHlCbEJzQ3VCO0VieEJ2QjtJK0JWSSxXcENDUztJb0NBVCx5QkFBa0M7RUFIOUI7SUFRSixVQUFVO0lBQ1YsdURsQjJCbUI7WWtCM0JuQiwrQ2xCMkJtQjs7QWlCVXZCO0VDakRBLFdwQ01hO0VvQ0xiLHlCbEJxQ3VCO0VidkJ2QjtJK0JWSSxXcENDUztJb0NBVCx5QkFBa0M7RUFIOUI7SUFRSixVQUFVO0lBQ1YsdURsQjBCbUI7WWtCMUJuQiwrQ2xCMEJtQjs7QWlCV3ZCO0VDakRBLGNwQ2VnQjtFb0NkaEIseUJsQnVDdUI7RWJ6QnZCO0krQlZJLGNwQ1VZO0lvQ1RaLHlCQUFrQztFQUg5QjtJQVFKLFVBQVU7SUFDVix3RGxCNEJtQjtZa0I1Qm5CLGdEbEI0Qm1COztBbUJ6Q3pCO0VBQ0Usa0JBQW9EO0VBQ3BELG1CckMweUJzQztFcUN4eUJ0Qyx5QnJDS2dCO0VVSmQscUJWc08rQjtFZTFOM0I7SXNCakJSO01BUUksa0JyQ295Qm9DLElxQ2x5QnZDOztBQUVEO0VBQ0UsZ0JBQWdCO0VBQ2hCLGVBQWU7RTNCVGIsZ0IyQlVzQjs7QUNieEI7RUFDRTtJQUFPLDZCQUF1QztFQUM5QztJQUFLLHdCQUF3Qjs7QUFGL0I7RUFDRTtJQUFPLDZCQUF1QztFQUM5QztJQUFLLHdCQUF3Qjs7QUFJakM7RUFDRSxvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLGNyQkswQjtFcUJKMUIsZ0JBQWdCO0VyQ29IWixrQkF0Q1k7RXFDNUVoQix5QnBCRmdCO0VSTmQsZ0I2QlVzQjs7QURHMUI7RUFDRSxvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLDRCQUFzQjtFQUF0Qiw2QkFBc0I7TUFBdEIsMEJBQXNCO1VBQXRCLHNCQUFzQjtFQUN0Qix3QkFBdUI7TUFBdkIscUJBQXVCO1VBQXZCLHVCQUF1QjtFQUN2QixXdENmYTtFc0NnQmIsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQixzQnRDUmE7RW9CWFQsbUNwQnc5QjRDO0VvQng5QjVDLDJCcEJ3OUI0QztFb0JuOUI5QztJa0JPSjtNbEJOTSx3QkFBZ0I7TUFBaEIsZ0JBQWdCLElrQmVyQjs7QUFFRDtFaEJjRSxxTUFBNkk7RWdCWjdJLDhCckJoQjBCOztBcUJvQjFCO0VBQ0UsMER0Q3k3QmtEO1VzQ3o3QmxELGtEdEN5N0JrRDtFc0N2N0JsRDtJQUhGO01BSUksdUJBQWU7Y0FBZixlQUFlLElBRWxCOztBRXpDSDtFQUNFLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2Isd0JBQXVCO01BQXZCLHFCQUF1QjtVQUF2Qix1QkFBdUI7O0FBR3pCO0VBQ0UsbUJBQU87TUFBUCxXQUFPO1VBQVAsT0FBTzs7QUNGVDtFQUNFLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IsNEJBQXNCO0VBQXRCLDZCQUFzQjtNQUF0QiwwQkFBc0I7VUFBdEIsc0JBQXNCO0VBR3RCLGVBQWU7RUFDZixnQkFBZ0I7O0FBU2xCO0VBQ0UsV0FBVztFQUNYLGN6Q1BnQjtFeUNRaEIsbUJBQW1CO0VwQ05uQjtJb0NVRSxVQUFVO0lBQ1YsY3pDYmM7SXlDY2QscUJBQXFCO0lBQ3JCLHlCekNyQmM7RXlDV2xCO0lBY0ksY3pDakJjO0l5Q2tCZCx5QnpDekJjOztBeUNrQ2xCO0VBQ0Usa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCx3QnpDNDdCeUM7RXlDMTdCekMsbUJ6Q3VMK0I7RXlDckwvQixzQnpDM0NhO0V5QzRDYixzQ3pDbENhO0V5QzBCZjtJL0I3QkksK0JWNE5nQztJVTNOaEMsZ0NWMk5nQztFeUMvTHBDO0lBZUksZ0JBQWdCO0kvQjlCaEIsbUNWOE1nQztJVTdNaEMsa0NWNk1nQztFeUMvTHBDO0lBcUJJLGN6Q25EYztJeUNvRGQsb0JBQW9CO0lBQ3BCLHNCekMzRFc7RXlDb0NmO0lBNEJJLFVBQVU7SUFDVixXekNqRVc7SXlDa0VYLHlCekNyQ2E7SXlDc0NiLHFCekN0Q2E7O0F5Q21EYjtFQUNFLDhCQUFtQjtFQUFuQiw2QkFBbUI7TUFBbkIsdUJBQW1CO1VBQW5CLG1CQUFtQjtFQURyQjtJQUlJLGtCekM0SXlCO0l5QzNJekIsZ0JBQWdCO0lBTHBCO00vQnBEQSwrQlZ1TWdDO01VdE1oQyxrQ1ZzTWdDO01VMUxoQywwQitCZ0R3QztJQVR4QztNQWFNLGVBQWU7TS9CL0VyQixnQ1ZxTmdDO01VcE5oQyxtQ1ZvTmdDO01VOUtoQyw0QitCMEMwQzs7QTFCckZ0QztFMEJzRUo7SUFDRSw4QkFBbUI7SUFBbkIsNkJBQW1CO1FBQW5CLHVCQUFtQjtZQUFuQixtQkFBbUI7SUFEckI7TUFJSSxrQnpDNEl5QjtNeUMzSXpCLGdCQUFnQjtNQUxwQjtRL0JwREEsK0JWdU1nQztRVXRNaEMsa0NWc01nQztRVTFMaEMsMEIrQmdEd0M7TUFUeEM7UUFhTSxlQUFlO1EvQi9FckIsZ0NWcU5nQztRVXBOaEMsbUNWb05nQztRVTlLaEMsNEIrQjBDMEMsSUFDckM7O0ExQnRGRDtFMEJzRUo7SUFDRSw4QkFBbUI7SUFBbkIsNkJBQW1CO1FBQW5CLHVCQUFtQjtZQUFuQixtQkFBbUI7SUFEckI7TUFJSSxrQnpDNEl5QjtNeUMzSXpCLGdCQUFnQjtNQUxwQjtRL0JwREEsK0JWdU1nQztRVXRNaEMsa0NWc01nQztRVTFMaEMsMEIrQmdEd0M7TUFUeEM7UUFhTSxlQUFlO1EvQi9FckIsZ0NWcU5nQztRVXBOaEMsbUNWb05nQztRVTlLaEMsNEIrQjBDMEMsSUFDckM7O0ExQnRGRDtFMEJzRUo7SUFDRSw4QkFBbUI7SUFBbkIsNkJBQW1CO1FBQW5CLHVCQUFtQjtZQUFuQixtQkFBbUI7SUFEckI7TUFJSSxrQnpDNEl5QjtNeUMzSXpCLGdCQUFnQjtNQUxwQjtRL0JwREEsK0JWdU1nQztRVXRNaEMsa0NWc01nQztRVTFMaEMsMEIrQmdEd0M7TUFUeEM7UUFhTSxlQUFlO1EvQi9FckIsZ0NWcU5nQztRVXBOaEMsbUNWb05nQztRVTlLaEMsNEIrQjBDMEMsSUFDckM7O0ExQnRGRDtFMEJzRUo7SUFDRSw4QkFBbUI7SUFBbkIsNkJBQW1CO1FBQW5CLHVCQUFtQjtZQUFuQixtQkFBbUI7SUFEckI7TUFJSSxrQnpDNEl5QjtNeUMzSXpCLGdCQUFnQjtNQUxwQjtRL0JwREEsK0JWdU1nQztRVXRNaEMsa0NWc01nQztRVTFMaEMsMEIrQmdEd0M7TUFUeEM7UUFhTSxlQUFlO1EvQi9FckIsZ0NWcU5nQztRVXBOaEMsbUNWb05nQztRVTlLaEMsNEIrQjBDMEMsSUFDckM7O0ExQnRGRDtFMEJzRUo7SUFDRSw4QkFBbUI7SUFBbkIsNkJBQW1CO1FBQW5CLHVCQUFtQjtZQUFuQixtQkFBbUI7SUFEckI7TUFJSSxrQnpDNEl5QjtNeUMzSXpCLGdCQUFnQjtNQUxwQjtRL0JwREEsK0JWdU1nQztRVXRNaEMsa0NWc01nQztRVTFMaEMsMEIrQmdEd0M7TUFUeEM7UUFhTSxlQUFlO1EvQi9FckIsZ0NWcU5nQztRVXBOaEMsbUNWb05nQztRVTlLaEMsNEIrQjBDMEMsSUFDckM7O0ExQnRGRDtFMEJzRUo7SUFDRSw4QkFBbUI7SUFBbkIsNkJBQW1CO1FBQW5CLHVCQUFtQjtZQUFuQixtQkFBbUI7SUFEckI7TUFJSSxrQnpDNEl5QjtNeUMzSXpCLGdCQUFnQjtNQUxwQjtRL0JwREEsK0JWdU1nQztRVXRNaEMsa0NWc01nQztRVTFMaEMsMEIrQmdEd0M7TUFUeEM7UUFhTSxlQUFlO1EvQi9FckIsZ0NWcU5nQztRVXBOaEMsbUNWb05nQztRVTlLaEMsNEIrQjBDMEMsSUFDckM7O0ExQnRGRDtFMEJzRUo7SUFDRSw4QkFBbUI7SUFBbkIsNkJBQW1CO1FBQW5CLHVCQUFtQjtZQUFuQixtQkFBbUI7SUFEckI7TUFJSSxrQnpDNEl5QjtNeUMzSXpCLGdCQUFnQjtNQUxwQjtRL0JwREEsK0JWdU1nQztRVXRNaEMsa0NWc01nQztRVTFMaEMsMEIrQmdEd0M7TUFUeEM7UUFhTSxlQUFlO1EvQi9FckIsZ0NWcU5nQztRVXBOaEMsbUNWb05nQztRVTlLaEMsNEIrQjBDMEMsSUFDckM7O0FBWVQ7RUFFSSxlQUFlO0VBQ2YsY0FBYztFL0JqSGQsZ0IrQmtId0I7RUFKNUI7SUFPTSxtQnpDNkcyQjs7QXlDcEhqQztFQWFNLGFBQWE7O0FBYm5CO0VBbUJNLGdCQUFnQjtFQUNoQixnQkFBZ0I7O0FDcElwQjtFQUNFLFk1QmdGOEQ7RTRCL0U5RCx5QjVCK0U4RDtFVHBFaEU7SXFDUE0sWTVCMkUwRDtJNEIxRTFELHlCQUF5QztFQVAvQztJQVdNLFcxQ1BPO0kwQ1FQLHVCNUJxRTBEO0k0QnBFMUQsbUI1Qm9FMEQ7O0E0QmpGaEU7RUFDRSxjNUJnRjhEO0U0Qi9FOUQseUI1QitFOEQ7RVRwRWhFO0lxQ1BNLGM1QjJFMEQ7STRCMUUxRCx5QkFBeUM7RUFQL0M7SUFXTSxXMUNQTztJMENRUCx5QjVCcUUwRDtJNEJwRTFELHFCNUJvRTBEOztBNEJqRmhFO0VBQ0UsYzVCZ0Y4RDtFNEIvRTlELHlCNUIrRThEO0VUcEVoRTtJcUNQTSxjNUIyRTBEO0k0QjFFMUQseUJBQXlDO0VBUC9DO0lBV00sVzFDUE87STBDUVAseUI1QnFFMEQ7STRCcEUxRCxxQjVCb0UwRDs7QTRCakZoRTtFQUNFLGM1QmdGOEQ7RTRCL0U5RCx5QjVCK0U4RDtFVHBFaEU7SXFDUE0sYzVCMkUwRDtJNEIxRTFELHlCQUF5QztFQVAvQztJQVdNLFcxQ1BPO0kwQ1FQLHlCNUJxRTBEO0k0QnBFMUQscUI1Qm9FMEQ7O0E0QmpGaEU7RUFDRSxjNUJnRjhEO0U0Qi9FOUQseUI1QitFOEQ7RVRwRWhFO0lxQ1BNLGM1QjJFMEQ7STRCMUUxRCx5QkFBeUM7RUFQL0M7SUFXTSxXMUNQTztJMENRUCx5QjVCcUUwRDtJNEJwRTFELHFCNUJvRTBEOztBNEJqRmhFO0VBQ0UsYzVCZ0Y4RDtFNEIvRTlELHlCNUIrRThEO0VUcEVoRTtJcUNQTSxjNUIyRTBEO0k0QjFFMUQseUJBQXlDO0VBUC9DO0lBV00sVzFDUE87STBDUVAseUI1QnFFMEQ7STRCcEUxRCxxQjVCb0UwRDs7QTRCakZoRTtFQUNFLGM1QmdGOEQ7RTRCL0U5RCx5QjVCK0U4RDtFVHBFaEU7SXFDUE0sYzVCMkUwRDtJNEIxRTFELHlCQUF5QztFQVAvQztJQVdNLFcxQ1BPO0kwQ1FQLHlCNUJxRTBEO0k0QnBFMUQscUI1Qm9FMEQ7O0E0QmpGaEU7RUFDRSxjNUJnRjhEO0U0Qi9FOUQseUI1QitFOEQ7RVRwRWhFO0lxQ1BNLGM1QjJFMEQ7STRCMUUxRCx5QkFBeUM7RUFQL0M7SUFXTSxXMUNQTztJMENRUCx5QjVCcUUwRDtJNEJwRTFELHFCNUJvRTBEOztBNEJqRmhFO0VBQ0UsYzVCZ0Y4RDtFNEIvRTlELHlCNUIrRThEO0VUcEVoRTtJcUNQTSxjNUIyRTBEO0k0QjFFMUQseUJBQXlDO0VBUC9DO0lBV00sVzFDUE87STBDUVAseUI1QnFFMEQ7STRCcEUxRCxxQjVCb0UwRDs7QTRCakZoRTtFQUNFLGM1QmdGOEQ7RTRCL0U5RCx5QjVCK0U4RDtFVHBFaEU7SXFDUE0sYzVCMkUwRDtJNEIxRTFELHlCQUF5QztFQVAvQztJQVdNLFcxQ1BPO0kwQ1FQLHlCNUJxRTBEO0k0QnBFMUQscUI1Qm9FMEQ7O0E0QmpGaEU7RUFDRSxjNUJnRjhEO0U0Qi9FOUQseUI1QitFOEQ7RVRwRWhFO0lxQ1BNLGM1QjJFMEQ7STRCMUUxRCx5QkFBeUM7RUFQL0M7SUFXTSxXMUNQTztJMENRUCx5QjVCcUUwRDtJNEJwRTFELHFCNUJvRTBEOztBNEJq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O0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLGlEQUF1QjtFQUR6QjtJQUdJLGlEQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UsaURBQXVCO0VBRHpCO0lBR0ksaURBQXVCOztBQUgzQjtFQUNFLG9EQUF1QjtFQUR6QjtJQUdJLG9EQUF1Qjs7QUFIM0I7RUFDRSxpREFBdUI7RUFEekI7SUFHSSxpREFBdUI7O0FBSDNCO0VBQ0UscURBQXVCO0VBRHpCO0lBR0kscURB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QztJQXVCUSxxQkFBdUM7RUFJL0M7O0lBSVksNkJBQTZCO0VBSnpDO0lBVVksV3RGeFZEO0VzRjhVWDs7O0lBZ0JZLFd4RzlWRDtFd0dtV1g7SUFHWSxzQnhHdFdEO0V3R21XWDtJQVFRLGdDQUFnQztJQUNoQyw2QkFBNkI7RUFUckM7O0lBZVksVXhHbFhEO0V3R21XWDtJQW1CWSwwQ0F2WHNEO0VBb1dsRTtJQXVCWSxhQUFhO0VBdkJ6QjtJQTJCWSxxQkFBcUI7RUEzQmpDO0lBK0JZLFd4R2xZRDtFd0dtV1g7SUFtQ1ksV3RGdFlEO0VzRm1XWDtJQW1DWSxXdEZ0WUQ7RXNGbVdYO0lBbUNZLFd0RnRZRDtFc0ZtV1g7SUFtQ1ksV3RGdFlEO0VzRm1XWDtJQXVDWSxzQnhHMVlEO0l3RzJZQyxXeEdqWUQ7RXdHeVZYO0lBOENZLDBDQWpaNEQ7RUFtV3hFO0lBbURRLG9CdkY5WWdCLEl1RitZbkI7O0FBSVQiLCJmaWxlIjoiZGVmYXVsdFxcc2Nzc1xcZXhwZXJpZW5jZVxcc3RvcmVQYWdlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8vIHN0eWxlbGludC1kaXNhYmxlIGF0LXJ1bGUtbm8tdmVuZG9yLXByZWZpeCwgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcblxuLy8gUmVib290XG4vL1xuLy8gTm9ybWFsaXphdGlvbiBvZiBIVE1MIGVsZW1lbnRzLCBtYW51YWxseSBmb3JrZWQgZnJvbSBOb3JtYWxpemUuY3NzIHRvIHJlbW92ZVxuLy8gc3R5bGVzIHRhcmdldGluZyBpcnJlbGV2YW50IGJyb3dzZXJzIHdoaWxlIGFwcGx5aW5nIG5ldyBzdHlsZXMuXG4vL1xuLy8gTm9ybWFsaXplIGlzIGxpY2Vuc2VkIE1JVC4gaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzc1xuXG5cbi8vIERvY3VtZW50XG4vL1xuLy8gMS4gQ2hhbmdlIGZyb20gYGJveC1zaXppbmc6IGNvbnRlbnQtYm94YCBzbyB0aGF0IGB3aWR0aGAgaXMgbm90IGFmZmVjdGVkIGJ5IGBwYWRkaW5nYCBvciBgYm9yZGVyYC5cbi8vIDIuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMuXG4vLyAzLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4vLyA0LiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbi8vIDUuIENoYW5nZSB0aGUgZGVmYXVsdCB0YXAgaGlnaGxpZ2h0IHRvIGJlIGNvbXBsZXRlbHkgdHJhbnNwYXJlbnQgaW4gaU9TLlxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG59XG5cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLy8gMlxuICBsaW5lLWhlaWdodDogMS4xNTsgLy8gM1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDRcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKCRibGFjaywgMCk7IC8vIDVcbn1cblxuLy8gU2hpbSBmb3IgXCJuZXdcIiBIVE1MNSBzdHJ1Y3R1cmFsIGVsZW1lbnRzIHRvIGRpc3BsYXkgY29ycmVjdGx5IChJRTEwLCBvbGRlciBicm93c2Vycylcbi8vIFRPRE86IHJlbW92ZSBpbiB2NVxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuYXJ0aWNsZSwgYXNpZGUsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWFpbiwgbmF2LCBzZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIEJvZHlcbi8vXG4vLyAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4vLyAyLiBBcyBhIGJlc3QgcHJhY3RpY2UsIGFwcGx5IGEgZGVmYXVsdCBgYmFja2dyb3VuZC1jb2xvcmAuXG4vLyAzLiBTZXQgYW4gZXhwbGljaXQgaW5pdGlhbCB0ZXh0LWFsaWduIHZhbHVlIHNvIHRoYXQgd2UgY2FuIGxhdGVyIHVzZVxuLy8gICAgdGhlIGBpbmhlcml0YCB2YWx1ZSBvbiB0aGluZ3MgbGlrZSBgPHRoPmAgZWxlbWVudHMuXG5cbmJvZHkge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1iYXNlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gM1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZzsgLy8gMlxufVxuXG4vLyBTdXBwcmVzcyB0aGUgZm9jdXMgb3V0bGluZSBvbiBlbGVtZW50cyB0aGF0IGNhbm5vdCBiZSBhY2Nlc3NlZCB2aWEga2V5Ym9hcmQuXG4vLyBUaGlzIHByZXZlbnRzIGFuIHVud2FudGVkIGZvY3VzIG91dGxpbmUgZnJvbSBhcHBlYXJpbmcgYXJvdW5kIGVsZW1lbnRzIHRoYXRcbi8vIG1pZ2h0IHN0aWxsIHJlc3BvbmQgdG8gcG9pbnRlciBldmVudHMuXG4vL1xuLy8gQ3JlZGl0OiBodHRwczovL2dpdGh1Yi5jb20vc3VpdGNzcy9iYXNlXG5bdGFiaW5kZXg9XCItMVwiXTpmb2N1cyB7XG4gIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbn1cblxuXG4vLyBDb250ZW50IGdyb3VwaW5nXG4vL1xuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbi8vIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gIGhlaWdodDogMDsgLy8gMVxuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gMlxufVxuXG5cbi8vXG4vLyBUeXBvZ3JhcGh5XG4vL1xuXG4vLyBSZW1vdmUgdG9wIG1hcmdpbnMgZnJvbSBoZWFkaW5nc1xuLy9cbi8vIEJ5IGRlZmF1bHQsIGA8aDE+YC1gPGg2PmAgYWxsIHJlY2VpdmUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gV2UgbnVrZSB0aGUgdG9wXG4vLyBtYXJnaW4gZm9yIGVhc2llciBjb250cm9sIHdpdGhpbiB0eXBlIHNjYWxlcyBhcyBpdCBhdm9pZHMgbWFyZ2luIGNvbGxhcHNpbmcuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIFJlc2V0IG1hcmdpbnMgb24gcGFyYWdyYXBoc1xuLy9cbi8vIFNpbWlsYXJseSwgdGhlIHRvcCBtYXJnaW4gb24gYDxwPmBzIGdldCByZXNldC4gSG93ZXZlciwgd2UgYWxzbyByZXNldCB0aGVcbi8vIGJvdHRvbSBtYXJnaW4gdG8gdXNlIGByZW1gIHVuaXRzIGluc3RlYWQgb2YgYGVtYC5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIEFiYnJldmlhdGlvbnNcbi8vXG4vLyAxLiBEdXBsaWNhdGUgYmVoYXZpb3IgdG8gdGhlIGRhdGEtKiBhdHRyaWJ1dGUgZm9yIG91ciB0b29sdGlwIHBsdWdpblxuLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbi8vIDMuIEFkZCBleHBsaWNpdCBjdXJzb3IgdG8gaW5kaWNhdGUgY2hhbmdlZCBiZWhhdmlvci5cbi8vIDQuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbi8vIDUuIFByZXZlbnQgdGhlIHRleHQtZGVjb3JhdGlvbiB0byBiZSBza2lwcGVkLlxuXG5hYmJyW3RpdGxlXSxcbmFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0geyAvLyAxXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvLyAyXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxuICBjdXJzb3I6IGhlbHA7IC8vIDNcbiAgYm9yZGVyLWJvdHRvbTogMDsgLy8gNFxuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7IC8vIDVcbn1cblxuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbm9sLFxudWwsXG5kbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbm9sIG9sLFxudWwgdWwsXG5vbCB1bCxcbnVsIG9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuZHQge1xuICBmb250LXdlaWdodDogJGR0LWZvbnQtd2VpZ2h0O1xufVxuXG5kZCB7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBtYXJnaW4tbGVmdDogMDsgLy8gVW5kbyBicm93c2VyIGRlZmF1bHRcbn1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlcjsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaVxufVxuXG5zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg4MCUpOyAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vyc1xufVxuXG4vL1xuLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4vLyBhbGwgYnJvd3NlcnMuXG4vL1xuXG5zdWIsXG5zdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg3NSUpO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIgeyBib3R0b206IC0uMjVlbTsgfVxuc3VwIHsgdG9wOiAtLjVlbTsgfVxuXG5cbi8vXG4vLyBMaW5rc1xuLy9cblxuYSB7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuXG4gIEBpbmNsdWRlIGhvdmVyIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG59XG5cbi8vIEFuZCB1bmRvIHRoZXNlIHN0eWxlcyBmb3IgcGxhY2Vob2xkZXIgbGlua3MvbmFtZWQgYW5jaG9ycyAod2l0aG91dCBocmVmKVxuLy8gd2hpY2ggaGF2ZSBub3QgYmVlbiBtYWRlIGV4cGxpY2l0bHkga2V5Ym9hcmQtZm9jdXNhYmxlICh3aXRob3V0IHRhYmluZGV4KS5cbi8vIEl0IHdvdWxkIGJlIG1vcmUgc3RyYWlnaHRmb3J3YXJkIHRvIGp1c3QgdXNlIGFbaHJlZl0gaW4gcHJldmlvdXMgYmxvY2ssIGJ1dCB0aGF0XG4vLyBjYXVzZXMgc3BlY2lmaWNpdHkgaXNzdWVzIGluIG1hbnkgb3RoZXIgc3R5bGVzIHRoYXQgYXJlIHRvbyBjb21wbGV4IHRvIGZpeC5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5NDAyXG5cbmE6bm90KFtocmVmXSk6bm90KFt0YWJpbmRleF0pIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG5cbi8vXG4vLyBDb2RlXG4vL1xuXG5wcmUsXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuICBAaW5jbHVkZSBmb250LXNpemUoMWVtKTsgLy8gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxufVxuXG5wcmUge1xuICAvLyBSZW1vdmUgYnJvd3NlciBkZWZhdWx0IHRvcCBtYXJnaW5cbiAgbWFyZ2luLXRvcDogMDtcbiAgLy8gUmVzZXQgYnJvd3NlciBkZWZhdWx0IG9mIGAxZW1gIHRvIHVzZSBgcmVtYHNcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgLy8gRG9uJ3QgYWxsb3cgY29udGVudCB0byBicmVhayBvdXRzaWRlXG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG5maWd1cmUge1xuICAvLyBBcHBseSBhIGNvbnNpc3RlbnQgbWFyZ2luIHN0cmF0ZWd5IChtYXRjaGVzIG91ciB0eXBlIHN0eWxlcykuXG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cblxuLy9cbi8vIEltYWdlcyBhbmQgY29udGVudFxuLy9cblxuaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXN0eWxlOiBub25lOyAvLyBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbn1cblxuc3ZnIHtcbiAgLy8gV29ya2Fyb3VuZCBmb3IgdGhlIFNWRyBvdmVyZmxvdyBidWcgaW4gSUUxMC8xMSBpcyBzdGlsbCByZXF1aXJlZC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjY4NzhcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuXG4vL1xuLy8gVGFibGVzXG4vL1xuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnNcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgY29sb3I6ICR0YWJsZS1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbn1cblxudGgge1xuICAvLyBNYXRjaGVzIGRlZmF1bHQgYDx0ZD5gIGFsaWdubWVudCBieSBpbmhlcml0aW5nIGZyb20gdGhlIGA8Ym9keT5gLCBvciB0aGVcbiAgLy8gY2xvc2VzdCBwYXJlbnQgd2l0aCBhIHNldCBgdGV4dC1hbGlnbmAuXG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG59XG5cblxuLy9cbi8vIEZvcm1zXG4vL1xuXG5sYWJlbCB7XG4gIC8vIEFsbG93IGxhYmVscyB0byB1c2UgYG1hcmdpbmAgZm9yIHNwYWNpbmcuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogJGxhYmVsLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIFJlbW92ZSB0aGUgZGVmYXVsdCBgYm9yZGVyLXJhZGl1c2AgdGhhdCBtYWNPUyBDaHJvbWUgYWRkcy5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcbmJ1dHRvbiB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gV29yayBhcm91bmQgYSBGaXJlZm94L0lFIGJ1ZyB3aGVyZSB0aGUgdHJhbnNwYXJlbnQgYGJ1dHRvbmAgYmFja2dyb3VuZFxuLy8gcmVzdWx0cyBpbiBhIGxvc3Mgb2YgdGhlIGRlZmF1bHQgYGJ1dHRvbmAgZm9jdXMgc3R5bGVzLlxuLy9cbi8vIENyZWRpdDogaHR0cHM6Ly9naXRodWIuY29tL3N1aXRjc3MvYmFzZS9cbmJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQ7XG4gIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtcbn1cblxuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG5vcHRncm91cCxcbnRleHRhcmVhIHtcbiAgbWFyZ2luOiAwOyAvLyBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmlcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2Vcbn1cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveFxufVxuXG4vLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHdvcmQtd3JhcCBpbiBTYWZhcmkuXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0OTkwXG5zZWxlY3Qge1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbn1cblxuXG4vLyAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2Bcbi8vICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbi8vIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbn1cblxuLy8gT3BpbmlvbmF0ZWQ6IGFkZCBcImhhbmRcIiBjdXJzb3IgdG8gbm9uLWRpc2FibGVkIGJ1dHRvbiBlbGVtZW50cy5cbkBpZiAkZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zIHtcbiAgYnV0dG9uLFxuICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgW3R5cGU9XCJyZXNldFwiXSxcbiAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICY6bm90KDpkaXNhYmxlZCkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSZW1vdmUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGZyb20gRmlyZWZveCwgYnV0IGRvbid0IHJlc3RvcmUgdGhlIG91dGxpbmUgbGlrZSBOb3JtYWxpemUuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtXG4gIHBhZGRpbmc6IDA7IC8vIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC1cbn1cblxuXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbmlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuaW5wdXRbdHlwZT1cIm1vbnRoXCJdIHtcbiAgLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IGFwcGVhcmFuY2Ugb2YgdGVtcG9yYWwgaW5wdXRzIHRvIGF2b2lkIGEgTW9iaWxlIFNhZmFyaVxuICAvLyBidWcgd2hlcmUgc2V0dGluZyBhIGN1c3RvbSBsaW5lLWhlaWdodCBwcmV2ZW50cyB0ZXh0IGZyb20gYmVpbmcgdmVydGljYWxseVxuICAvLyBjZW50ZXJlZCB3aXRoaW4gdGhlIGlucHV0LlxuICAvLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzOTg0OFxuICAvLyBhbmQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTI2NlxuICAtd2Via2l0LWFwcGVhcmFuY2U6IGxpc3Rib3g7XG59XG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gIC8vIFRleHRhcmVhcyBzaG91bGQgcmVhbGx5IG9ubHkgcmVzaXplIHZlcnRpY2FsbHkgc28gdGhleSBkb24ndCBicmVhayB0aGVpciAoaG9yaXpvbnRhbCkgY29udGFpbmVycy5cbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuZmllbGRzZXQge1xuICAvLyBCcm93c2VycyBzZXQgYSBkZWZhdWx0IGBtaW4td2lkdGg6IG1pbi1jb250ZW50O2Agb24gZmllbGRzZXRzLFxuICAvLyB1bmxpa2UgZS5nLiBgPGRpdj5gcywgd2hpY2ggaGF2ZSBgbWluLXdpZHRoOiAwO2AgYnkgZGVmYXVsdC5cbiAgLy8gU28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgZmllbGRzZXRzIGJlaGF2ZSBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OVxuICAvLyBhbmQgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvI3RoZS1maWVsZHNldC1hbmQtbGVnZW5kLWVsZW1lbnRzXG4gIG1pbi13aWR0aDogMDtcbiAgLy8gUmVzZXQgdGhlIGRlZmF1bHQgb3V0bGluZSBiZWhhdmlvciBvZiBmaWVsZHNldHMgc28gdGhleSBkb24ndCBhZmZlY3QgcGFnZSBsYXlvdXQuXG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuLy8gMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxubGVnZW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIDFcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxLjVyZW0pO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gMVxufVxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbn1cblxuLy8gQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAvLyBUaGlzIG92ZXJyaWRlcyB0aGUgZXh0cmEgcm91bmRlZCBjb3JuZXJzIG9uIHNlYXJjaCBpbnB1dHMgaW4gaU9TIHNvIHRoYXQgb3VyXG4gIC8vIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxuICAvLyBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1ODYuXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuLy9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuLy9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcbn1cblxuLy9cbi8vIENvcnJlY3QgZWxlbWVudCBkaXNwbGF5c1xuLy9cblxub3V0cHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnNcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFXG59XG5cbi8vIEFsd2F5cyBoaWRlIGFuIGVsZW1lbnQgd2l0aCB0aGUgYGhpZGRlbmAgSFRNTCBhdHRyaWJ1dGUgKGZyb20gUHVyZUNTUykuXG4vLyBOZWVkZWQgZm9yIHByb3BlciBkaXNwbGF5IGluIElFIDEwLS5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiLy8gVmFyaWFibGVzXG4vL1xuLy8gVmFyaWFibGVzIHNob3VsZCBmb2xsb3cgdGhlIGAkY29tcG9uZW50LXN0YXRlLXByb3BlcnR5LXNpemVgIGZvcm11bGEgZm9yXG4vLyBjb25zaXN0ZW50IG5hbWluZy4gRXg6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvciBhbmQgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cy5cblxuLy8gQ29sb3Igc3lzdGVtXG5cbiR3aGl0ZTogICAgI2ZmZiAhZGVmYXVsdDtcbiRncmF5LTEwMDogI2Y4ZjlmYSAhZGVmYXVsdDtcbiRncmF5LTIwMDogI2U5ZWNlZiAhZGVmYXVsdDtcbiRncmF5LTMwMDogI2RlZTJlNiAhZGVmYXVsdDtcbiRncmF5LTQwMDogI2NlZDRkYSAhZGVmYXVsdDtcbiRncmF5LTUwMDogI2FkYjViZCAhZGVmYXVsdDtcbiRncmF5LTYwMDogIzZjNzU3ZCAhZGVmYXVsdDtcbiRncmF5LTcwMDogIzQ5NTA1NyAhZGVmYXVsdDtcbiRncmF5LTgwMDogIzM0M2E0MCAhZGVmYXVsdDtcbiRncmF5LTkwMDogIzIxMjUyOSAhZGVmYXVsdDtcbiRibGFjazogICAgIzAwMCAhZGVmYXVsdDtcblxuJGdyYXlzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kZ3JheXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgICBcIjIwMFwiOiAkZ3JheS0yMDAsXG4gICAgXCIzMDBcIjogJGdyYXktMzAwLFxuICAgIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgICBcIjUwMFwiOiAkZ3JheS01MDAsXG4gICAgXCI2MDBcIjogJGdyYXktNjAwLFxuICAgIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgICBcIjgwMFwiOiAkZ3JheS04MDAsXG4gICAgXCI5MDBcIjogJGdyYXktOTAwXG4gICksXG4gICRncmF5c1xuKTtcblxuJGJsdWU6ICAgICMwMDdiZmYgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNlODNlOGMgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzI4YTc0NSAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMxN2EyYjggIWRlZmF1bHQ7XG5cbiRjb2xvcnM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRjb2xvcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwiYmx1ZVwiOiAgICAgICAkYmx1ZSxcbiAgICBcImluZGlnb1wiOiAgICAgJGluZGlnbyxcbiAgICBcInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcbiAgICBcInBpbmtcIjogICAgICAgJHBpbmssXG4gICAgXCJyZWRcIjogICAgICAgICRyZWQsXG4gICAgXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXG4gICAgXCJ5ZWxsb3dcIjogICAgICR5ZWxsb3csXG4gICAgXCJncmVlblwiOiAgICAgICRncmVlbixcbiAgICBcInRlYWxcIjogICAgICAgJHRlYWwsXG4gICAgXCJjeWFuXCI6ICAgICAgICRjeWFuLFxuICAgIFwid2hpdGVcIjogICAgICAkd2hpdGUsXG4gICAgXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcbiAgICBcImdyYXktZGFya1wiOiAgJGdyYXktODAwXG4gICksXG4gICRjb2xvcnNcbik7XG5cbiRwcmltYXJ5OiAgICAgICAkYmx1ZSAhZGVmYXVsdDtcbiRzZWNvbmRhcnk6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc3VjY2VzczogICAgICAgJGdyZWVuICFkZWZhdWx0O1xuJGluZm86ICAgICAgICAgICRjeWFuICFkZWZhdWx0O1xuJHdhcm5pbmc6ICAgICAgICR5ZWxsb3cgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAgICAgICAgJHJlZCAhZGVmYXVsdDtcbiRsaWdodDogICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyazogICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuXG4kdGhlbWUtY29sb3JzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kdGhlbWUtY29sb3JzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcInByaW1hcnlcIjogICAgJHByaW1hcnksXG4gICAgXCJzZWNvbmRhcnlcIjogICRzZWNvbmRhcnksXG4gICAgXCJzdWNjZXNzXCI6ICAgICRzdWNjZXNzLFxuICAgIFwiaW5mb1wiOiAgICAgICAkaW5mbyxcbiAgICBcIndhcm5pbmdcIjogICAgJHdhcm5pbmcsXG4gICAgXCJkYW5nZXJcIjogICAgICRkYW5nZXIsXG4gICAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgICBcImRhcmtcIjogICAgICAgJGRhcmtcbiAgKSxcbiAgJHRoZW1lLWNvbG9yc1xuKTtcblxuLy8gU2V0IGEgc3BlY2lmaWMganVtcCBwb2ludCBmb3IgcmVxdWVzdGluZyBjb2xvciBqdW1wc1xuJHRoZW1lLWNvbG9yLWludGVydmFsOiAgICAgIDglICFkZWZhdWx0O1xuXG4vLyBUaGUgeWlxIGxpZ2h0bmVzcyB2YWx1ZSB0aGF0IGRldGVybWluZXMgd2hlbiB0aGUgbGlnaHRuZXNzIG9mIGNvbG9yIGNoYW5nZXMgZnJvbSBcImRhcmtcIiB0byBcImxpZ2h0XCIuIEFjY2VwdGFibGUgdmFsdWVzIGFyZSBiZXR3ZWVuIDAgYW5kIDI1NS5cbiR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQ6ICAxNTAgIWRlZmF1bHQ7XG5cbi8vIEN1c3RvbWl6ZSB0aGUgbGlnaHQgYW5kIGRhcmsgdGV4dCBjb2xvcnMgZm9yIHVzZSBpbiBvdXIgWUlRIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxuJHlpcS10ZXh0LWRhcms6ICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiR5aXEtdGV4dC1saWdodDogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cblxuLy8gT3B0aW9uc1xuLy9cbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cblxuJGVuYWJsZS1jYXJldDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJvdW5kZWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc2hhZG93czogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdHJhbnNpdGlvbnM6ICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5OiAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5OiAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQsIG5vIGxvbmdlciBhZmZlY3RzIGFueSBjb21waWxlZCBDU1NcbiRlbmFibGUtZ3JpZC1jbGFzc2VzOiAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9uczogICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByaW50LXN0eWxlczogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdmFsaWRhdGlvbi1pY29uczogICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlczogICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG5cblxuLy8gU3BhY2luZ1xuLy9cbi8vIENvbnRyb2wgdGhlIGRlZmF1bHQgc3R5bGluZyBvZiBtb3N0IEJvb3RzdHJhcCBlbGVtZW50cyBieSBtb2RpZnlpbmcgdGhlc2Vcbi8vIHZhcmlhYmxlcy4gTW9zdGx5IGZvY3VzZWQgb24gc3BhY2luZy5cbi8vIFlvdSBjYW4gYWRkIG1vcmUgZW50cmllcyB0byB0aGUgJHNwYWNlcnMgbWFwLCBzaG91bGQgeW91IG5lZWQgbW9yZSB2YXJpYXRpb24uXG5cbiRzcGFjZXI6IDFyZW0gIWRlZmF1bHQ7XG4kc3BhY2VyczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHNwYWNlcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIDA6IDAsXG4gICAgMTogKCRzcGFjZXIgKiAuMjUpLFxuICAgIDI6ICgkc3BhY2VyICogLjUpLFxuICAgIDM6ICRzcGFjZXIsXG4gICAgNDogKCRzcGFjZXIgKiAxLjUpLFxuICAgIDU6ICgkc3BhY2VyICogMylcbiAgKSxcbiAgJHNwYWNlcnNcbik7XG5cbi8vIFRoaXMgdmFyaWFibGUgYWZmZWN0cyB0aGUgYC5oLSpgIGFuZCBgLnctKmAgY2xhc3Nlcy5cbiRzaXplczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHNpemVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAyNTogMjUlLFxuICAgIDUwOiA1MCUsXG4gICAgNzU6IDc1JSxcbiAgICAxMDA6IDEwMCUsXG4gICAgYXV0bzogYXV0b1xuICApLFxuICAkc2l6ZXNcbik7XG5cblxuLy8gQm9keVxuLy9cbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cblxuJGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cblxuLy8gTGlua3Ncbi8vXG4vLyBTdHlsZSBhbmNob3IgZWxlbWVudHMuXG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICB1bmRlcmxpbmUgIWRlZmF1bHQ7XG4vLyBEYXJrZW4gcGVyY2VudGFnZSBmb3IgbGlua3Mgd2l0aCBgLnRleHQtKmAgY2xhc3MgKGUuZy4gYC50ZXh0LXN1Y2Nlc3NgKVxuJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZTogMTUlICFkZWZhdWx0O1xuXG4vLyBQYXJhZ3JhcGhzXG4vL1xuLy8gU3R5bGUgcCBlbGVtZW50LlxuXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206ICAgMXJlbSAhZGVmYXVsdDtcblxuXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vL1xuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gIHNtOiA1NDBweCxcbiAgbWQ6IDcyMHB4LFxuICBsZzogOTYwcHgsXG4gIHhsOiAxMTQwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRzXG4vL1xuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxuXG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcblxuJHJvdW5kZWQtcGlsbDogICAgICAgICAgICAgICAgNTByZW0gIWRlZmF1bHQ7XG5cbiRib3gtc2hhZG93LXNtOiAgICAgICAgICAgICAgIDAgLjEyNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctbGc6ICAgICAgICAgICAgICAgMCAxcmVtIDNyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG5cbiRjYXJldC13aWR0aDogICAgICAgICAgICAgICAgIC4zZW0gIWRlZmF1bHQ7XG4kY2FyZXQtdmVydGljYWwtYWxpZ246ICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4kY2FyZXQtc3BhY2luZzogICAgICAgICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG5cbiR0cmFuc2l0aW9uLWJhc2U6ICAgICAgICAgICAgIGFsbCAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1mYWRlOiAgICAgICAgICAgICBvcGFjaXR5IC4xNXMgbGluZWFyICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tY29sbGFwc2U6ICAgICAgICAgaGVpZ2h0IC4zNXMgZWFzZSAhZGVmYXVsdDtcblxuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogam9pbihcbiAgKFxuICAgICgyMSA5KSxcbiAgICAoMTYgOSksXG4gICAgKDQgMyksXG4gICAgKDEgMSksXG4gICksXG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3Ncbik7XG5cbi8vIFR5cG9ncmFwaHlcbi8vXG4vLyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogICAgICAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBcIk5vdG8gU2Fuc1wiLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCIgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgICAgICBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0OyAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQsIHR5cGljYWxseSBgMTZweGBcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuODc1ICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtbGlnaHRlcjogICAgICAgICBsaWdodGVyICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWxpZ2h0OiAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LW5vcm1hbDogICAgICAgICAgNDAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGQ6ICAgICAgICAgICAgNzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGRlcjogICAgICAgICAgYm9sZGVyICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtYmFzZTogICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyLjUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS43NSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgICAgIDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS1zaXplOiAgICAgICAgICAgICAgIDZyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTItc2l6ZTogICAgICAgICAgICAgICA1LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTMtc2l6ZTogICAgICAgICAgICAgICA0LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTQtc2l6ZTogICAgICAgICAgICAgICAzLjVyZW0gIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5Mi13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5My13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5NC13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAgICAgICAgICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRsZWFkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcblxuJHNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgODAlICFkZWZhdWx0O1xuXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZTogICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuXG4kaHItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGhyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjJlbSAhZGVmYXVsdDtcblxuJGR0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRrYmQtYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgLS4xcmVtIDAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGxpc3QtaW5saW5lLXBhZGRpbmc6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICNmY2Y4ZTMgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cblxuLy8gVGFibGVzXG4vL1xuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXNtOiAgICAgICAuM3JlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRhYmxlLWFjY2VudC1iZzogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItY29sb3I6ICAgICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItYmc6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnOiAgICAgICAgICAgICAkdGFibGUtaG92ZXItYmcgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtaGVhZC1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1jb2xvcjogICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG5cbiR0YWJsZS1kYXJrLWNvbG9yOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWJnOiAgICAgICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWFjY2VudC1iZzogICAgICAgIHJnYmEoJHdoaXRlLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItY29sb3I6ICAgICAgJHRhYmxlLWRhcmstY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ob3Zlci1iZzogICAgICAgICByZ2JhKCR3aGl0ZSwgLjA3NSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ib3JkZXItY29sb3I6ICAgICBsaWdodGVuKCR0YWJsZS1kYXJrLWJnLCA3LjUlKSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWNvbG9yOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtb3JkZXI6ICAgICAgICAgb2RkICFkZWZhdWx0O1xuXG4kdGFibGUtY2FwdGlvbi1jb2xvcjogICAgICAgICAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcblxuJHRhYmxlLWJnLWxldmVsOiAgICAgICAgICAgICAgLTkgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWxldmVsOiAgICAgICAgICAtNiAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zICsgRm9ybXNcbi8vXG4vLyBTaGFyZWQgdmFyaWFibGVzIHRoYXQgYXJlIHJlYXNzaWduZWQgdG8gYCRpbnB1dC1gIGFuZCBgJGJ0bi1gIHNwZWNpZmljIHZhcmlhYmxlcy5cblxuJGlucHV0LWJ0bi1wYWRkaW5nLXk6ICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1mYW1pbHk6ICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1mb2N1cy13aWR0aDogICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yOiAgICAgICByZ2JhKCRjb21wb25lbnQtYWN0aXZlLWJnLCAuMjUpICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgMCAwIDAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1zbTogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1zbTogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLXNtOiAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtOiAgICAkbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LWxnOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgMXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLWxnOiAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnOiAgICAkbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tYm9yZGVyLXdpZHRoOiAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cblxuLy8gQnV0dG9uc1xuLy9cbi8vIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kLCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLXBhZGRpbmcteTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1mb250LWZhbWlseTogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplOiAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXktc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodC1zbTogICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodC1sZzogICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGJ0bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIDFweCAwIHJnYmEoJHdoaXRlLCAuMTUpLCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy13aWR0aDogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRidG4tZm9jdXMtYm94LXNoYWRvdzogICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRidG4tZGlzYWJsZWQtb3BhY2l0eTogICAgICAgIC42NSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJveC1zaGFkb3c6ICAgICAgIGluc2V0IDAgM3B4IDVweCByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGJ0bi1ibG9jay1zcGFjaW5nLXk6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc206ICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG5cbi8vIEZvcm1zXG5cbiRsYWJlbC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtZm9jdXMtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDI1JSkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGlucHV0LXBsYWludGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAqIDIgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtaW5uZXI6ICAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtfSArICN7JGlucHV0LXBhZGRpbmcteSAqIDJ9KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjogICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWxpbmUtaGVpZ2h0ICogLjVlbX0gKyAjeyRpbnB1dC1wYWRkaW5nLXl9KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogICAgICAgICAgICBjYWxjKCN7JGlucHV0LWxpbmUtaGVpZ2h0ICogLjI1ZW19ICsgI3skaW5wdXQtcGFkZGluZy15IC8gMn0pICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1saW5lLWhlaWdodCAqIDFlbX0gKyAjeyRpbnB1dC1wYWRkaW5nLXkgKiAyfSArICN7JGlucHV0LWhlaWdodC1ib3JkZXJ9KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWxpbmUtaGVpZ2h0LXNtICogMWVtfSArICN7JGlucHV0LWJ0bi1wYWRkaW5nLXktc20gKiAyfSArICN7JGlucHV0LWhlaWdodC1ib3JkZXJ9KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWxpbmUtaGVpZ2h0LWxnICogMWVtfSArICN7JGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgKiAyfSArICN7JGlucHV0LWhlaWdodC1ib3JkZXJ9KSAhZGVmYXVsdDtcblxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXRleHQtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjogICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk6ICAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg6ICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14OiAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDogICAgICAuMzEyNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLXNwYWNlci14OiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZzogICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplOiAgICAgIDUwJSA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3c6ICAgJGlucHV0LWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogJGdyYXktNTAwICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc6ICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZzogIHJnYmEodGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpLCAuNSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdzogICBub25lICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c6ICAgICAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yOiAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yOiAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3c6ICAgIG5vbmUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScgZD0nTTYuNTY0Ljc1bC0zLjU5IDMuNjEyLTEuNTM4LTEuNTVMMCA0LjI2IDIuOTc0IDcuMjUgOCAyLjE5M3onLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcjogICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZTogICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDQgNCclM2UlM2NwYXRoIHN0cm9rZT0nI3skY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yfScgZD0nTTAgMmg0Jy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3c6ICAgbm9uZSAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAgICA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4JyUzZSUzY2NpcmNsZSByPSczJyBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zd2l0Y2gtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplICogMS43NSAhZGVmYXVsdDtcbiRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAvIDIgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAgICAgICAgICBjYWxjKCN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplfSAtICN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiA0fSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk6ICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplOiAgICAgICAgICAgJGlucHV0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodDogICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAxcmVtICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIHRvIGFjY291bnQgZm9yIHRoZSBwcmVzZW5jZSBvZiB0aGUgYmFja2dyb3VuZC1pbWFnZSBiYXNlZCBpbmRpY2F0b3JcbiRjdXN0b20tc2VsZWN0LWZvbnQtd2VpZ2h0OiAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0OiAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnLXNpemU6ICAgICAgICAgICAgIDhweCAxMHB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3I6ICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3I6ICAgICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDQgNSclM2UlM2NwYXRoIGZpbGw9JyN7JGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yfScgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZDogICAgICAgICAgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yIG5vLXJlcGVhdCByaWdodCAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggY2VudGVyIC8gJGN1c3RvbS1zZWxlY3QtYmctc2l6ZSAhZGVmYXVsdDsgLy8gVXNlZCBzbyB3ZSBjYW4gaGF2ZSBtdWx0aXBsZSBiYWNrZ3JvdW5kIGVsZW1lbnRzIChlLmcuLCBhcnJvdyBhbmQgZmVlZGJhY2sgaWNvbilcblxuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLXJpZ2h0OiBjYWxjKCgxZW0gKyAjezIgKiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXl9KSAqIDMgLyA0ICsgI3skY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZ30pICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjogICAgICBjZW50ZXIgcmlnaHQgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXdpZHRoOiAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3c6ICAgICAgICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy13aWR0aDogICAgICAgICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICAwIDAgMCAkY3VzdG9tLXNlbGVjdC1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktc206ICAgICAgICAkaW5wdXQtcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbTogICAgICAgICRpbnB1dC1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtc206ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1sZzogICAgICAgICRpbnB1dC1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc6ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoOiAgICAgICAgICAxMDAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjogICAgICAgICBwb2ludGVyICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1iZzogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzOiAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdzogICAgIGluc2V0IDAgLjI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoOiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIC4xcmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDogICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDsgLy8gRm9yIGZvY3VzIGJveCBzaGFkb3cgaXNzdWUgaW4gSUUvRWRnZVxuJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLWhlaWdodDogICAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI6ICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZGlzYWJsZWQtYmc6ICAgICAgICAgICAkaW5wdXQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtZmFtaWx5OiAgICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1czogICAgICAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3gtc2hhZG93OiAgICAgICAgICAgICRpbnB1dC1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGN1c3RvbS1maWxlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1iZzogICAgICAgICAgICAgJGlucHV0LWdyb3VwLWFkZG9uLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXRleHQ6IChcbiAgZW46IFwiQnJvd3NlXCJcbikgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uXG5cbiRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A6ICAgICAgICAgICRmb3JtLXRleHQtbWFyZ2luLXRvcCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTogICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcjogICAgICAgICB0aGVtZS1jb2xvcihcInN1Y2Nlc3NcIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yOiAgICAgICB0aGVtZS1jb2xvcihcImRhbmdlclwiKSAhZGVmYXVsdDtcblxuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcjogICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkOiAgICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcn0nIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcjogICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQ6ICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyB2aWV3Qm94PSctMiAtMiA3IDcnJTNlJTNjcGF0aCBzdHJva2U9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgZD0nTTAgMGwzIDNtMC0zTDAgMycvJTNlJTNjY2lyY2xlIHI9Jy41Jy8lM2UlM2NjaXJjbGUgY3g9JzMnIHI9Jy41Jy8lM2UlM2NjaXJjbGUgY3k9JzMnIHI9Jy41Jy8lM2UlM2NjaXJjbGUgY3g9JzMnIGN5PSczJyByPScuNScvJTNlJTNjL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwidmFsaWRcIjogKFxuICAgICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcixcbiAgICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkXG4gICAgKSxcbiAgICBcImludmFsaWRcIjogKFxuICAgICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yLFxuICAgICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZFxuICAgICksXG4gICksXG4gICRmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG4pO1xuXG4vLyBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG5cbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXN0aWNreTogICAgICAgICAgICAgICAgICAgICAxMDIwICFkZWZhdWx0O1xuJHppbmRleC1maXhlZDogICAgICAgICAgICAgICAgICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2Ryb3A6ICAgICAgICAgICAgIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG5cblxuLy8gTmF2c1xuXG4kbmF2LWxpbmstcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICRncmF5LTIwMCAkZ3JheS0yMDAgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogJGdyYXktMzAwICRncmF5LTMwMCAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJG5hdi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG5cblxuLy8gTmF2YmFyXG5cbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4vLyBDb21wdXRlIHRoZSBuYXZiYXItYnJhbmQgcGFkZGluZy15IHNvIHRoZSBuYXZiYXItYnJhbmQgd2lsbCBoYXZlIHRoZSBzYW1lIGhlaWdodCBhcyBuYXZiYXItdGV4dCBhbmQgbmF2LWxpbmtcbiRuYXYtbGluay1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgKCRuYXYtbGluay1oZWlnaHQgLSAkbmF2YmFyLWJyYW5kLWhlaWdodCkgLyAyICFkZWZhdWx0O1xuXG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICAgICAgJGJ0bi1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbmF2YmFyLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjI1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2Nzdmcgdmlld0JveD0nMCAwIDMwIDMwJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNlJTNjcGF0aCBzdHJva2U9JyN7JG5hdmJhci1kYXJrLWNvbG9yfScgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICByZ2JhKCRibGFjaywgLjcpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSgkYmxhY2ssIC45KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgIHJnYmEoJGJsYWNrLCAuMykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHZpZXdCb3g9JzAgMCAzMCAzMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzZSUzY3BhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtY29sb3J9JyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vIERyb3Bkb3duc1xuLy9cbi8vIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuJGRyb3Bkb3duLW1pbi13aWR0aDogICAgICAgICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1zcGFjZXI6ICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgY2FsYygjeyRkcm9wZG93bi1ib3JkZXItcmFkaXVzfSAtICN7JGRyb3Bkb3duLWJvcmRlci13aWR0aH0pICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgJG5hdi1kaXZpZGVyLW1hcmdpbi15ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgZGFya2VuKCRncmF5LTkwMCwgNSUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG5cbi8vIFBhZ2luYXRpb25cblxuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktc206ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtc206ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZzogICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZzogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTogICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogICRncmF5LTMwMCAhZGVmYXVsdDtcblxuXG4vLyBKdW1ib3Ryb25cblxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAgICAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tY29sb3I6ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWJnOiAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cblxuLy8gQ2FyZHNcblxuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGNhcmQtc3BhY2VyLXg6ICAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIGNhbGMoI3skY2FyZC1ib3JkZXItcmFkaXVzfSAtICN7JGNhcmQtYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjAzKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1jb2xvcjogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kY2FyZC1ncm91cC1tYXJnaW46ICAgICAgICAgICAgICAgICAkZ3JpZC1ndXR0ZXItd2lkdGggLyAyICFkZWZhdWx0O1xuJGNhcmQtZGVjay1tYXJnaW46ICAgICAgICAgICAgICAgICAgJGNhcmQtZ3JvdXAtbWFyZ2luICFkZWZhdWx0O1xuXG4kY2FyZC1jb2x1bW5zLWNvdW50OiAgICAgICAgICAgICAgICAzICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1nYXA6ICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtbWFyZ2luOiAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci15ICFkZWZhdWx0O1xuXG5cbi8vIFRvb2x0aXBzXG5cbiR0b29sdGlwLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiR0b29sdGlwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIC44cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcblxuLy8gRm9ybSB0b29sdGlwcyBtdXN0IGNvbWUgYWZ0ZXIgcmVndWxhciB0b29sdGlwc1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDogICAgICR0b29sdGlwLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplOiAgICAgJHRvb2x0aXAtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDogICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eTogICAgICAgJHRvb2x0aXAtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuXG4vLyBQb3BvdmVyc1xuXG4kcG9wb3Zlci1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJHBvcG92ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcblxuJHBvcG92ZXItaGVhZGVyLWJnOiAgICAgICAgICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcblxuJHBvcG92ZXItYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy15ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgIGZhZGUtaW4oJHBvcG92ZXItYm9yZGVyLWNvbG9yLCAuMDUpICFkZWZhdWx0O1xuXG5cbi8vIFRvYXN0c1xuXG4kdG9hc3QtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAzNTBweCAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRvYXN0LWJhY2tncm91bmQtY29sb3I6ICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4xKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjI1cmVtIC43NXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I6ICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBCYWRnZXNcblxuJGJhZGdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgNzUlICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC40ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGJhZGdlLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgJGJ0bi10cmFuc2l0aW9uICFkZWZhdWx0O1xuJGJhZGdlLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcblxuJGJhZGdlLXBpbGwtcGFkZGluZy14OiAgICAgICAgICAgICAgLjZlbSAhZGVmYXVsdDtcbi8vIFVzZSBhIGhpZ2hlciB0aGFuIG5vcm1hbCB2YWx1ZSB0byBlbnN1cmUgY29tcGxldGVseSByb3VuZGVkIGVkZ2VzIHdoZW5cbi8vIGN1c3RvbWl6aW5nIHBhZGRpbmcgb3IgZm9udC1zaXplIG9uIGxhYmVscy5cbiRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuXG5cbi8vIE1vZGFsc1xuXG4vLyBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogICAgICAgMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWNvbG9yOiAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6ICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAgICAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gS2VlcCB0aGlzIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuXG4kbW9kYWwteGw6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMTQwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgICA4MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgICAgICAgIDUwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1mYWRlLXRyYW5zZm9ybTogICAgICAgICAgICAgIHRyYW5zbGF0ZSgwLCAtNTBweCkgIWRlZmF1bHQ7XG4kbW9kYWwtc2hvdy10cmFuc2Zvcm06ICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJG1vZGFsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGFsZXJ0LWJnLWxldmVsOiAgICAgICAgICAgICAgICAgICAgLTEwICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1sZXZlbDogICAgICAgICAgICAgICAgLTkgIWRlZmF1bHQ7XG4kYWxlcnQtY29sb3ItbGV2ZWw6ICAgICAgICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG5cbi8vIFByb2dyZXNzIGJhcnNcblxuJHByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC43NSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHByb2dyZXNzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgaW5zZXQgMCAuMXJlbSAuMXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAgICAgMXMgbGluZWFyIGluZmluaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAgICAgICAgICAgd2lkdGggLjZzIGVhc2UgIWRlZmF1bHQ7XG5cblxuLy8gTGlzdCBncm91cFxuXG4kbGlzdC1ncm91cC1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiAgICAgJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6ICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG5cbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuXG4vLyBGaWd1cmVzXG5cbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6ICAgICAgICAgIDkwJSAhZGVmYXVsdDtcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuXG4vLyBCcmVhZGNydW1ic1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgICAgICAgICAgIHF1b3RlKFwiL1wiKSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cblxuLy8gQ2Fyb3VzZWxcblxuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5OiAgICAgLjkgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uOiAgICAgICAgb3BhY2l0eSAuMTVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0OiAxMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb246ICAgICAgb3BhY2l0eSAuNnMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24td2lkdGg6ICAgICAgICAgICAgIDcwJSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6ICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZD0nTTUuMjUgMGwtNCA0IDQgNCAxLjUtMS41LTIuNS0yLjUgMi41LTIuNS0xLjUtMS41eicvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnOiAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGQ9J00yLjc1IDBsLTEuNSAxLjUgMi41IDIuNS0yLjUgMi41IDEuNSAxLjUgNC00LTQtNHonLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAgIC42cyAhZGVmYXVsdDtcbiRjYXJvdXNlbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIERlZmluZSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBmaXJzdCBpZiB1c2luZyBtdWx0aXBsZSB0cmFuc2l0aW9ucyAoZS5nLiwgYHRyYW5zZm9ybSAycyBlYXNlLCBvcGFjaXR5IC41cyBlYXNlLW91dGApXG5cblxuLy8gU3Bpbm5lcnNcblxuJHNwaW5uZXItd2lkdGg6ICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodDogICAgICAgICRzcGlubmVyLXdpZHRoICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoOiAgLjI1ZW0gIWRlZmF1bHQ7XG5cbiRzcGlubmVyLXdpZHRoLXNtOiAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodC1zbTogICAgICAgJHNwaW5uZXItd2lkdGgtc20gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGgtc206IC4yZW0gIWRlZmF1bHQ7XG5cblxuLy8gQ2xvc2VcblxuJGNsb3NlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAwIDFweCAwICR3aGl0ZSAhZGVmYXVsdDtcblxuXG4vLyBDb2RlXG5cbiRjb2RlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgIDg3LjUlICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJHBpbmsgIWRlZmF1bHQ7XG5cbiRrYmQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGtiZC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4ka2JkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAkY29kZS1mb250LXNpemUgIWRlZmF1bHQ7XG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgICAgICAgIDM0MHB4ICFkZWZhdWx0O1xuXG5cbi8vIFV0aWxpdGllc1xuXG4kZGlzcGxheXM6IG5vbmUsIGlubGluZSwgaW5saW5lLWJsb2NrLCBibG9jaywgdGFibGUsIHRhYmxlLXJvdywgdGFibGUtY2VsbCwgZmxleCwgaW5saW5lLWZsZXggIWRlZmF1bHQ7XG4kb3ZlcmZsb3dzOiBhdXRvLCBoaWRkZW4gIWRlZmF1bHQ7XG4kcG9zaXRpb25zOiBzdGF0aWMsIHJlbGF0aXZlLCBhYnNvbHV0ZSwgZml4ZWQsIHN0aWNreSAhZGVmYXVsdDtcblxuXG4vLyBQcmludGluZ1xuXG4kcHJpbnQtcGFnZS1zaXplOiAgICAgICAgICAgICAgICAgICBhMyAhZGVmYXVsdDtcbiRwcmludC1ib2R5LW1pbi13aWR0aDogICAgICAgICAgICAgIG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIFwibGdcIikgIWRlZmF1bHQ7XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3QsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgZm9udC1yZXNpemluZ1xuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnNcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIGZvbnQgc2l6ZVxuJHJmcy1iYXNlLWZvbnQtc2l6ZTogMS4yNXJlbSAhZGVmYXVsdDtcbiRyZnMtZm9udC1zaXplLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuLy8gQnJlYWtwb2ludCBhdCB3aGVyZSBmb250LXNpemUgc3RhcnRzIGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG4vLyBSZXNpemUgZm9udC1zaXplIGJhc2VkIG9uIHNjcmVlbiBoZWlnaHQgYW5kIHdpZHRoXG4kcmZzLXR3by1kaW1lbnNpb25hbDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIEZhY3RvciBvZiBkZWNyZWFzZVxuJHJmcy1mYWN0b3I6IDEwICFkZWZhdWx0O1xuXG5AaWYgdHlwZS1vZigkcmZzLWZhY3RvcikgIT0gXCJudW1iZXJcIiBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIEdlbmVyYXRlIGVuYWJsZSBvciBkaXNhYmxlIGNsYXNzZXMuIFBvc3NpYmlsaXRpZXM6IGZhbHNlLCBcImVuYWJsZVwiIG9yIFwiZGlzYWJsZVwiXG4kcmZzLWNsYXNzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gMSByZW0gPSAkcmZzLXJlbS12YWx1ZSBweFxuJHJmcy1yZW0tdmFsdWU6IDE2ICFkZWZhdWx0O1xuXG4vLyBTYWZhcmkgaWZyYW1lIHJlc2l6ZSBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9pc3N1ZXMvMTRcbiRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIERpc2FibGUgUkZTIGJ5IHNldHRpbmcgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMgdG8gZmFsc2VcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBDYWNoZSAkcmZzLWJhc2UtZm9udC1zaXplIHVuaXRcbiRyZnMtYmFzZS1mb250LXNpemUtdW5pdDogdW5pdCgkcmZzLWJhc2UtZm9udC1zaXplKTtcblxuLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkcmZzLWJhc2UtZm9udC1zaXplIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtZm9udC1zaXplLXVuaXQgPT0gXCJweFwiIHtcbiAgJHJmcy1iYXNlLWZvbnQtc2l6ZTogJHJmcy1iYXNlLWZvbnQtc2l6ZSAvICgkcmZzLWJhc2UtZm9udC1zaXplICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicmVtXCIge1xuICAkcmZzLWJhc2UtZm9udC1zaXplOiAkcmZzLWJhc2UtZm9udC1zaXplIC8gKCRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbn1cblxuLy8gQ2FjaGUgJHJmcy1icmVha3BvaW50IHVuaXQgdG8gcHJldmVudCBtdWx0aXBsZSBjYWxsc1xuJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGU6IHVuaXQoJHJmcy1icmVha3BvaW50KTtcblxuLy8gUmVtb3ZlIHVuaXQgZnJvbSAkcmZzLWJyZWFrcG9pbnQgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicHhcIiB7XG4gICRyZnMtYnJlYWtwb2ludDogJHJmcy1icmVha3BvaW50IC8gKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicmVtXCIgb3IgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJlbVwiIHtcbiAgJHJmcy1icmVha3BvaW50OiAkcmZzLWJyZWFrcG9pbnQgLyAoJHJmcy1icmVha3BvaW50ICogMCArIDEgLyAkcmZzLXJlbS12YWx1ZSk7XG59XG5cbi8vIFJlc3BvbnNpdmUgZm9udC1zaXplIG1peGluXG5AbWl4aW4gcmZzKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgLy8gQ2FjaGUgJGZzIHVuaXRcbiAgJGZzLXVuaXQ6IGlmKHR5cGUtb2YoJGZzKSA9PSBcIm51bWJlclwiLCB1bml0KCRmcyksIGZhbHNlKTtcblxuICAvLyBBZGQgIWltcG9ydGFudCBzdWZmaXggaWYgbmVlZGVkXG4gICRyZnMtc3VmZml4OiBpZigkaW1wb3J0YW50LCBcIiAhaW1wb3J0YW50XCIsIFwiXCIpO1xuXG4gIC8vIElmICRmcyBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkZnMgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxuICBAaWYgbm90ICRmcy11bml0IG9yICRmcy11bml0ICE9IFwiXCIgYW5kICRmcy11bml0ICE9IFwicHhcIiBhbmQgJGZzLXVuaXQgIT0gXCJyZW1cIiBvciAkZnMgPT0gMCB7XG4gICAgZm9udC1zaXplOiAjeyRmc30jeyRyZnMtc3VmZml4fTtcbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gVmFyaWFibGVzIGZvciBzdG9yaW5nIHN0YXRpYyBhbmQgZmx1aWQgcmVzY2FsaW5nXG4gICAgJHJmcy1zdGF0aWM6IG51bGw7XG4gICAgJHJmcy1mbHVpZDogbnVsbDtcblxuICAgIC8vIFJlbW92ZSBweC11bml0IGZyb20gJGZzIGZvciBjYWxjdWxhdGlvbnNcbiAgICBAaWYgJGZzLXVuaXQgPT0gXCJweFwiIHtcbiAgICAgICRmczogJGZzIC8gKCRmcyAqIDAgKyAxKTtcbiAgICB9XG4gICAgQGVsc2UgaWYgJGZzLXVuaXQgPT0gXCJyZW1cIiB7XG4gICAgICAkZnM6ICRmcyAvICgkZnMgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbiAgICB9XG5cbiAgICAvLyBTZXQgZGVmYXVsdCBmb250LXNpemVcbiAgICBAaWYgJHJmcy1mb250LXNpemUtdW5pdCA9PSByZW0ge1xuICAgICAgJHJmcy1zdGF0aWM6ICN7JGZzIC8gJHJmcy1yZW0tdmFsdWV9cmVtI3skcmZzLXN1ZmZpeH07XG4gICAgfVxuICAgIEBlbHNlIGlmICRyZnMtZm9udC1zaXplLXVuaXQgPT0gcHgge1xuICAgICAgJHJmcy1zdGF0aWM6ICN7JGZzfXB4I3skcmZzLXN1ZmZpeH07XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBlcnJvciBcImAjeyRyZnMtZm9udC1zaXplLXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWZvbnQtc2l6ZS11bml0LiBVc2UgYHB4YCBvciBgcmVtYC5cIjtcbiAgICB9XG5cbiAgICAvLyBPbmx5IGFkZCBtZWRpYSBxdWVyeSBpZiBmb250LXNpemUgaXMgYmlnZ2VyIGFzIHRoZSBtaW5pbXVtIGZvbnQtc2l6ZVxuICAgIC8vIElmICRyZnMtZmFjdG9yID09IDEsIG5vIHJlc2NhbGluZyB3aWxsIHRha2UgcGxhY2VcbiAgICBAaWYgJGZzID4gJHJmcy1iYXNlLWZvbnQtc2l6ZSBhbmQgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMge1xuICAgICAgJG1pbi13aWR0aDogbnVsbDtcbiAgICAgICR2YXJpYWJsZS11bml0OiBudWxsO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgbWluaW11bSBmb250LXNpemUgZm9yIGdpdmVuIGZvbnQtc2l6ZVxuICAgICAgJGZzLW1pbjogJHJmcy1iYXNlLWZvbnQtc2l6ZSArICgkZnMgLSAkcmZzLWJhc2UtZm9udC1zaXplKSAvICRyZnMtZmFjdG9yO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuIGdpdmVuIGZvbnQtc2l6ZSBhbmQgbWluaW11bSBmb250LXNpemUgZm9yIGdpdmVuIGZvbnQtc2l6ZVxuICAgICAgJGZzLWRpZmY6ICRmcyAtICRmcy1taW47XG5cbiAgICAgIC8vIEJhc2UgZm9udC1zaXplIGZvcm1hdHRpbmdcbiAgICAgIC8vIE5vIG5lZWQgdG8gY2hlY2sgaWYgdGhlIHVuaXQgaXMgdmFsaWQsIGJlY2F1c2Ugd2UgZGlkIHRoYXQgYmVmb3JlXG4gICAgICAkbWluLXdpZHRoOiBpZigkcmZzLWZvbnQtc2l6ZS11bml0ID09IHJlbSwgI3skZnMtbWluIC8gJHJmcy1yZW0tdmFsdWV9cmVtLCAjeyRmcy1taW59cHgpO1xuXG4gICAgICAvLyBJZiB0d28tZGltZW5zaW9uYWwsIHVzZSBzbWFsbGVzdCBvZiBzY3JlZW4gd2lkdGggYW5kIGhlaWdodFxuICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSB0aGUgdmFyaWFibGUgd2lkdGggYmV0d2VlbiAwIGFuZCAkcmZzLWJyZWFrcG9pbnRcbiAgICAgICR2YXJpYWJsZS13aWR0aDogI3skZnMtZGlmZiAqIDEwMCAvICRyZnMtYnJlYWtwb2ludH0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgLy8gU2V0IHRoZSBjYWxjdWxhdGVkIGZvbnQtc2l6ZS5cbiAgICAgICRyZnMtZmx1aWQ6IGNhbGMoI3skbWluLXdpZHRofSArICN7JHZhcmlhYmxlLXdpZHRofSkgI3skcmZzLXN1ZmZpeH07XG4gICAgfVxuXG4gICAgLy8gUmVuZGVyaW5nXG4gICAgQGlmICRyZnMtZmx1aWQgPT0gbnVsbCB7XG4gICAgICAvLyBPbmx5IHJlbmRlciBzdGF0aWMgZm9udC1zaXplIGlmIG5vIGZsdWlkIGZvbnQtc2l6ZSBpcyBhdmFpbGFibGVcbiAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRtcS12YWx1ZTogbnVsbDtcblxuICAgICAgLy8gUkZTIGJyZWFrcG9pbnQgZm9ybWF0dGluZ1xuICAgICAgQGlmICRyZnMtYnJlYWtwb2ludC11bml0ID09IGVtIG9yICRyZnMtYnJlYWtwb2ludC11bml0ID09IHJlbSB7XG4gICAgICAgICRtcS12YWx1ZTogI3skcmZzLWJyZWFrcG9pbnQgLyAkcmZzLXJlbS12YWx1ZX0jeyRyZnMtYnJlYWtwb2ludC11bml0fTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0ID09IHB4IHtcbiAgICAgICAgJG1xLXZhbHVlOiAjeyRyZnMtYnJlYWtwb2ludH1weDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQGVycm9yIFwiYCN7JHJmcy1icmVha3BvaW50LXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC4gVXNlIGBweGAsIGBlbWAgb3IgYHJlbWAuXCI7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcmZzLWNsYXNzID09IFwiZGlzYWJsZVwiIHtcbiAgICAgICAgLy8gQWRkaW5nIGFuIGV4dHJhIGNsYXNzIGluY3JlYXNlcyBzcGVjaWZpY2l0eSxcbiAgICAgICAgLy8gd2hpY2ggcHJldmVudHMgdGhlIG1lZGlhIHF1ZXJ5IHRvIG92ZXJyaWRlIHRoZSBmb250IHNpemVcbiAgICAgICAgJixcbiAgICAgICAgLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAgICAgJi5kaXNhYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgICAgICBmb250LXNpemU6ICRyZnMtc3RhdGljO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcmZzLXR3by1kaW1lbnNpb25hbCB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pLCAobWF4LWhlaWdodDogI3skbXEtdmFsdWV9KSB7XG4gICAgICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJlbmFibGVcIiB7XG4gICAgICAgICAgICAuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgICAgICAgICAmLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiAkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGxlbmd0aC16ZXJvLW5vLXVuaXRcbiAgICAgICAgICAgIG1pbi13aWR0aDogMHZ3O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogI3skbXEtdmFsdWV9KSB7XG4gICAgICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJlbmFibGVcIiB7XG4gICAgICAgICAgICAuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgICAgICAgICAmLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiAkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGxlbmd0aC16ZXJvLW5vLXVuaXRcbiAgICAgICAgICAgIG1pbi13aWR0aDogMHZ3O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBUaGUgZm9udC1zaXplICYgcmVzcG9uc2l2ZS1mb250LXNpemUgbWl4aW4gdXNlcyBSRlMgdG8gcmVzY2FsZSBmb250IHNpemVzXG5AbWl4aW4gZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XG59XG5cbkBtaXhpbiByZXNwb25zaXZlLWZvbnQtc2l6ZSgkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIHJmcygkZnMsICRpbXBvcnRhbnQpO1xufVxuIiwiLy9cclxuLy8gIFR5cG9ncmFwaHlcclxuLy8gIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX1xyXG5cclxuJGZvbnQtZmFtaWx5LWJhc2U6IEtsZWluLCAkZm9udC1mYW1pbHktYmFzZTtcclxuJGZvbnQtZmFtaWx5LXNlY29uZGFyeTogS2xlaW5Db25kZW5zZWQsICRmb250LWZhbWlseS1iYXNlO1xyXG5cclxuJGxpbmUtaGVpZ2h0LWJhc2U6IDEuNjtcclxuXHJcbiRmb250LXNpemUtcm9vdCA6IDYyLjUlO1xyXG4kZm9udC1zaXplLWJhc2UgOiByZW0oMTQpO1xyXG4kZm9udC1zaXplLWxnICAgOiByZW0oMTcpO1xyXG4kZm9udC1zaXplLW1kICAgOiByZW0oMTQpO1xyXG4kZm9udC1zaXplLXMgICAgOiByZW0oMTMpO1xyXG4kZm9udC1zaXplLXhzICAgOiByZW0oMTIpO1xyXG5cclxuLy8gJGZvbnQtd2VpZ2h0LWxpZ2h0OiAzMDA7XHJcbi8vICRmb250LXdlaWdodC1ub3JtYWw6IDQwMDtcclxuJGZvbnQtd2VpZ2h0LWJvbGQ6IDUwMDtcclxuJGZvbnQtd2VpZ2h0LWJvbGRlcjogNzAwO1xyXG5cclxuLy9cclxuLy8gIEhlYWRlcnNcclxuLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gIERlZmF1bHRcclxuJGgxX19mb250LXNpemU6IHJlbSgyNCk7XHJcbiRoMl9fZm9udC1zaXplOiByZW0oMTgpO1xyXG4kaDNfX2ZvbnQtc2l6ZTogcmVtKDE2KTtcclxuJGg0X19mb250LXNpemU6IHJlbSgxNSk7XHJcbiRoNV9fZm9udC1zaXplOiByZW0oMTApO1xyXG4kaDZfX2ZvbnQtc2l6ZTogcmVtKDgpO1xyXG5cclxuJGgxX19mb250LXNpemVfX21kOiByZW0oMzIpO1xyXG4kaDJfX2ZvbnQtc2l6ZV9fbWQ6IHJlbSgyNCk7XHJcbiRoM19fZm9udC1zaXplX19tZDogcmVtKDE4KTtcclxuJGg0X19mb250LXNpemVfX21kOiByZW0oMTYpO1xyXG4kaDVfX2ZvbnQtc2l6ZV9fbWQ6IHJlbSgxMik7XHJcbiRoNl9fZm9udC1zaXplX19tZDogcmVtKDEwKTtcclxuIiwiLy9cclxuLy8gIE1haW4gZ2xvYmFsIHN0eWxlc1xyXG4vLyAgX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXHJcblxyXG5AY2hhcnNldCAnVVRGLTgnO1xyXG5cclxuQGltcG9ydFxyXG4gICAgJ2Jvb3RzdHJhcC9zY3NzL2Z1bmN0aW9ucycsXHJcbiAgICAnYm9vdHN0cmFwL3Njc3MvdmFyaWFibGVzJyxcclxuICAgICdib290c3RyYXAvc2Nzcy9taXhpbnMnO1xyXG5cclxuLy9cclxuLy8gIDEuIEhlbHBlcnMgYW5kIHZhcmlhYmxlc1xyXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5AaW1wb3J0XHJcbiAgICAnLi4vdXRpbHMvZnVuY3Rpb25zJyxcclxuICAgICdiYXNlL3ZhcmlhYmxlcyc7XHJcblxyXG4vLyBDb2xvcnNcclxuXHJcbi8vIE90aGVyIHZhcmlhYmxlc1xyXG5AaW1wb3J0XHJcbiAgICAnLi4vdGhlbWVzL2RlZmF1bHQvdmFyaWFibGVzJztcclxuXHJcbkBpbXBvcnRcclxuICAgICcuLi91dGlscy9taXhpbnMnLFxyXG4gICAgJy4uL21peGlucy9taXhpbnMnO1xyXG5cclxuLy9cclxuLy8gIDIuIFZlbmRvcnNcclxuLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuQGltcG9ydFxyXG4gICAgJy4uL3ZlbmRvcnMvYm9vdHN0cmFwJztcclxuXHJcbi8vXHJcbi8vICAzLiBCYXNlIHN0dWZmXHJcbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbkBpbXBvcnRcclxuICAgICcuLi9iYXNpcy9iYXNlJyxcclxuICAgICcuLi9iYXNpcy90eXBvZ3JhcGh5JyxcclxuICAgICcuLi9iYXNpcy9oZWxwZXJzJztcclxuXHJcbi8vXHJcbi8vICA0LiBDb21wb25lbnRzXHJcbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbkBpbXBvcnRcclxuICAgICcuL2NvbXBvbmVudHMvbGF5b3V0cy9tb2JpbGUtcm93LWdyaWQnLFxyXG4gICAgJy4vY29tcG9uZW50cy9sYXlvdXRzL2N1c3RvbS1sYXlvdXQnLFxyXG4gICAgJy4vY29tcG9uZW50cy9wdmhfYXNzZXRzL2ltYWdlLXRleHQtYnRuJyxcclxuICAgICcuL2NvbXBvbmVudHMvcHZoX2Fzc2V0cy9pbWFnZS10aWxlJyxcclxuICAgICcuL2NvbXBvbmVudHMvcHZoX2Fzc2V0cy90ZXh0Ym94JyxcclxuICAgICcuL2NvbXBvbmVudHMvcHZoX2Fzc2V0cy90d28tY29sLWltYWdlLXRleHQnLFxyXG4gICAgJy4vY29tcG9uZW50cy9wdmhfYXNzZXRzL3ZpZGVvLWJsb2NrJyxcclxuICAgICcuL2NvbXBvbmVudHMvcHZoX2Fzc2V0cy9jbHAtY2Fyb3VzZWwnLFxyXG4gICAgJy4vY29tcG9uZW50cy9wdmhfYXNzZXRzL3NpeC1idXR0b25zJyxcclxuICAgICcuL2NvbXBvbmVudHMvcHZoX2Fzc2V0cy90d28tY29sLXR3by1pbWFnZXMnLFxyXG4gICAgJy4vY29tcG9uZW50cy9jb21tZXJjZUFzc2V0cy9jYXRlZ29yeScsXHJcbiAgICAnLi4vYmxvY2tzL3NlYXJjaC9zZWFyY2gtYmFubmVyJyxcclxuICAgICcuL2NvbXBvbmVudHMvcHZoX2Fzc2V0cy9iYW5uZXItY2Fyb3VzZWwnLFxyXG4gICAgJy4vY29tcG9uZW50cy9wdmhfYXNzZXRzL25ld3NsZXR0ZXInO1xyXG5cclxuLy9cclxuLy8gIDUuIEJsb2Nrc1xyXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5AaW1wb3J0XHJcbiAgICAnLi4vYmxvY2tzL2hvbWVwYWdlL2dlbmRlci1ibG9jayc7XHJcblxyXG4vL1xyXG4vLyAgNi4gVGhlbWUgc3R5bGVzXHJcbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbkBpbXBvcnRcclxuICAgICcuLi90aGVtZXMvZGVmYXVsdC9zdHlsZXMnO1xyXG5cclxuLy9cclxuXHJcbi8vICA3LiBQYWdlIHN0eWxlc1xyXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5AaW1wb3J0XHJcbiAgICAnLi9wYWdlcy9wYWdlRGVzaWduZXInO1xyXG4iLCIvL1xyXG4vLyAgTGluayBjb21wb25lbnRcclxuLy8gIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX1xyXG5cclxuLy8gIEJvb3RzdHJhcFxyXG4kbGluay1jb2xvcjogdGhlbWUtY29sb3IoJ3ByaW1hcnknKTtcclxuJGxpbmstZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiBub25lO1xyXG4kbGluay1ob3Zlci1jb2xvcjogdGhlbWUtY29sb3IoJ3ByaW1hcnknKTtcclxuXHJcbiIsIi8vIEhvdmVyIG1peGluIGFuZCBgJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeWAgYXJlIGRlcHJlY2F0ZWQuXG4vL1xuLy8gT3JpZ2luYWxseSBhZGRlZCBkdXJpbmcgb3VyIGFscGhhcyBhbmQgbWFpbnRhaW5lZCBkdXJpbmcgYmV0YXMsIHRoaXMgbWl4aW4gd2FzXG4vLyBkZXNpZ25lZCB0byBwcmV2ZW50IGA6aG92ZXJgIHN0aWNraW5lc3Mgb24gaU9TLWFuIGlzc3VlIHdoZXJlIGhvdmVyIHN0eWxlc1xuLy8gd291bGQgcGVyc2lzdCBhZnRlciBpbml0aWFsIHRvdWNoLlxuLy9cbi8vIEZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCB3ZSd2ZSBrZXB0IHRoZXNlIG1peGlucyBhbmQgdXBkYXRlZCB0aGVtIHRvXG4vLyBhbHdheXMgcmV0dXJuIHRoZWlyIHJlZ3VsYXIgcHNldWRvLWNsYXNzZXMgaW5zdGVhZCBvZiBhIHNoaW1tZWQgbWVkaWEgcXVlcnkuXG4vL1xuLy8gSXNzdWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjUxOTVcblxuQG1peGluIGhvdmVyIHtcbiAgJjpob3ZlciB7IEBjb250ZW50OyB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cyB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBwbGFpbi1ob3Zlci1mb2N1cyB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cy1hY3RpdmUge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5cbi8vXG4vLyBIZWFkaW5nc1xuLy9cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcbi5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRoZWFkaW5ncy1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcbn1cblxuaDEsIC5oMSB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDEtZm9udC1zaXplKTsgfVxuaDIsIC5oMiB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTsgfVxuaDMsIC5oMyB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDMtZm9udC1zaXplKTsgfVxuaDQsIC5oNCB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDQtZm9udC1zaXplKTsgfVxuaDUsIC5oNSB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTsgfVxuaDYsIC5oNiB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDYtZm9udC1zaXplKTsgfVxuXG4ubGVhZCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbGVhZC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGxlYWQtZm9udC13ZWlnaHQ7XG59XG5cbi8vIFR5cGUgZGlzcGxheSBjbGFzc2VzXG4uZGlzcGxheS0xIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5MS1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5MS13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTIge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkyLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkyLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktMyB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTMtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTMtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS00IHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5NC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5NC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cblxuXG4vL1xuLy8gSG9yaXpvbnRhbCBydWxlc1xuLy9cblxuaHIge1xuICBtYXJnaW4tdG9wOiAkaHItbWFyZ2luLXk7XG4gIG1hcmdpbi1ib3R0b206ICRoci1tYXJnaW4teTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAkaHItYm9yZGVyLXdpZHRoIHNvbGlkICRoci1ib3JkZXItY29sb3I7XG59XG5cblxuLy9cbi8vIEVtcGhhc2lzXG4vL1xuXG5zbWFsbCxcbi5zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkc21hbGwtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG59XG5cbm1hcmssXG4ubWFyayB7XG4gIHBhZGRpbmc6ICRtYXJrLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtYXJrLWJnO1xufVxuXG5cbi8vXG4vLyBMaXN0c1xuLy9cblxuLmxpc3QtdW5zdHlsZWQge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xufVxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcbn1cbi5saXN0LWlubGluZS1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkbGlzdC1pbmxpbmUtcGFkZGluZztcbiAgfVxufVxuXG5cbi8vXG4vLyBNaXNjXG4vL1xuXG4vLyBCdWlsZHMgb24gYGFiYnJgXG4uaW5pdGlhbGlzbSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg5MCUpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4vLyBCbG9ja3F1b3Rlc1xuLmJsb2NrcXVvdGUge1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtZm9udC1zaXplKTtcbn1cblxuLmJsb2NrcXVvdGUtZm9vdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1zbWFsbC1mb250LXNpemUpO1xuICBjb2xvcjogJGJsb2NrcXVvdGUtc21hbGwtY29sb3I7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcMjAxNFxcMDBBMFwiOyAvLyBlbSBkYXNoLCBuYnNwXG4gIH1cbn1cbiIsIi8vIExpc3RzXG5cbi8vIFVuc3R5bGVkIGtlZXBzIGxpc3QgaXRlbXMgYmxvY2sgbGV2ZWwsIGp1c3QgcmVtb3ZlcyBkZWZhdWx0IGJyb3dzZXIgcGFkZGluZyBhbmQgbGlzdC1zdHlsZVxuQG1peGluIGxpc3QtdW5zdHlsZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCIvLyBSZXNwb25zaXZlIGltYWdlcyAoZW5zdXJlIGltYWdlcyBkb24ndCBzY2FsZSBiZXlvbmQgdGhlaXIgcGFyZW50cylcbi8vXG4vLyBUaGlzIGlzIHB1cnBvc2VmdWxseSBvcHQtaW4gdmlhIGFuIGV4cGxpY2l0IGNsYXNzIHJhdGhlciB0aGFuIGJlaW5nIHRoZSBkZWZhdWx0IGZvciBhbGwgYDxpbWc+YHMuXG4vLyBXZSBwcmV2aW91c2x5IHRyaWVkIHRoZSBcImltYWdlcyBhcmUgcmVzcG9uc2l2ZSBieSBkZWZhdWx0XCIgYXBwcm9hY2ggaW4gQm9vdHN0cmFwIHYyLFxuLy8gYW5kIGFiYW5kb25lZCBpdCBpbiBCb290c3RyYXAgdjMgYmVjYXVzZSBpdCBicmVha3MgbG90cyBvZiB0aGlyZC1wYXJ0eSB3aWRnZXRzIChpbmNsdWRpbmcgR29vZ2xlIE1hcHMpXG4vLyB3aGljaCB3ZXJlbid0IGV4cGVjdGluZyB0aGUgaW1hZ2VzIHdpdGhpbiB0aGVtc2VsdmVzIHRvIGJlIGludm9sdW50YXJpbHkgcmVzaXplZC5cbi8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTgxNzhcbi5pbWctZmx1aWQge1xuICBAaW5jbHVkZSBpbWctZmx1aWQ7XG59XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYm5haWwtYmc7XG4gIGJvcmRlcjogJHRodW1ibmFpbC1ib3JkZXItd2lkdGggc29saWQgJHRodW1ibmFpbC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkdGh1bWJuYWlsLWJveC1zaGFkb3cpO1xuXG4gIC8vIEtlZXAgdGhlbSBhdCBtb3N0IDEwMCUgd2lkZVxuICBAaW5jbHVkZSBpbWctZmx1aWQ7XG59XG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG4uZmlndXJlIHtcbiAgLy8gRW5zdXJlcyB0aGUgY2FwdGlvbidzIHRleHQgYWxpZ25zIHdpdGggdGhlIGltYWdlLlxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5maWd1cmUtaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlciAvIDI7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZmlndXJlLWNhcHRpb24ge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkZmlndXJlLWNhcHRpb24tY29sb3I7XG59XG4iLCIvLyBJbWFnZSBNaXhpbnNcbi8vIC0gUmVzcG9uc2l2ZSBpbWFnZVxuLy8gLSBSZXRpbmEgaW1hZ2VcblxuXG4vLyBSZXNwb25zaXZlIGltYWdlXG4vL1xuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cblxuQG1peGluIGltZy1mbHVpZCB7XG4gIC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLy8gUGFydCAyOiBPdmVycmlkZSB0aGUgaGVpZ2h0IHRvIGF1dG8sIG90aGVyd2lzZSBpbWFnZXMgd2lsbCBiZSBzdHJldGNoZWRcbiAgLy8gd2hlbiBzZXR0aW5nIGEgd2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGUgb24gdGhlIGltZyBlbGVtZW50LlxuICBoZWlnaHQ6IGF1dG87XG59XG5cblxuLy8gUmV0aW5hIGltYWdlXG4vL1xuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLlxuXG5AbWl4aW4gaW1nLXJldGluYSgkZmlsZS0xeCwgJGZpbGUtMngsICR3aWR0aC0xeCwgJGhlaWdodC0xeCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMXgpO1xuXG4gIC8vIEF1dG9wcmVmaXhlciB0YWtlcyBjYXJlIG9mIGFkZGluZyAtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gYW5kIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8sXG4gIC8vIGJ1dCBkb2Vzbid0IGNvbnZlcnQgZHBweD0+ZHBpLlxuICAvLyBUaGVyZSdzIG5vIHN1Y2ggdGhpbmcgYXMgdW5wcmVmaXhlZCBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvIHNpbmNlIGl0J3Mgbm9uc3RhbmRhcmQuXG4gIC8vIENvbXBhdGliaWxpdHkgaW5mbzogaHR0cHM6Ly9jYW5pdXNlLmNvbS8jZmVhdD1jc3MtbWVkaWEtcmVzb2x1dGlvblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgLy8gSUU5LTExIGRvbid0IHN1cHBvcnQgZHBweFxuICAgIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KSB7IC8vIFN0YW5kYXJkaXplZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0yeCk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGgtMXggJGhlaWdodC0xeDtcbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgaW1nLXJldGluYSgpYFwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktYmxhY2tsaXN0XG4vLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzLCAkZmFsbGJhY2stYm9yZGVyLXJhZGl1czogZmFsc2UpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgfVxuICBAZWxzZSBpZiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cyAhPSBmYWxzZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG4iLCIvLyBJbmxpbmUgY29kZVxuY29kZSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG5cbiAgLy8gU3RyZWFtbGluZSB0aGUgc3R5bGUgd2hlbiBpbnNpZGUgYW5jaG9ycyB0byBhdm9pZCBicm9rZW4gdW5kZXJsaW5lIGFuZCBtb3JlXG4gIGEgPiAmIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBVc2VyIGlucHV0IHR5cGljYWxseSBlbnRlcmVkIHZpYSBrZXlib2FyZFxua2JkIHtcbiAgcGFkZGluZzogJGtiZC1wYWRkaW5nLXkgJGtiZC1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgka2JkLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAka2JkLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAka2JkLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXNtKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygka2JkLWJveC1zaGFkb3cpO1xuXG4gIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMTAwJSk7XG4gICAgZm9udC13ZWlnaHQ6ICRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuLy8gQmxvY2tzIG9mIGNvZGVcbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6ICRwcmUtY29sb3I7XG5cbiAgLy8gQWNjb3VudCBmb3Igc29tZSBjb2RlIG91dHB1dHMgdGhhdCBwbGFjZSBjb2RlIHRhZ3MgaW4gcHJlIHRhZ3NcbiAgY29kZSB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgfVxufVxuXG4vLyBFbmFibGUgc2Nyb2xsYWJsZSBibG9ja3Mgb2YgY29kZVxuLnByZS1zY3JvbGxhYmxlIHtcbiAgbWF4LWhlaWdodDogJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cbiIsIi8vXG4vLyBCYXNpYyBCb290c3RyYXAgdGFibGVcbi8vXG5cbi50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICBjb2xvcjogJHRhYmxlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmc7IC8vIFJlc2V0IGZvciBuZXN0aW5nIHdpdGhpbiBwYXJlbnRzIHdpdGggYGJhY2tncm91bmQtY29sb3JgLlxuXG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGJvcmRlci10b3A6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRoZWFkIHRoIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGJvcmRlci1ib3R0b206ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCkgc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlci10b3A6ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCkgc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBDb25kZW5zZWQgdGFibGUgdy8gaGFsZiBwYWRkaW5nXG4vL1xuXG4udGFibGUtc20ge1xuICB0aCxcbiAgdGQge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmctc207XG4gIH1cbn1cblxuXG4vLyBCb3JkZXIgdmVyc2lvbnNcbi8vXG4vLyBBZGQgb3IgcmVtb3ZlIGJvcmRlcnMgYWxsIGFyb3VuZCB0aGUgdGFibGUgYW5kIGJldHdlZW4gYWxsIHRoZSBjb2x1bW5zLlxuXG4udGFibGUtYm9yZGVyZWQge1xuICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcblxuICB0aCxcbiAgdGQge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGhlYWQge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtYm9yZGVybGVzcyB7XG4gIHRoLFxuICB0ZCxcbiAgdGhlYWQgdGgsXG4gIHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4vLyBaZWJyYS1zdHJpcGluZ1xuLy9cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG5cbi50YWJsZS1zdHJpcGVkIHtcbiAgdGJvZHkgdHI6bnRoLW9mLXR5cGUoI3skdGFibGUtc3RyaXBlZC1vcmRlcn0pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYWNjZW50LWJnO1xuICB9XG59XG5cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICB0Ym9keSB0ciB7XG4gICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgY29sb3I6ICR0YWJsZS1ob3Zlci1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1ob3Zlci1iZztcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUYWJsZSBiYWNrZ3JvdW5kc1xuLy9cbi8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4vLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJGNvbG9yLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICR0YWJsZS1iZy1sZXZlbCksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJHRhYmxlLWJvcmRlci1sZXZlbCkpO1xufVxuXG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudChhY3RpdmUsICR0YWJsZS1hY3RpdmUtYmcpO1xuXG5cbi8vIERhcmsgc3R5bGVzXG4vL1xuLy8gU2FtZSB0YWJsZSBtYXJrdXAsIGJ1dCBpbnZlcnRlZCBjb2xvciBzY2hlbWU6IGRhcmsgYmFja2dyb3VuZCBhbmQgbGlnaHQgdGV4dC5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbi50YWJsZSB7XG4gIC50aGVhZC1kYXJrIHtcbiAgICB0aCB7XG4gICAgICBjb2xvcjogJHRhYmxlLWRhcmstY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC50aGVhZC1saWdodCB7XG4gICAgdGgge1xuICAgICAgY29sb3I6ICR0YWJsZS1oZWFkLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhlYWQtYmc7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1kYXJrIHtcbiAgY29sb3I6ICR0YWJsZS1kYXJrLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1iZztcblxuICB0aCxcbiAgdGQsXG4gIHRoZWFkIHRoIHtcbiAgICBib3JkZXItY29sb3I6ICR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICYudGFibGUtYm9yZGVyZWQge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICYudGFibGUtc3RyaXBlZCB7XG4gICAgdGJvZHkgdHI6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1hY2NlbnQtYmc7XG4gICAgfVxuICB9XG5cbiAgJi50YWJsZS1ob3ZlciB7XG4gICAgdGJvZHkgdHIge1xuICAgICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgICBjb2xvcjogJHRhYmxlLWRhcmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1kYXJrLWhvdmVyLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFJlc3BvbnNpdmUgdGFibGVzXG4vL1xuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAudGFibGUtcmVzcG9uc2l2ZS0qYCBjbGFzc2VzIGZvciBjb25maWd1cmluZyB0aGUgc2NyZWVuXG4vLyBzaXplIG9mIHdoZXJlIHlvdXIgdGFibGUgd2lsbCBvdmVyZmxvdy5cblxuLnRhYmxlLXJlc3BvbnNpdmUge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgICYjeyRpbmZpeH0ge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICAgICAgIC8vIFByZXZlbnQgZG91YmxlIGJvcmRlciBvbiBob3Jpem9udGFsIHNjcm9sbCBkdWUgdG8gdXNlIG9mIGBkaXNwbGF5OiBibG9jaztgXG4gICAgICAgID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFRhYmxlc1xuXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGJvcmRlcjogbnVsbCkge1xuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuICAvLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAmLFxuICAgID4gdGgsXG4gICAgPiB0ZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICBAaWYgJGJvcmRlciAhPSBudWxsIHtcbiAgICAgIHRoLFxuICAgICAgdGQsXG4gICAgICB0aGVhZCB0aCxcbiAgICAgIHRib2R5ICsgdGJvZHkge1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cbiAgLnRhYmxlLWhvdmVyIHtcbiAgICAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG5cbiAgICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG5cbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJvb3RzdHJhcCBmdW5jdGlvbnNcbi8vXG4vLyBVdGlsaXR5IG1peGlucyBhbmQgZnVuY3Rpb25zIGZvciBldmFsdWF0aW5nIHNvdXJjZSBjb2RlIGFjcm9zcyBvdXIgdmFyaWFibGVzLCBtYXBzLCBhbmQgbWl4aW5zLlxuXG4vLyBBc2NlbmRpbmdcbi8vIFVzZWQgdG8gZXZhbHVhdGUgU2FzcyBtYXBzIGxpa2Ugb3VyIGdyaWQgYnJlYWtwb2ludHMuXG5AbWl4aW4gX2Fzc2VydC1hc2NlbmRpbmcoJG1hcCwgJG1hcC1uYW1lKSB7XG4gICRwcmV2LWtleTogbnVsbDtcbiAgJHByZXYtbnVtOiBudWxsO1xuICBAZWFjaCAka2V5LCAkbnVtIGluICRtYXAge1xuICAgIEBpZiAkcHJldi1udW0gPT0gbnVsbCBvciB1bml0KCRudW0pID09IFwiJVwiIHtcbiAgICAgIC8vIERvIG5vdGhpbmdcbiAgICB9IEBlbHNlIGlmIG5vdCBjb21wYXJhYmxlKCRwcmV2LW51bSwgJG51bSkge1xuICAgICAgQHdhcm4gXCJQb3RlbnRpYWxseSBpbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aG9zZSB1bml0IG1ha2VzIGl0IGluY29tcGFyYWJsZSB0byAjeyRwcmV2LW51bX0sIHRoZSB2YWx1ZSBvZiB0aGUgcHJldmlvdXMga2V5ICcjeyRwcmV2LWtleX0nICFcIjtcbiAgICB9IEBlbHNlIGlmICRwcmV2LW51bSA+PSAkbnVtIHtcbiAgICAgIEB3YXJuIFwiSW52YWxpZCB2YWx1ZSBmb3IgI3skbWFwLW5hbWV9OiBUaGlzIG1hcCBtdXN0IGJlIGluIGFzY2VuZGluZyBvcmRlciwgYnV0IGtleSAnI3ska2V5fScgaGFzIHZhbHVlICN7JG51bX0gd2hpY2ggaXNuJ3QgZ3JlYXRlciB0aGFuICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH1cbiAgICAkcHJldi1rZXk6ICRrZXk7XG4gICAgJHByZXYtbnVtOiAkbnVtO1xuICB9XG59XG5cbi8vIFN0YXJ0cyBhdCB6ZXJvXG4vLyBVc2VkIHRvIGVuc3VyZSB0aGUgbWluLXdpZHRoIG9mIHRoZSBsb3dlc3QgYnJlYWtwb2ludCBzdGFydHMgYXQgMC5cbkBtaXhpbiBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRtYXAsICRtYXAtbmFtZTogXCIkZ3JpZC1icmVha3BvaW50c1wiKSB7XG4gICR2YWx1ZXM6IG1hcC12YWx1ZXMoJG1hcCk7XG4gICRmaXJzdC12YWx1ZTogbnRoKCR2YWx1ZXMsIDEpO1xuICBAaWYgJGZpcnN0LXZhbHVlICE9IDAge1xuICAgIEB3YXJuIFwiRmlyc3QgYnJlYWtwb2ludCBpbiAjeyRtYXAtbmFtZX0gbXVzdCBzdGFydCBhdCAwLCBidXQgc3RhcnRzIGF0ICN7JGZpcnN0LXZhbHVlfS5cIjtcbiAgfVxufVxuXG4vLyBSZXBsYWNlIGAkc2VhcmNoYCB3aXRoIGAkcmVwbGFjZWAgaW4gYCRzdHJpbmdgXG4vLyBVc2VkIG9uIG91ciBTVkcgaWNvbiBiYWNrZ3JvdW5kcyBmb3IgY3VzdG9tIGZvcm1zLlxuLy9cbi8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxuLy8gQHBhcmFtIHtTdHJpbmd9ICRzdHJpbmcgLSBJbml0aWFsIHN0cmluZ1xuLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWFyY2ggLSBTdWJzdHJpbmcgdG8gcmVwbGFjZVxuLy8gQHBhcmFtIHtTdHJpbmd9ICRyZXBsYWNlICgnJykgLSBOZXcgdmFsdWVcbi8vIEByZXR1cm4ge1N0cmluZ30gLSBVcGRhdGVkIHN0cmluZ1xuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzZWFyY2gsICRyZXBsYWNlOiBcIlwiKSB7XG4gICRpbmRleDogc3RyLWluZGV4KCRzdHJpbmcsICRzZWFyY2gpO1xuXG4gIEBpZiAkaW5kZXgge1xuICAgIEByZXR1cm4gc3RyLXNsaWNlKCRzdHJpbmcsIDEsICRpbmRleCAtIDEpICsgJHJlcGxhY2UgKyBzdHItcmVwbGFjZShzdHItc2xpY2UoJHN0cmluZywgJGluZGV4ICsgc3RyLWxlbmd0aCgkc2VhcmNoKSksICRzZWFyY2gsICRyZXBsYWNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHN0cmluZztcbn1cblxuLy8gQ29sb3IgY29udHJhc3RcbkBmdW5jdGlvbiBjb2xvci15aXEoJGNvbG9yLCAkZGFyazogJHlpcS10ZXh0LWRhcmssICRsaWdodDogJHlpcS10ZXh0LWxpZ2h0KSB7XG4gICRyOiByZWQoJGNvbG9yKTtcbiAgJGc6IGdyZWVuKCRjb2xvcik7XG4gICRiOiBibHVlKCRjb2xvcik7XG5cbiAgJHlpcTogKCgkciAqIDI5OSkgKyAoJGcgKiA1ODcpICsgKCRiICogMTE0KSkgLyAxMDAwO1xuXG4gIEBpZiAoJHlpcSA+PSAkeWlxLWNvbnRyYXN0ZWQtdGhyZXNob2xkKSB7XG4gICAgQHJldHVybiAkZGFyaztcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiAkbGlnaHQ7XG4gIH1cbn1cblxuLy8gUmV0cmlldmUgY29sb3IgU2FzcyBtYXBzXG5AZnVuY3Rpb24gY29sb3IoJGtleTogXCJibHVlXCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCRjb2xvcnMsICRrZXkpO1xufVxuXG5AZnVuY3Rpb24gdGhlbWUtY29sb3IoJGtleTogXCJwcmltYXJ5XCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCR0aGVtZS1jb2xvcnMsICRrZXkpO1xufVxuXG5AZnVuY3Rpb24gZ3JheSgka2V5OiBcIjEwMFwiKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkZ3JheXMsICRrZXkpO1xufVxuXG4vLyBSZXF1ZXN0IGEgdGhlbWUgY29sb3IgbGV2ZWxcbkBmdW5jdGlvbiB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3ItbmFtZTogXCJwcmltYXJ5XCIsICRsZXZlbDogMCkge1xuICAkY29sb3I6IHRoZW1lLWNvbG9yKCRjb2xvci1uYW1lKTtcbiAgJGNvbG9yLWJhc2U6IGlmKCRsZXZlbCA+IDAsICRibGFjaywgJHdoaXRlKTtcbiAgJGxldmVsOiBhYnMoJGxldmVsKTtcblxuICBAcmV0dXJuIG1peCgkY29sb3ItYmFzZSwgJGNvbG9yLCAkbGV2ZWwgKiAkdGhlbWUtY29sb3ItaW50ZXJ2YWwpO1xufVxuIiwiLy9cclxuLy8gIEJyZWFrcG9pbnRzXHJcbi8vICBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19cclxuXHJcbiRkZWZhdWx0LWJyZWFrcG9pbnQ6IHhzO1xyXG4kZGVmYXVsdC1icmVha3BvaW50LWRpcmVjdGlvbjogdXA7XHJcbiRjdXJyZW50LWJyZWFrcG9pbnQ6ICRkZWZhdWx0LWJyZWFrcG9pbnQ7XHJcbiRjdXJyZW50LWJyZWFrcG9pbnQtZGlyZWN0aW9uOiAkZGVmYXVsdC1icmVha3BvaW50LWRpcmVjdGlvbjtcclxuXHJcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XHJcbiAgICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcclxuXHJcbiAgICBAaWYgJG1pbiB7XHJcbiAgICAgICAgLy8gVXBkYXRlIGAkY3VycmVudC1icmVha3BvaW50YFxyXG4gICAgICAgICRjdXJyZW50LWJyZWFrcG9pbnQ6ICRuYW1lICFnbG9iYWw7XHJcbiAgICAgICAgJGN1cnJlbnQtYnJlYWtwb2ludC1kaXJlY3Rpb246IHVwICFnbG9iYWw7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XHJcbiAgICAgICAgICAgIEBjb250ZW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gVGhlbiByZXNldCBgJGN1cnJlbnQtYnJlYWtwb2ludGAgdG8gYCRkZWZhdWx0LWJyZWFrcG9pbnRgIChyb290KVxyXG4gICAgICAgICRjdXJyZW50LWJyZWFrcG9pbnQ6ICRkZWZhdWx0LWJyZWFrcG9pbnQgIWdsb2JhbDtcclxuICAgICAgICAkY3VycmVudC1icmVha3BvaW50LWRpcmVjdGlvbjogJGRlZmF1bHQtYnJlYWtwb2ludC1kaXJlY3Rpb24gIWdsb2JhbDtcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxyXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxyXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XHJcbiAgICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcclxuXHJcbiAgICBAaWYgJG1heCB7XHJcbiAgICAgICAgLy8gVXBkYXRlIGAkY3VycmVudC1icmVha3BvaW50YFxyXG4gICAgICAgICRjdXJyZW50LWJyZWFrcG9pbnQ6ICRuYW1lICFnbG9iYWw7XHJcbiAgICAgICAgJGN1cnJlbnQtYnJlYWtwb2ludC1kaXJlY3Rpb246IGRvd24gIWdsb2JhbDtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcclxuICAgICAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBUaGVuIHJlc2V0IGAkY3VycmVudC1icmVha3BvaW50YCB0byBgJGRlZmF1bHQtYnJlYWtwb2ludGAgKHJvb3QpXHJcbiAgICAgICAgJGN1cnJlbnQtYnJlYWtwb2ludDogJGRlZmF1bHQtYnJlYWtwb2ludCAhZ2xvYmFsO1xyXG4gICAgICAgICRjdXJyZW50LWJyZWFrcG9pbnQtZGlyZWN0aW9uOiAkZGVmYXVsdC1icmVha3BvaW50LWRpcmVjdGlvbiAhZ2xvYmFsO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXHJcbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xyXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XHJcbiAgICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XHJcbiAgICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XHJcblxyXG4gICAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcclxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcclxuICAgICAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcclxuICAgICAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xyXG4gICAgICAgICAgICBAY29udGVudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cclxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXHJcbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cclxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xyXG4gICAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XHJcbiAgICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcclxuXHJcbiAgICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xyXG4gICAgICAgICAgICBAY29udGVudDtcclxuICAgICAgICB9XHJcbiAgICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XHJcbiAgICAgICAgICAgIEBjb250ZW50O1xyXG4gICAgICAgIH1cclxuICAgIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50cykge1xyXG4gICAgICAgICAgICBAY29udGVudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBUZXh0dWFsIGZvcm0gY29udHJvbHNcbi8vXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG5cbiAgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLCAwKTtcblxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaW5wdXQtdHJhbnNpdGlvbik7XG5cbiAgLy8gVW5zdHlsZSB0aGUgY2FyZXQgb24gYDxzZWxlY3Q+YHMgaW4gSUUxMCsuXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1c2Agc3RhdGUgdG8gaW1pdGF0ZSBuYXRpdmUgV2ViS2l0IHN0eWxlcy5cbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLWZvY3VzKCk7XG5cbiAgLy8gUGxhY2Vob2xkZXJcbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjYuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGFuZCByZWFkLW9ubHkgaW5wdXRzXG4gIC8vXG4gIC8vIEhUTUw1IHNheXMgdGhhdCBjb250cm9scyB1bmRlciBhIGZpZWxkc2V0ID4gbGVnZW5kOmZpcnN0LWNoaWxkIHdvbid0IGJlXG4gIC8vIGRpc2FibGVkIGlmIHRoZSBmaWVsZHNldCBpcyBkaXNhYmxlZC4gRHVlIHRvIGltcGxlbWVudGF0aW9uIGRpZmZpY3VsdHksIHdlXG4gIC8vIGRvbid0IGhvbm9yIHRoYXQgZWRnZSBjYXNlOyB3ZSBzdHlsZSB0aGVtIGFzIGRpc2FibGVkIGFueXdheS5cbiAgJjpkaXNhYmxlZCxcbiAgJltyZWFkb25seV0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICAvLyBpT1MgZml4IGZvciB1bnJlYWRhYmxlIGRpc2FibGVkIGNvbnRlbnQ7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjU1LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gICY6Zm9jdXM6Oi1tcy12YWx1ZSB7XG4gICAgLy8gU3VwcHJlc3MgdGhlIG5lc3RlZCBkZWZhdWx0IHdoaXRlIHRleHQgb24gYmx1ZSBiYWNrZ3JvdW5kIGhpZ2hsaWdodCBnaXZlbiB0b1xuICAgIC8vIHRoZSBzZWxlY3RlZCBvcHRpb24gdGV4dCB3aGVuIHRoZSAoc3RpbGwgY2xvc2VkKSA8c2VsZWN0PiByZWNlaXZlcyBmb2N1c1xuICAgIC8vIGluIElFIGFuZCAodW5kZXIgY2VydGFpbiBjb25kaXRpb25zKSBFZGdlLCBhcyBpdCBsb29rcyBiYWQgYW5kIGNhbm5vdCBiZSBtYWRlIHRvXG4gICAgLy8gbWF0Y2ggdGhlIGFwcGVhcmFuY2Ugb2YgdGhlIG5hdGl2ZSB3aWRnZXQuXG4gICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTkzOTguXG4gICAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIH1cbn1cblxuLy8gTWFrZSBmaWxlIGlucHV0cyBiZXR0ZXIgbWF0Y2ggdGV4dCBpbnB1dHMgYnkgZm9yY2luZyB0aGVtIHRvIG5ldyBsaW5lcy5cbi5mb3JtLWNvbnRyb2wtZmlsZSxcbi5mb3JtLWNvbnRyb2wtcmFuZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cblxuLy9cbi8vIExhYmVsc1xuLy9cblxuLy8gRm9yIHVzZSB3aXRoIGhvcml6b250YWwgYW5kIGlubGluZSBmb3Jtcywgd2hlbiB5b3UgbmVlZCB0aGUgbGFiZWwgKG9yIGxlZ2VuZClcbi8vIHRleHQgdG8gYWxpZ24gd2l0aCB0aGUgZm9ybSBjb250cm9scy5cbi5jb2wtZm9ybS1sYWJlbCB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKCN7JGlucHV0LXBhZGRpbmcteX0gKyAjeyRpbnB1dC1ib3JkZXItd2lkdGh9KTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoI3skaW5wdXQtcGFkZGluZy15fSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgYDxsYWJlbD4vPGxlZ2VuZD5gIGRlZmF1bHRcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpOyAvLyBPdmVycmlkZSB0aGUgYDxsZWdlbmQ+YCBkZWZhdWx0XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKCN7JGlucHV0LXBhZGRpbmcteS1sZ30gKyAjeyRpbnB1dC1ib3JkZXItd2lkdGh9KTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoI3skaW5wdXQtcGFkZGluZy15LWxnfSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1zbSB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKCN7JGlucHV0LXBhZGRpbmcteS1zbX0gKyAjeyRpbnB1dC1ib3JkZXItd2lkdGh9KTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoI3skaW5wdXQtcGFkZGluZy15LXNtfSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG59XG5cblxuLy8gUmVhZG9ubHkgY29udHJvbHMgYXMgcGxhaW4gdGV4dFxuLy9cbi8vIEFwcGx5IGNsYXNzIHRvIGEgcmVhZG9ubHkgaW5wdXQgdG8gbWFrZSBpdCBhcHBlYXIgbGlrZSByZWd1bGFyIHBsYWluXG4vLyB0ZXh0ICh3aXRob3V0IGFueSBib3JkZXIsIGJhY2tncm91bmQgY29sb3IsIGZvY3VzIGluZGljYXRvcilcblxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiAkaW5wdXQtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJGlucHV0LXBhZGRpbmcteTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gbWF0Y2ggaW5wdXRzIGlmIHRoaXMgY2xhc3MgY29tZXMgb24gaW5wdXRzIHdpdGggZGVmYXVsdCBtYXJnaW5zXG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtcGxhaW50ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20sXG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBSZXBlYXRlZCBpbiBgX2lucHV0X2dyb3VwLnNjc3NgIHRvIGF2b2lkIFNhc3MgZXh0ZW5kIGlzc3Vlcy5cblxuLmZvcm0tY29udHJvbC1zbSB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgJltzaXplXSxcbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIEZvcm0gZ3JvdXBzXG4vL1xuLy8gRGVzaWduZWQgdG8gaGVscCB3aXRoIHRoZSBvcmdhbml6YXRpb24gYW5kIHNwYWNpbmcgb2YgdmVydGljYWwgZm9ybXMuIEZvclxuLy8gaG9yaXpvbnRhbCBmb3JtcywgdXNlIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy5cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tO1xufVxuXG4uZm9ybS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcbn1cblxuXG4vLyBGb3JtIGdyaWRcbi8vXG4vLyBTcGVjaWFsIHJlcGxhY2VtZW50IGZvciBvdXIgZ3JpZCBzeXN0ZW0ncyBgLnJvd2AgZm9yIHRpZ2h0ZXIgZm9ybSBsYXlvdXRzLlxuXG4uZm9ybS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLSRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgbWFyZ2luLWxlZnQ6IC0kZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG5cbiAgPiAuY29sLFxuICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG4gICAgcGFkZGluZy1sZWZ0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBJbmRlbnQgdGhlIGxhYmVscyB0byBwb3NpdGlvbiByYWRpb3MvY2hlY2tib3hlcyBhcyBoYW5naW5nIGNvbnRyb2xzLlxuXG4uZm9ybS1jaGVjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xufVxuXG4uZm9ybS1jaGVjay1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLXRvcDogJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk7XG4gIG1hcmdpbi1sZWZ0OiAtJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xuXG4gICY6ZGlzYWJsZWQgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICB9XG59XG5cbi5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBgPGxhYmVsPmAgYm90dG9tIG1hcmdpblxufVxuXG4uZm9ybS1jaGVjay1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBPdmVycmlkZSBiYXNlIC5mb3JtLWNoZWNrXG4gIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14O1xuXG4gIC8vIFVuZG8gLmZvcm0tY2hlY2staW5wdXQgZGVmYXVsdHMgYW5kIGFkZCBzb21lIGBtYXJnaW4tcmlnaHRgLlxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uXG4vL1xuLy8gUHJvdmlkZSBmZWVkYmFjayB0byB1c2VycyB3aGVuIGZvcm0gZmllbGQgdmFsdWVzIGFyZSB2YWxpZCBvciBpbnZhbGlkLiBXb3Jrc1xuLy8gcHJpbWFyaWx5IGZvciBjbGllbnQtc2lkZSB2YWxpZGF0aW9uIHZpYSBzY29wZWQgYDppbnZhbGlkYCBhbmQgYDp2YWxpZGBcbi8vIHBzZXVkby1jbGFzc2VzIGJ1dCBhbHNvIGluY2x1ZGVzIGAuaXMtaW52YWxpZGAgYW5kIGAuaXMtdmFsaWRgIGNsYXNzZXMgZm9yXG4vLyBzZXJ2ZXIgc2lkZSB2YWxpZGF0aW9uLlxuXG5AZWFjaCAkc3RhdGUsICRkYXRhIGluICRmb3JtLXZhbGlkYXRpb24tc3RhdGVzIHtcbiAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgbWFwLWdldCgkZGF0YSwgY29sb3IpLCBtYXAtZ2V0KCRkYXRhLCBpY29uKSk7XG59XG5cbi8vIElubGluZSBmb3Jtc1xuLy9cbi8vIE1ha2UgZm9ybXMgYXBwZWFyIGlubGluZSgtYmxvY2spIGJ5IGFkZGluZyB0aGUgYC5mb3JtLWlubGluZWAgY2xhc3MuIElubGluZVxuLy8gZm9ybXMgYmVnaW4gc3RhY2tlZCBvbiBleHRyYSBzbWFsbCAobW9iaWxlKSBkZXZpY2VzIGFuZCB0aGVuIGdvIGlubGluZSB3aGVuXG4vLyB2aWV3cG9ydHMgcmVhY2ggPDc2OHB4LlxuLy9cbi8vIFJlcXVpcmVzIHdyYXBwaW5nIGlucHV0cyBhbmQgbGFiZWxzIHdpdGggYC5mb3JtLWdyb3VwYCBmb3IgcHJvcGVyIGRpc3BsYXkgb2Zcbi8vIGRlZmF1bHQgSFRNTCBmb3JtIGNvbnRyb2xzIGFuZCBvdXIgY3VzdG9tIGZvcm0gY29udHJvbHMgKGUuZy4sIGlucHV0IGdyb3VwcykuXG5cbi5mb3JtLWlubGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIFByZXZlbnQgc2hvcnRlciBlbGVtZW50cyBmcm9tIGdyb3dpbmcgdG8gc2FtZSBoZWlnaHQgYXMgb3RoZXJzIChlLmcuLCBzbWFsbCBidXR0b25zIGdyb3dpbmcgdG8gbm9ybWFsIHNpemVkIGJ1dHRvbiBoZWlnaHQpXG5cbiAgLy8gQmVjYXVzZSB3ZSB1c2UgZmxleCwgdGhlIGluaXRpYWwgc2l6aW5nIG9mIGNoZWNrYm94ZXMgaXMgY29sbGFwc2VkIGFuZFxuICAvLyBkb2Vzbid0IG9jY3VweSB0aGUgZnVsbC13aWR0aCAod2hpY2ggaXMgd2hhdCB3ZSB3YW50IGZvciB4cyBncmlkIHRpZXIpLFxuICAvLyBzbyB3ZSBmb3JjZSB0aGF0IGhlcmUuXG4gIC5mb3JtLWNoZWNrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIEtpY2sgaW4gdGhlIGlubGluZVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgbGFiZWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gSW5saW5lLWJsb2NrIGFsbCB0aGUgdGhpbmdzIGZvciBcImlubGluZVwiXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIEFsbG93IGZvbGtzIHRvICpub3QqIHVzZSBgLmZvcm0tZ3JvdXBgXG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bzsgLy8gUHJldmVudCBsYWJlbHMgZnJvbSBzdGFja2luZyBhYm92ZSBpbnB1dHMgaW4gYC5mb3JtLWdyb3VwYFxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAvLyBNYWtlIHN0YXRpYyBjb250cm9scyBiZWhhdmUgbGlrZSByZWd1bGFyIG9uZXNcbiAgICAuZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLmlucHV0LWdyb3VwLFxuICAgIC5jdXN0b20tc2VsZWN0IHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBvbiByYWRpb3MvY2hlY2tib3hlcyB0aGF0IHdlcmUgdXNlZCBmb3Igc3RhY2tpbmcsIGFuZFxuICAgIC8vIHRoZW4gdW5kbyB0aGUgZmxvYXRpbmcgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzIHRvIG1hdGNoLlxuICAgIC5mb3JtLWNoZWNrIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gICAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC5jdXN0b20tY29udHJvbCB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cclxuLy8gIEdsb2JhbCBmdW5jdGlvbnNcclxuLy8gIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX1xyXG5cclxuLy9cclxuLy8gIFR5cG9ncmFwaHlcclxuLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gIENvbnZlcnQgcHggdG8gcmVtXHJcbkBmdW5jdGlvbiByZW0oJHNpemUpIHtcclxuICAgIEBpZiB1bml0KCRzaXplKSA9PSAncmVtJyB7XHJcbiAgICAgICAgQHJldHVybiAkc2l6ZTtcclxuICAgIH1cclxuXHJcbiAgICAkcmVtLXNpemU6IHN0cmlwLXVuaXRzKCRzaXplKSAvIChzdHJpcC11bml0cygkZm9udC1zaXplLXJvb3QpICogMTYgLyAxMDApO1xyXG4gICAgQHJldHVybiAkcmVtLXNpemUgKiAxcmVtO1xyXG59XHJcblxyXG5AZnVuY3Rpb24gc3RyaXAtdW5pdHMoJG51bWJlcikge1xyXG4gICAgQHJldHVybiAkbnVtYmVyIC8gKCRudW1iZXIgKiAwICsgMSk7XHJcbn1cclxuXHJcbi8vXHJcbi8vICBPdGhlcnNcclxuLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gIERvZXMgbm90IGNvbXBpbGUgdGhlIHNlbGVjdG9yIGlmIHRoZSB2YWx1ZSBwYXNzZWQgaXMgZmFsc2VcclxuQGZ1bmN0aW9uIHNldCgkdmFsdWUpIHtcclxuICAgIEByZXR1cm4gaWYoJHZhbHVlLCAkdmFsdWUsIG51bGwpO1xyXG59XHJcblxyXG4vLyBFeGFtcGxlOlxyXG4vLyAkbWFwIDogKCAoMTBweCwgMTFweCksICgxMHB4LCAxNXB4KSwgKDEwcHgsIDVweCkgKVxyXG4vLyBtYXgtbWFwLWVsZW1lbnQoJG1hcCwgMikgPT4gMTVweFxyXG5AZnVuY3Rpb24gbWF4LW1hcC1lbGVtZW50KCRfbWFwLCAkX2luZGV4KSB7XHJcbiAgICAkbGlzdDogKCk7XHJcblxyXG4gICAgQGVhY2ggJGtleSwgJHNpemUgaW4gJF9tYXAge1xyXG4gICAgICAgICRsaXN0OiBhcHBlbmQoJGxpc3QsIG50aCgkc2l6ZSwgJF9pbmRleCksIGNvbW1hKTtcclxuICAgIH1cclxuXHJcbiAgICBAcmV0dXJuIG1heCgkbGlzdC4uLik7XHJcbn1cclxuXHJcbi8vICBDcmVhdGVzIGJhY2tncm91bmQtaW1hZ2UgdXJsIGZvciBzdmcgaWNvbnNcclxuLy8gRXhhbXBsZSBpY29uLWltYWdlKCRlZ2dwbGFudCwgJGNoZXZyb24tcmlnaHQpO1xyXG5AZnVuY3Rpb24gaWNvbi1pbWFnZSgkY29sb3IsICRpbWFnZSkge1xyXG5cclxuICAgICR1cmw6IFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7dG8tcmdiKCRjb2xvcil9JyBmaWxsLXJ1bGU9J2V2ZW5vZGQnICN7JGltYWdlfSAvJTNFJTNDL3N2ZyUzRSUwQVwiO1xyXG4gICAgQHJldHVybiB1cmwoJHVybCk7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiB0by1yZ2IoJGNvbG9yKSB7XHJcbiAgICBAcmV0dXJuICdyZ2IoJyArIHJlZCgkY29sb3IpICsgJywgJyArIGdyZWVuKCRjb2xvcikgKyAnLCAnICsgYmx1ZSgkY29sb3IpKyAnKSc7XHJcbn1cclxuIiwiLy9cclxuLy8gIEdyYXlzIHBhbGV0dGVcclxuLy8gIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX1xyXG5cclxuJGdyYXktNTA6ICNmYWZhZmE7XHJcbiRncmF5LTEwMDogI2Y4ZjhmODtcclxuJGdyYXktMjAwOiAjZjRmNGY0O1xyXG4kZ3JheS0zMDA6ICNjY2M7XHJcbiRncmF5LTQwMDogI2FhYTtcclxuJGdyYXktNDUwOiAjODA4MDgwO1xyXG4kZ3JheS01MDA6ICM2OTY5Njk7XHJcbiRncmF5LTU1MDogI2U0ZTRlNDtcclxuJGdyYXktNjAwOiAjYzFjMWMxO1xyXG4kZ3JheS03MDA6ICM4MDgwODA7XHJcbiRncmF5LTgwMDogIzE5MTkxOTtcclxuJGdyYXktODUwOiAjOTY5Njk2O1xyXG4kZ3JheS05MDA6ICM2NjY7XHJcblxyXG4kZ3JheXM6IG1hcC1tZXJnZSgkZ3JheXMsIChcclxuICAgIDUwOiAkZ3JheS01MCxcclxuICAgIDEwMDogJGdyYXktMTAwLFxyXG4gICAgMjAwOiAkZ3JheS0yMDAsXHJcbiAgICAzMDA6ICRncmF5LTMwMCxcclxuICAgIDQwMDogJGdyYXktNDAwLFxyXG4gICAgNDUwOiAkZ3JheS00NTAsXHJcbiAgICA1MDA6ICRncmF5LTUwMCxcclxuICAgIDU1MDogJGdyYXktNTUwLFxyXG4gICAgNjAwOiAkZ3JheS02MDAsXHJcbiAgICA3MDA6ICRncmF5LTcwMCxcclxuICAgIDgwMDogJGdyYXktODAwLFxyXG4gICAgODUwOiAkZ3JheS04NTAsXHJcbiAgICA5MDA6ICRncmF5LTkwMCxcclxuKSk7XHJcblxyXG4vL1xyXG4vLyAgQ29sb3JzIHBhbGV0dGVcclxuLy8gIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX1xyXG5cclxuJGdyYXkgICAgICAgICAgIDogIzMzMztcclxuJGdyZWVuICAgICAgICAgIDogIzQ0YjE1MTtcclxuJHJlZCAgICAgICAgICAgIDogI2Q3MzczZDtcclxuJHllbGxvdyAgICAgICAgIDogI2Y1YTYyMztcclxuXHJcbiRjb2xvcnM6IG1hcC1tZXJnZSgkY29sb3JzLCAoXHJcbiAgICAnd2hpdGUnICAgICAgICAgOiAkd2hpdGUsXHJcbiAgICAnYmxhY2snICAgICAgICAgOiAkYmxhY2ssXHJcbiAgICAnZ3JheScgICAgICAgICAgOiAkZ3JheSxcclxuKSk7XHJcblxyXG4vL1xyXG4vLyAgVGhlbWUgcGFsZXR0ZVxyXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJpbWFyeSAgIDogJGJsYWNrO1xyXG4kZ3JheSAgICAgIDogJGdyYXk7XHJcblxyXG4kdGhlbWUtY29sb3JzOiBtYXAtbWVyZ2UoJHRoZW1lLWNvbG9ycywgKFxyXG4gICAgJ3ByaW1hcnknICAgOiAkcHJpbWFyeSxcclxuICAgICdncmF5JyAgICAgIDogJGdyYXksXHJcbiAgICAncmVkJyAgICAgICA6ICRyZWQsXHJcbiAgICAnZ3JlZW4nICAgICA6ICRncmVlbixcclxuICAgICd5ZWxsb3cnICAgIDogJHllbGxvdyxcclxuKSk7XHJcbiIsIi8vXHJcbi8vICBGb3JtIHZhcmlhYmxlc1xyXG4vLyAgX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXHJcblxyXG4kaW5wdXQtaGVpZ2h0OiByZW0oNDQpO1xyXG4kaW5wdXQtZm9udC1zaXplOiAkZm9udC1zaXplLXM7XHJcbiRpbnB1dC1jb2xvcjogdGhlbWUtY29sb3IoJ3ByaW1hcnknKTtcclxuJGlucHV0LWJvcmRlci1jb2xvcjogZ3JheSg1MDApO1xyXG4kaW5wdXQtZGlzYWJsZWQtYmc6IGdyYXkoMjAwKTtcclxuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc6IGdyYXkoMjAwKTtcclxuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogcmVtKDEyKTtcclxuJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyOiAwO1xyXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogMDtcclxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktYmxhY2tsaXN0XG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICBAaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gICAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPT0gMCB7XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1iYXNlO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgfVxuICB9XG5cbiAgQGlmICRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeSB7XG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3JtIGNvbnRyb2wgZm9jdXMgc3RhdGVcbi8vXG4vLyBHZW5lcmF0ZSBhIGN1c3RvbWl6ZWQgZm9jdXMgc3RhdGUgYW5kIGZvciBhbnkgaW5wdXQgd2l0aCB0aGUgc3BlY2lmaWVkIGNvbG9yLFxuLy8gd2hpY2ggZGVmYXVsdHMgdG8gdGhlIGAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yYCB2YXJpYWJsZS5cbi8vXG4vLyBXZSBoaWdobHkgZW5jb3VyYWdlIHlvdSB0byBub3QgY3VzdG9taXplIHRoZSBkZWZhdWx0IHZhbHVlLCBidXQgaW5zdGVhZCB1c2Vcbi8vIHRoaXMgdG8gdHdlYWsgY29sb3JzIG9uIGFuIGFzLW5lZWRlZCBiYXNpcy4gVGhpcyBhZXN0aGV0aWMgY2hhbmdlIGlzIGJhc2VkIG9uXG4vLyBXZWJLaXQncyBkZWZhdWx0IHN0eWxlcywgYnV0IGFwcGxpY2FibGUgdG8gYSB3aWRlciByYW5nZSBvZiBicm93c2Vycy4gSXRzXG4vLyB1c2FiaWxpdHkgYW5kIGFjY2Vzc2liaWxpdHkgc2hvdWxkIGJlIHRha2VuIGludG8gYWNjb3VudCB3aXRoIGFueSBjaGFuZ2UuXG4vL1xuLy8gRXhhbXBsZSB1c2FnZTogY2hhbmdlIHRoZSBkZWZhdWx0IGJsdWUgYm9yZGVyIGFuZCBzaGFkb3cgdG8gd2hpdGUgZm9yIGJldHRlclxuLy8gY29udHJhc3QgYWdhaW5zdCBhIGRhcmsgZ3JheSBiYWNrZ3JvdW5kLlxuQG1peGluIGZvcm0tY29udHJvbC1mb2N1cygpIHtcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZm9jdXMtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cblxuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsICRjb2xvciwgJGljb24pIHtcbiAgLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAkZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay1mb250LXNpemUpO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1heC13aWR0aDogMTAwJTsgLy8gQ29udGFpbiB0byBwYXJlbnQgd2hlbiBwb3NzaWJsZVxuICAgIHBhZGRpbmc6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14O1xuICAgIG1hcmdpbi10b3A6IC4xcmVtO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLCAkZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHkpO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGljb247XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQsICRpY29uICRjdXN0b20tc2VsZWN0LWJnIG5vLXJlcGVhdCAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uIC8gJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgIH1cblxuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIC5mb3JtLWNvbnRyb2wtZmlsZSB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICAmOmNoZWNrZWQge1xuICAgICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCAxMCUpO1xuICAgICAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKGxpZ2h0ZW4oJGNvbG9yLCAxMCUpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gY3VzdG9tIGZpbGVcbiAgLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gR3JhZGllbnRzXG5cbkBtaXhpbiBncmFkaWVudC1iZygkY29sb3IpIHtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXg7XG4gIH0gQGVsc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLyBIb3Jpem9udGFsIGdyYWRpZW50LCBmcm9tIGxlZnQgdG8gcmlnaHRcbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXgoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC15KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXktdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogJGdyYXktNzAwLCAkb3V0ZXItY29sb3I6ICRncmF5LTgwMCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoJHdoaXRlLCAuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbiIsIi5mYWRlIHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1mYWRlKTtcblxuICAmOm5vdCguc2hvdykge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmNvbGxhcHNlIHtcbiAgJjpub3QoLnNob3cpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tY29sbGFwc2UpO1xufVxuIiwiLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGA8ZGl2PmApXG4uZHJvcHVwLFxuLmRyb3ByaWdodCxcbi5kcm9wZG93bixcbi5kcm9wbGVmdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLy8gR2VuZXJhdGUgdGhlIGNhcmV0IGF1dG9tYXRpY2FsbHlcbiAgQGluY2x1ZGUgY2FyZXQ7XG59XG5cbi8vIFRoZSBkcm9wZG93biBtZW51XG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAkZHJvcGRvd24tbWluLXdpZHRoO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15IDA7XG4gIG1hcmdpbjogJGRyb3Bkb3duLXNwYWNlciAwIDA7IC8vIG92ZXJyaWRlIGRlZmF1bHQgdWxcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkcm9wZG93bi1mb250LXNpemUpO1xuICBjb2xvcjogJGRyb3Bkb3duLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyLXdpZHRoIHNvbGlkICRkcm9wZG93bi1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRkcm9wZG93bi1ib3gtc2hhZG93KTtcbn1cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tbGVmdCB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tcmlnaHQge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldC5cbi5kcm9wdXAge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldCh1cCk7XG4gIH1cbn1cblxuLmRyb3ByaWdodCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQocmlnaHQpO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGxlZnQge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChsZWZ0KTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIFdoZW4gZW5hYmxlZCBQb3BwZXIuanMsIHJlc2V0IGJhc2ljIGRyb3Bkb3duIHBvc2l0aW9uXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLmRyb3Bkb3duLW1lbnUge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSxcbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSxcbiAgJlt4LXBsYWNlbWVudF49XCJib3R0b21cIl0sXG4gICZbeC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgYm90dG9tOiBhdXRvO1xuICB9XG59XG5cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gYDxocj5gKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIEBpbmNsdWRlIG5hdi1kaXZpZGVyKCRkcm9wZG93bi1kaXZpZGVyLWJnLCAkZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teSk7XG59XG5cbi8vIExpbmtzLCBidXR0b25zLCBhbmQgbW9yZSB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbi8vXG4vLyBgPGJ1dHRvbj5gLXNwZWNpZmljIHN0eWxlcyBhcmUgZGVub3RlZCB3aXRoIGAvLyBGb3IgPGJ1dHRvbj5zYFxuLmRyb3Bkb3duLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjbGVhcjogYm90aDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIGJvcmRlcjogMDsgLy8gRm9yIGA8YnV0dG9uPmBzXG5cbiAgLy8gUHJldmVudCBkcm9wZG93biBvdmVyZmxvdyBpZiB0aGVyZSdzIG5vIHBhZGRpbmdcbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzI3NzAzXG4gIEBpZiAkZHJvcGRvd24tcGFkZGluZy15ID09IDAge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWxpbmstaG92ZXItYmcpO1xuICB9XG5cbiAgJi5hY3RpdmUsXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1hY3RpdmUtYmcpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudS5zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIERyb3Bkb3duIHNlY3Rpb24gaGVhZGVyc1xuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gZm9yIHVzZSB3aXRoIGhlYWRpbmcgZWxlbWVudHNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtc20pO1xuICBjb2xvcjogJGRyb3Bkb3duLWhlYWRlci1jb2xvcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxufVxuXG4vLyBEcm9wZG93biB0ZXh0XG4uZHJvcGRvd24taXRlbS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbn1cbiIsIkBtaXhpbiBjYXJldC1kb3duIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXVwIHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXJpZ2h0IHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbn1cblxuQG1peGluIGNhcmV0LWxlZnQge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldCgkZGlyZWN0aW9uOiBkb3duKSB7XG4gIEBpZiAkZW5hYmxlLWNhcmV0IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogJGNhcmV0LXNwYWNpbmc7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIEBpZiAkZGlyZWN0aW9uID09IGRvd24ge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1kb3duO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtdXA7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1yaWdodDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBsZWZ0IHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1sZWZ0O1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gSG9yaXpvbnRhbCBkaXZpZGVyc1xuLy9cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiBkcm9wZG93bnMgYW5kIG5hdiBsaXN0c1xuXG5AbWl4aW4gbmF2LWRpdmlkZXIoJGNvbG9yOiAkbmF2LWRpdmlkZXItY29sb3IsICRtYXJnaW4teTogJG5hdi1kaXZpZGVyLW1hcmdpbi15KSB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAkbWFyZ2luLXkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvcjtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gbWF0Y2ggLmJ0biBhbGlnbm1lbnQgZ2l2ZW4gZm9udC1zaXplIGhhY2sgYWJvdmVcblxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4OiAxIDEgYXV0bztcblxuICAgIC8vIEJyaW5nIHRoZSBob3ZlciwgZm9jdXNlZCwgYW5kIFwiYWN0aXZlXCIgYnV0dG9ucyB0byB0aGUgZnJvbnQgdG8gb3ZlcmxheVxuICAgIC8vIHRoZSBib3JkZXJzIHByb3Blcmx5XG4gICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgfVxufVxuXG4vLyBPcHRpb25hbDogR3JvdXAgbXVsdGlwbGUgYnV0dG9uIGdyb3VwcyB0b2dldGhlciBmb3IgYSB0b29sYmFyXG4uYnRuLXRvb2xiYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi5idG4tZ3JvdXAge1xuICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tbGVmdDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXG5cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXG4vL1xuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG5cbiAgJjo6YWZ0ZXIsXG4gIC5kcm9wdXAgJjo6YWZ0ZXIsXG4gIC5kcm9wcmlnaHQgJjo6YWZ0ZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3BsZWZ0ICY6OmJlZm9yZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG59XG5cbi5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG59XG5cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBTZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG4uYnRuLWdyb3VwLnNob3cgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgLy8gU2hvdyBubyBzaGFkb3cgZm9yIGAuYnRuLWxpbmtgIHNpbmNlIGl0IGhhcyBubyBvdGhlciBidXR0b24gc3R5bGVzLlxuICAmLmJ0bi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy9cbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcbi8vXG5cbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi10b3A6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3ggYW5kIHJhZGlvIG9wdGlvbnNcbi8vXG4vLyBJbiBvcmRlciB0byBzdXBwb3J0IHRoZSBicm93c2VyJ3MgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrLCBwb3dlcmVkIGJ5IHRoZVxuLy8gYHJlcXVpcmVkYCBhdHRyaWJ1dGUsIHdlIGhhdmUgdG8gXCJoaWRlXCIgdGhlIGlucHV0cyB2aWEgYGNsaXBgLiBXZSBjYW5ub3QgdXNlXG4vLyBgZGlzcGxheTogbm9uZTtgIG9yIGB2aXNpYmlsaXR5OiBoaWRkZW47YCBhcyB0aGF0IGFsc28gaGlkZXMgdGhlIHBvcG92ZXIuXG4vLyBTaW1wbHkgdmlzdWFsbHkgaGlkaW5nIHRoZSBpbnB1dHMgdmlhIGBvcGFjaXR5YCB3b3VsZCBsZWF2ZSB0aGVtIGNsaWNrYWJsZSBpblxuLy8gY2VydGFpbiBjYXNlcyB3aGljaCBpcyBwcmV2ZW50ZWQgYnkgdXNpbmcgYGNsaXBgIGFuZCBgcG9pbnRlci1ldmVudHNgLlxuLy8gVGhpcyB3YXksIHdlIGVuc3VyZSBhIERPTSBlbGVtZW50IGlzIHZpc2libGUgdG8gcG9zaXRpb24gdGhlIHBvcG92ZXIgZnJvbS5cbi8vXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTI3OTQgYW5kXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xNDU1OSBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cblxuLmJ0bi1ncm91cC10b2dnbGUge1xuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCA+IC5idG4ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgYDxsYWJlbD5gIHZhbHVlXG5cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBGb3IgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQsXG4gID4gLmN1c3RvbS1zZWxlY3QsXG4gID4gLmN1c3RvbS1maWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBmb2N1cyBzdGF0ZSdzIHotaW5kZXhcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAvLyBBZGQgd2lkdGggMSUgYW5kIGZsZXgtYmFzaXMgYXV0byB0byBlbnN1cmUgdGhhdCBidXR0b24gd2lsbCBub3Qgd3JhcCBvdXRcbiAgICAvLyB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFIEVkZ2UrIGFuZCBGaXJlZm94LiBDaHJvbWUgZG9lcyBub3QgcmVxdWlyZSB0aGlzLlxuICAgIHdpZHRoOiAxJTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgKyAuZm9ybS1jb250cm9sLFxuICAgICsgLmN1c3RvbS1zZWxlY3QsXG4gICAgKyAuY3VzdG9tLWZpbGUge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGZvcm0gY29udHJvbCB0byB0aGUgdG9wIG9mIHN1cnJvdW5kaW5nIGVsZW1lbnRzXG4gID4gLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgPiAuY3VzdG9tLXNlbGVjdDpmb2N1cyxcbiAgPiAuY3VzdG9tLWZpbGUgLmN1c3RvbS1maWxlLWlucHV0OmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICB6LWluZGV4OiAzO1xuICB9XG5cbiAgLy8gQnJpbmcgdGhlIGN1c3RvbSBmaWxlIGlucHV0IGFib3ZlIHRoZSBsYWJlbFxuICA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMge1xuICAgIHotaW5kZXg6IDQ7XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmN1c3RvbS1zZWxlY3Qge1xuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7IEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7IH1cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHsgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApOyB9XG4gIH1cblxuICAvLyBDdXN0b20gZmlsZSBpbnB1dHMgaGF2ZSBtb3JlIGNvbXBsZXggbWFya3VwLCB0aHVzIHJlcXVpcmluZyBkaWZmZXJlbnRcbiAgLy8gYm9yZGVyLXJhZGl1cyBvdmVycmlkZXMuXG4gID4gLmN1c3RvbS1maWxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsLFxuICAgICY6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHsgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTsgfVxuICAgICY6bm90KDpmaXJzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsIHsgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApOyB9XG4gIH1cbn1cblxuXG4vLyBQcmVwZW5kIGFuZCBhcHBlbmRcbi8vXG4vLyBXaGlsZSBpdCByZXF1aXJlcyBvbmUgZXh0cmEgbGF5ZXIgb2YgSFRNTCBmb3IgZWFjaCwgZGVkaWNhdGVkIHByZXBlbmQgYW5kXG4vLyBhcHBlbmQgZWxlbWVudHMgYWxsb3cgdXMgdG8gMSkgYmUgbGVzcyBjbGV2ZXIsIDIpIHNpbXBsaWZ5IG91ciBzZWxlY3RvcnMsIGFuZFxuLy8gMykgc3VwcG9ydCBIVE1MNSBmb3JtIHZhbGlkYXRpb24uXG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kLFxuLmlucHV0LWdyb3VwLWFwcGVuZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgLy8gRW5zdXJlIGJ1dHRvbnMgYXJlIGFsd2F5cyBhYm92ZSBpbnB1dHMgZm9yIG1vcmUgdmlzdWFsbHkgcGxlYXNpbmcgYm9yZGVycy5cbiAgLy8gVGhpcyBpc24ndCBuZWVkZWQgZm9yIGAuaW5wdXQtZ3JvdXAtdGV4dGAgc2luY2UgaXQgc2hhcmVzIHRoZSBzYW1lIGJvcmRlci1jb2xvclxuICAvLyBhcyBvdXIgaW5wdXRzLlxuICAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogMztcbiAgICB9XG4gIH1cblxuICAuYnRuICsgLmJ0bixcbiAgLmJ0biArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgfVxufVxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCB7IG1hcmdpbi1yaWdodDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cbi5pbnB1dC1ncm91cC1hcHBlbmQgeyBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cblxuXG4vLyBUZXh0dWFsIGFkZG9uc1xuLy9cbi8vIFNlcnZlcyBhcyBhIGNhdGNoLWFsbCBlbGVtZW50IGZvciBhbnkgdGV4dCBvciByYWRpby9jaGVja2JveCBpbnB1dCB5b3Ugd2lzaFxuLy8gdG8gcHJlcGVuZCBvciBhcHBlbmQgdG8gYW4gaW5wdXQuXG5cbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBBbGxvdyB1c2Ugb2YgPGxhYmVsPiBlbGVtZW50cyBieSBvdmVycmlkaW5nIG91ciBkZWZhdWx0IG1hcmdpbi1ib3R0b21cbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpOyAvLyBNYXRjaCBpbnB1dHNcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gTnVrZSBkZWZhdWx0IG1hcmdpbnMgZnJvbSBjaGVja2JveGVzIGFuZCByYWRpb3MgdG8gdmVydGljYWxseSBjZW50ZXIgd2l0aGluLlxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGZvcm0gY29udHJvbCBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXJcbi8vIG1hbmlwdWxhdGlvbi5cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xufVxuXG5cbi8vIFByZXBlbmQgYW5kIGFwcGVuZCByb3VuZGVkIGNvcm5lcnNcbi8vXG4vLyBUaGVzZSBydWxlc2V0cyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIHNpemluZyBvbmVzIHRvIHByb3Blcmx5IG92ZXJyaWRlIHNtIGFuZCBsZ1xuLy8gYm9yZGVyLXJhZGl1cyB2YWx1ZXMgd2hlbiBleHRlbmRpbmcuIFRoZXkncmUgbW9yZSBzcGVjaWZpYyB0aGFuIHdlJ2QgbGlrZVxuLy8gd2l0aCB0aGUgYC5pbnB1dC1ncm91cCA+YCBwYXJ0LCBidXQgd2l0aG91dCBpdCwgd2UgY2Fubm90IG92ZXJyaWRlIHRoZSBzaXppbmcuXG5cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbn1cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cbiIsIi8vIEVtYmVkZGVkIGljb25zIGZyb20gT3BlbiBJY29uaWMuXG4vLyBSZWxlYXNlZCB1bmRlciBNSVQgYW5kIGNvcHlyaWdodCAyMDE0IFdheWJ1cnkuXG4vLyBodHRwczovL3VzZWljb25pYy5jb20vb3BlblxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEJhc2UgY2xhc3MgdGFrZXMgY2FyZSBvZiBhbGwgdGhlIGtleSBiZWhhdmlvcmFsIGFzcGVjdHMuXG5cbi5jdXN0b20tY29udHJvbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6ICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWFyZ2luLXJpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7IC8vIFB1dCB0aGUgaW5wdXQgYmVoaW5kIHRoZSBsYWJlbCBzbyBpdCBkb2Vzbid0IG92ZXJsYXkgdGV4dFxuICBvcGFjaXR5OiAwO1xuXG4gICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmcpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjpmb2N1cyB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAvLyB0aGUgbWl4aW4gaXMgbm90IHVzZWQgaGVyZSB0byBtYWtlIHN1cmUgdGhlcmUgaXMgZmVlZGJhY2tcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAmOmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6YWN0aXZlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQ3VzdG9tIGNvbnRyb2wgaW5kaWNhdG9yc1xuLy9cbi8vIEJ1aWxkIHRoZSBjdXN0b20gY29udHJvbHMgb3V0IG9mIHBzZXVkby1lbGVtZW50cy5cblxuLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXG4gIC8vIEJhY2tncm91bmQtY29sb3IgYW5kICh3aGVuIGVuYWJsZWQpIGdyYWRpZW50XG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAvIDI7XG4gICAgbGVmdDogLSgkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGhlaWdodDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgICBib3JkZXI6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yIHNvbGlkICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93KTtcbiAgfVxuXG4gIC8vIEZvcmVncm91bmQgKGljb24pXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gMjtcbiAgICBsZWZ0OiAtKCRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgNTAlIC8gI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemV9O1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3hlc1xuLy9cbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciBjaGVja2JveGVzLlxuXG4uY3VzdG9tLWNoZWNrYm94IHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1jaGVja2VkO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcpO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGU7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICAgICY6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cblxuLy8gUmFkaW9zXG4vL1xuLy8gVHdlYWsganVzdCBhIGZldyB0aGluZ3MgZm9yIHJhZGlvcy5cblxuLmN1c3RvbS1yYWRpbyB7XG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQ7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gc3dpdGNoZXNcbi8vXG4vLyBUd2VhayBhIGZldyB0aGluZ3MgZm9yIHN3aXRjaGVzXG5cbi5jdXN0b20tc3dpdGNoIHtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXI7XG5cbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogLSgkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXIpO1xuICAgICAgd2lkdGg6ICRjdXN0b20tc3dpdGNoLXdpZHRoO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogY2FsYygjeygoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gMil9ICsgI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDJ9KTtcbiAgICAgIGxlZnQ6IGNhbGMoI3stKCRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlcil9ICsgI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDJ9KTtcbiAgICAgIHdpZHRoOiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTtcbiAgICAgIGhlaWdodDogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gLjE1cyBlYXNlLWluLW91dCwgJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkY3VzdG9tLXN3aXRjaC13aWR0aCAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gU2VsZWN0XG4vL1xuLy8gUmVwbGFjZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCBzZWxlY3Qgd2l0aCBhIGN1c3RvbSBvbmUsIG1vc3RseSBwdWxsZWQgZnJvbVxuLy8gaHR0cHM6Ly9wcmltZXIuZ2l0aHViLmlvLy5cbi8vXG5cbi5jdXN0b20tc2VsZWN0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAoJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkY3VzdG9tLXNlbGVjdC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGN1c3RvbS1zZWxlY3QtY29sb3I7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQ6ICRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tc2VsZWN0LWJnO1xuICBib3JkZXI6ICRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1cywgMCk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdyk7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3csICRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cblxuICAgICY6Oi1tcy12YWx1ZSB7XG4gICAgICAvLyBGb3IgdmlzdWFsIGNvbnNpc3RlbmN5IHdpdGggb3RoZXIgcGxhdGZvcm1zL2Jyb3dzZXJzLFxuICAgICAgLy8gc3VwcHJlc3MgdGhlIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAgIC8vIGluIElFIGFuZCAodW5kZXIgY2VydGFpbiBjb25kaXRpb25zKSBFZGdlLlxuICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTkzOTguXG4gICAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICAgIH1cbiAgfVxuXG4gICZbbXVsdGlwbGVdLFxuICAmW3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc7XG4gIH1cblxuICAvLyBIaWRlcyB0aGUgZGVmYXVsdCBjYXJldCBpbiBJRTExXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmN1c3RvbS1zZWxlY3Qtc20ge1xuICBoZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWhlaWdodC1zbTtcbiAgcGFkZGluZy10b3A6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1ib3R0b206ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUtc20pO1xufVxuXG4uY3VzdG9tLXNlbGVjdC1sZyB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LWxnO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1sZyk7XG59XG5cblxuLy8gRmlsZVxuLy9cbi8vIEN1c3RvbSBmaWxlIGlucHV0LlxuXG4uY3VzdG9tLWZpbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBtYXJnaW46IDA7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJjpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgJjpkaXNhYmxlZCB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1maWxlLWRpc2FibGVkLWJnO1xuICB9XG5cbiAgQGVhY2ggJGxhbmcsICR2YWx1ZSBpbiAkY3VzdG9tLWZpbGUtdGV4dCB7XG4gICAgJjpsYW5nKCN7JGxhbmd9KSB+IC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJHZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIH4gLmN1c3RvbS1maWxlLWxhYmVsW2RhdGEtYnJvd3NlXTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1icm93c2UpO1xuICB9XG59XG5cbi5jdXN0b20tZmlsZS1sYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBwYWRkaW5nOiAkY3VzdG9tLWZpbGUtcGFkZGluZy15ICRjdXN0b20tZmlsZS1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkY3VzdG9tLWZpbGUtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkY3VzdG9tLWZpbGUtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkY3VzdG9tLWZpbGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZmlsZS1iZztcbiAgYm9yZGVyOiAkY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tZmlsZS1ib3gtc2hhZG93KTtcblxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI7XG4gICAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICAgIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICRjdXN0b20tZmlsZS1idXR0b24tY29sb3I7XG4gICAgY29udGVudDogXCJCcm93c2VcIjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWZpbGUtYnV0dG9uLWJnKTtcbiAgICBib3JkZXItbGVmdDogaW5oZXJpdDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgMCk7XG4gIH1cbn1cblxuLy8gUmFuZ2Vcbi8vXG4vLyBTdHlsZSByYW5nZSBpbnB1dHMgdGhlIHNhbWUgYWNyb3NzIGJyb3dzZXJzLiBWZW5kb3Itc3BlY2lmaWMgcnVsZXMgZm9yIHBzZXVkb1xuLy8gZWxlbWVudHMgY2Fubm90IGJlIG1peGVkLiBBcyBzdWNoLCB0aGVyZSBhcmUgbm8gc2hhcmVkIHN0eWxlcyBmb3IgZm9jdXMgb3Jcbi8vIGFjdGl2ZSBzdGF0ZXMgb24gcHJlZml4ZWQgc2VsZWN0b3JzLlxuXG4uY3VzdG9tLXJhbmdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygjeyRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0fSArICN7JGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoICogMn0pO1xuICBwYWRkaW5nOiAwOyAvLyBOZWVkIHRvIHJlc2V0IHBhZGRpbmdcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcblxuICAgIC8vIFBzZXVkby1lbGVtZW50cyBtdXN0IGJlIHNwbGl0IGFjcm9zcyBtdWx0aXBsZSBydWxlc2V0cyB0byBoYXZlIGFuIGVmZmVjdC5cbiAgICAvLyBObyBib3gtc2hhZG93KCkgbWl4aW4gZm9yIGZvY3VzIGFjY2Vzc2liaWxpdHkuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgICAmOjotbW96LXJhbmdlLXRodW1iICAgICB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICAgICY6Oi1tcy10aHVtYiAgICAgICAgICAgIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gIH1cblxuICAmOjotbW96LWZvY3VzLW91dGVyIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBtYXJnaW4tdG9wOiAoJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQgLSAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodCkgLyAyOyAvLyBXZWJraXQgc3BlY2lmaWNcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50OyAvLyBXaHk/XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGaXJlZm94IHNwZWNpZmljP1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbXMtdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgbWFyZ2luLXRvcDogMDsgLy8gRWRnZSBzcGVjaWZpY1xuICAgIG1hcmdpbi1yaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOyAvLyBXb3JrYXJvdW5kIHRoYXQgb3ZlcmZsb3dlZCBib3gtc2hhZG93IGlzIGhpZGRlbi5cbiAgICBtYXJnaW4tbGVmdDogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOyAgLy8gV29ya2Fyb3VuZCB0aGF0IG92ZXJmbG93ZWQgYm94LXNoYWRvdyBpcyBoaWRkZW4uXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tcy10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci13aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQgLyAyO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tcy1maWxsLWxvd2VyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICY6Oi1tcy1maWxsLXVwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7IC8vIGFyYml0cmFyeT9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG5cbiAgICAmOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG5cbiAgICAmOjotbXMtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cblxuLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4uY3VzdG9tLWZpbGUtbGFiZWwsXG4uY3VzdG9tLXNlbGVjdCB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBLaWNrc3RhcnQgYW55IG5hdmlnYXRpb24gY29tcG9uZW50IHdpdGggYSBzZXQgb2Ygc3R5bGUgcmVzZXRzLiBXb3JrcyB3aXRoXG4vLyBgPG5hdj5gcyBvciBgPHVsPmBzLlxuXG4ubmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5uYXYtbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbmF2LWxpbmstcGFkZGluZy15ICRuYXYtbGluay1wYWRkaW5nLXg7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHRcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbn1cblxuLy9cbi8vIFRhYnNcbi8vXG5cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcblxuICAubmF2LWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLm5hdi1saW5rIHtcbiAgICBib3JkZXI6ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG5hdi10YWJzLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIC8vIE1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxuICAgIG1hcmdpbi10b3A6IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgIC8vIFJlbW92ZSB0aGUgdG9wIHJvdW5kZWQgY29ybmVycyBoZXJlIHNpbmNlIHRoZXJlIGlzIGEgaGFyZCBlZGdlIGFib3ZlIHRoZSBtZW51XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vL1xuLy8gUGlsbHNcbi8vXG5cbi5uYXYtcGlsbHMge1xuICAubmF2LWxpbmsge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdi1waWxscy1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5zaG93ID4gLm5hdi1saW5rIHtcbiAgICBjb2xvcjogJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnO1xuICB9XG59XG5cblxuLy9cbi8vIEp1c3RpZmllZCB2YXJpYW50c1xuLy9cblxuLm5hdi1maWxsIHtcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLm5hdi1qdXN0aWZpZWQge1xuICAubmF2LWl0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG5cbi8vIFRhYmJhYmxlIHRhYnNcbi8vXG4vLyBIaWRlIHRhYmJhYmxlIHBhbmVzIHRvIHN0YXJ0LCBzaG93IHRoZW0gd2hlbiBgLmFjdGl2ZWBcblxuLnRhYi1jb250ZW50IHtcbiAgPiAudGFiLXBhbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgPiAuYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLXdpZHRoOiAwOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjI3NDAjaXNzdWVjb21tZW50LTMwNTg2ODEwNlxuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1ib3JkZXItcmFkaXVzKTtcblxuICA+IGhyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICA+IC5saXN0LWdyb3VwOmZpcnN0LWNoaWxkIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gID4gLmxpc3QtZ3JvdXA6bGFzdC1jaGlsZCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxufVxuXG4uY2FyZC1ib2R5IHtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIGZvciBkZWNrcyBhbmQgZ3JvdXBzIHNvIHRoYXQgY2FyZCBibG9ja3MgdGFrZSB1cFxuICAvLyBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlLCBlbnN1cmluZyBmb290ZXJzIGFyZSBhbGlnbmVkIHRvIHRoZSBib3R0b20uXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteDtcbiAgY29sb3I6ICRjYXJkLWNvbG9yO1xufVxuXG4uY2FyZC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206ICRjYXJkLXNwYWNlci15O1xufVxuXG4uY2FyZC1zdWJ0aXRsZSB7XG4gIG1hcmdpbi10b3A6IC0kY2FyZC1zcGFjZXIteSAvIDI7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWxpbmsge1xuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgKyAuY2FyZC1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogJGNhcmQtc3BhY2VyLXg7XG4gIH1cbn1cblxuLy9cbi8vIE9wdGlvbmFsIHRleHR1YWwgY2Fwc1xuLy9cblxuLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlbW92ZXMgdGhlIGRlZmF1bHQgbWFyZ2luLWJvdHRvbSBvZiA8aE4+XG4gIGNvbG9yOiAkY2FyZC1jYXAtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAwIDApO1xuICB9XG5cbiAgKyAubGlzdC1ncm91cCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uY2FyZC1mb290ZXIge1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteSAkY2FyZC1zcGFjZXIteDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtY2FwLWJnO1xuICBib3JkZXItdG9wOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwIDAgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBIZWFkZXIgbmF2c1xuLy9cblxuLmNhcmQtaGVhZGVyLXRhYnMge1xuICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1zcGFjZXIteCAvIDI7XG4gIG1hcmdpbi1ib3R0b206IC0kY2FyZC1zcGFjZXIteTtcbiAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1zcGFjZXIteCAvIDI7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5jYXJkLWhlYWRlci1waWxscyB7XG4gIG1hcmdpbi1yaWdodDogLSRjYXJkLXNwYWNlci14IC8gMjtcbiAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1zcGFjZXIteCAvIDI7XG59XG5cbi8vIENhcmQgaW1hZ2Vcbi5jYXJkLWltZy1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6ICRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc7XG59XG5cbi5jYXJkLWltZyB7XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIENhcmQgaW1hZ2UgY2Fwc1xuLmNhcmQtaW1nLXRvcCB7XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gQ2FyZCBkZWNrXG5cbi5jYXJkLWRlY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1kZWNrLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIG1hcmdpbi1yaWdodDogLSRjYXJkLWRlY2stbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAtJGNhcmQtZGVjay1tYXJnaW47XG5cbiAgICAuY2FyZCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XG4gICAgICBmbGV4OiAxIDAgMCU7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZC1kZWNrLW1hcmdpbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIHRoZSBkZWZhdWx0XG4gICAgICBtYXJnaW4tbGVmdDogJGNhcmQtZGVjay1tYXJnaW47XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIENhcmQgZ3JvdXBzXG4vL1xuXG4uY2FyZC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICA+IC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1ncm91cC1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gICAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgICA+IC5jYXJkIHtcbiAgICAgIC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgZmxleDogMSAwIDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgKyAuY2FyZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgLy8gSGFuZGxlIHJvdW5kZWQgY29ybmVyc1xuICAgICAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBDb2x1bW5zXG4vL1xuXG4uY2FyZC1jb2x1bW5zIHtcbiAgLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWNvbHVtbnMtbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGNvbHVtbi1jb3VudDogJGNhcmQtY29sdW1ucy1jb3VudDtcbiAgICBjb2x1bW4tZ2FwOiAkY2FyZC1jb2x1bW5zLWdhcDtcbiAgICBvcnBoYW5zOiAxO1xuICAgIHdpZG93czogMTtcblxuICAgIC5jYXJkIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gRG9uJ3QgbGV0IHRoZW0gdmVydGljYWxseSBzcGFuIG11bHRpcGxlIGNvbHVtbnNcbiAgICAgIHdpZHRoOiAxMDAlOyAvLyBEb24ndCBsZXQgdGhlaXIgd2lkdGggY2hhbmdlXG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIEFjY29yZGlvblxuLy9cblxuLmFjY29yZGlvbiB7XG4gID4gLmNhcmQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgICAgLmNhcmQtaGVhZGVyOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIH1cblxuICAgICAgJjpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0kY2FyZC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG4iLCIuYnJlYWRjcnVtYiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogJGJyZWFkY3J1bWItcGFkZGluZy15ICRicmVhZGNydW1iLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyZWFkY3J1bWItYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5icmVhZGNydW1iLWl0ZW0ge1xuICAvLyBUaGUgc2VwYXJhdG9yIGJldHdlZW4gYnJlYWRjcnVtYnMgKGJ5IGRlZmF1bHQsIGEgZm9yd2FyZC1zbGFzaDogXCIvXCIpXG4gICsgLmJyZWFkY3J1bWItaXRlbSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyBTdXBwcmVzcyB1bmRlcmxpbmluZyBvZiB0aGUgc2VwYXJhdG9yIGluIG1vZGVybiBicm93c2Vyc1xuICAgICAgcGFkZGluZy1yaWdodDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nO1xuICAgICAgY29sb3I6ICRicmVhZGNydW1iLWRpdmlkZXItY29sb3I7XG4gICAgICBjb250ZW50OiAkYnJlYWRjcnVtYi1kaXZpZGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIElFOS0xMSBoYWNrIHRvIHByb3Blcmx5IGhhbmRsZSBoeXBlcmxpbmsgdW5kZXJsaW5lcyBmb3IgYnJlYWRjcnVtYnMgYnVpbHRcbiAgLy8gd2l0aG91dCBgPHVsPmBzLiBUaGUgYDo6YmVmb3JlYCBwc2V1ZG8tZWxlbWVudCBnZW5lcmF0ZXMgYW4gZWxlbWVudFxuICAvLyAqd2l0aGluKiB0aGUgLmJyZWFkY3J1bWItaXRlbSBhbmQgdGhlcmVieSBpbmhlcml0cyB0aGUgYHRleHQtZGVjb3JhdGlvbmAuXG4gIC8vXG4gIC8vIFRvIHRyaWNrIElFIGludG8gc3VwcHJlc3NpbmcgdGhlIHVuZGVybGluZSwgd2UgZ2l2ZSB0aGUgcHNldWRvLWVsZW1lbnQgYW5cbiAgLy8gdW5kZXJsaW5lIGFuZCB0aGVuIGltbWVkaWF0ZWx5IHJlbW92ZSBpdC5cbiAgKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4gICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmLmFjdGl2ZSB7XG4gICAgY29sb3I6ICRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjtcbiAgfVxufVxuIiwiLnBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoKTtcbn1cblxuLnBhZ2UtbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRwYWdpbmF0aW9uLXBhZGRpbmcteSAkcGFnaW5hdGlvbi1wYWRkaW5nLXg7XG4gIG1hcmdpbi1sZWZ0OiAtJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoO1xuICBsaW5lLWhlaWdodDogJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkcGFnaW5hdGlvbi1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYmc7XG4gIGJvcmRlcjogJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoIHNvbGlkICRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjtcblxuICAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIG91dGxpbmU6ICRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU7XG4gICAgYm94LXNoYWRvdzogJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxufVxuXG4ucGFnZS1pdGVtIHtcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICAmLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICYuZGlzYWJsZWQgLnBhZ2UtbGluayB7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIC8vIE9waW5pb25hdGVkOiByZW1vdmUgdGhlIFwiaGFuZFwiIGN1cnNvciBzZXQgcHJldmlvdXNseSBmb3IgLnBhZ2UtbGlua1xuICAgIGN1cnNvcjogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBTaXppbmdcbi8vXG5cbi5wYWdpbmF0aW9uLWxnIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZywgJHBhZ2luYXRpb24tcGFkZGluZy14LWxnLCAkZm9udC1zaXplLWxnLCAkbGluZS1oZWlnaHQtbGcsICRib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLnBhZ2luYXRpb24tc20ge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LXNtLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtc20sICRmb250LXNpemUtc20sICRsaW5lLWhlaWdodC1zbSwgJGJvcmRlci1yYWRpdXMtc20pO1xufVxuIiwiLy8gUGFnaW5hdGlvblxuXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLnBhZ2UtbGluayB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICB9XG5cbiAgLnBhZ2UtaXRlbSB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBSZXF1aXJlcyBvbmUgb2YgdGhlIGNvbnRleHR1YWwsIGNvbG9yIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGBjb2xvcmAgYW5kXG4vLyBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGJhZGdlLXBhZGRpbmcteSAkYmFkZ2UtcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJhZGdlLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkYmFkZ2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJhZGdlLXRyYW5zaXRpb24pO1xuXG4gIEBhdC1yb290IGEjeyZ9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gRW1wdHkgYmFkZ2VzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHlcbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLyBRdWljayBmaXggZm9yIGJhZGdlcyBpbiBidXR0b25zXG4uYnRuIC5iYWRnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xufVxuXG4vLyBQaWxsIGJhZGdlc1xuLy9cbi8vIE1ha2UgdGhlbSBleHRyYSByb3VuZGVkIHdpdGggYSBtb2RpZmllciB0byByZXBsYWNlIHYzJ3MgYmFkZ2VzLlxuXG4uYmFkZ2UtcGlsbCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRiYWRnZS1waWxsLXBhZGRpbmcteDtcbiAgcGFkZGluZy1sZWZ0OiAkYmFkZ2UtcGlsbC1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJhZGdlLXBpbGwtYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIENvbG9yc1xuLy9cbi8vIENvbnRleHR1YWwgdmFyaWF0aW9ucyAobGlua2VkIGJhZGdlcyBnZXQgZGFya2VyIG9uIDpob3ZlcikuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYmFkZ2UtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBiYWRnZS12YXJpYW50KCR2YWx1ZSk7XG4gIH1cbn1cbiIsIkBtaXhpbiBiYWRnZS12YXJpYW50KCRiZykge1xuICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZztcblxuICBAYXQtcm9vdCBhI3smfSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6IGNvbG9yLXlpcSgkYmcpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiZywgMTAlKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgb3V0bGluZTogMDtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRiYWRnZS1mb2N1cy13aWR0aCByZ2JhKCRiZywgLjUpO1xuICAgIH1cbiAgfVxufVxuIiwiLmp1bWJvdHJvbiB7XG4gIHBhZGRpbmc6ICRqdW1ib3Ryb24tcGFkZGluZyAoJGp1bWJvdHJvbi1wYWRkaW5nIC8gMik7XG4gIG1hcmdpbi1ib3R0b206ICRqdW1ib3Ryb24tcGFkZGluZztcbiAgY29sb3I6ICRqdW1ib3Ryb24tY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRqdW1ib3Ryb24tYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtbGcpO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBwYWRkaW5nOiAoJGp1bWJvdHJvbi1wYWRkaW5nICogMikgJGp1bWJvdHJvbi1wYWRkaW5nO1xuICB9XG59XG5cbi5qdW1ib3Ryb24tZmx1aWQge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG59XG4iLCIvLyBEaXNhYmxlIGFuaW1hdGlvbiBpZiB0cmFuc2l0aW9ucyBhcmUgZGlzYWJsZWRcbkBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gICAgZnJvbSB7IGJhY2tncm91bmQtcG9zaXRpb246ICRwcm9ncmVzcy1oZWlnaHQgMDsgfVxuICAgIHRvIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9XG4gIH1cbn1cblxuLnByb2dyZXNzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAkcHJvZ3Jlc3MtaGVpZ2h0O1xuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBmb3JjZSByb3VuZGVkIGNvcm5lcnMgYnkgY3JvcHBpbmcgaXRcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRwcm9ncmVzcy1mb250LXNpemUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHByb2dyZXNzLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRwcm9ncmVzcy1ib3gtc2hhZG93KTtcbn1cblxuLnByb2dyZXNzLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2xvcjogJHByb2dyZXNzLWJhci1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWJnO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbik7XG59XG5cbi5wcm9ncmVzcy1iYXItc3RyaXBlZCB7XG4gIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQoKTtcbiAgYmFja2dyb3VuZC1zaXplOiAkcHJvZ3Jlc3MtaGVpZ2h0ICRwcm9ncmVzcy1oZWlnaHQ7XG59XG5cbkBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgLnByb2dyZXNzLWJhci1hbmltYXRlZCB7XG4gICAgYW5pbWF0aW9uOiBwcm9ncmVzcy1iYXItc3RyaXBlcyAkcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc7XG5cbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cclxuLy8gIEJvb3RzdHJhcFxyXG4vLyAgX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXHJcblxyXG4kZW5hYmxlLWdyYWRpZW50czogZmFsc2U7XHJcbiRlbmFibGUtdmFsaWRhdGlvbi1pY29uczogZmFsc2U7XHJcbiRlbmFibGUtc2hhZG93czogZmFsc2U7XHJcblxyXG4kYm9keS1jb2xvcjogdGhlbWUtY29sb3IoJ3ByaW1hcnknKTtcclxuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcclxuXHJcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAwO1xyXG4kcHJvZ3Jlc3MtaGVpZ2h0OiByZW0oNCk7XHJcbiRwcm9ncmVzcy1iZzogZ3JheSg1NTApO1xyXG4kcHJvZ3Jlc3MtYmFyLWJnOiB0aGVtZS1jb2xvcigncHJpbWFyeScpO1xyXG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogMDtcclxuIiwiLm1lZGlhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi5tZWRpYS1ib2R5IHtcbiAgZmxleDogMTtcbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBFYXNpbHkgdXNhYmxlIG9uIDx1bD4sIDxvbD4sIG9yIDxkaXY+LlxuXG4ubGlzdC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLy8gTm8gbmVlZCB0byBzZXQgbGlzdC1zdHlsZTogbm9uZTsgc2luY2UgLmxpc3QtZ3JvdXAtaXRlbSBpcyBibG9jayBsZXZlbFxuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuXG4vLyBJbnRlcmFjdGl2ZSBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIGFuY2hvciBvciBidXR0b24gZWxlbWVudHMgaW5zdGVhZCBvZiBgbGlgcyBvciBgZGl2YHMgdG8gY3JlYXRlIGludGVyYWN0aXZlXG4vLyBsaXN0IGl0ZW1zLiBJbmNsdWRlcyBhbiBleHRyYSBgLmFjdGl2ZWAgbW9kaWZpZXIgY2xhc3MgZm9yIHNlbGVjdGVkIGl0ZW1zLlxuXG4ubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgYmVjb21lIDEwMCUgYnkgZGVmYXVsdCB0aG91Z2gpXG4gIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBpbmhlcml0KVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICB6LWluZGV4OiAxOyAvLyBQbGFjZSBob3Zlci9mb2N1cyBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtaG92ZXItYmc7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZztcbiAgfVxufVxuXG5cbi8vIEluZGl2aWR1YWwgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBvbiBgbGlgcyBvciBgZGl2YHMgd2l0aGluIHRoZSBgLmxpc3QtZ3JvdXBgIHBhcmVudC5cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15ICRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14O1xuICAvLyBQbGFjZSB0aGUgYm9yZGVyIG9uIHRoZSBsaXN0IGl0ZW1zIGFuZCBuZWdhdGl2ZSBtYXJnaW4gdXAgZm9yIGJldHRlciBzdHlsaW5nXG4gIG1hcmdpbi1ib3R0b206IC0kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gIGNvbG9yOiAkbGlzdC1ncm91cC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYmc7XG4gIGJvcmRlcjogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoIHNvbGlkICRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1iZztcbiAgfVxuXG4gIC8vIEluY2x1ZGUgYm90aCBoZXJlIGZvciBgPGE+YHMgYW5kIGA8YnV0dG9uPmBzXG4gICYuYWN0aXZlIHtcbiAgICB6LWluZGV4OiAyOyAvLyBQbGFjZSBhY3RpdmUgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuXG5cbi8vIEhvcml6b250YWxcbi8vXG4vLyBDaGFuZ2UgdGhlIGxheW91dCBvZiBsaXN0IGdyb3VwIGl0ZW1zIGZyb20gdmVydGljYWwgKGRlZmF1bHQpIHRvIGhvcml6b250YWwuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5saXN0LWdyb3VwLWhvcml6b250YWwjeyRpbmZpeH0ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLSRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoMCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBGbHVzaCBsaXN0IGl0ZW1zXG4vL1xuLy8gUmVtb3ZlIGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMgdG8ga2VlcCBsaXN0IGdyb3VwIGl0ZW1zIGVkZ2UtdG8tZWRnZS4gTW9zdFxuLy8gdXNlZnVsIHdpdGhpbiBvdGhlciBjb21wb25lbnRzIChlLmcuLCBjYXJkcykuXG5cbi5saXN0LWdyb3VwLWZsdXNoIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogLSRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgfVxuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQ29udGV4dHVhbCB2YXJpYW50c1xuLy9cbi8vIEFkZCBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0ZXh0IGFuZCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGluZGl2aWR1YWwgaXRlbXMuXG4vLyBPcmdhbml6YXRpb25hbGx5LCB0aGlzIG11c3QgY29tZSBhZnRlciB0aGUgYDpob3ZlcmAgc3RhdGVzLlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJGNvbG9yLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsIC05KSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCA2KSk7XG59XG4iLCIvLyBMaXN0IEdyb3Vwc1xuXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGNvbG9yKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gICAgJi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgICB9XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5jbG9zZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjbG9zZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGNsb3NlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgdGV4dC1zaGFkb3c6ICRjbG9zZS10ZXh0LXNoYWRvdztcbiAgb3BhY2l0eTogLjU7XG5cbiAgLy8gT3ZlcnJpZGUgPGE+J3MgaG92ZXIgc3R5bGVcbiAgQGluY2x1ZGUgaG92ZXIge1xuICAgIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgb3BhY2l0eTogLjc1O1xuICAgIH1cbiAgfVxufVxuXG4vLyBBZGRpdGlvbmFsIHByb3BlcnRpZXMgZm9yIGJ1dHRvbiB2ZXJzaW9uXG4vLyBpT1MgcmVxdWlyZXMgdGhlIGJ1dHRvbiBlbGVtZW50IGluc3RlYWQgb2YgYW4gYW5jaG9yIHRhZy5cbi8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbmJ1dHRvbi5jbG9zZSB7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzIG9uIGA8YT5gIGVsZW1lbnRzXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbmEuY2xvc2UuZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbiIsIi8vIC5tb2RhbC1vcGVuICAgICAgLSBib2R5IGNsYXNzIGZvciBraWxsaW5nIHRoZSBzY3JvbGxcbi8vIC5tb2RhbCAgICAgICAgICAgLSBjb250YWluZXIgdG8gc2Nyb2xsIHdpdGhpblxuLy8gLm1vZGFsLWRpYWxvZyAgICAtIHBvc2l0aW9uaW5nIHNoZWxsIGZvciB0aGUgYWN0dWFsIG1vZGFsXG4vLyAubW9kYWwtY29udGVudCAgIC0gYWN0dWFsIG1vZGFsIHcvIGJnIGFuZCBjb3JuZXJzIGFuZCBzdHVmZlxuXG5cbi5tb2RhbC1vcGVuIHtcbiAgLy8gS2lsbCB0aGUgc2Nyb2xsIG9uIHRoZSBib2R5XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLm1vZGFsIHtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG4vLyBDb250YWluZXIgdGhhdCB0aGUgbW9kYWwgc2Nyb2xscyB3aXRoaW5cbi5tb2RhbCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAvLyBQcmV2ZW50IENocm9tZSBvbiBXaW5kb3dzIGZyb20gYWRkaW5nIGEgZm9jdXMgb3V0bGluZS4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMDk1MS5cbiAgb3V0bGluZTogMDtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvbid0IHVzZSBgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO2AgZHVlIHRvIGFcbiAgLy8gZ25hcmx5IGlPUyBTYWZhcmkgYnVnOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU4MzQyXG4gIC8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTc2OTVcbn1cblxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbjtcbiAgLy8gYWxsb3cgY2xpY2tzIHRvIHBhc3MgdGhyb3VnaCBmb3IgY3VzdG9tIGNsaWNrIGhhbmRsaW5nIHRvIGNsb3NlIG1vZGFsXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXG4gIC5tb2RhbC5mYWRlICYge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJG1vZGFsLXRyYW5zaXRpb24pO1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLWZhZGUtdHJhbnNmb3JtO1xuICB9XG4gIC5tb2RhbC5zaG93ICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNob3ctdHJhbnNmb3JtO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gIGRpc3BsYXk6IGZsZXg7IC8vIElFMTAvMTFcbiAgbWF4LWhlaWdodDogY2FsYygxMDAlIC0gI3skbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDJ9KTtcblxuICAubW9kYWwtY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtICN7JG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyfSk7IC8vIElFMTAvMTFcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLm1vZGFsLWhlYWRlcixcbiAgLm1vZGFsLWZvb3RlciB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gIH1cblxuICAubW9kYWwtYm9keSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gI3skbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDJ9KTtcblxuICAvLyBFbnN1cmUgYG1vZGFsLWRpYWxvZy1jZW50ZXJlZGAgZXh0ZW5kcyB0aGUgZnVsbCBoZWlnaHQgb2YgdGhlIHZpZXcgKElFMTAvMTEpXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IC8vIElFMTBcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAjeyRtb2RhbC1kaWFsb2ctbWFyZ2luICogMn0pO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICAvLyBFbnN1cmUgYC5tb2RhbC1ib2R5YCBzaG93cyBzY3JvbGxiYXIgKElFMTAvMTEpXG4gICYubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQWN0dWFsIG1vZGFsXG4ubW9kYWwtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDEwMCU7IC8vIEVuc3VyZSBgLm1vZGFsLWNvbnRlbnRgIGV4dGVuZHMgdGhlIGZ1bGwgd2lkdGggb2YgdGhlIHBhcmVudCBgLm1vZGFsLWRpYWxvZ2BcbiAgLy8gY291bnRlcmFjdCB0aGUgcG9pbnRlci1ldmVudHM6IG5vbmU7IGluIHRoZSAubW9kYWwtZGlhbG9nXG4gIGNvbG9yOiAkbW9kYWwtY29udGVudC1jb2xvcjtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1jb250ZW50LWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cyk7XG4gIC8vIFJlbW92ZSBmb2N1cyBvdXRsaW5lIGZyb20gb3BlbmVkIG1vZGFsXG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIE1vZGFsIGJhY2tncm91bmRcbi5tb2RhbC1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsLWJhY2tkcm9wO1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1iYWNrZHJvcC1iZztcblxuICAvLyBGYWRlIGZvciBiYWNrZHJvcFxuICAmLmZhZGUgeyBvcGFjaXR5OiAwOyB9XG4gICYuc2hvdyB7IG9wYWNpdHk6ICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OyB9XG59XG5cbi8vIE1vZGFsIGhlYWRlclxuLy8gVG9wIHNlY3Rpb24gb2YgdGhlIG1vZGFsIHcvIHRpdGxlIGFuZCBkaXNtaXNzXG4ubW9kYWwtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IC8vIHNvIHRoZSBjbG9zZSBidG4gYWx3YXlzIHN0YXlzIG9uIHRoZSB1cHBlciByaWdodCBjb3JuZXJcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBQdXQgbW9kYWwgaGVhZGVyIGVsZW1lbnRzICh0aXRsZSBhbmQgZGlzbWlzcykgb24gb3Bwb3NpdGUgZW5kc1xuICBwYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmc7XG4gIGJvcmRlci1ib3R0b206ICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzKTtcblxuICAuY2xvc2Uge1xuICAgIHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZztcbiAgICAvLyBhdXRvIG9uIHRoZSBsZWZ0IGZvcmNlIGljb24gdG8gdGhlIHJpZ2h0IGV2ZW4gd2hlbiB0aGVyZSBpcyBubyAubW9kYWwtdGl0bGVcbiAgICBtYXJnaW46ICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkpICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXgpICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkpIGF1dG87XG4gIH1cbn1cblxuLy8gVGl0bGUgdGV4dCB3aXRoaW4gaGVhZGVyXG4ubW9kYWwtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIHNvIHRoYXQgdGhlIGJvZHkgdGFrZSB1cCBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlXG4gIC8vIHdoZW4gc2hvdWxkIHRoZXJlIGJlIGEgZml4ZWQgaGVpZ2h0IG9uIGAubW9kYWwtZGlhbG9nYC5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xufVxuXG4vLyBGb290ZXIgKGZvciBhY3Rpb25zKVxuLm1vZGFsLWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIHZlcnRpY2FsbHkgY2VudGVyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IC8vIFJpZ2h0IGFsaWduIGJ1dHRvbnMgd2l0aCBmbGV4IHByb3BlcnR5IGJlY2F1c2UgdGV4dC1hbGlnbiBkb2Vzbid0IHdvcmsgb24gZmxleCBpdGVtc1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZztcbiAgYm9yZGVyLXRvcDogJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMpO1xuXG4gIC8vIEVhc2lseSBwbGFjZSBtYXJnaW4gYmV0d2VlbiBmb290ZXIgZWxlbWVudHNcbiAgPiA6bm90KDpmaXJzdC1jaGlsZCkgeyBtYXJnaW4tbGVmdDogLjI1cmVtOyB9XG4gID4gOm5vdCg6bGFzdC1jaGlsZCkgeyBtYXJnaW4tcmlnaHQ6IC4yNXJlbTsgfVxufVxuXG4vLyBNZWFzdXJlIHNjcm9sbGJhciB3aWR0aCBmb3IgcGFkZGluZyBib2R5IGR1cmluZyBtb2RhbCBzaG93L2hpZGVcbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBvdmVyZmxvdzogc2Nyb2xsO1xufVxuXG4vLyBTY2FsZSB1cCB0aGUgbW9kYWxcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgLy8gQXV0b21hdGljYWxseSBzZXQgbW9kYWwncyB3aWR0aCBmb3IgbGFyZ2VyIHZpZXdwb3J0c1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXgtd2lkdGg6ICRtb2RhbC1tZDtcbiAgICBtYXJnaW46ICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgYXV0bztcbiAgfVxuXG4gIC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gICAgbWF4LWhlaWdodDogY2FsYygxMDAlIC0gI3skbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMn0pO1xuXG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtICN7JG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDJ9KTtcbiAgICB9XG4gIH1cblxuICAubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSAjeyRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyfSk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gI3skbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMn0pO1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXApO1xuICB9XG5cbiAgLm1vZGFsLXNtIHsgbWF4LXdpZHRoOiAkbW9kYWwtc207IH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAubW9kYWwtbGcsXG4gIC5tb2RhbC14bCB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbGc7XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAubW9kYWwteGwgeyBtYXgtd2lkdGg6ICRtb2RhbC14bDsgfVxufVxuIiwiLy9cclxuLy8gIE1vZGFsIGNvbXBvbmVudFxyXG4vLyAgX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXHJcblxyXG4vLyAgQm9vdHN0cmFwXHJcbiRtb2RhbC1iYWNrZHJvcC1iZzogdGhlbWUtY29sb3IoJ3ByaW1hcnknKTtcclxuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6IDAuODtcclxuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogMDtcclxuJG1vZGFsLWRpYWxvZy1tYXJnaW46IDA7XHJcbiRtb2RhbC1tZDogbm9uZTtcclxuJG1vZGFsLWNvbnRlbnQtYmc6IHRoZW1lLWNvbG9yKCdwcmltYXJ5Jyk7XHJcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogMDtcclxuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogMDtcclxuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiByZW0oMTApIDA7XHJcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAwO1xyXG4kbW9kYWwtaW5uZXItcGFkZGluZzogcmVtKDEwKSAwO1xyXG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6IDEuMjtcclxuJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGg6IDA7XHJcbiRtb2RhbC1sZzogcmVtKDY3Nik7XHJcbiRtb2RhbC1kZWZhdWx0OiByZW0oNjAyKTtcclxuJG1vZGFsLXNtOiByZW0oNDgwKTtcclxuIiwiLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogJHRvb2x0aXAtbWFyZ2luO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCR0b29sdGlwLWZvbnQtc2l6ZSk7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSB0b29sdGlwJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgb3BhY2l0eTogMDtcblxuICAmLnNob3cgeyBvcGFjaXR5OiAkdG9vbHRpcC1vcGFjaXR5OyB9XG5cbiAgLmFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtdG9wIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLmFycm93IHtcbiAgICBib3R0b206IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1yaWdodCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtYm90dG9tIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLmFycm93IHtcbiAgICB0b3A6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1sZWZ0IHtcbiAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgLmFycm93IHtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWF1dG8ge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC10b3A7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1yaWdodDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1ib3R0b207XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWxlZnQ7XG4gIH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZy15ICR0b29sdGlwLXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b29sdGlwLWJvcmRlci1yYWRpdXMpO1xufVxuIiwiQG1peGluIHJlc2V0LXRleHQge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplIG9yIHdvcmQtd3JhcC5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbn1cbiIsIi8vXHJcbi8vICBUb29sdGlwIGNvbXBvbmVudFxyXG4vLyAgX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXHJcblxyXG4vLyAgQm9vdHN0cmFwXHJcbiR0b29sdGlwLW9wYWNpdHk6IDE7XHJcbiR0b29sdGlwLW1heC13aWR0aDogcmVtKDI2MCk7XHJcbiR0b29sdGlwLXBhZGRpbmcteTogcmVtKDEzKTtcclxuJHRvb2x0aXAtcGFkZGluZy14OiByZW0oMTMpO1xyXG4kdG9vbHRpcC1jb2xvcjogdGhlbWUtY29sb3IoJ3ByaW1hcnknKTtcclxuJHRvb2x0aXAtYmc6IGNvbG9yKCd3aGl0ZScpO1xyXG4kdG9vbHRpcC1ib3JkZXItcmFkaXVzOiByZW0oMyk7XHJcbiIsIi5wb3BvdmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtcG9wb3ZlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogJHBvcG92ZXItbWF4LXdpZHRoO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRwb3BvdmVyLWZvbnQtc2l6ZSk7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSBwb3BvdmVyJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRwb3BvdmVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcG9wb3Zlci1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkcG9wb3Zlci1ib3gtc2hhZG93KTtcblxuICAuYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgbWFyZ2luOiAwICRib3JkZXItcmFkaXVzLWxnO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci10b3Age1xuICBtYXJnaW4tYm90dG9tOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIGJvdHRvbTogY2FsYygoI3skcG9wb3Zlci1hcnJvdy1oZWlnaHR9ICsgI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9KSAqIC0xKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLXJpZ2h0IHtcbiAgbWFyZ2luLWxlZnQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICA+IC5hcnJvdyB7XG4gICAgbGVmdDogY2FsYygoI3skcG9wb3Zlci1hcnJvdy1oZWlnaHR9ICsgI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9KSAqIC0xKTtcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luOiAkYm9yZGVyLXJhZGl1cy1sZyAwOyAvLyBtYWtlIHN1cmUgdGhlIGFycm93IGRvZXMgbm90IHRvdWNoIHRoZSBwb3BvdmVyJ3Mgcm91bmRlZCBjb3JuZXJzXG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGxlZnQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1ib3R0b20ge1xuICBtYXJnaW4tdG9wOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIHRvcDogY2FsYygoI3skcG9wb3Zlci1hcnJvdy1oZWlnaHR9ICsgI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9KSAqIC0xKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdG9wOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhpcyB3aWxsIHJlbW92ZSB0aGUgcG9wb3Zlci1oZWFkZXIncyBib3JkZXIganVzdCBiZWxvdyB0aGUgYXJyb3dcbiAgLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LXdpZHRoIC8gMjtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1ib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCAkcG9wb3Zlci1oZWFkZXItYmc7XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItbGVmdCB7XG4gIG1hcmdpbi1yaWdodDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICByaWdodDogY2FsYygoI3skcG9wb3Zlci1hcnJvdy1oZWlnaHR9ICsgI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9KSAqIC0xKTtcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luOiAkYm9yZGVyLXJhZGl1cy1sZyAwOyAvLyBtYWtlIHN1cmUgdGhlIGFycm93IGRvZXMgbm90IHRvdWNoIHRoZSBwb3BvdmVyJ3Mgcm91bmRlZCBjb3JuZXJzXG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1hdXRvIHtcbiAgJlt4LXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItdG9wO1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItcmlnaHQ7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItYm90dG9tO1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1sZWZ0O1xuICB9XG59XG5cblxuLy8gT2Zmc2V0IHRoZSBwb3BvdmVyIHRvIGFjY291bnQgZm9yIHRoZSBwb3BvdmVyIGFycm93XG4ucG9wb3Zlci1oZWFkZXIge1xuICBwYWRkaW5nOiAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy15ICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlc2V0IHRoZSBkZWZhdWx0IGZyb20gUmVib290XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICBjb2xvcjogJHBvcG92ZXItaGVhZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci1oZWFkZXItYmc7XG4gIGJvcmRlci1ib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCBkYXJrZW4oJHBvcG92ZXItaGVhZGVyLWJnLCA1JSk7XG4gICRvZmZzZXQtYm9yZGVyLXdpZHRoOiBjYWxjKCN7JGJvcmRlci1yYWRpdXMtbGd9IC0gI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9KTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG9mZnNldC1ib3JkZXItd2lkdGgpO1xuXG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnBvcG92ZXItYm9keSB7XG4gIHBhZGRpbmc6ICRwb3BvdmVyLWJvZHktcGFkZGluZy15ICRwb3BvdmVyLWJvZHktcGFkZGluZy14O1xuICBjb2xvcjogJHBvcG92ZXItYm9keS1jb2xvcjtcbn1cbiIsIi8vIE5vdGVzIG9uIHRoZSBjbGFzc2VzOlxuLy9cbi8vIDEuIC5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHNob3VsZCBpZGVhbGx5IGJlIHBhbi15ICh0byBhbGxvdyBmb3IgdXNlcnMgdG8gc2Nyb2xsIHZlcnRpY2FsbHkpXG4vLyAgICBldmVuIHdoZW4gdGhlaXIgc2Nyb2xsIGFjdGlvbiBzdGFydGVkIG9uIGEgY2Fyb3VzZWwsIGJ1dCBmb3IgY29tcGF0aWJpbGl0eSAod2l0aCBGaXJlZm94KVxuLy8gICAgd2UncmUgcHJldmVudGluZyBhbGwgYWN0aW9ucyBpbnN0ZWFkXG4vLyAyLiBUaGUgLmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmNhcm91c2VsLWl0ZW0tcmlnaHQgaXMgdXNlZCB0byBpbmRpY2F0ZSB3aGVyZVxuLy8gICAgdGhlIGFjdGl2ZSBzbGlkZSBpcyBoZWFkaW5nLlxuLy8gMy4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtIGlzIHRoZSBjdXJyZW50IHNsaWRlLlxuLy8gNC4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCBpcyB0aGUgY3VycmVudFxuLy8gICAgc2xpZGUgaW4gaXRzIGluLXRyYW5zaXRpb24gc3RhdGUuIE9ubHkgb25lIG9mIHRoZXNlIG9jY3VycyBhdCBhIHRpbWUuXG4vLyA1LiAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLXJpZ2h0XG4vLyAgICBpcyB0aGUgdXBjb21pbmcgc2xpZGUgaW4gdHJhbnNpdGlvbi5cblxuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2Fyb3VzZWwucG9pbnRlci1ldmVudCB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG5cbi5jYXJvdXNlbC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtdHJhbnNpdGlvbik7XG59XG5cbi5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbi5jYXJvdXNlbC1pdGVtLW5leHQsXG4uY2Fyb3VzZWwtaXRlbS1wcmV2IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYXJvdXNlbC1pdGVtLW5leHQ6bm90KC5jYXJvdXNlbC1pdGVtLWxlZnQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1wcmV2Om5vdCguY2Fyb3VzZWwtaXRlbS1yaWdodCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSB0cmFuc2l0aW9uc1xuLy9cblxuLmNhcm91c2VsLWZhZGUge1xuICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbiAgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQsXG4gIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gICAgei1pbmRleDogMTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQsXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gICAgei1pbmRleDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMHMgJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gb3BhY2l0eSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGVmdC9yaWdodCBjb250cm9scyBmb3IgbmF2XG4vL1xuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDE7XG4gIC8vIFVzZSBmbGV4IGZvciBhbGlnbm1lbnQgKDEtMylcbiAgZGlzcGxheTogZmxleDsgLy8gMS4gYWxsb3cgZmxleCBzdHlsZXNcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gMi4gdmVydGljYWxseSBjZW50ZXIgY29udGVudHNcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IC8vIDMuIGhvcml6b250YWxseSBjZW50ZXIgY29udGVudHNcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uKTtcblxuICAvLyBIb3Zlci9mb2N1cyBzdGF0ZVxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYge1xuICBsZWZ0OiAwO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICByaWdodDogMDtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKTtcbiAgfVxufVxuXG4vLyBJY29ucyBmb3Igd2l0aGluXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGJhY2tncm91bmQ6IG5vLXJlcGVhdCA1MCUgLyAxMDAlIDEwMCU7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAkY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAkY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc7XG59XG5cblxuLy8gT3B0aW9uYWwgaW5kaWNhdG9yIHBpcHNcbi8vXG4vLyBBZGQgYW4gb3JkZXJlZCBsaXN0IHdpdGggdGhlIGZvbGxvd2luZyBjbGFzcyBhbmQgYWRkIGEgbGlzdCBpdGVtIGZvciBlYWNoXG4vLyBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIG92ZXJyaWRlIDxvbD4gZGVmYXVsdFxuICAvLyBVc2UgdGhlIC5jYXJvdXNlbC1jb250cm9sJ3Mgd2lkdGggYXMgbWFyZ2luIHNvIHdlIGRvbid0IG92ZXJsYXkgdGhvc2VcbiAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIGxpIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogJGNhcm91c2VsLWluZGljYXRvci13aWR0aDtcbiAgICBoZWlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgLy8gVXNlIHRyYW5zcGFyZW50IGJvcmRlcnMgdG8gaW5jcmVhc2UgdGhlIGhpdCBhcmVhIGJ5IDEwcHggb24gdG9wIGFuZCBib3R0b20uXG4gICAgYm9yZGVyLXRvcDogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgLmFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5cbi8vIE9wdGlvbmFsIGNhcHRpb25zXG4vL1xuLy9cblxuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAvIDI7XG4gIGJvdHRvbTogMjBweDtcbiAgbGVmdDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgLyAyO1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBjb2xvcjogJGNhcm91c2VsLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiIsIkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uYWxpZ24tYmFzZWxpbmUgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsgfSAvLyBCcm93c2VyIGRlZmF1bHRcbi5hbGlnbi10b3AgICAgICAgICB7IHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDsgfVxuLmFsaWduLW1pZGRsZSAgICAgIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tYm90dG9tICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LWJvdHRvbSB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC10b3AgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3AgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcblxuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIGEjeyRwYXJlbnR9LFxuICBidXR0b24jeyRwYXJlbnR9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBiZy1ncmFkaWVudC12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXggIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSBiZy12YXJpYW50KFwiLmJnLSN7JGNvbG9yfVwiLCAkdmFsdWUpO1xufVxuXG5AaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICBAaW5jbHVkZSBiZy1ncmFkaWVudC12YXJpYW50KFwiLmJnLWdyYWRpZW50LSN7JGNvbG9yfVwiLCAkdmFsdWUpO1xuICB9XG59XG5cbi5iZy13aGl0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4uYmctdHJhbnNwYXJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktYmxhY2tsaXN0LCBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIEJvcmRlclxuLy9cblxuLmJvcmRlciAgICAgICAgIHsgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci10b3AgICAgIHsgYm9yZGVyLXRvcDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItcmlnaHQgICB7IGJvcmRlci1yaWdodDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItYm90dG9tICB7IGJvcmRlci1ib3R0b206ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWxlZnQgICAgeyBib3JkZXItbGVmdDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cblxuLmJvcmRlci0wICAgICAgICB7IGJvcmRlcjogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXRvcC0wICAgIHsgYm9yZGVyLXRvcDogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXJpZ2h0LTAgIHsgYm9yZGVyLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItYm90dG9tLTAgeyBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItbGVmdC0wICAgeyBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50OyB9XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYm9yZGVyLSN7JGNvbG9yfSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdmFsdWUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uYm9yZGVyLXdoaXRlIHtcbiAgYm9yZGVyLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLy9cbi8vIEJvcmRlci1yYWRpdXNcbi8vXG5cbi5yb3VuZGVkLXNtIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc20gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC10b3Age1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcmlnaHQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1sZWZ0IHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGcge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sZyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcGlsbCB7XG4gIGJvcmRlci1yYWRpdXM6ICRyb3VuZGVkLXBpbGwgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtMCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciBjb21tb24gYGRpc3BsYXlgIHZhbHVlc1xuLy9cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgQGVhY2ggJHZhbHVlIGluICRkaXNwbGF5cyB7XG4gICAgICAuZCN7JGluZml4fS0jeyR2YWx1ZX0geyBkaXNwbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBVdGlsaXRpZXMgZm9yIHRvZ2dsaW5nIGBkaXNwbGF5YCBpbiBwcmludFxuLy9cblxuQG1lZGlhIHByaW50IHtcbiAgQGVhY2ggJHZhbHVlIGluICRkaXNwbGF5cyB7XG4gICAgLmQtcHJpbnQtI3skdmFsdWV9IHsgZGlzcGxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gQ3JlZGl0OiBOaWNvbGFzIEdhbGxhZ2hlciBhbmQgU1VJVCBDU1MuXG5cbi5lbWJlZC1yZXNwb25zaXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgLmVtYmVkLXJlc3BvbnNpdmUtaXRlbSxcbiAgaWZyYW1lLFxuICBlbWJlZCxcbiAgb2JqZWN0LFxuICB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbkBlYWNoICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpbyBpbiAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zIHtcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXg6IG50aCgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8sIDEpO1xuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teTogbnRoKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpbywgMik7XG5cbiAgLmVtYmVkLXJlc3BvbnNpdmUtI3skZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teH1ieSN7JGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXl9IHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgcGFkZGluZy10b3A6IHBlcmNlbnRhZ2UoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXkgLyAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teCk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gRmxleCB2YXJpYXRpb25cbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciBhZGRpdGlvbmFsIGZsZXggYWxpZ25tZW50IG9wdGlvbnMuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbGV4I3skaW5maXh9LXJvdyAgICAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uICAgICAgICAgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1yb3ctcmV2ZXJzZSAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uLXJldmVyc2UgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDsgfVxuXG4gICAgLmZsZXgjeyRpbmZpeH0td3JhcCAgICAgICAgIHsgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ub3dyYXAgICAgICAgeyBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0td3JhcC1yZXZlcnNlIHsgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWZpbGwgICAgICAgICB7IGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ncm93LTAgICAgICAgeyBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWdyb3ctMSAgICAgICB7IGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tc2hyaW5rLTAgICAgIHsgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0xICAgICB7IGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7IH1cblxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1lbmQgICAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1hcm91bmQgIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdGFydCAgIHsgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1iZXR3ZWVuIHsgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RyZXRjaCB7IGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYXV0byAgICAgeyBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWVuZCAgICAgIHsgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdHJldGNoICB7IGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsb2F0I3skaW5maXh9LWxlZnQgIHsgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfVxuICAgIC5mbG9hdCN7JGluZml4fS1yaWdodCB7IGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLmZsb2F0I3skaW5maXh9LW5vbmUgIHsgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJHZhbHVlIGluICRvdmVyZmxvd3Mge1xuICAub3ZlcmZsb3ctI3skdmFsdWV9IHsgb3ZlcmZsb3c6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gQ29tbW9uIHZhbHVlc1xuQGVhY2ggJHBvc2l0aW9uIGluICRwb3NpdGlvbnMge1xuICAucG9zaXRpb24tI3skcG9zaXRpb259IHsgcG9zaXRpb246ICRwb3NpdGlvbiAhaW1wb3J0YW50OyB9XG59XG5cbi8vIFNob3J0aGFuZFxuXG4uZml4ZWQtdG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uc3RpY2t5LXRvcCB7XG4gIEBzdXBwb3J0cyAocG9zaXRpb246IHN0aWNreSkge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtc3RpY2t5O1xuICB9XG59XG4iLCIvL1xuLy8gU2NyZWVucmVhZGVyc1xuLy9cblxuLnNyLW9ubHkge1xuICBAaW5jbHVkZSBzci1vbmx5KCk7XG59XG5cbi5zci1vbmx5LWZvY3VzYWJsZSB7XG4gIEBpbmNsdWRlIHNyLW9ubHktZm9jdXNhYmxlKCk7XG59XG4iLCIvLyBPbmx5IGRpc3BsYXkgY29udGVudCB0byBzY3JlZW4gcmVhZGVyc1xuLy9cbi8vIFNlZTogaHR0cHM6Ly9hMTF5cHJvamVjdC5jb20vcG9zdHMvaG93LXRvLWhpZGUtY29udGVudC9cbi8vIFNlZTogaHR0cHM6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG5cbkBtaXhpbiBzci1vbmx5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUge1xuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgY2xpcDogYXV0bztcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLnNoYWRvdy1zbSB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93LXNtICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3cgeyBib3gtc2hhZG93OiAkYm94LXNoYWRvdyAhaW1wb3J0YW50OyB9XG4uc2hhZG93LWxnIHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctbGcgIWltcG9ydGFudDsgfVxuLnNoYWRvdy1ub25lIHsgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gV2lkdGggYW5kIGhlaWdodFxuXG5AZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAod2lkdGg6IHcsIGhlaWdodDogaCkge1xuICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc2l6ZXMge1xuICAgIC4jeyRhYmJyZXZ9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICB9XG59XG5cbi5tdy0xMDAgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuLm1oLTEwMCB7IG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4vLyBWaWV3cG9ydCBhZGRpdGlvbmFsIGhlbHBlcnNcblxuLm1pbi12dy0xMDAgeyBtaW4td2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7IH1cbi5taW4tdmgtMTAwIHsgbWluLWhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuXG4udnctMTAwIHsgd2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7IH1cbi52aC0xMDAgeyBoZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7IH1cbiIsIi8vXG4vLyBTdHJldGNoZWQgbGlua1xuLy9cblxuLnN0cmV0Y2hlZC1saW5rIHtcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTtcbiAgICAvLyBKdXN0IGluIGNhc2UgYHBvaW50ZXItZXZlbnRzOiBub25lYCBpcyBzZXQgb24gYSBwYXJlbnRcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIC8vIElFMTAgYnVnZml4LCBzZWUgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTY5NDc5NjcvaWUxMC1ob3Zlci1wc2V1ZG8tY2xhc3MtZG9lc250LXdvcmstd2l0aG91dC1iYWNrZ3JvdW5kLWNvbG9yXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIE1hcmdpbiBhbmQgUGFkZGluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAobWFyZ2luOiBtLCBwYWRkaW5nOiBwKSB7XG4gICAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG4gICAgICAgIC4jeyRhYmJyZXZ9I3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAuI3skYWJicmV2fXQjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tdG9wOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1yI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1iI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWJvdHRvbTogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9bCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW5zIChlLmcuLCB3aGVyZSBgLm1iLW4xYCBpcyBuZWdhdGl2ZSB2ZXJzaW9uIG9mIGAubWItMWApXG4gICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuICAgICAgQGlmICRzaXplICE9IDAge1xuICAgICAgICAubSN7JGluZml4fS1uI3skc2l6ZX0geyBtYXJnaW46IC0kbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLm10I3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm15I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubXIjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXgjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1iI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm15I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubWwjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXgjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNvbWUgc3BlY2lhbCBtYXJnaW4gdXRpbHNcbiAgICAubSN7JGluZml4fS1hdXRvIHsgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAubXQjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tciN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWIjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tbCN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFRleHRcbi8vXG5cbi50ZXh0LW1vbm9zcGFjZSB7IGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFpbXBvcnRhbnQ7IH1cblxuLy8gQWxpZ25tZW50XG5cbi50ZXh0LWp1c3RpZnkgIHsgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50OyB9XG4udGV4dC13cmFwICAgICB7IHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDsgfVxuLnRleHQtbm93cmFwICAgeyB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXRydW5jYXRlIHsgQGluY2x1ZGUgdGV4dC10cnVuY2F0ZTsgfVxuXG4vLyBSZXNwb25zaXZlIGFsaWdubWVudFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAudGV4dCN7JGluZml4fS1sZWZ0ICAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dCN7JGluZml4fS1yaWdodCAgeyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvblxuXG4udGV4dC1sb3dlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC11cHBlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC1jYXBpdGFsaXplIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDsgfVxuXG4vLyBXZWlnaHQgYW5kIGl0YWxpY3NcblxuLmZvbnQtd2VpZ2h0LWxpZ2h0ICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0ICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1saWdodGVyIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodGVyICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ub3JtYWwgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGQgICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGRlciAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlciAhaW1wb3J0YW50OyB9XG4uZm9udC1pdGFsaWMgICAgICAgICB7IGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50OyB9XG5cbi8vIENvbnRleHR1YWwgY29sb3JzXG5cbi50ZXh0LXdoaXRlIHsgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50OyB9XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoXCIudGV4dC0jeyRjb2xvcn1cIiwgJHZhbHVlKTtcbn1cblxuLnRleHQtYm9keSB7IGNvbG9yOiAkYm9keS1jb2xvciAhaW1wb3J0YW50OyB9XG4udGV4dC1tdXRlZCB7IGNvbG9yOiAkdGV4dC1tdXRlZCAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWJsYWNrLTUwIHsgY29sb3I6IHJnYmEoJGJsYWNrLCAuNSkgIWltcG9ydGFudDsgfVxuLnRleHQtd2hpdGUtNTAgeyBjb2xvcjogcmdiYSgkd2hpdGUsIC41KSAhaW1wb3J0YW50OyB9XG5cbi8vIE1pc2NcblxuLnRleHQtaGlkZSB7XG4gIEBpbmNsdWRlIHRleHQtaGlkZSgkaWdub3JlLXdhcm5pbmc6IHRydWUpO1xufVxuXG4udGV4dC1kZWNvcmF0aW9uLW5vbmUgeyB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDsgfVxuXG4udGV4dC1icmVhayB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQgIWltcG9ydGFudDsgLy8gSUUgJiA8IEVkZ2UgMThcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZCAhaW1wb3J0YW50O1xufVxuXG4vLyBSZXNldFxuXG4udGV4dC1yZXNldCB7IGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cbiIsIi8vIFRleHQgdHJ1bmNhdGVcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtdHJ1bmNhdGUoKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFR5cG9ncmFwaHlcblxuQG1peGluIHRleHQtZW1waGFzaXMtdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIEBpZiAkZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlICE9IDAge1xuICAgIGEjeyRwYXJlbnR9IHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6IGRhcmtlbigkY29sb3IsICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UpICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbkBtaXhpbiB0ZXh0LWhpZGUoJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZm9udC1mYW1pbHktbm8tbWlzc2luZy1nZW5lcmljLWZhbWlseS1rZXl3b3JkXG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuXG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImB0ZXh0LWhpZGUoKWBcIiwgXCJ2NC4xLjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBWaXNpYmlsaXR5IHV0aWxpdGllc1xuLy9cblxuLnZpc2libGUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi9tYXN0ZXIvc3JjL2Nzcy9tYWluLmNzc1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUHJpbnQgc3R5bGVzLlxuLy8gSW5saW5lZCB0byBhdm9pZCB0aGUgYWRkaXRpb25hbCBIVFRQIHJlcXVlc3Q6XG4vLyBodHRwczovL3d3dy5waHBpZWQuY29tL2RlbGF5LWxvYWRpbmcteW91ci1wcmludC1jc3MvXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYgJGVuYWJsZS1wcmludC1zdHlsZXMge1xuICBAbWVkaWEgcHJpbnQge1xuICAgICosXG4gICAgKjo6YmVmb3JlLFxuICAgICo6OmFmdGVyIHtcbiAgICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCBvdXQgYGNvbG9yYCBhbmQgYGJhY2tncm91bmRgXG4gICAgICAvL2NvbG9yOiAkYmxhY2sgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlclxuICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIC8vYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICY6bm90KC5idG4pIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IHRoZSBmb2xsb3dpbmcgc2VsZWN0b3Igb3V0XG4gICAgLy9hW2hyZWZdOjphZnRlciB7XG4gICAgLy8gIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICAgIC8vfVxuXG4gICAgYWJiclt0aXRsZV06OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcbiAgICAvL1xuICAgIC8vIERvbid0IHNob3cgbGlua3MgdGhhdCBhcmUgZnJhZ21lbnQgaWRlbnRpZmllcnMsXG4gICAgLy8gb3IgdXNlIHRoZSBgamF2YXNjcmlwdDpgIHBzZXVkbyBwcm90b2NvbFxuICAgIC8vXG5cbiAgICAvL2FbaHJlZl49XCIjXCJdOjphZnRlcixcbiAgICAvL2FbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTo6YWZ0ZXIge1xuICAgIC8vIGNvbnRlbnQ6IFwiXCI7XG4gICAgLy99XG5cbiAgICBwcmUge1xuICAgICAgd2hpdGUtc3BhY2U6IHByZS13cmFwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkZ3JheS01MDA7IC8vIEJvb3RzdHJhcCBjdXN0b20gY29kZTsgdXNpbmcgYCRib3JkZXItd2lkdGhgIGluc3RlYWQgb2YgMXB4XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBQcmludGluZyBUYWJsZXM6XG4gICAgLy8gaHR0cDovL2Nzcy1kaXNjdXNzLmluY3V0aW8uY29tL3dpa2kvUHJpbnRpbmdfVGFibGVzXG4gICAgLy9cblxuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcbiAgICB9XG5cbiAgICB0cixcbiAgICBpbWcge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBzdGFydFxuXG4gICAgLy8gU3BlY2lmeSBhIHNpemUgYW5kIG1pbi13aWR0aCB0byBtYWtlIHByaW50aW5nIGNsb3NlciBhY3Jvc3MgYnJvd3NlcnMuXG4gICAgLy8gV2UgZG9uJ3Qgc2V0IG1hcmdpbiBoZXJlIGJlY2F1c2UgaXQgYnJlYWtzIGBzaXplYCBpbiBDaHJvbWUuIFdlIGFsc29cbiAgICAvLyBkb24ndCB1c2UgYCFpbXBvcnRhbnRgIG9uIGBzaXplYCBhcyBpdCBicmVha3MgaW4gQ2hyb21lLlxuICAgIEBwYWdlIHtcbiAgICAgIHNpemU6ICRwcmludC1wYWdlLXNpemU7XG4gICAgfVxuICAgIGJvZHkge1xuICAgICAgbWluLXdpZHRoOiAkcHJpbnQtYm9keS1taW4td2lkdGggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBtaW4td2lkdGg6ICRwcmludC1ib2R5LW1pbi13aWR0aCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBjb21wb25lbnRzXG4gICAgLm5hdmJhciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuYmFkZ2Uge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRibGFjaztcbiAgICB9XG5cbiAgICAudGFibGUge1xuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZSAhaW1wb3J0YW50O1xuXG4gICAgICB0ZCxcbiAgICAgIHRoIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgIHRoLFxuICAgICAgdGQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS0zMDAgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtZGFyayB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcblxuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUgLnRoZWFkLWRhcmsgdGgge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgZW5kXG4gIH1cbn1cbiIsIi8vXHJcbi8vICBWZXJ5IGJhc2ljIHN0eWxlc1xyXG4vLyAgX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXHJcblxyXG5pbWcge1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG5pbnB1dFtwbGFjZWhvbGRlcl0ge1xyXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbn1cclxuXHJcbjpmb2N1cyB7XHJcbiAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbjpmb2N1cy12aXNpYmxlIHtcclxuICAgIG91dGxpbmU6IGNvbG9yKCdibGFjaycpIHNvbGlkIHJlbSgyKSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uYm9sZCB7XHJcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XHJcbn1cclxuXHJcbi8vIHJlQ0FQVENIQVxyXG4uZ3JlY2FwdGNoYS1iYWRnZSB7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbn1cclxuIiwiLy9cclxuLy8gIEJhc2ljIHR5cG9ncmFwaHkgc3R5bGUgZm9yIGNvcHkgdGV4dFxyXG4vLyAgX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXHJcblxyXG5odG1sIHtcclxuICAgIGZvbnQtc2l6ZTogc2V0KCRmb250LXNpemUtcm9vdCk7XHJcbn1cclxuXHJcbi8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLWNsYXNzLXBhdHRlcm4gKi9cclxuXHJcbmgxLFxyXG5oMixcclxuaDMsXHJcbmg0LFxyXG5oNSxcclxuaDYge1xyXG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XHJcbn1cclxuXHJcbmgxIHtcclxuICAgIGZvbnQtc2l6ZTogc2V0KCRoMV9fZm9udC1zaXplKTtcclxufVxyXG5cclxuaDIge1xyXG4gICAgZm9udC1zaXplOiBzZXQoJGgyX19mb250LXNpemUpO1xyXG59XHJcblxyXG5oMyB7XHJcbiAgICBmb250LXNpemU6IHNldCgkaDNfX2ZvbnQtc2l6ZSk7XHJcbn1cclxuXHJcbmg0IHtcclxuICAgIGZvbnQtc2l6ZTogc2V0KCRoNF9fZm9udC1zaXplKTtcclxufVxyXG5cclxuaDUge1xyXG4gICAgZm9udC1zaXplOiBzZXQoJGg1X19mb250LXNpemUpO1xyXG59XHJcblxyXG5oNiB7XHJcbiAgICBmb250LXNpemU6IHNldCgkaDZfX2ZvbnQtc2l6ZSk7XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgIGgxIHtcclxuICAgICAgICBmb250LXNpemU6IHNldCgkaDFfX2ZvbnQtc2l6ZV9fbWQpO1xyXG4gICAgfVxyXG5cclxuICAgIGgyIHtcclxuICAgICAgICBmb250LXNpemU6IHNldCgkaDJfX2ZvbnQtc2l6ZV9fbWQpO1xyXG4gICAgfVxyXG5cclxuICAgIGgzIHtcclxuICAgICAgICBmb250LXNpemU6IHNldCgkaDNfX2ZvbnQtc2l6ZV9fbWQpO1xyXG4gICAgfVxyXG5cclxuICAgIGg0IHtcclxuICAgICAgICBmb250LXNpemU6IHNldCgkaDRfX2ZvbnQtc2l6ZV9fbWQpO1xyXG4gICAgfVxyXG5cclxuICAgIGg1IHtcclxuICAgICAgICBmb250LXNpemU6IHNldCgkaDVfX2ZvbnQtc2l6ZV9fbWQpO1xyXG4gICAgfVxyXG5cclxuICAgIGg2IHtcclxuICAgICAgICBmb250LXNpemU6IHNldCgkaDZfX2ZvbnQtc2l6ZV9fbWQpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uZm9udC1zZWNvbmRhcnkge1xyXG4gICAgaDEsXHJcbiAgICBoMixcclxuICAgIGgzIHtcclxuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNlY29uZGFyeTtcclxuICAgIH1cclxuXHJcbn1cclxuXHJcbi8qIHN0eWxlbGludC1lbmFibGUgKi9cclxuIiwiLy9cclxuLy8gIFJTQ1NTIEhlbHBlcnNcclxuLy8gIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX1xyXG5cclxuLl9maWxsIHtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5fZGlzYWJsZWQtc2Nyb2xsaW5nIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLl9wb2ludGVyLWV2ZW50cy1ub25lIHtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG4uX2Rpc2FibGVkLFxyXG4uZGlzYWJsZWQge1xyXG4gICAgb3BhY2l0eTogc2V0KCRkaXNhYmxlZC1pdGVtX19vcGFjaXR5KTtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG4uX3Zpc3VhbGx5LWhpZGRlbiB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgd2lkdGg6IDFweDtcclxuICAgIGhlaWdodDogMXB4O1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIG1hcmdpbjogLTFweDtcclxuICAgIGNsaXA6IHJlY3QoMCAwIDAgMCk7XHJcbn1cclxuXHJcbi4tbm8tZXZlbnRzIHtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG4uLXBvaW50ZXIge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcbiIsIi8vXHJcbi8vICBIZWxwZXJzXHJcbi8vICBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19cclxuXHJcbiRkaXNhYmxlZC1pdGVtX19vcGFjaXR5OiAuNztcclxuIiwiLy9cclxuLy8gIENMUCBtb2JpbGUtMy0xLWdyaWRcclxuLy8gIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX1xyXG5cclxuJG1vYmlsZS1yb3ctZ3JpZF9fcGFkZGluZy14OiByZW0oNDApO1xyXG4kbW9iaWxlLXJvdy1ncmlkX19leHBlcmllbmNlLWNvbXBvbmVudF9fbWFyZ2luLXJpZ2h0X19zbTogcmVtKDkpO1xyXG5cclxuLm1vYmlsZS1yb3ctZ3JpZCB7XHJcbiAgICAmIHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIH1cclxuXHJcbiAgICAucmVnaW9uOmxhc3QtY2hpbGQgLmV4cGVyaWVuY2UtY29tcG9uZW50IHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcclxuICAgIC5tb2JpbGUtcm93LWdyaWQgLmV4cGVyaWVuY2UtY29tcG9uZW50IHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IHNldCgkbW9iaWxlLXJvdy1ncmlkX19leHBlcmllbmNlLWNvbXBvbmVudF9fbWFyZ2luLXJpZ2h0X19zbSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgIC5tb2JpbGUtcm93LWdyaWQge1xyXG4gICAgICAgICYge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiBzZXQoJG1vYmlsZS1yb3ctZ3JpZF9fcGFkZGluZy14KTtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBzZXQoJG1vYmlsZS1yb3ctZ3JpZF9fcGFkZGluZy14KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gIFN0eWxlIGZvciBjdXN0b20gbGF5b3V0c1xyXG5cclxuJGN1c3RvbS1sYXlvdXRfX3BhZGRpbmc6IHJlbSg0KTtcclxuXHJcbi8qIHN0eWxlbGludC1kaXNhYmxlICovXHJcbi5jdXN0b20tbGF5b3V0IHtcclxuICAgIC5pbWFnZS1hbmQtdGV4dC1jb250YWluZXIgLmltYWdlLXdyYXBwZXIge1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5zaXgtYnV0dG9ucyxcclxuICAgIC5zaXgtYnV0dG9ucyAuY29udGVudC13cmFwcGVyIHtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgLmV4cGVyaWVuY2UtY29tcG9uZW50LFxyXG4gICAgLnRleHQtYnV0dG9uLWJsb2NrLFxyXG4gICAgLnRleHQtYnV0dG9uLWJsb2NrIC5jb250ZW50LXdyYXBwZXIge1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAuLXdpdGgtbWFyZ2luIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oNCk7XHJcbiAgICB9XHJcblxyXG4gICAgLmV4cGVyaWVuY2UtY29tbWVyY2VfYXNzZXRzLWltYWdlQW5kVGV4dCxcclxuICAgIC5pbWFnZS1hbmQtdGV4dC1jb250YWluZXIsXHJcbiAgICAuaW1hZ2UtYW5kLXRleHQtY29udGFpbmVyID4gLnJvdyB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG59XHJcblxyXG4uZXhwZXJpZW5jZS1jb21tZXJjZV9sYXlvdXRzLW1vYmlsZUdyaWQxcjFjID4gLmNvbnRhaW5lci1mbHVpZCAucmVnaW9uIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xyXG59XHJcblxyXG4uZXhwZXJpZW5jZS1jb21tZXJjZV9sYXlvdXRzLW1vYmlsZUdyaWQycjFjID4gLmNvbnRhaW5lci1mbHVpZCAucmVnaW9uIHtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbn1cclxuXHJcbi5leHBlcmllbmNlLWNvbW1lcmNlX2xheW91dHMtbW9iaWxlR3JpZDJyM2MgPiAuY29udGFpbmVyLWZsdWlkIC5yZWdpb24uLWZpcnN0LFxyXG4uZXhwZXJpZW5jZS1jb21tZXJjZV9sYXlvdXRzLW1vYmlsZUdyaWQzcjJjID4gLmNvbnRhaW5lci1mbHVpZCAucmVnaW9uLi1maXJzdCxcclxuLmV4cGVyaWVuY2UtY29tbWVyY2VfbGF5b3V0cy1tb2JpbGVHcmlkM3IyYyA+IC5jb250YWluZXItZmx1aWQgLnJlZ2lvbi4tdGhpcmQsXHJcbi5leHBlcmllbmNlLWNvbW1lcmNlX2xheW91dHMtbW9iaWxlR3JpZDNyMmMgPiAuY29udGFpbmVyLWZsdWlkIC5yZWdpb24uLWZpdmUsXHJcbi5leHBlcmllbmNlLWNvbW1lcmNlX2xheW91dHMtbW9iaWxlR3JpZDNyMWMgID4gLmNvbnRhaW5lci1mbHVpZCAucmVnaW9uLi1maXJzdCxcclxuLmV4cGVyaWVuY2UtY29tbWVyY2VfbGF5b3V0cy1tb2JpbGVHcmlkM3IxYyAgPiAuY29udGFpbmVyLWZsdWlkIC5yZWdpb24uLXNlY29uZCxcclxuLmV4cGVyaWVuY2UtY29tbWVyY2VfbGF5b3V0cy1tb2JpbGVHcmlkM3IxYyAgPiAuY29udGFpbmVyLWZsdWlkIC5yZWdpb24uLXRoaXJkLFxyXG4uZXhwZXJpZW5jZS1jb21tZXJjZV9sYXlvdXRzLW1vYmlsZUdyaWQycjNjID4gLmNvbnRhaW5lci1mbHVpZCAucmVnaW9uLi1mb3VyLFxyXG4uZXhwZXJpZW5jZS1jb21tZXJjZV9sYXlvdXRzLW1vYmlsZUdyaWQycjJjID4gLmNvbnRhaW5lci1mbHVpZCAucmVnaW9uLi1maXJzdCxcclxuLmV4cGVyaWVuY2UtY29tbWVyY2VfbGF5b3V0cy1tb2JpbGVHcmlkMnIyYyA+IC5jb250YWluZXItZmx1aWQgLnJlZ2lvbi4tdGhpcmQge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xyXG59XHJcblxyXG4uZXhwZXJpZW5jZS1jb21tZXJjZV9sYXlvdXRzLW1vYmlsZUdyaWQycjNjID4gLmNvbnRhaW5lci1mbHVpZCAucmVnaW9uLi10aGlyZCxcclxuLmV4cGVyaWVuY2UtY29tbWVyY2VfbGF5b3V0cy1tb2JpbGVHcmlkM3IyYyA+IC5jb250YWluZXItZmx1aWQgLnJlZ2lvbi4tc2Vjb25kLFxyXG4uZXhwZXJpZW5jZS1jb21tZXJjZV9sYXlvdXRzLW1vYmlsZUdyaWQzcjJjID4gLmNvbnRhaW5lci1mbHVpZCAucmVnaW9uLi1mb3VyLFxyXG4uZXhwZXJpZW5jZS1jb21tZXJjZV9sYXlvdXRzLW1vYmlsZUdyaWQzcjJjID4gLmNvbnRhaW5lci1mbHVpZCAucmVnaW9uLi1zaXgsXHJcbi5leHBlcmllbmNlLWNvbW1lcmNlX2xheW91dHMtbW9iaWxlR3JpZDJyM2MgPiAuY29udGFpbmVyLWZsdWlkIC5yZWdpb24uLXNpeCxcclxuLmV4cGVyaWVuY2UtY29tbWVyY2VfbGF5b3V0cy1tb2JpbGVHcmlkMnIyYyA+IC5jb250YWluZXItZmx1aWQgLnJlZ2lvbi4tc2Vjb25kLFxyXG4uZXhwZXJpZW5jZS1jb21tZXJjZV9sYXlvdXRzLW1vYmlsZUdyaWQycjJjID4gLmNvbnRhaW5lci1mbHVpZCAucmVnaW9uLi1mb3VydGgsXHJcbi5leHBlcmllbmNlLWNvbW1lcmNlX2xheW91dHMtbW9iaWxlR3JpZDNyMWMgID4gLmNvbnRhaW5lci1mbHVpZCAucmVnaW9uLi1maXJzdCxcclxuLmV4cGVyaWVuY2UtY29tbWVyY2VfbGF5b3V0cy1tb2JpbGVHcmlkM3IxYyAgPiAuY29udGFpbmVyLWZsdWlkIC5yZWdpb24uLXNlY29uZCxcclxuLmV4cGVyaWVuY2UtY29tbWVyY2VfbGF5b3V0cy1tb2JpbGVHcmlkM3IxYyAgPiAuY29udGFpbmVyLWZsdWlkIC5yZWdpb24uLXRoaXJkIHtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbn1cclxuXHJcbi5jdXN0b20tbGF5b3V0IHtcclxuICAgICYuY29udGFpbmVyLWZsdWlkIHtcclxuICAgICAgICAuY29sLWxnLTMuLWxlZnQge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY29sLWxnLTMuLXJpZ2h0IHtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jb2wtbGctNiB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wZC1ndXR0ZXJzIC5yZWdpb24ge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDQpO1xyXG59XHJcblxyXG4ubm8tc3BhY2UgLi13aXRoLW1hcmdpbixcclxuLm5vLXNwYWNlIC5yZWdpb24ge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgLmV4cGVyaWVuY2UtY29tbWVyY2VfbGF5b3V0cy1tb2JpbGVHcmlkMnIxYyA+IC5jb250YWluZXItZmx1aWQgLnJlZ2lvbi4tbGVmdCxcclxuICAgIC5leHBlcmllbmNlLWNvbW1lcmNlX2xheW91dHMtbW9iaWxlR3JpZDJyMmMgPiAuY29udGFpbmVyLWZsdWlkIC5yZWdpb24uLXNlY29uZCxcclxuICAgIC5leHBlcmllbmNlLWNvbW1lcmNlX2xheW91dHMtbW9iaWxlR3JpZDJyM2MgPiAuY29udGFpbmVyLWZsdWlkIC5yZWdpb24uLXRoaXJkLFxyXG4gICAgLmV4cGVyaWVuY2UtY29tbWVyY2VfbGF5b3V0cy1tb2JpbGVHcmlkM3IxYyAgPiAuY29udGFpbmVyLWZsdWlkIC5yZWdpb24uLXNlY29uZCxcclxuICAgIC5leHBlcmllbmNlLWNvbW1lcmNlX2xheW91dHMtbW9iaWxlR3JpZDNyMWMgID4gLmNvbnRhaW5lci1mbHVpZCAucmVnaW9uLi1maXJzdCxcclxuICAgIC5leHBlcmllbmNlLWNvbW1lcmNlX2xheW91dHMtbW9iaWxlR3JpZDNyMmMgPiAuY29udGFpbmVyLWZsdWlkIC5yZWdpb24uLXNlY29uZCxcclxuICAgIC5leHBlcmllbmNlLWNvbW1lcmNlX2xheW91dHMtbW9iaWxlR3JpZDNyMmMgPiAuY29udGFpbmVyLWZsdWlkIC5yZWdpb24uLWZvdXIge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbSgyKTtcclxuICAgIH1cclxuXHJcbiAgICAuZXhwZXJpZW5jZS1jb21tZXJjZV9sYXlvdXRzLW1vYmlsZUdyaWQycjFjID4gLmNvbnRhaW5lci1mbHVpZCAucmVnaW9uLi1yaWdodCxcclxuICAgIC5leHBlcmllbmNlLWNvbW1lcmNlX2xheW91dHMtbW9iaWxlR3JpZDJyMmMgPiAuY29udGFpbmVyLWZsdWlkIC5yZWdpb24uLXRoaXJkLFxyXG4gICAgLmV4cGVyaWVuY2UtY29tbWVyY2VfbGF5b3V0cy1tb2JpbGVHcmlkM3IxYyAgPiAuY29udGFpbmVyLWZsdWlkIC5yZWdpb24uLXNlY29uZCxcclxuICAgIC5leHBlcmllbmNlLWNvbW1lcmNlX2xheW91dHMtbW9iaWxlR3JpZDNyMWMgID4gLmNvbnRhaW5lci1mbHVpZCAucmVnaW9uLi10aGlyZCxcclxuICAgIC5leHBlcmllbmNlLWNvbW1lcmNlX2xheW91dHMtbW9iaWxlR3JpZDNyMmMgPiAuY29udGFpbmVyLWZsdWlkIC5yZWdpb24uLXRoaXJkLFxyXG4gICAgLmV4cGVyaWVuY2UtY29tbWVyY2VfbGF5b3V0cy1tb2JpbGVHcmlkMnIzYyA+IC5jb250YWluZXItZmx1aWQgLnJlZ2lvbi4tZm91cixcclxuICAgIC5leHBlcmllbmNlLWNvbW1lcmNlX2xheW91dHMtbW9iaWxlR3JpZDNyMmMgPiAuY29udGFpbmVyLWZsdWlkIC5yZWdpb24uLWZpdmUge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogcmVtKDIpO1xyXG4gICAgfVxyXG5cclxuICAgIC5leHBlcmllbmNlLWNvbW1lcmNlX2xheW91dHMtbW9iaWxlR3JpZDNyMmMgPiAuY29udGFpbmVyLWZsdWlkIC5yZWdpb24uLWZvdXIge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIH1cclxuXHJcbiAgICAuZXhwZXJpZW5jZS1jb21tZXJjZV9sYXlvdXRzLW1vYmlsZUdyaWQzcjJjID4gLmNvbnRhaW5lci1mbHVpZCAucmVnaW9uLi10aGlyZCB7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgLmN1c3RvbS1sYXlvdXQge1xyXG4gICAgICAgIC4td2l0aC1tYXJnaW4ge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZXhwZXJpZW5jZS1jb21tZXJjZV9sYXlvdXRzLW1vYmlsZUdyaWQycjFjID4gLmNvbnRhaW5lci1mbHVpZCAucmVnaW9uLi1sZWZ0LFxyXG4gICAgLmV4cGVyaWVuY2UtY29tbWVyY2VfbGF5b3V0cy1tb2JpbGVHcmlkMnIyYyA+IC5jb250YWluZXItZmx1aWQgLnJlZ2lvbi4tc2Vjb25kLFxyXG4gICAgLmV4cGVyaWVuY2UtY29tbWVyY2VfbGF5b3V0cy1tb2JpbGVHcmlkMnIzYyA+IC5jb250YWluZXItZmx1aWQgLnJlZ2lvbi4tdGhpcmQsXHJcbiAgICAuZXhwZXJpZW5jZS1jb21tZXJjZV9sYXlvdXRzLW1vYmlsZUdyaWQzcjFjICA+IC5jb250YWluZXItZmx1aWQgLnJlZ2lvbi4tc2Vjb25kLFxyXG4gICAgLmV4cGVyaWVuY2UtY29tbWVyY2VfbGF5b3V0cy1tb2JpbGVHcmlkM3IxYyAgPiAuY29udGFpbmVyLWZsdWlkIC5yZWdpb24uLWZpcnN0LFxyXG4gICAgLmV4cGVyaWVuY2UtY29tbWVyY2VfbGF5b3V0cy1tb2JpbGVHcmlkM3IyYyA+IC5jb250YWluZXItZmx1aWQgLnJlZ2lvbi4tc2Vjb25kLFxyXG4gICAgLmV4cGVyaWVuY2UtY29tbWVyY2VfbGF5b3V0cy1tb2JpbGVHcmlkM3IyYyA+IC5jb250YWluZXItZmx1aWQgLnJlZ2lvbi4tZm91ciB7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtKDQpO1xyXG4gICAgfVxyXG5cclxuICAgIC5leHBlcmllbmNlLWNvbW1lcmNlX2xheW91dHMtbW9iaWxlR3JpZDJyMWMgPiAuY29udGFpbmVyLWZsdWlkIC5yZWdpb24uLXJpZ2h0LFxyXG4gICAgLmV4cGVyaWVuY2UtY29tbWVyY2VfbGF5b3V0cy1tb2JpbGVHcmlkMnIyYyA+IC5jb250YWluZXItZmx1aWQgLnJlZ2lvbi4tdGhpcmQsXHJcbiAgICAuZXhwZXJpZW5jZS1jb21tZXJjZV9sYXlvdXRzLW1vYmlsZUdyaWQzcjFjICA+IC5jb250YWluZXItZmx1aWQgLnJlZ2lvbi4tc2Vjb25kLFxyXG4gICAgLmV4cGVyaWVuY2UtY29tbWVyY2VfbGF5b3V0cy1tb2JpbGVHcmlkM3IxYyAgPiAuY29udGFpbmVyLWZsdWlkIC5yZWdpb24uLXRoaXJkLFxyXG4gICAgLmV4cGVyaWVuY2UtY29tbWVyY2VfbGF5b3V0cy1tb2JpbGVHcmlkM3IyYyA+IC5jb250YWluZXItZmx1aWQgLnJlZ2lvbi4tdGhpcmQsXHJcbiAgICAuZXhwZXJpZW5jZS1jb21tZXJjZV9sYXlvdXRzLW1vYmlsZUdyaWQycjNjID4gLmNvbnRhaW5lci1mbHVpZCAucmVnaW9uLi1mb3VyLFxyXG4gICAgLmV4cGVyaWVuY2UtY29tbWVyY2VfbGF5b3V0cy1tb2JpbGVHcmlkM3IyYyA+IC5jb250YWluZXItZmx1aWQgLnJlZ2lvbi4tZml2ZSB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oNCk7XHJcbiAgICB9XHJcblxyXG4gICAgLnBkLWd1dHRlcnMgPiBbY2xhc3MqPSdjb2wtJ10sXHJcbiAgICAucGQtZ3V0dGVycyAuY29sIHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0oNCk7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oNCk7XHJcbiAgICB9XHJcblxyXG4gICAgLndyYXBwZXItMjUyNTUwIHtcclxuICAgICAgICAmLmNvbnRhaW5lci1mbHVpZCB7XHJcbiAgICAgICAgICAgIC5jb2wtbGctMy4tbGVmdCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5jb2wtbGctMy4tcmlnaHQge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogc2V0KCRjdXN0b20tbGF5b3V0X19wYWRkaW5nKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmNvbC1sZy02IHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHNldCgkY3VzdG9tLWxheW91dF9fcGFkZGluZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLndyYXBwZXItMjU1MDI1IHtcclxuICAgICAgICAmLmNvbnRhaW5lci1mbHVpZCB7XHJcbiAgICAgICAgICAgIC5jb2wtbGctNiB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiBzZXQoJGN1c3RvbS1sYXlvdXRfX3BhZGRpbmcpO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBzZXQoJGN1c3RvbS1sYXlvdXRfX3BhZGRpbmcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC53cmFwcGVyLTUwMjUyNSB7XHJcbiAgICAgICAgJi5jb250YWluZXItZmx1aWQge1xyXG4gICAgICAgICAgICAuY29sLWxnLTYge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogc2V0KCRjdXN0b20tbGF5b3V0X19wYWRkaW5nKTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmNvbC1sZy0zLi1sZWZ0IHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogc2V0KCRjdXN0b20tbGF5b3V0X19wYWRkaW5nKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyogc3R5bGVsaW50LWVuYWJsZSAqL1xyXG4iLCIvL1xyXG4vLyAgSW1hZ2Ugd2l0aCB0ZXh0IGFuZCBidXR0b24gY29tcG9uZW50XHJcbi8vICBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19cclxuXHJcbiRpbWFnZS10ZXh0LWJ0bl9faGVpZ2h0OiByZW0oNTI5KTtcclxuJGltYWdlLXRleHQtYnRuX193cmFwcGVyX19tYXJnaW4tYm90dG9tOiByZW0oMjApO1xyXG4kaW1hZ2UtdGV4dC1idG5fX2J0bl9fbWFyZ2luLXRvcDogcmVtKDEwKTtcclxuJGltYWdlLXRleHQtYnRuLWNlbnRlcmVkX19oMV9tYXJnaW4tYm90dG9tOiByZW0oOCk7XHJcbiRpbWFnZS10ZXh0LWJ0bl9fc21hbGwtdGV4dF9fbWFyZ2luLWJvdHRvbTogcmVtKDgpO1xyXG5cclxuJGltYWdlLXRleHQtYnRuX19oZWlnaHRfX21kOiByZW0oODY2KTtcclxuJGltYWdlLXRleHQtYnRuX19jb250ZW50LXdyYXBwZXJfX21heC13aWR0aF9fbWQ6IGZpdC1jb250ZW50O1xyXG4kaW1hZ2UtdGV4dC1idG5fX2NvbnRlbnQtd3JhcHBlcl9fYnRuX19tYXgtd2lkdGhfX21kOiByZW0oMjU2KTtcclxuJGltYWdlLXRleHQtYnRuX19jZW50ZXJlZC1jb250ZW50LXdyYXBwZXJfX21heC13aWR0aF9fbWQ6IHJlbSg2MDApO1xyXG4kaW1hZ2UtdGV4dC1idG4tY2VudGVyZWRfX2gxX21heC13aWR0aF9fbWQ6IHJlbSg0ODApO1xyXG4kaW1hZ2UtdGV4dC1idG4tY2VudGVyZWRfX2gxX21hcmdpbi1ib3R0b21fX21kOiByZW0oMTUpO1xyXG4kaW1hZ2UtdGV4dC1idG4tY2VudGVyZWRfX2NvbnRlbnQtd3JhcHBlcl9fbWF4LXdpZHRoX19tZDogcmVtKDI3Nyk7XHJcblxyXG4kaW1hZ2UtdGV4dC1idG5fX2hlaWdodF9fbGc6IHJlbSg2MzApO1xyXG4kaW1hZ2UtdGV4dC1idG5fX21heC13aWR0aF9fbGc6IHJlbSgyNTYpO1xyXG4kaW1hZ2UtdGV4dC1idG4tY2VudGVyZWRfX21heC13aWR0aF9fbGc6IHJlbSg2NTBweCk7XHJcbiRpbWFnZS10ZXh0LWJ0bi1jZW50ZXJlZF9faGVpZ2h0X19sZzogcmVtKDcwNCk7XHJcblxyXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG4uaW1hZ2UtdGV4dC1idG4ge1xyXG4gICAgJiB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGhlaWdodDogc2V0KCRpbWFnZS10ZXh0LWJ0bl9faGVpZ2h0KTtcclxuICAgIH1cclxuXHJcbiAgICAuc21hbGwtdGV4dC4tYWJzb2x1dGUge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBwYWRkaW5nOiAwIHJlbSgyMCk7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ1dHRvbnMtd3JhcHBlci4tdmVydGljYWwtbW9iaWxlIC5idG4td3JhcHBlcjpub3QoOmZpcnN0LWNoaWxkKSBhIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiByZW0oMjApO1xyXG4gICAgfVxyXG5cclxuICAgIC5idXR0b25zLXdyYXBwZXIuLXZlcnRpY2FsLW1vYmlsZS4taG9yaXpvbnRhbC1kZXNrdG9wIC5idG4td3JhcHBlcjpmaXJzdC1jaGlsZCBhIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiByZW0oMjApO1xyXG4gICAgfVxyXG5cclxuICAgIC5idXR0b25zLXdyYXBwZXIuLWhvcml6b250YWwtbW9iaWxlIC5idG4td3JhcHBlciAsXHJcbiAgICAuYnV0dG9ucy13cmFwcGVyLi1ob3Jpem9udGFsLWRlc2t0b3AgLmJ0bi13cmFwcGVyIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAuYnV0dG9ucy13cmFwcGVyLi1ob3Jpem9udGFsLW1vYmlsZSAuYnRuLXdyYXBwZXIuYXV0b3dpZHRoLFxyXG4gICAgLmJ1dHRvbnMtd3JhcHBlci4taG9yaXpvbnRhbC1kZXNrdG9wIC5idG4td3JhcHBlci5hdXRvd2lkdGgge1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgIC5idXR0b25zLXdyYXBwZXIuLWhvcml6b250YWwtbW9iaWxlLmNlbnRlcixcclxuICAgIC5idXR0b25zLXdyYXBwZXIuLWhvcml6b250YWwtZGVza3RvcC5jZW50ZXIge1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC52aWRlby1ibG9jayB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgICYuLWhhcy1pbWFnZSB7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgICYuLWhhcy1pbWFnZSAuaW1hZ2Utd3JhcHBlciB7XHJcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgIH1cclxuXHJcbiAgICAmIC53cmFwcGVyIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJiAudmVydGljYWwtbW9iaWxlLXRvcC53cmFwcGVyIHtcclxuICAgICAgICB0b3A6IHJlbSgyMCk7XHJcbiAgICB9XHJcblxyXG4gICAgJiAudmVydGljYWwtbW9iaWxlLWNlbnRlci53cmFwcGVyIHtcclxuICAgICAgICBAaW5jbHVkZSBhYnNvbHV0ZS1jZW50ZXIoJF9ob3Jpem9udGFsOiBmYWxzZSk7XHJcbiAgICAgICAgYm90dG9tOiBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgICYuLWhhcy1pbWFnZSAuaW1hZ2Uge1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAudGV4dC50ZXh0LWNlbnRlciBwLFxyXG4gICAgLnRleHQudGV4dC1jZW50ZXIgaDEsXHJcbiAgICAudGV4dC50ZXh0LWNlbnRlciBoMixcclxuICAgIC50ZXh0LnRleHQtY2VudGVyIGgzLFxyXG4gICAgLnRleHQudGV4dC1jZW50ZXIgaDQge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAuY291bnRkb3duLXdyYXBwZXIudGV4dC1jZW50ZXIge1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgICYuLWNlbnRlcmVkIHtcclxuICAgICAgICAuYnRuLXdyYXBwZXIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY29udGVudC13cmFwcGVyIGgxLFxyXG4gICAgICAgIC5jb250ZW50LXdyYXBwZXIgaDIsXHJcbiAgICAgICAgLmNvbnRlbnQtd3JhcHBlciBoMyxcclxuICAgICAgICAuY29udGVudC13cmFwcGVyIGg0LFxyXG4gICAgICAgIC5jb250ZW50LXdyYXBwZXIgaDUsXHJcbiAgICAgICAgLmNvbnRlbnQtd3JhcHBlciBoNiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHNldCgkaW1hZ2UtdGV4dC1idG4tY2VudGVyZWRfX2gxX21hcmdpbi1ib3R0b20pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaW1hZ2Utd3JhcHBlciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHotaW5kZXg6IGF1dG87XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAubGluayB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBjdXJzb3I6IGluaXRpYWw7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5idG4td3JhcHBlciB7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuXHJcbiAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmltYWdlLXdyYXBwZXIgLmltYWdlIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgLndyYXBwZXIge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHNldCgkaW1hZ2UtdGV4dC1idG5fX3dyYXBwZXJfX21hcmdpbi1ib3R0b20pO1xyXG4gICAgfVxyXG5cclxuICAgIC5idG4ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHNldCgkaW1hZ2UtdGV4dC1idG5fX2J0bl9fbWFyZ2luLXRvcCk7XHJcbiAgICB9XHJcblxyXG4gICAgLnNtYWxsLXRleHQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHNldCgkaW1hZ2UtdGV4dC1idG5fX3NtYWxsLXRleHRfX21hcmdpbi1ib3R0b20pO1xyXG4gICAgfVxyXG5cclxuICAgIC5zbWFsbC10ZXh0IHAge1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAuaW1hZ2UtdGV4dC1idG4ge1xyXG4gICAgICAgIC5sZWZ0LnZlcnRpY2FsLW1vYmlsZS1jZW50ZXIge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY2VudGVyLnZlcnRpY2FsLW1vYmlsZS1jZW50ZXIge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgNTAlIDUwJSwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApIDgyJSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubGVmdC52ZXJ0aWNhbC1tb2JpbGUtdG9wIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTMzZGVnLCAjMDAwIC00MCUsIHJnYmEoMCwgMCwgMCwgMCkgMTAwJSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY2VudGVyLnZlcnRpY2FsLW1vYmlsZS10b3Age1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICMwMDAgLTQwJSwgcmdiYSgwLCAwLCAwLCAwKSAxMDAlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgIC5pbWFnZS10ZXh0LWJ0biB7XHJcbiAgICAgICAgJiB7XHJcbiAgICAgICAgICAgIGhlaWdodDogc2V0KCRpbWFnZS10ZXh0LWJ0bl9faGVpZ2h0X19tZCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYnV0dG9ucy13cmFwcGVyLi1ob3Jpem9udGFsLW1vYmlsZSAuYnRuLXdyYXBwZXIsXHJcbiAgICAgICAgLmJ1dHRvbnMtd3JhcHBlci4taG9yaXpvbnRhbC1kZXNrdG9wIC5idG4td3JhcHBlciB7XHJcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiAudmVydGljYWwtZGVza3RvcC1jZW50ZXIud3JhcHBlciB7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICBib3R0b206IGF1dG87XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgLnZlcnRpY2FsLWRlc2t0b3AtdG9wLndyYXBwZXIge1xyXG4gICAgICAgICAgICB0b3A6IHJlbSgyMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgLnZlcnRpY2FsLWRlc2t0b3AtYm90dG9tLndyYXBwZXIge1xyXG4gICAgICAgICAgICB0b3A6IGF1dG87XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJ1dHRvbnMtd3JhcHBlciAuYnRuLXdyYXBwZXIge1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jb250ZW50LXdyYXBwZXIudGV4dC1jZW50ZXIge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi4tY2VudGVyZWQge1xyXG4gICAgICAgICAgICAuY29udGVudC13cmFwcGVyIHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogc2V0KCRpbWFnZS10ZXh0LWJ0bl9fY2VudGVyZWQtY29udGVudC13cmFwcGVyX19tYXgtd2lkdGhfX21kKTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogaW5oZXJpdDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmJ0bi13cmFwcGVyIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiBzZXQoJGltYWdlLXRleHQtYnRuLWNlbnRlcmVkX19jb250ZW50LXdyYXBwZXJfX21heC13aWR0aF9fbWQpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuY29udGVudC13cmFwcGVyIGgxLFxyXG4gICAgICAgICAgICAuY29udGVudC13cmFwcGVyIGgyLFxyXG4gICAgICAgICAgICAuY29udGVudC13cmFwcGVyIGgzLFxyXG4gICAgICAgICAgICAuY29udGVudC13cmFwcGVyIGg0LFxyXG4gICAgICAgICAgICAuY29udGVudC13cmFwcGVyIGg1LFxyXG4gICAgICAgICAgICAuY29udGVudC13cmFwcGVyIGg2IHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogc2V0KCRpbWFnZS10ZXh0LWJ0bi1jZW50ZXJlZF9faDFfbWF4LXdpZHRoX19tZCk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBzZXQoJGltYWdlLXRleHQtYnRuLWNlbnRlcmVkX19oMV9tYXJnaW4tYm90dG9tX19tZCk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNvbnRlbnQtd3JhcHBlciB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogc2V0KCRpbWFnZS10ZXh0LWJ0bl9fY29udGVudC13cmFwcGVyX19tYXgtd2lkdGhfX21kKTtcclxuICAgICAgICAgICAgbWFyZ2luOiB1bnNldDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5idG46bm90KC4td2hpdGUtdW5kZXJsaW5lZCk6bm90KC4tYmxhY2stdW5kZXJsaW5lZCkge1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgbWluLXdpZHRoOiBzZXQoJGltYWdlLXRleHQtYnRuX19jb250ZW50LXdyYXBwZXJfX2J0bl9fbWF4LXdpZHRoX19tZCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubGVmdC52ZXJ0aWNhbC1kZXNrdG9wLWJvdHRvbSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICMwMDAgLTQwJSwgcmdiYSgwLCAwLCAwLCAwKSA2MCUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNlbnRlci52ZXJ0aWNhbC1kZXNrdG9wLWJvdHRvbSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgzNjBkZWcsICMwMDAgLTQwJSwgcmdiYSgwLCAwLCAwLCAwKSAxMDAlKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5sZWZ0LnZlcnRpY2FsLWRlc2t0b3AtdG9wIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMwMDAgLTQwJSwgcmdiYSgwLCAwLCAwLCAwKSA2MCUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNlbnRlci52ZXJ0aWNhbC1kZXNrdG9wLXRvcCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjMDAwIC00MCUsIHJnYmEoMCwgMCwgMCwgMCkgNjAlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgLmltYWdlLXRleHQtYnRuIHtcclxuICAgICAgICAuYnV0dG9ucy13cmFwcGVyLi1ob3Jpem9udGFsLW1vYmlsZSB7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYnV0dG9ucy13cmFwcGVyLi1ob3Jpem9udGFsLW1vYmlsZSAuYnRuLXdyYXBwZXI6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtKDIwKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgIC5pbWFnZS10ZXh0LWJ0biB7XHJcbiAgICAgICAgJiB7XHJcbiAgICAgICAgICAgIGhlaWdodDogc2V0KCRpbWFnZS10ZXh0LWJ0bl9faGVpZ2h0X19sZyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY291bnRkb3duLXdyYXBwZXIudGV4dC1jZW50ZXIge1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZGVza3RvcC1hbGlnbi1yaWdodCBwOm5vdCguaXRlbSksXHJcbiAgICAgICAgLmRlc2t0b3AtYWxpZ24tcmlnaHQgaDE6bm90KC5pdGVtKSxcclxuICAgICAgICAuZGVza3RvcC1hbGlnbi1yaWdodCBoMjpub3QoLml0ZW0pLFxyXG4gICAgICAgIC5kZXNrdG9wLWFsaWduLXJpZ2h0IGgzOm5vdCguaXRlbSksXHJcbiAgICAgICAgLmRlc2t0b3AtYWxpZ24tcmlnaHQgaDQ6bm90KC5pdGVtKSxcclxuICAgICAgICAuc21hbGwtdGV4dC5kZXNrdG9wLWFsaWduLXJpZ2h0LFxyXG4gICAgICAgIC5kZXNrdG9wLWFsaWduLXJpZ2h0IC5jb3VudGRvd24td3JhcHBlciB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5kZXNrdG9wLWFsaWduLXJpZ2h0IC5idXR0b25zLXdyYXBwZXIge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbSg1MDApO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5kZXNrdG9wLWFsaWduLXJpZ2h0IC5idXR0b25zLXdyYXBwZXIuLWhvcml6b250YWwtZGVza3RvcCB7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5kZXNrdG9wLWFsaWduLXJpZ2h0IC5idG4td3JhcHBlciB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRlc2t0b3AtYWxpZ24tY2VudGVyIC5jb250ZW50LXdyYXBwZXIge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5kZXNrdG9wLWFsaWduLWNlbnRlciAuYnV0dG9ucy13cmFwcGVyIHtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZGVza3RvcC1hbGlnbi1jZW50ZXIgcDpub3QoLml0ZW0pLFxyXG4gICAgICAgIC5kZXNrdG9wLWFsaWduLWNlbnRlciBoMTpub3QoLml0ZW0pLFxyXG4gICAgICAgIC5kZXNrdG9wLWFsaWduLWNlbnRlciBoMjpub3QoLml0ZW0pLFxyXG4gICAgICAgIC5kZXNrdG9wLWFsaWduLWNlbnRlciBoMzpub3QoLml0ZW0pLFxyXG4gICAgICAgIC5kZXNrdG9wLWFsaWduLWNlbnRlciBoNDpub3QoLml0ZW0pLFxyXG4gICAgICAgIC5kZXNrdG9wLWFsaWduLWNlbnRlciAuY291bnRkb3duLXdyYXBwZXIge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRlc2t0b3AtYWxpZ24tY2VudGVyIC5jb3VudGRvd24td3JhcHBlciB7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRlc2t0b3AtYWxpZ24tbGVmdCBwLFxyXG4gICAgICAgIC5kZXNrdG9wLWFsaWduLWxlZnQgaDEsXHJcbiAgICAgICAgLmRlc2t0b3AtYWxpZ24tbGVmdCBoMixcclxuICAgICAgICAuZGVza3RvcC1hbGlnbi1sZWZ0IGgzLFxyXG4gICAgICAgIC5kZXNrdG9wLWFsaWduLWxlZnQgaDQge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5kZXNrdG9wLWFsaWduLWxlZnQgLmJ1dHRvbnMtd3JhcHBlciB7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJ1dHRvbnMtd3JhcHBlci4taG9yaXpvbnRhbC1kZXNrdG9wIC5idG4td3JhcHBlcjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0oMjApO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJ1dHRvbnMtd3JhcHBlci4taG9yaXpvbnRhbC1kZXNrdG9wIHtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zbWFsbC10ZXh0Li1hYnNvbHV0ZSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgcmVtKDQwKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuLWNlbnRlcmVkIHtcclxuICAgICAgICAgICAgJiB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHNldCgkaW1hZ2UtdGV4dC1idG4tY2VudGVyZWRfX2hlaWdodF9fbGcpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuY29udGVudC13cmFwcGVyIHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmNvbnRlbnQtd3JhcHBlciBoMSxcclxuICAgICAgICAgICAgLmNvbnRlbnQtd3JhcHBlciBoMixcclxuICAgICAgICAgICAgLmNvbnRlbnQtd3JhcHBlciBoMyxcclxuICAgICAgICAgICAgLmNvbnRlbnQtd3JhcHBlciBoNCxcclxuICAgICAgICAgICAgLmNvbnRlbnQtd3JhcHBlciBoNSxcclxuICAgICAgICAgICAgLmNvbnRlbnQtd3JhcHBlciBoNiB7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBzZXQoJGltYWdlLXRleHQtYnRuLWNlbnRlcmVkX19tYXgtd2lkdGhfX2xnKTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY29udGVudC13cmFwcGVyIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogcmVtKDY0MCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZGVjcmVhc2VkLXdpZHRoIHAsXHJcbiAgICAgICAgLmRlY3JlYXNlZC13aWR0aCBoMSxcclxuICAgICAgICAuZGVjcmVhc2VkLXdpZHRoIGgyLFxyXG4gICAgICAgIC5kZWNyZWFzZWQtd2lkdGggaDMsXHJcbiAgICAgICAgLmRlY3JlYXNlZC13aWR0aCBoNCxcclxuICAgICAgICAuZGVjcmVhc2VkLXdpZHRoLmNvdW50ZG93bi13cmFwcGVyIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0oNTAwKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5idG46bm90KC4td2hpdGUtdW5kZXJsaW5lZCk6bm90KC4tYmxhY2stdW5kZXJsaW5lZCkge1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IHNldCgkaW1hZ2UtdGV4dC1idG5fX21heC13aWR0aF9fbGcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4vKiBzdHlsZWxpbnQtZW5hYmxlICovXHJcbiIsIi8vXHJcbi8vICBIZWxwZXJzXHJcbi8vICBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19cclxuXHJcbi8vICBDZW50ZXIgZWxlbWVudFxyXG5AbWl4aW4gYWJzb2x1dGUtY2VudGVyKFxyXG4gICAgJF9ob3Jpem9udGFsOiB0cnVlLFxyXG4gICAgJF92ZXJ0aWNhbDogdHJ1ZSxcclxuICAgICRfcG9zaXRpb246IGFic29sdXRlXHJcbikge1xyXG4gICAgcG9zaXRpb246IHNldCgkX3Bvc2l0aW9uKTtcclxuXHJcbiAgICBAaWYgJF9ob3Jpem9udGFsIGFuZCBub3QgJF92ZXJ0aWNhbCB7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgIH1cclxuXHJcbiAgICBAaWYgJF92ZXJ0aWNhbCBhbmQgbm90ICRfaG9yaXpvbnRhbCB7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgfVxyXG5cclxuICAgIEBpZiAkX3ZlcnRpY2FsIGFuZCAkX2hvcml6b250YWwge1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgIH1cclxufVxyXG4iLCIvL1xyXG4vLyAgSW1hZ2UgdGlsZSBibG9ja1xyXG4vLyAgX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXHJcblxyXG4kaW1hZ2UtY29tcG9uZW50X19pbWFnZS13cmFwcGVyX19oZWlnaHQ6IHJlbSgyMTQpO1xyXG4kaW1hZ2UtY29tcG9uZW50X19pbWFnZS13cmFwcGVyX19oZWlnaHRfX21kOiByZW0oMzA2KTtcclxuJGltYWdlLWNvbXBvbmVudF9faW1hZ2Utd3JhcHBlcl9faGVpZ2h0X19sZzogcmVtKDU3OCk7XHJcblxyXG4ucGhvdG8tdGlsZS1jb250YWluZXIge1xyXG4gICAgLnBob3RvLXRpbGUtaW1hZ2Uge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogc2V0KCRpbWFnZS1jb21wb25lbnRfX2ltYWdlLXdyYXBwZXJfX2hlaWdodCk7XHJcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgIC5waG90by10aWxlLWNvbnRhaW5lciB7XHJcbiAgICAgICAgLnBob3RvLXRpbGUtaW1hZ2Uge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHNldCgkaW1hZ2UtY29tcG9uZW50X19pbWFnZS13cmFwcGVyX19oZWlnaHRfX21kKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgIC5waG90by10aWxlLWNvbnRhaW5lciB7XHJcbiAgICAgICAgLnBob3RvLXRpbGUtaW1hZ2Uge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHNldCgkaW1hZ2UtY29tcG9uZW50X19pbWFnZS13cmFwcGVyX19oZWlnaHRfX2xnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLy9cclxuLy8gIFRleHRib3ggY29tcG9uZW50XHJcbi8vICBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19cclxuXHJcbiR0ZXh0Ym94X19maXJzdF9fbWFyZ2luLWJvdHRvbTogcmVtKDE4KTtcclxuJHRleHRib3hfX2NvbnRlbnQtd3JhcHBlcl9fcGFkZGluZzogcmVtKDI1KTtcclxuXHJcbiR0ZXh0Ym94X19maXJzdF9fbWFyZ2luLWJvdHRvbV9fbWQ6IHJlbSgyMSk7XHJcblxyXG4udGV4dGJveCB7XHJcbiAgICAuY29udGVudC13cmFwcGVyIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogc2V0KCR0ZXh0Ym94X19jb250ZW50LXdyYXBwZXJfX3BhZGRpbmcpO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiBzZXQoJHRleHRib3hfX2NvbnRlbnQtd3JhcHBlcl9fcGFkZGluZyk7XHJcbiAgICB9XHJcblxyXG4gICAgLmRlc2NyaXB0aW9uIHAge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgaDEsXHJcbiAgICBoMixcclxuICAgIGgzLFxyXG4gICAgaDQsXHJcbiAgICBoNSxcclxuICAgIGg2IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiBzZXQoJHRleHRib3hfX2ZpcnN0X19tYXJnaW4tYm90dG9tKTtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgLnRleHRib3gge1xyXG4gICAgICAgIGgxLFxyXG4gICAgICAgIGgyLFxyXG4gICAgICAgIGgzLFxyXG4gICAgICAgIGg0LFxyXG4gICAgICAgIGg1LFxyXG4gICAgICAgIGg2IHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogc2V0KCR0ZXh0Ym94X19maXJzdF9fbWFyZ2luLWJvdHRvbV9fbWQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuIiwiLy9cclxuLy8gIDIgY29sdW1ucyAoSW1hZ2UgJiDRgWVudGVyLWFsaWduZWQgVGV4dCkgUFZIXHJcbi8vICBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19cclxuXHJcbiR0d28tY29sLWltYWdlLXRleHRfX2ltYWdlLXdyYXBwZXJfX21hcmdpbi1ib3R0b206IHJlbSgxMCk7XHJcbiR0d28tY29sLWltYWdlLXRleHRfX2J0bl9fcGFkZGluZzogcmVtKDIwKTtcclxuXHJcbiR0d28tY29sLWltYWdlLXRleHRfX3RleHQtY2VudGVyX19tYXgtd2lkdGhfX21kOiByZW0oMjY1KTtcclxuXHJcbi50d28tY29sLWltYWdlLXRleHQge1xyXG4gICAgLmltYWdlLXdyYXBwZXIge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHNldCgkdHdvLWNvbC1pbWFnZS10ZXh0X19pbWFnZS13cmFwcGVyX19tYXJnaW4tYm90dG9tKTtcclxuICAgIH1cclxuXHJcbiAgICAuYXV0b3dpZHRoIC5idG4ge1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgIC5hdXRvd2lkdGgge1xyXG4gICAgICAgIG1pbi13aWR0aDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC4tZXF1YWwtYnV0dG9ucyAuYnRuLXdyYXBwZXIge1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgbWluLXdpZHRoOiA1MCU7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ0bi13cmFwcGVyIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMXB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5idG4ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5wcm9tby13cmFwcGVyIHtcclxuICAgICAgICBwYWRkaW5nOiBzZXQoJHR3by1jb2wtaW1hZ2UtdGV4dF9fYnRuX19wYWRkaW5nKTtcclxuICAgIH1cclxuXHJcbiAgICAuaW1hZ2Uge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAudHdvLWNvbC1pbWFnZS10ZXh0IHtcclxuICAgICAgICAuaW1hZ2Utd3JhcHBlciB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuLWVxdWFsLWJ1dHRvbnMgLmJ0bi13cmFwcGVyLFxyXG4gICAgICAgIC4tZXF1YWwtYnV0dG9ucyAuYnRuIHtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiBhdXRvO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUqL1xyXG4gICAgICAgIC50ZXh0LWNlbnRlciAudGV4dC13cmFwcGVyIHAge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvKiBzdHlsZWxpbnQtZW5hYmxlICAqL1xyXG4gICAgICAgIC5idG46bm90KC4td2hpdGUtdW5kZXJsaW5lZCk6bm90KC4tYmxhY2stdW5kZXJsaW5lZCkge1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgbWluLXdpZHRoOiBzZXQoJHR3by1jb2wtaW1hZ2UtdGV4dF9fdGV4dC1jZW50ZXJfX21heC13aWR0aF9fbWQpO1xyXG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAudHdvLWNvbC1pbWFnZS10ZXh0IHtcclxuICAgICAgICAudGV4dC13cmFwcGVyIHAge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbSg2MDApO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRlY3JlYXNlZC13aWR0aCBwIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0oNDAwKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLy9cclxuLy8gIFZpZGVvIENvbXBvbmVudCBQVkhcclxuLy8gIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX1xyXG5cclxuLnZpZGVvLWJsb2NrIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgLmZyYW1lLXdyYXBwZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBwYWRkaW5nOiA1Ni4yNSUgMCAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5mcmFtZSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICB2aWRlbyB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMCk7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAxKTtcclxuICAgIH1cclxufVxyXG4iLCIvL1xyXG4vLyAgQ0xQIENhcm91c2VsXHJcbi8vICBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19cclxuXHJcbiRjbHAtY2Fyb3VzZWxfX2hfX2xldHRlci1zcGFjaW5nOiByZW0oMik7XHJcbiRjbHAtY2Fyb3VzZWxfX2hfX21hcmdpbi1ib3R0b206IHJlbSgxOCk7XHJcbiRjbHAtY2Fyb3VzZWxfX3NsaWRlci13cmFwcGVyX19tYXJnaW4tYm90dG9tOiByZW0oMjUpO1xyXG5cclxuJGNscC1jYXJvdXNlbF9fYnRuX19taW4td2lkdGg6IHJlbSgyNTYpO1xyXG5cclxuJGNscC1jYXJvdXNlbF9fc2xpZGVyLXdyYXBwZXJfX21hcmdpbi1ib3R0b21fX2xnOiAwO1xyXG5cclxuLmNscC1jYXJvdXNlbCB7XHJcbiAgICBoMSxcclxuICAgIGgyLFxyXG4gICAgaDMsXHJcbiAgICBoNCxcclxuICAgIGg1LFxyXG4gICAgaDYge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHNldCgkY2xwLWNhcm91c2VsX19oX19tYXJnaW4tYm90dG9tKTtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogc2V0KCRjbHAtY2Fyb3VzZWxfX2hfX2xldHRlci1zcGFjaW5nKTtcclxuICAgIH1cclxuXHJcbiAgICAuc2xpZGVyLXdyYXBwZXIge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHNldCgkY2xwLWNhcm91c2VsX19zbGlkZXItd3JhcHBlcl9fbWFyZ2luLWJvdHRvbSk7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ0bi13cmFwcGVyIC5idG4ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgLmNscC1jYXJvdXNlbCB7XHJcbiAgICAgICAgJiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYnRuLXdyYXBwZXIgLmJ0biB7XHJcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgLmNscC1jYXJvdXNlbCB7XHJcbiAgICAgICAgLnNsaWRlci13cmFwcGVyIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogc2V0KCRjbHAtY2Fyb3VzZWxfX3NsaWRlci13cmFwcGVyX19tYXJnaW4tYm90dG9tX19sZyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8vXHJcbi8vICBzaXggYnV0dG9ucyBjb21wb25lbnRcclxuLy8gIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX1xyXG5cclxuJHNpeC1idXR0b25zX19idG4td3JhcHBlcl9fbWFyZ2luLWJvdHRvbTogcmVtKDcpO1xyXG4kc2l4LWJ1dHRvbnNfX2NvbnRlbnQtd3JhcHBlcl9fcGFkZGluZy10b3A6IHJlbSgyNSk7XHJcbiRzaXgtYnV0dG9uc19fY29udGVudC13cmFwcGVyX19wYWRkaW5nLWJvdHRvbTogcmVtKDcpO1xyXG5cclxuJHNpeC1idXR0b25zX19jb250ZW50LXdyYXBwZXJfX3BhZGRpbmctYm90dG9tX19sZzogcmVtKDI1KTtcclxuXHJcbi5zaXgtYnV0dG9ucyB7XHJcbiAgICAmLi1oYXMtaW1hZ2UsXHJcbiAgICAuY291cG9uLXRleHQtcGQge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuXHJcbiAgICAmLi1oYXMtaW1hZ2UgLmNvbnRlbnQtd3JhcHBlciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgIH1cclxuXHJcbiAgICAuaW1hZ2UtZ3JhZGllbnQge1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgIH1cclxuXHJcbiAgICAuc2l4LWJ1dHRvbnMtd3JhcHBlciB7XHJcbiAgICAgICAgJiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJ0bi13cmFwcGVyIHtcclxuICAgICAgICAgICAgd2lkdGg6IDQ3LjUlO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBzZXQoJHNpeC1idXR0b25zX19idG4td3JhcHBlcl9fbWFyZ2luLWJvdHRvbSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYnRuOm5vdCguLXdoaXRlLXVuZGVybGluZWQpOm5vdCguLWJsYWNrLXVuZGVybGluZWQpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jb250ZW50LXdyYXBwZXIge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiBzZXQoJHNpeC1idXR0b25zX19jb250ZW50LXdyYXBwZXJfX3BhZGRpbmctdG9wKTtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogc2V0KCRzaXgtYnV0dG9uc19fY29udGVudC13cmFwcGVyX19wYWRkaW5nLWJvdHRvbSk7XHJcbiAgICB9XHJcblxyXG4gICAgLndyYXBwZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgLnNpeC1idXR0b25zIHtcclxuICAgICAgICAuc2l4LWJ1dHRvbnMtd3JhcHBlciB7XHJcbiAgICAgICAgICAgIC5idG4td3JhcHBlciB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMzIlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuYnRuOm5vdCguLXdoaXRlLXVuZGVybGluZWQpOm5vdCguLWJsYWNrLXVuZGVybGluZWQpIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAuc2l4LWJ1dHRvbnMgLmNvbnRlbnQtd3JhcHBlciB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHNldCgkc2l4LWJ1dHRvbnNfX2NvbnRlbnQtd3JhcHBlcl9fcGFkZGluZy1ib3R0b21fX2xnKTtcclxuICAgIH1cclxufVxyXG4iLCIvL1xyXG4vLyAgMiBjb2x1bW5zIChMYXJnZSBJbWFnZSAmIFNtYWxsIGltYWdlICsgbGVmdC1hbGlnbmVkIFRleHQgd2l0aCBidXR0b24pXHJcbi8vICBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19cclxuXHJcbiR0d28tY29sLXR3by1pbWFnZXNfX2Jsb2NrLXRpdGxlX19sZXR0ZXItc3BhY2luZzogcmVtKDEpO1xyXG4kdHdvLWNvbC10d28taW1hZ2VzX19ibG9jay10aXRsZV9fbGluZS1oZWlnaHQ6IHJlbSgzMik7XHJcbiR0d28tY29sLXR3by1pbWFnZXNfX2xhcmdlLWltYWdlLXdyYXBwZXJfX21hcmdpbi1ib3R0b206IHJlbSgyMCk7XHJcbiR0d28tY29sLXR3by1pbWFnZXNfX3NtYWxsLWltYWdlX19tYXJnaW4tYm90dG9tOiByZW0oMCk7XHJcbiR0d28tY29sLXR3by1pbWFnZXNfX2J0bi13cmFwcGVyX19tYXJnaW4tdG9wOiByZW0oMjApO1xyXG4kdHdvLWNvbC10d28taW1hZ2VzX19vcmRlci1maXJzdF9fbWFyZ2luLWJvdHRvbTogcmVtKDQwKTtcclxuJHR3by1jb2wtdHdvLWltYWdlc19fYmxvY2stdGl0bGVfX3BhZGRpbmctdG9wOiByZW0oMTApO1xyXG4kdHdvLWNvbC10d28taW1hZ2VzX19ibG9jay10aXRsZV9fcGFkZGluZy1ib3R0b206IHJlbSgxMCk7XHJcbiR0d28tY29sLXR3by1pbWFnZXNfX2xhcmdlLWltYWdlLXdyYXBwZXItaW1hZ2VfX2hlaWdodF9fbWQ6IHJlbSg1NDYpO1xyXG4kdHdvLWNvbC10d28taW1hZ2VzX19zbWFsbC1pbWFnZV9fbWFyZ2luLWJvdHRvbV9fbWQ6IHJlbSg0MCk7XHJcbiR0d28tY29sLXR3by1pbWFnZXNfX2NvbnRlbnQtd3JhcHBlcl9fbWF4LXdpZHRoX19tZDogcmVtKDM1Mik7XHJcbiRzbWFsbC1pbWFnZS13cmFwcGVyX190ZXh0LXdyYXBwZXJfX3BhZGRpbmctbGVmdF9fbWQ6IHJlbSgyMCk7XHJcblxyXG4kdHdvLWNvbC10d28taW1hZ2VzX19sYXJnZS1pbWFnZS13cmFwcGVyLWltYWdlX19oZWlnaHRfX2xnOiByZW0oNTgwKTtcclxuJHR3by1jb2wtdHdvLWltYWdlc19fYmxvY2stdGl0bGVfX3BhZGRpbmctYm90dG9tX19sZzogcmVtKDI1KTtcclxuXHJcbi50d28tY29sLXR3by1pbWFnZXMge1xyXG4gICAgLmJsb2NrLXRpdGxlIGgxLFxyXG4gICAgLmJsb2NrLXRpdGxlIGgyLFxyXG4gICAgLmJsb2NrLXRpdGxlIGgzLFxyXG4gICAgLmJsb2NrLXRpdGxlIGg0LFxyXG4gICAgLmJsb2NrLXRpdGxlIGg1LFxyXG4gICAgLmJsb2NrLXRpdGxlIGg2LFxyXG4gICAgLmJsb2NrLXRpdGxlIHAge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiBzZXQoJHR3by1jb2wtdHdvLWltYWdlc19fYmxvY2stdGl0bGVfX3BhZGRpbmctdG9wKTtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogc2V0KCR0d28tY29sLXR3by1pbWFnZXNfX2Jsb2NrLXRpdGxlX19wYWRkaW5nLWJvdHRvbSk7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuXHJcbiAgICAuaW1hZ2Uge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgfVxyXG5cclxuICAgIC5sYXJnZS1pbWFnZS13cmFwcGVyLm9yZGVyLWZpcnN0IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiBzZXQoJHR3by1jb2wtdHdvLWltYWdlc19fbGFyZ2UtaW1hZ2Utd3JhcHBlcl9fbWFyZ2luLWJvdHRvbSk7XHJcbiAgICB9XHJcblxyXG4gICAgLnNtYWxsLWltYWdlLXdyYXBwZXIgLmltYWdlIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiBzZXQoJHR3by1jb2wtdHdvLWltYWdlc19fc21hbGwtaW1hZ2VfX21hcmdpbi1ib3R0b20pO1xyXG4gICAgfVxyXG5cclxuICAgIC5zbWFsbC1pbWFnZS13cmFwcGVyLm9yZGVyLWZpcnN0IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiBzZXQoJHR3by1jb2wtdHdvLWltYWdlc19fb3JkZXItZmlyc3RfX21hcmdpbi1ib3R0b20pO1xyXG4gICAgfVxyXG5cclxuICAgIC4tdmVydGljYWwgLmJ0bi13cmFwcGVyOm5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiBzZXQoJHR3by1jb2wtdHdvLWltYWdlc19fYnRuLXdyYXBwZXJfX21hcmdpbi10b3ApO1xyXG4gICAgfVxyXG5cclxuICAgIC5idG46bm90KC4td2hpdGUtdW5kZXJsaW5lZCk6bm90KC4tYmxhY2stdW5kZXJsaW5lZCkge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgIC5ibG9jay10aXRsZSBoMSxcclxuICAgIC5ibG9jay10aXRsZSBoMixcclxuICAgIC5ibG9jay10aXRsZSBoMyxcclxuICAgIC5ibG9jay10aXRsZSBoNCxcclxuICAgIC5ibG9jay10aXRsZSBoNSxcclxuICAgIC5ibG9jay10aXRsZSBoNiB7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHNldCgkdHdvLWNvbC10d28taW1hZ2VzX19ibG9jay10aXRsZV9fbGV0dGVyLXNwYWNpbmcpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBzZXQoJHR3by1jb2wtdHdvLWltYWdlc19fYmxvY2stdGl0bGVfX2xpbmUtaGVpZ2h0KTtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgLnR3by1jb2wtdHdvLWltYWdlcyB7XHJcbiAgICAgICAgLmxhcmdlLWltYWdlLXdyYXBwZXIgLmltYWdlIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiBzZXQoJHR3by1jb2wtdHdvLWltYWdlc19fbGFyZ2UtaW1hZ2Utd3JhcHBlci1pbWFnZV9faGVpZ2h0X19tZCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubGFyZ2UtaW1hZ2Utd3JhcHBlciB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MyU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubGFyZ2UtaW1hZ2Utd3JhcHBlci5vcmRlci1maXJzdCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc21hbGwtaW1hZ2Utd3JhcHBlciB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0NSU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc21hbGwtaW1hZ2Utd3JhcHBlciAuY29udGVudC13cmFwcGVyIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiBzZXQoJHR3by1jb2wtdHdvLWltYWdlc19fY29udGVudC13cmFwcGVyX19tYXgtd2lkdGhfX21kKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zbWFsbC1pbWFnZS13cmFwcGVyIC5saW5rLXdyYXBwZXIge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBzZXQoJHR3by1jb2wtdHdvLWltYWdlc19fc21hbGwtaW1hZ2VfX21hcmdpbi1ib3R0b21fX21kKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5idG4td3JhcHBlciAuYnRuIHtcclxuICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAudHdvLWNvbC10d28taW1hZ2VzIHtcclxuICAgICAgICAuYmxvY2stdGl0bGUgaDEsXHJcbiAgICAgICAgLmJsb2NrLXRpdGxlIGgyLFxyXG4gICAgICAgIC5ibG9jay10aXRsZSBoMyxcclxuICAgICAgICAuYmxvY2stdGl0bGUgaDQsXHJcbiAgICAgICAgLmJsb2NrLXRpdGxlIGg1LFxyXG4gICAgICAgIC5ibG9jay10aXRsZSBoNixcclxuICAgICAgICAuYmxvY2stdGl0bGUgcCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiBzZXQoJHR3by1jb2wtdHdvLWltYWdlc19fYmxvY2stdGl0bGVfX3BhZGRpbmctYm90dG9tX19sZyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubGFyZ2UtaW1hZ2Utd3JhcHBlciAuaW1hZ2Uge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubGFyZ2UtaW1hZ2Utd3JhcHBlciB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA2MCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc21hbGwtaW1hZ2Utd3JhcHBlciB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0MCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIkBpbXBvcnQgJy4uLy4uL3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJ2Jvb3RzdHJhcC9zY3NzL3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJ2Jvb3RzdHJhcC9zY3NzL21peGlucy9icmVha3BvaW50cyc7XHJcblxyXG4uc2hvcC1jYXRlZ29yeS1jb21wb25lbnQge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICBwYWRkaW5nOiAyZW0gNGVtO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4cykge1xyXG4gICAgICAgIHBhZGRpbmc6IDFlbSAyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zaG9wLWNhdGVnb3J5LWNvbXBvbmVudC1maWx0ZXI6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XHJcbiAgICBmaWx0ZXI6IGJyaWdodG5lc3MoNDAlKTtcclxufVxyXG5cclxuLnNob3AtY2F0ZWdvcnktaGVhZGVyIHtcclxuICAgIGNvbG9yOiAkc2hvcC1jYXRlZ29yeS1oZWFkZXItY29sb3I7XHJcbiAgICBmb250LWZhbWlseTogJHNob3AtY2F0ZWdvcnktZm9udDtcclxuICAgIGZvbnQtd2VpZ2h0OiAkc2hvcC1jYXRlZ29yeS1oZWFkZXItZm9udC13ZWlnaHQ7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogNGVtO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDJlbTtcclxuICAgIH1cclxufVxyXG5cclxuLnNob3AtY2F0ZWdvcnktaGVhZGVyLXRleHQtY29sb3Itb3RoZXIge1xyXG4gICAgY29sb3I6ICRzaG9wLWNhdGVnb3J5LWhlYWRlci1mb250LWNvbG9yLW90aGVyO1xyXG59XHJcblxyXG4uc2hvcC1jYXRlZ29yeS1sYWJlbCB7XHJcbiAgICBwYWRkaW5nOiAwLjM3NWVtIDAuNWVtO1xyXG4gICAgZm9udC1mYW1pbHk6ICRzaG9wLWNhdGVnb3J5LWZvbnQ7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgcGFkZGluZzogMC42MjVlbSAxLjVlbTtcclxuICAgIH1cclxufVxyXG5cclxuLnNob3AtY2F0ZWdvcnktbGFiZWwtYSB7XHJcbiAgICBjb2xvcjogJHNob3AtY2F0ZWdvcnktbGFiZWwtYS1jb2xvciAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uc2hvcC1jYXRlZ29yeS1sYWJlbC1hLWNvbG9yLW90aGVyIHtcclxuICAgIGNvbG9yOiAkc2hvcC1jYXRlZ29yeS1sYWJlbC1hLWNvbG9yLW90aGVyICFpbXBvcnRhbnQ7XHJcbn1cclxuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbiAhPSBudWxsIGFuZCAkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBsYXJnZXN0IChsYXN0KSBicmVha3BvaW50LlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgY2FsY3VsYXRlZCBhcyB0aGUgbWluaW11bSBvZiB0aGUgbmV4dCBvbmUgbGVzcyAwLjAycHhcbi8vIHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZiBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAcmV0dXJuIGlmKCRuZXh0LCBicmVha3BvaW50LW1pbigkbmV4dCwgJGJyZWFrcG9pbnRzKSAtIC4wMiwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW4gZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCJAaW1wb3J0ICdiYXNlL3ZhcmlhYmxlcyc7XHJcblxyXG4vLyBDb2xvcnNcclxuJGRhcmstYmx1ZTogIzAwMTc0ZjtcclxuXHJcbiRncmF5LTE6ICMyMjIgIWRlZmF1bHQ7XHJcbiRncmF5LTI6ICM0NDQgIWRlZmF1bHQ7XHJcbiRncmF5LTM6ICM5OTkgIWRlZmF1bHQ7XHJcbiRncmF5LTQ6ICNjY2MgIWRlZmF1bHQ7XHJcblxyXG4kZ3JheS10cmFuc3BhcmVudC0xOiByZ2JhKDAsIDAsIDAsIDAuNCkgIWRlZmF1bHQ7XHJcblxyXG4kbGlnaHQtZ3JheTogJGdyYXktNCAhZGVmYXVsdDtcclxuJGRhcmstZ3JheTogJGdyYXktMSAhZGVmYXVsdDtcclxuXHJcbi8vIEZvbnQgQ29sb3JzXHJcbiR3aGl0ZS10ZXh0OiAkd2hpdGUgIWRlZmF1bHQ7XHJcblxyXG4vLyBGb250IHNpemVzXHJcbiRiYXNlLWZvbnQtc2l6ZTogMXJlbSAhZGVmYXVsdDtcclxuJHhsLWZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMS42NyAhZGVmYXVsdDtcclxuJGxnLWZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMS41ICFkZWZhdWx0O1xyXG5cclxuJGhlYWRpbmctMS1mb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAqIDQgIWRlZmF1bHQ7XHJcbiRoZWFkaW5nLTItZm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgKiAzICFkZWZhdWx0O1xyXG4kaGVhZGluZy0zLWZvbnQtc2l6ZTogJHhsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcclxuJGhlYWRpbmctNC1mb250LXNpemU6ICRsZy1mb250LXNpemUgIWRlZmF1bHQ7XHJcblxyXG4vLyBGb250IGZhbWlseVxyXG4kYmFzZS1mb250LWZhbWlseTogRnV0dXJhU1REICFkZWZhdWx0O1xyXG5cclxuLy8gRm9udCB3ZWlnaHRcclxuJGZvbnQtd2VpZ2h0LWhlYXZpZXI6IDkwMCAhZGVmYXVsdDtcclxuXHJcbi8vIExpbmsgQmFubmVyIENvbXBvbmVudFxyXG4kc2hvcC1jYXRlZ29yeS1mb250OiAkYmFzZS1mb250LWZhbWlseSAhZGVmYXVsdDtcclxuJHNob3AtY2F0ZWdvcnktZm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XHJcbiRzaG9wLWNhdGVnb3J5LWhlYWRlci1jb2xvcjogJGRhcmstYmx1ZSAhZGVmYXVsdDtcclxuJHNob3AtY2F0ZWdvcnktaGVhZGVyLWZvbnQtY29sb3Itb3RoZXI6ICR3aGl0ZSAhZGVmYXVsdDtcclxuJHNob3AtY2F0ZWdvcnktaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtaGVhdmllciAhZGVmYXVsdDtcclxuJHNob3AtY2F0ZWdvcnktbGFiZWwtYS1jb2xvcjogJGRhcmstYmx1ZSAhZGVmYXVsdDtcclxuJHNob3AtY2F0ZWdvcnktbGFiZWwtYS1jb2xvci1vdGhlcjogJHdoaXRlICFkZWZhdWx0O1xyXG5cclxuJHRoaW4tYmFubmVyLWJhY2tncm91bmQtY29sb3I6ICRkYXJrLWJsdWU7XHJcbiR0aGluLWJhbm5lci10ZXh0LWNvbG9yOiAkd2hpdGU7XHJcblxyXG4iLCIvL1xyXG4vLyAgU2VhcmNoIGJhbm5lciBzdHlsZXNcclxuLy8gIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX1xyXG5cclxuJHNlYXJjaC1iYW5uZXJfX21vYmlsZV9fcGFkZGluZzogMCByZW0oMjApO1xyXG4kc2VhcmNoLWJhbm5lcl9fbWF4LXdpZHRoOiByZW0oMTkyMCk7XHJcbiRzZWFyY2gtYmFubmVyX19pbWFnZV9faGVpZ2h0OiByZW0oMzI2KTtcclxuJHBhZ2UtdGl0bGVfX3BscF9fcGFkZGluZy10b3A6IHJlbSgxNik7XHJcbiRwYWdlLXRpdGxlX19wbHBfX3BhZGRpbmctYm90dG9tOiByZW0oMjApO1xyXG4kcGFnZS10aXRsZV9fc3JwX19wYWRkaW5nLXRvcDogcmVtKDI1KTtcclxuXHJcbiRwYWdlLXRpdGxlX19wbHBfX3BhZGRpbmctdG9wX19tZDogcmVtKDE2KTtcclxuJHBhZ2UtdGl0bGVfX3BscF9fcGFkZGluZy1ib3R0b21fX21kOiByZW0oMTMpO1xyXG4kcGFnZS10aXRsZV9fc3JwX19wYWRkaW5nLXRvcF9fbWQ6IHJlbSg0NCk7XHJcbiRwYWdlLXRpdGxlX19zcnBfX21hcmdpbi1ib3R0b21fX21kOiByZW0oMTgpO1xyXG5cclxuJHNlYXJjaC1iYW5uZXJfX3BhZ2UtdGl0bGVfX3BhZGRpbmdfX2xnOiByZW0oMTYpIHJlbSg0MCk7XHJcbiRwYWdlLXRpdGxlX19wbHBfX3BhZGRpbmctYm90dG9tX19sZzogcmVtKDUpO1xyXG5cclxuLnNlYXJjaC1iYW5uZXIge1xyXG4gICAgJi4tbW9iaWxlIHtcclxuICAgICAgICBwYWRkaW5nOiBzZXQoJHNlYXJjaC1iYW5uZXJfX21vYmlsZV9fcGFkZGluZyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wYWdlLXRpdGxlLi1wbHAge1xyXG4gICAgcGFkZGluZy10b3A6IHNldCgkcGFnZS10aXRsZV9fcGxwX19wYWRkaW5nLXRvcCk7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogc2V0KCRwYWdlLXRpdGxlX19wbHBfX3BhZGRpbmctYm90dG9tKTtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuXHJcbi5wYWdlLXRpdGxlLi1zcnAge1xyXG4gICAgcGFkZGluZy10b3A6IHNldCgkcGFnZS10aXRsZV9fc3JwX19wYWRkaW5nLXRvcCk7XHJcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgLnBhZ2UtdGl0bGUuLXBscCB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IHNldCgkcGFnZS10aXRsZV9fcGxwX19wYWRkaW5nLXRvcF9fbWQpO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiBzZXQoJHBhZ2UtdGl0bGVfX3BscF9fcGFkZGluZy1ib3R0b21fX21kKTtcclxuICAgICAgICBmb250LXNpemU6IHJlbSgyNCk7XHJcbiAgICB9XHJcblxyXG4gICAgLnBhZ2UtdGl0bGUuLXNycCB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IHNldCgkcGFnZS10aXRsZV9fc3JwX19wYWRkaW5nLXRvcF9fbWQpO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHNldCgkcGFnZS10aXRsZV9fc3JwX19tYXJnaW4tYm90dG9tX19tZCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgIC5zZWFyY2gtYmFubmVyIHtcclxuICAgICAgICAmIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IHNldCgkc2VhcmNoLWJhbm5lcl9fbWF4LXdpZHRoKTtcclxuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmltYWdlLXdyYXBwZXIge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0oMjApO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnBhZ2UtdGl0bGUge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiBzZXQoJHNlYXJjaC1iYW5uZXJfX3BhZ2UtdGl0bGVfX3BhZGRpbmdfX2xnKTtcclxuICAgICAgICAgICAgY29sb3I6IHRoZW1lLWNvbG9yKCdwcmltYXJ5Jyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAucGFnZS10aXRsZS53aXRoLWltYWdlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYWJzb2x1dGUtY2VudGVyKCk7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGNvbG9yOiBjb2xvcignd2hpdGUnKTtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5pbWFnZSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHNldCgkc2VhcmNoLWJhbm5lcl9faW1hZ2VfX2hlaWdodCk7XHJcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucGFnZS10aXRsZS4tcGxwIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogc2V0KCRwYWdlLXRpdGxlX19wbHBfX3BhZGRpbmctYm90dG9tX19sZyk7XHJcbiAgICB9XHJcbn1cclxuIiwiLy9cclxuLy8gIEJhbm5lciB3aXRoIENhcm91c2VsXHJcbi8vICBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19cclxuXHJcbi8qIHN0eWxlbGludC1kaXNhYmxlICovXHJcbi5iYW5uZXItY2Fyb3VzZWwge1xyXG4gICAgJiB7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIH1cclxuXHJcbiAgICAuc3dpcGVyLWJ1dHRvbi1uZXh0LFxyXG4gICAgLnN3aXBlci1idXR0b24tcHJldiB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5pbWFnZS1hbmQtdGV4dC1jb250YWluZXIge1xyXG4gICAgICAgIC5pbWFnZS13cmFwcGVyIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmltYWdlLWhlYWRpbmctY29udGFpbmVyIHtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zd2lwZXItY29udGFpbmVyOm5vdCguaW5pdGlhbGl6ZWQpIC5zd2lwZXItc2xpZGUge1xyXG4gICAgICAgIGhlaWdodDogMDtcclxuICAgIH1cclxuXHJcbiAgICAuc2hhZGluZy1lbmFibGVkIHtcclxuICAgICAgICAuc3dpcGVyLXNsaWRlIHtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDRweCAwIHJnYmEoMCwgMCwgMCwgMC42KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zd2lwZXItY29udGFpbmVyIHtcclxuICAgICAgICAgICAgcGFkZGluZzogcmVtKDQpIHJlbSg0KTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUocmVtKC00KSwgcmVtKC00KSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5wcm9kdWN0LXRpbGUtYm9keSxcclxuICAgIC5pbWFnZS10ZXh0LWJ0biB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5wcm9kdWN0LXRpbGUtYm9keSB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLm5hcnJvdy1jb2x1bW4sXHJcbiAgICAud2lkZS1jb2x1bW4ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5jbHAtY2Fyb3VzZWwge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHJlbSgtMjApO1xyXG4gICAgfVxyXG5cclxuICAgIC5wcm9kdWN0LXRpbGUtcGQge1xyXG4gICAgICAgICYge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcignd2hpdGUnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5idG4td3JhcHBlcixcclxuICAgICAgICAuc2l6ZXMtb3ZlcmxheSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgLmJhbm5lci1jYXJvdXNlbCB7XHJcbiAgICAgICAgLm1vYmlsZS1zaGlmdGVkIHtcclxuICAgICAgICAgICAgJi5jbHAtY2Fyb3VzZWwge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbSgyMCk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5zd2lwZXItY29udGFpbmVyIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDYlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiByZW0oMjYpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubW9iaWxlLXR3by10aWxlcyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubW9iaWxlLXR3by10aWxlcyAuc3dpcGVyLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubW9iaWxlLWNlbnRlcmVkIHtcclxuICAgICAgICAgICAgLnN3aXBlci1jb250YWluZXIge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ5LjUlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY2xwLWNhcm91c2VsLm1vYmlsZS1jZW50ZXJlZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKG1kLCB4bCkge1xyXG4gICAgLmJhbm5lci1jYXJvdXNlbCB7XHJcbiAgICAgICAgLmNscC1jYXJvdXNlbCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yMy41JTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50YWJsZXQtMSAuc3dpcGVyLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzMSU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudGFibGV0LTIgLnN3aXBlci1jb250YWluZXIge1xyXG4gICAgICAgICAgICB3aWR0aDogNjMlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnRhYmxldC0zIC5zd2lwZXItY29udGFpbmVyIHtcclxuICAgICAgICAgICAgd2lkdGg6IDk1JTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgIC5iYW5uZXItY2Fyb3VzZWwgLmNscC1jYXJvdXNlbCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtKC0yMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcclxuICAgIC5iYW5uZXItY2Fyb3VzZWwgLnByb2R1Y3QtdGlsZSAucHJvZHVjdC10aWxlLWJvZHkge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbSgxMCk7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oMTApO1xyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XHJcbiAgICAuYmFubmVyLWNhcm91c2VsIHtcclxuICAgICAgICAmIHtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuY2hhbmdlLW9yZGVyIHtcclxuICAgICAgICAgICAgLmNvbHVtbnMtd3JhcHBlciB7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5kZXNrdG9wLTIgLnN3aXBlci1jb250YWluZXIge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0oLTczKTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuZGVza3RvcC0zIC5zd2lwZXItY29udGFpbmVyIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTcyJTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0oNDApO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDQwKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jb2x1bW5zLXdyYXBwZXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLndpZGUtY29sdW1uIHtcclxuICAgICAgICAgICAgd2lkdGg6IDcyJTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5uYXJyb3ctY29sdW1uIHtcclxuICAgICAgICAgICAgd2lkdGg6IDI4JTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jbHAtY2Fyb3VzZWwge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRlc2t0b3AtMSAuc3dpcGVyLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1Mi41JTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5kZXNrdG9wLTIgLnN3aXBlci1jb250YWluZXIge1xyXG4gICAgICAgICAgICB3aWR0aDogMTA3LjIlO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtKC03Myk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZGVza3RvcC0zIC5zd2lwZXItY29udGFpbmVyIHtcclxuICAgICAgICAgICAgd2lkdGg6IDE2NSU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNzIlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4vKiBzdHlsZWxpbnQtZW5hYmxlICovXHJcbiIsIi8vXHJcbi8vICBOZXdzbGV0dGVyIFBEIGNvbXBvbmVudFxyXG4vLyAgX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXHJcblxyXG4kbmV3c2xldHRlci1wZF9fZW1haWwtc3Vic2NyaXB0aW9uX19wYWRkaW5nOiByZW0oMzApIHJlbSgyMCkgcmVtKDI4KTtcclxuJG5ld3NsZXR0ZXItcGRfX2VtYWlsLW1haW4tdGV4dF9fbWFyZ2luLWJvdHRvbTogcmVtKDgpO1xyXG4kbmV3c2xldHRlci1wZF9fbWFpbi1oX19tYXJnaW4tYm90dG9tOiByZW0oMjMpO1xyXG4kbmV3c2xldHRlci1wZF9fc3VjY2Vzcy1oX19tYXJnaW4tYm90dG9tOiByZW0oMjApO1xyXG4kbmV3c2xldHRlci1wZF9fZW1haWwtd3JhcHBlcl9fbWFyZ2luLWJvdHRvbTogcmVtKDIwKTtcclxuJG5ld3NsZXR0ZXItcGRfX2N1c3RvbS1jaGVja2JveF9fbWFyZ2luLXJpZ2h0OiByZW0oNDApO1xyXG4kbmV3c2xldHRlci1wZF9fYWRkaXRpb25hbF9fcGFkZGluZy10b3A6IHJlbSgzKTtcclxuJG5ld3NsZXR0ZXItcGRfX2NvbnNlbnRfX21hcmdpbi10b3A6IHJlbSgyNSk7XHJcblxyXG4kbmV3c2xldHRlci1wZF9fZW1haWwtc3Vic2NyaXB0aW9uX19wYWRkaW5nLXRvcF9fbWQ6IHJlbSg0MCk7XHJcbiRuZXdzbGV0dGVyLXBkX19pbWFnZV9fbWluLWhlaWdodF9fbWQ6IHJlbSg1NzgpO1xyXG5cclxuJG5ld3NsZXR0ZXItcGRfX2ltYWdlX19wYWRkaW5nX194bDogcmVtKDExNik7XHJcbiRuZXdzbGV0dGVyLXBkX19pbWFnZV9fcGFkZGluZy10b3BfX3hsOiByZW0oNjApO1xyXG4kbmV3c2xldHRlci1wZF9faW1hZ2VfX21hcmdpbi1ib3R0b21fX3hsOiByZW0oMTApO1xyXG5cclxuJG5ld3NsZXR0ZXItcGRfX2ltYWdlX19wYWRkaW5nX194eHhsOiByZW0oMTEwKTtcclxuJG5ld3NsZXR0ZXItcGRfX2ltYWdlX19tYXgtd2lkdGhfX3h4eGw6IHJlbSg1NjApO1xyXG4kbmV3c2xldHRlci1wZF9faW1hZ2VfX21hcmdpbi1sZWZ0X194eHhsOiByZW0oOTApO1xyXG5cclxuLm5ld3NsZXR0ZXItcGQge1xyXG4gICAgLmVtYWlsLXN1YnNjcmlwdGlvbiB7XHJcbiAgICAgICAgcGFkZGluZzogc2V0KCRuZXdzbGV0dGVyLXBkX19lbWFpbC1zdWJzY3JpcHRpb25fX3BhZGRpbmcpO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGNvbG9yOiB0aGVtZS1jb2xvcigncHJpbWFyeScpO1xyXG4gICAgfVxyXG5cclxuICAgIC5qcy1zdWJzY3JpYmUtZW1haWwuLWJsYWNrLXVuZGVybGluZWQsXHJcbiAgICAuanMtc3Vic2NyaWJlLWVtYWlsLi13aGl0ZS11bmRlcmxpbmVkIHtcclxuICAgICAgICBmbGV4OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKCd3aGl0ZScpO1xyXG4gICAgICAgIGNvbG9yOiB0aGVtZS1jb2xvcigncHJpbWFyeScpO1xyXG4gICAgfVxyXG5cclxuICAgIC5qcy1mb3JtIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAubWFpbi10ZXh0IHtcclxuICAgICAgICAmIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogc2V0KCRuZXdzbGV0dGVyLXBkX19lbWFpbC1tYWluLXRleHRfX21hcmdpbi1ib3R0b20pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDEsXHJcbiAgICAgICAgaDIsXHJcbiAgICAgICAgaDMsXHJcbiAgICAgICAgaDQsXHJcbiAgICAgICAgaDUsXHJcbiAgICAgICAgaDYge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBzZXQoJG5ld3NsZXR0ZXItcGRfX21haW4taF9fbWFyZ2luLWJvdHRvbSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zdWJzY3JpcHRpb24tc3VjY2VzcyB7XHJcbiAgICAgICAgaDEsXHJcbiAgICAgICAgaDIsXHJcbiAgICAgICAgaDMsXHJcbiAgICAgICAgaDQsXHJcbiAgICAgICAgaDUsXHJcbiAgICAgICAgaDYge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBzZXQoJG5ld3NsZXR0ZXItcGRfX3N1Y2Nlc3MtaF9fbWFyZ2luLWJvdHRvbSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBwOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZW1haWwtd3JhcHBlciB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogc2V0KCRuZXdzbGV0dGVyLXBkX19lbWFpbC13cmFwcGVyX19tYXJnaW4tYm90dG9tKTtcclxuICAgIH1cclxuXHJcbiAgICAuYWRkaXRpb25hbCB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IHNldCgkbmV3c2xldHRlci1wZF9fYWRkaXRpb25hbF9fcGFkZGluZy10b3ApO1xyXG4gICAgfVxyXG5cclxuICAgIC5jaGVja2JveC13cmFwcGVyIC5jdXN0b20tY2hlY2tib3g6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBzZXQoJG5ld3NsZXR0ZXItcGRfX2N1c3RvbS1jaGVja2JveF9fbWFyZ2luLXJpZ2h0KTtcclxuICAgIH1cclxuXHJcbiAgICAuY29uc2VudCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogc2V0KCRuZXdzbGV0dGVyLXBkX19jb25zZW50X19tYXJnaW4tdG9wKTtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgLm5ld3NsZXR0ZXItcGQge1xyXG4gICAgICAgIC5lbWFpbC1zdWJzY3JpcHRpb24ge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiBzZXQoJG5ld3NsZXR0ZXItcGRfX2VtYWlsLXN1YnNjcmlwdGlvbl9fcGFkZGluZy10b3BfX21kKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5qcy1mb3JtIHtcclxuICAgICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5pbWFnZSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHNldCgkbmV3c2xldHRlci1wZF9faW1hZ2VfX21pbi1oZWlnaHRfX21kKTtcclxuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcblxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJ0bi5qcy1zdWJzY3JpYmUtZW1haWwge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3Vic2NyaXB0aW9uLXN1Y2Nlc3Mge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcclxuICAgIC5uZXdzbGV0dGVyLXBkIHtcclxuICAgICAgICAuZW1haWwtc3Vic2NyaXB0aW9uIHtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogc2V0KCRuZXdzbGV0dGVyLXBkX19pbWFnZV9fcGFkZGluZ19feGwpO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHNldCgkbmV3c2xldHRlci1wZF9faW1hZ2VfX3BhZGRpbmdfX3hsKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5qcy1mb3JtIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IHNldCgkbmV3c2xldHRlci1wZF9faW1hZ2VfX3BhZGRpbmctdG9wX194bCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZW1haWwtc3Vic2NyaXB0aW9uIC5jb25zZW50IHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogc2V0KCRuZXdzbGV0dGVyLXBkX19pbWFnZV9fbWFyZ2luLWJvdHRvbV9feGwpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4eHhsKSB7XHJcbiAgICAubmV3c2xldHRlci1wZCAuanMtZm9ybSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiBzZXQoJG5ld3NsZXR0ZXItcGRfX2ltYWdlX19tYXgtd2lkdGhfX3h4eGwpO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiBzZXQoJG5ld3NsZXR0ZXItcGRfX2ltYWdlX19wYWRkaW5nX194eHhsKTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogc2V0KCRuZXdzbGV0dGVyLXBkX19pbWFnZV9fbWFyZ2luLWxlZnRfX3h4eGwpO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vXHJcbi8vICBHZW5kZXIgU2VsZWN0XHJcbi8vICBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19cclxuXHJcbiRnZW5kZXItYmxvY2tfX2J1dHRvbnMtYmxvY2tfX2JvdHRvbTogcmVtKDQwKTtcclxuJGdlbmRlci1ibG9ja19fYnRuLXdyYXBwZXJfX21hcmdpbi1ib3R0b206IHJlbSgxMik7XHJcbiRoZWFkZXJfX2hlaWdodDogcmVtKDEwNSk7XHJcbiRnZW5kZXItYmxvY2tfX2J0bl9fbWluLXdpZHRoOiByZW0oMjgwKTtcclxuXHJcbiRnZW5kZXItYmxvY2tfX2J0bl9fbWluLXdpZHRoX19tZDogcmVtKDMyMCk7XHJcblxyXG4kaGVhZGVyX19oZWlnaHRfX2xnOiByZW0oMTExKTtcclxuJGdlbmRlci1ibG9ja19fbGluay13cmFwcGVyX19tYXJnaW4tcmlnaHRfX2xnOiByZW0oNCk7XHJcblxyXG5cclxuLmdlbmRlci1ibG9jayB7XHJcbiAgICAmIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ1dHRvbnMtYmxvY2sge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBib3R0b206IHNldCgkZ2VuZGVyLWJsb2NrX19idXR0b25zLWJsb2NrX19ib3R0b20pO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5idG4td3JhcHBlcjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiBzZXQoJGdlbmRlci1ibG9ja19fYnRuLXdyYXBwZXJfX21hcmdpbi1ib3R0b20pO1xyXG4gICAgfVxyXG5cclxuICAgIC5pdGVtIHtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAuaW1hZ2Uge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBmb250LWZhbWlseTogJ29iamVjdC1maXQ6IGNvdmVyOyBvYmplY3QtcG9zaXRpb246IGNlbnRlciB0b3A7JztcclxuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlciB0b3A7XHJcbiAgICB9XHJcblxyXG4gICAgLml0ZW06bnRoLWNoaWxkKDEpLFxyXG4gICAgLml0ZW06bnRoLWNoaWxkKDMpIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5saW5rLXdyYXBwZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtICN7JGhlYWRlcl9faGVpZ2h0fSk7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ0bjpub3QoLi13aGl0ZS11bmRlcmxpbmVkKTpub3QoLi1ibGFjay11bmRlcmxpbmVkKSB7XHJcbiAgICAgICAgbWluLXdpZHRoOiBzZXQoJGdlbmRlci1ibG9ja19fYnRuX19taW4td2lkdGgpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYm9keS13cmFwcGVyLmlzLXRyYW5zcGFyZW50IC5nZW5kZXItYmxvY2sgLmxpbmstd3JhcHBlciB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGhlaWdodDogMTAwdmg7XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgIC5nZW5kZXItYmxvY2sge1xyXG4gICAgICAgIC5idG46bm90KC4td2hpdGUtdW5kZXJsaW5lZCk6bm90KC4tYmxhY2stdW5kZXJsaW5lZCkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB3aWR0aDogc2V0KCRnZW5kZXItYmxvY2tfX2J0bl9fbWluLXdpZHRoX19tZCk7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogc2V0KCRnZW5kZXItYmxvY2tfX2J0bl9fbWluLXdpZHRoX19tZCk7XHJcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5idG4uLXdoaXRlLXVuZGVybGluZWQsXHJcbiAgICAgICAgLmJ0bi4tYmxhY2stdW5kZXJsaW5lZCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgLmdlbmRlci1ibG9jayB7XHJcbiAgICAgICAgJiB7XHJcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmxpbmstd3JhcHBlciB7XHJcbiAgICAgICAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtICN7JGhlYWRlcl9faGVpZ2h0X19sZ30pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciAuaXRlbTpub3QoOmhvdmVyKSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKCd3aGl0ZScpO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBsaW5lYXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaXRlbTpudGgtY2hpbGQoMSksXHJcbiAgICAgICAgLml0ZW06bnRoLWNoaWxkKDMpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubGluay13cmFwcGVyIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBzZXQoJGdlbmRlci1ibG9ja19fbGluay13cmFwcGVyX19tYXJnaW4tcmlnaHRfX2xnKTtcclxuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaXRlbSAuYnRuLXdyYXBwZXIge1xyXG4gICAgICAgICAgICAvLyBAaW5jbHVkZSBhYnNvbHV0ZS1jZW50ZXIoJF92ZXJ0aWNhbDogZmFsc2UpO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogc2V0KCRnZW5kZXItYmxvY2tfX2J1dHRvbnMtYmxvY2tfX2JvdHRvbSk7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLml0ZW06bnRoLWNoaWxkKDMpIC5saW5rLXdyYXBwZXIge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5ib2R5LXdyYXBwZXIuaXMtdHJhbnNwYXJlbnQgLmdlbmRlci1ibG9jayAubGluay13cmFwcGVyIHtcclxuICAgICAgICBoZWlnaHQ6IDEwMHZoO1xyXG4gICAgfVxyXG59XHJcbiIsIkBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcclxuXHJcbjpyb290IHtcclxuICAgIC8qKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqKi9cclxuXHJcbiAgICAvKiogQ3JlYXRlIEN1c3RvbSBDU1MgVmFyaWFibGVzIGZyb20gXCJzZnJhIGJvb3RzdHJhcCBvdmVycmlkZVwiIHZhcmlhYmxlcyAqKi9cclxuXHJcbiAgICAvKiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKiovXHJcbiAgICAtLWNvbG9yLXdoaXRlOiAjeyR3aGl0ZX07XHJcbiAgICAtLWNvbG9yLWJsYWNrOiAjeyRibGFja307XHJcbiAgICAtLWNvbG9yLWJsdWU6ICN7JGJsdWV9O1xyXG4gICAgLS1jb2xvci1ncmVlbjogI3skZ3JlZW59O1xyXG4gICAgLS1jb2xvci1wcmltYXJ5OiAjMDBhMWUwO1xyXG4gICAgLS1jb2xvci1yZWQ6ICN7JHJlZH07XHJcbiAgICAtLWNvbG9yLXN1Y2Nlc3M6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuICAgIC0tY29sb3ItZGFuZ2VyOiB2YXIoLS1jb2xvci1yZWQpO1xyXG4gICAgLS1jb2xvci1saWdodC1ibHVlOiAjeyRsaWdodC1ibHVlfTtcclxuXHJcbiAgICAvLyBDb25zb2xpZGF0ZWQgdmFsdWVzXHJcbiAgICAtLWNvbG9yLWdyZXkxOiAjeyRncmV5MX07XHJcbiAgICAtLWNvbG9yLWdyZXkyOiAjeyRncmV5Mn07XHJcbiAgICAtLWNvbG9yLWdyZXkzOiAjeyRncmV5M307XHJcbiAgICAtLWNvbG9yLWdyZXk0OiAjeyRncmV5NH07XHJcbiAgICAtLWNvbG9yLWdyZXk1OiAjeyRncmV5NX07XHJcbiAgICAtLWNvbG9yLWdyZXk2OiAjeyRncmV5Nn07XHJcbiAgICAtLWNvbG9yLWdyZXk3OiAjeyRncmV5N307XHJcbiAgICAtLWNvbG9yLWdyZXk4OiAjeyRncmV5OH07XHJcbiAgICAtLWNvbG9yLWdyZXktdHJhbnNwYXJlbnQtMTogcmdiYSgwLCAwLCAwLCAwLjY1KTtcclxuICAgIC0tY29sb3ItZ3JleS10cmFuc3BhcmVudC0yOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xyXG4gICAgLS1jb2xvci1saWdodC1ncmF5OiB2YXIoLS1jb2xvci1ncmV5MSk7XHJcbiAgICAtLWNvbG9yLXNsaWdodGx5LWRhcmtlci1ncmF5OiB2YXIoLS1jb2xvci1ncmV5NCk7XHJcbiAgICAtLWNvbG9yLWRhcmstZ3JheTogdmFyKC0tY29sb3ItZ3JleTYpO1xyXG4gICAgLS1jb2xvci1kYXJrZXItZ3JheTogdmFyKC0tY29sb3ItZ3JleTcpO1xyXG4gICAgLS1jb2xvci1ob3Jpem9udGFsLXJ1bGUtZ3JleTogdmFyKC0tY29sb3ItZ3JleTMpO1xyXG4gICAgLS1jb2xvci1wcm9kdWN0LW51bWJlci1ncmV5OiB2YXIoLS1jb2xvci1ncmV5Myk7XHJcbiAgICAtLWNvbG9yLWhvcml6b250YWwtYm9yZGVyLWdyZXk6IHZhcigtLWNvbG9yLWdyZXk0KTtcclxuICAgIC0tY29sb3ItbWVudS1saW5rOiB2YXIoLS1jb2xvci1ncmV5Nik7XHJcbiAgICAtLWNvbG9yLWNsb3NlLW1lbnUtYmc6IHZhcigtLWNvbG9yLWdyZXkyKTtcclxuICAgIC0tY29sb3ItbGluay1jb2xvcjogdmFyKC0tY29sb3ItZGFyay1ncmF5KTtcclxuICAgIC0tY29sb3ItaHItYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ncmV5Myk7XHJcblxyXG4gICAgLyoqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICoqL1xyXG5cclxuICAgIC8qKiBEZWZpbmUgc2tpbiBuYW1lZCB2YXJpYWJsZXMgaGVyZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICoqL1xyXG5cclxuICAgIC8qKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqKi9cclxuICAgIC0tc2tpbi1iYWNrZ3JvdW5kLWNvbG9yLTE6IHZhcigtLWNvbG9yLWdyYXkxKTtcclxuICAgIC0tc2tpbi1ib3JkZXItY29sb3ItMTogdmFyKC0tY29sb3Itd2hpdGUpO1xyXG4gICAgLS1za2luLW1haW4tdGV4dC1jb2xvci0xOiB2YXIoLS1jb2xvci1ncmF5Nyk7XHJcbiAgICAtLXNraW4tbWFpbi10ZXh0LWNvbG9yLTI6IHZhcigtLWNvbG9yLWdyYXk3KTtcclxuICAgIC0tc2tpbi1tZW51LWNvbG9yLTE6ICM0NDQ7XHJcbiAgICAtLXNraW4tbWVudS1jb2xvci0xLWludmVydDogdmFyKC0tY29sb3Itd2hpdGUpO1xyXG4gICAgLS1za2luLW1lbnUtY29sb3ItMjogIzIyMjtcclxuICAgIC0tc2tpbi1saW5rLWNvbG9yLTE6ICM0NDQ7XHJcbiAgICAtLXNraW4tbGluay1jb2xvci0yOiB2YXIoLS1jb2xvci1ibHVlKTtcclxuICAgIC0tc2tpbi1wcmltYXJ5LWNvbG9yLTE6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xyXG4gICAgLS1za2luLXByaW1hcnktY29sb3ItMjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XHJcbiAgICAtLXNraW4tcHJpbWFyeS1jb2xvci1pbnZlcnQtMTogdmFyKC0tY29sb3Itd2hpdGUpO1xyXG4gICAgLS1za2luLXNlbGVjdGJveC1iYWNrZ3JvdW5kLWNvbG9yLTE6IHZhcigtLWNvbG9yLXdoaXRlKTtcclxuICAgIC0tc2tpbi1zZWxlY3Rib3gtdGV4dC1jb2xvci0xOiB2YXIoLS1za2luLW1haW4tdGV4dC1jb2xvci0xKTtcclxuICAgIC0tc2tpbi1iYW5uZXItYmFja2dyb3VuZC1jb2xvci0xOiAjNDQ0O1xyXG4gICAgLS1za2luLWJhbm5lci1iYWNrZ3JvdW5kLWNvbG9yLTI6ICMyMjI7XHJcbiAgICAtLXNraW4tYmFubmVyLXRleHQtY29sb3ItMTogdmFyKC0tY29sb3Itd2hpdGUpO1xyXG4gICAgLS1za2luLWhlYWRpbmctY29sb3ItMTogdmFyKC0tY29sb3ItcHJpbWFyeSk7XHJcbiAgICAtLXNraW4taGVhZGluZy1jb2xvci0xLWludmVydDogdmFyKC0tY29sb3Itd2hpdGUpO1xyXG4gICAgLS1za2luLXByaWNlLTE6IHZhcigtLWNvbG9yLWdyYXk3KTtcclxuICAgIC0tc2tpbi1oZWFkZXItZm9udDogJ0Rvc2lzJztcclxuICAgIC0tc2tpbi1ib2R5LWZvbnQ6IHZhcigtLWZvbnQtZmFtaWx5LXNhbnMtc2VyaWYpO1xyXG59XHJcbiIsIiRwdWxsOiBsZWZ0LCByaWdodDtcclxuXHJcbkBtaXhpbiBtZWRpYSgkc2l6ZSkge1xyXG5cclxuICAgIEBpZiAkc2l6ZSA9PSB4cyB7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJHNpemUpIHtcclxuICAgICAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfSBAZWxzZSB7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkc2l6ZSkge1xyXG4gICAgICAgICAgICBAY29udGVudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBlYWNoICRzaXplIGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNpemUpIHtcclxuXHJcbiAgICAgICAgQGVhY2ggJHNpZGUgaW4gJHB1bGwge1xyXG4gICAgICAgICAgICAucHVsbC0jeyRzaWRlfS0jeyRzaXplfSB7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDogJHNpZGU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBlYWNoICRicCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xyXG4gICAgLmhpZGRlbi0jeyRicH0tZG93biB7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnApIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnJvdy5lcXVhbC1oZWlnaHQgPiBbY2xhc3NePVwiY29sXCJdIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuIiwiLmZsYWctaWNvbi1iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbi5mbGFnLWljb24ge1xuICBAZXh0ZW5kIC5mbGFnLWljb24tYmFja2dyb3VuZDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAoNCAvIDMpICogMWVtO1xuICBsaW5lLWhlaWdodDogMWVtO1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcMDBhMCc7XG4gIH1cbiAgJi5mbGFnLWljb24tc3F1YXJlZCB7XG4gICAgd2lkdGg6IDFlbTtcbiAgfVxufVxuXG5AbWl4aW4gZmxhZy1pY29uKCRjb3VudHJ5KSB7XG4gIC5mbGFnLWljb24tI3skY291bnRyeX0ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgjeyRmbGFnLWljb24tY3NzLXBhdGh9I3skZmxhZy1pY29uLXJlY3QtcGF0aH0vI3skY291bnRyeX0uc3ZnKTtcbiAgICAmLmZsYWctaWNvbi1zcXVhcmVkIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgjeyRmbGFnLWljb24tY3NzLXBhdGh9I3skZmxhZy1pY29uLXNxdWFyZS1wYXRofS8jeyRjb3VudHJ5fS5zdmcpO1xuICAgIH1cbiAgfVxufVxuIiwiLnZlaWwge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgei1pbmRleDogMTAwO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG5cclxuICAgIC51bmRlcmxheSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBvcGFjaXR5OiAwLjU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xyXG4gICAgfVxyXG59XHJcblxyXG4kc3Bpbm5lci1zaXplOiA4MHB4O1xyXG5cclxuLnNwaW5uZXIge1xyXG4gICAgd2lkdGg6ICRzcGlubmVyLXNpemU7XHJcbiAgICBoZWlnaHQ6ICRzcGlubmVyLXNpemU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBhbmltYXRpb246IHNrLXJvdGF0ZSAycyBpbmZpbml0ZSBsaW5lYXI7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIG1hcmdpbi10b3A6ICRzcGlubmVyLXNpemUgLyAyICogLTE7XHJcbiAgICBtYXJnaW4tbGVmdDogJHNwaW5uZXItc2l6ZSAvIDIgKiAtMTtcclxufVxyXG5cclxuLmRvdDEsXHJcbi5kb3QyIHtcclxuICAgIHdpZHRoOiA2MCU7XHJcbiAgICBoZWlnaHQ6IDYwJTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICBhbmltYXRpb246IHNrLWJvdW5jZSAycyBpbmZpbml0ZSBlYXNlLWluLW91dDtcclxufVxyXG5cclxuLmRvdDIge1xyXG4gICAgdG9wOiBhdXRvO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiAtMXM7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc2stcm90YXRlIHtcclxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc2stYm91bmNlIHtcclxuICAgIDAlLFxyXG4gICAgMTAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMCk7IH1cclxuICAgIDUwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cclxufVxyXG4iLCIubm90aWZ5IHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRvcDogMDtcclxufVxyXG4iLCJAaW1wb3J0IFwiLi4vdmFyaWFibGVzXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvc2Nzcy92YXJpYWJsZXNcIjtcclxuQGltcG9ydCBcImJvb3RzdHJhcC9zY3NzL21peGlucy9icmVha3BvaW50c1wiO1xyXG5cclxuLmZvcm0tbmF2IC5uYXYtdGFicyAubmF2LWxpbmsge1xyXG4gICAgY29sb3I6ICRncmV5ODtcclxufVxyXG5cclxuLmZvcm0tbmF2IC5uYXYtdGFicyAubmF2LWxpbmsuYWN0aXZlLFxyXG4uZm9ybS1uYXYgLm5hdi10YWJzIC5uYXYtbGluay5hY3RpdmU6Zm9jdXMsXHJcbi5mb3JtLW5hdiAubmF2LXRhYnMgLm5hdi1saW5rLmFjdGl2ZTpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICBjb2xvcjogJGdyZXk4O1xyXG59XHJcblxyXG4ubmF2LXRhYnMgLm5hdi1saW5rLmFjdGl2ZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgLmZvcm0tbmF2IC5uYXYtaXRlbSA+IC5uYXYtbGluayB7XHJcbiAgICAgICAgY29sb3I6ICRncmV5ODtcclxuICAgIH1cclxufVxyXG4iLCJAaW1wb3J0IFwiYm9vdHN0cmFwL3Njc3MvZnVuY3Rpb25zXCI7XHJcblxyXG4vLyBmb250LWF3ZXNvbWUgZm9udCBmaWxlIGxvY2F0aW9ucyBpbiByZWxhdGlvbiB0byB0YXJnZXQgbG9jYXRpb24gb2YgdGhlIGNzcyBmaWxlLlxyXG4kZmEtZm9udC1wYXRoOiBcIi4uL2ZvbnRzXCIgIWRlZmF1bHQ7XHJcblxyXG4vLyBmbGFnIGljb25zIGxvY2F0aW9uIGluIHJlbGF0aW9uIHRvIHRhcmdldCBsb2NhdGlvbiBvZiB0aGUgY3NzIGZpbGUuXHJcbiRmbGFnLWljb24tY3NzLXBhdGg6IFwiLi4vZm9udHMvZmxhZ3MvXCIgIWRlZmF1bHQ7XHJcblxyXG4kd2hpdGU6ICNmZmYgIWRlZmF1bHQ7XHJcbiRibGFjazogIzAwMCAhZGVmYXVsdDtcclxuJGJsdWU6ICMwMDcwZDIgIWRlZmF1bHQ7XHJcbiRncmVlbjogIzAwODgyNyAhZGVmYXVsdDtcclxuLy8gcHJpbWFyeSBpcyByZXBsYWNlZCBieSBjc3MgdmFyaWFibGUgLS1za2luLXByaW1hcnktY29sb3ItMVxyXG4kcHJpbWFyeTogIzAwYTFlMCAhZGVmYXVsdDtcclxuJHJlZDogI2MwMCAhZGVmYXVsdDtcclxuJHN1Y2Nlc3M6ICRncmVlbiAhZGVmYXVsdDtcclxuJGRhbmdlcjogJHJlZCAhZGVmYXVsdDtcclxuJGxpZ2h0LWJsdWU6ICM3ZWQwZWUgIWRlZmF1bHQ7XHJcblxyXG4vLyBDb25zb2xpZGF0ZWQgdmFsdWVzXHJcbiRncmV5MTogI2Y5ZjlmOSAhZGVmYXVsdDtcclxuJGdyZXkyOiAjZWVlICFkZWZhdWx0O1xyXG4kZ3JleTM6ICNjY2MgIWRlZmF1bHQ7XHJcbiRncmV5NDogIzk5OSAhZGVmYXVsdDtcclxuJGdyZXk1OiAjNjY2ICFkZWZhdWx0O1xyXG4kZ3JleTY6ICM0NDQgIWRlZmF1bHQ7XHJcbiRncmV5NzogIzIyMiAhZGVmYXVsdDtcclxuJGdyZXk4OiAjMzMzICFkZWZhdWx0O1xyXG4kZ3JleS10cmFuc3BhcmVudC0xOiByZ2JhKDAsIDAsIDAsIDAuNjUpICFkZWZhdWx0O1xyXG4kZ3JleS10cmFuc3BhcmVudC0yOiByZ2JhKDAsIDAsIDAsIDAuMjUpICFkZWZhdWx0O1xyXG5cclxuJGxpZ2h0LWdyYXk6ICRncmV5MSAhZGVmYXVsdDtcclxuJHNsaWdodGx5LWRhcmtlci1ncmF5OiAkZ3JleTQgIWRlZmF1bHQ7XHJcbiRkYXJrLWdyYXk6ICRncmV5NiAhZGVmYXVsdDtcclxuJGRhcmtlci1ncmF5OiAkZ3JleTcgIWRlZmF1bHQ7XHJcbiRob3Jpem9udGFsLXJ1bGUtZ3JleTogJGdyZXkzICFkZWZhdWx0O1xyXG4kcHJvZHVjdC1udW1iZXItZ3JleTogJGdyZXkzICFkZWZhdWx0O1xyXG4kaG9yaXpvbnRhbC1ib3JkZXItZ3JleTogJGdyZXk0ICFkZWZhdWx0O1xyXG4kbWVudS1saW5rOiAkZ3JleTYgIWRlZmF1bHQ7XHJcbiRjbG9zZS1tZW51LWJnOiAkZ3JleTIgIWRlZmF1bHQ7XHJcbiRsaW5rLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xyXG4kaHItYm9yZGVyLWNvbG9yOiAkZ3JleTMgIWRlZmF1bHQ7XHJcblxyXG4kZ3JpZC1icmVha3BvaW50czogKFxyXG4gICAgeHM6IDAsXHJcbiAgICBzbTogNTQ0cHgsXHJcbiAgICBtZDogNzY5cHgsXHJcbiAgICBsZzogOTkycHgsXHJcbiAgICB4bDogMTIwMHB4XHJcbikgIWRlZmF1bHQ7XHJcblxyXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcclxuICAgIG1kOiA3MjBweCxcclxuICAgIGxnOiA5NDBweCxcclxuICAgIHhsOiAxMTQwcHhcclxuKSAhZGVmYXVsdDtcclxuXHJcbiRib3JkZXItcmFkaXVzOiAwLjE4NzVyZW0gIWRlZmF1bHQ7XHJcbiRib3JkZXItcmFkaXVzLWxnOiAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcclxuJGJvcmRlci1yYWRpdXMtc206ICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xyXG5cclxuJHN0YXRlLWRhbmdlci10ZXh0OiAjZmZmICFkZWZhdWx0O1xyXG4kYWxlcnQtc3VjY2Vzcy10ZXh0OiAjZmZmICFkZWZhdWx0O1xyXG5cclxuLy8gRm9udCBzaXplc1xyXG4kYmFzZTE2LTE0cHg6IDAuODc1ZW0gIWRlZmF1bHQ7XHJcblxyXG4vLyBCb290c3RyYXAgb3ZlcnJpZGVzXHJcbiRib2R5LWJnOiAkZ3JleTEgIWRlZmF1bHQ7XHJcbiRjYXJkLWNhcC1iZzogJHdoaXRlICFkZWZhdWx0O1xyXG5cclxuLy8gVGFic1xyXG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAwICFkZWZhdWx0O1xyXG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogMCAhZGVmYXVsdDtcclxuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcclxuXHJcbi8vIGJyZWFkY3J1bWJcclxuJGJyZWFkY3J1bWItYmc6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xyXG5cclxuLy8gdGFibGUgYm9yZGVyXHJcbiR0YWJsZS1ib3JkZXItY29sb3I6ICRncmV5MyAhZGVmYXVsdDtcclxuXHJcbiRzdmctY2hlY2s6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCclM0UlM0NwYXRoIGZpbGw9JyUyM2ZmJyBkPSdNNi41NjQuNzVsLTMuNTkgMy42MTItMS41MzgtMS41NUwwIDQuMjYgMi45NzQgNy4yNSA4IDIuMTkzeicvJTNFJTNDL3N2ZyUzRVwiKSAhZGVmYXVsdDtcclxuIiwiJGFycm93LWhlaWdodDogMS4yNWVtOyAvKiAyMC8xNiAqL1xyXG5cclxuLmluZm8taWNvbiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYmFja2dyb3VuZDogaW5oZXJpdDtcclxuXHJcbiAgICAuaWNvbiB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMS4yNXJlbTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAje3ZhcigtLXNraW4tcHJpbWFyeS1jb2xvci0xKX07XHJcbiAgICAgICAgd2lkdGg6IDEuNTYyNXJlbTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICB9XHJcblxyXG4gICAgLnRvb2x0aXAge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBib3R0b206IDEwMCU7XHJcbiAgICAgICAgcGFkZGluZzogMC4zMTJyZW07XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXk2O1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgZm9udC1zaXplOiAwLjkyOHJlbTtcclxuICAgICAgICBtaW4td2lkdGg6IDIwcmVtO1xyXG4gICAgICAgIG1heC13aWR0aDogMTVyZW07XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLSRhcnJvdy1oZWlnaHQvMik7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XHJcbiAgICAgICAgYW5pbWF0aW9uOiBmYWRlLWluIDAuNXMgbGluZWFyIGZvcndhcmRzO1xyXG5cclxuICAgICAgICBAa2V5ZnJhbWVzIGZhZGUtaW4ge1xyXG4gICAgICAgICAgICAwJSB7IG9wYWNpdHk6IDA7IH1cclxuICAgICAgICAgICAgMTAwJSB7IG9wYWNpdHk6IDE7IH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBoZWlnaHQ6ICRhcnJvdy1oZWlnaHQ7IC8qIDIwLzE2ICovXHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIGJvdHRvbTogLSRhcnJvdy1oZWlnaHQ7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICBib3JkZXItbGVmdDogc29saWQgdHJhbnNwYXJlbnQgJGFycm93LWhlaWdodC8yOyAvKiAxMC8xNiAqL1xyXG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IHNvbGlkIHRyYW5zcGFyZW50ICRhcnJvdy1oZWlnaHQvMjsgLyogMTAvMTYgKi9cclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogc29saWQgJGdyZXk2ICRhcnJvdy1oZWlnaHQvMjtcclxuICAgICAgICAgICAgYm90dG9tOiAtJGFycm93LWhlaWdodC8yO1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcclxuICAgICAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTNweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLy9cclxuLy8gIFBhZ2UgZGVzaWduZXIgc3R5bGVzXHJcbi8vICBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19cclxuXHJcbiR0cmFuc3BhcmVudF9fbWFpbmNvbnRlbnRfX21hcmdpbi10b3A6IHJlbSgtMTExKTtcclxuXHJcbiR0cmFuc3BhcmVudF9fc2VhcmNoLWZpZWxkX19iYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE3MCwgMTcwLCAxNzAsIDAuNik7XHJcbiR0cmFuc3BhcmVudC1ibGFja19fc2VhcmNoLWZpZWxkX19iYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0NCwgMjQ0LCAyNDQsIDAuNik7XHJcbiR0cmFuc3BhcmVudC13aGl0ZV9fcGxhY2Vob2xkZXJfX2NvbG9yOiBncmF5KDMwMCk7XHJcblxyXG4vLyBTdHlsZXMgZm9yIHRyYW5zcGFyZW50IGVmZmVjdFxyXG5cclxuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cclxuLmlzLW1iLXRyYW5zcGFyZW50IHtcclxuICAgICYuYm9keS13cmFwcGVyIC5zdGlja3ktaGVhZGVyLi1maXhlZCB7XHJcbiAgICAgICAgJiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKCd3aGl0ZScpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc3RpY2t5LWhlYWRlcjpub3QoLi1maXhlZCk6bm90KC4taG92ZXJlZCkge1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgfVxyXG5cclxuICAgICYuaGVhZGVyLW1iLXdoaXRlIC5zdGlja3ktaGVhZGVyOm5vdCguLWZpeGVkKTpub3QoLi1ob3ZlcmVkKSB7XHJcbiAgICAgICAgLmhlYWRlciAuaWNvbixcclxuICAgICAgICAuc2VhcmNoLW1vYmlsZSAuaWNvbiB7XHJcbiAgICAgICAgICAgIGZpbGw6IGNvbG9yKCd3aGl0ZScpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNlYXJjaC1maWVsZCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHNldCgkdHJhbnNwYXJlbnRfX3NlYXJjaC1maWVsZF9fYmFja2dyb3VuZC1jb2xvcik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubG9nby4tYmxhY2sge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmxvZ28uLXdoaXRlIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNlYXJjaC1maWVsZCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiBjb2xvcignd2hpdGUnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zZWFyY2gtZmllbGQ6OnBsYWNlaG9sZGVyIHtcclxuICAgICAgICAgICAgY29sb3I6IHNldCgkdHJhbnNwYXJlbnQtd2hpdGVfX3BsYWNlaG9sZGVyX19jb2xvcik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubWluaWNhcnQtcXVhbnRpdHkge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcignd2hpdGUnKTtcclxuICAgICAgICAgICAgY29sb3I6IHRoZW1lLWNvbG9yKCdwcmltYXJ5Jyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuaGVhZGVyLW1iLWJsYWNrIC5zdGlja3ktaGVhZGVyOm5vdCguLWZpeGVkKTpub3QoLi1ob3ZlcmVkKSB7XHJcbiAgICAgICAgLnNlYXJjaC1maWVsZCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHNldCgkdHJhbnNwYXJlbnQtYmxhY2tfX3NlYXJjaC1maWVsZF9fYmFja2dyb3VuZC1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5tYWluY29udGVudCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogc2V0KCR0cmFuc3BhcmVudF9fbWFpbmNvbnRlbnRfX21hcmdpbi10b3ApO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY291cG9uLXRleHQtcGQge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG59XHJcblxyXG4uY291cG9uLXRleHQtcGQgPiBwIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG5cclxuLmltYWdlLWdyYWRpZW50IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAzMyU7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMzYwZGVnLCAjMDAwIC00MCUsIHJnYmEoMCwgMCwgMCwgMCkgMTAwJSk7XHJcbn1cclxuXHJcbi5idXR0b25zLXdyYXBwZXIge1xyXG4gICAgJiB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgIH1cclxuXHJcbiAgICAuYnRuLXdyYXBwZXIge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5idG4td3JhcHBlci5hdXRvd2lkdGgge1xyXG4gICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgJi5jZW50ZXIge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgJi5sZWZ0IHtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgIH1cclxufVxyXG5cclxuLmJ1dHRvbnMtd3JhcHBlciB7XHJcbiAgICAmLi1ob3Jpem9udGFsIC5idG4td3JhcHBlcjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJi4taG9yaXpvbnRhbCB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgIH1cclxuXHJcbiAgICAmLi1ob3Jpem9udGFsIC5idG4td3JhcHBlciB7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgJi4taG9yaXpvbnRhbC5jZW50ZXIge1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgfVxyXG59XHJcblxyXG4uZGVjcmVhc2VkLW1hcmdpbiB7XHJcbiAgICBoMSxcclxuICAgIGgyLFxyXG4gICAgaDMsXHJcbiAgICBoNCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDUpICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi50ZXh0LWluY3JlYXNlZCB7XHJcbiAgICBoMSxcclxuICAgIGgyLFxyXG4gICAgaDMsXHJcbiAgICBoNCB7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICBoMSB7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0oNDgpICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgaDIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDM0KSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIGgzIHtcclxuICAgICAgICBmb250LXNpemU6IHJlbSgyMikgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICBoNCB7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTgpICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tZm9udHNpemVzIHtcclxuICAgIGgxOm5vdCguaXRlbSkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0oMzIpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0oMzgpO1xyXG4gICAgfVxyXG5cclxuICAgIGgyOm5vdCguaXRlbSkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0oMjIpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0oMzMpO1xyXG4gICAgfVxyXG5cclxuICAgIGgzOm5vdCguaXRlbSkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTgpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0oMzApO1xyXG4gICAgfVxyXG5cclxuICAgIHA6bm90KC5pdGVtKSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICBmb250LXNpemU6IHJlbSgxNCk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICBsaW5lLWhlaWdodDogcmVtKDI4KTtcclxuICAgIH1cclxuXHJcbiAgICAuY291cG9uLXRleHQtcGQge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMTApO1xyXG4gICAgfVxyXG5cclxuICAgIC5idG4ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcclxuICAgIH1cclxufVxyXG5cclxuLnNvdW5kLWljb24ge1xyXG4gICAgJiB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGJvdHRvbTogcmVtKDE1KTtcclxuICAgICAgICByaWdodDogcmVtKDIpO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgfVxyXG5cclxuICAgICYuVG9wIHtcclxuICAgICAgICBib3R0b206IGF1dG87XHJcbiAgICAgICAgdG9wOiByZW0oMTUpO1xyXG4gICAgfVxyXG5cclxuICAgIC5pY29uLi1vZmYge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLmljb24uLW9uIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuXHJcbiAgICAmLm9mZiAuaWNvbi4tb24ge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJi5vZmYgLmljb24uLW9mZiB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgIC50ZXh0LWluY3JlYXNlZCB7XHJcbiAgICAgICAgaDEge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSg5MCkgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oNjApICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDQ4KSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDQge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgzNCkgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmN1c3RvbS1mb250c2l6ZXMge1xyXG4gICAgICAgIGgxOm5vdCguaXRlbSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSg0OCk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0oNDYpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDI6bm90KC5pdGVtKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDI4KTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbSgzNSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoMzpub3QoLml0ZW0pIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMjIpO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtKDM0KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHA6bm90KC5pdGVtKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE4KTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbSgzMCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgLnRleHQtY2VudGVyLi1ncmFkaWVudCxcclxuICAgIC5pbWFnZS1ncmFkaWVudC5jZW50ZXIge1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDUwJSA1MCUsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSA4MiUpO1xyXG4gICAgfVxyXG5cclxuICAgIC4tZ3JhZGllbnQsXHJcbiAgICAudGV4dC1sZWZ0Li1ncmFkaWVudCxcclxuICAgIC5pbWFnZS1ncmFkaWVudC5sZWZ0IHtcclxuICAgICAgICB3aWR0aDogMzMlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG4ubGF5b3V0IC5yb3cge1xyXG4gICAgJi5uby1ndXR0ZXJzIHtcclxuICAgICAgICA+IC5jb2wsXHJcbiAgICAgICAgPiBbY2xhc3MqPSdjb2wtJ10ge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmV4cGVyaWVuY2UtY29tcG9uZW50IGE6bm90KC5idG4pIHtcclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG59XHJcblxyXG4uc3RvcmVwYWdlOm5vdCgucGxwKSB7XHJcbiAgICAuZXhwZXJpZW5jZS1jb21wb25lbnQ6Zmlyc3QtY2hpbGQgPiAuY29udGFpbmVyLFxyXG4gICAgLmV4cGVyaWVuY2UtY29tcG9uZW50OmZpcnN0LWNoaWxkID4gLmNvbnRhaW5lci1mbHVpZCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAuaXMtbWItdHJhbnNwYXJlbnQ6bm90KC5pcy1kc2stdHJhbnNwYXJlbnQpIHtcclxuICAgICAgICAuc3RpY2t5LWhlYWRlcjpub3QoLi1maXhlZCk6bm90KC4taG92ZXJlZCkge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiBjb2xvcignd2hpdGUnKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoJ3doaXRlJyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubWFpbmNvbnRlbnQge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmhlYWRlciAubG9nbyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmhlYWRlciAubG9nby4td2hpdGUge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc2VhcmNoLWZpZWxkIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3JheSgyMDApICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaGVhZGVyIC5pY29uIHtcclxuICAgICAgICAgICAgZmlsbDogdGhlbWUtY29sb3IoJ3ByaW1hcnknKSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaXMtZHNrLXRyYW5zcGFyZW50IHtcclxuICAgICAgICAuc3RpY2t5LWhlYWRlcjpub3QoLi1maXhlZCk6bm90KC4taG92ZXJlZCkge1xyXG4gICAgICAgICAgICAubWFpbi1tZW51LFxyXG4gICAgICAgICAgICAubmF2YmFyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmhlYWRlci1kc2std2hpdGUgLnN0aWNreS1oZWFkZXI6bm90KC4tZml4ZWQpOm5vdCguLWhvdmVyZWQpIHtcclxuICAgICAgICAgICAgLmdlbmRlci1saW5rcy13cmFwcGVyIC5tZW51LWxpbmsge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IGdyYXkoMzAwKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmdlbmRlci1saW5rcy13cmFwcGVyIC5tYWluLW5hdi1pdGVtLmFjdGl2ZSAubWVudS1saW5rLFxyXG4gICAgICAgICAgICAubWFpbi1tZW51IC5tZW51LWxpbmssXHJcbiAgICAgICAgICAgIC5tYWluLW1lbnUgLm1lbnUtbGluayBhIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiBjb2xvcignd2hpdGUnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaXMtZHNrLXRyYW5zcGFyZW50IHtcclxuICAgICAgICAmLmJvZHktd3JhcHBlciAuc3RpY2t5LWhlYWRlci4tZml4ZWQge1xyXG4gICAgICAgICAgICAmIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKCd3aGl0ZScpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3RpY2t5LWhlYWRlcjpub3QoLi1maXhlZCk6bm90KC4taG92ZXJlZCkge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmhlYWRlci1kc2std2hpdGUgLnN0aWNreS1oZWFkZXI6bm90KC4tZml4ZWQpOm5vdCguLWhvdmVyZWQpIHtcclxuICAgICAgICAgICAgLmhlYWRlciAuaWNvbixcclxuICAgICAgICAgICAgLnNlYXJjaC1tb2JpbGUgLmljb24ge1xyXG4gICAgICAgICAgICAgICAgZmlsbDogY29sb3IoJ3doaXRlJyk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5zZWFyY2gtZmllbGQge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogc2V0KCR0cmFuc3BhcmVudF9fc2VhcmNoLWZpZWxkX19iYWNrZ3JvdW5kLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmxvZ28uLWJsYWNrIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5sb2dvLi13aGl0ZSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5zZWFyY2gtZmllbGQge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IGNvbG9yKCd3aGl0ZScpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuc2VhcmNoLWZpZWxkOjpwbGFjZWhvbGRlciB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogc2V0KCR0cmFuc3BhcmVudC13aGl0ZV9fcGxhY2Vob2xkZXJfX2NvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLm1pbmljYXJ0LXF1YW50aXR5IHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKCd3aGl0ZScpO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHRoZW1lLWNvbG9yKCdwcmltYXJ5Jyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuaGVhZGVyLWRzay1ibGFjayAuc3RpY2t5LWhlYWRlcjpub3QoLi1maXhlZCk6bm90KC4taG92ZXJlZCkge1xyXG4gICAgICAgICAgICAuc2VhcmNoLWZpZWxkIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHNldCgkdHJhbnNwYXJlbnQtYmxhY2tfX3NlYXJjaC1maWVsZF9fYmFja2dyb3VuZC1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5tYWluY29udGVudCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHNldCgkdHJhbnNwYXJlbnRfX21haW5jb250ZW50X19tYXJnaW4tdG9wKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIHN0eWxlbGludC1lbmFibGUgKi9cclxuIl0sInNvdXJjZVJvb3QiOiIifQ==*/