/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
     ========================================================================== */
/**
   * Remove the margin in all browsers.
   */
body {
  margin: 0;
}

/**
   * Render the `main` element consistently in IE.
   */
main {
  display: block;
}

/**
   * Correct the font size and margin on `h1` elements within `section` and
   * `article` contexts in Chrome, Firefox, and Safari.
   */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
     ========================================================================== */
/**
   * 1. Add the correct box sizing in Firefox.
   * 2. Show the overflow in Edge and IE.
   */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
     ========================================================================== */
/**
   * Remove the gray background on active links in IE 10.
   */
a {
  background-color: transparent;
}

/**
   * 1. Remove the bottom border in Chrome 57-
   * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
   */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
   * Add the correct font weight in Chrome, Edge, and Safari.
   */
b,
strong {
  font-weight: bolder;
}

/**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
   * Add the correct font size in all browsers.
   */
small {
  font-size: 80%;
}

/**
   * Prevent `sub` and `sup` elements from affecting the line height in
   * all browsers.
   */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
     ========================================================================== */
/**
   * Remove the border on images inside links in IE 10.
   */
img {
  border-style: none;
}

/* Forms
     ========================================================================== */
/**
   * 1. Change the font styles in all browsers.
   * 2. Remove the margin in Firefox and Safari.
   */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
   * Show the overflow in IE.
   * 1. Show the overflow in Edge.
   */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
   * Remove the inheritance of text transform in Edge, Firefox, and IE.
   * 1. Remove the inheritance of text transform in Firefox.
   */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
   * Correct the inability to style clickable types in iOS and Safari.
   */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
   * Remove the inner border and padding in Firefox.
   */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
   * Restore the focus styles unset by the previous rule.
   */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
   * Correct the padding in Firefox.
   */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
   * 1. Correct the text wrapping in Edge and IE.
   * 2. Correct the color inheritance from `fieldset` elements in IE.
   * 3. Remove the padding so developers are not caught out when they zero out
   *    `fieldset` elements in all browsers.
   */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
   * Add the correct vertical alignment in Chrome, Firefox, and Opera.
   */
progress {
  vertical-align: baseline;
}

/**
   * Remove the default vertical scrollbar in IE 10+.
   */
textarea {
  overflow: auto;
}

/**
   * 1. Add the correct box sizing in IE 10.
   * 2. Remove the padding in IE 10.
   */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
   * Correct the cursor style of increment and decrement buttons in Chrome.
   */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
   * 1. Correct the odd appearance in Chrome and Safari.
   * 2. Correct the outline style in Safari.
   */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
   * Remove the inner padding in Chrome and Safari on macOS.
   */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
   * 1. Correct the inability to style clickable types in iOS and Safari.
   * 2. Change font properties to `inherit` in Safari.
   */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
     ========================================================================== */
/*
   * Add the correct display in Edge, IE 10+, and Firefox.
   */
details {
  display: block;
}

/*
   * Add the correct display in all browsers.
   */
summary {
  display: list-item;
}

/* Misc
     ========================================================================== */
/**
   * Add the correct display in IE 10+.
   */
template {
  display: none;
}

/**
   * Add the correct display in IE 10.
   */
[hidden] {
  display: none;
}

body {
  color: #5D5D5D;
  font-family: "Roboto", sans-serif;
  line-height: 1.6;
  background: #fff;
}

body.loading-modal {
  position: relative;
}

body.loading-modal:before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.45);
  z-index: 1;
}

body.loading-modal:after {
  content: '';
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  box-sizing: border-box;
  display: inline-block;
  vertical-align: middle;
  margin-right: 5px;
  border: 4px solid #666;
  /* Light grey */
  border-top: 4px solid #3498db;
  /* Blue */
  border-radius: 50%;
  width: 48px;
  height: 48px;
  animation: spin 1.4s linear infinite;
  z-index: 2;
}

h1,
h2,
h3,
h4 {
  margin: 0;
  padding: 0;
}

a,
button {
  color: #333;
  text-decoration: none;
  transition: all 0.2s ease;
  display: inline-block;
  cursor: pointer;
}

a.full,
button.full {
  box-sizing: border-box;
  width: 100%;
  text-align: center;
}

a.back,
button.back {
  color: #383838;
  margin-right: 3em;
  display: inline-flex;
  align-items: center;
  gap: .5em;
}

a.back::before,
button.back::before {
  content: "";
  height: 14px;
  width: 14px;
  background: url("/images/picto-back.svg") center/contain no-repeat;
  margin-right: 5px;
  display: inline-block;
  transition-duration: 150ms;
}

a.back:hover::before,
button.back:hover::before {
  transform: translateX(-5px);
}

a.pdf,
button.pdf {
  margin-right: 20px;
  color: #909090;
  font-style: italic;
  font-weight: bold;
  transition-duration: 200ms;
}

a.download,
button.download {
  padding: 15px 40px;
  color: #000;
  background-color: #EBEBEB;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  font-weight: 500;
}

a.download:hover,
button.download:hover {
  background-color: #d7d7d7;
}

a.button,
button.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  margin-block: auto;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  line-height: 1.5em;
  letter-spacing: 0.5px;
  border-radius: 4px;
  color: #fff;
  padding: 5px 20px;
  background-color: #93B224;
  border: 1px solid #93B224;
}

a.button:hover,
button.button:hover {
  color: #93B224;
  background-color: transparent;
}

a.button-orange,
button.button-orange {
  background-color: #FF7507;
  border: 1px solid #FF7507;
}

a.button-orange:hover,
button.button-orange:hover {
  color: #FF7507;
  background-color: #fff;
}

a.button-red,
button.button-red {
  background-color: #d00000;
  border: 1px solid #d00000;
}

a.button-red:hover,
button.button-red:hover {
  color: #d00000;
  background-color: #fff;
}

a.button-blue,
button.button-blue {
  background-color: #199BD5;
  border: 1px solid #199BD5;
}

a.button-blue:hover,
button.button-blue:hover {
  color: #199BD5;
  background-color: #fff;
}

a.button-black,
button.button-black {
  background-color: #000;
  border: 1px solid #000;
}

a.button-black:hover,
button.button-black:hover {
  color: #000;
  background-color: #fff;
}

a.button-grey,
button.button-grey {
  background-color: #B1B1B1;
  border: 1px solid #B1B1B1;
}

a.button-grey:hover,
button.button-grey:hover {
  color: #B1B1B1;
  background-color: #fff;
}

a.button-small,
button.button-small {
  padding: .25rem 1rem;
}

a.button-border,
button.button-border {
  background-color: transparent;
  color: #93B224;
  padding: 10px 20px;
  border: 1px solid #93B224;
}

a.button-border:hover,
button.button-border:hover {
  color: #FFF;
  background-color: #93B224;
}

a.fake-blue,
button.fake-blue {
  background-color: transparent;
  color: #199BD5;
  padding: 10px 20px;
  border: 1px solid #199BD5;
}

a.text {
  color: #000000;
}

img {
  vertical-align: middle;
}

div.entity div.actions {
  position: absolute;
  float: left;
}

div.entity div.actions.center {
  position: relative;
  float: none;
  width: 100%;
  margin: 10px 0;
  display: flex;
  justify-content: center;
}

div.entity div.actions a.action {
  display: block;
  margin-bottom: 5px;
  width: 36px;
  height: 36px;
  font-size: 0;
  background: url("/images/icons.png") 6px 6px no-repeat #444;
  background-position: 6px -44px;
  box-shadow: 3px 3px 6px -2px #000;
}

div.entity div.actions a.action.create {
  background-position: 6px 6px;
}

div.entity div.actions a.action.delete {
  background-position: 6px -94px;
}

.container {
  box-sizing: border-box;
  margin: auto;
  max-width: 1620px;
  padding: 0 50px;
  width: 100%;
}

@media only screen and (max-width: 800px) {
  .container {
    padding: 0 20px;
  }
}

#page,
.page-simulateur {
  min-height: 80vh;
}

.divPage:not(.divWelcome) {
  padding: 4em 0;
}

.text-green {
  color: #93B224;
}

.text-orange {
  color: #FF7507;
}

.bg-blue {
  background-color: #00215C;
  color: #FFF;
}

.table .tr {
  display: flex;
  align-items: center;
}

.table td.actions {
  vertical-align: middle;
  text-align: right;
}

.table td.actions a {
  margin-block: 5px;
}

.dataTables_length, .dataTables_filter {
  margin-bottom: 15px;
}

.dataTables_info, .dataTables_paginate {
  margin-top: 15px;
}

.dataTables_paginate .paginate_button:hover:not(.disabled) {
  border-color: transparent !important;
  background: #93B224 !important;
}

.dataTables_paginate .paginate_button.current {
  background: #EBEBEB !important;
  border: 0 !important;
}

.dataTables_paginate .paginate_button.disabled {
  opacity: .2;
}

.filesList {
  display: inline-flex;
  flex-direction: column;
}

.filesList h3 {
  color: #262872;
  margin-bottom: 10px;
  font-size: 1.5em;
}

.filesList a {
  display: inline-flex;
  align-items: end;
  gap: 10px;
  margin-block: 10px;
}

.filesList a svg {
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.filesList a:hover {
  color: #5c96ff;
}

.alert {
  padding: 1.2rem;
  font-weight: bold;
  text-align: center;
  border-radius: 4px;
}

.alert-success {
  color: var(--recap-green);
  background: rgba(192, 208, 44, 0.2);
}

.btn {
  display: inline-block;
  padding: .75em 1em;
  color: #FFF;
  font-weight: bold;
  text-transform: uppercase;
  background: #93B224;
  border: 1px solid #93B224;
  border-radius: 4px;
}

.btn.btn-green {
  background: #93B224;
  border-color: #93B224;
}

.btn.btn-blue {
  color: #fff;
  background: #199BD5;
  border-color: #199BD5;
  padding: 20px 40px;
}

.btn.btn-dark-blue {
  background: #00215C;
  border-color: #00215C;
  padding: 20px 40px;
}

.btn.btn-orange {
  background: #FF7507;
  border-color: #FF7507;
}

.btn.btn-red {
  color: #fff;
  background: crimson;
  border-color: crimson;
}

.btn.btn-grey {
  color: #fff;
  background: #d3d3d3;
  border-color: #d3d3d3;
}

.btn.btn-small {
  padding: .25rem .5rem;
  font-size: 0.875rem;
  font-weight: normal;
}

.btn.btn-tiny {
  padding: .25rem .5rem;
  font-size: 0.625rem;
  font-weight: normal;
}

.btn.btn--text-red {
  color: #d00000;
}

.btn:hover {
  opacity: 0.8;
  cursor: pointer;
}

.btn.hover-to-green:hover {
  color: #93B224;
  background-color: transparent;
  border-color: #93B224;
  opacity: 1;
}

.btn-list .btn {
  margin: 0 0.4em;
}

.add-btn {
  display: inline-block;
  padding: .8em 1.6em;
  color: #333;
  border: 1px solid #333;
}

.add-btn:hover {
  color: #333;
}

.btn-underline {
  color: #333;
  text-decoration: underline;
}

.btn-underline:hover {
  color: #000;
}

.link-disabled {
  cursor: not-allowed;
  opacity: 0.5;
  pointer-events: none;
  text-decoration: none;
}

.btn-picto {
  display: inline-block;
  vertical-align: middle;
  padding: 5px;
  line-height: 1;
  border: none;
  border-radius: 4px;
  transition: background .2s ease;
  cursor: pointer;
}

.btn-picto svg {
  vertical-align: middle;
}

.btn-picto--blue {
  background: #199BD5;
}

.btn-picto--blue:not(span):hover {
  background: #147aa7;
}

.btn-picto--green {
  background: #93B224;
}

.btn-picto--green:not(span):hover {
  background: #70881b;
}

.btn-picto--red {
  background: #d00000;
}

.btn-picto--red:not(span):hover {
  background: #9d0000;
}

.btn-picto--grey {
  background: #ddd;
}

.btn-picto--small {
  padding: 0;
}

.btn-picto--no-padding {
  padding: 0;
}

.btn-picto__label {
  display: none;
  margin-left: 5px;
  color: #fff;
  vertical-align: middle;
}

@media only screen and (max-width: 1024px) {
  .btn-picto__label {
    display: inline-block;
  }
}

.btn-underline-red {
  color: #d00000;
}

.btn2, .page-simulateur div.sticky button.previous {
  box-sizing: border-box;
  display: inline-block;
  padding: 0.8em 1.5em;
  color: #fff;
  font-weight: bold;
  font-family: 'Lato', sans-serif;
  line-height: 1.15;
  text-align: center;
  border: 1px solid var(--recap-green);
  border-radius: 10px;
  background: var(--recap-green);
  box-shadow: 0 2px 1px rgba(20, 14, 62, 0.25);
  cursor: pointer;
  transition: all .2s ease;
}

.btn2:hover, .page-simulateur div.sticky button.previous:hover {
  color: var(--recap-green);
  background: #fff;
  box-shadow: 0 2px 10px rgba(20, 14, 62, 0.25);
}

.btn2--bigger {
  font-size: 1.2rem;
}

.btn2--red {
  background: var(--recap-danger);
  border-color: var(--recap-danger);
}

.btn2--red:hover {
  color: var(--recap-danger);
}

.btn2--orange {
  background: var(--recap-orange);
  border-color: var(--recap-orange);
}

.btn2--orange:hover {
  color: var(--recap-orange);
}

.btn2--blue {
  background: var(--recap-blue);
  border-color: var(--recap-blue);
}

.btn2--blue:hover {
  color: var(--recap-blue);
}

.btn2--grey {
  background: var(--recap-grey);
  border-color: var(--recap-grey);
}

.btn2--grey:hover {
  color: var(--recap-grey);
}

.btn-prime {
  box-sizing: border-box;
  display: inline-block;
  width: 100%;
  padding: 0.3em;
  color: #fff;
  text-align: center;
  background: #93B224;
  border: 1px solid #93B224;
  border-radius: 4px;
}

.btn-prime:hover {
  color: #93B224;
  background: #fff;
}

.title:not(.entity) {
  position: relative;
  margin-bottom: 1em;
  padding-bottom: .35em;
  color: #262872;
  line-height: 1.2;
  font-size: 2.2rem;
  font-weight: 300;
  text-transform: uppercase;
}

.title:not(.entity):after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  height: 6px;
  width: 50px;
  background: #93B224;
}

.title:not(.entity).title-centered {
  text-align: center;
}

.title:not(.entity).title-centered:after {
  left: 50%;
  transform: translateX(-50%);
}

@media only screen and (max-width: 780px) {
  .title:not(.entity) {
    font-size: 1.8rem;
  }
}

.title-white {
  color: #fff;
  font-size: 2.2rem;
  text-transform: uppercase;
}

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

.form-group label {
  display: inline-block;
  margin-bottom: 5px;
}

.form-control {
  box-sizing: border-box;
  display: block;
  width: 100%;
  background-color: #fff;
  border: 1px solid #16042D;
  border-radius: 4px;
  transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
  padding: 10px;
}

.form-control:focus {
  color: #495057;
  background-color: #fff;
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.form-login {
  max-width: 400px;
  text-align: center;
}

.form-login h1 {
  margin-bottom: 25px;
}

.form-login label {
  display: block;
  font-weight: bold;
  text-align: left;
}

.form-login .form-submit {
  margin-top: 20px;
}

.form-login .form-submit button.btn-blue {
  color: #fff;
  font-weight: 600;
}

.form-login button.register {
  padding: 10px 20px;
  margin-top: 1em;
}

.form-login .obligatoire {
  color: #d00000;
  text-align: left;
}

.form-login fieldset {
  border: none;
}

.form-login fieldset legend {
  display: none;
}

.form-login .registration_cgu .row {
  display: flex;
  align-items: center;
}

.form-login .registration_cgu label {
  margin-bottom: 0;
  margin-left: 5px;
  font-weight: normal;
}

.d-block {
  display: block;
}

.invalid-feedback {
  margin-top: 5px;
  line-height: 1.2;
}

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

.badge-danger,
.form-error-message {
  color: crimson;
}

button.btn {
  display: inline-block;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: .375rem .75rem;
  font-size: 1rem;
  border-radius: .25rem;
  transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

button.btn-primary {
  color: #fff;
  background-color: #93B224;
  border-color: #93B224;
}

button.btn-secondary {
  color: #fff;
  background-color: #199BD5;
  border-color: #199BD5;
}

.form-inline {
  display: flex;
  align-items: center;
}

.form-inline > * {
  margin: 0 10px;
}

.form-help {
  color: #6c757d;
  font-size: 0.8rem;
}

.loader {
  box-sizing: border-box;
  display: inline-block;
  vertical-align: middle;
  margin-right: 5px;
  border: 4px solid #f3f3f3;
  /* Light grey */
  border-top: 4px solid #3498db;
  /* Blue */
  border-radius: 50%;
  width: 16px;
  height: 16px;
  animation: spin 2s linear infinite;
}

input:disabled,
select:disabled {
  background: #d3d3d3;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

#crop-interface {
  padding: 5rem;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #fff;
  z-index: 20;
}

#crop-interface .crop-actions {
  padding: 10px;
  text-align: center;
}

.form-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1em;
  justify-content: center;
}

.field-flex {
  display: flex;
  flex-wrap: wrap;
}

.field-flex > .field-col-picture {
  flex: 1;
}

.field-flex > .field-col:not(.field-col-picture) {
  flex: 2;
}

@media only screen and (max-width: 768px) {
  .field-flex {
    flex-direction: column;
  }
}

fieldset {
  padding: 1.5em;
  border-radius: 4px;
  border-color: #00215C;
  background-color: rgba(0, 33, 92, 0.075);
}

fieldset:not(:last-of-type) {
  margin-bottom: 1rem;
}

fieldset legend {
  padding-inline: .5em;
  font-size: 1.1em;
  font-weight: 600;
  color: #00215C;
  background-color: #fff;
  border-radius: 4px;
}

table {
  border-collapse: collapse;
}

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

.table-responsive .table {
  min-width: 840px;
}

@media only screen and (max-width: 1280px) {
  .table-responsive {
    font-size: 14px;
  }
}

.table {
  width: 100%;
  color: #797979;
  line-height: 1.4;
  text-align: left;
}

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

.table th {
  border-bottom: 2px solid #dee2e6;
  color: #5D5D5D;
}

.table td.price {
  text-align: center;
  white-space: nowrap;
}

.table .highlight {
  color: #fff;
  background: #333;
}

.table .highlight--blue {
  background: #00215C;
}

.table .highlight--grey {
  background: #5D5D5D;
}

table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control::before {
  content: '' !important;
  width: 12px !important;
  height: 12px !important;
  background: url("/images/down.svg") center center/contain !important;
  background-repeat: no-repeat;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td.dtr-control::before {
  transform: rotate(180deg);
}

.fade {
  transition: opacity .15s linear;
}

.fade:not(.show) {
  opacity: 0;
}

.modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  outline: 0;
  z-index: 1055;
}

.modal.show {
  background: rgba(0, 0, 0, 0.45);
}

.modal-dialog {
  position: relative;
  margin: .5rem;
  width: auto;
  pointer-events: none;
}

.modal.fade .modal-dialog {
  transition: transform .3s ease-out;
}

.modal.show .modal-dialog {
  transform: none;
}

@media only screen and (min-width: 576px) and (max-width: 9999px) {
  .modal-dialog {
    max-width: 500px;
    margin: 1.75rem auto;
  }
}

.modal-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: .3rem;
  outline: 0;
}

.modal-header {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: space-between;
  padding: 1rem;
  border-bottom: 1px solid #dee2e6;
  border-top-left-radius: calc(.3rem - 1px);
  border-top-right-radius: calc(.3rem - 1px);
}

.modal-header .btn-close {
  box-sizing: content-box;
  width: 1em;
  height: 1em;
  color: #000;
  background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
  border: 0;
  border-radius: .25rem;
  opacity: .5;
  padding: 0.5rem;
  margin: -0.5rem -0.5rem -0.5rem auto;
  -webkit-appearance: button;
  cursor: pointer;
}

.modal-title {
  margin: 0;
  font-size: 1.25rem;
  line-height: 1.5;
}

.modal-body {
  position: relative;
  flex: 1 1 auto;
  padding: 1rem;
}

.modal-footer {
  display: flex;
  flex-wrap: wrap;
  flex-shrink: 0;
  align-items: center;
  justify-content: flex-end;
  padding: .75rem;
  border-top: 1px solid #dee2e6;
  border-bottom-right-radius: calc(.3rem - 1px);
  border-bottom-left-radius: calc(.3rem - 1px);
}

.modal form fieldset {
  padding: 0;
  border: 0;
}

.indicateur {
  position: relative;
  padding: .5em 1.2em;
  font-size: .90rem;
  line-height: 1;
  text-align: left;
  background: #eceef3;
  border-radius: 4px;
}

.indicateur__number {
  color: #00215C;
  font-size: 2.5em;
  font-weight: bold;
}

.indicateur__label {
  color: #000;
  font-size: 1.2em;
  line-height: 1.2;
}

.indicateur__help {
  position: absolute;
  top: 3px;
  right: 3px;
  cursor: help;
}

.indicateur__help img {
  width: 14px;
}

.indicateur-dont {
  color: #000;
  font-size: 2rem;
  font-weight: bold;
}

.form-export-indicateurs {
  display: flex;
  font-size: 1rem;
}

.form-export-indicateurs .btn {
  color: #fff;
}

.my-1 {
  margin: 10px 0;
}

.margin-v {
  margin: 2.5rem 0;
}

.margin-v-2 {
  margin: 1rem 0;
}

.mt-10 {
  margin-top: 10px;
}

.mt-20 {
  margin-top: 20px;
}

.mt-30 {
  margin-top: 30px;
}

.mb-10 {
  margin-bottom: 10px;
}

.mb-20 {
  margin-bottom: 20px;
}

.mb-30 {
  margin-bottom: 30px;
}

.mb-40 {
  margin-bottom: 40px;
}

.ml-10 {
  margin-left: 10px;
}

.ml-20 {
  margin-left: 20px;
}

.mr-10 {
  margin-right: 10px;
}

.mr-20 {
  margin-right: 20px;
}

.px-10 {
  padding: 0 10px;
}

.py-10 {
  padding: 10px 0;
}

.py-20 {
  padding: 20px 0;
}

.p-1 {
  padding: 1rem;
}

.my-20 {
  margin: 20px 0;
}

@keyframes leftScreen {
  0% {
    left: 0;
  }
  100% {
    left: -100%;
  }
}

.wp-nw {
  white-space: nowrap;
}

.pl {
  padding-left: 5%;
}

.box-success,
.box-error {
  position: fixed;
  bottom: 20px;
  left: 0;
  margin: 1em 0;
  padding: 1em;
  color: #fff;
  font-size: 1.2rem;
  text-align: center;
  background: #198754;
  animation-delay: 4s;
  animation-name: leftScreen;
  animation-duration: .5s;
  animation-fill-mode: forwards;
}

.box-error {
  background: crimson;
}

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

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

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

.text-muted {
  color: #7a7d84;
}

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

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

.d-flex {
  display: flex;
}

.float-right {
  float: right;
}

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

.justify-center {
  justify-content: center;
}

.justify-space-between {
  justify-content: space-between;
}

.font-smaller {
  font-size: 0.9em;
}

.font-bigger {
  font-size: 1.2em;
}

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

.text-underline {
  text-decoration: underline;
}

.blurred {
  filter: blur(15px);
}

.p-relative {
  position: relative;
}

.w-100 {
  width: 100%;
}

.grey {
  color: #5D5D5D;
}

.red {
  color: #d00000;
}

header {
  background-color: #FFF;
}

header .logo {
  margin: .7em 0;
}

header .logo img {
  max-height: 100px;
  min-width: 120px;
}

@media only screen and (max-width: 1240px) {
  header div.container {
    position: relative;
  }
}

@media only screen and (max-width: 640px) {
  header .logo {
    margin: 10px 0;
  }
  header .logo img {
    max-height: none;
    width: 60px;
    min-width: 0;
  }
}

.copy-confirm {
  display: block;
  margin: 0 !important;
  width: auto !important;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translate(-50%, 100%);
}

nav#menu {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
}

nav#menu .button-orange {
  max-height: 30px;
}

nav#menuResponsive {
  display: none;
}

nav .align-self-center {
  margin-left: 30px;
  align-self: center;
}

.menu {
  margin: 0;
  padding-left: 0;
  display: flex;
  list-style-type: none;
  font-size: 1.2rem;
}

.menu-item {
  padding: 0 1em;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: relative;
}

.menu-item * {
  display: block;
  margin: auto;
}

.menu-item-icon {
  position: relative;
}

.menu-item-icon a.menu-link::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.menu-item-deconnexion span.picto {
  margin-top: -20px;
}

.menu-item-icon .picto {
  margin-bottom: 10px;
  height: 24px;
}

.menu-item-icon .picto img {
  display: inline-block;
  vertical-align: middle;
}

.menu-item-icon .menu-link {
  color: #fff;
}

.menu-item-icon .menu-link:hover {
  border-color: transparent;
}

.menu-item-simulateur {
  background: #93B224;
  transition: .2s;
}

.menu-item-simulateur:hover {
  background: #819d20;
}

.menu-item-connexion {
  background: #199BD5;
  transition: .2s;
}

.menu-item-connexion:hover {
  background: #168abe;
}

.menu-item-logout {
  background: #d00000;
  transition: .2s;
}

.menu-item-logout:hover {
  background: #b70000;
}

.menu-link {
  color: #001F50;
  font-weight: bold;
}

.menu-link.hover-line {
  position: relative;
}

.menu-link.hover-line:after {
  content: "";
  display: block;
  position: absolute;
  background: #001F50;
  bottom: -3px;
  left: 50%;
  width: 0;
  height: 2px;
  transition-duration: 200ms;
}

.menu-link.hover-line:hover::after {
  left: 0;
  width: 100%;
}

.menu-link.logout {
  color: #001F50;
  font-size: 0.8em;
}

.menu-link.logout img {
  height: 30px;
  width: 30px;
  display: block;
  margin-bottom: 5px;
}

@media only screen and (max-width: 1240px) {
  .menu {
    display: none;
  }
  nav#menuResponsive {
    display: inline-block;
    margin: 20px;
    position: absolute;
    right: 10px;
    top: 10px;
    z-index: 100;
  }
  #menuBurger {
    display: block;
    position: relative;
    z-index: 100;
    -webkit-user-select: none;
    user-select: none;
  }
  #menuBurger input {
    display: block;
    width: 40px;
    height: 32px;
    position: absolute;
    top: -9px;
    left: -9px;
    cursor: pointer;
    opacity: 0;
    z-index: 100;
    -webkit-touch-callout: none;
  }
  #menuBurger input[type=checkbox] {
    display: inline-block;
  }
  #menuBurger .burger {
    display: block;
    width: 25px;
    height: 3px;
    margin-bottom: 5px;
    position: relative;
    background: #00215C;
    border-radius: 3px;
    transform-origin: 4px 0px;
    transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), opacity 0.55s ease;
  }
  #menuBurger:first-child {
    transform-origin: 0% 0%;
  }
  #menuBurger:span:nth-last-child(2) {
    transform-origin: 0% 100%;
  }
  #menuBurger input:checked ~ .burger {
    opacity: 1;
    transform: rotate(45deg) translate(3px, -1px);
    background: #00215C;
    z-index: 100;
  }
  #menuBurger input:checked ~ .burger:nth-last-child(3) {
    opacity: 0;
    transform: rotate(0deg) scale(0.2, 0.2);
  }
  #menuBurger input:checked ~ .burger:nth-last-child(2) {
    transform: rotate(-45deg) translate(2px, -1px);
  }
  #menuBurger input:checked ~ ul {
    transform: none;
    right: 0;
    box-shadow: 0 4px 5px 0 #adb5bd;
  }
  #menu-responsive {
    box-sizing: border-box;
    text-align: left;
    position: fixed;
    top: -16px;
    right: -350px;
    bottom: 0;
    height: 100%;
    max-width: 350px;
    width: 100%;
    padding: 20px;
    padding-top: 30px;
    background: #fff;
    list-style-type: none;
    -webkit-font-smoothing: antialiased;
    transition: right 0.5s cubic-bezier(0.77, 0.2, 0.05, 1);
    z-index: 90;
  }
  #menu-responsive li {
    padding: 10px 0;
    width: 100%;
    margin: 0;
  }
  #menu-responsive li.burger-link {
    justify-content: flex-start;
  }
  #menu-responsive li.burger-link a {
    padding: 0;
    margin: 0;
    font-size: 1.5em;
  }
  #menu-responsive li.burger-link a.hover-line {
    color: #001F50;
  }
  #menu-responsive li.burger-link a.button {
    font-size: 1.2em;
  }
  #menu-responsive li.menu-item-icon {
    margin: 10px 0;
    transition-duration: 200ms;
  }
  #menu-responsive li.menu-item-icon:hover {
    opacity: 0.8;
  }
  #menu-responsive .menu-item-icon .picto {
    display: inline-block;
    margin-bottom: 0;
    margin-right: 5px;
  }
  #menu-responsive .menu-item-icon .picto ~ .menu-link {
    display: inline-block;
  }
}

@media only screen and (max-width: 1570px) {
  .menu-item {
    padding: 0 10px;
  }
  .menu-item-icon {
    padding: 0 1em;
  }
}

@media only screen and (max-width: 1475px) {
  .menu-item {
    font-size: 0.9em;
  }
  .menu-item.menu-item-deconnexion {
    padding-right: 0;
  }
}

@media only screen and (max-width: 1350px) {
  .menu-item {
    font-size: 0.8em;
  }
}

footer {
  padding: 4em 0;
  color: #fff;
  background-color: #1D1D1D;
}

footer .logo {
  margin-bottom: .7em;
}

footer .adresse {
  margin-bottom: .7em;
}

footer .phone {
  font-size: 1.4rem;
}

footer .row {
  display: flex;
  justify-content: space-between;
}

footer .left {
  width: 20%;
}

footer .footer-menu {
  flex: 1;
  margin-left: 8.6rem;
  height: 100px;
}

footer .footer_logos {
  display: flex;
  margin-top: 24px;
  padding-top: 24px;
  border-top: 1px solid rgba(255, 255, 255, 0.5);
}

footer .footer_logos > * {
  width: Min(33.33%, 150px);
}

footer ul {
  padding: 0;
  margin: 0;
  height: 100%;
  text-align: left;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  list-style-type: none;
}

footer li {
  margin: 0 10px;
}

footer a {
  color: #fff;
  text-decoration: none;
  opacity: 0.8;
}

@media only screen and (max-width: 900px) {
  footer .row {
    display: block;
  }
  footer .left {
    width: 100%;
    text-align: center;
  }
  footer .footer-menu {
    margin-left: 0;
    margin-top: 20px;
  }
}

@media only screen and (max-width: 640px) {
  footer .footer-menu {
    height: auto;
  }
}

.page-simulateur {
  color: #16042D;
  background: #ffffff;
}

.page-simulateur .container {
  max-width: 1560px;
  padding: 0 2rem;
  width: 100%;
}

@media only screen and (max-width: 600px) {
  .page-simulateur .container {
    padding: 0 20px;
  }
}

.page-simulateur #nbFiches {
  color: #16042D;
  font-weight: bold;
}

.page-simulateur legend {
  display: none;
}

.page-simulateur label[for=fiche_calculs] {
  display: none;
}

.page-simulateur h3 {
  color: #16042D;
  position: relative;
  margin: 5px 0 10px;
  padding-bottom: 10px;
  line-height: 1.2;
}

.page-simulateur #secteurs_secteur label {
  display: flex;
  align-items: center;
}

.page-simulateur #fiche_calcul label {
  order: 0;
}

.page-simulateur #fiche_calcul input {
  order: 1;
}

.page-simulateur #search-fiche {
  max-width: 340px;
}

@media only screen and (max-width: 800px) {
  .page-simulateur .indications {
    display: none;
  }
}

.page-simulateur .with-legend legend {
  display: block;
}

.page-simulateur .bandeau {
  padding: 1em;
  color: #16042D;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  border-bottom: 1px solid #eee;
}

.page-simulateur .simulateur-top {
  text-align: right;
}

.page-simulateur .row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.page-simulateur .col {
  box-sizing: border-box;
  margin: 1.5em;
  width: calc(25% - 3em);
}

.page-simulateur .choice {
  box-sizing: border-box;
  padding: 2em;
  display: block;
  color: inherit;
  text-align: center;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.29);
  transition: all .2s;
}

.page-simulateur .choice svg path {
  fill: #000;
}

.page-simulateur .choice:hover {
  background: #eee;
}

.page-simulateur .progressbar {
  display: flex;
  justify-content: space-between;
  counter-reset: step;
  padding: 0;
  margin: 30px 0 50px;
}

@media only screen and (max-width: 800px) {
  .page-simulateur .progressbar {
    display: none;
  }
}

.page-simulateur .progressbar li {
  width: 25%;
  position: relative;
  color: #16042D;
  text-align: center;
  list-style: none;
  font-size: 0.9em;
}

.page-simulateur .progressbar li span {
  font-weight: 400;
}

.page-simulateur .progressbar li::before {
  content: counter(step);
  counter-increment: step;
  width: 40px;
  height: 40px;
  border: 1px solid #16042D;
  display: block;
  margin: 0 auto 10px auto;
  border-radius: 50%;
  line-height: 40px;
  background: #fff;
  color: #16042D;
  text-align: center;
  font-weight: bold;
  z-index: 2;
  position: relative;
}

.page-simulateur .progressbar li::after {
  content: '';
  position: absolute;
  width: 120%;
  height: 1px;
  background: #16042D;
  top: 20px;
  left: -10%;
}

.page-simulateur .progressbar li.active::before {
  background: #16042D;
  color: #fff;
}

.page-simulateur .progressbar li.check::before {
  content: url(/build/images/checkmark.8c957de1.png);
  border: 1px solid #93B224;
  color: #93B224;
  line-height: 3.7;
}

.page-simulateur fieldset {
  border: none;
  padding: 0;
}

.page-simulateur form {
  position: relative;
}

.page-simulateur form #fiche.to-scroll {
  position: relative;
}

.page-simulateur form #fiche.to-scroll:before, .page-simulateur form #fiche.to-scroll:after {
  content: '';
  position: absolute;
  width: 20px;
  height: 12px;
  transform: translateX(-50%);
  z-index: 2;
  transition: opacity 0.3s;
}

.page-simulateur form #fiche.to-scroll:before {
  top: -10px;
  left: 50%;
  background: url("/images/arrow-up.svg") center center no-repeat;
}

.page-simulateur form #fiche.to-scroll.top:before {
  opacity: 0;
}

.page-simulateur form #fiche.to-scroll:after {
  bottom: -20px;
  left: 50%;
  background: url("/images/arrow-down.svg") center center no-repeat;
}

.page-simulateur form #fiche.to-scroll.bottom:after {
  opacity: 0;
}

.page-simulateur form.to-scroll #fiche_calculs {
  max-height: 520px;
  overflow-y: auto;
  /* width */
  /* Track */
  /* Handle */
  /* Handle on hover */
}

.page-simulateur form.to-scroll #fiche_calculs::-webkit-scrollbar {
  width: 5px;
}

.page-simulateur form.to-scroll #fiche_calculs::-webkit-scrollbar-track {
  background: #f1f1f1;
}

.page-simulateur form.to-scroll #fiche_calculs::-webkit-scrollbar-thumb {
  background: #00215C;
}

.page-simulateur form.to-scroll #fiche_calculs::-webkit-scrollbar-thumb:hover {
  background: #000610;
}

.page-simulateur form legend {
  margin-bottom: 15px;
}

.page-simulateur form div.form-check {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100%;
  padding: 20px 10px;
}

.page-simulateur form div.form-check label {
  margin-bottom: 0;
  margin-right: 10px;
  flex: 1;
  height: 100%;
  line-height: 1.5;
  font-weight: normal;
}

.page-simulateur form div.form-check label:hover {
  cursor: pointer;
}

.page-simulateur form div.form-check input[type=radio] {
  height: 18px;
  width: 18px;
}

.page-simulateur form div.form-check input[type=radio]:hover {
  cursor: pointer;
}

.page-simulateur form div.form-check input[type="checkbox"] {
  margin-right: 10px;
}

.page-simulateur form div.form-check:nth-of-type(2n) {
  background-color: #f2f2f2;
}

.page-simulateur form div.form-check.hide {
  display: none;
}

.page-simulateur form[name=fiche_calcul] div.form-check,
.page-simulateur form[name=fiche_test] div.form-check,
.page-simulateur form[name=recuperation_chaleur] div.form-check {
  padding: 10px;
  font-size: .9rem;
  border-left: 1px solid #93B224;
}

.page-simulateur form div.form-group {
  margin: 20px 0;
}

.page-simulateur form div#secteurs_secteur {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
}

.page-simulateur form div#secteurs_secteur .form-check {
  box-shadow: 0 3px 8px -2px #adb5bd;
  justify-content: center;
  margin: 10px 20px;
  padding: 0;
  background: #fff;
  position: relative;
  width: calc(16.66% - 40px);
  padding-bottom: calc(16.66% - 40px);
  height: auto;
}

@media only screen and (max-width: 1540px) {
  .page-simulateur form div#secteurs_secteur .form-check {
    font-size: .85rem;
  }
}

@media only screen and (max-width: 1140px) {
  .page-simulateur form div#secteurs_secteur .form-check {
    margin: 10px;
    width: calc(16.66% - 20px);
    padding-bottom: calc(16.66% - 20px);
  }
}

@media only screen and (max-width: 940px) {
  .page-simulateur form div#secteurs_secteur .form-check {
    margin: 20px 20px;
    width: calc(33.33% - 40px);
    padding-bottom: calc(33.33% - 40px);
  }
}

@media only screen and (max-width: 600px) {
  .page-simulateur form div#secteurs_secteur .form-check {
    margin: 20px 20px;
    width: calc(50% - 40px);
    padding-bottom: calc(50% - 40px);
  }
}

@media only screen and (max-width: 400px) {
  .page-simulateur form div#secteurs_secteur .form-check {
    margin: 10px;
    width: calc(50% - 20px);
    padding-bottom: calc(50% - 20px);
  }
}

.page-simulateur form div#secteurs_secteur .form-check input[type=radio] {
  opacity: 0;
  height: 0;
  width: 0;
  z-index: -1;
}

.page-simulateur form div#secteurs_secteur .form-check input[type=radio]:checked + label {
  background: #4D4E8B;
  color: #fff;
}

.page-simulateur form div#secteurs_secteur .form-check input[type=radio]:checked + label svg path,
.page-simulateur form div#secteurs_secteur .form-check input[type=radio]:checked + label svg rect,
.page-simulateur form div#secteurs_secteur .form-check input[type=radio]:checked + label svg circle {
  fill: #fff;
}

.page-simulateur form div#secteurs_secteur .form-check label, .page-simulateur form div#secteurs_secteur .form-check a {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #5D5D5D;
  font-weight: normal;
  text-align: center;
  width: 100%;
  justify-content: center;
  margin: 0;
}

.page-simulateur form div#secteurs_secteur .form-check span {
  display: block;
}

.page-simulateur form div#secteurs_secteur .form-check svg g {
  clip-path: none;
}

.page-simulateur form div#secteurs_secteur .form-check svg path,
.page-simulateur form div#secteurs_secteur .form-check svg rect,
.page-simulateur form div#secteurs_secteur .form-check svg circle {
  fill: #93B224;
}

.page-simulateur form .invalid-feedback {
  margin-block: 5px;
}

.page-simulateur div.sticky {
  position: sticky;
  position: -webkit-sticky;
  bottom: 0;
  text-align: right;
  padding: 10px;
}

@media only screen and (max-width: 420px) {
  .page-simulateur div.sticky a.btn2 {
    padding: 12px 15px;
    font-size: 0.8rem;
  }
}

@media only screen and (max-width: 420px) {
  .page-simulateur div.sticky button {
    padding: 12px 15px;
    font-size: 0.8rem;
  }
}

.page-simulateur div.sticky button.previous:hover {
  opacity: .8;
}

.page-simulateur div.sticky button.next[disabled] {
  opacity: 0.5;
}

.page-simulateur div.sticky button.next[disabled]:hover {
  cursor: default;
  color: #fff;
  background: transparent;
}

@media only screen and (max-width: 560px) {
  .page-simulateur div.sticky .controls-buttons {
    display: block;
  }
  .page-simulateur div.sticky .controls-buttons #nbFiches {
    margin-bottom: 10px;
    text-align: center;
  }
}

@media only screen and (max-width: 800px) {
  .page-simulateur .bandeau-top {
    margin-bottom: 20px;
    flex-wrap: wrap;
  }
  .page-simulateur .bandeau-top a {
    order: 0;
  }
  .page-simulateur .bandeau-top h2 {
    margin-top: 10px;
    order: 1;
    width: 100%;
  }
}

@media only screen and (max-width: 800px) {
  .page-simulateur .bandeau-search {
    display: block;
  }
  .page-simulateur .bandeau-search #search-fiche {
    max-width: 100%;
  }
}

@media only screen and (max-width: 800px) {
  .page-simulateur .bandeau-conditions {
    display: block;
  }
  .page-simulateur .bandeau-conditions h3 {
    margin-bottom: 10px;
  }
  .page-simulateur .bandeau-conditions .div-conditions {
    margin-left: 0;
  }
}

.page-simulateur .fiche-spec__part {
  margin-bottom: 30px;
}

.page-simulateur .fiche-spec__collection {
  padding: 12px;
  background: #F7F7F7;
  border-radius: 4px;
}

.page-simulateur .fiche-spec__collection .form-group {
  margin-top: 10px;
  margin-bottom: 10px;
}

.page-simulateur .fiche-spec__subtitle {
  margin-bottom: 10px;
  color: #00215C;
  font-size: 1.4rem;
}

.page-simulateur .fiche-spec__subtitle img {
  margin-bottom: 2px;
}

.page-simulateur .fiche-spec .production-froid .fiche-spec__subtitle,
.page-simulateur .fiche-spec .production-froid .subform__title:after {
  color: #37a8db;
}

.page-simulateur .fiche-spec .besoin-chaleur .fiche-spec__subtitle,
.page-simulateur .fiche-spec .besoin-chaleur .subform__title:after {
  color: #f19300;
}

.page-simulateur .fiche-spec .subform__title {
  position: relative;
  padding-bottom: 10px;
  color: #000;
  font-size: 1.2rem;
  font-weight: bold;
  text-transform: uppercase;
}

.page-simulateur .fiche-spec .subform__title:after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 37px;
  height: 3px;
  background: currentColor;
}

.page-simulateur .fiche-spec .l-2-rows {
  display: flex;
  margin-top: 10px;
  margin-bottom: 10px;
}

.page-simulateur .fiche-spec .l-2-rows > div {
  margin-top: 0;
  margin-bottom: 0;
  width: calc(100% - 40px);
}

.page-simulateur .fiche-spec .l-2-rows > div:nth-child(odd) {
  margin-right: 40px;
}

.page-simulateur .fiche-spec .l-2-rows > div:nth-child(even) {
  margin-left: 40px;
}

.page-simulateur .fiche-spec .btn {
  margin-bottom: 5px;
}

.page-simulateur .fiche-spec input[readonly] {
  cursor: default;
  background: #d3d3d3;
}

.page-simulateur .fiche-recup-chaleur .with-conditions {
  display: none;
}

.page-simulateur .fiche-recup-chaleur .with-conditions--show {
  display: block;
}

.simulateur-title {
  color: #16042D;
  font-size: 1.5rem;
  line-height: 1;
}

#app {
  position: relative;
  padding: 1.8em 0;
  margin: 0rem auto;
}

#app.loading:before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.19);
  z-index: 1;
}

#app.loading:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  box-sizing: border-box;
  display: inline-block;
  vertical-align: middle;
  margin-right: 5px;
  border: 4px solid #666;
  /* Light grey */
  border-top: 4px solid #3498db;
  /* Blue */
  border-radius: 50%;
  width: 48px;
  height: 48px;
  animation: spin 1.4s linear infinite;
  z-index: 2;
}

.form-aide {
  display: inline-block;
  position: relative;
  padding: 5px;
  color: #fff;
  font-size: 12px;
  background: #93B224;
  text-align: center;
  border-radius: 4px;
  min-width: 130px;
  cursor: pointer;
}

.form-aide-aide {
  display: none;
  position: absolute;
  min-width: 200px;
  color: #333;
  top: 50%;
  right: 0;
  transform: translate(calc(100% + 8px), -50%);
  padding: 10px;
  border: 1px solid #333;
  background: #fff;
  border-radius: 5px;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.29);
  z-index: 1;
}

@media only screen and (max-width: 800px) {
  .form-aide-aide {
    left: 0;
    transform: none;
    min-width: 100%;
    top: 36px;
    z-index: 9;
  }
}

.modale,
.calcul-conditions {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 200;
  background: rgba(0, 0, 0, 0.29);
  overflow: hidden;
}

.modale__content,
.calcul-conditions__content {
  margin: 20px;
  margin-bottom: 120px;
  width: 800px;
  max-height: 70%;
  background: #fff;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.29);
  border-radius: 4px;
  z-index: 200;
}

.modale__header,
.calcul-conditions__header {
  color: #fff;
  padding: 15px;
  text-transform: uppercase;
  font-size: 1.4rem;
  text-align: center;
  font-weight: bold;
  background: #93B224;
  border-bottom: 1px solid #e5e5e5;
}

.modale__header--error,
.calcul-conditions__header--error {
  background: #d00000;
}

.modale__body,
.calcul-conditions__body {
  padding: 15px;
  height: 250px;
  overflow-y: auto;
}

.modale__footer,
.calcul-conditions__footer {
  padding: 15px;
  text-align: right;
  border-top: 1px solid #e5e5e5;
}

.info-bulle {
  display: inline-block;
  position: relative;
  transform: translateY(-2px);
  cursor: pointer;
}

.info-bulle__info {
  position: absolute;
  top: -5px;
  left: 0;
  transform: translate(-50%, -100%);
  padding: 5px 7px;
  background: #fff;
  white-space: nowrap;
  display: none;
  border-radius: 4px;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.29);
}

.info-bulle:hover .info-bulle__info {
  display: block;
}

.block_grey {
  background: #EBEBEB;
  border-radius: 8px;
}

.block_grey--lighter {
  background: rgba(235, 235, 235, 0.25);
}

.block-center {
  display: flex;
  align-items: center;
  justify-content: center;
}

.recapitulatif {
  color: #000;
}

.recapitulatif.overlay {
  position: relative;
  overflow: hidden;
}

.recapitulatif.overlay:before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0);
  z-index: 2;
  animation: appear;
  animation-delay: 1.5s;
  animation-duration: .3s;
  animation-fill-mode: forwards;
}

@keyframes appear {
  from {
    background: rgba(0, 0, 0, 0);
  }
  to {
    background: rgba(0, 0, 0, 0.29);
  }
}

.recapitulatif .mb-1 {
  margin-bottom: 2rem;
}

.recapitulatif img.cover {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.recapitulatif h1 {
  font-size: 1.8rem;
}

.recapitulatif__container {
  box-sizing: border-box;
  margin-left: auto;
  margin-right: auto;
  padding-left: 2rem;
  padding-right: 2rem;
  max-width: 1560px;
}

@media only screen and (max-width: 1240px) {
  .recapitulatif__container {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.recapitulatif__container2 {
  box-sizing: border-box;
  margin-left: auto;
  margin-right: auto;
  padding-left: 4rem;
  padding-right: 4rem;
  max-width: 1560px;
}

@media only screen and (max-width: 1240px) {
  .recapitulatif__container2 {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.recapitulatif__top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: .75rem;
  padding-bottom: .75rem;
}

.recapitulatif__fil {
  margin-bottom: 2rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  border: 1px solid #EBEBEB;
}

@media only screen and (max-width: 640px) {
  .recapitulatif__fil {
    margin-bottom: 1rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
}

.recapitulatif__fil ul {
  display: flex;
  padding-left: 0;
  list-style-type: none;
  text-transform: uppercase;
}

.recapitulatif__fil li {
  padding-right: 1rem;
}

.recapitulatif__fil li:not(:first-child) {
  padding-left: 1rem;
  border-left: 1px solid #000;
}

.recapitulatif__fil li:last-child {
  font-weight: bold;
}

.recapitulatif__resume {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
}

.recapitulatif__resume img {
  object-fit: cover;
  height: 100%;
  max-width: 100%;
}

.recapitulatif__encart-prime {
  padding: 1rem;
  line-height: 1.2;
  border: 1px solid #C7C3D1;
}

.recapitulatif__encart-prime h2 {
  margin: 1.2rem 0;
}

.recapitulatif__encart-prime p {
  margin: 0;
  color: var(--recap-grey);
  line-height: 1.4;
}

.recapitulatif__encart {
  width: 50%;
}

.recapitulatif .prime {
  display: flex;
  justify-content: center;
  gap: 5px;
  margin-bottom: 8px;
  width: 100%;
  color: var(--recap-green);
  font-size: var(--font-size, 6rem);
  font-weight: bold;
  white-space: nowrap;
}

.recapitulatif .prime span {
  font-size: 1.5rem;
}

@media only screen and (max-width: 1670px) {
  .recapitulatif .prime {
    font-size: 4.5rem;
  }
}

@media only screen and (max-width: 1410px) {
  .recapitulatif .prime {
    font-size: 4rem;
  }
}

@media only screen and (max-width: 740px) {
  .recapitulatif .prime {
    font-size: 3.2rem;
  }
}

@media only screen and (max-width: 620px) {
  .recapitulatif .prime {
    font-size: 2.15rem;
  }
}

.recapitulatif .block-apport {
  font-size: 1.5rem;
}

.recapitulatif .block-informations {
  display: flex;
  flex-wrap: wrap;
  padding: 1.2rem;
  gap: 10px;
}

.recapitulatif .block-informations__information {
  display: flex;
  width: calc(100% - 20px);
  margin-bottom: 10px;
  line-height: 1.1;
}

.recapitulatif .block-informations__information span {
  width: 60%;
}

.recapitulatif .block-informations__information span:first-child {
  box-sizing: border-box;
  padding-right: 10px;
  width: 40%;
}

@media only screen and (max-width: 800px) {
  .recapitulatif .block-informations {
    display: block;
  }
  .recapitulatif .block-informations__information {
    display: block;
    width: 100%;
  }
  .recapitulatif .block-informations__information span,
  .recapitulatif .block-informations__information span:first-child {
    display: block;
    padding: 0;
    width: 100%;
  }
}

.recapitulatif .subtitle {
  margin-bottom: .75em;
  font-size: 1.6rem;
}

.recapitulatif .hypotheses__header {
  color: #fff;
  background: var(--recap-violet);
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}

.recapitulatif .hypotheses__header .col-actions {
  border-left: 1px solid #fff;
}

.recapitulatif .hypotheses__header .col-montant {
  border-left: 1px solid #fff;
}

@media only screen and (max-width: 720px) {
  .recapitulatif .hypotheses__header:not(.preview) {
    display: none;
  }
}

.recapitulatif .hypotheses__body .col-fiches,
.recapitulatif .hypotheses__body .col-actions,
.recapitulatif .hypotheses__body .col-montant {
  border-left: 1px solid var(--recap-grey);
  border-bottom: 1px solid var(--recap-grey);
}

.recapitulatif .hypotheses__body .col-montant {
  border-right: 1px solid var(--recap-grey);
}

.recapitulatif .hypotheses__row {
  display: flex;
}

.recapitulatif .hypotheses__row .cpe-actif label {
  box-sizing: border-box;
  display: block;
  margin: 5px 0;
  padding: 10px;
  width: 100%;
  cursor: pointer;
  border: 1px solid rgba(0, 0, 0, 0.29);
  transition: all .2s ease;
}

.recapitulatif .hypotheses__row .cpe-actif label:hover {
  background: rgba(0, 0, 0, 0.29);
}

@media only screen and (max-width: 720px) {
  .recapitulatif .hypotheses__row:not(.preview) {
    flex-wrap: wrap;
    margin-bottom: 20px;
  }
}

.recapitulatif .hypotheses__col {
  box-sizing: border-box;
  padding: 10px;
}

.recapitulatif .hypotheses .col-fiches {
  flex: 1;
}

.recapitulatif .hypotheses .col-actions {
  width: 150px;
}

.recapitulatif .hypotheses .col-montant {
  width: 160px;
}

@media only screen and (max-width: 720px) {
  .recapitulatif .hypotheses:not(.preview) .col-fiches {
    flex: auto;
    width: 100%;
    border-top: 1px solid var(--recap-grey);
    border-right: 1px solid var(--recap-grey);
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
  }
  .recapitulatif .hypotheses:not(.preview) .col-actions,
  .recapitulatif .hypotheses:not(.preview) .col-montant {
    width: 50%;
  }
  .recapitulatif .hypotheses:not(.preview) .col-montant {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    text-align: right;
  }
}

.recapitulatif .buttons {
  display: flex;
  gap: 5vw;
}

@media only screen and (max-width: 640px) {
  .recapitulatif .buttons {
    display: block;
  }
  .recapitulatif .buttons a {
    width: 100%;
    margin-bottom: 13px;
  }
}

.recapitulatif .etapes {
  position: relative;
  display: flex;
  justify-content: center;
  gap: 120px;
  text-align: center;
}

.recapitulatif .etapes:before {
  content: '';
  position: absolute;
  top: 32px;
  left: 0;
  right: 0;
  height: 3px;
  width: 100%;
  background: #000;
  z-index: -1;
}

@media only screen and (max-width: 800px) {
  .recapitulatif .etapes {
    display: none;
  }
  .recapitulatif .etapes:before {
    display: none;
  }
}

.recapitulatif .etape {
  position: relative;
  z-index: 1;
  max-width: 90px;
}

.recapitulatif .etape a {
  color: currentColor;
}

.recapitulatif .etape__numero {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 10px;
  height: 64px;
  width: 64px;
  font-size: 1.4rem;
  font-weight: bold;
  background: #fff;
  border: 3px solid #000;
  border-radius: 50%;
}

.recapitulatif .etape__label {
  font-size: .9rem;
  line-height: 1.2;
}

.recapitulatif .etape__label a:hover {
  text-decoration: underline;
}

.recapitulatif .etape--is-active .etape__numero {
  color: #fff;
  background: var(--recap-green);
  border-color: #fff;
}

.recapitulatif .etape--is-valid .etape__numero {
  color: #fff;
  background: var(--recap-violet);
}

.recapitulatif .etape--is-valid .etape__numero:hover {
  background: var(--recap-green);
  border-color: #fff;
}

@media only screen and (max-width: 800px) {
  .recapitulatif .etape {
    max-width: none;
    display: block;
    align-items: center;
    justify-content: center;
    margin-bottom: 15px;
  }
  .recapitulatif .etape__label a,
  .recapitulatif .etape__label .link-like {
    box-sizing: border-box;
    display: inline-block;
    padding: 1rem;
    width: 100%;
    border: 1px solid #000;
    text-decoration: none;
  }
  .recapitulatif .etape__label a:hover,
  .recapitulatif .etape__label .link-like:hover {
    text-decoration: none;
  }
  .recapitulatif .etape__numero {
    margin: 0;
    margin-right: 5px;
    border: none;
    height: auto;
    width: auto;
    background: none;
    font-weight: normal;
    display: none;
  }
  .recapitulatif .etape--is-active .etape__label a {
    color: #fff;
    background: var(--recap-green);
    border-color: #fff;
  }
  .recapitulatif .etape--is-valid .etape__label a {
    color: #fff;
    background: var(--recap-violet);
    border-color: #fff;
  }
  .recapitulatif .etape--is-valid .etape__label a:hover {
    background: var(--recap-green);
  }
}

.recapitulatif .table-files {
  --border: 1px solid black;
  width: 100%;
  border-top-right-radius: 10px;
  border-spacing: 0;
  border-collapse: separate;
  border: var(--border);
  overflow: hidden;
}

.recapitulatif .table-files th:not(:last-child),
.recapitulatif .table-files td:not(:last-child) {
  border-right: var(--border);
}

.recapitulatif .table-files > thead > tr > th,
.recapitulatif .table-files > thead > tr:not(:last-child) > td,
.recapitulatif .table-files > tbody > tr:not(:last-child) > th,
.recapitulatif .table-files > tbody > tr:not(:last-child) > td,
.recapitulatif .table-files > tfoot > tr:not(:last-child) > th,
.recapitulatif .table-files > tfoot > tr:not(:last-child) > td,
.recapitulatif .table-files > tr:not(:last-child) > td,
.recapitulatif .table-files > tr:not(:last-child) > th,
.recapitulatif .table-files > thead:not(:last-child),
.recapitulatif .table-files > tbody:not(:last-child),
.recapitulatif .table-files > tfoot:not(:last-child) {
  border-bottom: var(--border);
}

.recapitulatif .table-files thead {
  text-align: left;
  background: #FBFBFB;
}

.recapitulatif .table-files th, .recapitulatif .table-files td {
  padding: 1rem;
}

.recapitulatif .results__row {
  display: flex;
  margin-bottom: 10px;
}

.recapitulatif .results__row > div:first-child {
  min-width: 530px;
  margin-right: 10px;
}

@media only screen and (max-width: 980px) {
  .recapitulatif .results__row {
    display: block;
  }
  .recapitulatif .results__row > div:first-child {
    min-width: 0;
    margin-right: 0;
  }
}

.recapitulatif .row-2-cols {
  display: flex;
  flex-wrap: wrap;
  margin-left: -15px;
  margin-right: -15px;
}

.recapitulatif .row-2-cols > * {
  box-sizing: border-box;
  margin: 15px;
  width: calc(50% - 30px);
}

@media only screen and (max-width: 840px) {
  .recapitulatif .row-2-cols {
    display: block;
    margin-left: 0;
    margin-right: 0;
  }
  .recapitulatif .row-2-cols > * {
    margin: 0;
    width: 100%;
  }
  .recapitulatif .row-2-cols > *:first-child {
    margin-bottom: 15px;
  }
}

.recapitulatif.confirmation .recapitulatif__encart-prime {
  display: flex;
  align-items: center;
  justify-content: center;
}

.recapitulatif.confirmation .recapitulatif__encart-prime h2 {
  font-weight: normal;
  font-size: 3.2rem;
  margin-bottom: 2.5rem;
}

@keyframes popIn {
  from {
    opacity: 0;
    top: 60%;
  }
  to {
    opacity: 1;
    top: 45%;
  }
}

.recapitulatif .modal-login {
  opacity: 0;
  width: 80%;
  max-width: 800px;
  --border-radius: 8px;
  position: fixed;
  top: 45%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 4px;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.29);
  color: #16042D;
  font-size: 0.85rem;
  z-index: 3;
  animation: popIn 1s;
  animation-delay: 2s;
  animation-fill-mode: forwards;
}

.recapitulatif .modal-login h2 {
  line-height: 1.2;
  font-size: 2.2em;
}

.recapitulatif .modal-login .col-2 {
  display: flex;
  margin-left: -5px;
  margin-right: -5px;
}

.recapitulatif .modal-login .col-2 > * {
  margin: 0 5px;
  width: calc(50% - 10px);
}

.recapitulatif .modal-login div.modal-login__content {
  display: flex;
}

.recapitulatif .modal-login .left img {
  border-top-left-radius: var(--border-radius);
  border-bottom-left-radius: var(--border-radius);
}

.recapitulatif .modal-login .left {
  width: 40%;
}

.recapitulatif .modal-login .right {
  width: 60%;
  border-top-right-radius: var(--border-radius);
  border-bottom-right-radius: var(--border-radius);
  padding: 2.2em 2.2em 1.5em 2.2em;
  background: #fff;
}

.recapitulatif .modal-login p {
  margin: 30px 0;
}

.recapitulatif .modal-login .dots {
  display: flex;
  justify-content: center;
  gap: 10px;
}

.recapitulatif .modal-login .dots__dot {
  width: 8px;
  height: 8px;
  background: #ccc;
  border-radius: 50%;
}

.recapitulatif .modal-login .dots__dot--is-active {
  background: #5D5D5D;
}

.recapitulatif .modal-login .btn2, .recapitulatif .modal-login .page-simulateur div.sticky button.previous, .page-simulateur div.sticky .recapitulatif .modal-login button.previous {
  padding: 0.8em 1em;
  display: flex;
  align-items: center;
}

.recapitulatif .modal-login .button-google {
  padding: 5px 12px;
  height: 48px;
  width: auto;
}

@media only screen and (max-width: 995px) {
  .recapitulatif .modal-login .left {
    display: none;
  }
  .recapitulatif .modal-login .right {
    width: 100%;
    border-top-left-radius: var(--border-radius);
    border-bottom-left-radius: var(--border-radius);
  }
}

@media only screen and (max-width: 680px) {
  .recapitulatif .modal-login {
    width: 90%;
  }
  .recapitulatif .modal-login .actions {
    flex-wrap: wrap;
  }
  .recapitulatif .modal-login .actions .btn2, .recapitulatif .modal-login .actions .page-simulateur div.sticky button.previous, .page-simulateur div.sticky .recapitulatif .modal-login .actions button.previous {
    width: 100%;
    margin-right: 0;
    margin-bottom: 10px;
  }
}

@media only screen and (max-width: 1024px) {
  .recapitulatif .row-prime {
    margin-left: 0;
    margin-right: 0;
  }
  .recapitulatif .row-prime .recapitulatif__encart-prime {
    margin: 0;
    width: 100%;
  }
}

@media only screen and (max-width: 620px) {
  .recapitulatif .row-tools {
    margin-left: 0;
    margin-right: 0;
  }
  .recapitulatif .row-tools > * {
    margin: 15px 0;
    width: 100%;
  }
}

@media only screen and (max-width: 720px) {
  .recapitulatif--complet .hypotheses .col-montant {
    width: 100%;
  }
}

@media only screen and (max-width: 1024px) {
  .tablette-hide {
    display: none;
  }
}

.cpe-widget select.calcul-cpe,
.cpe-widget input.calcul-cpe {
  padding: 0.4em 0.75em;
  background: #fff;
  border: 1px solid #000;
  border-radius: 3px;
}

.cpe-widget select.calcul-cpe {
  max-width: 100%;
}

.select-coords {
  width: 100%;
  padding: 0.4em 0.75em;
  background: #fff;
  border: 1px solid #000;
  border-radius: 3px;
}

.recaptilatif-white-label .row.row-white-label {
  display: flex;
}

.recaptilatif-white-label .left {
  padding-right: 50px;
  width: 50%;
}

.recaptilatif-white-label .right {
  width: 50%;
}

.recaptilatif-white-label .encart-file {
  box-sizing: border-box;
  padding: .5rem 1rem;
  border: 1px solid #00215C;
  border-radius: 4px;
  width: 100%;
}

.recaptilatif-white-label .encart-file .grey {
  color: #5D5D5D;
}

.recaptilatif-white-label #account-logo {
  max-width: 100%;
  width: 180px;
}

.recaptilatif-white-label .choice-colors {
  display: flex;
}

.recaptilatif-white-label .choice-colors label {
  font-size: 1rem;
  color: #5D5D5D;
  font-weight: normal;
}

.recaptilatif-white-label .choice-colors input {
  padding: 0;
  width: 32px;
  height: 32px;
  margin: auto;
}

.recaptilatif-white-label .choice-colors > * {
  text-align: center;
  width: 35%;
}

@media only screen and (max-width: 900px) {
  .recaptilatif-white-label .choice-colors > * {
    width: 50%;
  }
}

.recaptilatif-white-label .category-title,
.recaptilatif-white-label label {
  color: #00215C;
  font-size: 1.3rem;
  font-weight: bold;
}

@media only screen and (max-width: 785px) {
  .recaptilatif-white-label .row.row-white-label {
    display: block;
  }
  .recaptilatif-white-label .left,
  .recaptilatif-white-label .right {
    padding-right: 0;
    width: 100%;
    margin-bottom: 20px;
  }
}

.white-label-template {
  padding: 1em;
  font-size: .5rem;
  border: 1px solid #00215C;
}

.white-label-template .page-break {
  page-break-before: always;
}

.white-label-template * {
  box-sizing: border-box;
}

.white-label-template body {
  color: #000000;
  font-size: 13px;
  font-family: "Roboto", sans-serif;
  background: #fff;
}

.white-label-template h1,
.white-label-template h2,
.white-label-template h3,
.white-label-template h4 {
  margin: 0;
}

.white-label-template .df-aic {
  position: relative;
}

.white-label-template .helper__target {
  border: 2px solid #000;
  border-radius: 4px;
}

.white-label-template .row {
  display: flex;
}

.white-label-template .helper {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(100%, -50%);
  display: flex;
  align-items: center;
}

.white-label-template .helper.helper-prime .helper__label {
  font-size: 12px;
}

@media only screen and (max-width: 900px) {
  .white-label-template .helper.helper-prime.helper-prime {
    top: -28px;
    transform: translate(100%, 0);
  }
  .white-label-template .helper.helper-prime.helper-prime .helper__arrow {
    display: none;
  }
  .white-label-template .helper.helper-prime.helper-prime .helper__label {
    font-size: 9px;
  }
}

.white-label-template .helper__label {
  padding: .25rem 1rem;
  color: #000;
  font-size: 1rem;
  text-transform: uppercase;
  font-weight: normal;
  border: 2px solid #93B224;
  border-radius: 4px;
}

.white-label-template .white-label-logo {
  display: inline-flex;
  align-items: center;
}

.white-label-template header h1 {
  color: #103072;
}

.white-label-template header img {
  vertical-align: top;
}

.white-label-template .br {
  border-radius: 8px;
}

.white-label-template .col-2 {
  width: calc(50% - 10px);
}

.white-label-template .first-col {
  margin-right: 10px;
}

.white-label-template .last-col {
  margin-left: 10px;
}

.white-label-template .text-bold {
  font-weight: bold;
}

.white-label-template .section {
  margin-bottom: 15px;
}

.white-label-template .block_grey {
  background: #FFFFFF;
  border-radius: 8px;
  border: 1px solid #C7C3D1;
}

.white-label-template .block_grey--lighter {
  background: rgba(255, 255, 255, 0.25);
}

.white-label-template .subtitle {
  margin-bottom: .75em;
  font-size: 1.2em;
}

.white-label-template .recapitulatif__encart {
  width: 100%;
}

.white-label-template .recapitulatif__encart-prime {
  padding: 1rem;
  line-height: 1.2;
  border: 1px solid #C7C3D1;
}

.white-label-template .recapitulatif__encart-prime h2 {
  margin: 0;
}

.white-label-template .recapitulatif__encart-prime p {
  margin: 0;
  color: #B1B1B1;
  line-height: 1.4;
}

.white-label-template .prime {
  width: 100%;
  font-size: 4.25em;
  font-weight: bold;
  line-height: 1.1;
  white-space: nowrap;
}

.white-label-template .prime span.star {
  vertical-align: top;
  font-size: 1.5rem;
}

.white-label-template table.caracteristiques {
  display: table;
  width: 100%;
}

.white-label-template .block-informations {
  padding: 1.2rem;
}

.white-label-template .block-informations__information {
  display: inline-block;
  vertical-align: top;
  width: 33.33%;
  line-height: 1.1;
}

.white-label-template .block-informations__information span:first-child {
  box-sizing: border-box;
  display: inline-block;
  padding-right: 10px;
  width: 40%;
}

.white-label-template .hypotheses {
  border-collapse: collapse;
  width: 100%;
}

.white-label-template .hypotheses td {
  border: 1px solid #B1B1B1;
}

.white-label-template .hypotheses__header {
  color: #fff;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  position: relative;
}

.white-label-template .hypotheses__header:before {
  content: '';
  position: absolute;
  top: -5px;
  right: -5px;
  bottom: -5px;
  left: -5px;
  background: transparent;
  border: 2px solid #000;
  border-radius: 4px;
}

.white-label-template .hypotheses__header:after {
  content: 'Couleur secondaire';
  position: absolute;
  right: 0;
  top: -10px;
  transform: translateY(-100%);
  padding: .25rem 1rem;
  color: #000;
  text-transform: uppercase;
  border: 2px solid #93B224;
  border-radius: 4px;
  font-size: 12px;
}

.white-label-template .hypotheses__header:after:before {
  content: '';
}

.white-label-template .hypotheses__header .col-montant {
  width: 20%;
}

.white-label-template .hypotheses__row,
.white-label-template .hypotheses__body {
  width: 100%;
}

.white-label-template .hypotheses__body .col-fiches {
  width: 80%;
}

.white-label-template .hypotheses__body .col-montant {
  width: 20%;
}

.white-label-template .hypotheses__col {
  padding: 10px;
}

.white-label-template .box {
  margin-bottom: 30px;
}

.white-label-template .box-resultat {
  padding: 10px 10px 8px;
  color: #fff;
  font-size: 19.5px;
  text-align: center;
  color: #B1BD38;
  font-weight: bold;
  background: #103072;
}

.white-label-template .box-resultat > div {
  margin-bottom: 5px;
}

.white-label-template .caracteristiques__top {
  margin-bottom: 20px;
  font-size: 16px;
  font-weight: bold;
}

.white-label-template .caracteristiques__left {
  display: inline-block;
  vertical-align: top;
  width: 30%;
}

.white-label-template .caracteristiques__left .row {
  margin-bottom: 10px;
}

.white-label-template .caracteristiques__left .row__title {
  color: #5A7B19;
}

.white-label-template .caracteristiques__left .row__value {
  font-weight: bold;
}

.white-label-template .caracteristiques__right {
  display: inline-block;
  vertical-align: top;
  width: 70%;
}

.white-label-template .caracteristiques__right .row {
  margin-bottom: 8px;
}

.white-label-template .caracteristiques__right .row__title {
  display: inline-block;
  vertical-align: middle;
  width: 60%;
}

.white-label-template .caracteristiques__right .row__value {
  display: inline-block;
  vertical-align: middle;
  width: 40%;
  font-weight: bold;
}

.white-label-template .text-center {
  text-align: center;
}

.white-label-template .bold {
  font-weight: bold;
}

.white-label-template .title-primary {
  margin-bottom: 20px;
  padding: 10px;
  color: #fff;
  background: #103072;
  text-align: center;
  text-transform: uppercase;
}

.white-label-template .title-secondary {
  position: relative;
  margin-bottom: 5px;
  color: #5A7B19;
  font-size: 18px;
}

.white-label-template .shadow {
  padding: 10px;
  border-radius: 7px;
  border: 1px solid #00000029;
  box-shadow: 0 25px 50px #00000029;
}

.white-label-template .box-contact {
  padding: 5px;
  color: #fff;
  text-align: center;
  background: #103072;
}

.white-label-template .box-contact .tel {
  color: #B1BD38;
  font-size: 24px;
  font-weight: bold;
}

.white-label-template .box-contact .small {
  font-size: 14px;
}

.white-label-template .box-contact .big {
  font-size: 18px;
  text-transform: uppercase;
}

.white-label-template .collection-group {
  padding: 10px;
  margin: 10px 0;
  background: #f7f7f7;
}

.white-label-template .collection-group__title {
  margin-bottom: 7px;
}

.white-label-template .collection-group__title--froid {
  color: #37a8db;
}

.white-label-template .collection-group__title--chaleur {
  color: #f19300;
}

.white-label-template .collection-item {
  margin-bottom: 10px;
}

/** ENTITES **/
div.entity.activite.viewList .content, div.entity.activite.previewList .content {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 70px;
}

div.entity.activite.preview, div.entity.activite.listview {
  margin: 35px;
  width: calc(31.33% - 40px);
  padding: 1.8em 0;
  box-shadow: 0 50px 50px rgba(0, 0, 0, 0.29);
  background-color: #fff;
}

div.entity.activite.preview svg path,
div.entity.activite.preview svg rect, div.entity.activite.listview svg path,
div.entity.activite.listview svg rect {
  fill: #199BD5;
}

div.entity.activite.preview .activite__picto, div.entity.activite.listview .activite__picto {
  margin-bottom: 1em;
  text-align: center;
}

div.entity.activite.preview .activite__picto svg g, div.entity.activite.listview .activite__picto svg g {
  clip-path: none;
}

div.entity.activite.preview .activite__content, div.entity.activite.listview .activite__content {
  padding: 20px;
}

div.entity.activite.preview .activite__title, div.entity.activite.listview .activite__title {
  text-align: center;
}

div.entity.activite.preview .activite__description, div.entity.activite.listview .activite__description {
  margin: 20px 0;
  padding: 0 1.6em;
}

@media only screen and (max-width: 1100px) {
  div.entity.activite.preview, div.entity.activite.listview {
    width: 350px;
  }
}

@media only screen and (max-width: 470px) {
  div.entity.activite.preview, div.entity.activite.listview {
    width: 90%;
    margin: 35px 0;
  }
}

div.entity.activite.view {
  padding: 4em 0;
  margin-bottom: 50px;
}

div.entity.activite.view .illustration {
  height: 340px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: url("https://placehold.it/1920x240?text=Illustration") center center no-repeat;
  background-size: cover;
}

div.entity.activite.view .img-principale {
  float: left;
  margin-right: 20px;
  margin-bottom: 20px;
  max-width: 460px;
}

div.entity.activite.view div.bottom {
  clear: left;
  margin: 20px 0;
}

div.entity.activite.view div.bottom a + a {
  margin-left: 10px;
}

div.entity.activite.view div.bottom a {
  margin: 10px 0;
  text-align: center;
}

div.entity.activite.view div.bottom a.btn {
  padding: 15px 30px;
}

div.entity.activite.view .searchbar {
  margin: 16px 0;
}

div.entity.activite.view .searchbar input {
  padding: 0.4em;
  width: 100%;
}

div.entity.activite.view div.list {
  margin: 2em 0;
}

div.entity.activite.view div.list h2 {
  color: #00215C;
  font-size: 2em;
}

div.entity.activite.view div.list h3 {
  color: #00215C;
  font-size: 1.5em;
  line-height: 4;
}

div.entity.activite.view div.list div.listItem {
  height: 100%;
  padding: 20px 30px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

div.entity.activite.view div.list div.listItem:nth-of-type(2n+1) {
  background: #f2f2f2;
}

div.entity.activite.view div.list div.listItem span {
  display: block;
  margin-left: 10px;
  width: calc(60% - 10px);
}

div.entity.activite.view div.list div.listItem div.right {
  float: right;
  width: 40%;
  text-align: right;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
}

div.entity.activite.view div.list div.listItem div.right a {
  font-style: italic;
}

div.entity.activite.view div.list div.listItem div.right a img {
  transition-duration: 150ms;
}

div.entity.activite.view div.list div.listItem div.right a.pdf {
  color: #909090;
  margin-right: 20px;
  transition-duration: 200ms;
}

div.entity.activite.view div.list div.listItem div.right a.pdf img {
  margin-right: 5px;
}

div.entity.activite.view div.list div.listItem div.right a.pdf:hover img {
  transform: translateY(-3px);
}

div.entity.activite.view div.list div.listItem div.right a.simulation {
  color: #199BD5;
  color: #00215C;
}

div.entity.activite.view div.list div.listItem div.right a.simulation:hover img {
  transform: translateX(3px);
}

@media only screen and (max-width: 1140px) {
  div.entity.activite.view div.list div.listItem {
    display: block;
  }
  div.entity.activite.view div.list div.listItem span {
    margin-left: 0;
    width: 100%;
  }
  div.entity.activite.view div.list div.listItem div.right {
    margin-top: 5px;
    width: 100%;
    float: none;
  }
}

@media only screen and (max-width: 600px) {
  div.entity.activite.view div.list div.listItem a {
    display: block;
    margin: 5px 0 !important;
  }
}

div.entity.activite.view div.list a {
  color: #383838;
  font-weight: bold;
}

div.entity.activite.view div.list a:hover {
  color: #199BD5;
}

div.entity.actualite.previewList .slick-prev {
  left: 0;
  z-index: 20;
}

div.entity.actualite.previewList .slick-next {
  right: 0;
  z-index: 20;
}

div.entity.actualite.previewList .slick-prev:before,
div.entity.actualite.previewList .slick-next:before {
  color: #333;
}

div.entity.actualite.preview {
  float: left;
  margin: 0 50px 100px;
}

div.entity.actualite.preview .categorie {
  display: inline-block;
  padding: 0.6em 1.2em;
  margin-bottom: 0.5em;
  color: #fff;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  background: #00215C;
}

div.entity.actualite.preview .categorie.categorie-2 {
  background: #199BD5;
}

div.entity.actualite.preview .actualite__content {
  box-shadow: 0 50px 50px rgba(0, 0, 0, 0.29);
}

div.entity.actualite.preview .actualite__date {
  color: #4D4E8B;
  font-weight: bold;
  letter-spacing: 1.4px;
}

div.entity.actualite.preview .actualite__wrap {
  padding: 1em;
}

div.entity.actualite.preview .actualite__title {
  margin-bottom: 0.7em;
  color: #383838;
  font-size: 1.2em;
  font-weight: bold;
  text-transform: uppercase;
}

div.entity.actualite.preview img {
  max-width: 100%;
}

@media only screen and (max-width: 1335px) {
  div.entity.actualite.preview .categorie__content {
    min-height: 75px;
  }
  div.entity.actualite.preview .actualite__description {
    min-height: 50px;
  }
  div.entity.actualite.preview .actualite__wrap {
    min-height: 165px;
  }
}

div.entity.actualite.viewList .content {
  display: flex;
  flex-wrap: wrap;
}

div.entity.actualite.viewList .content .actualite__content .tag {
  font-size: 12px;
}

div.entity.actualite.viewList .content .actualite__readmore__title h2 {
  margin-bottom: 0.7em;
  color: #383838;
  font-size: 1.2em;
  font-weight: bold;
  text-transform: uppercase;
  transition-duration: 200ms;
}

div.entity.actualite.viewList .content .actualite__readmore__title:hover h2 {
  color: #93B224;
}

@media only screen and (max-width: 900px) {
  div.entity.actualite.viewList > .content {
    justify-content: space-around;
  }
}

div.entity.actualite.listview {
  margin: 20px;
  width: calc(25% - 40px);
}

div.entity.actualite.listview .content {
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.29);
}

div.entity.actualite.listview img {
  max-width: 100%;
}

div.entity.actualite.listview .actualite__content {
  padding: 20px;
}

@media only screen and (max-width: 1200px) {
  div.entity.actualite.listview {
    width: calc(33.33% - 40px);
  }
}

@media only screen and (max-width: 900px) {
  div.entity.actualite.listview {
    width: 300px;
  }
}

@media only screen and (max-width: 445px) {
  div.entity.actualite.listview {
    margin: 20px 0;
  }
}

div.entity.actualite.view {
  padding: 4em 0;
  /*        .img-principale {
                    float: left;
                    margin-right: 50px;
                    margin-bottom: 35px;
                    max-width: 460px;
                }*/
}

div.entity.actualite.view h1 {
  padding-bottom: 0.75em;
}

div.entity.actualite.view h1::after {
  left: 50%;
  transform: translateX(-50%);
}

div.entity.actualite.view section.hero {
  text-align: center;
  margin-bottom: 2.5rem;
}

div.entity.actualite.view div.description {
  display: flex;
  flex-wrap: wrap;
  gap: 4%;
}

div.entity.actualite.view div.picture {
  width: 30%;
}

div.entity.actualite.view div.picture img {
  position: sticky;
  top: 2rem;
  width: 100%;
  border-radius: 8px;
}

@media only screen and (max-width: 900px) {
  div.entity.actualite.view div.picture {
    width: 100%;
    margin-right: 0;
    margin-bottom: 40px;
  }
}

div.entity.actualite.view div.text {
  width: 66%;
}

@media only screen and (max-width: 900px) {
  div.entity.actualite.view div.text {
    width: 100%;
  }
}

div.entity.actualite.view div.youtube {
  margin: 20px 0;
}

div.entity.actualite.view div.bottom {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  margin: 20px 0;
}

div.entity.actualite.view div.bottom a + a {
  margin-left: 10px;
}

@media only screen and (max-width: 900px) {
  div.entity.actualite.view .description {
    display: flex;
    flex-direction: column;
  }
  div.entity.actualite.view .img-principale {
    max-width: 100%;
    float: unset;
    margin-right: 0;
  }
  div.entity.actualite.view div.bottom {
    text-align: center;
    margin: 50px 0;
  }
}

@media only screen and (max-width: 550px) {
  div.entity.actualite.view div.bottom {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  div.entity.actualite.view div.bottom a {
    margin: 10px 0;
  }
}

div.entity.actualite .actualite__readmore {
  display: inline-block;
  margin-top: 25px;
  padding-bottom: 5px;
  color: #333;
  border-bottom: 1px solid #333;
}

div.entity.actualite .actualite__readmore:hover {
  color: #93B224;
  border-bottom: 1px solid #93B224;
}

div.entity.actualite .actualite__readmore__image {
  overflow: hidden;
  width: 100%;
}

div.entity.actualite .actualite__readmore__image img {
  transition-duration: 200ms;
  width: 100%;
}

div.entity.actualite .actualite__readmore__image:hover img {
  transform: scale(1.05);
  filter: brightness(0.6);
}

div.entity.actualite .tag {
  text-transform: uppercase;
  font-weight: bold;
  letter-spacing: 1.4px;
  color: #93B224;
}

form[name="actualite"] img {
  max-width: 360px;
}

.unpublished {
  opacity: 0.4;
}

.unpublished .btn-action {
  filter: grayscale(1);
}

/** ADMINS **/
.admin-panel {
  position: relative;
}

.admin-panel h1 {
  color: #00215C;
  font-size: 2rem;
  line-height: 1.2;
}

.admin-panel p {
  margin: 0;
}

.admin-panel .mb {
  margin-bottom: 1.5rem;
}

.admin-panel .actions {
  margin: 1em 0;
}

.admin-panel .admin-left {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 240px;
  background: #fff;
}

.admin-panel .admin-right {
  margin-left: 240px;
  border-left: 7px solid #f5f5f5;
}

.admin-panel .admin-right .content {
  position: relative;
  padding: 20px 15px 80px 15px;
  min-height: 1040px;
}

.admin-panel .admin-menu {
  list-style-type: none;
  padding: 0;
  margin-top: 0;
  margin-bottom: 1rem;
}

.admin-panel .admin-menu li a {
  position: relative;
  display: block;
  padding: 12px 20px;
  margin: 2px 0;
  color: #6e768e;
  font-size: 14px;
  transition: all 0.4s;
}

.admin-panel .admin-menu li a:hover {
  color: #458bc4;
  text-decoration: none;
  background-color: #f5f5f5;
}

.admin-panel .breadcrumb {
  margin-bottom: 1rem;
}

.admin-panel .breadcrumb a {
  color: grey;
}

.admin-panel .card-box {
  box-sizing: border-box;
  background: #fff;
  padding: 1.5rem;
  margin-bottom: 24px;
  border-radius: 0.25rem;
  border: 1px solid rgba(98, 103, 115, 0.2);
}

.admin-panel .card-box .card-box-title {
  margin-bottom: 10px;
  font-size: 1.5rem;
  color: #00215C;
}

.admin-panel .card {
  margin-bottom: 24px;
  border: 1px solid rgba(98, 103, 115, 0.2);
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: border-box;
  border-radius: 0.25rem;
}

.admin-panel .card-header {
  margin-top: 0;
  padding: 0.75rem 1.5rem;
  margin-bottom: 0;
  background-color: #f5f5f5;
  border-bottom: 0 solid rgba(0, 0, 0, 0.125);
}

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

.admin-panel .subtitle {
  margin-bottom: 0.5em;
  border-bottom: 1px solid rgba(98, 103, 115, 0.2);
}

.admin-panel .card-body {
  flex: 1 1 auto;
  min-height: 1px;
  padding: 1.5rem;
}

.admin-panel .row {
  display: flex;
  flex-wrap: wrap;
}

.admin-panel .row.gap {
  gap: 10px;
}

.admin-panel .row .col {
  box-sizing: border-box;
  padding-right: 12px;
  padding-left: 12px;
  width: 100%;
}

.admin-panel .row .col-6 {
  flex: 0 0 50%;
  max-width: 50%;
}

.admin-panel .row .col-4 {
  box-sizing: border-box;
  width: calc(25% - 8px);
}

.admin-panel .row .col-auto {
  flex: 1;
}

.admin-panel .row .widget {
  border-right: 1px solid rgba(98, 103, 115, 0.2);
}

.admin-panel .row .widget:last-child {
  border-right: none;
}

.admin-panel .row .box-widget {
  border: 1px solid rgba(98, 103, 115, 0.2);
}

.admin-panel .title-admin {
  margin-bottom: 1rem;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(98, 103, 115, 0.2);
}

.admin-panel .excel {
  display: table;
}

.admin-panel .excel .tr {
  display: table-row;
}

.admin-panel .excel .td {
  display: table-cell;
}

.admin-panel .excel td {
  padding: 0;
}

.admin-panel .excel form.inline {
  display: flex;
}

.admin-panel .excel .input-like {
  padding: 5px;
}

.admin-panel .excel [type="text"],
.admin-panel .excel [type="number"] {
  box-sizing: border-box;
  padding: 5px;
  height: 100%;
  width: 100%;
  border: 1px solid #666;
  border-radius: 0;
  background: inherit;
  text-align: center;
}

.admin-panel .excel [type="text"]:focus,
.admin-panel .excel [type="number"]:focus {
  border-color: 3px solid #000;
}

.admin-panel .header-admin {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1em;
}

.admin-panel .header-admin > *:not(.btn) {
  flex: 1;
}

.admin-panel .header-admin,
.admin-panel .header-admin-form {
  margin-bottom: 1rem;
}

.admin-panel .table {
  color: #1D1D1D;
}

.admin-panel .table th {
  color: #1D1D1D;
  border-top: 0;
}

.admin-panel section:not(:last-of-type) {
  margin-bottom: 3rem;
}

.admin-panel #admin-panel__button {
  display: none;
}

.admin-panel .btn-list {
  display: flex;
  align-items: center;
  gap: .35em;
}

.admin-panel .header-admin .btn-list,
.admin-panel td .btn-list {
  justify-content: flex-end;
}

.admin-panel .card-list {
  display: flex;
  flex-wrap: wrap;
  gap: 1em;
  justify-content: center;
}

.admin-panel .card {
  border: 0;
  padding: 1em;
  flex: 1;
  text-align: center;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
  display: flex;
  flex-wrap: wrap;
}

.admin-panel .card-title {
  margin-bottom: .5rem;
}

.admin-panel .card-body,
.admin-panel .card-bottom {
  width: 100%;
}

.admin-panel .card-body {
  padding: 0;
}

.admin-panel .card-bottom {
  align-self: flex-end;
  margin-top: 1rem;
}

.admin-panel .card-custom {
  flex: 2;
}

.admin-panel .form-group > [type="submit"] {
  display: block;
  margin-inline: auto;
}

@media only screen and (max-width: 1240px) {
  .admin-panel #admin-panel__button {
    display: block;
    padding: 10px;
    height: 45px;
    width: 100%;
    color: #fff;
    background: #333;
    border: 0;
    cursor: pointer;
  }
  .admin-panel .admin-left {
    position: fixed;
    bottom: 0;
    right: 0;
    left: 0;
    top: auto;
    width: 100%;
    transform: translateY(calc(100% - 45px));
    box-shadow: 0 0 7px rgba(0, 0, 0, 0.29);
    z-index: 1;
  }
  .admin-panel .admin-left.show {
    transform: none;
  }
  .admin-panel .admin-right {
    margin-left: 0;
    border-left: 0;
  }
}

.btn-action {
  border-radius: 6px;
  transition: all .2s ease;
  appearance: none;
  height: 24px;
  width: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.btn-delete {
  background-color: #dc3545;
  border: 1px solid #dc3545;
}

.btn-delete:hover {
  background-color: #a71d2a;
  border-color: #a71d2a;
}

.btn-edit {
  background-color: #439eff;
  border: 1px solid #439eff;
}

.btn-edit:hover {
  background-color: #0077f6;
  border-color: #0077f6;
}

.btn-publish {
  background-color: #cfd3d7;
  border: 1px solid #cfd3d7;
}

.btn-publish:hover {
  background-color: #a5adb4;
  border-color: #a5adb4;
}

.page-top {
  margin: 1em 0;
}

.user-valo {
  color: red;
}

form.no-fieldset fieldset {
  padding: 0;
  border: 0;
}

form.no-fieldset fieldset > legend {
  display: none;
}

section.paliers .palier-index {
  margin-bottom: .35rem;
  font-weight: bold;
  color: #00215C;
  font-size: .85em;
}

section.fiches h3 {
  margin-top: 3rem;
  color: #00215C;
  font-size: 1.2em;
}

section.fiches h4 {
  margin-top: 1rem;
}

.custom-file input {
  display: none;
}

.custom-file label {
  padding: .5em 1.5em;
  border-radius: 4px;
  border-color: #00215C;
  background-color: rgba(0, 33, 92, 0.075);
  cursor: pointer;
  transition-duration: .2s;
  margin: 0;
  display: inline-flex;
  align-items: center;
  gap: .75em;
}

.custom-file label::before {
  content: '';
  display: inline-block;
  width: 18px;
  height: 18px;
  background: url(/images/select-file.svg) center/contain no-repeat;
}

.custom-file label::after {
  content: 'Importer une image';
  color: #00215C;
}

.custom-file label:hover {
  background-color: rgba(0, 33, 92, 0.175);
}

#simulateur {
  margin-top: 40px;
}

#simulateur .row {
  padding-bottom: 20px;
  display: flex;
  margin: auto;
  max-width: 800px;
}

#simulateur .row > * {
  box-sizing: border-box;
  padding: 20px;
  margin: 0 20px;
  width: calc(50% - 40px);
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.29);
}

#simulateur .hide {
  display: none;
}

#simulateur .etapes {
  padding: 20px;
  border: 1px solid #eee;
}

#simulateur .placeholder {
  margin: 20px 0;
  padding: 80px 0;
  background-color: #eee;
  text-align: center;
}

.calcul-result {
  margin: 50px auto;
  padding: 40px;
  width: 600px;
  text-align: center;
  border: 1px solid #333;
}

.calcul-result .result {
  font-size: 3rem;
}

.calculateur-create {
  padding: 20px 0;
}

.calculateur-create .form-container:not(.select-constante) form#constante {
  display: none;
}

.calculateur-create .form-container:not(.select-valeurUtilisateur) form#valeurUtilisateur {
  display: none;
}

.calculateur-create .form-container:not(.select-choixSimple) form#choixSimple {
  display: none;
}

.calculateur-create .form-container:not(.select-choixComplexe) form#choixComplexe {
  display: none;
}

.calculateur-create .form-container:not(.select-question) form#question {
  display: none;
}

.calculateur-create .form-container:not(.select-bloc) form#bloc {
  display: none;
}

.calculateur-create .encart-formule {
  margin: 1.4em 0;
  padding: 2em;
  border: 1px solid #333;
}

.calculateur-create .encart-formule label {
  font-weight: bold;
}

.calculateur-create .encart-aide {
  margin: 1.4em 0;
  padding: 0.5em 2em 2em;
  background: #ddd;
}

.cas-conditions {
  margin: 1rem 0;
  padding: 1rem;
  background: #eee;
}

.form-add-valeur {
  padding: 1em;
  background: #ddd;
}

.list-valeurs > li {
  margin: 1em 0;
}

.entete {
  text-align: center;
  background: #ddd;
}

.suggestions-container {
  margin-top: 24px;
  display: flex;
  flex-wrap: wrap;
  margin-left: -30px;
  margin-right: -30px;
}

@media only screen and (max-width: 820px) {
  .suggestions-container {
    margin-left: -10px;
    margin-right: -10px;
  }
}

.simulation__suggestion {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  padding: 1em;
  margin: 0 30px 20px;
  width: calc(25% - 60px);
  color: #001F50;
  font-size: .9em;
  background: #eee;
  border-radius: 8px;
}

.simulation__suggestion strong {
  font-weight: normal;
}

.simulation__suggestion .suggestion__title {
  flex: 1;
}

.simulation__suggestion .suggestion__link {
  margin-top: 8px;
  color: #001F50;
  text-align: right;
}

.simulation__suggestion .suggestion__link a {
  color: inherit;
}

@media only screen and (max-width: 1368px) {
  .simulation__suggestion {
    width: calc(33% - 60px);
  }
}

@media only screen and (max-width: 820px) {
  .simulation__suggestion {
    margin: 0 10px 20px;
    width: calc(33% - 20px);
  }
}

@media only screen and (max-width: 640px) {
  .simulation__suggestion {
    width: calc(50% - 20px);
  }
}

@media only screen and (max-width: 640px) {
  .simulation__suggestion {
    width: calc(100% - 20px);
  }
}

* {
  box-sizing: border-box;
}

html {
  --recap-green: #C0D02C;
  --recap-grey: #B1B1B1;
  --recap-violet: #2A073C;
  --recap-orange: #FF7507;
  --recap-blue: #29306F;
  --recap-danger: #cf1619;
}

#site-container {
  display: flex;
}

@media only screen and (max-width: 1240px) {
  #site-container {
    dispaly: block;
  }
}

#menu-sidebar {
  position: sticky;
  top: 0;
  height: 100vh;
  background: #FBFBFB;
}

#menu-sidebar .menu__row {
  padding: 1rem;
  border-bottom: 1px solid #EBEBEB;
}

#menu-sidebar .menu__row--active {
  position: relative;
}

#menu-sidebar .menu__row--active:after {
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 4px;
  height: 24px;
  background: #000;
}

#menu-sidebar .flex {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

@media only screen and (max-width: 1240px) {
  #menu-sidebar {
    display: none;
  }
}

.menu-connected {
  background: #F4F4F4;
}

.menu-connected .banner-logo {
  display: none;
}

@media only screen and (max-width: 1240px) {
  .menu-connected .banner-logo {
    display: block;
  }
}

.menu-connected .menu {
  padding: 1rem 0;
  justify-content: space-between;
  width: 100%;
  text-align: center;
}

.menu-connected nav#menuResponsive * {
  box-sizing: border-box;
}

.menu-connected nav#menuResponsive .menu-user {
  font-size: 1rem;
  padding: 1rem;
  background: #FBFBFB;
}

.menu-connected nav#menuResponsive .menu-user__title {
  margin-bottom: 5px;
  font-size: 1.2em;
  font-weight: bold;
}

.menu-connected nav#menuResponsive .menu-user__link {
  margin-bottom: 10px;
}

.menu-connected nav#menuResponsive .menu-user .flex {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

@media only screen and (max-width: 1240px) {
  .menu-connected nav#menuResponsive {
    position: fixed;
  }
  .adminbar ~ #site-container .menu-connected nav#menuResponsive {
    top: 50px;
  }
}

#fullpage {
  flex: 1;
}

@media only screen and (max-width: 1240px) {
  #fullpage {
    width: 100%;
  }
}

.adminbar {
  padding: 0.3em;
  color: #fff;
  background: #1D1D1D;
  z-index: 10;
  text-align: center;
}

.adminbar .btn-admin {
  display: inline-block;
  color: #fff;
  text-decoration: underline;
}

.mode-test {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 12px 0;
  font-size: 22px;
  text-align: center;
  color: #fff;
  font-weight: bold;
  text-transform: uppercase;
  background: crimson;
  z-index: 99;
}

.encart {
  box-sizing: border-box;
  background-color: #FFF;
  border-radius: 20px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
  padding: 40px;
  margin: 30px 60px;
  width: calc(50% - 120px);
  max-width: calc(400px);
}

.encart__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-block: 30px;
}

.encart h3 {
  text-align: center;
  text-transform: uppercase;
  color: #00215C;
  margin-block: 30px;
  font-size: 1.4em;
  font-weight: 600;
}

.encart .number {
  width: 55px;
  height: 55px;
  background-color: #93B224;
  border-radius: 50%;
  font-weight: 600;
  margin: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.8em;
  color: #FFF;
}

.encart li {
  color: #00215C;
  font-weight: 300;
  list-style: none;
  position: relative;
}

.encart li::before {
  content: '';
  height: 25px;
  width: 25px;
  display: inline-block;
  position: absolute;
  left: -40px;
  background: url("/images/picto-plus.svg") center left/contain no-repeat;
}

.encart li p {
  font-size: 1.1em;
}

.encart--chronologiee {
  margin: 30px;
  width: calc(50% - 60px);
}

.encart--chronologiee h3 {
  margin-block: 15px;
}

@media only screen and (max-width: 1024px) {
  .encart {
    margin: 30px 20px;
    width: calc(50% - 40px);
    max-width: 100%;
  }
}

@media only screen and (max-width: 660px) {
  .encart {
    margin: 30px 0;
    width: 100%;
  }
}

.divPage.divWelcome .simulateur {
  position: relative;
  color: #fff;
  background: url("/images/BG-accueil.jpg") center center no-repeat;
  background-size: cover;
}

.divPage.divWelcome .simulateur .content {
  padding: 8em 0;
  width: 50%;
}

.divPage.divWelcome .simulateur .certificats {
  padding: 2em 4em 2em 2em;
  position: absolute;
  width: 300px;
  right: 0;
  bottom: 4em;
  background: #fff;
  border-top-left-radius: 37px;
  border-bottom-left-radius: 37px;
  box-shadow: 0 -14px 13px rgba(0, 0, 0, 0.29);
}

.divPage.divWelcome .simulateur h1 {
  position: relative;
  margin-bottom: .4em;
  padding-bottom: .4em;
  font-size: 4rem;
  line-height: 1;
}

.divPage.divWelcome .simulateur h1:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  height: 2px;
  width: 25%;
  background: #fff;
}

@media only screen and (max-width: 680px) {
  .divPage.divWelcome .simulateur h1 {
    font-size: 2.5rem;
  }
}

.divPage.divWelcome .simulateur div.description {
  margin-bottom: 2em;
}

.divPage.divWelcome .presentation {
  padding: 8em 0;
}

.divPage.divWelcome .presentation .row {
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
}

.divPage.divWelcome .presentation .left,
.divPage.divWelcome .presentation .right {
  box-sizing: border-box;
  padding: 0 20px;
  width: 50%;
}

.divPage.divWelcome .presentation .left {
  text-align: center;
}

.divPage.divWelcome .presentation img {
  max-width: 100%;
  height: auto;
}

.divPage.divWelcome .presentation .barre-btns {
  text-align: center;
}

.divPage.divWelcome .presentation .entity.description {
  margin-bottom: 3em;
}

@media only screen and (max-width: 1024px) {
  .divPage.divWelcome .presentation .row {
    display: block;
  }
  .divPage.divWelcome .presentation .left,
  .divPage.divWelcome .presentation .right {
    margin: 20px 0;
    padding: 0;
    width: 100%;
  }
}

.divPage.divWelcome .bandeau {
  padding: 8em 0;
  color: #fff;
  background: url("/images/BG-gratuit-contact.jpg") center center no-repeat;
}

.divPage.divWelcome .section-title {
  margin-bottom: 2rem;
  color: #fff;
  font-size: 2.2rem;
  font-weight: bold;
  text-align: center;
}

@media only screen and (max-width: 680px) {
  .divPage.divWelcome .section-title {
    font-size: 1.6rem;
  }
}

.divPage.divWelcome .activites {
  padding: 4em 0;
  background: url("/images/BG-vousetes.jpg") top left;
}

.divPage.divWelcome .actualites {
  padding: 4em 0;
}

.divPage.divWelcome .solutions {
  padding-top: 5em;
  padding-bottom: 5em;
}

.divPage.divWelcome .solutions .row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 40px 0;
}

.divPage.divWelcome .solutions .row > div {
  box-sizing: border-box;
  margin: 20px;
  width: calc(25% - 40px);
  text-align: center;
}

.divPage.divWelcome .solutions .name {
  color: #00215C;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1.2;
  text-transform: uppercase;
}

.divPage.divWelcome .solutions img {
  max-width: 100%;
  max-height: 100%;
  height: auto;
  transition: .2s;
}

.divPage.divWelcome .solutions .image-container {
  height: 100px;
  width: 100px;
  max-width: 100%;
  margin: auto;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.divPage.divWelcome .solutions .image-container > a {
  height: 100%;
}

.divPage.divWelcome .solutions .image-container > a:hover img {
  transform: scale(1.1);
}

@media only screen and (max-width: 1024px) {
  .divPage.divWelcome .solutions .row > div {
    width: calc(50% - 40px);
  }
}

@media only screen and (max-width: 540px) {
  .divPage.divWelcome .solutions .name {
    font-size: 0.9rem;
  }
}

.divPage.divWelcome .subventions {
  padding: 4em 0;
}

.divPage.divWelcome .subventions .row {
  display: flex;
  align-items: center;
}

.divPage.divWelcome .subventions .row .left {
  padding-right: 40px;
  width: calc(65% - 40px);
}

.divPage.divWelcome .subventions .row .right {
  width: 35%;
}

.divPage.divWelcome .ecomethodes {
  padding: 60px 0;
}

.divPage.divWelcome .ecomethodes .row {
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  margin-left: -50px;
  margin-right: -50px;
  margin-bottom: 50px;
}

.divPage.divWelcome .ecomethodes .row .left,
.divPage.divWelcome .ecomethodes .row .right {
  box-sizing: border-box;
  margin: 0 50px;
  width: calc(50% - 100px);
}

.divPage.divWelcome .ecomethodes .row .right img {
  width: 440px;
}

@media only screen and (max-width: 1024px) {
  .divPage.divWelcome .ecomethodes .row {
    margin-left: 0;
    margin-right: 0;
  }
  .divPage.divWelcome .ecomethodes .row .left,
  .divPage.divWelcome .ecomethodes .row .right {
    margin: 20px 0;
    width: 100%;
  }
}

.divPage.divWelcome .align-items-center {
  align-items: center;
}

.divPage.divWelcome .expertise h2 {
  text-transform: uppercase;
  text-align: center;
  color: #00215C;
  font-size: 2.2em;
}

@media only screen and (max-width: 1275px) {
  .divPage.divWelcome .bandeau {
    background-size: cover;
  }
  .divPage.divWelcome .solutions {
    padding-block: 4em;
  }
}

@media only screen and (max-width: 900px) {
  .divPage.divWelcome .simulateur .content {
    width: 100%;
  }
  .divPage.divWelcome .simulateur .certificats {
    bottom: -6em;
  }
}

@media only screen and (max-width: 700px) {
  .divPage.divWelcome .subventions .row {
    flex-direction: column;
  }
  .divPage.divWelcome .subventions .bottom {
    text-align: center;
    padding: 2em 0;
  }
}

@media only screen and (max-width: 480px) {
  .divPage.divWelcome .simulateur {
    overflow: hidden;
  }
  .divPage.divWelcome .simulateur .content {
    padding: 4em 0;
    width: 100%;
  }
  .divPage.divWelcome .simulateur .certificats {
    box-sizing: border-box;
    position: static;
    margin: 0 20px 30px;
    width: calc(100% - 40px);
    border-top-right-radius: 37px;
    border-bottom-right-radius: 37px;
  }
}

.divPage.divPresentation {
  padding: 4em 0;
}

.divPage.divPresentation div.container div.margin-v {
  margin: 5em 0;
}

.divPage.divPresentation h2 {
  margin-top: 2em;
}

.divPage.divPresentation .row {
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  margin-left: -50px;
  margin-right: -50px;
  margin-bottom: 50px;
}

.divPage.divPresentation .row .left,
.divPage.divPresentation .row .right {
  box-sizing: border-box;
  margin: 0 50px;
  width: calc(50% - 100px);
}

@media only screen and (max-width: 1024px) {
  .divPage.divPresentation .row {
    margin-left: 0;
    margin-right: 0;
  }
  .divPage.divPresentation .row .left,
  .divPage.divPresentation .row .right {
    margin: 20px 0;
    width: 100%;
  }
}

.divPage.divPresentation .row-travaux {
  display: flex;
  flex-wrap: wrap;
  margin-top: 100px;
}

.divPage.divPresentation .row-travaux > div {
  margin: 20px;
  width: calc(33.33% - 40px);
  text-align: center;
}

.divPage.divPresentation .row-travaux .name {
  font-weight: bold;
}

.divPage.divPresentation .row-travaux .img-container {
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media only screen and (max-width: 1024px) {
  .divPage.divPresentation .row-travaux {
    margin: 20px 0;
  }
}

@media only screen and (max-width: 540px) {
  .divPage.divPresentation .row-travaux > div {
    width: calc(50% - 40px);
  }
}

.divPage.divPresentation .container-full {
  display: flex;
  flex-wrap: wrap;
}

.divPage.divPresentation .container-full .left,
.divPage.divPresentation .container-full .right {
  box-sizing: border-box;
  width: 50%;
}

.divPage.divPresentation .container-full .left {
  background: #F0F0F0;
}

.divPage.divPresentation .container-full .right {
  padding-right: calc(50% - 810px);
}

.divPage.divPresentation .container-full .right-right {
  box-sizing: border-box;
  padding: 0 50px;
}

.divPage.divPresentation .container-full .left {
  padding-left: calc(50% - 810px);
}

.divPage.divPresentation .container-full .left-left {
  box-sizing: border-box;
  padding: 0 50px;
}

@media only screen and (max-width: 1024px) {
  .divPage.divPresentation .container-full .left,
  .divPage.divPresentation .container-full .right {
    width: 100%;
  }
  .divPage.divPresentation .container-full .right {
    order: 0;
  }
  .divPage.divPresentation .container-full .left {
    order: 1;
  }
}

@media only screen and (max-width: 800px) {
  .divPage.divPresentation .container-full .right-right,
  .divPage.divPresentation .container-full .left-left {
    padding: 0 20px;
  }
}

.divPage.divPresentation .projet-cee {
  padding: 40px 20px;
  background: url("/images/BG-gratuit-contact.jpg") center center no-repeat;
  background-size: cover;
}

.divPage.divPresentation .projet-cee h2 {
  margin-top: 0;
  margin-bottom: 20px;
  color: #fff;
  font-size: 2.2rem;
}

.divPage.divPresentation .align-items-center {
  align-items: center;
}

.divPage.divPresentation .expertise h2 {
  text-transform: uppercase;
  text-align: center;
  color: #00215C;
  font-size: 2.2em;
}

@media only screen and (max-width: 680px) {
  .divPage.divPresentation .btns .btn {
    display: block;
    margin: 10px auto;
    max-width: 380px;
  }
}

.divPage.divContact h1, .divPage.divContact h2 {
  margin-bottom: 1em;
}

.divPage.divContact h2 {
  font-size: 2em;
}

.divPage.divContact div.rgpd legend {
  display: none;
}

.divPage.divContact div.rgpd .form-check {
  display: flex;
}

.divPage.divContact div.rgpd .form-check label {
  margin-left: 5px;
}

.divPage.divContact .row {
  display: flex;
}

.divPage.divContact .coords {
  width: 50%;
}

.divPage.divContact .coords .description p {
  margin: 0;
}

.divPage.divContact .coords .description p > a:not(.btn) {
  text-decoration: underline;
  color: #93B224;
}

.divPage.divContact .coords .description p > strong {
  font-size: 1.2em;
}

.divPage.divContact .contact {
  margin: 0 20px;
  width: calc(50% - 40px);
}

.divPage.divContact .contact form div.form-group:nth-last-of-type(1) {
  width: 100%;
  text-align: center;
}

.divPage.divContact .contact form div.form-group.entreprise {
  width: 100%;
}

.divPage.divContact .contact form div.form-group.message textarea {
  min-height: 100px;
}

.divPage.divContact .contact form div.form-group button[type="submit"] {
  display: inline-block;
  padding: 1em;
  color: #FFF;
  font-weight: bold;
  text-transform: uppercase;
  background: #FF7507;
  border: 1px solid #FF7507;
  margin: 1em 0;
}

.divPage.divContact .map {
  margin-top: 20px;
}

.divPage.divContact iframe {
  width: 100%;
}

.divPage.divContact form {
  display: flex;
  flex-wrap: wrap;
}

.divPage.divContact form .nom,
.divPage.divContact form .prenom,
.divPage.divContact form .entreprise,
.divPage.divContact form .email,
.divPage.divContact form .phone,
.divPage.divContact form .activite,
.divPage.divContact form .projet {
  margin: 10px;
  width: calc(50% - 20px);
}

.divPage.divContact form .message {
  margin: 10px;
  width: calc(100% - 20px);
}

@media only screen and (max-width: 1024px) {
  .divPage.divContact .row {
    display: block;
  }
  .divPage.divContact .coords,
  .divPage.divContact .contact {
    margin: 0;
    width: 100%;
  }
  .divPage.divContact .contact {
    margin-top: 20px;
  }
}

@media only screen and (max-width: 650px) {
  .divPage.divContact form .form-group {
    width: 100%;
  }
}

#filtres-actu {
  margin: 20px 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1em;
}

#filtres-actu a {
  display: inline-block;
  padding: 8px 16px;
  background-color: #EBEBEB;
  border: 2px solid #EBEBEB;
}

#filtres-actu a.active {
  transform: translateY(-10px);
  border-bottom: 2px solid #00215C;
}

@media only screen and (max-width: 680px) {
  .divPage.divSubventions .btns .btn {
    display: block;
    margin: 10px auto;
    max-width: 380px;
  }
}

.divPage.divSimulation {
  min-height: 80vh;
}

.divPage.divSimulation .bg-blue {
  padding: 15px;
  text-align: center;
}

.divPage.divSimulation .bg-blue:not(.price) {
  text-transform: uppercase;
  font-size: .9em;
}

@media only screen and (max-width: 700px) {
  .divPage.divSimulation .bg-blue:not(.price) {
    font-size: .8em;
  }
}

.divPage.divSimulation .bg-blue.price {
  color: #93B224;
  font-size: 1.2em;
}

@media only screen and (max-width: 700px) {
  .divPage.divSimulation .bg-blue.price {
    font-size: 1em;
  }
}

.divPage.divSimulation a.fiche-add-operation {
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 30px;
  width: 100%;
  background: #eee;
  text-align: center;
  transition: .2s;
  border-radius: 4px;
}

.divPage.divSimulation a.fiche-add-operation span {
  vertical-align: middle;
  color: #93B224;
  font-size: 2rem;
  font-weight: bold;
  text-transform: uppercase;
}

.divPage.divSimulation a.fiche-add-operation:hover {
  background: #ddd;
}

.divPage.divSimulation a.fiche-add-operation svg {
  margin-right: 10px;
  vertical-align: middle;
}

@media only screen and (max-width: 1024px) {
  .divPage.divSimulation a.fiche-add-operation {
    padding: 20px;
  }
  .divPage.divSimulation a.fiche-add-operation span {
    font-size: 1.4rem;
  }
  .divPage.divSimulation a.fiche-add-operation svg {
    width: 64px;
    height: 64px;
  }
}

.divPage.divSimulation div.container .fiche:nth-of-type(even) {
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

.divPage.divSimulation div.container div.space {
  padding: 20px 0;
}

.divPage.divSimulation div.container div.head {
  margin-bottom: 50px;
}

.divPage.divSimulation div.container div.head .secteur {
  font-size: 1.6rem;
  margin-block: 20px;
}

@media only screen and (max-width: 700px) {
  .divPage.divSimulation div.container div.head .secteur {
    font-size: 1.3rem;
  }
}

.divPage.divSimulation div.container div.head .dataSimulation {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.divPage.divSimulation div.container div.head .dataSimulation > div:first-of-type {
  width: 40%;
}

@media only screen and (max-width: 700px) {
  .divPage.divSimulation div.container div.head .dataSimulation > div:first-of-type {
    width: 100%;
  }
}

.divPage.divSimulation div.container div.head .dataSimulation > div:nth-of-type(2) {
  width: 60%;
}

@media only screen and (max-width: 700px) {
  .divPage.divSimulation div.container div.head .dataSimulation > div:nth-of-type(2) {
    width: 100%;
  }
}

.divPage.divSimulation div.container div.head .dataSimulation > div > div {
  margin-block: 15px;
}

.divPage.divSimulation div.container div.main .nameSheet {
  font-size: 1.3em;
}

@media only screen and (max-width: 700px) {
  .divPage.divSimulation div.container div.main .nameSheet {
    font-size: 1.1rem;
  }
}

.divPage.divSimulation div.container div.main .price {
  font-size: 1.1em;
}

.divPage.divSimulation div.container div.main .surface span {
  font-weight: bold;
}

.divPage.divSimulation div.container div.main div.contenu {
  position: relative;
}

.divPage.divSimulation div.container div.main div.contenu .left {
  flex: 1;
}

.divPage.divSimulation div.container div.main div.contenu .left > div {
  margin-block: 10px;
}

.divPage.divSimulation div.container div.main div.contenu .right {
  position: absolute;
  top: 0;
  right: 0;
  margin-top: 10px;
  display: flex;
  align-items: center;
}

@media only screen and (max-width: 1024px) {
  .divPage.divSimulation div.container div.main div.contenu .right {
    position: static;
  }
}

.divPage.divSimulation div.container div.main div.contenu .right svg {
  vertical-align: middle;
}

.divPage.divSimulation div.container div.add-operation {
  padding-left: 5%;
}

.divPage.divSimulation div.container div.add-operation a {
  background: #93B224;
  color: #FFF;
  padding: 10px 30px;
  margin: 0 10px;
  border-radius: 50px;
}

.divPage.divSimulation div.container div.account {
  margin: 5em 0;
}

.divPage.divSimulation div.container div.account a {
  color: #93B224;
}

.divPage.divSimulation div.container div.account a:hover {
  border-bottom: 1px solid #00215C;
}

.divPage.divSimulation div.container div.information {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  justify-content: center;
  text-align: center;
  margin-top: 20px;
  margin-bottom: 50px;
}

.divPage.divSimulation div.container div.total small {
  margin-block: 5px;
}

.divPage.divSimulation div.container div.actions .links {
  display: flex;
  flex-direction: column;
  gap: 50px;
  align-items: center;
}

.divPage.divSimulation div.container div.actions .links .bottom-links {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
}

.divPage.divSimulation div.container div.contenu {
  margin-bottom: 30px;
}

.divPage.divSimulation .table {
  width: auto;
  border: 2px solid rgba(0, 0, 0, 0.1);
  padding: 20px;
  border-radius: 15px;
}

.divPage.divSimulation .table .tr:nth-of-type(even) {
  margin-block: 15px;
}

.divPage.divSimulation .table .tr > .td:first-of-type {
  width: 60%;
}

@media only screen and (max-width: 1000px) {
  .divPage.divSimulation .table .tr > .td:first-of-type {
    width: 100%;
  }
}

@media only screen and (max-width: 1000px) {
  .divPage.divSimulation .table .tr {
    flex-wrap: wrap;
  }
}

.divPage.divSimulation .rwd {
  display: none;
}

.divPage.divSimulation .collection-group {
  padding: 12px;
  background: #f7f7f7;
}

.divPage.divSimulation .collection-group__title {
  color: #00215C;
  font-size: 1.4rem;
  font-weight: normal;
}

.divPage.divSimulation .collection-group__title--froid {
  color: #37a8db;
}

.divPage.divSimulation .collection-group__title--chaleur {
  color: #f19300;
}

.divPage.divSimulation .collection-item {
  margin-bottom: 10px;
}

.divPage.divSimulation .collection-item__title {
  position: relative;
  color: #000;
  font-size: 1.2rem;
  font-weight: bold;
  text-transform: uppercase;
}

@media only screen and (max-width: 1100px) {
  .divPage.divSimulation div.container div.main div.contenu {
    flex-direction: column;
  }
  .divPage.divSimulation div.container div.right {
    margin-block: 20px;
  }
  .divPage.divSimulation div.container div.add-operation {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-left: 0;
  }
  .divPage.divSimulation div.container div.add-operation a {
    width: 275px;
    margin: 10px;
    text-align: center;
  }
  .divPage.divSimulation .rwd {
    display: inline-block;
  }
  .divPage.divSimulation .noRwd {
    display: none;
  }
  .divPage.divSimulation a.delete {
    padding: 10px 30px;
    background-color: #d00000;
    color: #FFF;
  }
}

@media only screen and (max-width: 890px) {
  .divPage.divSimulation .btn {
    margin: 10px;
  }
}

@media only screen and (max-width: 560px) {
  .divPage.divSimulation .btn {
    display: block;
    margin: 5px 0;
    text-align: center;
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

.divProfil div.userData {
  margin: 20px;
}

.divProfil div.userData > div {
  color: #00215C;
  margin-top: 15px;
  margin-bottom: 20px;
}

.divProfil div.userData .userName {
  font-size: 2.5em;
  color: #00215C;
  margin-block: 0;
}

.divProfil div.userData .userTypeCompte {
  margin-top: 5px;
  color: #5D5D5D;
}

.divProfil div.userData .userMail, .divProfil div.userData .userSociete, .divProfil div.userData .userPhone {
  display: flex;
  align-items: flex-start;
  gap: 5px;
}

.divProfil div.userData .actions {
  font-size: 0.9em;
  margin: 10px 0;
}

.divProfil div.userData .actions a {
  color: #93B224;
}

.divProfil div.userData .actions a:hover {
  color: #5e7217;
}

.divProfil div.simulations h2 {
  margin-bottom: 10px;
}

.divProfil.recapitulatif .block-informations__information {
  width: calc(50% - 20px);
}

@media only screen and (max-width: 800px) {
  .divProfil.recapitulatif .block-informations__information {
    width: calc(100% - 20px);
  }
}

table.account {
  font-size: 0.9em;
}

table.account thead {
  background-color: #FBFBFB;
}

table.account thead th:first-child {
  border-top-left-radius: 10px;
}

table.account thead th:last-child {
  border-top-right-radius: 10px;
}

table.account th {
  border-top: 1px solid rgba(0, 0, 0, 0.3);
}

table.account td {
  border-top: none !important;
}

table.account td, table.account th {
  border-left: 1px solid rgba(0, 0, 0, 0.3);
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
  box-shadow: none !important;
}

table.account td:last-child, table.account th:last-child {
  border-right: 1px solid rgba(0, 0, 0, 0.3);
}

.account_infos {
  padding: 15px 20px;
  margin-left: 12px;
  margin-right: 12px;
  margin-bottom: 1rem;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  background: #f4f4f4;
}

.account_infos .field {
  display: flex;
  align-items: center;
  font-weight: bold;
}

.account_infos > div {
  margin: 5px;
}

.account_infos a {
  margin: 5px;
}

.box-login {
  padding: 40px;
  margin: 40px auto 100px;
  max-width: 400px;
  border: 1px solid #eee;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.29);
}

.box-login h1 {
  margin-bottom: 20px;
  font-size: 1.4rem;
  line-height: 1.2;
  font-weight: bold;
}

.box-login .btn {
  padding: 10px 20px;
  width: 186px;
}

.modal-login .button,
.box-login .button {
  box-sizing: border-box;
  text-transform: uppercase;
  font-weight: bold;
  width: 186px;
  cursor: pointer;
}

.modal-login .button-google,
.box-login .button-google {
  display: inline-flex;
  gap: 3px;
  text-transform: none;
  color: #333;
  font-weight: normal;
  background: #fff;
  border: none;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.29);
}

.box-login-edit {
  box-sizing: border-box;
  color: #16042D;
  margin: 40px auto 100px;
  max-width: 520px;
  width: 100%;
}

.box-login-edit .form-login {
  width: 100%;
  max-width: 100%;
}

.box-login-edit .box-login-edit__content {
  padding: 20px 40px;
  background: #EBEBEB;
  border-radius: 8px;
}

.box-login-edit .form-line {
  display: flex;
  align-items: center;
}

.box-login-edit .form-line.logo {
  align-items: start;
}

.box-login-edit .form-line__label {
  width: 140px;
}

.box-login-edit .form-line__widget {
  flex: 1;
}

@media only screen and (max-width: 560px) {
  .box-login-edit .box-login-edit__content {
    padding: 20px;
  }
  .box-login-edit .form-line {
    display: block;
  }
}

/**
 * Sitemap
 * ********* */
div.divSitemap div#sitemap ul {
  line-height: 1.6em;
  list-style-type: none;
}

div.divSitemap div#sitemap ul li:before {
  content: "";
  background: #199BD5;
  display: inline-block;
  vertical-align: middle;
  width: 10px;
  height: 10px;
  margin-right: 10px;
}

div.divSitemap div#sitemap ul li ul li:before {
  content: "";
  background: #93B224;
  display: inline-block;
  vertical-align: middle;
  width: 10px;
  height: 10px;
  margin-right: 10px;
}

div.divSitemap div#sitemap ul li ul li ul li:before {
  content: "";
  background: #199BD5;
  display: inline-block;
  vertical-align: middle;
  width: 10px;
  height: 10px;
  margin-right: 10px;
}

div.divSitemap div#sitemap a {
  color: #1D1D1D;
}

div.divSitemap div#sitemap a:hover {
  color: #FF7507;
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vX25vcm1hbGl6ZS5zY3NzIiwid2VicGFjazovLy9hcHAuc2NzcyIsIndlYnBhY2s6Ly8vX2NvbW1vbi5zY3NzIiwid2VicGFjazovLy9fc2V0dGluZ3Muc2NzcyIsIndlYnBhY2s6Ly8vbW9kdWxlcy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovLy9tb2R1bGVzL190aXRsZXMuc2NzcyIsIndlYnBhY2s6Ly8vbW9kdWxlcy9fZm9ybS5zY3NzIiwid2VicGFjazovLy9tb2R1bGVzL190YWJsZS5zY3NzIiwid2VicGFjazovLy9tb2R1bGVzL19tb2RhbC5zY3NzIiwid2VicGFjazovLy9tb2R1bGVzL19pbmRpY2F0ZXVycy5zY3NzIiwid2VicGFjazovLy9faGVscGVycy5zY3NzIiwid2VicGFjazovLy9faGVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vL19tZW51LnNjc3MiLCJ3ZWJwYWNrOi8vL19mb290ZXIuc2NzcyIsIndlYnBhY2s6Ly8vX3NpbXVsYXRldXIuc2NzcyIsIndlYnBhY2s6Ly8vZW50aXRpZXMvX2FjdGl2aXRlLnNjc3MiLCJ3ZWJwYWNrOi8vL2VudGl0aWVzL19hY3R1YWxpdGUuc2NzcyIsIndlYnBhY2s6Ly8vYWRtaW4vX2FkbWluLXBhbmVsLnNjc3MiLCJ3ZWJwYWNrOi8vL2FkbWluL19jYWxjdWxhdGV1ci5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBRUE7K0VDQStFO0FERy9FOzs7RUNDRTtBRElEO0VBQ0csaUJBQWlCO0VBQUU7RUFDbkIsOEJBQThCO0VBQUU7QUNBcEM7O0FER0U7aUZDQStFO0FERy9FOztJQ0FFO0FESUY7RUFDRSxTQUFTO0FDRmI7O0FES0U7O0lDREU7QURLRjtFQUNFLGNBQWM7QUNIbEI7O0FETUU7OztJQ0RFO0FETUY7RUFDRSxjQUFjO0VBQ2QsZ0JBQWdCO0FDSnBCOztBRE9FO2lGQ0orRTtBRE8vRTs7O0lDSEU7QURRRjtFQUNFLHVCQUF1QjtFQUFFO0VBQ3pCLFNBQVM7RUFBRTtFQUNYLGlCQUFpQjtFQUFFO0FDSHZCOztBRE1FOzs7SUNERTtBRE1GO0VBQ0UsaUNBQWlDO0VBQUU7RUFDbkMsY0FBYztFQUFFO0FDRnBCOztBREtFO2lGQ0YrRTtBREsvRTs7SUNGRTtBRE1GO0VBQ0UsNkJBQTZCO0FDSmpDOztBRE9FOzs7SUNGRTtBRE9GO0VBQ0UsbUJBQW1CO0VBQUU7RUFDckIsMEJBQTBCO0VBQUU7RUFDNUIsaUNBQWlDO0VBQUU7QUNGdkM7O0FES0U7O0lDREU7QURLRjs7RUFFRSxtQkFBbUI7QUNIdkI7O0FETUU7OztJQ0RFO0FETUY7OztFQUdFLGlDQUFpQztFQUFFO0VBQ25DLGNBQWM7RUFBRTtBQ0ZwQjs7QURLRTs7SUNERTtBREtGO0VBQ0UsY0FBYztBQ0hsQjs7QURNRTs7O0lDREU7QURNRjs7RUFFRSxjQUFjO0VBQ2QsY0FBYztFQUNkLGtCQUFrQjtFQUNsQix3QkFBd0I7QUNKNUI7O0FET0U7RUFDRSxlQUFlO0FDSm5COztBRE9FO0VBQ0UsV0FBVztBQ0pmOztBRE9FO2lGQ0orRTtBRE8vRTs7SUNKRTtBRFFGO0VBQ0Usa0JBQWtCO0FDTnRCOztBRFNFO2lGQ04rRTtBRFMvRTs7O0lDTEU7QURVRjs7Ozs7RUFLRSxvQkFBb0I7RUFBRTtFQUN0QixlQUFlO0VBQUU7RUFDakIsaUJBQWlCO0VBQUU7RUFDbkIsU0FBUztFQUFFO0FDSmY7O0FET0U7OztJQ0ZFO0FET0Y7O0VBQ1E7RUFDTixpQkFBaUI7QUNKckI7O0FET0U7OztJQ0ZFO0FET0Y7O0VBQ1M7RUFDUCxvQkFBb0I7QUNKeEI7O0FET0U7O0lDSEU7QURPRjs7OztFQUlFLDBCQUEwQjtBQ0w5Qjs7QURRRTs7SUNKRTtBRFFGOzs7O0VBSUUsa0JBQWtCO0VBQ2xCLFVBQVU7QUNOZDs7QURTRTs7SUNMRTtBRFNGOzs7O0VBSUUsOEJBQThCO0FDUGxDOztBRFVFOztJQ05FO0FEVUY7RUFDRSw4QkFBOEI7QUNSbEM7O0FEV0U7Ozs7O0lDSkU7QURXRjtFQUNFLHNCQUFzQjtFQUFFO0VBQ3hCLGNBQWM7RUFBRTtFQUNoQixjQUFjO0VBQUU7RUFDaEIsZUFBZTtFQUFFO0VBQ2pCLFVBQVU7RUFBRTtFQUNaLG1CQUFtQjtFQUFFO0FDSHpCOztBRE1FOztJQ0ZFO0FETUY7RUFDRSx3QkFBd0I7QUNKNUI7O0FET0U7O0lDSEU7QURPRjtFQUNFLGNBQWM7QUNMbEI7O0FEUUU7OztJQ0hFO0FBQ0o7O0VEU0ksc0JBQXNCO0VBQUU7RUFDeEIsVUFBVTtFQUFFO0FDSmhCOztBRE9FOztJQ0hFO0FBQ0o7O0VEUUksWUFBWTtBQ0xoQjs7QURRRTs7O0lDSEU7QUFDSjtFRFFJLDZCQUE2QjtFQUFFO0VBQy9CLG9CQUFvQjtFQUFFO0FDSjFCOztBRE9FOztJQ0hFO0FBQ0o7RURPSSx3QkFBd0I7QUNMNUI7O0FEUUU7OztJQ0hFO0FEUUY7RUFDRSwwQkFBMEI7RUFBRTtFQUM1QixhQUFhO0VBQUU7QUNKbkI7O0FET0U7aUZDSitFO0FETy9FOztJQ0pFO0FEUUY7RUFDRSxjQUFjO0FDTmxCOztBRFNFOztJQ0xFO0FEU0Y7RUFDRSxrQkFBa0I7QUNQdEI7O0FEVUU7aUZDUCtFO0FEVS9FOztJQ1BFO0FEV0Y7RUFDRSxhQUFhO0FDVGpCOztBRFlFOztJQ1JFO0FBQ0o7RURZSSxhQUFhO0FDVmpCOztBRDNURTtFRXJCRSxjQ0lVO0VESFYsaUNDRjhCO0VERzlCLGdCQUFnQjtFQUNoQixnQkFBZ0I7QURvVnBCOztBQ3hWQTtFQU1RLGtCQUFrQjtBRHNWMUI7O0FDNVZBO0VBUVksV0FBVztFQUNYLGtCQUFrQjtFQUNsQixNQUFNO0VBQUUsUUFBUTtFQUFFLFNBQVM7RUFBRSxPQUFPO0VBQ3BDLCtCQUFxQjtFQUNyQixVQUFVO0FEMlZ0Qjs7QUN2V0E7RUFlWSxXQUFXO0VBQ1gsZUFBZTtFQUNmLFFBQVE7RUFBRSxTQUFTO0VBQ25CLGdDQUFnQztFQUNoQyxzQkFBc0I7RUFDdEIscUJBQXFCO0VBQ3JCLHNCQUFzQjtFQUN0QixpQkFBaUI7RUFDakIsc0JBQXNCO0VBQUU7RUFDeEIsNkJBQTZCO0VBQUU7RUFDL0Isa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxZQUFZO0VBQ1osb0NBQW9DO0VBQ3BDLFVBQVU7QUQrVnRCOztBQzFWQTs7OztFQUlJLFNBQVM7RUFDVCxVQUFVO0FENlZkOztBQzFWQTs7RUFFSSxXQUFXO0VBQ1gscUJBQXFCO0VBQ3JCLHlCQUF5QjtFQUN6QixxQkFBcUI7RUFDckIsZUFBZTtBRDZWbkI7O0FDbldBOztFQVFRLHNCQUFzQjtFQUN0QixXQUFXO0VBQ1gsa0JBQWtCO0FEZ1cxQjs7QUMxV0E7O0VBYVEsY0NqRFE7RURrRFIsaUJBQWlCO0VBQ2pCLG9CQUFvQjtFQUNwQixtQkFBbUI7RUFDbkIsU0FBUztBRGtXakI7O0FDblhBOztFQW1CWSxXQUFXO0VBQ1gsWUFBWTtFQUNaLFdBQVc7RUFDWCxrRUFBb0U7RUFDcEUsaUJBQWlCO0VBQ2pCLHFCQUFxQjtFQUNyQiwwQkFBMEI7QURxV3RDOztBQzlYQTs7RUE2QmdCLDJCQUEyQjtBRHNXM0M7O0FDbllBOztFQWtDUSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLGtCQUFrQjtFQUNsQixpQkFBaUI7RUFDakIsMEJBQTBCO0FEc1dsQzs7QUM1WUE7O0VBeUNRLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gseUJDbEZnQjtFRG1GaEIsb0JBQW9CO0VBQ3BCLHNCQUFzQjtFQUN0QixtQkFBbUI7RUFDbkIsU0FBUztFQUNULGdCQUFnQjtBRHdXeEI7O0FDeFpBOztFQWtEWSx5QkFBNkM7QUQyV3pEOztBQzdaQTs7RUFzRFEsb0JBQW9CO0VBQ3BCLG1CQUFtQjtFQUNuQix1QkFBdUI7RUFDdkIsa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLHlCQUF5QjtFQUN6QixrQkFBa0I7RUFDbEIscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsaUJBQWlCO0VBQ2pCLHlCQ3BHTztFRHFHUCx5QkNyR087QUZpZGY7O0FDaGJBOztFQXNFWSxjQ3ZHRztFRHdHSCw2QkFBNkI7QUQrV3pDOztBQ3RiQTs7RUEwRVkseUJDdkdJO0VEd0dKLHlCQ3hHSTtBRnlkaEI7O0FDNWJBOztFQTZFZ0IsY0MxR0E7RUQyR0Esc0JBQXNCO0FEb1h0Qzs7QUNsY0E7O0VBa0ZZLHlCQ2xIQztFRG1IRCx5QkNuSEM7QUZ3ZWI7O0FDeGNBOztFQXFGZ0IsY0NySEg7RURzSEcsc0JBQXNCO0FEd1h0Qzs7QUM5Y0E7O0VBMEZZLHlCQ3JIRTtFRHNIRix5QkN0SEU7QUYrZWQ7O0FDcGRBOztFQTZGZ0IsY0N4SEY7RUR5SEUsc0JBQXNCO0FENFh0Qzs7QUMxZEE7O0VBa0dZLHNCQUFzQjtFQUN0QixzQkFBc0I7QUQ2WGxDOztBQ2hlQTs7RUFxR2dCLFdBQVc7RUFDWCxzQkFBc0I7QURnWXRDOztBQ3RlQTs7RUEwR1kseUJBQXlCO0VBQ3pCLHlCQUF5QjtBRGlZckM7O0FDNWVBOztFQTZHZ0IsY0FBYztFQUNkLHNCQUFzQjtBRG9ZdEM7O0FDbGZBOztFQWtIWSxvQkFBb0I7QURxWWhDOztBQ3ZmQTs7RUFzSFEsNkJBQTZCO0VBQzdCLGNDeEpPO0VEeUpQLGtCQUFrQjtFQUNsQix5QkMxSk87QUZnaUJmOztBQy9mQTs7RUEySFksV0FBVztFQUNYLHlCQzdKRztBRnNpQmY7O0FDcmdCQTs7RUFnSVEsNkJBQTZCO0VBQzdCLGNDNUpNO0VENkpOLGtCQUFrQjtFQUNsQix5QkM5Sk07QUZ3aUJkOztBQ3ZZQTtFQUNHLGNBQWM7QUQwWWpCOztBRHhhRTtFRWlDSSxzQkFBc0I7QUQyWTVCOztBQzFZQTtFQUNJLGtCQUFrQjtFQUNsQixXQUFXO0FENllmOztBQy9ZQTtFQUlRLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsV0FBVztFQUNYLGNBQWM7RUFDZCxhQUFhO0VBQ2IsdUJBQXVCO0FEK1kvQjs7QUN4WkE7RUFZUSxjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxZQUFZO0VBQ1osWUFBWTtFQUNaLDJEQUEyRDtFQUMzRCw4QkFBOEI7RUFDOUIsaUNBQWlDO0FEZ1p6Qzs7QUNuYUE7RUFvQm1CLDRCQUE0QjtBRG1aL0M7O0FDdmFBO0VBcUJtQiw4QkFBOEI7QURzWmpEOztBQ2xaQTtFQUNJLHNCQUFzQjtFQUN0QixZQUFZO0VBQ1osaUJBQWlCO0VBQ2pCLGVBQWU7RUFDZixXQUFXO0FEcVpmOztBRWxsQlE7RUR3TFI7SUFRUSxlQUFlO0VEdVpyQjtBQUNGOztBQ3BaQTs7RUFFSSxnQkFBZ0I7QUR1WnBCOztBQ3BaQTtFQUNJLGNBQWM7QUR1WmxCOztBQ25aSTtFQUNJLGNDNU5PO0FGa25CZjs7QUNwWkk7RUFDSSxjQzNOUTtBRmtuQmhCOztBQ25aQTtFQUNJLHlCQzVOZTtFRDZOZixXQUFXO0FEc1pmOztBQ25aQTtFQUVRLGFBQWE7RUFDYixtQkFBbUI7QURxWjNCOztBQ3haQTtFQU9ZLHNCQUFzQjtFQUN0QixpQkFBaUI7QURxWjdCOztBQzdaQTtFQVVnQixpQkFBaUI7QUR1WmpDOztBQ2haSTtFQUNJLG1CQUFtQjtBRG1aM0I7O0FDalpJO0VBQ0ksZ0JBQWdCO0FEb1p4Qjs7QUNsWks7RUFHVyxvQ0FBb0M7RUFDcEMsOEJBQTZCO0FEbVo3Qzs7QUN2Wks7RUFPVyw4QkFBc0M7RUFDdEMsb0JBQW9CO0FEb1pwQzs7QUM1Wks7RUFXVyxXQUFXO0FEcVozQjs7QUMvWUE7RUFDSSxvQkFBb0I7RUFDcEIsc0JBQXNCO0FEa1oxQjs7QUNwWkE7RUFJUSxjQzdRUTtFRDhRUixtQkFBbUI7RUFDbkIsZ0JBQWdCO0FEb1p4Qjs7QUMxWkE7RUFTUSxvQkFBb0I7RUFDcEIsZ0JBQWdCO0VBQ2hCLFNBQVM7RUFDVCxrQkFBa0I7QURxWjFCOztBQ2phQTtFQWNZLHdDQUErQjtBRHVaM0M7O0FDcmFBO0VBaUJZLGNBQStCO0FEd1ozQzs7QUNuWkE7RUFDSSxlQUFlO0VBQ2YsaUJBQWlCO0VBQ2pCLGtCQUFrQjtFQUNsQixrQkFBa0I7QURzWnRCOztBQ3JaSTtFQUNJLHlCQUF5QjtFQUN6QixtQ0FBd0I7QUR3WmhDOztBRzlzQkE7RUFDSSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxpQkFBaUI7RUFDakIseUJBQXlCO0VBQ3pCLG1CREdXO0VDRlgseUJERVc7RUNEWCxrQkFBa0I7QUhpdEJ0Qjs7QUd6dEJBO0VBVVEsbUJERE87RUNFUCxxQkRGTztBRnF0QmY7O0FHOXRCQTtFQWNRLFdBQVc7RUFDWCxtQkRBTTtFQ0NOLHFCRERNO0VDRU4sa0JBQWtCO0FIb3RCMUI7O0FHcnVCQTtFQW9CUSxtQkRIVztFQ0lYLHFCREpXO0VDS1gsa0JBQWtCO0FIcXRCMUI7O0FHM3VCQTtFQXlCUSxtQkRaUTtFQ2FSLHFCRGJRO0FGbXVCaEI7O0FHaHZCQTtFQTZCUSxXQUFXO0VBQ1gsbUJBQW1CO0VBQ25CLHFCQUFxQjtBSHV0QjdCOztBR3R2QkE7RUFrQ1EsV0FBVztFQUNYLG1CQUFtQjtFQUNuQixxQkFBcUI7QUh3dEI3Qjs7QUc1dkJBO0VBdUNRLHFCQUFxQjtFQUNyQixtQkFBbUI7RUFDbkIsbUJBQW1CO0FIeXRCM0I7O0FHbHdCQTtFQTRDUSxxQkFBcUI7RUFDckIsbUJBQW1CO0VBQ25CLG1CQUFtQjtBSDB0QjNCOztBR3h3QkE7RUFpRFEsY0R2Q0s7QUZrd0JiOztBRzV3QkE7RUFvRFEsWUFBWTtFQUNaLGVBQWU7QUg0dEJ2Qjs7QUdqeEJBO0VBeURZLGNEaERHO0VDaURILDZCQUE2QjtFQUM3QixxQkRsREc7RUNtREgsVUFBVTtBSDR0QnRCOztBR3h0QkE7RUFDSSxlQUFlO0FIMnRCbkI7O0FHeHRCQTtFQUNJLHFCQUFxQjtFQUNyQixtQkFBbUI7RUFDbkIsV0FBVztFQUNYLHNCQUFzQjtBSDJ0QjFCOztBRy90QkE7RUFNUSxXQUFXO0FINnRCbkI7O0FHenRCQTtFQUNJLFdBQVc7RUFDWCwwQkFBMEI7QUg0dEI5Qjs7QUc5dEJBO0VBSVEsV0FBVztBSDh0Qm5COztBRzF0QkE7RUFDSSxtQkFBbUI7RUFDbkIsWUFBWTtFQUNaLG9CQUFvQjtFQUNwQixxQkFBcUI7QUg2dEJ6Qjs7QUcxdEJBO0VBQ0kscUJBQXFCO0VBQ3JCLHNCQUFzQjtFQUN0QixZQUFZO0VBQ1osY0FBYztFQUNkLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsK0JBQStCO0VBQy9CLGVBQWU7QUg2dEJuQjs7QUdydUJBO0VBU1Usc0JBQXNCO0FIZ3VCaEM7O0FHL3RCSTtFQUNJLG1CRHpGTTtBRjJ6QmQ7O0FHbnVCSztFQUdPLG1CQUE4QjtBSG91QjFDOztBR2p1Qkk7RUFDSSxtQkRyR087QUZ5MEJmOztBR3J1Qks7RUFHTyxtQkFBK0I7QUhzdUIzQzs7QUdudUJJO0VBQ0ksbUJEMUdLO0FGZzFCYjs7QUd2dUJLO0VBR08sbUJBQTZCO0FId3VCekM7O0FHcnVCSTtFQUNJLGdCQUFnQjtBSHd1QnhCOztBR3R1Qkk7RUFDSSxVQUFVO0FIeXVCbEI7O0FHdnVCSTtFQUFnQixVQUFVO0FIMnVCOUI7O0FHMXVCSTtFQUNJLGFBQWE7RUFDYixnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLHNCQUFzQjtBSDZ1QjlCOztBRTMxQlE7RUMwR0o7SUFLZ0MscUJBQXFCO0VIaXZCdkQ7QUFDRjs7QUc5dUJBO0VBQ0ksY0RoSVM7QUZpM0JiOztBRzd1QkE7RUFDSSxzQkFBc0I7RUFDdEIscUJBQXFCO0VBQ3JCLG9CQUFvQjtFQUNwQixXQUFXO0VBQ1gsaUJBQWlCO0VBQ2pCLCtCQUErQjtFQUMvQixpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLG9DQUFvQztFQUNwQyxtQkFBbUI7RUFDbkIsOEJBQThCO0VBQzlCLDRDQUFrQztFQUNsQyxlQUFlO0VBQ2Ysd0JBQXdCO0FIZ3ZCNUI7O0FHOXZCQTtFQWdCUSx5QkFBeUI7RUFDekIsZ0JBQWdCO0VBQ2hCLDZDQUFtQztBSGt2QjNDOztBR2h2Qkk7RUFBWSxpQkFBaUI7QUhvdkJqQzs7QUdudkJJO0VBQ0ksK0JBQStCO0VBQy9CLGlDQUFpQztBSHN2QnpDOztBR3h2Qks7RUFHYSwwQkFBMEI7QUh5dkI1Qzs7QUd2dkJJO0VBQ0ksK0JBQStCO0VBQy9CLGlDQUFpQztBSDB2QnpDOztBRzV2Qks7RUFHYSwwQkFBMEI7QUg2dkI1Qzs7QUczdkJJO0VBQ0ksNkJBQTZCO0VBQzdCLCtCQUErQjtBSDh2QnZDOztBR2h3Qks7RUFHYSx3QkFBd0I7QUhpd0IxQzs7QUcvdkJJO0VBQ0ksNkJBQTZCO0VBQzdCLCtCQUErQjtBSGt3QnZDOztBR3B3Qks7RUFHYSx3QkFBd0I7QUhxd0IxQzs7QUdqd0JBO0VBQ0ksc0JBQXNCO0VBQ3RCLHFCQUFxQjtFQUNyQixXQUFXO0VBQ1gsY0FBYztFQUNkLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsbUJEdkxXO0VDd0xYLHlCRHhMVztFQ3lMWCxrQkFBa0I7QUhvd0J0Qjs7QUc3d0JBO0VBV1EsY0QzTE87RUM0TFAsZ0JBQWdCO0FIc3dCeEI7O0FJMzhCQTtFQUNJLGtCQUFrQjtFQUNsQixrQkFBa0I7RUFDbEIscUJBQXFCO0VBQ3JCLGNGWVk7RUVYWixnQkFBZ0I7RUFDaEIsaUJBQWlCO0VBQ2pCLGdCQUFnQjtFQUNoQix5QkFBeUI7QUo4OEI3Qjs7QUl0OUJBO0VBVVEsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixTQUFTO0VBQUUsT0FBTztFQUNsQixXQUFXO0VBQ1gsV0FBVztFQUNYLG1CRk5PO0FGdTlCZjs7QUloK0JBO0VBa0JRLGtCQUFrQjtBSms5QjFCOztBSXArQkE7RUFvQlksU0FBUztFQUNULDJCQUEyQjtBSm85QnZDOztBRW45QlE7RUV0QlI7SUF5QlEsaUJBQWlCO0VKcTlCdkI7QUFDRjs7QUlsOUJBO0VBQ0ksV0FBVztFQUNYLGlCQUFpQjtFQUNqQix5QkFBeUI7QUpxOUI3Qjs7QUtyL0JBO0VBQ0ksbUJBQW1CO0FMdy9CdkI7O0FLei9CQTtFQUdRLHFCQUFxQjtFQUNyQixrQkFBa0I7QUwwL0IxQjs7QUt0L0JBO0VBQ0ksc0JBQXNCO0VBQ3RCLGNBQWM7RUFDZCxXQUFXO0VBQ1gsc0JBQXNCO0VBQ3RCLHlCSExhO0VHTWIsa0JBQWtCO0VBQ2xCLHNFQUFzRTtFQUN0RSxhQUFhO0FMeS9CakI7O0FLamdDQTtFQVVRLGNBQWM7RUFDZCxzQkFBc0I7RUFDdEIscUJBQXFCO0VBQ3JCLFVBQVU7RUFDVixnREFBMkM7QUwyL0JuRDs7QUt2L0JBO0VBQ0ksZ0JBQWdCO0VBQ2hCLGtCQUFrQjtBTDAvQnRCOztBSzUvQkE7RUFJUSxtQkFBbUI7QUw0L0IzQjs7QUtoZ0NBO0VBT1EsY0FBYztFQUNkLGlCQUFpQjtFQUNqQixnQkFBZ0I7QUw2L0J4Qjs7QUt0Z0NBO0VBWVEsZ0JBQWdCO0FMOC9CeEI7O0FLMWdDQTtFQWVnQixXQUFXO0VBQ1gsZ0JBQWdCO0FMKy9CaEM7O0FLL2dDQTtFQXFCUSxrQkFBa0I7RUFDbEIsZUFBZTtBTDgvQnZCOztBS3BoQ0E7RUF5QlEsY0h6Q0s7RUcwQ0wsZ0JBQWdCO0FMKy9CeEI7O0FLemhDQTtFQTZCUSxZQUFZO0FMZ2dDcEI7O0FLN2hDQTtFQThCaUIsYUFBYTtBTG1nQzlCOztBS2ppQ0E7RUFrQ1ksYUFBYTtFQUNiLG1CQUFtQjtBTG1nQy9COztBS3RpQ0E7RUFzQ1ksZ0JBQWdCO0VBQ2hCLGdCQUFnQjtFQUNoQixtQkFBbUI7QUxvZ0MvQjs7QUsvL0JBO0VBQ0ksY0FBYztBTGtnQ2xCOztBS2hnQ0E7RUFDSSxlQUFlO0VBQ2YsZ0JBQWdCO0FMbWdDcEI7O0FLaGdDQTtFQUFnQixpQkFBaUI7QUxvZ0NqQzs7QUtsZ0NBOztFQUNzQixjQUFjO0FMc2dDcEM7O0FLcGdDQTtFQUNJLHFCQUFxQjtFQUNyQixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIscUJBQXFCO0VBQ3JCLHNCQUFzQjtFQUN0QixlQUFlO0VBQ2YseUJBQXlCO0VBQ3pCLHNCQUFzQjtFQUN0QixpQkFBaUI7RUFDakIsNkJBQTZCO0VBQzdCLDZCQUE2QjtFQUM3Qix1QkFBdUI7RUFDdkIsZUFBZTtFQUNmLHFCQUFxQjtFQUNyQiw4SEFBOEg7QUx1Z0NsSTs7QUtwZ0NBO0VBQ0ksV0FBVztFQUNYLHlCSGpHVztFR2tHWCxxQkhsR1c7QUZ5bUNmOztBS3BnQ0E7RUFDSSxXQUFXO0VBQ1gseUJIakdVO0VHa0dWLHFCSGxHVTtBRnltQ2Q7O0FLcGdDQTtFQUNJLGFBQWE7RUFDYixtQkFBbUI7QUx1Z0N2Qjs7QUt6Z0NBO0VBR1UsY0FBYztBTDBnQ3hCOztBS3ZnQ0E7RUFDSSxjQUFjO0VBQ2QsaUJBQWlCO0FMMGdDckI7O0FLdmdDQTtFQUNJLHNCQUFzQjtFQUN0QixxQkFBcUI7RUFDckIsc0JBQXNCO0VBQ3RCLGlCQUFpQjtFQUNqQix5QkFBeUI7RUFBRTtFQUMzQiw2QkFBNkI7RUFBRTtFQUMvQixrQkFBa0I7RUFDbEIsV0FBVztFQUNYLFlBQVk7RUFDWixrQ0FBa0M7QUw0Z0N0Qzs7QUt6Z0NBOztFQUNrQixtQkFBbUI7QUw2Z0NyQzs7QUszZ0NBO0VBQ0k7SUFBSyx1QkFBdUI7RUwrZ0M5QjtFSzlnQ0U7SUFBTyx5QkFBeUI7RUxpaENsQztBQUNGOztBSy9nQ0E7RUFDSSxhQUFhO0VBQ2IsZUFBZTtFQUNmLE1BQU07RUFBRSxRQUFRO0VBQUUsU0FBUztFQUFFLE9BQU87RUFDcEMsZ0JBQWdCO0VBQ2hCLFdBQVc7QUxxaENmOztBSzFoQ0E7RUFPUSxhQUFhO0VBQ2Isa0JBQWtCO0FMdWhDMUI7O0FLbmhDQTtFQUNJLGFBQWE7RUFDYixlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLFFBQVE7RUFDUix1QkFBdUI7QUxzaEMzQjs7QUtuaENBO0VBQ0ksYUFBYTtFQUNiLGVBQWU7QUxzaENuQjs7QUt4aENBO0VBSVEsT0FBTztBTHdoQ2Y7O0FLNWhDQTtFQU9RLE9BQU87QUx5aENmOztBRWxyQ1E7RUdrSlI7SUFVTyxzQkFBc0I7RUwyaEMzQjtBQUNGOztBRDErQkU7RU03Q0UsY0FBYztFQUNkLGtCQUFrQjtFQUNsQixxQkh4S2U7RUd5S2Ysd0NIektlO0FGb3NDbkI7O0FLL2hDQTtFQU1RLG1CQUFtQjtBTDZoQzNCOztBS25pQ0E7RUFTUSxvQkFBb0I7RUFDcEIsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtFQUNoQixjSGpMVztFR2tMWCxzQkFBc0I7RUFDdEIsa0JBQWtCO0FMOGhDMUI7O0FNbHVDQTtFQUNJLHlCQUF5QjtBTnF1QzdCOztBTW51Q0E7RUFDSSxjQUFjO0VBQ2QsV0FBVztFQUNYLGdCQUFnQjtFQUNoQixpQ0FBaUM7QU5zdUNyQzs7QU0xdUNBO0VBS2EsZ0JBQWdCO0FOeXVDN0I7O0FFM3RDUTtFSW5CUjtJQU1nQyxlQUFlO0VONnVDN0M7QUFDRjs7QU01dUNBO0VBQ0ksV0FBVztFQUNYLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEIsZ0JBQWdCO0FOK3VDcEI7O0FNbnZDQTs7RUFPUSxnQkFBZ0I7RUFDaEIsc0JBQXNCO0VBQ3RCLDZCQUE2QjtBTml2Q3JDOztBTTF2Q0E7RUFZUSxnQ0FBZ0M7RUFDaEMsY0puQk07QUZxd0NkOztBTS92Q0E7RUFpQlksa0JBQWtCO0VBQ2xCLG1CQUFtQjtBTmt2Qy9COztBTXB3Q0E7RUFzQlEsV0FBVztFQUNYLGdCQUFnQjtBTmt2Q3hCOztBTXp3Q0E7RUF3QmtCLG1CSmxCQztBRnV3Q25COztBTTd3Q0E7RUF5QmtCLG1CSi9CSjtBRnV4Q2Q7O0FNcHZDQTtFQUNJLHNCQUFzQjtFQUN0QixzQkFBc0I7RUFDdEIsdUJBQXVCO0VBQ3ZCLG9FQUFzRTtFQUN0RSw0QkFBNEI7RUFDNUIsdUJBQXVCO0VBQ3ZCLDJCQUEyQjtFQUMzQiwyQkFBMkI7QU51dkMvQjs7QU1wdkNBO0VBQ0kseUJBQXlCO0FOdXZDN0I7O0FPM3lDQTtFQUFRLCtCQUErQjtBUCt5Q3ZDOztBTzl5Q0E7RUFBbUIsVUFBVTtBUGt6QzdCOztBT2h6Q0E7RUFDSSxlQUFlO0VBQ2YsTUFBTTtFQUFFLE9BQU87RUFDZixXQUFXO0VBQ1gsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsVUFBVTtFQUNWLGFBQWE7QVBvekNqQjs7QU81ekNBO0VBU2EsK0JBQTJCO0FQdXpDeEM7O0FPcHpDQTtFQUNJLGtCQUFrQjtFQUNsQixhQUFhO0VBQ2IsV0FBVztFQUNYLG9CQUFvQjtBUHV6Q3hCOztBT3R6Q0k7RUFBZ0Isa0NBQWtDO0FQMHpDdEQ7O0FPenpDSTtFQUFnQixlQUFlO0FQNnpDbkM7O0FFdHpDUTtFS2JSO0lBUVEsZ0JBQWdCO0lBQ2hCLG9CQUFvQjtFUGcwQzFCO0FBQ0Y7O0FPN3pDQTtFQUNJLGtCQUFrQjtFQUNsQixhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLFdBQVc7RUFDWCxvQkFBb0I7RUFDcEIsc0JBQXNCO0VBQ3RCLDRCQUE0QjtFQUM1QixvQ0FBZ0M7RUFDaEMsb0JBQW9CO0VBQ3BCLFVBQVU7QVBnMENkOztBTzd6Q0E7RUFDSSxhQUFhO0VBQ2IsY0FBYztFQUNkLG1CQUFtQjtFQUNuQiw4QkFBOEI7RUFDOUIsYUFBYTtFQUNiLGdDQUFnQztFQUNoQyx5Q0FBeUM7RUFDekMsMENBQTBDO0FQZzBDOUM7O0FPeDBDQTtFQVdRLHVCQUF1QjtFQUN2QixVQUFVO0VBQ1YsV0FBVztFQUNYLFdBQVc7RUFDWCwyV0FBMlc7RUFDM1csU0FBUztFQUNULHFCQUFxQjtFQUNyQixXQUFXO0VBQ1gsZUFBZTtFQUNmLG9DQUFvQztFQUNwQywwQkFBMEI7RUFDMUIsZUFBZTtBUGkwQ3ZCOztBTzV6Q0E7RUFDSSxTQUFTO0VBQ1Qsa0JBQWtCO0VBQ2xCLGdCQUFnQjtBUCt6Q3BCOztBTzV6Q0E7RUFDSSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLGFBQWE7QVArekNqQjs7QU81ekNBO0VBQ0ksYUFBYTtFQUNiLGVBQWU7RUFDZixjQUFjO0VBQ2QsbUJBQW1CO0VBQ25CLHlCQUF5QjtFQUN6QixlQUFlO0VBQ2YsNkJBQTZCO0VBQzdCLDZDQUE2QztFQUM3Qyw0Q0FBNEM7QVArekNoRDs7QU81ekNBO0VBQ0ksVUFBVTtFQUNWLFNBQVM7QVArekNiOztBUTc1Q0E7RUFDSSxrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLGlCQUFpQjtFQUNqQixjQUFjO0VBQ2QsZ0JBQWdCO0VBQ2hCLG1CQUFtQjtFQUNuQixrQkFBa0I7QVJnNkN0Qjs7QVEvNUNJO0VBQ0ksY05RVztFTVBYLGdCQUFnQjtFQUNoQixpQkFBaUI7QVJrNkN6Qjs7QVFoNkNJO0VBQ0ksV0FBVztFQUNYLGdCQUFnQjtFQUNoQixnQkFBZ0I7QVJtNkN4Qjs7QVFqNkNJO0VBQ0ksa0JBQWtCO0VBQ2xCLFFBQVE7RUFBRSxVQUFVO0VBQ3BCLFlBQVk7QVJxNkNwQjs7QVF4NkNLO0VBSVMsV0FBVztBUnc2Q3pCOztBUXQ2Q0k7RUFDSSxXQUFXO0VBQ1gsZUFBZTtFQUNmLGlCQUFpQjtBUnk2Q3pCOztBUXA2Q0E7RUFDSSxhQUFhO0VBQ2IsZUFBZTtBUnU2Q25COztBUXo2Q0E7RUFHVyxXQUFXO0FSMDZDdEI7O0FTNzhDQTtFQUFRLGNBQWM7QVRpOUN0Qjs7QVNoOUNBO0VBQVksZ0JBQWdCO0FUbzlDNUI7O0FTbjlDQTtFQUFjLGNBQWM7QVR1OUM1Qjs7QVN0OUNBO0VBQVMsZ0JBQWdCO0FUMDlDekI7O0FTejlDQTtFQUFTLGdCQUFnQjtBVDY5Q3pCOztBUzU5Q0E7RUFBUyxnQkFBZ0I7QVRnK0N6Qjs7QVMvOUNBO0VBQVMsbUJBQW1CO0FUbStDNUI7O0FTbCtDQTtFQUFTLG1CQUFtQjtBVHMrQzVCOztBU3IrQ0E7RUFBUyxtQkFBbUI7QVR5K0M1Qjs7QVN4K0NBO0VBQVMsbUJBQW1CO0FUNCtDNUI7O0FTMytDQTtFQUFTLGlCQUFpQjtBVCsrQzFCOztBUzkrQ0E7RUFBUyxpQkFBaUI7QVRrL0MxQjs7QVNqL0NBO0VBQVMsa0JBQWtCO0FUcS9DM0I7O0FTcC9DQTtFQUFTLGtCQUFrQjtBVHcvQzNCOztBU3YvQ0E7RUFBUyxlQUFlO0FUMi9DeEI7O0FTMS9DQTtFQUFTLGVBQWU7QVQ4L0N4Qjs7QVM3L0NBO0VBQVMsZUFBZTtBVGlnRHhCOztBU2hnREE7RUFBTyxhQUFhO0FUb2dEcEI7O0FTbmdEQTtFQUFTLGNBQWM7QVR1Z0R2Qjs7QVN0Z0RBO0VBQ0k7SUFBSyxPQUFPO0VUMGdEZDtFU3pnREU7SUFBTyxXQUFXO0VUNGdEcEI7QUFDRjs7QVMxZ0RBO0VBQVMsbUJBQW1CO0FUOGdENUI7O0FTN2dEQTtFQUFNLGdCQUFnQjtBVGloRHRCOztBU2hoREE7O0VBRUksZUFBZTtFQUNmLFlBQVk7RUFBRSxPQUFPO0VBQ3JCLGFBQWE7RUFDYixZQUFZO0VBQ1osV0FBVztFQUNYLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLG1CQUFtQjtFQUNuQiwwQkFBMEI7RUFDMUIsdUJBQXVCO0VBQ3ZCLDZCQUE2QjtBVG9oRGpDOztBU2poREE7RUFDSSxtQkFBbUI7QVRvaER2Qjs7QVNqaERBO0VBQTJCLHlCQUF5QjtBVHFoRHBEOztBU3BoREE7RUFBZSxrQkFBa0I7QVR3aERqQzs7QVN2aERBO0VBQWMsaUJBQWlCO0FUMmhEL0I7O0FTMWhEQTtFQUFjLGNBQWM7QVQ4aEQ1Qjs7QVM3aERBO0VBQWEsaUJBQWlCO0FUaWlEOUI7O0FTaGlEQTtFQUNJLGVBQWU7RUFDZixZQUFZO0FUbWlEaEI7O0FTaGlEQTtFQUFVLGFBQWE7QVRvaUR2Qjs7QVNuaURBO0VBQWUsWUFBWTtBVHVpRDNCOztBU3RpREE7RUFBc0IsbUJBQW1CO0FUMGlEekM7O0FTemlEQTtFQUFrQix1QkFBdUI7QVQ2aUR6Qzs7QVM1aURBO0VBQXlCLDhCQUE4QjtBVGdqRHZEOztBUzlpREE7RUFBZ0IsZ0JBQWdCO0FUa2pEaEM7O0FTampEQTtFQUFlLGdCQUFnQjtBVHFqRC9COztBU25qREE7RUFBYyxxQkFBcUI7QVR1akRuQzs7QVNyakRBO0VBQWtCLDBCQUEwQjtBVHlqRDVDOztBU3ZqREE7RUFBVyxrQkFBa0I7QVQyakQ3Qjs7QVN6akRBO0VBQWMsa0JBQWtCO0FUNmpEaEM7O0FTM2pEQTtFQUFTLFdBQVc7QVQrakRwQjs7QVM3akRBO0VBQVEsY0FBYztBVGlrRHRCOztBU2hrREE7RUFBTyxjUGxFTTtBRnNvRGI7O0FVaHBEQTtFQUNJLHNCQUFzQjtBVm1wRDFCOztBVXBwREE7RUFHUSxjQUFjO0FWcXBEdEI7O0FVeHBEQTtFQUlhLGlCQUFpQjtFQUFFLGdCQUFnQjtBVnlwRGhEOztBRXZvRFE7RVF0QlI7SUFRWSxrQkFBa0I7RVYwcEQ1QjtBQUNGOztBRTdvRFE7RVF0QlI7SUFhWSxjQUFjO0VWMnBEeEI7RVV4cURGO0lBZWdCLGdCQUFnQjtJQUNoQixXQUFXO0lBQ1gsWUFBWTtFVjRwRDFCO0FBQ0Y7O0FVdHBEQTtFQUNJLGNBQWM7RUFDZCxvQkFBb0I7RUFDcEIsc0JBQXNCO0VBQ3RCLGtCQUFrQjtFQUNsQixTQUFTO0VBQUUsU0FBUztFQUNwQixnQ0FBZ0M7QVYwcERwQzs7QVdyckRBO0VBRVEsYUFBYTtFQUNiLG9CQUFvQjtFQUNwQiw4QkFBOEI7QVh1ckR0Qzs7QVczckRBO0VBTVksZ0JBQWdCO0FYeXJENUI7O0FXL3JEQTtFQVNzQixhQUFhO0FYMHJEbkM7O0FXbnNEQTtFQVdRLGlCQUFpQjtFQUNqQixrQkFBa0I7QVg0ckQxQjs7QVd4ckRBO0VBQ0ksU0FBUztFQUNULGVBQWU7RUFDZixhQUFhO0VBQ2IscUJBQXFCO0VBQ3JCLGlCQUFpQjtBWDJyRHJCOztBV3hyREE7RUFDSSxjQUFjO0VBQ2QsYUFBYTtFQUNiLGVBQWU7RUFDZixtQkFBbUI7RUFDbkIsdUJBQXVCO0VBQ3ZCLGtCQUFrQjtFQUNsQixrQkFBa0I7QVgyckR0Qjs7QVdsc0RBO0VBU1EsY0FBYztFQUNkLFlBQVk7QVg2ckRwQjs7QVczckRJO0VBQ0ksa0JBQWtCO0FYOHJEMUI7O0FXL3JESztFQUdPLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLE9BQU87RUFDUCxZQUFZO0VBQ1osV0FBVztBWGdzRHZCOztBVzdyREs7RUFFTyxpQkFBaUI7QVgrckQ3Qjs7QVcxckRBO0VBQ0ksbUJBQW1CO0VBQ25CLFlBQVk7QVg2ckRoQjs7QVcvckRBO0VBSVEscUJBQXFCO0VBQ3JCLHNCQUFzQjtBWCtyRDlCOztBVzVyREE7RUFDSSxXQUFXO0FYK3JEZjs7QVdoc0RBO0VBRWMseUJBQXlCO0FYa3NEdkM7O0FXaHNEQTtFQUNJLG1CVDdEVztFUzhEWCxlQUFlO0FYbXNEbkI7O0FXcnNEQTtFQUdjLG1CQUE4QjtBWHNzRDVDOztBV3BzREE7RUFDSSxtQlQ1RFU7RVM2RFYsZUFBZTtBWHVzRG5COztBV3pzREE7RUFHYyxtQkFBNkI7QVgwc0QzQzs7QVd4c0RBO0VBQ0ksbUJUdEVTO0VTdUVULGVBQWU7QVgyc0RuQjs7QVc3c0RBO0VBR2MsbUJBQTRCO0FYOHNEMUM7O0FXM3NEQTtFQUNJLGNUcEVpQjtFU3FFakIsaUJBQWlCO0FYOHNEckI7O0FXaHREQTtFQUlRLGtCQUFrQjtBWGd0RDFCOztBV3B0REE7RUFNWSxXQUFXO0VBQ1gsY0FBYztFQUNkLGtCQUFrQjtFQUNsQixtQlQ1RVM7RVM2RVQsWUFBWTtFQUNaLFNBQVM7RUFDVCxRQUFRO0VBQ1IsV0FBVztFQUNYLDBCQUEwQjtBWGt0RHRDOztBV2h1REE7RUFrQmdCLE9BQU87RUFDUCxXQUFXO0FYa3REM0I7O0FXcnVEQTtFQXdCUSxjVDNGYTtFUzRGYixnQkFBZ0I7QVhpdER4Qjs7QVcxdURBO0VBMkJZLFlBQVk7RUFDWixXQUFXO0VBQ1gsY0FBYztFQUNkLGtCQUFrQjtBWG10RDlCOztBRWh6RFE7RVNIUjtJQXVHUSxhQUFhO0VYaXREbkI7RVd4MERGO0lBMEhRLHFCQUFxQjtJQUNyQixZQUFZO0lBQ1osa0JBQWtCO0lBQ2xCLFdBQVc7SUFDWCxTQUFTO0lBQ1QsWUFBWTtFWGl0RGxCO0VXL3NERTtJQUNJLGNBQWM7SUFDZCxrQkFBa0I7SUFDbEIsWUFBWTtJQUNaLHlCQUF5QjtJQUN6QixpQkFBaUI7RVhpdER2QjtFV3R0REU7SUFPUSxjQUFjO0lBQ2QsV0FBVztJQUNYLFlBQVk7SUFDWixrQkFBa0I7SUFDbEIsU0FBUztJQUNULFVBQVU7SUFDVixlQUFlO0lBQ2YsVUFBVTtJQUNWLFlBQVk7SUFDWiwyQkFBMkI7RVhrdERyQztFV2x1REU7SUFrQlkscUJBQXFCO0VYbXREbkM7RVdydURFO0lBc0JRLGNBQWM7SUFDZCxXQUFXO0lBQ1gsV0FBVztJQUNYLGtCQUFrQjtJQUNsQixrQkFBa0I7SUFDbEIsbUJUOUlPO0lTK0lQLGtCQUFrQjtJQUNsQix5QkFBeUI7SUFDekIsaUlBRXNCO0VYZ3REaEM7RVdodkRFO0lBbUNRLHVCQUF1QjtFWGd0RGpDO0VXbnZERTtJQXNDUSx5QkFBeUI7RVhndERuQztFV3R2REU7SUF5Q1EsVUFBVTtJQUNWLDZDQUE2QztJQUM3QyxtQlQ5Sk87SVMrSlAsWUFBWTtFWGd0RHRCO0VXNXZERTtJQThDWSxVQUFVO0lBQ1YsdUNBQXVDO0VYaXREckQ7RVdod0RFO0lBa0RZLDhDQUE4QztFWGl0RDVEO0VXbndERTtJQXNEUSxlQUFlO0lBQ2YsUUFBUTtJQUNSLCtCVDFMSTtFRjA0RGQ7RVc3c0RFO0lBQ0ksc0JBQXNCO0lBQ3RCLGdCQUFnQjtJQUNoQixlQUFlO0lBQ2YsVUFBVTtJQUFFLGFBQWE7SUFBRSxTQUFTO0lBQ3BDLFlBQVk7SUFDWixnQkFBZ0I7SUFDaEIsV0FBVztJQUNYLGFBQWE7SUFDYixpQkFBaUI7SUFDakIsZ0JBQWdCO0lBQ2hCLHFCQUFxQjtJQUNyQixtQ0FBbUM7SUFHbkMsdURBQXNEO0lBQ3RELFdBQVc7RVgrc0RqQjtFVy90REU7SUFrQlEsZUFBZTtJQUNmLFdBQVc7SUFDWCxTQUFTO0VYZ3REbkI7RVdwdURFO0lBc0JZLDJCQUEyQjtFWGl0RHpDO0VXdnVERTtJQXdCZ0IsVUFBVTtJQUNWLFNBQVM7SUFDVCxnQkFBZ0I7RVhrdERsQztFVzV1REU7SUE0Qm9CLGNUek1IO0VGNDVEbkI7RVcvdURFO0lBK0J1QixnQkFBZ0I7RVhtdER6QztFV2x2REU7SUFrQ1ksY0FBYztJQUNkLDBCQUEwQjtFWG10RHhDO0VXdHZERTtJQXFDZ0IsWUFBWTtFWG90RDlCO0VXenZERTtJQTBDUSxxQkFBcUI7SUFDckIsZ0JBQWdCO0lBQ2hCLGlCQUFpQjtFWGt0RDNCO0VXOXZERTtJQTZDdUIscUJBQXFCO0VYb3REOUM7QUFDRjs7QUUzNkRRO0VTS1I7SUF1TlEsZUFBZTtFWG90RHJCO0VXLzVERTtJQTZNUSxjQUFjO0VYcXREeEI7QUFDRjs7QUVwN0RRO0VTS1I7SUErTlEsZ0JBQWdCO0VYcXREdEI7RVd0dERFO0lBRTZCLGdCQUFnQjtFWHV0RC9DO0FBQ0Y7O0FFNzdEUTtFU0tSO0lBcU9RLGdCQUFnQjtFWHd0RHRCO0FBQ0Y7O0FZejlEQTtFQUNJLGNBQWM7RUFDZCxXQUFXO0VBQ1gseUJWSVc7QUZ3OURmOztBWS85REE7RUFJWSxtQkFBbUI7QVorOUQvQjs7QVluK0RBO0VBS2UsbUJBQW1CO0FaaytEbEM7O0FZditEQTtFQU1hLGlCQUFpQjtBWnErRDlCOztBWTMrREE7RUFRUSxhQUFhO0VBQ2IsOEJBQThCO0FadStEdEM7O0FZaC9EQTtFQVdZLFVBQVU7QVp5K0R0Qjs7QVlwL0RBO0VBYVEsT0FBTztFQUNQLG1CQUFtQjtFQUNuQixhQUFhO0FaMitEckI7O0FZMS9EQTtFQWtCUSxhQUFhO0VBQ2IsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQiw4Q0FBK0I7QVo0K0R2Qzs7QVlqZ0VBO0VBdUJZLHlCQUF5QjtBWjgrRHJDOztBWXJnRUE7RUEyQlEsVUFBVTtFQUNWLFNBQVM7RUFDVCxZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsZUFBZTtFQUNmLHFCQUFxQjtBWjgrRDdCOztBWWhoRUE7RUFvQ1MsY0FBYztBWmcvRHZCOztBWXBoRUE7RUFzQ1EsV0FBVztFQUNYLHFCQUFxQjtFQUNyQixZQUFZO0Faay9EcEI7O0FFcGdFUTtFVXRCUjtJQTJDZSxjQUFjO0Vaby9EM0I7RVkvaEVGO0lBNkNZLFdBQVc7SUFDWCxrQkFBa0I7RVpxL0Q1QjtFWW5pRUY7SUFpRFksY0FBYztJQUNkLGdCQUFnQjtFWnEvRDFCO0FBQ0Y7O0FFbGhFUTtFVXRCUjtJQXVEWSxZQUFZO0Vacy9EdEI7QUFDRjs7QWE5aUVBO0VBQ0ksY1hPYTtFV05iLG1CQUFtQjtBYmlqRXZCOztBYW5qRUE7RUFJUSxpQkFBaUI7RUFDakIsZUFBZTtFQUNmLFdBQVc7QWJtakVuQjs7QUVuaUVRO0VXdEJSO0lBT21DLGVBQWU7RWJ1akVoRDtBQUNGOztBYS9qRUE7RUFVUSxjWEZTO0VXR1QsaUJBQWlCO0FieWpFekI7O0FhcGtFQTtFQWFhLGFBQWE7QWIyakUxQjs7QWF4a0VBO0VBYytCLGFBQWE7QWI4akU1Qzs7QWE1a0VBO0VBZ0JRLGNYUlM7RVdTVCxrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLG9CQUFvQjtFQUNwQixnQkFBZ0I7QWJna0V4Qjs7QWFwbEVBO0VBd0JZLGFBQWE7RUFDYixtQkFBbUI7QWJna0UvQjs7QWF6bEVBO0VBNkJnQixRQUFRO0FiZ2tFeEI7O0FhN2xFQTtFQThCZ0IsUUFBUTtBYm1rRXhCOztBYWptRUE7RUFpQ1EsZ0JBQWdCO0Fib2tFeEI7O0FFL2tFUTtFV3RCUjtJQXFDWSxhQUFhO0VicWtFdkI7QUFDRjs7QWEzbUVBO0VBd0MwQixjQUFjO0FidWtFeEM7O0FhL21FQTtFQTBDUSxZQUFZO0VBQ1osY1huQ1M7RVdvQ1QsaUJBQWlCO0VBQ2pCLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsNkJBQTZCO0FieWtFckM7O0FheG5FQTtFQWlEc0IsaUJBQWlCO0FiMmtFdkM7O0FhNW5FQTtFQW1EUSxhQUFhO0VBQ2IsZUFBZTtFQUNmLHVCQUF1QjtBYjZrRS9COztBYWxvRUE7RUF3RFEsc0JBQXNCO0VBQ3RCLGFBQWE7RUFDYixzQkFBc0I7QWI4a0U5Qjs7QWF4b0VBO0VBNkRRLHNCQUFzQjtFQUN0QixZQUFZO0VBQ1osY0FBYztFQUNkLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIseUNBQStCO0VBQy9CLG1CQUFtQjtBYitrRTNCOztBYWxwRUE7RUFvRW1CLFVBQVU7QWJrbEU3Qjs7QWF0cEVBO0VBc0VZLGdCQUFnQjtBYm9sRTVCOztBYTFwRUE7RUEyRVEsYUFBYTtFQUNiLDhCQUE4QjtFQUM5QixtQkFBbUI7RUFDbkIsVUFBVTtFQUNWLG1CQUFtQjtBYm1sRTNCOztBRTVvRVE7RVd0QlI7SUFnRm1DLGFBQWE7RWJ1bEU5QztBQUNGOztBYXhxRUE7RUFrRlksVUFBVTtFQUNWLGtCQUFrQjtFQUNsQixjWDVFSztFVzZFTCxrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtBYjBsRTVCOztBYWpyRUE7RUF5RmdCLGdCQUFnQjtBYjRsRWhDOztBYXJyRUE7RUE0RmdCLHNCQUFxQjtFQUNyQix1QkFBdUI7RUFDdkIsV0FBVztFQUNYLFlBQVk7RUFDWix5Qlh4RkM7RVd5RkQsY0FBYztFQUNkLHdCQUF3QjtFQUN4QixrQkFBa0I7RUFDbEIsaUJBQWlCO0VBQ2pCLGdCQUFnQjtFQUNoQixjWDlGQztFVytGRCxrQkFBa0I7RUFDbEIsaUJBQWlCO0VBQ2pCLFVBQVU7RUFDVixrQkFBa0I7QWI2bEVsQzs7QWF2c0VBO0VBNkdnQixXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLFdBQVU7RUFDVixXQUFXO0VBQ1gsbUJYekdDO0VXMEdELFNBQVM7RUFDVCxVQUFVO0FiOGxFMUI7O0FhanRFQTtFQXVIb0IsbUJYL0dIO0VXZ0hHLFdBQVc7QWI4bEUvQjs7QWF0dEVBO0VBNkhvQixnREFBK0M7RUFDL0MseUJYckhMO0VXc0hLLGNYdEhMO0VXdUhLLGdCQUFnQjtBYjZsRXBDOztBYTd0RUE7RUFzSVEsWUFBWTtFQUNaLFVBQVU7QWIybEVsQjs7QWFsdUVBO0VBNklRLGtCQUFrQjtBYnlsRTFCOztBYXR1RUE7RUErSVksa0JBQWtCO0FiMmxFOUI7O0FhMXVFQTtFQWtKZ0IsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsWUFBWTtFQUNaLDJCQUEyQjtFQUMzQixVQUFVO0VBQ1Ysd0JBQXdCO0FiNGxFeEM7O0FhcHZFQTtFQTJKZ0IsVUFBVTtFQUFFLFNBQVM7RUFDckIsK0RBQStEO0FiOGxFL0U7O0FhMXZFQTtFQThKMkIsVUFBVTtBYmdtRXJDOztBYTl2RUE7RUFnS2dCLGFBQWE7RUFBRSxTQUFTO0VBQ3hCLGlFQUFpRTtBYm1tRWpGOztBYXB3RUE7RUFtSzZCLFVBQVU7QWJxbUV2Qzs7QWF4d0VBO0VBc0tZLGlCQUFpQjtFQUNqQixnQkFBZ0I7RUFDaEI7RUFJQTtFQUlBO0VBSUE7QWI2bEVaOztBYWp4RUE7RUEwS2dCLFVBQVU7QWIybUUxQjs7QWFyeEVBO0VBOEtnQixtQkFBbUI7QWIybUVuQzs7QWF6eEVBO0VBa0xnQixtQlhqS0c7QUY0d0VuQjs7QWE3eEVBO0VBc0xnQixtQkFBbUM7QWIybUVuRDs7QWFqeUVBO0VBOExZLG1CQUFtQjtBYnVtRS9COztBYXJ5RUE7RUFpTVksa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsOEJBQThCO0VBQzlCLFlBQVk7RUFDWixrQkFBa0I7QWJ3bUU5Qjs7QWE5eUVBO0VBd01nQixnQkFBZ0I7RUFDaEIsa0JBQWtCO0VBQ2xCLE9BQU87RUFDUCxZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLG1CQUFtQjtBYjBtRW5DOztBYXZ6RUE7RUErTW9CLGVBQWU7QWI0bUVuQzs7QWEzekVBO0VBbU5nQixZQUFZO0VBQ1osV0FBVztBYjRtRTNCOztBYWgwRUE7RUFzTm9CLGVBQWU7QWI4bUVuQzs7QWFwMEVBO0VBME5nQixrQkFBa0I7QWI4bUVsQzs7QWF4MEVBO0VBNk5nQix5QkFBeUI7QWIrbUV6Qzs7QWE1MEVBO0VBK05xQixhQUFhO0FiaW5FbEM7O0FhaDFFQTs7O0VBb09ZLGFBQWE7RUFDYixnQkFBZ0I7RUFDaEIsOEJBQThCO0Fia25FMUM7O0FheDFFQTtFQXlPWSxjQUFjO0FibW5FMUI7O0FhNTFFQTtFQTRPWSxhQUFhO0VBQ2IsdUJBQXVCO0VBQ3ZCLHVCQUF1QjtFQUN2QixlQUFlO0Fib25FM0I7O0FhbjJFQTtFQWlQZ0Isa0NYL09BO0VXa1BBLHVCQUF1QjtFQUN2QixpQkFBaUI7RUFDakIsVUFBVTtFQUNWLGdCQUFnQjtFQUNoQixrQkFBa0I7RUFDbEIsMEJBQTBCO0VBQzFCLG1DQUFtQztFQUNuQyxZQUFZO0Fib25FNUI7O0FFejFFUTtFV3RCUjtJQTZQb0IsaUJBQWlCO0VidW5FbkM7QUFDRjs7QUUvMUVRO0VXdEJSO0lBbVFvQixZQUFZO0lBQ1osMEJBQTBCO0lBQzFCLG1DQUFtQztFYnVuRXJEO0FBQ0Y7O0FFdjJFUTtFV3RCUjtJQXdRb0IsaUJBQWlCO0lBQ2pCLDBCQUEwQjtJQUMxQixtQ0FBbUM7RWIwbkVyRDtBQUNGOztBRS8yRVE7RVd0QlI7SUE2UW9CLGlCQUFpQjtJQUNqQix1QkFBdUI7SUFDdkIsZ0NBQWdDO0ViNm5FbEQ7QUFDRjs7QUV2M0VRO0VXdEJSO0lBa1JvQixZQUFZO0lBQ1osdUJBQXVCO0lBQ3ZCLGdDQUFnQztFYmdvRWxEO0FBQ0Y7O0FhcjVFQTtFQXVSb0IsVUFBVTtFQUNWLFNBQVM7RUFDVCxRQUFRO0VBQ1IsV0FBVztBYmtvRS9COztBYTU1RUE7RUE0UndCLG1CWGpSVDtFV2tSUyxXQUFXO0Fib29FbkM7O0FhajZFQTs7O0VBZ1NxQyxVQUFVO0FidW9FL0M7O0FhdjZFQTtFQW9Tb0Isa0JBQWtCO0VBQ2xCLFFBQVE7RUFBRSxTQUFTO0VBQ25CLGdDQUFnQztFQUNoQyxjWGxTTjtFV21TTSxtQkFBbUI7RUFDbkIsa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCx1QkFBdUI7RUFDdkIsU0FBUztBYndvRTdCOztBYXA3RUE7RUE4U3VCLGNBQWM7QWIwb0VyQzs7QWF4N0VBO0VBK1N3QixlQUFlO0FiNm9FdkM7O0FhNTdFQTs7O0VBa1Q2QixhWHpTZDtBRnk3RWY7O0FhbDhFQTtFQXNUWSxpQkFBaUI7QWJncEU3Qjs7QWF0OEVBO0VBMFRRLGdCQUFnQjtFQUNoQix3QkFBd0I7RUFDeEIsU0FBUztFQUNULGlCQUFpQjtFQUNqQixhQUFhO0FiZ3BFckI7O0FFeDdFUTtFV3RCUjtJQWlVZ0Isa0JBQWtCO0lBQ2xCLGlCQUFpQjtFYmtwRS9CO0FBQ0Y7O0FFLzdFUTtFV3RCUjtJQXVVZ0Isa0JBQWtCO0lBQ2xCLGlCQUFpQjtFYm1wRS9CO0FBQ0Y7O0FhNTlFQTtFQTZVb0IsV0FBVztBYm1wRS9COztBYWgrRUE7RUFtVm9CLFlBQVk7QWJpcEVoQzs7QWFwK0VBO0VBcVZ3QixlQUFlO0VBQ2YsV0FBVztFQUNYLHVCQUF1QjtBYm1wRS9DOztBRXA5RVE7RVd0QlI7SUE4VmdCLGNBQWM7RWJpcEU1QjtFYS8rRUY7SUFnV29CLG1CQUFtQjtJQUNuQixrQkFBa0I7RWJrcEVwQztBQUNGOztBRTk5RVE7RVd0QlI7SUF3V1ksbUJBQW1CO0lBQ25CLGVBQWU7RWJpcEV6QjtFYTEvRUY7SUEwV2dCLFFBQVE7RWJtcEV0QjtFYTcvRUY7SUE0V2dCLGdCQUFnQjtJQUNoQixRQUFRO0lBQ1IsV0FBVztFYm9wRXpCO0FBQ0Y7O0FFNytFUTtFV3RCUjtJQW9YWSxjQUFjO0Vib3BFeEI7RWF4Z0ZGO0lBcVg0QixlQUFlO0Vic3BFekM7QUFDRjs7QUV0L0VRO0VXdEJSO0lBMFhZLGNBQWM7RWJ1cEV4QjtFYWpoRkY7SUEyWGlCLG1CQUFtQjtFYnlwRWxDO0VhcGhGRjtJQTRYOEIsY0FBYztFYjJwRTFDO0FBQ0Y7O0FheGhGQTtFQWlZWSxtQkFBbUI7QWIycEUvQjs7QWE1aEZBO0VBb1lZLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsa0JBQWtCO0FiNHBFOUI7O0FhbGlGQTtFQXVZMEIsZ0JBQWdCO0VBQUUsbUJBQW1CO0FiZ3FFL0Q7O0FhdmlGQTtFQTBZWSxtQkFBbUI7RUFDbkIsY1gxWE87RVcyWFAsaUJBQWlCO0FiaXFFN0I7O0FhN2lGQTtFQTZZa0Isa0JBQWtCO0Fib3FFcEM7O0FhampGQTs7RUFrWmdCLGNBQWM7QWJvcUU5Qjs7QWF0akZBOztFQXdaZ0IsY0FBYztBYm1xRTlCOztBYTNqRkE7RUE0Wlksa0JBQWtCO0VBQ2xCLG9CQUFvQjtFQUNwQixXQUFXO0VBQ1gsaUJBQWlCO0VBQ2pCLGlCQUFpQjtFQUNqQix5QkFBeUI7QWJtcUVyQzs7QWFwa0ZBO0VBbWFnQixXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLE9BQU87RUFBRSxTQUFTO0VBQ2xCLFdBQVc7RUFDWCxXQUFXO0VBQ1gsd0JBQXdCO0Fic3FFeEM7O0FhOWtGQTtFQTRhWSxhQUFhO0VBQ2IsZ0JBQWdCO0VBQ2hCLG1CQUFtQjtBYnNxRS9COztBYXBsRkE7RUFnYmdCLGFBQWE7RUFDYixnQkFBZ0I7RUFDaEIsd0JBQXdCO0Fid3FFeEM7O0FhMWxGQTtFQXFiZ0Isa0JBQWtCO0FieXFFbEM7O0FhOWxGQTtFQXdiZ0IsaUJBQWlCO0FiMHFFakM7O0FhbG1GQTtFQTJiZSxrQkFBa0I7QWIycUVqQzs7QWF0bUZBO0VBNmJZLGVBQWU7RUFDZixtQkFBbUI7QWI2cUUvQjs7QWEzbUZBO0VBbWNZLGFBQWE7QWI0cUV6Qjs7QWEvbUZBO0VBb2NzQixjQUFjO0FiK3FFcEM7O0FhMXFFQTtFQUNJLGNYbGNhO0VXbWNiLGlCQUFpQjtFQUNqQixjQUFjO0FiNnFFbEI7O0FhMXFFQTtFQUNJLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsaUJBQWlCO0FiNnFFckI7O0FhaHJFQTtFQUtRLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsTUFBTTtFQUFFLFFBQVE7RUFBRSxTQUFTO0VBQUUsT0FBTztFQUNwQywrQkFBb0I7RUFDcEIsVUFBVTtBYmtyRWxCOztBYTNyRUE7RUFZUSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLFFBQVE7RUFBRSxTQUFTO0VBQ25CLGdDQUFnQztFQUNoQyxzQkFBc0I7RUFDdEIscUJBQXFCO0VBQ3JCLHNCQUFzQjtFQUN0QixpQkFBaUI7RUFDakIsc0JBQXNCO0VBQUU7RUFDeEIsNkJBQTZCO0VBQUU7RUFDL0Isa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxZQUFZO0VBQ1osb0NBQW9DO0VBQ3BDLFVBQVU7QWJzckVsQjs7QWE5cUVBO0VBQ0kscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osV0FBVztFQUNYLGVBQWU7RUFDZixtQlg5ZVc7RVcrZVgsa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsZUFBZTtBYmlyRW5COztBYTlxRUE7RUFDSSxhQUFhO0VBQ2Isa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsUUFBUTtFQUFFLFFBQVE7RUFDbEIsNENBQTRDO0VBQzVDLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtFQUNsQix5Q0FBK0I7RUFDL0IsVUFBVTtBYmtyRWQ7O0FFdHFGUTtFV3dlUjtJQWNRLE9BQU87SUFBRSxlQUFlO0lBQUUsZUFBZTtJQUN6QyxTQUFTO0lBQUUsVUFBVTtFYndyRTNCO0FBQ0Y7O0FhM29FQTs7RUFFSSxlQUFlO0VBQ2YsTUFBTTtFQUFFLFFBQVE7RUFBRSxTQUFTO0VBQUUsT0FBTztFQUNwQyxhQUFhO0VBQ2IsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQix1QkFBdUI7RUFDdkIsWUFBWTtFQUNaLCtCQUFxQjtFQUNyQixnQkFBZ0I7QWJpcEVwQjs7QWFocEVJOztFQUNJLFlBQVk7RUFDWixvQkFBb0I7RUFDcEIsWUFBWTtFQUNaLGVBQWU7RUFDZixnQkFBZ0I7RUFDaEIseUNBQStCO0VBQy9CLGtCQUFrQjtFQUNsQixZQUFZO0Fib3BFcEI7O0FhbHBFSTs7RUFDSSxXQUFXO0VBQ1gsYUFBYTtFQUNiLHlCQUF5QjtFQUN6QixpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLGlCQUFpQjtFQUNqQixtQlg5a0JPO0VXK2tCUCxnQ0FBZ0M7QWJzcEV4Qzs7QWFycEVROztFQUFXLG1CWC9rQk47QUZ5dUZiOztBYXhwRUk7O0VBQ0ksYUFBYTtFQUNiLGFBQWE7RUFDYixnQkFBZ0I7QWI0cEV4Qjs7QWExcEVJOztFQUNJLGFBQWE7RUFDYixpQkFBaUI7RUFDakIsNkJBQTZCO0FiOHBFckM7O0FhMXBFQTtFQUNJLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsMkJBQTJCO0VBQzNCLGVBQWU7QWI2cEVuQjs7QWE1cEVJO0VBQ0ksa0JBQWtCO0VBQ2xCLFNBQVM7RUFBRSxPQUFPO0VBQ2xCLGlDQUFpQztFQUNqQyxnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLG1CQUFtQjtFQUNuQixhQUFhO0VBQ2Isa0JBQWtCO0VBQ2xCLHlDQUErQjtBYmdxRXZDOztBYTlxRUE7RUFnQnNCLGNBQWM7QWJrcUVwQzs7QWEvcEVBO0VBQ0ksbUJBQWtCO0VBQ2xCLGtCQUFrQjtBYmtxRXRCOztBYWpxRUk7RUFDSSxxQ0FBd0I7QWJvcUVoQzs7QWFqcUVBO0VBQ0ksYUFBYTtFQUNiLG1CQUFtQjtFQUNuQix1QkFBdUI7QWJvcUUzQjs7QWFocUVBO0VBQ0ksV0FBVztBYm1xRWY7O0FhcHFFQTtFQUdRLGtCQUFrQjtFQUNsQixnQkFBZ0I7QWJxcUV4Qjs7QWF6cUVBO0VBVVksV0FBVztFQUNYLGtCQUFrQjtFQUNsQixNQUFNO0VBQUUsUUFBUTtFQUFFLFNBQVM7RUFBRSxPQUFPO0VBRXBDLDRCQUFxQjtFQUNyQixVQUFVO0VBQ1YsaUJBQWlCO0VBQ2pCLHFCQUFxQjtFQUNyQix1QkFBdUI7RUFDdkIsNkJBQTZCO0FicXFFekM7O0FhbHJFWTtFQUNJO0lBQU8sNEJBQXFCO0Vic3JFMUM7RWFyckVjO0lBQUssK0JBQXFCO0Vid3JFeEM7QUFDRjs7QWFqc0VBO0VBc0JZLG1CQUFtQjtBYitxRS9COztBYXJzRUE7RUF3QlEsaUJBQWlCO0VBQ2pCLFdBQVc7RUFDWCxZQUFZO0FiaXJFcEI7O0FhM3NFQTtFQTRCUyxpQkFBaUI7QWJtckUxQjs7QWFsckVJO0VBQ0ksc0JBQXNCO0VBQ3RCLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQixpQkFBaUI7QWJxckV6Qjs7QUUxMEZRO0VXK29CSjtJQVFRLGtCQUFrQjtJQUNsQixtQkFBbUI7RWJ3ckU3QjtBQUNGOztBYXRyRUk7RUFDSSxzQkFBc0I7RUFDdEIsaUJBQWlCO0VBQ2pCLGtCQUFrQjtFQUNsQixrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLGlCQUFpQjtBYnlyRXpCOztBRTExRlE7RVcycEJKO0lBUVEsa0JBQWtCO0lBQ2xCLG1CQUFtQjtFYjRyRTdCO0FBQ0Y7O0FhMXJFSTtFQUNJLGFBQWE7RUFDYiw4QkFBOEI7RUFDOUIsbUJBQW1CO0VBQ25CLG1CQUFtQjtFQUNuQixzQkFBc0I7QWI2ckU5Qjs7QWEzckVJO0VBQ0ksbUJBQW1CO0VBQ25CLGlCQUFpQjtFQUNqQixvQkFBb0I7RUFDcEIseUJBQXlCO0FiOHJFakM7O0FFaDNGUTtFVzhxQko7SUFNUSxtQkFBbUI7SUFDbkIsbUJBQW1CO0lBQ25CLHNCQUFzQjtFYmlzRWhDO0FBQ0Y7O0FhMXNFSztFQVdPLGFBQWE7RUFDYixlQUFlO0VBQ2YscUJBQXFCO0VBQ3JCLHlCQUF5QjtBYm1zRXJDOztBYWp0RUs7RUFpQk8sbUJBQW1CO0Fib3NFL0I7O0FhcnRFSztFQW1CVyxrQkFBa0I7RUFDbEIsMkJBQTJCO0Fic3NFM0M7O0FhMXRFSztFQXNCc0IsaUJBQWlCO0Fid3NFNUM7O0FhcnNFSTtFQUNJLGFBQWE7RUFDYiw4QkFBOEI7RUFDOUIsU0FBUztBYndzRWpCOztBYTNzRUs7RUFLTyxpQkFBaUI7RUFDakIsWUFBWTtFQUNaLGVBQWU7QWIwc0UzQjs7QWF2c0VJO0VBQ0ksYUFBYTtFQUNiLGdCQUFnQjtFQUNoQix5QkFBeUI7QWIwc0VqQzs7QWE3c0VLO0VBSVEsZ0JBQWdCO0FiNnNFN0I7O0FhanRFSztFQU1PLFNBQVM7RUFDVCx3QkFBd0I7RUFDeEIsZ0JBQWdCO0FiK3NFNUI7O0FhNXNFSTtFQUNJLFVBQVU7QWIrc0VsQjs7QWExekVBO0VBOEdRLGFBQWE7RUFDYix1QkFBdUI7RUFDdkIsUUFBUTtFQUNSLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gseUJBQXlCO0VBQ3pCLGlDQUFpQztFQUNqQyxpQkFBaUI7RUFDakIsbUJBQW1CO0FiZ3RFM0I7O0FhdDBFQTtFQXVIZSxpQkFBaUI7QWJtdEVoQzs7QUU1N0ZRO0VXa25CUjtJQXdIb0MsaUJBQWlCO0VidXRFbkQ7QUFDRjs7QUVsOEZRO0VXa25CUjtJQXlIb0MsZUFBZTtFYjR0RWpEO0FBQ0Y7O0FFeDhGUTtFV2tuQlI7SUEwSG1DLGlCQUFpQjtFYml1RWxEO0FBQ0Y7O0FFOThGUTtFV2tuQlI7SUEySG1DLGtCQUFrQjtFYnN1RW5EO0FBQ0Y7O0FhbDJFQTtFQThIUSxpQkFBaUI7QWJ3dUV6Qjs7QWF0MkVBO0VBaUlRLGFBQWE7RUFDYixlQUFlO0VBQ2YsZUFBZTtFQUNmLFNBQVM7QWJ5dUVqQjs7QWE3MkVBO0VBc0lZLGFBQWE7RUFDYix3QkFBd0I7RUFDeEIsbUJBQW1CO0VBQ25CLGdCQUFnQjtBYjJ1RTVCOztBYXAzRUE7RUEwSW1CLFVBQVU7QWI4dUU3Qjs7QWF4M0VBO0VBNElnQixzQkFBc0I7RUFDdEIsbUJBQW1CO0VBQ25CLFVBQVU7QWJndkUxQjs7QUVoL0ZRO0VXa25CUjtJQWtKWSxjQUFjO0ViaXZFeEI7RWFuNEVGO0lBb0pnQixjQUFjO0lBQ2QsV0FBVztFYmt2RXpCO0VhdjRFRjs7SUF3Sm9CLGNBQWM7SUFDZCxVQUFVO0lBQ1YsV0FBVztFYm12RTdCO0FBQ0Y7O0FhOTRFQTtFQWdLUSxvQkFBb0I7RUFDcEIsaUJBQWlCO0Fia3ZFekI7O0FhbjVFQTtFQXNLWSxXQUFXO0VBQ1gsK0JBQStCO0VBQy9CLDRCQUE0QjtFQUM1Qiw2QkFBNkI7QWJpdkV6Qzs7QWExNUVBO0VBMEsyQiwyQkFBMkI7QWJvdkV0RDs7QWE5NUVBO0VBMksyQiwyQkFBMkI7QWJ1dkV0RDs7QUVwaEdRO0VXa25CUjtJQThLb0IsYUFBYTtFYnl2RS9CO0FBQ0Y7O0FheDZFQTs7O0VBc0xnQix3Q0FBd0M7RUFDeEMsMENBQTBDO0Fid3ZFMUQ7O0FhLzZFQTtFQXlMMkIseUNBQXlDO0FiMHZFcEU7O0FhbjdFQTtFQTRMWSxhQUFhO0FiMnZFekI7O0FhdjdFQTtFQThMZ0Isc0JBQXNCO0VBQ3RCLGNBQWM7RUFDZCxhQUFhO0VBQ2IsYUFBYTtFQUNiLFdBQVc7RUFDWCxlQUFlO0VBQ2YscUNBQTJCO0VBQzNCLHdCQUF3QjtBYjZ2RXhDOztBYWw4RUE7RUF1TW9CLCtCQUFxQjtBYit2RXpDOztBRXhqR1E7RVdrbkJSO0lBNE1vQixlQUFlO0lBQ2YsbUJBQW1CO0ViK3ZFckM7QUFDRjs7QWE3OEVBO0VBa05ZLHNCQUFzQjtFQUN0QixhQUFhO0FiK3ZFekI7O0FhbDlFQTtFQXFOc0IsT0FBTztBYml3RTdCOztBYXQ5RUE7RUFzTnVCLFlBQVk7QWJvd0VuQzs7QWExOUVBO0VBdU51QixZQUFZO0FidXdFbkM7O0FFaGxHUTtFV2tuQlI7SUEyTm9CLFVBQVU7SUFDVixXQUFXO0lBQ1gsdUNBQXVDO0lBQ3ZDLHlDQUF5QztJQUN6Qyw0QkFBNEI7SUFDNUIsNkJBQTZCO0Vid3dFL0M7RWF4K0VGOztJQW9Pb0IsVUFBVTtFYnd3RTVCO0VhNStFRjtJQXVPb0IsYUFBYTtJQUNiLG1CQUFtQjtJQUNuQix5QkFBeUI7SUFDekIsaUJBQWlCO0Vid3dFbkM7QUFDRjs7QWFuL0VBO0VBZ1BRLGFBQWE7RUFDYixRQUFRO0FidXdFaEI7O0FFMW1HUTtFV2tuQlI7SUFtUFksY0FBYztFYjB3RXhCO0VhNy9FRjtJQXFQZ0IsV0FBVztJQUNYLG1CQUFtQjtFYjJ3RWpDO0FBQ0Y7O0FhbGdGQTtFQTRQUSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLHVCQUF1QjtFQUN2QixVQUFVO0VBQ1Ysa0JBQWtCO0FiMHdFMUI7O0FhMWdGQTtFQWtRWSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLFNBQVM7RUFBRSxPQUFPO0VBQUUsUUFBUTtFQUM1QixXQUFXO0VBQ1gsV0FBVztFQUNYLGdCQUFnQjtFQUNoQixXQUFXO0FiOHdFdkI7O0FFeG9HUTtFV2tuQlI7SUEyUVksYUFBYTtFYmd4RXZCO0VhM2hGRjtJQTRRdUIsYUFBYTtFYmt4RWxDO0FBQ0Y7O0FhL2hGQTtFQWdSUSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLGVBQWU7QWJteEV2Qjs7QWFyaUZBO0VBbVJZLG1CQUFtQjtBYnN4RS9COztBYXppRkE7RUFxUlksYUFBYTtFQUNiLG1CQUFtQjtFQUNuQix1QkFBdUI7RUFDdkIsbUJBQW1CO0VBQ25CLFlBQVk7RUFDWixXQUFXO0VBQ1gsaUJBQWlCO0VBQ2pCLGlCQUFpQjtFQUNqQixnQkFBZ0I7RUFDaEIsc0JBQXNCO0VBQ3RCLGtCQUFrQjtBYnd4RTlCOztBYXZqRkE7RUFrU1ksZ0JBQWdCO0VBQ2hCLGdCQUFnQjtBYnl4RTVCOztBYTVqRkE7RUFvU3NCLDBCQUEwQjtBYjR4RWhEOztBYWhrRkE7RUF1U1ksV0FBVztFQUNYLDhCQUE4QjtFQUM5QixrQkFBa0I7QWI2eEU5Qjs7QWF0a0ZBO0VBNFNZLFdBQVc7RUFDWCwrQkFBK0I7QWI4eEUzQzs7QWEza0ZBO0VBK1NnQiw4QkFBOEI7RUFDOUIsa0JBQWtCO0FiZ3lFbEM7O0FFbHNHUTtFV2tuQlI7SUFvVFksZUFBZTtJQUNmLGNBQWM7SUFDZCxtQkFBbUI7SUFDbkIsdUJBQXVCO0lBQ3ZCLG1CQUFtQjtFYml5RTdCO0VhemxGRjs7SUEyVGdCLHNCQUFzQjtJQUN0QixxQkFBcUI7SUFDckIsYUFBYTtJQUNiLFdBQVc7SUFDWCxzQkFBc0I7SUFDdEIscUJBQXFCO0Via3lFbkM7RWFsbUZGOztJQWlVMEIscUJBQXFCO0VicXlFN0M7RWF0bUZGO0lBb1VnQixTQUFTO0lBQ1QsaUJBQWlCO0lBQ2pCLFlBQVk7SUFDWixZQUFZO0lBQ1osV0FBVztJQUNYLGdCQUFnQjtJQUNoQixtQkFBbUI7SUFDbkIsYUFBYTtFYnF5RTNCO0VhaG5GRjtJQStVb0IsV0FBVztJQUNYLDhCQUE4QjtJQUM5QixrQkFBa0I7RWJveUVwQztFYXJuRkY7SUFzVm9CLFdBQVc7SUFDWCwrQkFBK0I7SUFDL0Isa0JBQWtCO0Via3lFcEM7RWExbkZGO0lBeVY4Qiw4QkFBOEI7RWJveUUxRDtBQUNGOztBYTluRkE7RUFnV1EseUJBQVM7RUFDVCxXQUFXO0VBQ1gsNkJBQTZCO0VBQzdCLGlCQUFpQjtFQUNqQix5QkFBeUI7RUFDekIscUJBQXFCO0VBQ3JCLGdCQUFnQjtBYmt5RXhCOztBYXhvRkE7O0VBeVdZLDJCQUEyQjtBYm95RXZDOztBYTdvRkE7Ozs7Ozs7Ozs7O0VBc1hZLDRCQUE0QjtBYnF5RXhDOztBYTNwRkE7RUF3WGdCLGdCQUFnQjtFQUFFLG1CQUFtQjtBYnd5RXJEOztBYWhxRkE7RUF5WGlCLGFBQWE7QWIyeUU5Qjs7QWFwcUZBO0VBdVlRLGFBQWE7RUFDYixtQkFBbUI7QWJpeUUzQjs7QWF6cUZBO0VBMFlZLGdCQUFnQjtFQUNoQixrQkFBa0I7QWJteUU5Qjs7QUVoeUdRO0VXa25CUjtJQThZWSxjQUFjO0VicXlFeEI7RWFuckZGO0lBZ1pnQixZQUFZO0lBQ1osZUFBZTtFYnN5RTdCO0FBQ0Y7O0FheHJGQTtFQXVaUSxhQUFhO0VBQ2IsZUFBZTtFQUNmLGtCQUFrQjtFQUNsQixtQkFBbUI7QWJxeUUzQjs7QWEvckZBO0VBNFpZLHNCQUFzQjtFQUN0QixZQUFZO0VBQ1osdUJBQXVCO0FidXlFbkM7O0FFdnpHUTtFV2tuQlI7SUFpYVksY0FBYztJQUNkLGNBQWM7SUFDZCxlQUFlO0VieXlFekI7RWE1c0ZGO0lBcWFnQixTQUFTO0lBQ1QsV0FBVztFYjB5RXpCO0VhaHRGRjtJQXVhZ0MsbUJBQW1CO0ViNHlFakQ7QUFDRjs7QWFwdEZBO0VBNmFZLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsdUJBQXVCO0FiMnlFbkM7O0FhMXRGQTtFQWtiWSxtQkFBbUI7RUFDbkIsaUJBQWlCO0VBQ2pCLHFCQUFxQjtBYjR5RWpDOztBYXp5RUk7RUFDSTtJQUNJLFVBQVU7SUFDVixRQUFRO0ViNHlFbEI7RWExeUVNO0lBQ0ksVUFBVTtJQUNWLFFBQVE7RWI0eUVsQjtBQUNGOztBYTN1RkE7RUFrY1EsVUFBVTtFQUNWLFVBQVU7RUFDVixnQkFBZ0I7RUFDaEIsb0JBQWdCO0VBQ2hCLGVBQWU7RUFDZixRQUFRO0VBQUUsU0FBUztFQUNuQixnQ0FBZ0M7RUFDaEMsa0JBQWtCO0VBQ2xCLHlDQUErQjtFQUMvQixjWDNrQ1M7RVc0a0NULGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsbUJBQW1CO0VBQ25CLG1CQUFtQjtFQUNuQiw2QkFBNkI7QWI4eUVyQzs7QWE5dkZBO0VBa2RZLGdCQUFnQjtFQUNoQixnQkFBZ0I7QWJnekU1Qjs7QWFud0ZBO0VBc2RZLGFBQWE7RUFDYixpQkFBaUI7RUFDakIsa0JBQWtCO0FiaXpFOUI7O0FhendGQTtFQTBkZ0IsYUFBYTtFQUNiLHVCQUF1QjtBYm16RXZDOztBYTl3RkE7RUE4ZG1DLGFBQWE7QWJvekVoRDs7QWFseEZBO0VBZ2VZLDRDQUE0QztFQUM1QywrQ0FBK0M7QWJzekUzRDs7QWF2eEZBO0VBbWVnQixVQUFVO0Fid3pFMUI7O0FhM3hGQTtFQXFlWSxVQUFVO0VBQ1YsNkNBQTZDO0VBQzdDLGdEQUFnRDtFQUNoRCxnQ0FBZ0M7RUFDaEMsZ0JBQWdCO0FiMHpFNUI7O0FhbnlGQTtFQTRlWSxjQUFjO0FiMnpFMUI7O0FhdnlGQTtFQStlWSxhQUFhO0VBQ2IsdUJBQXVCO0VBQ3ZCLFNBQVM7QWI0ekVyQjs7QWE3eUZBO0VBbWZnQixVQUFVO0VBQ1YsV0FBVztFQUNYLGdCQUFnQjtFQUNoQixrQkFBa0I7QWI4ekVsQzs7QWFwekZBO0VBd2ZvQixtQlgzbkNOO0FGMjdHZDs7QWF4ekZBO0VBNmZZLGtCQUFrQjtFQUNsQixhQUFhO0VBQ2IsbUJBQW1CO0FiK3pFL0I7O0FhOXpGQTtFQWtnQlksaUJBQWlCO0VBQ2pCLFlBQVk7RUFDWixXQUFXO0FiZzBFdkI7O0FFdDdHUTtFV2tuQlI7SUF1Z0JvQixhQUFhO0ViazBFL0I7RWF6MEZGO0lBeWdCZ0IsV0FBVztJQUNYLDRDQUE0QztJQUM1QywrQ0FBK0M7RWJtMEU3RDtBQUNGOztBRWo4R1E7RVdrbkJSO0lBK2dCWSxVQUFVO0VicTBFcEI7RWFwMUZGO0lBaWhCZ0IsZUFBZTtFYnMwRTdCO0VhdjFGRjtJQW1oQm9CLFdBQVc7SUFDWCxlQUFlO0lBQ2YsbUJBQW1CO0VidTBFckM7QUFDRjs7QUUvOEdRO0VXa25CUjtJQTRoQlksY0FBYztJQUNkLGVBQWU7RWJzMEV6QjtFYW4yRkY7SUEraEJnQixTQUFTO0lBQ1QsV0FBVztFYnUwRXpCO0FBQ0Y7O0FFMTlHUTtFV2tuQlI7SUFzaUJZLGNBQWM7SUFDZCxlQUFlO0VidTBFekI7RWE5MkZGO0lBMGlCWSxjQUFjO0lBQ2QsV0FBVztFYnUwRXJCO0FBQ0Y7O0FFcitHUTtFV2dxQ0g7SUFFa0MsV0FBVztFYncwRWhEO0FBQ0Y7O0FFMytHUTtFV3dxQ0o7SUFBaUIsYUFBYTtFYncwRWhDO0FBQ0Y7O0FhdDBFQTs7RUFHUSxxQkFBcUI7RUFDckIsZ0JBQWdCO0VBQ2hCLHNCQUFzQjtFQUN0QixrQkFBa0I7QWJ3MEUxQjs7QWE5MEVBO0VBU1EsZUFBZTtBYnkwRXZCOztBYXIwRUE7RUFDSSxXQUFXO0VBQ1gscUJBQXFCO0VBQ3JCLGdCQUFnQjtFQUNoQixzQkFBc0I7RUFDdEIsa0JBQWtCO0FidzBFdEI7O0FhcjBFQTtFQUMyQixhQUFhO0FidzBFeEM7O0FhejBFQTtFQUdRLG1CQUFtQjtFQUNuQixVQUFVO0FiMDBFbEI7O0FhOTBFQTtFQU1hLFVBQVU7QWI0MEV2Qjs7QWFsMUVBO0VBUVEsc0JBQXNCO0VBQ3RCLG1CQUFtQjtFQUNuQix5Qlgvc0NXO0VXZ3RDWCxrQkFBa0I7RUFDbEIsV0FBVztBYjgwRW5COztBYTExRUE7RUFhZ0IsY1g5dENGO0FGK2lIZDs7QWE5MUVBO0VBZ0JRLGVBQWU7RUFDZixZQUFZO0FiazFFcEI7O0FhbjJFQTtFQW9CUSxhQUFhO0FibTFFckI7O0FhdjJFQTtFQXNCWSxlQUFlO0VBQ2YsY1h4dUNFO0VXeXVDRixtQkFBbUI7QWJxMUUvQjs7QWE3MkVBO0VBMkJZLFVBQVU7RUFDVixXQUFXO0VBQ1gsWUFBWTtFQUNaLFlBQVk7QWJzMUV4Qjs7QWFwM0VBO0VBaUNZLGtCQUFrQjtFQUNsQixVQUFVO0FidTFFdEI7O0FFempIUTtFV2dzQ1I7SUFvQ2dCLFVBQVU7RWIwMUV4QjtBQUNGOztBYS8zRUE7O0VBMENRLGNYL3VDVztFV2d2Q1gsaUJBQWlCO0VBQ2pCLGlCQUFpQjtBYjAxRXpCOztBRXRrSFE7RVdnc0NSO0lBK0MrQixjQUFjO0ViNDFFM0M7RWEzNEVGOztJQWtEWSxnQkFBZ0I7SUFDaEIsV0FBVztJQUNYLG1CQUFtQjtFYjYxRTdCO0FBQ0Y7O0FhejFFQTtFQUNJLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIseUJYandDZTtBRjZsSG5COztBYS8xRUE7RUFJa0IseUJBQXlCO0FiKzFFM0M7O0FhbjJFQTtFQUtRLHNCQUFzQjtBYmsyRTlCOztBYXYyRUE7RUFPUSxjQUFjO0VBQ2QsZUFBZTtFQUNmLGlDQUFpQztFQUNqQyxnQkFBZ0I7QWJvMkV4Qjs7QWE5MkVBOzs7O0VBZ0JRLFNBQVM7QWJxMkVqQjs7QWFyM0VBO0VBbUJRLGtCQUFrQjtBYnMyRTFCOztBYXozRUE7RUFzQlEsc0JBQXNCO0VBQ3RCLGtCQUFrQjtBYnUyRTFCOztBYTkzRUE7RUF5QlcsYUFBYTtBYnkyRXhCOztBYWw0RUE7RUEyQlEsa0JBQWtCO0VBQ2xCLFFBQVE7RUFBRSxRQUFRO0VBQ2xCLGdDQUFnQztFQUNoQyxhQUFhO0VBQ2IsbUJBQW1CO0FiNDJFM0I7O0FhMzRFQTtFQWlDNkIsZUFBZTtBYjgyRTVDOztBRXhvSFE7RVd5dkNSO0lBb0NvQixVQUFVO0lBQ1YsNkJBQTZCO0ViZzNFL0M7RWFyNUVGO0lBc0NxQyxhQUFhO0ViazNFaEQ7RWF4NUVGO0lBdUNxQyxjQUFjO0VibzNFakQ7QUFDRjs7QWE1NUVBO0VBNkNRLG9CQUFvQjtFQUNwQixXQUFXO0VBQ1gsZUFBZTtFQUNmLHlCQUF5QjtFQUN6QixtQkFBbUI7RUFDbkIseUJYeHpDTztFV3l6Q1Asa0JBQWtCO0FibTNFMUI7O0FhdDZFQTtFQXNEUSxvQkFBb0I7RUFDcEIsbUJBQW1CO0FibzNFM0I7O0FhMzZFQTtFQTBEUSxjQUFjO0FicTNFdEI7O0FhLzZFQTtFQTZEUSxtQkFBbUI7QWJzM0UzQjs7QWFuN0VBO0VBK0RVLGtCQUFrQjtBYnczRTVCOztBYXY3RUE7RUFnRWEsdUJBQXVCO0FiMjNFcEM7O0FhMzdFQTtFQWlFaUIsa0JBQWtCO0FiODNFbkM7O0FhLzdFQTtFQWtFZ0IsaUJBQWlCO0FiaTRFakM7O0FhbjhFQTtFQW1FaUIsaUJBQWlCO0FibzRFbEM7O0FhdjhFQTtFQW9FZSxtQkFBbUI7QWJ1NEVsQzs7QWEzOEVBO0VBc0VRLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIseUJBQXlCO0FieTRFakM7O0FhajlFQTtFQTJFUSxxQ0FBd0I7QWIwNEVoQzs7QWFyOUVBO0VBOEVRLG9CQUFvQjtFQUNwQixnQkFBZ0I7QWIyNEV4Qjs7QWExOUVBO0VBa0ZRLFdBQVc7QWI0NEVuQjs7QWE5OUVBO0VBcUZRLGFBQWE7RUFDYixnQkFBZ0I7RUFDaEIseUJBQXlCO0FiNjRFakM7O0FhcCtFQTtFQXlGc0MsU0FBUztBYis0RS9DOztBYXgrRUE7RUEyRlEsU0FBUztFQUNULGNBQWM7RUFDZCxnQkFBZ0I7QWJpNUV4Qjs7QWE5K0VBO0VBZ0dRLFdBQVc7RUFDWCxpQkFBaUI7RUFDakIsaUJBQWlCO0VBQ2pCLGdCQUFnQjtFQUNoQixtQkFBbUI7QWJrNUUzQjs7QWF0L0VBO0VBdUdRLG1CQUFtQjtFQUNuQixpQkFBaUI7QWJtNUV6Qjs7QWEzL0VBO0VBMkdRLGNBQWM7RUFDZCxXQUFXO0FibzVFbkI7O0FhaGdGQTtFQStHUSxlQUFlO0FicTVFdkI7O0FhcGdGQTtFQWtIUSxxQkFBcUI7RUFDckIsbUJBQW1CO0VBQ25CLGFBQWE7RUFDYixnQkFBZ0I7QWJzNUV4Qjs7QWEzZ0ZBO0VBd0hRLHNCQUFzQjtFQUN0QixxQkFBcUI7RUFDckIsbUJBQW1CO0VBQ25CLFVBQVU7QWJ1NUVsQjs7QWFsaEZBO0VBK0hRLHlCQUF5QjtFQUN6QixXQUFXO0FidTVFbkI7O0FhdmhGQTtFQWtJcUIseUJBQXlCO0FieTVFOUM7O0FhM2hGQTtFQW9JUSxXQUFXO0VBQ1gsNEJBQTRCO0VBQzVCLDZCQUE2QjtFQUM3QixrQkFBa0I7QWIyNUUxQjs7QWFsaUZBO0VBeUlZLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsU0FBUztFQUFFLFdBQVc7RUFBRSxZQUFZO0VBQUUsVUFBVTtFQUNoRCx1QkFBdUI7RUFDdkIsc0JBQXNCO0VBQ3RCLGtCQUFrQjtBYmc2RTlCOztBYTlpRkE7RUFpSlksNkJBQTZCO0VBQzdCLGtCQUFrQjtFQUNsQixRQUFRO0VBQUUsVUFBVTtFQUNwQiw0QkFBNEI7RUFDNUIsb0JBQW9CO0VBQ3BCLFdBQVc7RUFDWCx5QkFBeUI7RUFDekIseUJYOTVDRztFVys1Q0gsa0JBQWtCO0VBQ2xCLGVBQWU7QWJrNkUzQjs7QWE1akZBO0VBNEpnQixXQUFXO0FibzZFM0I7O0FhaGtGQTtFQWlLUSxVQUFVO0FibTZFbEI7O0FhcGtGQTs7RUFxS1EsV0FBVztBYm82RW5COztBYXprRkE7RUF3S1EsVUFBVTtBYnE2RWxCOztBYTdrRkE7RUEyS1EsVUFBVTtBYnM2RWxCOztBYWpsRkE7RUE2S3VCLGFBQWE7QWJ3NkVwQzs7QWFybEZBO0VBZ0xRLG1CQUFtQjtBYnk2RTNCOztBYXpsRkE7RUFtTFEsc0JBQXNCO0VBQ3RCLFdBQVc7RUFDWCxpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxpQkFBaUI7RUFDakIsbUJBQW1CO0FiMDZFM0I7O0Fhbm1GQTtFQTJMMEIsa0JBQWtCO0FiNDZFNUM7O0Fhdm1GQTtFQTZMUSxtQkFBbUI7RUFDbkIsZUFBZTtFQUNmLGlCQUFpQjtBYjg2RXpCOztBYTdtRkE7RUFrTVEscUJBQXFCO0VBQ3JCLG1CQUFtQjtFQUNuQixVQUFVO0FiKzZFbEI7O0Fhbm5GQTtFQXVNUSxtQkFBbUI7QWJnN0UzQjs7QWF2bkZBO0VBME1RLGNBQWM7QWJpN0V0Qjs7QWEzbkZBO0VBNk1RLGlCQUFpQjtBYms3RXpCOztBYS9uRkE7RUFpTlEscUJBQXFCO0VBQ3JCLG1CQUFtQjtFQUNuQixVQUFVO0FiazdFbEI7O0Fhcm9GQTtFQXNOUSxrQkFBa0I7QWJtN0UxQjs7QWF6b0ZBO0VBeU5RLHFCQUFxQjtFQUNyQixzQkFBc0I7RUFDdEIsVUFBVTtBYm83RWxCOztBYS9vRkE7RUE4TlEscUJBQXFCO0VBQ3JCLHNCQUFzQjtFQUN0QixVQUFVO0VBQ1YsaUJBQWlCO0FicTdFekI7O0FhdHBGQTtFQW9PUSxrQkFBa0I7QWJzN0UxQjs7QWExcEZBO0VBdU9RLGlCQUFpQjtBYnU3RXpCOztBYTlwRkE7RUEwT1EsbUJBQW1CO0VBQ25CLGFBQWE7RUFDYixXQUFXO0VBQ1gsbUJBQW1CO0VBQ25CLGtCQUFrQjtFQUNsQix5QkFBeUI7QWJ3N0VqQzs7QWF2cUZBO0VBa1BRLGtCQUFrQjtFQUNsQixrQkFBa0I7RUFDbEIsY0FBYztFQUNkLGVBQWU7QWJ5N0V2Qjs7QWE5cUZBO0VBd1BRLGFBQWE7RUFDYixrQkFBa0I7RUFDbEIsMkJBQTJCO0VBQzNCLGlDQUFpQztBYjA3RXpDOztBYXJyRkE7RUE4UFEsWUFBWTtFQUNaLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsbUJBQW1CO0FiMjdFM0I7O0FhNXJGQTtFQW9RUSxjQUFjO0VBQ2QsZUFBZTtFQUNmLGlCQUFpQjtBYjQ3RXpCOztBYWxzRkE7RUF5UVEsZUFBZTtBYjY3RXZCOztBYXRzRkE7RUE0UVEsZUFBZTtFQUNmLHlCQUF5QjtBYjg3RWpDOztBYTNzRkE7RUFnUlEsYUFBYTtFQUNiLGNBQWM7RUFDZCxtQkFBbUI7QWIrN0UzQjs7QWFqdEZBO0VBcVJRLGtCQUFrQjtBYmc4RTFCOztBYXJ0RkE7RUF3UlEsY0FBYztBYmk4RXRCOztBYXp0RkE7RUEyUlEsY0FBYztBYms4RXRCOztBYTd0RkE7RUE2UnVCLG1CQUFtQjtBYm84RTFDOztBQS85SEE7QWNqQkE7RUFJWSxhQUFhO0VBQ2IsZUFBZTtFQUNmLHVCQUF1QjtFQUN2QixtQkFBbUI7QWRpL0gvQjs7QWN4L0hBO0VBWVEsWUFBWTtFQUNaLDBCQUEwQjtFQUMxQixnQkFBZ0I7RUFDaEIsMkNBQWlDO0VBb0JqQyxzQkFBc0I7QWQ2OUg5Qjs7QWNoZ0lBOzs7RUFpQm1CLGFaRkw7QUZ1L0hkOztBY3RnSUE7RUFtQlksa0JBQWtCO0VBQ2xCLGtCQUFrQjtBZHUvSDlCOztBYzNnSUE7RUFzQmdCLGVBQWU7QWR5L0gvQjs7QWMvZ0lBO0VBMEJZLGFBQWE7QWR5L0h6Qjs7QWNuaElBO0VBNkJZLGtCQUFrQjtBZDAvSDlCOztBY3ZoSUE7RUFnQ1ksY0FBYztFQUNkLGdCQUFnQjtBZDIvSDVCOztBRXRnSVE7RVl0QlI7SUFxQ1ksWUFBWTtFZDQvSHRCO0FBQ0Y7O0FFNWdJUTtFWXRCUjtJQXdDWSxVQUFVO0lBQ1YsY0FBYztFZCsvSHhCO0FBQ0Y7O0FjemlJQTtFQTZDUSxjQUFjO0VBQ2QsbUJBQW1CO0FkZ2dJM0I7O0FjOWlJQTtFQWdEWSxhQUFhO0VBQ2IsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQix1QkFBdUI7RUFDdkIsMEZBQzJCO0VBQzNCLHNCQUFzQjtBZGlnSWxDOztBY3ZqSUE7RUF5RFksV0FBVztFQUNYLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsZ0JBQWdCO0Fka2dJNUI7O0FjOWpJQTtFQStEWSxXQUFXO0VBQ1gsY0FBYztBZG1nSTFCOztBY25rSUE7RUFrRWdCLGlCQUFpQjtBZHFnSWpDOztBY3ZrSUE7RUF3RWdCLGNBQWM7RUFDZCxrQkFBa0I7QWRtZ0lsQzs7QWM1a0lBO0VBc0VvQixrQkFBa0I7QWQwZ0l0Qzs7QWNobElBO0VBNkVZLGNBQWM7QWR1Z0kxQjs7QWNwbElBO0VBK0VnQixjQUFjO0VBQ2QsV0FBVztBZHlnSTNCOztBY3psSUE7RUFvRlksYUFBYTtBZHlnSXpCOztBYzdsSUE7RUFzRmdCLGNackVHO0VZc0VILGNBQWM7QWQyZ0k5Qjs7QWNsbUlBO0VBMEZnQixjWnpFRztFWTBFSCxnQkFBZ0I7RUFDaEIsY0FBYztBZDRnSTlCOztBY3htSUE7RUErRmdCLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLDhCQUE4QjtFQUM5QixtQkFBbUI7QWQ2Z0luQzs7QWNobklBO0VBcUdvQixtQkFBbUI7QWQrZ0l2Qzs7QWNwbklBO0VBd0dvQixjQUFjO0VBQ2QsaUJBQWlCO0VBQ2pCLHVCQUF1QjtBZGdoSTNDOztBYzFuSUE7RUE2R29CLFlBQVk7RUFDWixVQUFVO0VBQ1YsaUJBQWlCO0VBQ2pCLG9CQUFvQjtFQUNwQixtQkFBbUI7RUFDbkIseUJBQXlCO0VBQ3pCLGVBQWU7QWRpaEluQzs7QWNwb0lBO0VBcUh3QixrQkFBa0I7QWRtaEkxQzs7QWN4b0lBO0VBc0g2QiwwQkFBMEI7QWRzaEl2RDs7QWM1b0lBO0VBd0g0QixjWnBIVDtFWXFIUyxrQkFBa0I7RUFDbEIsMEJBQTBCO0Fkd2hJdEQ7O0FjbHBJQTtFQTJIa0MsaUJBQWlCO0FkMmhJbkQ7O0FjdHBJQTtFQThIb0MsMkJBQTJCO0FkNGhJL0Q7O0FjMXBJQTtFQW1JNEIsY1pwSGQ7RVlxSGMsY1puSFQ7QUY4b0luQjs7QWMvcElBO0VBdUlvQywwQkFBMEI7QWQ0aEk5RDs7QUU3b0lRO0VZdEJSO0lBOElvQixjQUFjO0VkMGhJaEM7RWN4cUlGO0lBZ0p3QixjQUFjO0lBQ2QsV0FBVztFZDJoSWpDO0VjNXFJRjtJQW9Kd0IsZUFBZTtJQUNmLFdBQVc7SUFDWCxXQUFXO0VkMmhJakM7QUFDRjs7QUU1cElRO0VZdEJSO0lBMkp3QixjQUFjO0lBQ2Qsd0JBQXdCO0VkNGhJOUM7QUFDRjs7QWN6cklBO0VBaUtnQixjWjNKQTtFWTRKQSxpQkFBaUI7QWQ0aElqQzs7QWM5cklBO0VBbUt5QixjWnBKWDtBRm1ySWQ7O0FlbHNJQTtFQUdZLE9BQU87RUFDUCxXQUFXO0FmbXNJdkI7O0FldnNJQTtFQU9ZLFFBQVE7RUFDUixXQUFXO0Fmb3NJdkI7O0FlNXNJQTs7RUFZWSxXQUFXO0FmcXNJdkI7O0FlanRJQTtFQWdCUSxXQUFXO0VBQ1gsb0JBQW9CO0FmcXNJNUI7O0FldHRJQTtFQW1CWSxxQkFBcUI7RUFDckIsb0JBQW9CO0VBQ3BCLG9CQUFvQjtFQUNwQixXQUFXO0VBQ1gscUJBQXFCO0VBQ3JCLHlCQUF5QjtFQUN6QixtQmJSTztBRitzSW5COztBZWh1SUE7RUEyQmdCLG1CYlpGO0FGcXRJZDs7QWVwdUlBO0VBK0JZLDJDQUFpQztBZnlzSTdDOztBZXh1SUE7RUFrQ1ksY2J2Qkc7RWF3QkgsaUJBQWlCO0VBQ2pCLHFCQUFxQjtBZjBzSWpDOztBZTl1SUE7RUF1Q1ksWUFBWTtBZjJzSXhCOztBZWx2SUE7RUEwQ1ksb0JBQW9CO0VBQ3BCLGNickNJO0Vhc0NKLGdCQUFnQjtFQUNoQixpQkFBaUI7RUFDakIseUJBQXlCO0FmNHNJckM7O0FlMXZJQTtFQWlEWSxlQUFlO0FmNnNJM0I7O0FFeHVJUTtFYXRCUjtJQXFEZ0IsZ0JBQWdCO0VmOHNJOUI7RWVud0lGO0lBd0RnQixnQkFBZ0I7RWY4c0k5QjtFZXR3SUY7SUEyRGdCLGlCQUFpQjtFZjhzSS9CO0FBQ0Y7O0FlMXdJQTtFQWlFWSxhQUFhO0VBQ2IsZUFBZTtBZjZzSTNCOztBZS93SUE7RUFxRW9CLGVBQWU7QWY4c0luQzs7QWVueElBO0VBMEVvQixvQkFBb0I7RUFDcEIsY2JyRUo7RWFzRUksZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQix5QkFBeUI7RUFDekIsMEJBQTBCO0FmNnNJOUM7O0FlNXhJQTtFQWtGb0IsY2J6RUw7QUZ1eElmOztBRTF3SVE7RWF0QlI7SUF3RmdCLDZCQUE2QjtFZjZzSTNDO0FBQ0Y7O0FldHlJQTtFQTZGUSxZQUFZO0VBQ1osdUJBQXVCO0FmNnNJL0I7O0FlM3lJQTtFQWdHWSx5Q0FBK0I7QWYrc0kzQzs7QWUveUlBO0VBbUdZLGVBQWU7QWZndEkzQjs7QWVueklBO0VBc0dZLGFBQWE7QWZpdEl6Qjs7QUVqeUlRO0VhdEJSO0lBeUdZLDBCQUEwQjtFZm10SXBDO0FBQ0Y7O0FFdnlJUTtFYXRCUjtJQTRHWSxZQUFZO0Vmc3RJdEI7QUFDRjs7QUU3eUlRO0VhdEJSO0lBK0dZLGNBQWM7RWZ5dEl4QjtBQUNGOztBZXowSUE7RUFtSFEsY0FBYztFQXdDZDs7Ozs7a0JmdXJJVTtBQUNsQjs7QWVuMUlBO0VBcUhZLHNCQUFzQjtBZmt1SWxDOztBZXYxSUE7RUF1SGdCLFNBQVM7RUFDVCwyQkFBMkI7QWZvdUkzQzs7QWU1MUlBO0VBNEhZLGtCQUFrQjtFQUNsQixxQkFBcUI7QWZvdUlqQzs7QWVqMklBO0VBZ0lZLGFBQWE7RUFDYixlQUFlO0VBQ2YsT0FBTztBZnF1SW5COztBZXYySUE7RUFxSVksVUFBVTtBZnN1SXRCOztBZTMySUE7RUF1SWdCLGdCQUFnQjtFQUNoQixTQUFTO0VBQ1QsV0FBVztFQUNYLGtCQUFrQjtBZnd1SWxDOztBRTUxSVE7RWF0QlI7SUE2SWdCLFdBQVc7SUFDWCxlQUFlO0lBQ2YsbUJBQW1CO0VmMHVJakM7QUFDRjs7QWUxM0lBO0VBbUpZLFVBQVU7QWYydUl0Qjs7QUV4MklRO0VhdEJSO0lBcUpnQixXQUFXO0VmOHVJekI7QUFDRjs7QWVwNElBO0VBeUpZLGNBQWM7QWYrdUkxQjs7QWV4NElBO0VBa0tZLGFBQWE7RUFDYixlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLDhCQUE4QjtFQUM5QixjQUFjO0FmMHVJMUI7O0FlaDVJQTtFQXdLZ0IsaUJBQWlCO0FmNHVJakM7O0FFOTNJUTtFYXRCUjtJQTZLZ0IsYUFBYTtJQUNiLHNCQUFzQjtFZjR1SXBDO0VlMTVJRjtJQWlMZ0IsZUFBZTtJQUNmLFlBQVk7SUFDWixlQUFlO0VmNHVJN0I7RWUvNUlGO0lBc0xnQixrQkFBa0I7SUFDbEIsY0FBYztFZjR1STVCO0FBQ0Y7O0FFOTRJUTtFYXRCUjtJQTRMZ0IsYUFBYTtJQUNiLHNCQUFzQjtJQUN0QixtQkFBbUI7RWY2dUlqQztFZTM2SUY7SUFnTW9CLGNBQWM7RWY4dUloQztBQUNGOztBZS82SUE7RUFzTVEscUJBQXFCO0VBQ3JCLGdCQUFnQjtFQUNoQixtQkFBbUI7RUFDbkIsV0FBVztFQUNYLDZCQUE2QjtBZjZ1SXJDOztBZXY3SUE7RUE0TVksY2JuTUc7RWFvTUgsZ0NicE1HO0FGbTdJZjs7QWU1N0lBO0VBaU5RLGdCQUFnQjtFQUNoQixXQUFXO0FmK3VJbkI7O0FlajhJQTtFQW9OWSwwQkFBMEI7RUFDMUIsV0FBVztBZml2SXZCOztBZXQ4SUE7RUF3Tlksc0JBQXNCO0VBQ3RCLHVCQUF1QjtBZmt2SW5DOztBZTM4SUE7RUE2TlEseUJBQXlCO0VBQ3pCLGlCQUFpQjtFQUNqQixxQkFBcUI7RUFDckIsY2J2Tk87QUZ5OElmOztBZTl1SUE7RUFFUSxnQkFBZ0I7QWZndkl4Qjs7QWU1dUlBO0VBQ0ksWUFBWTtBZit1SWhCOztBZWh2SUE7RUFHUSxvQkFBb0I7QWZpdkk1Qjs7QUF6OElBO0FnQnJCQTtFQUNJLGtCQUFrQjtBaEJrK0l0Qjs7QWdCbitJQTtFQUdRLGNkY1c7RWNiWCxlQUFlO0VBQ2YsZ0JBQWdCO0FoQm8rSXhCOztBZ0J6K0lBO0VBUVEsU0FBUztBaEJxK0lqQjs7QWdCNytJQTtFQVdRLHFCQUFxQjtBaEJzK0k3Qjs7QWdCai9JQTtFQWNRLGFBQWE7QWhCdStJckI7O0FnQnIvSUE7RUFpQlEsa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixTQUFTO0VBQ1QsWUFBWTtFQUNaLGdCQUFnQjtBaEJ3K0l4Qjs7QWdCNy9JQTtFQXdCUSxrQkFBa0I7RUFDbEIsOEJBQThCO0FoQnkrSXRDOztBZ0JsZ0pBO0VBMkJZLGtCQUFrQjtFQUNsQiw0QkFBNEI7RUFDNUIsa0JBQWtCO0FoQjIrSTlCOztBZ0J4Z0pBO0VBaUNRLHFCQUFxQjtFQUNyQixVQUFVO0VBQ1YsYUFBYTtFQUNiLG1CQUFtQjtBaEIyK0kzQjs7QWdCL2dKQTtFQXNDWSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLGtCQUFrQjtFQUNsQixhQUFhO0VBQ2IsY0FBYztFQUNkLGVBQWU7RUFDZixvQkFBb0I7QWhCNitJaEM7O0FnQnpoSkE7RUE4Q2dCLGNBQWM7RUFDZCxxQkFBcUI7RUFDckIseUJBQXlCO0FoQisrSXpDOztBZ0IvaEpBO0VBc0RRLG1CQUFtQjtBaEI2K0kzQjs7QWdCbmlKQTtFQXdEWSxXQUFXO0FoQisrSXZCOztBZ0J2aUpBO0VBNkRRLHNCQUFzQjtFQUN0QixnQkFBZ0I7RUFDaEIsZUFBZTtFQUNmLG1CQUFtQjtFQUNuQixzQkFBc0I7RUFDdEIseUNBQXlDO0FoQjgrSWpEOztBZ0JoakpBO0VBb0VZLG1CQUFtQjtFQUNuQixpQkFBaUI7RUFDakIsY2RyRE87QUZxaUpuQjs7QWdCdGpKQTtFQTBFUSxtQkFBbUI7RUFDbkIseUNBQXlDO0VBQ3pDLGtCQUFrQjtFQUNsQixhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLFlBQVk7RUFDWixxQkFBcUI7RUFDckIsc0JBQXNCO0VBQ3RCLDJCQUEyQjtFQUMzQixzQkFBc0I7QWhCZy9JOUI7O0FnQm5rSkE7RUFzRlEsYUFBYTtFQUNiLHVCQUF1QjtFQUN2QixnQkFBZ0I7RUFDaEIseUJBQXlCO0VBQ3pCLDJDQUEyQztBaEJpL0luRDs7QWdCM2tKQTtFQTRGWSwwREFBMEQ7QWhCbS9JdEU7O0FnQi9rSkE7RUFnR1Esb0JBQW9CO0VBQ3BCLGdEQUFnRDtBaEJtL0l4RDs7QWdCcGxKQTtFQW9HUSxjQUFjO0VBQ2QsZUFBZTtFQUNmLGVBQWU7QWhCby9JdkI7O0FnQjFsSkE7RUF5R1EsYUFBYTtFQUNiLGVBQWU7QWhCcS9JdkI7O0FnQi9sSkE7RUE0R1ksU0FBUztBaEJ1L0lyQjs7QWdCbm1KQTtFQStHWSxzQkFBc0I7RUFDdEIsbUJBQW1CO0VBQ25CLGtCQUFrQjtFQUNsQixXQUFXO0FoQncvSXZCOztBZ0IxbUpBO0VBcUhZLGFBQWE7RUFDYixjQUFjO0FoQnkvSTFCOztBZ0IvbUpBO0VBeUhZLHNCQUFzQjtFQUN0QixzQkFBc0I7QWhCMC9JbEM7O0FnQnBuSkE7RUE2SFksT0FBTztBaEIyL0luQjs7QWdCeG5KQTtFQWdJWSwrQ0FBK0M7QWhCNC9JM0Q7O0FnQjVuSkE7RUFrSWdCLGtCQUFrQjtBaEI4L0lsQzs7QWdCaG9KQTtFQXNJWSx5Q0FBeUM7QWhCOC9JckQ7O0FnQnBvSkE7RUEySVEsbUJBQW1CO0VBQ25CLG9CQUFvQjtFQUNwQixnREFBZ0Q7QWhCNi9JeEQ7O0FnQjFvSkE7RUFnSlEsY0FBYztBaEI4L0l0Qjs7QWdCOW9KQTtFQWtKWSxrQkFBa0I7QWhCZ2dKOUI7O0FnQmxwSkE7RUFxSlksbUJBQW1CO0FoQmlnSi9COztBZ0J0cEpBO0VBd0pZLFVBQVU7QWhCa2dKdEI7O0FnQjFwSkE7RUEySlksYUFBYTtBaEJtZ0p6Qjs7QWdCOXBKQTtFQThKWSxZQUFZO0FoQm9nSnhCOztBZ0JscUpBOztFQWtLWSxzQkFBc0I7RUFDdEIsWUFBWTtFQUNaLFlBQVk7RUFDWixXQUFXO0VBQ1gsc0JBQXNCO0VBQ3RCLGdCQUFnQjtFQUNoQixtQkFBbUI7RUFDbkIsa0JBQWtCO0FoQnFnSjlCOztBZ0I5cUpBOztFQTJLZ0IsNEJBQTRCO0FoQndnSjVDOztBZ0JuckpBO0VBZ0xRLGFBQWE7RUFDYixlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLFFBQVE7QWhCdWdKaEI7O0FnQjFySkE7RUFxTFksT0FBTztBaEJ5Z0puQjs7QWdCOXJKQTs7RUEwTFEsbUJBQW1CO0FoQnlnSjNCOztBZ0Juc0pBO0VBNkxRLGNkdExPO0FGZ3NKZjs7QWdCdnNKQTtFQStMWSxjZHhMRztFY3lMSCxhQUFhO0FoQjRnSnpCOztBZ0I1c0pBO0VBb01RLG1CQUFtQjtBaEI0Z0ozQjs7QWdCaHRKQTtFQXVNUSxhQUFhO0FoQjZnSnJCOztBZ0JwdEpBO0VBMk1RLGFBQWE7RUFFYixtQkFBbUI7RUFDbkIsVUFBVTtBaEI0Z0psQjs7QWdCMXRKQTs7RUFtTlEseUJBQXlCO0FoQjRnSmpDOztBZ0IvdEpBO0VBdU5RLGFBQWE7RUFDYixlQUFlO0VBQ2YsUUFBUTtFQUNSLHVCQUF1QjtBaEI0Z0ovQjs7QWdCdHVKQTtFQThOUSxTQUFTO0VBQ1QsWUFBWTtFQUNaLE9BQU87RUFDUCxrQkFBa0I7RUFDbEIseUNBQStCO0VBQy9CLGFBQWE7RUFDYixlQUFlO0FoQjRnSnZCOztBZ0JodkpBO0VBdU9RLG9CQUFvQjtBaEI2Z0o1Qjs7QWdCcHZKQTs7RUEyT1EsV0FBVztBaEI4Z0puQjs7QWdCenZKQTtFQThPUSxVQUFVO0FoQitnSmxCOztBZ0I3dkpBO0VBaVBRLG9CQUFvQjtFQUNwQixnQkFBZ0I7QWhCZ2hKeEI7O0FnQmx3SkE7RUFxUFEsT0FBTztBaEJpaEpmOztBZ0J0d0pBO0VBeVBRLGNBQWM7RUFDZCxtQkFBbUI7QWhCaWhKM0I7O0FFcnZKUTtFY3RCUjtJQStQWSxjQUFjO0lBQ2QsYUFBYTtJQUNiLFlBQVk7SUFDWixXQUFXO0lBQ1gsV0FBVztJQUNYLGdCQUFnQjtJQUNoQixTQUFTO0lBQ1QsZUFBZTtFaEJpaEp6QjtFZ0J2eEpGO0lBeVFZLGVBQWU7SUFDZixTQUFTO0lBQ1QsUUFBUTtJQUNSLE9BQU87SUFDUCxTQUFTO0lBQ1QsV0FBVztJQUNYLHdDQUF3QztJQUN4Qyx1Q0FBNkI7SUFDN0IsVUFBVTtFaEJpaEpwQjtFZ0JseUpGO0lBbVJnQixlQUFlO0VoQmtoSjdCO0VnQnJ5SkY7SUF1UlksY0FBYztJQUNkLGNBQWM7RWhCaWhKeEI7QUFDRjs7QWdCN2dKQTtFQUNJLGtCQUFrQjtFQUNsQix3QkFBd0I7RUFDeEIsZ0JBQWdCO0VBQ2hCLFlBQVk7RUFDWixXQUFXO0VBQ1gsb0JBQW9CO0VBQ3BCLG1CQUFtQjtFQUNuQix1QkFBdUI7RUFDdkIsa0JBQWtCO0FoQmdoSnRCOztBZ0I3Z0pBO0VBQ0kseUJBQXlCO0VBQ3pCLHlCQUF5QjtBaEJnaEo3Qjs7QWdCbGhKQTtFQUlRLHlCQUFzQztFQUN0QyxxQkFBa0M7QWhCa2hKMUM7O0FnQjlnSkE7RUFDSSx5QkFBeUI7RUFDekIseUJBQXlCO0FoQmloSjdCOztBZ0JuaEpBO0VBSVEseUJBQXNDO0VBQ3RDLHFCQUFrQztBaEJtaEoxQzs7QWdCL2dKQTtFQUNJLHlCQUF5QjtFQUN6Qix5QkFBeUI7QWhCa2hKN0I7O0FnQnBoSkE7RUFJUSx5QkFBc0M7RUFDdEMscUJBQWtDO0FoQm9oSjFDOztBZ0JoaEpBO0VBQ0ksYUFBYTtBaEJtaEpqQjs7QWdCaGhKQTtFQUNJLFVBQVU7QWhCbWhKZDs7QWdCaGhKQTtFQUVRLFVBQVU7RUFDVixTQUFTO0FoQmtoSmpCOztBZ0JyaEpBO0VBS1ksYUFBYTtBaEJvaEp6Qjs7QWdCL2dKQTtFQUVRLHFCQUFxQjtFQUNyQixpQkFBaUI7RUFDakIsY2R6VVc7RWMwVVgsZ0JBQWdCO0FoQmloSnhCOztBZ0I3Z0pBO0VBRVEsZ0JBQWdCO0VBQ2hCLGNkalZXO0Vja1ZYLGdCQUFnQjtBaEIrZ0p4Qjs7QWdCbmhKQTtFQU9RLGdCQUFnQjtBaEJnaEp4Qjs7QWdCNWdKQTtFQUVRLGFBQWE7QWhCOGdKckI7O0FnQmhoSkE7RUFLUSxtQkFBbUI7RUFDbkIsa0JBQWtCO0VBQ2xCLHFCZGhXVztFY2lXWCx3Q2RqV1c7RWNrV1gsZUFBZTtFQUNmLHdCQUF3QjtFQUN4QixTQUFTO0VBQ1Qsb0JBQW9CO0VBQ3BCLG1CQUFtQjtFQUNuQixVQUFVO0FoQitnSmxCOztBZ0I3aEpBO0VBZ0JZLFdBQVc7RUFDWCxxQkFBcUI7RUFDckIsV0FBVztFQUNYLFlBQVk7RUFDWixpRUFBbUU7QWhCaWhKL0U7O0FnQnJpSkE7RUF1QlksNkJBQTZCO0VBQzdCLGNkalhPO0FGbTRKbkI7O0FnQjFpSkE7RUEyQlksd0NkcFhPO0FGdTRKbkI7O0FpQng1SkE7RUFDSSxnQkFBZ0I7QWpCMjVKcEI7O0FpQjU1SkE7RUFHUSxvQkFBb0I7RUFDcEIsYUFBYTtFQUNiLFlBQVk7RUFDWixnQkFBZ0I7QWpCNjVKeEI7O0FpQm42SkE7RUFRWSxzQkFBc0I7RUFDdEIsYUFBYTtFQUNiLGNBQWM7RUFDZCx1QkFBdUI7RUFDdkIseUNBQStCO0FqQis1SjNDOztBaUIzNkpBO0VBZVksYUFBYTtBakJnNkp6Qjs7QWlCLzZKQTtFQWlCUSxhQUFhO0VBQ2Isc0JBQXNCO0FqQms2SjlCOztBaUJwN0pBO0VBc0JRLGNBQWM7RUFDZCxlQUFlO0VBQ2Ysc0JBQXNCO0VBQ3RCLGtCQUFrQjtBakJrNkoxQjs7QWlCOTVKQTtFQUNJLGlCQUFpQjtFQUNqQixhQUFhO0VBQ2IsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixzQkFBc0I7QWpCaTZKMUI7O0FpQnQ2SkE7RUFNYyxlQUFlO0FqQm82SjdCOztBaUJqNkpBO0VBQ0ksZUFBZTtBakJvNkpuQjs7QWlCcjZKQTtFQUk2QixhQUFhO0FqQnE2SjFDOztBaUJ6NkpBO0VBT3FDLGFBQWE7QWpCczZKbEQ7O0FpQjc2SkE7RUFVK0IsYUFBYTtBakJ1Nko1Qzs7QWlCajdKQTtFQWFpQyxhQUFhO0FqQnc2SjlDOztBaUJyN0pBO0VBZ0I0QixhQUFhO0FqQnk2SnpDOztBaUJ6N0pBO0VBbUJ3QixhQUFhO0FqQjA2SnJDOztBaUI3N0pBO0VBdUJRLGVBQWU7RUFDZixZQUFZO0VBQ1osc0JBQXNCO0FqQjA2SjlCOztBaUJuOEpBO0VBMEJnQixpQkFBaUI7QWpCNjZKakM7O0FpQnY4SkE7RUE2QlEsZUFBZTtFQUNmLHNCQUFzQjtFQUN0QixnQkFBZ0I7QWpCODZKeEI7O0FpQjE2SkE7RUFDSSxjQUFjO0VBQ2QsYUFBYTtFQUNiLGdCQUFnQjtBakI2NkpwQjs7QWlCMTZKQTtFQUNJLFlBQVk7RUFDWixnQkFBZ0I7QWpCNjZKcEI7O0FpQjE2SkE7RUFDSSxhQUFhO0FqQjY2SmpCOztBaUIxNkpBO0VBQ0ksa0JBQWtCO0VBQ2xCLGdCQUFnQjtBakI2NkpwQjs7QWlCMTZKQTtFQUNJLGdCQUFnQjtFQUNoQixhQUFhO0VBQ2IsZUFBZTtFQUNmLGtCQUFrQjtFQUNsQixtQkFBbUI7QWpCNjZKdkI7O0FFei9KUTtFZXVFUjtJQU9RLGtCQUFrQjtJQUNsQixtQkFBbUI7RWpCZzdKekI7QUFDRjs7QWlCOTZKQTtFQUNJLHNCQUFzQjtFQUN0QixhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLFlBQVk7RUFDWixtQkFBbUI7RUFDbkIsdUJBQXVCO0VBQ3ZCLGNmN0ZpQjtFZThGakIsZUFBZTtFQUNmLGdCQUFnQjtFQUNoQixrQkFBa0I7QWpCaTdKdEI7O0FpQjM3SkE7RUFXYSxtQkFBbUI7QWpCbzdKaEM7O0FpQi83SkE7RUFZeUIsT0FBTztBakJ1N0poQzs7QWlCbjhKQTtFQWNRLGVBQWU7RUFDZixjZnJHYTtFZXNHYixpQkFBaUI7QWpCeTdKekI7O0FpQno4SkE7RUFpQlksY0FBYztBakI0N0oxQjs7QUUvaEtRO0Vla0ZSO0lBb0JRLHVCQUF1QjtFakI4N0o3QjtBQUNGOztBRXJpS1E7RWVrRlI7SUF1QlEsbUJBQW1CO0lBQ25CLHVCQUF1QjtFakJpOEo3QjtBQUNGOztBRTVpS1E7RWVrRlI7SUEyQlEsdUJBQXVCO0VqQm84SjdCO0FBQ0Y7O0FFbGpLUTtFZWtGUjtJQThCUSx3QkFBd0I7RWpCdThKOUI7QUFDRjs7QUFyaktBO0VBQ0ksc0JBQXNCO0FBd2pLMUI7O0FEeGtLQztFQ29CRyxzQkFBYztFQUNkLHFCQUFhO0VBQ2IsdUJBQWU7RUFDZix1QkFBZTtFQUNmLHFCQUFhO0VBQ2IsdUJBQWU7QUF3aktuQjs7QUFyaktBO0VBQ0ksYUFBYTtBQXdqS2pCOztBRXprS1E7RUZnQlI7SUFHUSxjQUFjO0VBMmpLcEI7QUFDRjs7QUF4aktBO0VBQ0ksZ0JBQWdCO0VBQ2hCLE1BQU07RUFDTixhQUFhO0VBQ2IsbUJBQW1CO0FBMmpLdkI7O0FBL2pLQTtFQU1RLGFBQWE7RUFDYixnQ0FBZ0M7QUE2akt4Qzs7QUFwa0tBO0VBUW9CLGtCQUFrQjtBQWdrS3RDOztBQXhrS0E7RUFVWSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLFFBQVE7RUFBRSxRQUFRO0VBQ2xCLDJCQUEyQjtFQUMzQixVQUFVO0VBQ1YsWUFBWTtFQUNaLGdCQUFnQjtBQW1rSzVCOztBQW5sS0E7RUFvQlEsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQiw4QkFBOEI7QUFta0t0Qzs7QUVobktRO0VGdUJSO0lBd0IyQyxhQUFhO0VBc2tLdEQ7QUFDRjs7QUFwa0tBO0VBQ0ksbUJBQW1CO0FBdWtLdkI7O0FBeGtLQTtFQUdRLGFBQWE7QUF5a0tyQjs7QUU5bktRO0VGa0RSO0lBSStDLGNBQWM7RUE2a0szRDtBQUNGOztBQWxsS0E7RUFPUSxlQUFlO0VBQ2YsOEJBQThCO0VBQzlCLFdBQVc7RUFDWCxrQkFBa0I7QUEra0sxQjs7QUF6bEtBO0VBYVksc0JBQXNCO0FBZ2xLbEM7O0FBN2xLQTtFQWVZLGVBQWU7RUFDZixhQUFhO0VBQ2IsbUJBQW1CO0FBa2xLL0I7O0FBbm1LQTtFQW1CZ0Isa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixpQkFBaUI7QUFvbEtqQzs7QUF6bUtBO0VBd0JnQixtQkFBbUI7QUFxbEtuQzs7QUE3bUtBO0VBNkJZLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsOEJBQThCO0FBb2xLMUM7O0FFcnFLUTtFRmtEUjtJQW9DWSxlQUFlO0VBb2xLekI7RUFubEtVO0lBQWdDLFNBQVM7RUFzbEtuRDtBQUNGOztBQWxsS0E7RUFDSSxPQUFPO0FBcWxLWDs7QUVscktRO0VGNEZSO0lBR1EsV0FBVztFQXdsS2pCO0FBQ0Y7O0FBcmxLQTtFQUdJLGNBQWM7RUFDZCxXQUFXO0VBQ1gsbUJFdkhXO0VGd0hYLFdBQVc7RUFDWCxrQkFBa0I7QUFzbEt0Qjs7QUE3bEtBO0VBU1EscUJBQXFCO0VBQ3JCLFdBQVc7RUFDWCwwQkFBMEI7QUF3bEtsQzs7QUFwbEtBO0VBQ0ksZUFBZTtFQUNmLFFBQVE7RUFBRSxTQUFTO0VBQUUsT0FBTztFQUM1QixlQUFlO0VBQ2YsZUFBZTtFQUNmLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsaUJBQWlCO0VBQ2pCLHlCQUF5QjtFQUN6QixtQkFBbUI7RUFDbkIsV0FBVztBQXlsS2Y7O0FBdGxLQTtFQUNJLHNCQUFzQjtFQUN0QixzQkFBc0I7RUFDdEIsbUJBQW1CO0VBQ25CLHlDQUFnQztFQUNoQyxhQUFhO0VBQ2IsaUJBQWlCO0VBQ2pCLHdCQUF3QjtFQUN4QixzQkFBc0I7QUF5bEsxQjs7QUF4bEtJO0VBQ0ksYUFBYTtFQUNiLGVBQWU7RUFDZix1QkFBdUI7RUFDdkIsa0JBQWtCO0FBMmxLMUI7O0FBeG1LQTtFQWdCUSxrQkFBa0I7RUFDbEIseUJBQXlCO0VBQ3pCLGNFdEpXO0VGdUpYLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0FBNGxLeEI7O0FBam5LQTtFQXdCUSxXQUFXO0VBQ1gsWUFBWTtFQUNaLHlCRXRLTztFRnVLUCxrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLFlBQVk7RUFDWixhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLHVCQUF1QjtFQUN2QixnQkFBZ0I7RUFDaEIsV0FBVztBQTZsS25COztBQS9uS0E7RUFxQ1EsY0V6S1c7RUYwS1gsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtFQUNoQixrQkFBa0I7QUE4bEsxQjs7QUF0b0tBO0VBMENZLFdBQVc7RUFDWCxZQUFZO0VBQ1osV0FBVztFQUNYLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsV0FBVztFQUNYLHVFQUF5RTtBQWdtS3JGOztBQWhwS0E7RUFtRFksZ0JBQWdCO0FBaW1LNUI7O0FBOWxLSTtFQUNJLFlBQVk7RUFDWix1QkFBdUI7QUFpbUsvQjs7QUFubUtLO0VBSU8sa0JBQWtCO0FBbW1LOUI7O0FFNXhLUTtFRitIUjtJQThEUSxpQkFBaUI7SUFDakIsdUJBQXVCO0lBQ3ZCLGVBQWU7RUFvbUtyQjtBQUNGOztBRXB5S1E7RUYrSFI7SUFtRVEsY0FBYztJQUNkLFdBQVc7RUF1bUtqQjtBQUNGOztBQXBtS0E7RUFFUSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLGlFQUFpRTtFQUNqRSxzQkFBc0I7QUFzbUs5Qjs7QUEzbUtBO0VBT1ksY0FBYztFQUNkLFVBQVU7QUF3bUt0Qjs7QUFobktBO0VBV1ksd0JBQXdCO0VBQ3hCLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osUUFBUTtFQUFFLFdBQVc7RUFDckIsZ0JBQWdCO0VBQ2hCLDRCQUE0QjtFQUM1QiwrQkFBK0I7RUFDL0IsNENBQWtDO0FBMG1LOUM7O0FBNW5LQTtFQXFCWSxrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLG9CQUFvQjtFQUNwQixlQUFlO0VBQ2YsY0FBYztBQTJtSzFCOztBQXBvS0E7RUEyQmdCLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsU0FBUztFQUFFLE9BQU87RUFDbEIsV0FBVztFQUNYLFVBQVU7RUFDVixnQkFBZ0I7QUE4bUtoQzs7QUVyMUtRO0VGdU1SO0lBa0N1QyxpQkFBaUI7RUFpbkt0RDtBQUNGOztBQXBwS0E7RUFvQzBCLGtCQUFrQjtBQW9uSzVDOztBQXhwS0E7RUF1Q1EsY0FBYztBQXFuS3RCOztBQTVwS0E7RUF5Q1ksc0JBQXNCO0VBQ3RCLGFBQWE7RUFDYixlQUFlO0FBdW5LM0I7O0FBbHFLQTs7RUErQ1ksc0JBQXNCO0VBQ3RCLGVBQWU7RUFDZixVQUFVO0FBd25LdEI7O0FBenFLQTtFQW1EZ0Isa0JBQWtCO0FBMG5LbEM7O0FBN3FLQTtFQXFEWSxlQUFlO0VBQ2YsWUFBWTtBQTRuS3hCOztBQWxyS0E7RUF5RFksa0JBQWtCO0FBNm5LOUI7O0FBdHJLQTtFQTREWSxrQkFBa0I7QUE4bks5Qjs7QUVqNEtRO0VGdU1SO0lBK0RtQixjQUFjO0VBZ29LL0I7RUEvcktGOztJQWtFZ0IsY0FBYztJQUNkLFVBQVU7SUFDVixXQUFXO0VBaW9LekI7QUFDRjs7QUF0c0tBO0VBeUVRLGNBQWM7RUFDZCxXQUFXO0VBQ1gseUVBQXlFO0FBaW9LakY7O0FBNXNLQTtFQThFUSxtQkFBbUI7RUFDbkIsV0FBVztFQUNYLGlCQUFpQjtFQUNqQixpQkFBaUI7RUFDakIsa0JBQWtCO0FBa29LMUI7O0FFMzVLUTtFRnVNUjtJQW1GbUMsaUJBQWlCO0VBc29LbEQ7QUFDRjs7QUExdEtBO0VBc0ZRLGNBQWM7RUFDZCxtREFBbUQ7QUF3b0szRDs7QUEvdEtBO0VBMEZRLGNBQWM7QUF5b0t0Qjs7QUFudUtBO0VBNkZRLGdCQUFnQjtFQUNoQixtQkFBbUI7QUEwb0szQjs7QUF4dUtBO0VBZ0dZLGFBQWE7RUFDYixlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLGNBQWM7QUE0b0sxQjs7QUEvdUtBO0VBcUdnQixzQkFBc0I7RUFDdEIsWUFBWTtFQUNaLHVCQUF1QjtFQUN2QixrQkFBa0I7QUE4b0tsQzs7QUF0dktBO0VBNEdZLGNFeFRPO0VGeVRQLGlCQUFpQjtFQUNqQixpQkFBaUI7RUFDakIsZ0JBQWdCO0VBQ2hCLHlCQUF5QjtBQThvS3JDOztBQTl2S0E7RUFtSFksZUFBZTtFQUNmLGdCQUFnQjtFQUNoQixZQUFZO0VBQ1osZUFBZTtBQStvSzNCOztBQXJ3S0E7RUF5SFksYUFBYTtFQUNiLFlBQVk7RUFDWixlQUFlO0VBQ2YsWUFBWTtFQUNaLG1CQUFtQjtFQUNuQixhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLHVCQUF1QjtBQWdwS25DOztBQWh4S0E7RUFrSWdCLFlBQVk7QUFrcEs1Qjs7QUFweEtBO0VBb0lvQixxQkFBc0I7QUFvcEsxQzs7QUUvOUtRO0VGdU1SO0lBMElnQix1QkFBdUI7RUFtcEtyQztBQUNGOztBRXIrS1E7RUZ1TVI7SUE4SW9CLGlCQUFpQjtFQXFwS25DO0FBQ0Y7O0FBcHlLQTtFQWtKUSxjQUFjO0FBc3BLdEI7O0FBeHlLQTtFQW9KWSxhQUFhO0VBQ2IsbUJBQW1CO0FBd3BLL0I7O0FBN3lLQTtFQXVKZ0IsbUJBQW1CO0VBQ25CLHVCQUF1QjtBQTBwS3ZDOztBQWx6S0E7RUEwSnFCLFVBQVU7QUE0cEsvQjs7QUF0ektBO0VBOEpRLGVBQWU7QUE0cEt2Qjs7QUExektBO0VBZ0tZLHNCQUFzQjtFQUN0QixhQUFhO0VBQ2IsZUFBZTtFQUNmLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsbUJBQW1CO0FBOHBLL0I7O0FBbjBLQTs7RUF3S2dCLHNCQUFzQjtFQUN0QixjQUFjO0VBQ2Qsd0JBQXdCO0FBZ3FLeEM7O0FBMTBLQTtFQTZLZ0IsWUFBWTtBQWlxSzVCOztBRXJoTFE7RUZ1TVI7SUFnTGdCLGNBQWM7SUFDZCxlQUFlO0VBbXFLN0I7RUFwMUtGOztJQW9Mb0IsY0FBYztJQUNkLFdBQVc7RUFvcUs3QjtBQUNGOztBQTExS0E7RUEwTDBCLG1CQUFtQjtBQW9xSzdDOztBQTkxS0E7RUE2TFkseUJBQXlCO0VBQ3pCLGtCQUFrQjtFQUNsQixjRTNZTztFRjRZUCxnQkFBZ0I7QUFxcUs1Qjs7QUU1aUxRO0VGdU1SO0lBcU1ZLHNCQUFzQjtFQXFxS2hDO0VBMTJLRjtJQXdNWSxrQkFBa0I7RUFxcUs1QjtBQUNGOztBRXJqTFE7RUZ1TVI7SUE2TXNCLFdBQVc7RUFzcUsvQjtFQW4zS0Y7SUE4TTBCLFlBQVk7RUF3cUtwQztBQUNGOztBRTlqTFE7RUZ1TVI7SUFvTmdCLHNCQUFzQjtFQXdxS3BDO0VBNTNLRjtJQXVOZ0Isa0JBQWtCO0lBQ2xCLGNBQWM7RUF3cUs1QjtBQUNGOztBRXhrTFE7RUZ1TVI7SUE4TlksZ0JBQWdCO0VBd3FLMUI7RUF0NEtGO0lBK05zQixjQUFjO0lBQUUsV0FBVztFQTJxSy9DO0VBMTRLRjtJQWlPZ0Isc0JBQXNCO0lBQ3RCLGdCQUFnQjtJQUNoQixtQkFBbUI7SUFDbkIsd0JBQXdCO0lBQ3hCLDZCQUE2QjtJQUM3QixnQ0FBZ0M7RUE0cUs5QztBQUNGOztBQXZxS0E7RUFDSSxjQUFjO0FBMHFLbEI7O0FBM3FLQTtFQUlZLGFBQWE7QUEycUt6Qjs7QUEvcUtBO0VBUVEsZUFBZTtBQTJxS3ZCOztBQW5yS0E7RUFXUSxzQkFBc0I7RUFDdEIsYUFBYTtFQUNiLGVBQWU7RUFDZixrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLG1CQUFtQjtBQTRxSzNCOztBQTVyS0E7O0VBbUJZLHNCQUFzQjtFQUN0QixjQUFjO0VBQ2Qsd0JBQXdCO0FBOHFLcEM7O0FFdG5MUTtFRm1iUjtJQXdCWSxjQUFjO0lBQ2QsZUFBZTtFQWdyS3pCO0VBenNLRjs7SUE0QmdCLGNBQWM7SUFDZCxXQUFXO0VBaXJLekI7QUFDRjs7QUEvc0tBO0VBa0NRLGFBQWE7RUFDYixlQUFlO0VBQ2YsaUJBQWlCO0FBaXJLekI7O0FBcnRLQTtFQXNDWSxZQUFZO0VBQ1osMEJBQTBCO0VBQzFCLGtCQUFrQjtBQW1ySzlCOztBQTN0S0E7RUEyQ1ksaUJBQWlCO0FBb3JLN0I7O0FBL3RLQTtFQThDWSxZQUFZO0VBQ1osYUFBYTtFQUNiLG1CQUFtQjtFQUNuQix1QkFBdUI7QUFxcktuQzs7QUV6cExRO0VGbWJSO0lBb0RZLGNBQWM7RUF1ckt4QjtBQUNGOztBRS9wTFE7RUZtYlI7SUF3RGdCLHVCQUF1QjtFQXlyS3JDO0FBQ0Y7O0FBbHZLQTtFQTZEUSxhQUFhO0VBQ2IsZUFBZTtBQXlyS3ZCOztBQXZ2S0E7O0VBaUVZLHNCQUFzQjtFQUN0QixVQUFVO0FBMnJLdEI7O0FBN3ZLQTtFQXFFWSxtQkFBbUI7QUE0cksvQjs7QUFqd0tBO0VBd0VZLGdDQUFnQztBQTZySzVDOztBQXJ3S0E7RUEwRWdCLHNCQUFzQjtFQUN0QixlQUFlO0FBK3JLL0I7O0FBMXdLQTtFQStFWSwrQkFBK0I7QUErckszQzs7QUE5d0tBO0VBaUZnQixzQkFBc0I7RUFDdEIsZUFBZTtBQWlzSy9COztBRXRzTFE7RUZtYlI7O0lBd0ZnQixXQUFXO0VBaXNLekI7RUF6eEtGO0lBMEZxQixRQUFRO0VBa3NLM0I7RUE1eEtGO0lBMkZvQixRQUFRO0VBb3NLMUI7QUFDRjs7QUVudExRO0VGbWJSOztJQStGeUIsZUFBZTtFQXVzS3RDO0FBQ0Y7O0FBdnlLQTtFQW1HUSxrQkFBa0I7RUFDbEIseUVBQXlFO0VBQ3pFLHNCQUFzQjtBQXdzSzlCOztBQTd5S0E7RUF1R1ksYUFBYTtFQUNiLG1CQUFtQjtFQUNuQixXQUFXO0VBQ1gsaUJBQWlCO0FBMHNLN0I7O0FBcHpLQTtFQTZHMEIsbUJBQW1CO0FBMnNLN0M7O0FBeHpLQTtFQWdIWSx5QkFBeUI7RUFDekIsa0JBQWtCO0VBQ2xCLGNFMWlCTztFRjJpQlAsZ0JBQWdCO0FBNHNLNUI7O0FFbHZMUTtFRm1iUjtJQXdIWSxjQUFjO0lBQ2QsaUJBQWlCO0lBQ2pCLGdCQUFnQjtFQTRzSzFCO0FBQ0Y7O0FBeHNLQTtFQUVRLGtCQUFrQjtBQTBzSzFCOztBQTVzS0E7RUFLUSxjQUFjO0FBMnNLdEI7O0FBaHRLQTtFQVFpQixhQUFhO0FBNHNLOUI7O0FBcHRLQTtFQVVZLGFBQWE7QUE4c0t6Qjs7QUF4dEtBO0VBV29CLGdCQUFnQjtBQWl0S3BDOztBQTV0S0E7RUFlUSxhQUFhO0FBaXRLckI7O0FBaHVLQTtFQWtCUSxVQUFVO0FBa3RLbEI7O0FBcHVLQTtFQXFCZ0IsU0FBUztBQW10S3pCOztBQXh1S0E7RUF1Qm9CLDBCQUEwQjtFQUMxQixjRXZsQkw7QUY0eUxmOztBQTd1S0E7RUE0QmdCLGdCQUFnQjtBQXF0S2hDOztBQWp2S0E7RUFpQ1EsY0FBYztFQUNkLHVCQUF1QjtBQW90Sy9COztBQXR2S0E7RUFzQ29CLFdBQVc7RUFDWCxrQkFBa0I7QUFvdEt0Qzs7QUEzdktBO0VBMENvQixXQUFXO0FBcXRLL0I7O0FBL3ZLQTtFQThDd0IsaUJBQWlCO0FBcXRLekM7O0FBbndLQTtFQWtEb0IscUJBQXFCO0VBQ3JCLFlBQVk7RUFDWixXQUFXO0VBQ1gsaUJBQWlCO0VBQ2pCLHlCQUF5QjtFQUN6QixtQkVsbkJKO0VGbW5CSSx5QkVubkJKO0VGb25CSSxhQUFhO0FBcXRLakM7O0FBOXdLQTtFQStEUSxnQkFBZ0I7QUFtdEt4Qjs7QUFseEtBO0VBa0VRLFdBQVc7QUFvdEtuQjs7QUF0eEtBO0VBcUVRLGFBQWE7RUFDYixlQUFlO0FBcXRLdkI7O0FBM3hLQTs7Ozs7OztFQThFWSxZQUFZO0VBQ1osdUJBQXVCO0FBdXRLbkM7O0FBdHlLQTtFQWtGWSxZQUFZO0VBQ1osd0JBQXdCO0FBd3RLcEM7O0FFNzFMUTtFRmtqQlI7SUF1RmUsY0FBYztFQXl0SzNCO0VBaHpLRjs7SUEwRlksU0FBUztJQUNULFdBQVc7RUEwdEtyQjtFQXJ6S0Y7SUE2Rm1CLGdCQUFnQjtFQTJ0S2pDO0FBQ0Y7O0FFMzJMUTtFRmtqQlI7SUFrR2dCLFdBQVc7RUE0dEt6QjtBQUNGOztBQXZ0S0E7RUFDSSxjQUFjO0VBQ2QsYUFBYTtFQUNiLGVBQWU7RUFDZixtQkFBbUI7RUFDbkIsUUFBUTtBQTB0S1o7O0FBL3RLQTtFQU9RLHFCQUFxQjtFQUNyQixpQkFBaUI7RUFDakIseUJFdHJCZ0I7RUZ1ckJoQix5QkV2ckJnQjtBRm01THhCOztBQXR1S0E7RUFZWSw0QkFBNEI7RUFDNUIsZ0NFNXFCTztBRjA0TG5COztBRXI0TFE7RUY0cUJSO0lBR1ksY0FBYztJQUNkLGlCQUFpQjtJQUNqQixnQkFBZ0I7RUEydEsxQjtBQUNGOztBQXZ0S0E7RUFDSSxnQkFBZ0I7QUEwdEtwQjs7QUEzdEtBO0VBR1EsYUFBYTtFQUNiLGtCQUFrQjtBQTR0SzFCOztBQWh1S0E7RUFNWSx5QkFBeUI7RUFDekIsZUFBZTtBQTh0SzNCOztBRTM1TFE7RUZzckJSO0lBU2dCLGVBQWU7RUFpdUs3QjtBQUNGOztBQTN1S0E7RUFhWSxjRWh0Qkc7RUZpdEJILGdCQUFnQjtBQWt1SzVCOztBRXQ2TFE7RUZzckJSO0lBZ0JnQixjQUFjO0VBcXVLNUI7QUFDRjs7QUF0dktBO0VBcUJRLHNCQUFzQjtFQUN0QixhQUFhO0VBQ2IsdUJBQXVCO0VBQ3ZCLG1CQUFtQjtFQUNuQixhQUFhO0VBQ2IsV0FBVztFQUNYLGdCQUFnQjtFQUNoQixrQkFBa0I7RUFDbEIsZUFBZTtFQUNmLGtCQUFrQjtBQXF1SzFCOztBQW53S0E7RUFnQ1ksc0JBQXNCO0VBQ3RCLGNFcHVCRztFRnF1QkgsZUFBZTtFQUNmLGlCQUFpQjtFQUNqQix5QkFBeUI7QUF1dUtyQzs7QUEzd0tBO0VBdUNZLGdCQUFnQjtBQXd1SzVCOztBQS93S0E7RUEwQ1ksa0JBQWtCO0VBQ2xCLHNCQUFzQjtBQXl1S2xDOztBRTE4TFE7RUZzckJSO0lBOENZLGFBQWE7RUEydUt2QjtFQXp4S0Y7SUErQ21CLGlCQUFpQjtFQTZ1S2xDO0VBNXhLRjtJQWdEa0IsV0FBVztJQUFFLFlBQVk7RUFndkt6QztBQUNGOztBQWp5S0E7RUFxRFksd0NBQStCO0VBQy9CLDJDQUFrQztBQWd2SzlDOztBQXR5S0E7RUF5RFksZUFBZTtBQWl2SzNCOztBQTF5S0E7RUE0RFksbUJBQW1CO0FBa3ZLL0I7O0FBOXlLQTtFQThEZ0IsaUJBQWlCO0VBQ2pCLGtCQUFrQjtBQW92S2xDOztBRXorTFE7RUZzckJSO0lBaUVvQixpQkFBaUI7RUF1dktuQztBQUNGOztBQXp6S0E7RUFxRWdCLGFBQWE7RUFDYiw4QkFBOEI7RUFDOUIsZUFBZTtBQXd2Sy9COztBQS96S0E7RUEwRXdCLFVBQVU7QUF5dktsQzs7QUV6L0xRO0VGc3JCUjtJQTRFNEIsV0FBVztFQTR2S3JDO0FBQ0Y7O0FBejBLQTtFQWdGd0IsVUFBVTtBQTZ2S2xDOztBRW5nTVE7RUZzckJSO0lBa0Y0QixXQUFXO0VBZ3dLckM7QUFDRjs7QUFuMUtBO0VBc0Z3QixrQkFBa0I7QUFpd0sxQzs7QUF2MUtBO0VBNkZnQixnQkFBZ0I7QUE4dktoQzs7QUVqaE1RO0VGc3JCUjtJQStGb0IsaUJBQWlCO0VBaXdLbkM7QUFDRjs7QUFqMktBO0VBa0dvQixnQkFBZ0I7QUFtd0twQzs7QUFyMktBO0VBcUdvQixpQkFBaUI7QUFvd0tyQzs7QUF6MktBO0VBeUdnQixrQkFBa0I7QUFvd0tsQzs7QUE3MktBO0VBMkdvQixPQUFPO0FBc3dLM0I7O0FBajNLQTtFQTZHd0Isa0JBQWtCO0FBd3dLMUM7O0FBcjNLQTtFQWlIb0Isa0JBQWtCO0VBQ2xCLE1BQU07RUFBRSxRQUFRO0VBQ2hCLGdCQUFnQjtFQUNoQixhQUFhO0VBQ2IsbUJBQW1CO0FBeXdLdkM7O0FFcGpNUTtFRnNyQlI7SUF1SHdCLGdCQUFnQjtFQTR3S3RDO0FBQ0Y7O0FBcDRLQTtFQXlIMEIsc0JBQXNCO0FBK3dLaEQ7O0FBeDRLQTtFQThIWSxnQkFBZ0I7QUE4d0s1Qjs7QUE1NEtBO0VBZ0lnQixtQkVuMEJEO0VGbzBCQyxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxtQkFBbUI7QUFneEtuQzs7QUFwNUtBO0VBd0lZLGFBQWE7QUFneEt6Qjs7QUF4NUtBO0VBMElnQixjRTcwQkQ7QUYrbE1mOztBQTU1S0E7RUE0SW9CLGdDRXYwQkQ7QUYybE1uQjs7QUFoNktBO0VBaUpZLGFBQWE7RUFDYixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLHVCQUF1QjtFQUN2QixrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLG1CQUFtQjtBQW14Sy9COztBQTE2S0E7RUEySmdCLGlCQUFpQjtBQW14S2pDOztBQTk2S0E7RUFnS2dCLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsU0FBUztFQUNULG1CQUFtQjtBQWt4S25DOztBQXI3S0E7RUFxS29CLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsZUFBZTtFQUNmLHVCQUF1QjtFQUN2QixTQUFTO0FBb3hLN0I7O0FBNzdLQTtFQThLWSxtQkFBbUI7QUFteEsvQjs7QUFqOEtBO0VBa0xRLFdBQVc7RUFDWCxvQ0FBMkI7RUFDM0IsYUFBYTtFQUNiLG1CQUFtQjtBQW14SzNCOztBQXg4S0E7RUF3TGdCLGtCQUFrQjtBQW94S2xDOztBQTU4S0E7RUEyTGdCLFVBQVU7QUFxeEsxQjs7QUV0b01RO0VGc3JCUjtJQTZMb0IsV0FBVztFQXd4SzdCO0FBQ0Y7O0FFNW9NUTtFRnNyQlI7SUFpTWdCLGVBQWU7RUEweEs3QjtBQUNGOztBQTU5S0E7RUFzTVEsYUFBYTtBQTB4S3JCOztBQWgrS0E7RUF5TVEsYUFBYTtFQUNiLG1CQUFtQjtBQTJ4SzNCOztBQXIrS0E7RUE0TVksY0V2NEJPO0VGdzRCUCxpQkFBaUI7RUFDakIsbUJBQW1CO0FBNnhLL0I7O0FBMytLQTtFQStNdUIsY0FBYztBQWd5S3JDOztBQS8rS0E7RUFnTnlCLGNBQWM7QUFteUt2Qzs7QUFuL0tBO0VBb05RLG1CQUFtQjtBQW15SzNCOztBQXYvS0E7RUFzTlksa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxpQkFBaUI7RUFDakIsaUJBQWlCO0VBQ2pCLHlCQUF5QjtBQXF5S3JDOztBRXJyTVE7RUZzckJSO0lBaU9vQixzQkFBc0I7RUFteUt4QztFQXBnTEY7SUFxT2dCLGtCQUFrQjtFQWt5S2hDO0VBdmdMRjtJQXdPZ0IsYUFBYTtJQUNiLHNCQUFzQjtJQUN0QixtQkFBbUI7SUFDbkIsZUFBZTtFQWt5SzdCO0VBN2dMRjtJQTZPb0IsWUFBWTtJQUNaLFlBQVk7SUFDWixrQkFBa0I7RUFteUtwQztFQWxoTEY7SUFvUFkscUJBQXFCO0VBaXlLL0I7RUFyaExGO0lBdVBZLGFBQWE7RUFpeUt2QjtFQXhoTEY7SUEwUFksa0JBQWtCO0lBQ2xCLHlCRTc3QkM7SUY4N0JELFdBQVc7RUFpeUtyQjtBQUNGOztBRXB0TVE7RUZzckJSO0lBaVFZLFlBQVk7RUFreUt0QjtBQUNGOztBRTF0TVE7RUZzckJSO0lBc1FZLGNBQWM7SUFDZCxhQUFhO0lBQ2Isa0JBQWtCO0lBQ2xCLGlCQUFpQjtJQUNqQixvQkFBb0I7RUFteUs5QjtBQUNGOztBQS94S0E7RUFFUSxZQUFZO0FBaXlLcEI7O0FBbnlLQTtFQUlZLGNFOThCTztFRis4QlAsZ0JBQWdCO0VBQ2hCLG1CQUFtQjtBQW15Sy9COztBQXp5S0E7RUFTWSxnQkFBZ0I7RUFDaEIsY0VwOUJPO0VGcTlCUCxlQUFlO0FBb3lLM0I7O0FBL3lLQTtFQWNZLGVBQWU7RUFDZixjRXIrQkU7QUYwd01kOztBQXB6S0E7RUFrQlksYUFBYTtFQUNiLHVCQUF1QjtFQUN2QixRQUFRO0FBc3lLcEI7O0FBMXpLQTtFQXVCWSxnQkFBZ0I7RUFDaEIsY0FBYztBQXV5SzFCOztBQS96S0E7RUEwQmdCLGNFNStCRDtBRnF4TWY7O0FBbjBLQTtFQTRCb0IsY0FBMEI7QUEyeUs5Qzs7QUF2MEtBO0VBa0NZLG1CQUFtQjtBQXl5Sy9COztBQTMwS0E7RUFxQ1EsdUJBQXVCO0FBMHlLL0I7O0FFcHhNUTtFRnE4QlI7SUF1Q1ksd0JBQXdCO0VBNnlLbEM7QUFDRjs7QUF6eUtBO0VBQ0ksZ0JBQWdCO0FBNHlLcEI7O0FBN3lLQTtFQUVZLHlCQUF5QjtBQSt5S3JDOztBQWp6S0E7RUFHMkIsNEJBQTRCO0FBa3pLdkQ7O0FBcnpLQTtFQUkwQiw2QkFBNkI7QUFxekt2RDs7QUF6ektBO0VBS1Msd0NBQXdDO0FBd3pLakQ7O0FBN3pLQTtFQU1TLDJCQUEyQjtBQTJ6S3BDOztBQWowS0E7RUFRUSx5Q0FBeUM7RUFDekMsMkNBQTJDO0VBQzNDLDJCQUEyQjtBQTZ6S25DOztBQXYwS0E7RUFXdUIsMENBQTBDO0FBZzBLakU7O0FBNXpLQTtFQUNJLGtCQUFrQjtFQUNsQixpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQixjQUFjO0VBQ2QsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQiw4QkFBOEI7RUFDOUIsZUFBZTtFQUNmLG1CQUFtQjtBQSt6S3ZCOztBQXowS0E7RUFZUSxhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLGlCQUFpQjtBQWkwS3pCOztBQS8wS0E7RUFnQlksV0FBVztBQW0wS3ZCOztBQW4xS0E7RUFpQlEsV0FBVztBQXMwS25COztBQW4wS0E7RUFDSSxhQUFhO0VBQ2IsdUJBQXVCO0VBQ3ZCLGdCQUFnQjtFQUNoQixzQkFBc0I7RUFDdEIseUNBQStCO0FBczBLbkM7O0FBMzBLQTtFQU9RLG1CQUFtQjtFQUNuQixpQkFBaUI7RUFDakIsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtBQXcwS3pCOztBQWwxS0E7RUFhUSxrQkFBa0I7RUFDbEIsWUFBWTtBQXkwS3BCOztBQXIwS0E7O0VBR1Esc0JBQXNCO0VBRXRCLHlCQUF5QjtFQUN6QixpQkFBaUI7RUFDakIsWUFBWTtFQUNaLGVBQWU7QUFzMEt2Qjs7QUE5MEtBOztFQVdRLG9CQUFvQjtFQUNwQixRQUFRO0VBQ1Isb0JBQW9CO0VBQ3BCLFdBQVc7RUFDWCxtQkFBbUI7RUFDbkIsZ0JBQWdCO0VBQ2hCLFlBQVk7RUFDWix5Q0FBK0I7QUF3MEt2Qzs7QUFwMEtBO0VBQ0ksc0JBQXNCO0VBQ3RCLGNFNWtDYTtFRjZrQ2IsdUJBQXVCO0VBQ3ZCLGdCQUFnQjtFQUNoQixXQUFXO0FBdTBLZjs7QUE1MEtBO0VBT1EsV0FBVztFQUNYLGVBQWU7QUF5MEt2Qjs7QUFqMUtBO0VBV1Esa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQixrQkFBa0I7QUEwMEsxQjs7QUF2MUtBO0VBZ0JRLGFBQWE7RUFDYixtQkFBbUI7QUEyMEszQjs7QUE1MUtBO0VBbUJZLGtCQUFrQjtBQTYwSzlCOztBQWgyS0E7RUFzQlksWUFBWTtBQTgwS3hCOztBQXAyS0E7RUF5QlksT0FBTztBQSswS25COztBRXA2TVE7RUY0akNSO0lBOEJZLGFBQWE7RUErMEt2QjtFQTcyS0Y7SUFpQ1ksY0FBYztFQSswS3hCO0FBQ0Y7O0FBMzBLQTs7Y0ErMEtjO0FBMzBLVjtFQUdZLGtCQUFrQjtFQUNsQixxQkFBcUI7QUEyMEtyQzs7QUEvMEtJO0VBTWdCLFdBQVc7RUFBRSxtQkVubkNuQjtFRm1uQ3dDLHFCQUFxQjtFQUFFLHNCQUFzQjtFQUMvRSxXQUFXO0VBQUUsWUFBWTtFQUFFLGtCQUFrQjtBQWsxS2pFOztBQXoxS0k7RUFXb0IsV0FBVztFQUFFLG1CRTluQ3RCO0VGOG5DMkMscUJBQXFCO0VBQUUsc0JBQXNCO0VBQy9FLFdBQVc7RUFBRSxZQUFZO0VBQUUsa0JBQWtCO0FBdTFLckU7O0FBbjJLSTtFQWdCd0IsV0FBVztFQUFFLG1CRTduQzNCO0VGNm5DZ0QscUJBQXFCO0VBQUUsc0JBQXNCO0VBQy9FLFdBQVc7RUFBRSxZQUFZO0VBQUUsa0JBQWtCO0FBNDFLekU7O0FBNzJLSTtFQXVCWSxjRTVvQ0Q7QUZzK01mOztBQWozS0k7RUF5QmdCLGNFeG9DSjtBRm8rTWhCIiwiZmlsZSI6ImFwcC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5cbiBodG1sIHtcbiAgICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xuICB9XG4gIFxuICAvKiBTZWN0aW9uc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICBcbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAgICovXG4gIFxuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBSZW5kZXIgdGhlIGBtYWluYCBlbGVtZW50IGNvbnNpc3RlbnRseSBpbiBJRS5cbiAgICovXG4gIFxuICBtYWluIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICBcbiAgLyoqXG4gICAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAgICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAgICovXG4gIFxuICBoMSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbWFyZ2luOiAwLjY3ZW0gMDtcbiAgfVxuICBcbiAgLyogR3JvdXBpbmcgY29udGVudFxuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICBcbiAgLyoqXG4gICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gICAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICAgKi9cbiAgXG4gIGhyIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICAgIGhlaWdodDogMDsgLyogMSAqL1xuICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG4gIH1cbiAgXG4gIC8qKlxuICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuICBcbiAgcHJlIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xuICB9XG4gIFxuICAvKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICBcbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICovXG4gIFxuICBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICBcbiAgLyoqXG4gICAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gICAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gICAqL1xuICBcbiAgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xuICB9XG4gIFxuICAvKipcbiAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAgICovXG4gIFxuICBiLFxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuICBcbiAgY29kZSxcbiAga2JkLFxuICBzYW1wIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xuICB9XG4gIFxuICAvKipcbiAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuICBcbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICB9XG4gIFxuICAvKipcbiAgICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gICAqIGFsbCBicm93c2Vycy5cbiAgICovXG4gIFxuICBzdWIsXG4gIHN1cCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuICBcbiAgc3ViIHtcbiAgICBib3R0b206IC0wLjI1ZW07XG4gIH1cbiAgXG4gIHN1cCB7XG4gICAgdG9wOiAtMC41ZW07XG4gIH1cbiAgXG4gIC8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiAgXG4gIC8qKlxuICAgKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuICAgKi9cbiAgXG4gIGltZyB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICB9XG4gIFxuICAvKiBGb3Jtc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICBcbiAgLyoqXG4gICAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICAgKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gICAqL1xuICBcbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvKiAxICovXG4gICAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgICBtYXJnaW46IDA7IC8qIDIgKi9cbiAgfVxuICBcbiAgLyoqXG4gICAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAgKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICAgKi9cbiAgXG4gIGJ1dHRvbixcbiAgaW5wdXQgeyAvKiAxICovXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICAgKi9cbiAgXG4gIGJ1dHRvbixcbiAgc2VsZWN0IHsgLyogMSAqL1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIFxuICAvKipcbiAgICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICovXG4gIFxuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICAgKi9cbiAgXG4gIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICBcbiAgLyoqXG4gICAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAgICovXG4gIFxuICBidXR0b246LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xuICB9XG4gIFxuICAvKipcbiAgICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICAgKi9cbiAgXG4gIGZpZWxkc2V0IHtcbiAgICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG4gIH1cbiAgXG4gIC8qKlxuICAgKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAgKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gICAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuICBcbiAgbGVnZW5kIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gICAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICAgIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICAgIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG4gIH1cbiAgXG4gIC8qKlxuICAgKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICAgKi9cbiAgXG4gIHByb2dyZXNzIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAgICovXG4gIFxuICB0ZXh0YXJlYSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cbiAgXG4gIC8qKlxuICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAgICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICAgKi9cbiAgXG4gIFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gIFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgICBwYWRkaW5nOiAwOyAvKiAyICovXG4gIH1cbiAgXG4gIC8qKlxuICAgKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gICAqL1xuICBcbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgXG4gIC8qKlxuICAgKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gICAqL1xuICBcbiAgW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbiAgfVxuICBcbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAgICovXG4gIFxuICBbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB9XG4gIFxuICAvKipcbiAgICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICAgKi9cbiAgXG4gIDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gICAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xuICB9XG4gIFxuICAvKiBJbnRlcmFjdGl2ZVxuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICBcbiAgLypcbiAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAgICovXG4gIFxuICBkZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICBcbiAgLypcbiAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICAgKi9cbiAgXG4gIHN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgfVxuICBcbiAgLyogTWlzY1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICBcbiAgLyoqXG4gICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAgICovXG4gIFxuICB0ZW1wbGF0ZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBcbiAgLyoqXG4gICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICAgKi9cbiAgXG4gIFtoaWRkZW5dIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gICIsIkBpbXBvcnQgXCJub3JtYWxpemVcIjtcbkBpbXBvcnQgXCJzZXR0aW5nc1wiO1xuQGltcG9ydCBcImNvbW1vblwiO1xuQGltcG9ydCBcIm1vZHVsZXMvYnV0dG9uc1wiO1xuQGltcG9ydCBcIm1vZHVsZXMvdGl0bGVzXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9mb3JtXCI7XG5AaW1wb3J0IFwibW9kdWxlcy90YWJsZVwiO1xuQGltcG9ydCBcIm1vZHVsZXMvbW9kYWxcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2luZGljYXRldXJzXCI7XG5AaW1wb3J0IFwiaGVscGVyc1wiO1xuXG5AaW1wb3J0IFwiaGVhZGVyXCI7XG5AaW1wb3J0IFwibWVudVwiO1xuQGltcG9ydCBcImZvb3RlclwiO1xuXG5AaW1wb3J0IFwic2ltdWxhdGV1clwiO1xuXG4vKiogRU5USVRFUyAqKi9cbkBpbXBvcnQgXCJlbnRpdGllcy9hY3Rpdml0ZVwiO1xuQGltcG9ydCBcImVudGl0aWVzL2FjdHVhbGl0ZVwiO1xuXG4vKiogQURNSU5TICoqL1xuQGltcG9ydCBcImFkbWluL2FkbWluLXBhbmVsXCI7XG5AaW1wb3J0IFwiYWRtaW4vY2FsY3VsYXRldXJcIjtcblxuKntcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5odG1sIHtcbiAgICAtLXJlY2FwLWdyZWVuOiAjQzBEMDJDO1xuICAgIC0tcmVjYXAtZ3JleTogI0IxQjFCMTtcbiAgICAtLXJlY2FwLXZpb2xldDogIzJBMDczQztcbiAgICAtLXJlY2FwLW9yYW5nZTogI0ZGNzUwNztcbiAgICAtLXJlY2FwLWJsdWU6ICMyOTMwNkY7XG4gICAgLS1yZWNhcC1kYW5nZXI6ICNjZjE2MTk7XG59XG5cbiNzaXRlLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBAaW5jbHVkZSBicmVha1BvaW50KCRicmVha1BvaW50TWVudSkge1xuICAgICAgICBkaXNwYWx5OiBibG9jaztcbiAgICB9XG59XG5cbiNtZW51LXNpZGViYXIge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgYmFja2dyb3VuZDogI0ZCRkJGQjtcbiAgICAubWVudV9fcm93IHtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFQkVCRUI7XG4gICAgICAgICYtLWFjdGl2ZSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgICAmLS1hY3RpdmU6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTsgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICB3aWR0aDogNHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZmxleCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtQb2ludCgkYnJlYWtQb2ludE1lbnUpIHsgZGlzcGxheTogbm9uZTsgfVxufVxuXG4ubWVudS1jb25uZWN0ZWQge1xuICAgIGJhY2tncm91bmQ6ICNGNEY0RjQ7XG4gICAgLmJhbm5lci1sb2dvIHsgXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoJGJyZWFrUG9pbnRNZW51KSB7IGRpc3BsYXk6IGJsb2NrOyB9IFxuICAgIH1cbiAgICAubWVudSB7IFxuICAgICAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgXG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgIG5hdiNtZW51UmVzcG9uc2l2ZSB7XG4gICAgICAgICogeyBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG4gICAgICAgIC5tZW51LXVzZXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNGQkZCRkI7XG4gICAgICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yZW07IFxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICZfX2xpbmsge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tZW51LXVzZXIgLmZsZXgge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtQb2ludCgkYnJlYWtQb2ludE1lbnUpIHtcbiAgICAgICAgbmF2I21lbnVSZXNwb25zaXZlIHsgXG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7IFxuICAgICAgICAgICAgLmFkbWluYmFyIH4gI3NpdGUtY29udGFpbmVyICYgeyB0b3A6IDUwcHg7IH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuI2Z1bGxwYWdlIHsgXG4gICAgZmxleDogMTsgXG4gICAgQGluY2x1ZGUgYnJlYWtQb2ludCgkYnJlYWtQb2ludE1lbnUpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfSBcbn1cblxuLmFkbWluYmFyIHtcbiAgICAvLyBwb3NpdGlvbjogZml4ZWQ7XG4gICAgLy8gdG9wOiAwOyByaWdodDogMDtcbiAgICBwYWRkaW5nOiAwLjNlbTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgei1pbmRleDogMTA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIC5idG4tYWRtaW4ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG59XG5cbi5tb2RlLXRlc3Qge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICByaWdodDogMDsgYm90dG9tOiAwOyBsZWZ0OiAwO1xuICAgIHBhZGRpbmc6IDEycHggMDtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgYmFja2dyb3VuZDogY3JpbXNvbjtcbiAgICB6LWluZGV4OiA5OTtcbn1cblxuLmVuY2FydHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICBib3gtc2hhZG93OiAwIDRweCAxMHB4IHJnYmEoIzAwMCwgLjEpO1xuICAgIHBhZGRpbmc6IDQwcHg7XG4gICAgbWFyZ2luOiAzMHB4IDYwcHg7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMTIwcHgpO1xuICAgIG1heC13aWR0aDogY2FsYyg0MDBweCk7XG4gICAgJl9fbGlzdHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJsb2NrOiAzMHB4O1xuICAgIH1cbiAgICBoM3tcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBjb2xvcjogJGRhcmstYmx1ZTtcbiAgICAgICAgbWFyZ2luLWJsb2NrOiAzMHB4O1xuICAgICAgICBmb250LXNpemU6IDEuNGVtO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgIH1cbiAgICAubnVtYmVye1xuICAgICAgICB3aWR0aDogNTVweDtcbiAgICAgICAgaGVpZ2h0OiA1NXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW47XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAxLjhlbTtcbiAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgfVxuICAgIGxpe1xuICAgICAgICBjb2xvcjogJGRhcmstYmx1ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAmOjpiZWZvcmV7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogLTQwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIvaW1hZ2VzL3BpY3RvLXBsdXMuc3ZnXCIpIGNlbnRlciBsZWZ0IC8gY29udGFpbiBuby1yZXBlYXQ7XG4gICAgICAgIH1cbiAgICAgICAgcHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi0tY2hyb25vbG9naWVlIHtcbiAgICAgICAgbWFyZ2luOiAzMHB4O1xuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSA2MHB4KTtcbiAgICAgICAgaDMge1xuICAgICAgICAgICAgbWFyZ2luLWJsb2NrOiAxNXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoMTAyNCkge1xuICAgICAgICBtYXJnaW46IDMwcHggMjBweDtcbiAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gNDBweCk7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtQb2ludCg2NjApIHtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLmRpdlBhZ2UuZGl2V2VsY29tZSB7XG4gICAgLnNpbXVsYXRldXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGNvbG9yOiAjZmZmOyAgICAgICAgXG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi9pbWFnZXMvQkctYWNjdWVpbC5qcGdcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDhlbSAwO1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgfVxuICAgICAgICAuY2VydGlmaWNhdHMge1xuICAgICAgICAgICAgcGFkZGluZzogMmVtIDRlbSAyZW0gMmVtO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICAgICAgcmlnaHQ6IDA7IGJvdHRvbTogNGVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDM3cHg7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAzN3B4O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAtMTRweCAxM3B4IHJnYmEoIzAwMCwgLjI5KTtcbiAgICAgICAgfVxuICAgICAgICBoMSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuNGVtO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IC40ZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDRyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7IGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCg2ODApIHsgZm9udC1zaXplOiAyLjVyZW07IH1cbiAgICAgICAgfVxuICAgICAgICBkaXYuZGVzY3JpcHRpb24geyBtYXJnaW4tYm90dG9tOiAyZW07IH1cbiAgICB9XG4gICAgLnByZXNlbnRhdGlvbiB7XG4gICAgICAgIHBhZGRpbmc6IDhlbSAwO1xuICAgICAgICAucm93IHtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICB9XG4gICAgICAgIC5sZWZ0LFxuICAgICAgICAucmlnaHQge1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIH1cbiAgICAgICAgLmxlZnQgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgICAgaW1nIHsgXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IFxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIC5iYXJyZS1idG5zIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICAuZW50aXR5LmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDNlbTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha1BvaW50KDEwMjQpIHtcbiAgICAgICAgICAgIC5yb3cgeyBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgICAgICAgLmxlZnQsXG4gICAgICAgICAgICAucmlnaHQge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmJhbmRlYXUge1xuICAgICAgICBwYWRkaW5nOiA4ZW0gMDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi9pbWFnZXMvQkctZ3JhdHVpdC1jb250YWN0LmpwZ1wiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbiAgICB9XG4gICAgLnNlY3Rpb24tdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgZm9udC1zaXplOiAyLjJyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoNjgwKSB7IGZvbnQtc2l6ZTogMS42cmVtOyB9XG4gICAgfVxuICAgIC5hY3Rpdml0ZXMge1xuICAgICAgICBwYWRkaW5nOiA0ZW0gMDtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiL2ltYWdlcy9CRy12b3VzZXRlcy5qcGdcIikgdG9wIGxlZnQ7XG4gICAgfVxuICAgIC5hY3R1YWxpdGVzIHtcbiAgICAgICAgcGFkZGluZzogNGVtIDA7XG4gICAgfVxuICAgIC5zb2x1dGlvbnN7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1ZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1ZW07XG4gICAgICAgIC5yb3cge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDQwcHggMDtcbiAgICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMjBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygyNSUgLSA0MHB4KTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm5hbWUgeyBcbiAgICAgICAgICAgIGNvbG9yOiAkZGFyay1ibHVlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB9XG4gICAgICAgIGltZyB7IFxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyBcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAuMnM7XG4gICAgICAgIH1cbiAgICAgICAgLmltYWdlLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICA+IGEgeyBcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7IFxuICAgICAgICAgICAgICAgICY6aG92ZXIgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEwKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCgxMDI0KSB7XG4gICAgICAgICAgICAucm93ID4gZGl2IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSA0MHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha1BvaW50KDU0MCkge1xuICAgICAgICAgICAgLm5hbWUgeyBmb250LXNpemU6IDAuOXJlbTsgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5zdWJ2ZW50aW9ucyB7XG4gICAgICAgIHBhZGRpbmc6IDRlbSAwO1xuICAgICAgICAucm93IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgLmxlZnQgeyBcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDY1JSAtIDQwcHgpOyBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5yaWdodCB7IHdpZHRoOiAzNSU7IH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuZWNvbWV0aG9kZXMge1xuICAgICAgICBwYWRkaW5nOiA2MHB4IDA7XG4gICAgICAgIC5yb3cge1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTUwcHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC01MHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgICAgICAgIC5sZWZ0LFxuICAgICAgICAgICAgLnJpZ2h0IHtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCA1MHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEwMHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5yaWdodCBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0NDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoMTAyNCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAubGVmdCxcbiAgICAgICAgICAgICAgICAucmlnaHQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDIwcHggMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5hbGlnbi1pdGVtcy1jZW50ZXIgeyBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLmV4cGVydGlzZXtcbiAgICAgICAgaDJ7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgY29sb3I6ICRkYXJrLWJsdWU7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuMmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoMTI3NSl7XG4gICAgICAgIC5iYW5kZWF1e1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgfVxuICAgICAgICAuc29sdXRpb25ze1xuICAgICAgICAgICAgcGFkZGluZy1ibG9jazogNGVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoOTAwKXtcbiAgICAgICAgLnNpbXVsYXRldXJ7XG4gICAgICAgICAgICAuY29udGVudHsgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgICAgIC5jZXJ0aWZpY2F0c3sgYm90dG9tOiAtNmVtOyB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtQb2ludCg3MDApe1xuICAgICAgICAuc3VidmVudGlvbnN7XG4gICAgICAgICAgICAucm93e1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYm90dG9te1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyZW0gMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha1BvaW50KDQ4MCl7XG4gICAgICAgIC5zaW11bGF0ZXVye1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIC5jb250ZW50eyBwYWRkaW5nOiA0ZW0gMDsgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgICAgIC5jZXJ0aWZpY2F0cyB7XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAyMHB4IDMwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAzN3B4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAzN3B4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZGl2UGFnZS5kaXZQcmVzZW50YXRpb24ge1xuICAgIHBhZGRpbmc6IDRlbSAwO1xuICAgIGRpdi5jb250YWluZXJ7XG4gICAgICAgIGRpdi5tYXJnaW4tdntcbiAgICAgICAgICAgIG1hcmdpbjogNWVtIDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaDJ7XG4gICAgICAgIG1hcmdpbi10b3A6IDJlbTtcbiAgICB9XG4gICAgLnJvdyB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC01MHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC01MHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgICAubGVmdCxcbiAgICAgICAgLnJpZ2h0IHtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICBtYXJnaW46IDAgNTBweDtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEwMHB4KTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha1BvaW50KDEwMjQpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgLmxlZnQsXG4gICAgICAgICAgICAucmlnaHQge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5yb3ctdHJhdmF1eCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgbWFyZ2luLXRvcDogMTAwcHg7XG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIG1hcmdpbjogMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDMzLjMzJSAtIDQwcHgpO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIC5uYW1lIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB9XG4gICAgICAgIC5pbWctY29udGFpbmVyIHtcbiAgICAgICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCgxMDI0KSB7XG4gICAgICAgICAgICBtYXJnaW46IDIwcHggMDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha1BvaW50KDU0MCkge1xuICAgICAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDQwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5jb250YWluZXItZnVsbCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgLmxlZnQsXG4gICAgICAgIC5yaWdodCB7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgfVxuICAgICAgICAubGVmdCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRjBGMEYwO1xuICAgICAgICB9XG4gICAgICAgIC5yaWdodCB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDUwJSAtIDgxMHB4KTtcbiAgICAgICAgICAgICYtcmlnaHQgeyBcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgNTBweDsgXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmxlZnQge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKDUwJSAtIDgxMHB4KTtcbiAgICAgICAgICAgICYtbGVmdCB7IFxuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCA1MHB4OyBcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha1BvaW50KDEwMjQpIHtcbiAgICAgICAgICAgIC5sZWZ0LFxuICAgICAgICAgICAgLnJpZ2h0IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5yaWdodCB7IG9yZGVyOiAwOyB9XG4gICAgICAgICAgICAubGVmdCB7IG9yZGVyOiAxOyB9XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCg4MDApIHtcbiAgICAgICAgICAgIC5yaWdodC1yaWdodCxcbiAgICAgICAgICAgIC5sZWZ0LWxlZnQgeyBwYWRkaW5nOiAwIDIwcHg7IH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAucHJvamV0LWNlZSB7XG4gICAgICAgIHBhZGRpbmc6IDQwcHggMjBweDtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiL2ltYWdlcy9CRy1ncmF0dWl0LWNvbnRhY3QuanBnXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBoMiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjJyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmFsaWduLWl0ZW1zLWNlbnRlciB7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAuZXhwZXJ0aXNle1xuICAgICAgICBoMntcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBjb2xvcjogJGRhcmstYmx1ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi4yZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtQb2ludCg2ODApIHtcbiAgICAgICAgLmJ0bnMgLmJ0biB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCBhdXRvO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAzODBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmRpdlBhZ2UuZGl2Q29udGFjdCB7XG4gICAgaDEsIGgye1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgfVxuICAgIGgye1xuICAgICAgICBmb250LXNpemU6IDJlbTtcbiAgICB9XG4gICAgZGl2LnJncGQge1xuICAgICAgICBsZWdlbmQgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgIC5mb3JtLWNoZWNrIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBsYWJlbCB7IG1hcmdpbi1sZWZ0OiA1cHg7IH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAucm93IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gICAgLmNvb3Jkc3tcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgLmRlc2NyaXB0aW9ue1xuICAgICAgICAgICAgcHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgPmE6bm90KC5idG4pe1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmVlbjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwID5zdHJvbmd7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0gICBcbiAgICAuY29udGFjdCB7XG4gICAgICAgIG1hcmdpbjogMCAyMHB4O1xuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSA0MHB4KTtcbiAgICAgICAgZm9ybXtcbiAgICAgICAgICAgIGRpdi5mb3JtLWdyb3Vwe1xuICAgICAgICAgICAgICAgICY6bnRoLWxhc3Qtb2YtdHlwZSgxKXtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5lbnRyZXByaXNle1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5tZXNzYWdle1xuICAgICAgICAgICAgICAgICAgICB0ZXh0YXJlYXtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGJ1dHRvblt0eXBlPVwic3VibWl0XCJde1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDFlbTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkb3JhbmdlO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkb3JhbmdlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDFlbSAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAubWFwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG4gICAgaWZyYW1lIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIGZvcm0ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIC5ub20sXG4gICAgICAgIC5wcmVub20sXG4gICAgICAgIC5lbnRyZXByaXNlLFxuICAgICAgICAuZW1haWwsXG4gICAgICAgIC5waG9uZSxcbiAgICAgICAgLmFjdGl2aXRlLFxuICAgICAgICAucHJvamV0IHtcbiAgICAgICAgICAgIG1hcmdpbjogMTBweDtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xuICAgICAgICB9XG4gICAgICAgIC5tZXNzYWdlIHtcbiAgICAgICAgICAgIG1hcmdpbjogMTBweDtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha1BvaW50KDEwMjQpe1xuICAgICAgICAucm93IHsgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgLmNvb3JkcyxcbiAgICAgICAgLmNvbnRhY3R7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAuY29udGFjdCB7IG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtQb2ludCg2NTApe1xuICAgICAgICBmb3Jte1xuICAgICAgICAgICAgLmZvcm0tZ3JvdXB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNmaWx0cmVzLWFjdHUge1xuICAgIG1hcmdpbjogMjBweCAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAxZW07XG4gICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZzogOHB4IDE2cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRleHRyYUxpZ2h0R3JleTtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGV4dHJhTGlnaHRHcmV5O1xuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRkYXJrLWJsdWU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5kaXZQYWdlLmRpdlN1YnZlbnRpb25zIHtcbiAgICBAaW5jbHVkZSBicmVha1BvaW50KDY4MCkge1xuICAgICAgICAuYnRucyAuYnRuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDM4MHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZGl2UGFnZS5kaXZTaW11bGF0aW9ue1xuICAgIG1pbi1oZWlnaHQ6IDgwdmg7XG4gICAgLmJnLWJsdWV7XG4gICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgJjpub3QoLnByaWNlKXtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXNpemU6IC45ZW07XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha1BvaW50KDcwMCl7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAuOGVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYucHJpY2V7XG4gICAgICAgICAgICBjb2xvcjogJGdyZWVuO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoNzAwKXtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBhLmZpY2hlLWFkZC1vcGVyYXRpb24ge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlZWU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdHJhbnNpdGlvbjogLjJzO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3JlZW47XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZGRkO1xuICAgICAgICB9XG4gICAgICAgIHN2ZyB7IFxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgXG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCgxMDI0KSB7IFxuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgIHNwYW4geyBmb250LXNpemU6IDEuNHJlbTsgfVxuICAgICAgICAgICAgc3ZnIHsgd2lkdGg6IDY0cHg7IGhlaWdodDogNjRweDsgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGRpdi5jb250YWluZXJ7XG4gICAgICAgIC5maWNoZTpudGgtb2YtdHlwZShldmVuKXtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKCMwMDAsIC4yKTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCMwMDAsIC4yKTtcbiAgICAgICAgfVxuICAgICAgICBkaXYuc3BhY2V7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgICAgIH1cbiAgICAgICAgZGl2LmhlYWR7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgICAgICAgLnNlY3RldXJ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJsb2NrOiAyMHB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoNzAwKXtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmRhdGFTaW11bGF0aW9ue1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgICAgICA+IGRpdntcbiAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBle1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoNzAwKXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmOm50aC1vZi10eXBlKDIpe1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoNzAwKXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICA+IGRpdntcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ibG9jazogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBkaXYubWFpbntcbiAgICAgICAgICAgIC5uYW1lU2hlZXR7IFxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zZW07IFxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoNzAwKXtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnByaWNleyBmb250LXNpemU6IDEuMWVtOyB9XG4gICAgICAgICAgICAuc3VyZmFjZXtcbiAgICAgICAgICAgICAgICBzcGFue1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkaXYuY29udGVudXtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgLmxlZnQgeyBcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgICAgICAgICAgPiBkaXZ7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYmxvY2s6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnJpZ2h0e1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDsgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoMTAyNCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBzdmcgeyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGRpdi5hZGQtb3BlcmF0aW9ue1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA1JTtcbiAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGdyZWVuO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMzBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMTBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGRpdi5hY2NvdW50e1xuICAgICAgICAgICAgbWFyZ2luOiA1ZW0gMDtcbiAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRncmVlbjtcbiAgICAgICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGRhcmstYmx1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZGl2LmluZm9ybWF0aW9ue1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBlbmQ7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgICB9XG4gICAgICAgIGRpdi50b3RhbHtcbiAgICAgICAgICAgIHNtYWxse1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ibG9jazogNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGRpdi5hY3Rpb25ze1xuICAgICAgICAgICAgLmxpbmtze1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBnYXA6IDUwcHg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAuYm90dG9tLWxpbmtze1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBnYXA6IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGRpdi5jb250ZW51e1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAudGFibGV7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKCMwMDAsIC4xKTtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgICAgLnRye1xuICAgICAgICAgICAgJjpudGgtb2YtdHlwZShldmVuKXtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYmxvY2s6IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA+IC50ZDpmaXJzdC1vZi10eXBle1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCgxMDAwKXtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCgxMDAwKXtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnJ3ZHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmNvbGxlY3Rpb24tZ3JvdXAge1xuICAgICAgICBwYWRkaW5nOiAxMnB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICBjb2xvcjogJGRhcmstYmx1ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICYtLWZyb2lkIHsgY29sb3I6ICMzN2E4ZGI7IH1cbiAgICAgICAgICAgICYtLWNoYWxldXIgeyBjb2xvcjogI2YxOTMwMDsgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5jb2xsZWN0aW9uLWl0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoMTEwMCl7XG4gICAgICAgIGRpdi5jb250YWluZXJ7XG4gICAgICAgICAgICBkaXYubWFpbntcbiAgICAgICAgICAgICAgICBkaXYuY29udGVudXtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkaXYucmlnaHR7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJsb2NrOiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZGl2LmFkZC1vcGVyYXRpb257XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNzVweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5yd2R7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgLm5vUndke1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBhLmRlbGV0ZXtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMzBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gICAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha1BvaW50KDg5MCkge1xuICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgIG1hcmdpbjogMTBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha1BvaW50KDU2MCkge1xuICAgICAgICAuYnRuIHsgXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgXG4gICAgICAgICAgICBtYXJnaW46IDVweCAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmRpdlByb2ZpbHtcbiAgICBkaXYudXNlckRhdGF7XG4gICAgICAgIG1hcmdpbjogMjBweDtcbiAgICAgICAgPiBkaXZ7XG4gICAgICAgICAgICBjb2xvcjogJGRhcmstYmx1ZTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIC51c2VyTmFtZXtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi41ZW07IFxuICAgICAgICAgICAgY29sb3I6ICRkYXJrLWJsdWU7XG4gICAgICAgICAgICBtYXJnaW4tYmxvY2s6IDA7XG4gICAgICAgIH1cbiAgICAgICAgLnVzZXJUeXBlQ29tcHRle1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgY29sb3I6ICRncmV5O1xuICAgICAgICB9XG4gICAgICAgIC51c2VyTWFpbCwgLnVzZXJTb2NpZXRlLCAudXNlclBob25le1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgZ2FwOiA1cHg7XG4gICAgICAgIH1cbiAgICAgICAgLmFjdGlvbnN7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOWVtO1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICAgICAgICBheyBcbiAgICAgICAgICAgICAgICBjb2xvcjogJGdyZWVuOyBcbiAgICAgICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogZGFya2VuKCRncmVlbiwgMTUlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgZGl2LnNpbXVsYXRpb25ze1xuICAgICAgICBoMnsgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAgIH1cbiAgICAmLnJlY2FwaXR1bGF0aWYgLmJsb2NrLWluZm9ybWF0aW9uc19faW5mb3JtYXRpb24ge1xuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCg4MDApIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxudGFibGUuYWNjb3VudCB7XG4gICAgZm9udC1zaXplOiAwLjllbTtcbiAgICB0aGVhZCB7IGJhY2tncm91bmQtY29sb3I6ICNGQkZCRkI7IH1cbiAgICB0aGVhZCB0aDpmaXJzdC1jaGlsZCB7IGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDEwcHg7IH1cbiAgICB0aGVhZCB0aDpsYXN0LWNoaWxkIHsgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDEwcHg7IH1cbiAgICB0aCB7IGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cbiAgICB0ZCB7IGJvcmRlci10b3A6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgIHRkLCB0aCB7IFxuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAmOmxhc3QtY2hpbGQgeyBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMyk7IH0gXG4gICAgfVxufVxuXG4uYWNjb3VudF9pbmZvcyB7XG4gICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxMnB4O1xuICAgIG1hcmdpbi1yaWdodDogMTJweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGJhY2tncm91bmQ6ICNmNGY0ZjQ7XG4gICAgLmZpZWxkIHsgXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyBcbiAgICB9XG4gICAgPiBkaXYgeyBtYXJnaW46IDVweDsgfVxuICAgIGEgeyBtYXJnaW46IDVweDsgfVxufVxuXG4uYm94LWxvZ2luIHtcbiAgICBwYWRkaW5nOiA0MHB4O1xuICAgIG1hcmdpbjogNDBweCBhdXRvIDEwMHB4O1xuICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2VlZTtcbiAgICBib3gtc2hhZG93OiAwIDNweCA2cHggcmdiYSgjMDAwLCAuMjkpO1xuICAgIGgxIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgICAuYnRuIHsgXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDsgXG4gICAgICAgIHdpZHRoOiAxODZweDtcbiAgICB9XG59XG5cbi5tb2RhbC1sb2dpbixcbi5ib3gtbG9naW4ge1xuICAgIC5idXR0b24geyBcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgLy8gbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB3aWR0aDogMTg2cHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gICAgLmJ1dHRvbi1nb29nbGUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgZ2FwOiAzcHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBjb2xvcjogIzMzMztcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSgjMDAwLCAuMjkpO1xuICAgIH1cbn1cblxuLmJveC1sb2dpbi1lZGl0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGNvbG9yOiAkYmxhY2stMjtcbiAgICBtYXJnaW46IDQwcHggYXV0byAxMDBweDtcbiAgICBtYXgtd2lkdGg6IDUyMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC5mb3JtLWxvZ2luIHsgXG4gICAgICAgIHdpZHRoOiAxMDAlOyBcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAuYm94LWxvZ2luLWVkaXRfX2NvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDQwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICNFQkVCRUI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICB9XG4gICAgLmZvcm0tbGluZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICYubG9nbyB7IFxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICAgICAgICB9XG4gICAgICAgICZfX2xhYmVsIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNDBweDtcbiAgICAgICAgfVxuICAgICAgICAmX193aWRnZXQge1xuICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha1BvaW50KDU2MCkge1xuICAgICAgICAuYm94LWxvZ2luLWVkaXRfX2NvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgfVxuICAgICAgICAuZm9ybS1saW5lIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKipcbiAqIFNpdGVtYXBcbiAqICoqKioqKioqKiAqL1xuQG1peGluIHNpdGVtYXAoJGNvbG9yMSwgJGNvbG9yMil7XG4gICAgZGl2LmRpdlNpdGVtYXB7XG4gICAgICAgIGRpdiNzaXRlbWFwe1xuICAgICAgICAgICAgdWx7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNmVtO1xuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgICAgICAgICBsaTpiZWZvcmV7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7IGJhY2tncm91bmQ6ICRjb2xvcjI7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwcHg7IGhlaWdodDogMTBweDsgbWFyZ2luLXJpZ2h0OiAxMHB4OyBcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgbGkgdWwge1xuICAgICAgICAgICAgICAgICAgICBsaTpiZWZvcmV7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiOyBiYWNrZ3JvdW5kOiAkY29sb3IxOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTBweDsgaGVpZ2h0OiAxMHB4OyBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgbGkgdWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGk6YmVmb3Jle1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7IGJhY2tncm91bmQ6ICRjb2xvcjI7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTBweDsgaGVpZ2h0OiAxMHB4OyBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhIHsgXG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazsgXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkb3JhbmdlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbkBpbmNsdWRlIHNpdGVtYXAoJGdyZWVuLCAkYmx1ZSk7XG4iLCJib2R5IHtcbiAgICBjb2xvcjogJGdyZXk7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgJi5sb2FkaW5nLW1vZGFsIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDsgcmlnaHQ6IDA7IGJvdHRvbTogMDsgbGVmdDogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoIzAwMCwgLjQ1KTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgIHRvcDogNTAlOyBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICBib3JkZXI6IDRweCBzb2xpZCAjNjY2OyAvKiBMaWdodCBncmV5ICovXG4gICAgICAgICAgICBib3JkZXItdG9wOiA0cHggc29saWQgIzM0OThkYjsgLyogQmx1ZSAqL1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgd2lkdGg6IDQ4cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICAgICAgICBhbmltYXRpb246IHNwaW4gMS40cyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5oMSxcbmgyLFxuaDMsXG5oNCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbmEsXG5idXR0b24ge1xuICAgIGNvbG9yOiAjMzMzO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgJi5mdWxsIHsgXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiAxMDAlOyBcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICAmLmJhY2t7XG4gICAgICAgIGNvbG9yOiAkZ3JleS0yO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDNlbTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogLjVlbTtcbiAgICAgICAgJjo6YmVmb3Jle1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGhlaWdodDogMTRweDtcbiAgICAgICAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiL2ltYWdlcy9waWN0by1iYWNrLnN2Z1wiKSBjZW50ZXIgLyBjb250YWluIG5vLXJlcGVhdDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTUwbXM7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICY6OmJlZm9yZXtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5wZGYge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgIGNvbG9yOiAjOTA5MDkwO1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyMDBtcztcbiAgICB9XG4gICAgJi5kb3dubG9hZHtcbiAgICAgICAgcGFkZGluZzogMTVweCA0MHB4O1xuICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGV4dHJhTGlnaHRHcmV5O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAxMHB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRleHRyYUxpZ2h0R3JleSwgOCUpO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuYnV0dG9ue1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJsb2NrOiBhdXRvO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBwYWRkaW5nOiA1cHggMjBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZWVuO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JlZW47XG4gICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICBjb2xvcjogJGdyZWVuO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICAgICAgJi1vcmFuZ2V7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JhbmdlO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJG9yYW5nZTtcbiAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRvcmFuZ2U7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLXJlZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHJlZDtcbiAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRyZWQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLWJsdWUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsdWU7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYmx1ZTtcbiAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibHVlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB9IFxuICAgICAgICB9XG4gICAgICAgICYtYmxhY2sge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDA7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYtZ3JleSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQjFCMUIxO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0IxQjFCMTtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjQjFCMUIxO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi1zbWFsbCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAuMjVyZW0gMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmJ1dHRvbi1ib3JkZXJ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogJGdyZWVuO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmVlbjtcbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZWVuO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuZmFrZS1ibHVlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiAkYmx1ZTtcbiAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYmx1ZTtcbiAgICB9XG59XG5hLnRleHQge1xuICAgY29sb3I6ICMwMDAwMDA7IFxufVxuXG5pbWcgeyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5kaXYuZW50aXR5IGRpdi5hY3Rpb25zIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgJi5jZW50ZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICBhLmFjdGlvbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgIHdpZHRoOiAzNnB4O1xuICAgICAgICBoZWlnaHQ6IDM2cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiL2ltYWdlcy9pY29ucy5wbmdcIikgNnB4IDZweCBuby1yZXBlYXQgIzQ0NDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNnB4IC00NHB4O1xuICAgICAgICBib3gtc2hhZG93OiAzcHggM3B4IDZweCAtMnB4ICMwMDA7XG4gICAgICAgICYuY3JlYXRlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogNnB4IDZweDsgfVxuICAgICAgICAmLmRlbGV0ZSB7IGJhY2tncm91bmQtcG9zaXRpb246IDZweCAtOTRweDsgfVxuICAgIH1cbn1cblxuLmNvbnRhaW5lciB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxNjIwcHg7XG4gICAgcGFkZGluZzogMCA1MHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC8vb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBAaW5jbHVkZSBicmVha1BvaW50KDgwMCkge1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgfVxufVxuXG4jcGFnZSxcbi5wYWdlLXNpbXVsYXRldXIge1xuICAgIG1pbi1oZWlnaHQ6IDgwdmg7XG59XG5cbi5kaXZQYWdlOm5vdCguZGl2V2VsY29tZSkge1xuICAgIHBhZGRpbmc6IDRlbSAwO1xufVxuXG4udGV4dHtcbiAgICAmLWdyZWVue1xuICAgICAgICBjb2xvcjogJGdyZWVuO1xuICAgIH1cbiAgICAmLW9yYW5nZXtcbiAgICAgICAgY29sb3I6ICRvcmFuZ2U7XG4gICAgfVxufVxuXG4uYmctYmx1ZXtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ibHVlO1xuICAgIGNvbG9yOiAjRkZGO1xufVxuXG4udGFibGV7XG4gICAgLnRye1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICB0ZHtcbiAgICAgICAgJi5hY3Rpb25ze1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYmxvY2s6IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmRhdGFUYWJsZXN7XG4gICAgJl9sZW5ndGgsICZfZmlsdGVye1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIH1cbiAgICAmX2luZm8sICZfcGFnaW5hdGV7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgfVxuICAgICZfcGFnaW5hdGV7XG4gICAgICAgIC5wYWdpbmF0ZV9idXR0b257XG4gICAgICAgICAgICAmOmhvdmVyOm5vdCguZGlzYWJsZWQpe1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JlZW4gIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuY3VycmVudHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZXh0cmFMaWdodEdyZXkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuZGlzYWJsZWR7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5maWxlc0xpc3R7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBoM3tcbiAgICAgICAgY29sb3I6ICR2aW9sZXQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgfVxuICAgIGF7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogZW5kO1xuICAgICAgICBnYXA6IDEwcHg7XG4gICAgICAgIG1hcmdpbi1ibG9jazogMTBweDtcbiAgICAgICAgc3Zne1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoIzAwMCwgLjIpO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkZGFyay1ibHVlLCA1MCUpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYWxlcnQge1xuICAgIHBhZGRpbmc6IDEuMnJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICYtc3VjY2VzcyB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1yZWNhcC1ncmVlbik7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoI0MwRDAyQywgLjIpO1xuICAgIH1cbn0iLCIkZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWY7XG5cbiRzaGFkb3c6ICNhZGI1YmQ7XG4kZXh0cmFMaWdodEdyZXk6ICNFQkVCRUI7XG4kbGlnaHRHcmV5OiAjOTA5MDkwO1xuJGdyZXk6ICM1RDVENUQ7XG4kZ3JleS0yOiAjMzgzODM4O1xuJGJsYWNrOiAjMUQxRDFEO1xuJGJsYWNrLTI6ICMxNjA0MkQ7XG4kZ3JlZW46ICM5M0IyMjQ7XG4kcmVkOiAjZDAwMDAwO1xuJG1hdXZlOiAjNEQ0RThCO1xuLy8gJG9yYW5nZTogI0Y3OTQyNTtcbiRvcmFuZ2U6ICNGRjc1MDc7XG4kY3lhbjogIzQxQzJBNjtcbiRibHVlOiAjMTk5QkQ1O1xuJHZpb2xldDogIzI2Mjg3MjtcbiRkYXJrLWJsdWU6ICMwMDIxNUM7XG4kZGFyay1ibHVlLTI6ICMwMDFGNTA7XG5cbkBtaXhpbiBicmVha1BvaW50KCRtYXgtd2lkdGg6IDAsICRtaW4td2lkdGg6IDApe1xuICAgIEBpZiAkbWF4LXdpZHRoID4gMCBhbmQgJG1pbi13aWR0aCA8PSAwIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZChtYXgtd2lkdGg6ICRtYXgtd2lkdGggKyBcInB4XCIpeyBAY29udGVudDsgfVxuICAgIH1cbiAgICBAZWxzZSBpZiAkbWF4LXdpZHRoIDw9IDAgYW5kICRtaW4td2lkdGggPiAwIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZChtaW4td2lkdGg6ICRtaW4td2lkdGggKyBcInB4XCIpeyBAY29udGVudDsgfVxuICAgIH1cbiAgICBAZWxzZSBpZiAkbWF4LXdpZHRoID4gMCBhbmQgJG1pbi13aWR0aCA+IDAge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kKG1pbi13aWR0aDogJG1pbi13aWR0aCArIFwicHhcIikgYW5kKG1heC13aWR0aDogJG1heC13aWR0aCArIFwicHhcIil7IEBjb250ZW50OyB9XG4gICAgfVxufSIsIi5idG4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAuNzVlbSAxZW07XG4gICAgY29sb3I6ICNGRkY7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBiYWNrZ3JvdW5kOiAkZ3JlZW47XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyZWVuO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAmLmJ0bi1ncmVlbiB7IFxuICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JlZW47IFxuICAgICAgICBib3JkZXItY29sb3I6ICRncmVlbjtcbiAgICB9XG4gICAgJi5idG4tYmx1ZSB7XG4gICAgICAgIGNvbG9yOiAjZmZmOyBcbiAgICAgICAgYmFja2dyb3VuZDogJGJsdWU7IFxuICAgICAgICBib3JkZXItY29sb3I6ICRibHVlO1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDQwcHg7XG4gICAgfVxuICAgICYuYnRuLWRhcmstYmx1ZSB7IFxuICAgICAgICBiYWNrZ3JvdW5kOiAkZGFyay1ibHVlOyBcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkZGFyay1ibHVlO1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDQwcHg7XG4gICAgfVxuICAgICYuYnRuLW9yYW5nZSB7IFxuICAgICAgICBiYWNrZ3JvdW5kOiAkb3JhbmdlOyBcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkb3JhbmdlO1xuICAgIH1cbiAgICAmLmJ0bi1yZWQge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgYmFja2dyb3VuZDogY3JpbXNvbjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBjcmltc29uO1xuICAgIH1cbiAgICAmLmJ0bi1ncmV5IHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJhY2tncm91bmQ6ICNkM2QzZDM7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2QzZDNkMztcbiAgICB9XG4gICAgJi5idG4tc21hbGwgeyBcbiAgICAgICAgcGFkZGluZzogLjI1cmVtIC41cmVtO1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtOyBcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB9XG4gICAgJi5idG4tdGlueSB7IFxuICAgICAgICBwYWRkaW5nOiAuMjVyZW0gLjVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMC42MjVyZW07IFxuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIH1cbiAgICAmLmJ0bi0tdGV4dC1yZWQge1xuICAgICAgICBjb2xvcjogJHJlZDtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgICAmLmhvdmVyLXRvLWdyZWVuIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGdyZWVuO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRncmVlbjtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG59XG4uYnRuLWxpc3QgLmJ0biB7XG4gICAgbWFyZ2luOiAwIDAuNGVtO1xufVxuXG4uYWRkLWJ0biB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IC44ZW0gMS42ZW07XG4gICAgY29sb3I6ICMzMzM7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzMzMztcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICMzMzM7XG4gICAgfVxufVxuXG4uYnRuLXVuZGVybGluZSB7XG4gICAgY29sb3I6ICMzMzM7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgIH1cbn1cblxuLmxpbmstZGlzYWJsZWQge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgb3BhY2l0eTogMC41O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmJ0bi1waWN0byB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgcGFkZGluZzogNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuMnMgZWFzZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgc3ZnIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgICYtLWJsdWUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmx1ZTtcbiAgICAgICAgJjpub3Qoc3Bhbik6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogZGFya2VuKCRibHVlLCAxMCUpO1xuICAgICAgICB9XG4gICAgfVxuICAgICYtLWdyZWVuIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGdyZWVuO1xuICAgICAgICAmOm5vdChzcGFuKTpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJGdyZWVuLCAxMCUpO1xuICAgICAgICB9XG4gICAgfVxuICAgICYtLXJlZCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRyZWQ7XG4gICAgICAgICY6bm90KHNwYW4pOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGRhcmtlbigkcmVkLCAxMCUpO1xuICAgICAgICB9XG4gICAgfVxuICAgICYtLWdyZXkge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZGRkO1xuICAgIH1cbiAgICAmLS1zbWFsbCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICAgICYtLW5vLXBhZGRpbmcgeyBwYWRkaW5nOiAwOyB9XG4gICAgJl9fbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCgxMDI0KSB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIH1cbn1cblxuLmJ0bi11bmRlcmxpbmUtcmVkIHtcbiAgICBjb2xvcjogJHJlZDtcbiAgICAvLyBmb250LXNpemU6IDAuOXJlbTtcbn1cblxuLmJ0bjIge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDAuOGVtIDEuNWVtO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtZmFtaWx5OiAnTGF0bycsIHNhbnMtc2VyaWY7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXJlY2FwLWdyZWVuKTtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXJlY2FwLWdyZWVuKTtcbiAgICBib3gtc2hhZG93OiAwIDJweCAxcHggcmdiYSgjMTQwRTNFLCAuMjUpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2U7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1yZWNhcC1ncmVlbik7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDEwcHggcmdiYSgjMTQwRTNFLCAuMjUpO1xuICAgIH1cbiAgICAmLS1iaWdnZXIgeyBmb250LXNpemU6IDEuMnJlbTsgfVxuICAgICYtLXJlZCB7IFxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1yZWNhcC1kYW5nZXIpO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXJlY2FwLWRhbmdlcik7XG4gICAgICAgICY6aG92ZXIgeyBjb2xvcjogdmFyKC0tcmVjYXAtZGFuZ2VyKTsgfSBcbiAgICB9XG4gICAgJi0tb3JhbmdlIHsgXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXJlY2FwLW9yYW5nZSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcmVjYXAtb3JhbmdlKTtcbiAgICAgICAgJjpob3ZlciB7IGNvbG9yOiB2YXIoLS1yZWNhcC1vcmFuZ2UpOyB9IFxuICAgIH1cbiAgICAmLS1ibHVlIHsgXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXJlY2FwLWJsdWUpOyBcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1yZWNhcC1ibHVlKTtcbiAgICAgICAgJjpob3ZlciB7IGNvbG9yOiB2YXIoLS1yZWNhcC1ibHVlKTsgfVxuICAgIH1cbiAgICAmLS1ncmV5IHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcmVjYXAtZ3JleSk7IFxuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXJlY2FwLWdyZXkpO1xuICAgICAgICAmOmhvdmVyIHsgY29sb3I6IHZhcigtLXJlY2FwLWdyZXkpOyB9XG4gICAgfVxufVxuXG4uYnRuLXByaW1lIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwLjNlbTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZDogJGdyZWVuO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmVlbjtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkZ3JlZW47XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgfVxufSIsIi50aXRsZTpub3QoLmVudGl0eSkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgcGFkZGluZy1ib3R0b206IC4zNWVtO1xuICAgIGNvbG9yOiAkdmlvbGV0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgZm9udC1zaXplOiAyLjJyZW07XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDA7IGxlZnQ6IDA7XG4gICAgICAgIGhlaWdodDogNnB4O1xuICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgYmFja2dyb3VuZDogJGdyZWVuO1xuICAgIH1cbiAgICAmLnRpdGxlLWNlbnRlcmVkIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha1BvaW50KDc4MCkge1xuICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICB9XG59XG5cbi50aXRsZS13aGl0ZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAyLjJyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbiIsIi5mb3JtLWdyb3VwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIGxhYmVsIHsgXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICB9XG59XG5cbi5mb3JtLWNvbnRyb2wgeyBcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlOyBcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRibGFjay0yO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0O1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICBib3JkZXItY29sb3I6ICM4MGJkZmY7XG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIC4ycmVtIHJnYmEoMCwxMjMsMjU1LC4yNSk7XG4gICAgfVxufVxuXG4uZm9ybS1sb2dpbiB7XG4gICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgaDF7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgfVxuICAgIGxhYmVse1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICAgIC5mb3JtLXN1Ym1pdHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgYnV0dG9ue1xuICAgICAgICAgICAgJi5idG4tYmx1ZXtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGJ1dHRvbi5yZWdpc3RlcntcbiAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAxZW07XG4gICAgfVxuICAgIC5vYmxpZ2F0b2lyZSB7XG4gICAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgICBmaWVsZHNldCB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgbGVnZW5kIHsgZGlzcGxheTogbm9uZTsgfVxuICAgIH1cbiAgICAucmVnaXN0cmF0aW9uX2NndSB7XG4gICAgICAgIC5yb3cgeyBcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7IFxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBsYWJlbCB7IFxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmQtYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuLmludmFsaWQtZmVlZGJhY2sgeyBcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjsgXG59XG5cbi5iYWRnZS1kYW5nZXIgeyBmb250LXdlaWdodDogYm9sZDsgfVxuXG4uYmFkZ2UtZGFuZ2VyLFxuLmZvcm0tZXJyb3ItbWVzc2FnZSB7IGNvbG9yOiBjcmltc29uOyB9XG5cbmJ1dHRvbi5idG4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgcGFkZGluZzogLjM3NXJlbSAuNzVyZW07XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IC4yNXJlbTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCxib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCxib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQ7XG59XG5cbmJ1dHRvbi5idG4tcHJpbWFyeSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZWVuO1xuICAgIGJvcmRlci1jb2xvcjogJGdyZWVuO1xufVxuXG5idXR0b24uYnRuLXNlY29uZGFyeSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsdWU7XG4gICAgYm9yZGVyLWNvbG9yOiAkYmx1ZTtcbn1cblxuLmZvcm0taW5saW5lIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgPiAqIHsgbWFyZ2luOiAwIDEwcHg7IH1cbn1cblxuLmZvcm0taGVscCB7XG4gICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgZm9udC1zaXplOiAwLjhyZW07XG59XG5cbi5sb2FkZXIge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgYm9yZGVyOiA0cHggc29saWQgI2YzZjNmMzsgLyogTGlnaHQgZ3JleSAqL1xuICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCAjMzQ5OGRiOyAvKiBCbHVlICovXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgICBhbmltYXRpb246IHNwaW4gMnMgbGluZWFyIGluZmluaXRlO1xufVxuXG5pbnB1dDpkaXNhYmxlZCxcbnNlbGVjdDpkaXNhYmxlZCB7IGJhY2tncm91bmQ6ICNkM2QzZDM7IH1cblxuQGtleWZyYW1lcyBzcGluIHtcbiAgICAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cbn1cblxuI2Nyb3AtaW50ZXJmYWNlIHtcbiAgICBwYWRkaW5nOiA1cmVtO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7IHJpZ2h0OiAwOyBib3R0b206IDA7IGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICB6LWluZGV4OiAyMDtcbiAgICAuY3JvcC1hY3Rpb25zIHtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbn1cblxuLmZvcm0tYWN0aW9uc3tcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMWVtO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uZmllbGQtZmxleHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICA+IC5maWVsZC1jb2wtcGljdHVyZXtcbiAgICAgICAgZmxleDogMTtcbiAgICB9XG4gICAgPiAuZmllbGQtY29sOm5vdCguZmllbGQtY29sLXBpY3R1cmUpe1xuICAgICAgICBmbGV4OiAyO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha1BvaW50KDc2OCl7XG4gICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG59XG5cbmZpZWxkc2V0e1xuICAgIHBhZGRpbmc6IDEuNWVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBib3JkZXItY29sb3I6ICRkYXJrLWJsdWU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkZGFyay1ibHVlLCAuMDc1KTtcbiAgICAmOm5vdCg6bGFzdC1vZi10eXBlKXtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG4gICAgbGVnZW5ke1xuICAgICAgICBwYWRkaW5nLWlubGluZTogLjVlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjFlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgY29sb3I6ICRkYXJrLWJsdWU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICB9XG59IiwidGFibGUge1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG59XG4udGFibGUtcmVzcG9uc2l2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLnRhYmxlIHsgbWluLXdpZHRoOiA4NDBweDsgfVxuICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoMTI4MCkgeyBmb250LXNpemU6IDE0cHg7IH1cbn1cbi50YWJsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY29sb3I6ICM3OTc5Nzk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgICAgcGFkZGluZzogMC43NXJlbTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZWUyZTY7XG4gICAgfVxuICAgIHRoIHsgXG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZGVlMmU2OyBcbiAgICAgICAgY29sb3I6ICRncmV5O1xuICAgIH1cbiAgICB0ZCB7XG4gICAgICAgICYucHJpY2V7IFxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyBcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmhpZ2hsaWdodCB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMzMzO1xuICAgICAgICAmLS1ibHVlIHsgYmFja2dyb3VuZDogJGRhcmstYmx1ZTsgfVxuICAgICAgICAmLS1ncmV5IHsgYmFja2dyb3VuZDogJGdyZXk7IH1cbiAgICB9XG59XG5cbnRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHIgPiB0ZC5kdHItY29udHJvbDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJyAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogdXJsKCcvaW1hZ2VzL2Rvd24uc3ZnJykgY2VudGVyIGNlbnRlciAvIGNvbnRhaW4gIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbnRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHIucGFyZW50ID4gdGQuZHRyLWNvbnRyb2w6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbn0iLCIuZmFkZSB7IHRyYW5zaXRpb246IG9wYWNpdHkgLjE1cyBsaW5lYXI7IH1cbi5mYWRlOm5vdCguc2hvdykgeyBvcGFjaXR5OiAwOyB9XG5cbi5tb2RhbCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDsgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgb3V0bGluZTogMDtcbiAgICB6LWluZGV4OiAxMDU1O1xuICAgICYuc2hvdyB7IGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsLjQ1KTsgfVxufVxuXG4ubW9kYWwtZGlhbG9nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAuNXJlbTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAubW9kYWwuZmFkZSAmIHsgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBlYXNlLW91dDsgfVxuICAgIC5tb2RhbC5zaG93ICYgeyB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICBAaW5jbHVkZSBicmVha1BvaW50KDk5OTksIDU3Nikge1xuICAgICAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgICAgICBtYXJnaW46IDEuNzVyZW0gYXV0bztcbiAgICB9XG59XG5cbi5tb2RhbC1jb250ZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsMCwwLC4yKTtcbiAgICBib3JkZXItcmFkaXVzOiAuM3JlbTtcbiAgICBvdXRsaW5lOiAwO1xufVxuXG4ubW9kYWwtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWUyZTY7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYyguM3JlbSAtIDFweCk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGNhbGMoLjNyZW0gLSAxcHgpO1xuXG4gICAgLmJ0bi1jbG9zZSB7XG4gICAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgICAgICB3aWR0aDogMWVtO1xuICAgICAgICBoZWlnaHQ6IDFlbTtcbiAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyUyMzAwMCclM2UlM2NwYXRoIGQ9J00uMjkzLjI5M2ExIDEgMCAwMTEuNDE0IDBMOCA2LjU4NiAxNC4yOTMuMjkzYTEgMSAwIDExMS40MTQgMS40MTRMOS40MTQgOGw2LjI5MyA2LjI5M2ExIDEgMCAwMS0xLjQxNCAxLjQxNEw4IDkuNDE0bC02LjI5MyA2LjI5M2ExIDEgMCAwMS0xLjQxNC0xLjQxNEw2LjU4NiA4IC4yOTMgMS43MDdhMSAxIDAgMDEwLTEuNDE0eicvJTNlJTNjL3N2ZyUzZVwiKSBjZW50ZXIvMWVtIGF1dG8gbm8tcmVwZWF0O1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IC4yNXJlbTtcbiAgICAgICAgb3BhY2l0eTogLjU7XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgICAgbWFyZ2luOiAtMC41cmVtIC0wLjVyZW0gLTAuNXJlbSBhdXRvO1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxufVxuXG4ubW9kYWwtdGl0bGUgeyBcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5tb2RhbC1ib2R5IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgcGFkZGluZzogMXJlbTtcbn1cblxuLm1vZGFsLWZvb3RlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIHBhZGRpbmc6IC43NXJlbTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogY2FsYyguM3JlbSAtIDFweCk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogY2FsYyguM3JlbSAtIDFweCk7XG59XG5cbi5tb2RhbCBmb3JtIGZpZWxkc2V0IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbn0iLCIuaW5kaWNhdGV1ciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IC41ZW0gMS4yZW07XG4gICAgZm9udC1zaXplOiAuOTByZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBiYWNrZ3JvdW5kOiAjZWNlZWYzO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAmX19udW1iZXIge1xuICAgICAgICBjb2xvcjogJGRhcmstYmx1ZTtcbiAgICAgICAgZm9udC1zaXplOiAyLjVlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICAgICZfX2xhYmVsIHtcbiAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgfVxuICAgICZfX2hlbHAge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogM3B4OyByaWdodDogM3B4O1xuICAgICAgICBjdXJzb3I6IGhlbHA7XG4gICAgICAgIGltZyB7IHdpZHRoOiAxNHB4OyB9XG4gICAgfVxuICAgICYtZG9udCB7IFxuICAgICAgICBjb2xvcjogIzAwMDsgXG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICAgIC8vIGFiYnIgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbn1cblxuLmZvcm0tZXhwb3J0LWluZGljYXRldXJzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAuYnRuIHsgY29sb3I6ICNmZmY7IH1cbn0iLCIubXktMSB7IG1hcmdpbjogMTBweCAwOyB9XG4ubWFyZ2luLXYgeyBtYXJnaW46IDIuNXJlbSAwOyB9XG4ubWFyZ2luLXYtMiB7IG1hcmdpbjogMXJlbSAwOyB9XG4ubXQtMTAgeyBtYXJnaW4tdG9wOiAxMHB4OyB9XG4ubXQtMjAgeyBtYXJnaW4tdG9wOiAyMHB4OyB9XG4ubXQtMzAgeyBtYXJnaW4tdG9wOiAzMHB4OyB9XG4ubWItMTAgeyBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4ubWItMjAgeyBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4ubWItMzAgeyBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4ubWItNDAgeyBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4ubWwtMTAgeyBtYXJnaW4tbGVmdDogMTBweDsgfVxuLm1sLTIwIHsgbWFyZ2luLWxlZnQ6IDIwcHg7IH1cbi5tci0xMCB7IG1hcmdpbi1yaWdodDogMTBweDsgfVxuLm1yLTIwIHsgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG4ucHgtMTAgeyBwYWRkaW5nOiAwIDEwcHg7IH1cbi5weS0xMCB7IHBhZGRpbmc6IDEwcHggMDsgfVxuLnB5LTIwIHsgcGFkZGluZzogMjBweCAwOyB9XG4ucC0xIHsgcGFkZGluZzogMXJlbTsgfVxuLm15LTIwIHsgbWFyZ2luOiAyMHB4IDA7IH1cbkBrZXlmcmFtZXMgbGVmdFNjcmVlbiB7XG4gICAgMCUgeyBsZWZ0OiAwOyB9XG4gICAgMTAwJSB7IGxlZnQ6IC0xMDAlOyB9XG59XG5cbi53cC1udyB7IHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbi5wbCB7IHBhZGRpbmctbGVmdDogNSU7IH1cbi5ib3gtc3VjY2Vzcyxcbi5ib3gtZXJyb3Ige1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDIwcHg7IGxlZnQ6IDA7XG4gICAgbWFyZ2luOiAxZW0gMDtcbiAgICBwYWRkaW5nOiAxZW07XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6ICMxOTg3NTQ7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiA0cztcbiAgICBhbmltYXRpb24tbmFtZTogbGVmdFNjcmVlbjtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IC41cztcbiAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbn1cblxuLmJveC1lcnJvciB7XG4gICAgYmFja2dyb3VuZDogY3JpbXNvbjtcbn1cblxuLnRleHQtdXBwZXJjYXNlLCAudHVwcGVyIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuLnRleHQtY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4udGV4dC1yaWdodCB7IHRleHQtYWxpZ246IHJpZ2h0OyB9XG4udGV4dC1tdXRlZCB7IGNvbG9yOiAjN2E3ZDg0OyB9XG4udGV4dC1ib2xkIHsgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbi5pbWctcmVzcG9uc2l2ZSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuLmQtZmxleCB7IGRpc3BsYXk6IGZsZXg7IH1cbi5mbG9hdC1yaWdodCB7IGZsb2F0OiByaWdodDsgfVxuLmFsaWduLWl0ZW1zLWNlbnRlciB7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbi5qdXN0aWZ5LWNlbnRlciB7IGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4uanVzdGlmeS1zcGFjZS1iZXR3ZWVuIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG5cbi5mb250LXNtYWxsZXIgeyBmb250LXNpemU6IDAuOWVtOyB9XG4uZm9udC1iaWdnZXIgeyBmb250LXNpemU6IDEuMmVtOyB9XG5cbi5uby1wYWRkaW5nIHsgcGFkZGluZzogMCAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LXVuZGVybGluZSB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5ibHVycmVkIHsgZmlsdGVyOiBibHVyKDE1cHgpOyB9XG5cbi5wLXJlbGF0aXZlIHsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi53LTEwMCB7IHdpZHRoOiAxMDAlOyB9XG5cbi5ncmV5IHsgY29sb3I6ICM1RDVENUQ7IH1cbi5yZWQgeyBjb2xvcjogJHJlZDsgfSIsImhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgICAubG9nbyB7XG4gICAgICAgIG1hcmdpbjogLjdlbSAwO1xuICAgICAgICBpbWcge21heC1oZWlnaHQ6IDEwMHB4OyBtaW4td2lkdGg6IDEyMHB4O31cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtQb2ludCgxMjQwKXtcbiAgICAgICAgZGl2LmNvbnRhaW5lcnsgXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtQb2ludCg2NDApIHtcbiAgICAgICAgLmxvZ28ge1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgIH1cbn1cblxuLmNvcHktY29uZmlybSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNTAlOyBib3R0b206IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMTAwJSk7XG59IiwiLy8gVmFyaWFibGVzXG4kYnJlYWtQb2ludE1lbnU6IDEyNDA7XG5cbm5hdiB7XG4gICAgJiNtZW51e1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAuYnV0dG9uLW9yYW5nZXtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDMwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJiNtZW51UmVzcG9uc2l2ZXsgZGlzcGxheTogbm9uZTsgfVxuICAgIC5hbGlnbi1zZWxmLWNlbnRlciB7IFxuICAgICAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyOyBcbiAgICB9XG59XG5cbi5tZW51IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xufVxuXG4ubWVudS1pdGVtIHtcbiAgICBwYWRkaW5nOiAwIDFlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgKiB7IFxuICAgICAgICBkaXNwbGF5OiBibG9jazsgXG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICB9XG4gICAgJi1pY29ue1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGEubWVudS1saW5rOjpiZWZvcmV7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLWRlY29ubmV4aW9ue1xuICAgICAgICBzcGFuLnBpY3Rve1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tZW51LWl0ZW0taWNvbiAucGljdG8ge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG59XG4ubWVudS1pdGVtLWljb24gLm1lbnUtbGluayB7IFxuICAgIGNvbG9yOiAjZmZmO1xuICAgICY6aG92ZXIgeyBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG59XG4ubWVudS1pdGVtLXNpbXVsYXRldXIgeyBcbiAgICBiYWNrZ3JvdW5kOiAkZ3JlZW47IFxuICAgIHRyYW5zaXRpb246IC4ycztcbiAgICAmOmhvdmVyIHsgYmFja2dyb3VuZDogZGFya2VuKCRncmVlbiwgNSUpOyB9XG59XG4ubWVudS1pdGVtLWNvbm5leGlvbiB7IFxuICAgIGJhY2tncm91bmQ6ICRibHVlOyBcbiAgICB0cmFuc2l0aW9uOiAuMnM7XG4gICAgJjpob3ZlciB7IGJhY2tncm91bmQ6IGRhcmtlbigkYmx1ZSwgNSUpOyB9XG59XG4ubWVudS1pdGVtLWxvZ291dCB7IFxuICAgIGJhY2tncm91bmQ6ICRyZWQ7IFxuICAgIHRyYW5zaXRpb246IC4ycztcbiAgICAmOmhvdmVyIHsgYmFja2dyb3VuZDogZGFya2VuKCRyZWQsIDUlKTsgfVxufVxuXG4ubWVudS1saW5rIHtcbiAgICBjb2xvcjogJGRhcmstYmx1ZS0yO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICYuaG92ZXItbGluZXtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGRhcmstYmx1ZS0yO1xuICAgICAgICAgICAgYm90dG9tOiAtM3B4O1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDIwMG1zO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAmOjphZnRlcntcbiAgICAgICAgICAgICAgICBsZWZ0OiAwOyBcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsgXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5sb2dvdXR7XG4gICAgICAgIGNvbG9yOiAkZGFyay1ibHVlLTI7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgICAgIGltZ3tcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBpbmNsdWRlIGJyZWFrUG9pbnQoJGJyZWFrUG9pbnRNZW51KXtcbiAgICAubWVudXsgXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IFxuICAgIH1cbiAgICBuYXYjbWVudVJlc3BvbnNpdmV7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiAyMHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgIHotaW5kZXg6IDEwMDtcbiAgICB9XG4gICAgI21lbnVCdXJnZXJ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIGlucHV0e1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogLTlweDtcbiAgICAgICAgICAgIGxlZnQ6IC05cHg7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgei1pbmRleDogMTAwO1xuICAgICAgICAgICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgICAgICAgICAgJlt0eXBlPWNoZWNrYm94XXtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmJ1cmdlcntcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogNHB4IDBweDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGN1YmljLWJlemllcigwLjc3LDAuMiwwLjA1LDEuMCksXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZCAwLjVzIGN1YmljLWJlemllcigwLjc3LDAuMiwwLjA1LDEuMCksXG4gICAgICAgICAgICAgICAgb3BhY2l0eSAwLjU1cyBlYXNlO1xuICAgICAgICB9XG4gICAgICAgICY6Zmlyc3QtY2hpbGR7XG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwJSAwJTtcbiAgICAgICAgfVxuICAgICAgICAmOnNwYW46bnRoLWxhc3QtY2hpbGQoMil7XG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwJSAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIGlucHV0OmNoZWNrZWQgfiAuYnVyZ2Vye1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUoM3B4LCAtMXB4KTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRkYXJrLWJsdWU7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDA7XG4gICAgICAgICAgICAmOm50aC1sYXN0LWNoaWxkKDMpe1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZykgc2NhbGUoMC4yLCAwLjIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpudGgtbGFzdC1jaGlsZCgyKXtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZSgycHgsIC0xcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlucHV0OmNoZWNrZWQgfiB1bHsgICAgICAgICAgIFxuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDRweCA1cHggMCAkc2hhZG93O1xuICAgICAgICB9XG4gICAgfVxuICAgICNtZW51LXJlc3BvbnNpdmV7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAtMTZweDsgcmlnaHQ6IC0zNTBweDsgYm90dG9tOiAwO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMzUwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgLy8gdHJhbnNmb3JtLW9yaWdpbjogMCUgMCU7XG4gICAgICAgIC8vIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMCUsIDApO1xuICAgICAgICB0cmFuc2l0aW9uOiByaWdodCAwLjVzIGN1YmljLWJlemllcigwLjc3LDAuMiwwLjA1LDEuMCk7XG4gICAgICAgIHotaW5kZXg6IDkwO1xuICAgICAgICBsaXtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgJi5idXJnZXItbGlua3tcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICAgICAgICAgICAgICAmLmhvdmVyLWxpbmV7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGRhcmstYmx1ZS0yO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGEuYnV0dG9uIHsgZm9udC1zaXplOiAxLjJlbTsgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5tZW51LWl0ZW0taWNvbntcbiAgICAgICAgICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyMDBtcztcbiAgICAgICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5tZW51LWl0ZW0taWNvbiAucGljdG8geyBcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgIH4gLm1lbnUtbGluayB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgICB9XG4gICAgfVxufVxuQGluY2x1ZGUgYnJlYWtQb2ludCgxNTcwKXtcbiAgICAubWVudS1pdGVte1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgICYtaWNvbntcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMWVtO1xuICAgICAgICB9XG4gICAgfVxufVxuQGluY2x1ZGUgYnJlYWtQb2ludCgxNDc1KXtcbiAgICAubWVudS1pdGVte1xuICAgICAgICBmb250LXNpemU6IDAuOWVtO1xuICAgICAgICAmLm1lbnUtaXRlbS1kZWNvbm5leGlvbnsgcGFkZGluZy1yaWdodDogMDt9XG4gICAgfVxufVxuQGluY2x1ZGUgYnJlYWtQb2ludCgxMzUwKXtcbiAgICAubWVudS1pdGVte1xuICAgICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgIH1cbn0iLCJmb290ZXIge1xuICAgIHBhZGRpbmc6IDRlbSAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAubG9nbyB7IG1hcmdpbi1ib3R0b206IC43ZW07IH1cbiAgICAuYWRyZXNzZSB7IG1hcmdpbi1ib3R0b206IC43ZW07IH1cbiAgICAucGhvbmUgeyBmb250LXNpemU6IDEuNHJlbTsgfVxuICAgIC5yb3cge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgfVxuICAgIC5sZWZ0IHsgd2lkdGg6IDIwJTsgfVxuICAgIC5mb290ZXItbWVudSB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA4LjZyZW07XG4gICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgfVxuICAgIC5mb290ZXJfbG9nb3Mge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtYXJnaW4tdG9wOiAyNHB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogMjRweDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoI2ZmZiwgLjUpO1xuICAgICAgICA+ICoge1xuICAgICAgICAgICAgd2lkdGg6IE1pbigzMy4zMyUsIDE1MHB4KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICB1bCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICB9XG4gICAgbGkgeyBtYXJnaW46IDAgMTBweDsgfVxuICAgIGEge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoOTAwKXtcbiAgICAgICAgLnJvdyB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAgIC5sZWZ0IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIC5mb290ZXItbWVudSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtQb2ludCg2NDApIHtcbiAgICAgICAgLmZvb3Rlci1tZW51IHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbn0iLCIucGFnZS1zaW11bGF0ZXVyIHtcbiAgICBjb2xvcjogJGJsYWNrLTI7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAuY29udGFpbmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxNTYwcHg7XG4gICAgICAgIHBhZGRpbmc6IDAgMnJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoNjAwKSB7IHBhZGRpbmc6IDAgMjBweDsgfVxuICAgIH1cbiAgICAjbmJGaWNoZXMgeyBcbiAgICAgICAgY29sb3I6ICRibGFjay0yOyBcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICAgIGxlZ2VuZCB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICBsYWJlbFtmb3I9ZmljaGVfY2FsY3Vsc10geyBkaXNwbGF5OiBub25lOyB9XG4gICAgaDMgeyBcbiAgICAgICAgY29sb3I6ICRibGFjay0yO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbjogNXB4IDAgMTBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgfVxuICAgICNzZWN0ZXVyc19zZWN0ZXVyIHtcbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgI2ZpY2hlX2NhbGN1bCB7XG4gICAgICAgIGxhYmVsIHsgb3JkZXI6IDA7IH1cbiAgICAgICAgaW5wdXQgeyBvcmRlcjogMTsgfVxuICAgIH1cbiAgICAjc2VhcmNoLWZpY2hlIHtcbiAgICAgICAgbWF4LXdpZHRoOiAzNDBweDtcbiAgICB9XG4gICAgLmluZGljYXRpb25zIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCg4MDApIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLndpdGgtbGVnZW5kIGxlZ2VuZCB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLmJhbmRlYXUge1xuICAgICAgICBwYWRkaW5nOiAxZW07XG4gICAgICAgIGNvbG9yOiAkYmxhY2stMjtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWVlO1xuICAgIH1cbiAgICAuc2ltdWxhdGV1ci10b3AgeyB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIC5yb3cge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICAuY29sIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgbWFyZ2luOiAxLjVlbTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gM2VtKTtcbiAgICB9XG4gICAgLmNob2ljZSB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHBhZGRpbmc6IDJlbTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgM3B4IDZweCByZ2JhKCMwMDAsIDAuMjkpO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xuICAgICAgICBzdmcgcGF0aCB7IGZpbGw6ICMwMDA7IH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZWVlO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIFBhcmNvdXJzIGRlIHNpbXVsYXRpb25cbiAgICAucHJvZ3Jlc3NiYXJ7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgY291bnRlci1yZXNldDogc3RlcDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDAgNTBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCg4MDApIHsgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICBsaXtcbiAgICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrLTI7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjllbTtcbiAgICAgICAgICAgIHNwYW57XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6OmJlZm9yZXtcbiAgICAgICAgICAgICAgICBjb250ZW50OmNvdW50ZXIoc3RlcCk7XG4gICAgICAgICAgICAgICAgY291bnRlci1pbmNyZW1lbnQ6IHN0ZXA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRibGFjay0yO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDEwcHggYXV0bztcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrLTI7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjo6YWZ0ZXJ7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHdpZHRoOjEyMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrLTI7XG4gICAgICAgICAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0xMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmFjdGl2ZXtcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmV7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibGFjay0yO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmNoZWNre1xuICAgICAgICAgICAgICAgICY6OmJlZm9yZXtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogdXJsKC4uLy4uL3B1YmxpYy9pbWFnZXMvY2hlY2ttYXJrLnBuZyk7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmVlbjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmVlbjtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMuNztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgZmllbGRzZXR7IFxuICAgICAgICBib3JkZXI6IG5vbmU7IFxuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAvLyAmLmZvcm0tZ3JvdXB7XG4gICAgICAgIC8vICAgICBtYXJnaW46IDMwcHggMDtcbiAgICAgICAgLy8gfVxuICAgIH1cbiAgICBmb3Jte1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICNmaWNoZS50by1zY3JvbGwge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICB0b3A6IC0xMHB4OyBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcvaW1hZ2VzL2Fycm93LXVwLnN2ZycpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi50b3A6YmVmb3JlIHsgb3BhY2l0eTogMDsgfVxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAtMjBweDsgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnL2ltYWdlcy9hcnJvdy1kb3duLnN2ZycpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5ib3R0b206YWZ0ZXIgeyBvcGFjaXR5OiAwOyB9XG4gICAgICAgIH1cbiAgICAgICAgJi50by1zY3JvbGwgI2ZpY2hlX2NhbGN1bHMge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogNTIwcHg7XG4gICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICAgICAgLyogd2lkdGggKi9cbiAgICAgICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLyogVHJhY2sgKi9cbiAgICAgICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjFmMWYxO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLyogSGFuZGxlICovXG4gICAgICAgICAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGRhcmstYmx1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8qIEhhbmRsZSBvbiBob3ZlciAqL1xuICAgICAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGRhcmtlbigkZGFyay1ibHVlLCAxNSUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5yZXF1aXJlZCxcbiAgICAgICAgbGFiZWwgeyBcbiAgICAgICAgICAgIC8vIGZvbnQtd2VpZ2h0OiBib2xkOyBcbiAgICAgICAgfVxuICAgICAgICBsZWdlbmR7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIGRpdi5mb3JtLWNoZWNre1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDEwcHg7XG4gICAgICAgICAgICBsYWJlbHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlucHV0W3R5cGUgPSByYWRpb117XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl17XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpudGgtb2YtdHlwZSgybikge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmhpZGUgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgIH1cbiAgICAgICAgJltuYW1lPWZpY2hlX2NhbGN1bF0gZGl2LmZvcm0tY2hlY2ssXG4gICAgICAgICZbbmFtZT1maWNoZV90ZXN0XSBkaXYuZm9ybS1jaGVjayxcbiAgICAgICAgJltuYW1lPXJlY3VwZXJhdGlvbl9jaGFsZXVyXSBkaXYuZm9ybS1jaGVjayB7IFxuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM5M0IyMjQ7XG4gICAgICAgIH1cbiAgICAgICAgZGl2LmZvcm0tZ3JvdXB7XG4gICAgICAgICAgICBtYXJnaW46IDIwcHggMDtcbiAgICAgICAgfVxuICAgICAgICBkaXYjc2VjdGV1cnNfc2VjdGV1cntcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgLmZvcm0tY2hlY2t7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAzcHggOHB4IC0ycHggJHNoYWRvdztcbiAgICAgICAgICAgICAgICAvLyBoZWlnaHQ6IDE4MHB4O1xuICAgICAgICAgICAgICAgIC8vIHdpZHRoOiAxODBweDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDEwcHggMjBweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDE2LjY2JSAtIDQwcHgpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKDE2LjY2JSAtIDQwcHgpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha1BvaW50KDE1NDApIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAuODVyZW07XG4gICAgICAgICAgICAgICAgICAgIC8vIG1hcmdpbjogMjBweCA1MHB4O1xuICAgICAgICAgICAgICAgICAgICAvLyB3aWR0aDogY2FsYygzMy4zMyUgLSAxMDBweCk7XG4gICAgICAgICAgICAgICAgICAgIC8vIHBhZGRpbmctYm90dG9tOiBjYWxjKDMzLjMzJSAtIDEwMHB4KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCgxMTQwKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTYuNjYlIC0gMjBweCk7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKDE2LjY2JSAtIDIwcHgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha1BvaW50KDk0MCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDIwcHggMjBweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMzMuMzMlIC0gNDBweCk7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKDMzLjMzJSAtIDQwcHgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha1BvaW50KDYwMCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDIwcHggMjBweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gNDBweCk7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKDUwJSAtIDQwcHgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha1BvaW50KDQwMCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogY2FsYyg1MCUgLSAyMHB4KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaW5wdXRbdHlwZSA9IHJhZGlvXXtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgICAgICAgICAgICAgICY6Y2hlY2tlZCtsYWJlbHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRtYXV2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICAgICAgc3ZnIHBhdGgsXG4gICAgICAgICAgICAgICAgICAgICAgICBzdmcgcmVjdCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHN2ZyBjaXJjbGUgeyBmaWxsOiAjZmZmOyB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgbGFiZWwsIGF7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7IGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JleTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgc3BhbiB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAgICAgICAgICAgc3ZnIGcgeyBjbGlwLXBhdGg6IG5vbmU7IH1cbiAgICAgICAgICAgICAgICBzdmcgcGF0aCxcbiAgICAgICAgICAgICAgICBzdmcgcmVjdCxcbiAgICAgICAgICAgICAgICBzdmcgY2lyY2xlIHsgZmlsbDogJGdyZWVuOyB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmludmFsaWQtZmVlZGJhY2t7XG4gICAgICAgICAgICBtYXJnaW4tYmxvY2s6IDVweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBkaXYuc3RpY2t5e1xuICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgICBwb3NpdGlvbjogLXdlYmtpdC1zdGlja3k7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIGEuYnRuMiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha1BvaW50KDQyMCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMTVweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBidXR0b257XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha1BvaW50KDQyMCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMTVweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYucHJldmlvdXN7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAuYnRuMjtcbiAgICAgICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAuODtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLm5leHR7XG4gICAgICAgICAgICAgICAgLy8gQGV4dGVuZCAuYnRuMjtcbiAgICAgICAgICAgICAgICAmW2Rpc2FibGVkXSB7IFxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY29udHJvbHMtYnV0dG9ucyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha1BvaW50KDU2MCkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICNuYkZpY2hlcyB7IFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5iYW5kZWF1LXRvcCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoODAwKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgYSB7IG9yZGVyOiAwOyB9XG4gICAgICAgICAgICBoMiB7IFxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDE7IFxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuYmFuZGVhdS1zZWFyY2gge1xuICAgICAgICBAaW5jbHVkZSBicmVha1BvaW50KDgwMCkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAjc2VhcmNoLWZpY2hlIHsgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmJhbmRlYXUtY29uZGl0aW9ucyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoODAwKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGgzIHsgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAgICAgICAgICAgLmRpdi1jb25kaXRpb25zIHsgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuZmljaGUtc3BlYyB7XG4gICAgICAgICZfX3BhcnQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgfVxuICAgICAgICAmX19jb2xsZWN0aW9uIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRjdGN0Y3O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgICAgLmZvcm0tZ3JvdXAgeyBtYXJnaW4tdG9wOiAxMHB4OyBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgICAgIH1cbiAgICAgICAgJl9fc3VidGl0bGUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIGNvbG9yOiAkZGFyay1ibHVlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICBpbWcgeyBtYXJnaW4tYm90dG9tOiAycHg7IH1cbiAgICAgICAgfVxuICAgICAgICAucHJvZHVjdGlvbi1mcm9pZCB7XG4gICAgICAgICAgICAuZmljaGUtc3BlY19fc3VidGl0bGUsXG4gICAgICAgICAgICAuc3ViZm9ybV9fdGl0bGU6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMzdhOGRiO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5iZXNvaW4tY2hhbGV1ciB7XG4gICAgICAgICAgICAuZmljaGUtc3BlY19fc3VidGl0bGUsXG4gICAgICAgICAgICAuc3ViZm9ybV9fdGl0bGU6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZjE5MzAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zdWJmb3JtX190aXRsZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDsgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzN3B4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubC0yLXJvd3Mge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgPiBkaXYgeyBcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPiBkaXY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgID4gZGl2Om50aC1jaGlsZChldmVuKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDQwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmJ0biB7IG1hcmdpbi1ib3R0b206IDVweDsgfVxuICAgICAgICBpbnB1dFtyZWFkb25seV0geyBcbiAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNkM2QzZDM7IFxuICAgICAgICB9XG4gICAgfVxuICAgIC5maWNoZS1yZWN1cC1jaGFsZXVyIHtcbiAgICAgICAgLndpdGgtY29uZGl0aW9ucyB7IFxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgXG4gICAgICAgICAgICAmLS1zaG93IHsgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNpbXVsYXRldXItdGl0bGUge1xuICAgIGNvbG9yOiAkYmxhY2stMjtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbn1cblxuI2FwcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDEuOGVtIDA7XG4gICAgbWFyZ2luOiAwcmVtIGF1dG87XG4gICAgJi5sb2FkaW5nOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDsgcmlnaHQ6IDA7IGJvdHRvbTogMDsgbGVmdDogMDtcbiAgICAgICAgYmFja2dyb3VuZDpyZ2JhKCMwMDAsIC4xOSk7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgICYubG9hZGluZzphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlOyBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICBib3JkZXI6IDRweCBzb2xpZCAjNjY2OyAvKiBMaWdodCBncmV5ICovXG4gICAgICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCAjMzQ5OGRiOyAvKiBCbHVlICovXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgd2lkdGg6IDQ4cHg7XG4gICAgICAgIGhlaWdodDogNDhweDtcbiAgICAgICAgYW5pbWF0aW9uOiBzcGluIDEuNHMgbGluZWFyIGluZmluaXRlO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgICAvLyBtYXgtd2lkdGg6IDEwODBweDtcbiAgICAvLyBAaW5jbHVkZSBicmVha1BvaW50KDQyMCkge1xuICAgIC8vICAgICBwYWRkaW5nOiAyMHB4O1xuICAgIC8vIH1cbn1cblxuLmZvcm0tYWlkZSB7IFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogNXB4O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBiYWNrZ3JvdW5kOiAkZ3JlZW47XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBtaW4td2lkdGg6IDEzMHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmZvcm0tYWlkZS1haWRlIHsgXG4gICAgZGlzcGxheTogbm9uZTsgXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG1pbi13aWR0aDogMjAwcHg7XG4gICAgY29sb3I6ICMzMzM7XG4gICAgdG9wOiA1MCU7IHJpZ2h0OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKGNhbGMoMTAwJSArIDhweCksIC01MCUpO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzMzMztcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBib3gtc2hhZG93OiAwIDNweCAzcHggcmdiYSgjMDAwLCAuMjkpO1xuICAgIHotaW5kZXg6IDE7XG4gICAgQGluY2x1ZGUgYnJlYWtQb2ludCg4MDApIHtcbiAgICAgICAgbGVmdDogMDsgdHJhbnNmb3JtOiBub25lOyBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgIHRvcDogMzZweDsgei1pbmRleDogOTtcbiAgICB9XG59XG5cbi8vIC5tb2RhbGUge1xuLy8gICAgIHBvc2l0aW9uOiBmaXhlZDtcbi8vICAgICB0b3A6IDA7IHJpZ2h0OiAwOyBib3R0b206IDA7IGxlZnQ6IDA7XG4vLyAgICAgaGVpZ2h0OiAxMDB2aDtcbi8vICAgICBkaXNwbGF5OiBmbGV4O1xuLy8gICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4vLyAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4vLyAgICAgei1pbmRleDogMjAwO1xuLy8gICAgIGJhY2tncm91bmQ6IHJnYmEoIzAwMCwgLjI5KTtcbi8vICAgICAmX19jb250ZW50IHtcbi8vICAgICAgICAgcGFkZGluZzogNDBweDtcbi8vICAgICAgICAgbWFyZ2luOiAyMHB4O1xuLy8gICAgICAgICBtYXJnaW4tYm90dG9tOiAxMjBweDtcbi8vICAgICAgICAgbWF4LXdpZHRoOiA4MDBweDtcbi8vICAgICAgICAgbWF4LWhlaWdodDogNzAlO1xuLy8gICAgICAgICAvLyBvdmVyZmxvdy15OiBhdXRvO1xuLy8gICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuLy8gICAgICAgICBib3gtc2hhZG93OiAwIDNweCA2cHggcmdiYSgjMDAwLCAuMjkpO1xuLy8gICAgICAgICB6LWluZGV4OiAyMDA7XG4vLyAgICAgICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoMTAyNCkge1xuLy8gICAgICAgICAgICAgbWFyZ2luOiAwIDEwcHg7XG4vLyAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuLy8gICAgICAgICB9XG4vLyAgICAgfVxuLy8gfVxuXG4vLyAubW9kYWxlIHtcbi8vICAgICAmX19jb250ZW50IHtcbi8vICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuLy8gICAgICAgICBzcGFuLmNsb3NlQ29uZGl0aW9uLFxuLy8gICAgICAgICBzcGFuLm1vZGFsZV9fY2xvc2Uge1xuLy8gICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDRweDsgcmlnaHQ6IDRweDsgd2lkdGg6IDI0cHg7IGhlaWdodDogMjRweDtcbi8vICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbi8vICAgICAgICAgICAgIGltZ3t3aWR0aDogMTAwJTt9XG4vLyAgICAgICAgIH1cbi8vICAgICB9XG4vLyAgICAgZGl2LmZpbiB7XG4vLyAgICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4vLyAgICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbi8vICAgICB9XG4vLyB9XG5cbi5tb2RhbGUsXG4uY2FsY3VsLWNvbmRpdGlvbnMge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7IHJpZ2h0OiAwOyBib3R0b206IDA7IGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgei1pbmRleDogMjAwO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoIzAwMCwgLjI5KTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBtYXJnaW46IDIwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEyMHB4O1xuICAgICAgICB3aWR0aDogODAwcHg7XG4gICAgICAgIG1heC1oZWlnaHQ6IDcwJTtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAzcHggNnB4IHJnYmEoIzAwMCwgLjI5KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICB6LWluZGV4OiAyMDA7XG4gICAgfVxuICAgICZfX2hlYWRlciB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgYmFja2dyb3VuZDogJGdyZWVuO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U1ZTVlNTtcbiAgICAgICAgJi0tZXJyb3IgeyBiYWNrZ3JvdW5kOiAkcmVkOyB9XG4gICAgfVxuICAgICZfX2JvZHkge1xuICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICBoZWlnaHQ6IDI1MHB4O1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIH1cbiAgICAmX19mb290ZXIge1xuICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNWU1ZTU7XG4gICAgfVxufVxuXG4uaW5mby1idWxsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICZfX2luZm8ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTVweDsgbGVmdDogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTEwMCUpO1xuICAgICAgICBwYWRkaW5nOiA1cHggN3B4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgM3B4IDZweCByZ2JhKCMwMDAsIC4yOSk7XG4gICAgfVxuICAgICY6aG92ZXIgJl9faW5mbyB7IGRpc3BsYXk6IGJsb2NrOyB9XG59XG5cbi5ibG9ja19ncmV5IHtcbiAgICBiYWNrZ3JvdW5kOiNFQkVCRUI7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICYtLWxpZ2h0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCNFQkVCRUIsIC4yNSk7XG4gICAgfVxufVxuLmJsb2NrLWNlbnRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG5cbi5yZWNhcGl0dWxhdGlmIHtcbiAgICBjb2xvcjogIzAwMDtcbiAgICAmLm92ZXJsYXkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIEBrZXlmcmFtZXMgYXBwZWFyIHtcbiAgICAgICAgICAgICAgICBmcm9tIHsgYmFja2dyb3VuZDogcmdiYSgjMDAwLCAwKTsgfVxuICAgICAgICAgICAgICAgIHRvIHsgYmFja2dyb3VuZDogcmdiYSgjMDAwLCAuMjkpOyB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDsgcmlnaHQ6IDA7IGJvdHRvbTogMDsgbGVmdDogMDtcbiAgICAgICAgICAgIC8vIGJhY2tncm91bmQ6IHJnYmEoIzAwMCwgLjI5KTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoIzAwMCwgMCk7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBhcHBlYXI7XG4gICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IDEuNXM7XG4gICAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IC4zcztcbiAgICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5tYi0xIHsgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuICAgIGltZy5jb3ZlciB7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgICBoMSB7IGZvbnQtc2l6ZTogMS44cmVtOyB9XG4gICAgJl9fY29udGFpbmVyIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xuICAgICAgICBtYXgtd2lkdGg6IDE1NjBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCgkYnJlYWtQb2ludE1lbnUpIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fY29udGFpbmVyMiB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmctbGVmdDogNHJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNHJlbTtcbiAgICAgICAgbWF4LXdpZHRoOiAxNTYwcHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoJGJyZWFrUG9pbnRNZW51KSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgICZfX3RvcCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZy10b3A6IC43NXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IC43NXJlbTtcbiAgICB9XG4gICAgJl9fZmlsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjRUJFQkVCO1xuICAgICAgICBAaW5jbHVkZSBicmVha1BvaW50KDY0MCkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICAgICAgICB9XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB9XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07IFxuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzAwMDsgXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQgeyBmb250LXdlaWdodDogYm9sZDsgfVxuICAgICAgICB9XG4gICAgfVxuICAgICZfX3Jlc3VtZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7IFxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyBcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19lbmNhcnQtcHJpbWUge1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjQzdDM0QxO1xuICAgICAgICBoMiB7IG1hcmdpbjogMS4ycmVtIDA7IH1cbiAgICAgICAgcCB7IFxuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXJlY2FwLWdyZXkpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDsgXG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fZW5jYXJ0IHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG4gICAgLnByaW1lIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGdhcDogNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBjb2xvcjogdmFyKC0tcmVjYXAtZ3JlZW4pO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZSwgNnJlbSk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBzcGFuIHsgZm9udC1zaXplOiAxLjVyZW07IH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCgxNjcwKSB7IGZvbnQtc2l6ZTogNC41cmVtOyB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoMTQxMCkgeyBmb250LXNpemU6IDRyZW07IH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCg3NDApIHsgZm9udC1zaXplOiAzLjJyZW07IH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCg2MjApIHsgZm9udC1zaXplOiAyLjE1cmVtOyB9XG4gICAgfVxuICAgIC5ibG9jay1hcHBvcnQge1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICB9XG4gICAgLmJsb2NrLWluZm9ybWF0aW9ucyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgcGFkZGluZzogMS4ycmVtO1xuICAgICAgICBnYXA6IDEwcHg7XG4gICAgICAgICZfX2luZm9ybWF0aW9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgICAgICAgIHNwYW4geyB3aWR0aDogNjAlOyB9XG4gICAgICAgICAgICBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyBcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MCU7IFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoODAwKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICZfX2luZm9ybWF0aW9uIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBzcGFuLFxuICAgICAgICAgICAgICAgIHNwYW46Zmlyc3QtY2hpbGQgeyBcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7IFxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnN1YnRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLjc1ZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIH1cbiAgICAuaHlwb3RoZXNlcyB7XG4gICAgICAgICRicmVha1BvaW50SHlwb3RoZXNlczogNzIwO1xuICAgICAgICAmX19oZWFkZXIge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1yZWNhcC12aW9sZXQpO1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMTBweDtcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxMHB4O1xuICAgICAgICAgICAgLmNvbC1hY3Rpb25zIHsgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZmZmOyB9XG4gICAgICAgICAgICAuY29sLW1vbnRhbnQgeyBib3JkZXItbGVmdDogMXB4IHNvbGlkICNmZmY7IH1cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoJGJyZWFrUG9pbnRIeXBvdGhlc2VzKSB7XG4gICAgICAgICAgICAgICAgJjpub3QoLnByZXZpZXcpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJl9fYm9keSB7XG4gICAgICAgICAgICAuY29sLWZpY2hlcyxcbiAgICAgICAgICAgIC5jb2wtYWN0aW9ucyxcbiAgICAgICAgICAgIC5jb2wtbW9udGFudCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS1yZWNhcC1ncmV5KTtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tcmVjYXAtZ3JleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY29sLW1vbnRhbnQgeyBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1yZWNhcC1ncmV5KTsgfVxuICAgICAgICB9XG4gICAgICAgICZfX3JvdyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgLmNwZS1hY3RpZiBsYWJlbCB7XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW46IDVweCAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoIzAwMCwgLjI5KTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2U7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoIzAwMCwgLjI5KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha1BvaW50KCRicmVha1BvaW50SHlwb3RoZXNlcykge1xuICAgICAgICAgICAgICAgICY6bm90KC5wcmV2aWV3KSB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJl9fY29sIHtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IFxuICAgICAgICAgICAgcGFkZGluZzogMTBweDsgXG4gICAgICAgIH1cbiAgICAgICAgLmNvbC1maWNoZXMgeyBmbGV4OiAxOyB9XG4gICAgICAgIC5jb2wtYWN0aW9ucyB7IHdpZHRoOiAxNTBweDsgfVxuICAgICAgICAuY29sLW1vbnRhbnQgeyB3aWR0aDogMTYwcHg7IH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCgkYnJlYWtQb2ludEh5cG90aGVzZXMpIHtcbiAgICAgICAgICAgICY6bm90KC5wcmV2aWV3KSB7XG4gICAgICAgICAgICAgICAgLmNvbC1maWNoZXMgeyBcbiAgICAgICAgICAgICAgICAgICAgZmxleDogYXV0bzsgXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tcmVjYXAtZ3JleSk7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLXJlY2FwLWdyZXkpO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmNvbC1hY3Rpb25zLFxuICAgICAgICAgICAgICAgIC5jb2wtbW9udGFudCB7IFxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlOyBcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmNvbC1tb250YW50IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5idXR0b25zIHsgXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogNXZ3O1xuICAgICAgICBAaW5jbHVkZSBicmVha1BvaW50KDY0MCkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBhIHsgXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTNweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ldGFwZXMge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBnYXA6IDEyMHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAzMnB4OyBsZWZ0OiAwOyByaWdodDogMDtcbiAgICAgICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCg4MDApIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAmOmJlZm9yZSB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuZXRhcGUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIG1heC13aWR0aDogOTBweDtcbiAgICAgICAgYSB7IGNvbG9yOiBjdXJyZW50Q29sb3I7IH1cbiAgICAgICAgJl9fbnVtZXJvIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0byAxMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA2NHB4O1xuICAgICAgICAgICAgd2lkdGg6IDY0cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIGJvcmRlcjogM3B4IHNvbGlkICMwMDA7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIH1cbiAgICAgICAgJl9fbGFiZWwge1xuICAgICAgICAgICAgZm9udC1zaXplOiAuOXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICBhOmhvdmVyIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICAgICAgfVxuICAgICAgICAmLS1pcy1hY3RpdmUgLmV0YXBlX19udW1lcm8ge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1yZWNhcC1ncmVlbik7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNmZmY7XG4gICAgICAgIH1cbiAgICAgICAgJi0taXMtdmFsaWQgLmV0YXBlX19udW1lcm8ge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1yZWNhcC12aW9sZXQpO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcmVjYXAtZ3JlZW4pO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjsgXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCg4MDApIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICZfX2xhYmVsIGEsXG4gICAgICAgICAgICAmX19sYWJlbCAubGluay1saWtlIHsgXG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmX19udW1lcm8ge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi0taXMtYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAuZXRhcGVfX2xhYmVsIGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcmVjYXAtZ3JlZW4pO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi0taXMtdmFsaWQge1xuICAgICAgICAgICAgICAgLmV0YXBlX19sYWJlbCBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXJlY2FwLXZpb2xldCk7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7IGJhY2tncm91bmQ6IHZhcigtLXJlY2FwLWdyZWVuKTsgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZS1maWxlcyB7XG4gICAgICAgIC0tYm9yZGVyOiAxcHggc29saWQgYmxhY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTBweDtcbiAgICAgICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gICAgICAgIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gICAgICAgIGJvcmRlcjogdmFyKC0tYm9yZGVyKTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdGg6bm90KDpsYXN0LWNoaWxkKSxcbiAgICAgICAgdGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IHZhcigtLWJvcmRlcik7XG4gICAgICAgIH1cbiAgICAgICAgPnRoZWFkPnRyPnRoLFxuICAgICAgICA+dGhlYWQ+dHI6bm90KDpsYXN0LWNoaWxkKT50ZCxcbiAgICAgICAgPnRib2R5PnRyOm5vdCg6bGFzdC1jaGlsZCk+dGgsXG4gICAgICAgID50Ym9keT50cjpub3QoOmxhc3QtY2hpbGQpPnRkLFxuICAgICAgICA+dGZvb3Q+dHI6bm90KDpsYXN0LWNoaWxkKT50aCxcbiAgICAgICAgPnRmb290PnRyOm5vdCg6bGFzdC1jaGlsZCk+dGQsXG4gICAgICAgID50cjpub3QoOmxhc3QtY2hpbGQpPnRkLFxuICAgICAgICA+dHI6bm90KDpsYXN0LWNoaWxkKT50aCxcbiAgICAgICAgPnRoZWFkOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgICAgID50Ym9keTpub3QoOmxhc3QtY2hpbGQpLFxuICAgICAgICA+dGZvb3Q6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiB2YXIoLS1ib3JkZXIpO1xuICAgICAgICB9XG4gICAgICAgIHRoZWFkIHsgdGV4dC1hbGlnbjogbGVmdDsgYmFja2dyb3VuZDogI0ZCRkJGQjsgfVxuICAgICAgICB0aCwgdGQgeyBwYWRkaW5nOiAxcmVtOyB9XG4gICAgICAgIC8vIHRyLm92ZXJsYXkge1xuICAgICAgICAvLyAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAvLyAgICAgJjpiZWZvcmUge1xuICAgICAgICAvLyAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAvLyAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgLy8gICAgICAgICB0b3A6IDA7IGxlZnQ6IDA7XG4gICAgICAgIC8vICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIC8vICAgICAgICAgYmFja2dyb3VuZDogcmVkO1xuICAgICAgICAvLyAgICAgfVxuICAgICAgICAvLyB9XG4gICAgfVxuXG4gICAgLnJlc3VsdHNfX3JvdyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICYgPiBkaXY6Zmlyc3QtY2hpbGQgeyBcbiAgICAgICAgICAgIG1pbi13aWR0aDogNTMwcHg7IFxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoOTgwKSB7IFxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7IFxuICAgICAgICAgICAgJiA+IGRpdjpmaXJzdC1jaGlsZCB7IFxuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMDsgXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnJvdy0yLWNvbHMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgICAgICAgPiAqICB7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgbWFyZ2luOiAxNXB4O1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMzBweCk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCg4NDApIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICA+ICoge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDsgXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDE1cHg7IH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmNvbmZpcm1hdGlvbiB7XG4gICAgICAgIC5yZWNhcGl0dWxhdGlmX19lbmNhcnQtcHJpbWUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICAucmVjYXBpdHVsYXRpZl9fZW5jYXJ0LXByaW1lIGgyIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBmb250LXNpemU6IDMuMnJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAa2V5ZnJhbWVzIHBvcEluIHtcbiAgICAgICAgZnJvbSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdG9wOiA2MCU7XG4gICAgICAgIH1cbiAgICAgICAgdG8geyBcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7IFxuICAgICAgICAgICAgdG9wOiA0NSU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLm1vZGFsLWxvZ2luIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgICAgICAgLS1ib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiA0NSU7IGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAzcHggM3B4IHJnYmEoIzAwMCwgLjI5KTtcbiAgICAgICAgY29sb3I6ICRibGFjay0yO1xuICAgICAgICBmb250LXNpemU6IDAuODVyZW07XG4gICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgIGFuaW1hdGlvbjogcG9wSW4gMXM7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMnM7XG4gICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICAgICAgICBoMiB7IFxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjsgXG4gICAgICAgICAgICBmb250LXNpemU6IDIuMmVtO1xuICAgICAgICB9XG4gICAgICAgIC5jb2wtMiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC01cHg7XG4gICAgICAgICAgICA+ICoge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMTBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZGl2Lm1vZGFsLWxvZ2luX19jb250ZW50IHsgZGlzcGxheTogZmxleDsgfVxuICAgICAgICAubGVmdCBpbWcge1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgfVxuICAgICAgICAubGVmdCB7IHdpZHRoOiA0MCU7IH1cbiAgICAgICAgLnJpZ2h0IHtcbiAgICAgICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgICBwYWRkaW5nOiAyLjJlbSAyLjJlbSAxLjVlbSAyLjJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW46IDMwcHggMDtcbiAgICAgICAgfVxuICAgICAgICAuZG90cyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBnYXA6IDEwcHg7XG4gICAgICAgICAgICAmX19kb3Qge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2NjYztcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgJi0taXMtYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGdyZXk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5idG4yIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuOGVtIDFlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIC5idXR0b24tZ29vZ2xlIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0OHB4O1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCg5OTUpIHtcbiAgICAgICAgICAgIC5sZWZ0IHsgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAgICAgLnJpZ2h0IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha1BvaW50KDY4MCkge1xuICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgICAgIC5hY3Rpb25zIHtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgLmJ0bjIge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha1BvaW50KDEwMjQpIHtcbiAgICAgICAgLnJvdy1wcmltZSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIC5yZWNhcGl0dWxhdGlmX19lbmNhcnQtcHJpbWUgeyBcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoNjIwKSB7XG4gICAgICAgIC5yb3ctdG9vbHMgeyBcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyBcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgXG4gICAgICAgIH1cbiAgICAgICAgLnJvdy10b29scyA+ICoge1xuICAgICAgICAgICAgbWFyZ2luOiAxNXB4IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLS1jb21wbGV0IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCg3MjApIHtcbiAgICAgICAgICAgIC5oeXBvdGhlc2VzIC5jb2wtbW9udGFudCB7IHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBpbmNsdWRlIGJyZWFrUG9pbnQoMTAyNCkge1xuICAgIC50YWJsZXR0ZS1oaWRlIHsgZGlzcGxheTogbm9uZTsgfVxufVxuXG4uY3BlLXdpZGdldCB7XG4gICAgc2VsZWN0LmNhbGN1bC1jcGUsXG4gICAgaW5wdXQuY2FsY3VsLWNwZSB7XG4gICAgICAgIHBhZGRpbmc6IDAuNGVtIDAuNzVlbTtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIH1cbiAgICBzZWxlY3QuY2FsY3VsLWNwZSB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbi5zZWxlY3QtY29vcmRzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwLjRlbSAwLjc1ZW07XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbn1cblxuLnJlY2FwdGlsYXRpZi13aGl0ZS1sYWJlbCB7XG4gICAgLnJvdy5yb3ctd2hpdGUtbGFiZWwgeyBkaXNwbGF5OiBmbGV4OyB9XG4gICAgLmxlZnQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4OyBcbiAgICAgICAgd2lkdGg6IDUwJTsgXG4gICAgfVxuICAgIC5yaWdodCB7IHdpZHRoOiA1MCU7IH1cbiAgICAuZW5jYXJ0LWZpbGUge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBwYWRkaW5nOiAuNXJlbSAxcmVtO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ibHVlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAuZ3JleSB7IGNvbG9yOiAkZ3JleTsgfVxuICAgIH1cbiAgICAjYWNjb3VudC1sb2dvIHsgXG4gICAgICAgIG1heC13aWR0aDogMTAwJTsgXG4gICAgICAgIHdpZHRoOiAxODBweDtcbiAgICB9XG4gICAgLmNob2ljZS1jb2xvcnMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICBjb2xvcjogJGdyZXk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB9XG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB3aWR0aDogMzJweDtcbiAgICAgICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgfVxuICAgICAgICA+ICoge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IDM1JTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoOTAwKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuY2F0ZWdvcnktdGl0bGUsXG4gICAgbGFiZWwge1xuICAgICAgICBjb2xvcjogJGRhcmstYmx1ZTtcbiAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha1BvaW50KDc4NSkge1xuICAgICAgICAucm93LnJvdy13aGl0ZS1sYWJlbCB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAgIC5sZWZ0LFxuICAgICAgICAucmlnaHQge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLndoaXRlLWxhYmVsLXRlbXBsYXRlIHtcbiAgICBwYWRkaW5nOiAxZW07XG4gICAgZm9udC1zaXplOiAuNXJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ibHVlO1xuICAgIC5wYWdlLWJyZWFrIHsgcGFnZS1icmVhay1iZWZvcmU6IGFsd2F5czsgfVxuICAgICogeyBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG4gICAgYm9keSB7XG4gICAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIH1cbiAgICBoMSxcbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gICAgLmRmLWFpYyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gICAgLmhlbHBlcl9fdGFyZ2V0IHtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgIzAwMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIH1cbiAgICAucm93IHsgZGlzcGxheTogZmxleDsgfVxuICAgIC5oZWxwZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlOyByaWdodDogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTAwJSwgLTUwJSk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICYuaGVscGVyLXByaW1lIHtcbiAgICAgICAgICAgIC5oZWxwZXJfX2xhYmVsIHsgZm9udC1zaXplOiAxMnB4OyB9XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha1BvaW50KDkwMCkge1xuICAgICAgICAgICAgICAgICYuaGVscGVyLXByaW1lIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAtMjhweDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTAwJSwgMCk7XG4gICAgICAgICAgICAgICAgICAgIC5oZWxwZXJfX2Fycm93IHsgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAgICAgICAgICAgICAuaGVscGVyX19sYWJlbCB7IGZvbnQtc2l6ZTogOXB4OyB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5oZWxwZXJfX2xhYmVsIHtcbiAgICAgICAgcGFkZGluZzogLjI1cmVtIDFyZW07XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRncmVlbjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIH1cbiAgICAud2hpdGUtbGFiZWwtbG9nbyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBoZWFkZXIgaDEge1xuICAgICAgICBjb2xvcjogIzEwMzA3MjtcbiAgICB9XG4gICAgaGVhZGVyIGltZyB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgfVxuICAgIC5iciB7IGJvcmRlci1yYWRpdXM6IDhweDsgfVxuICAgIC5jb2wtMiB7IHdpZHRoOiBjYWxjKDUwJSAtIDEwcHgpOyB9XG4gICAgLmZpcnN0LWNvbCB7IG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgIC5sYXN0LWNvbCB7IG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG4gICAgLnRleHQtYm9sZCB7IGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gICAgLnNlY3Rpb24geyBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gICAgLmJsb2NrX2dyZXkge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNDN0MzRDE7XG4gICAgfVxuICAgIC5ibG9ja19ncmV5LS1saWdodGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgjRkZGRkZGLCAuMjUpO1xuICAgIH1cbiAgICAuc3VidGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAuNzVlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICB9XG4gICAgLnJlY2FwaXR1bGF0aWZfX2VuY2FydCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAucmVjYXBpdHVsYXRpZl9fZW5jYXJ0LXByaW1lIHtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0M3QzNEMTtcbiAgICB9XG4gICAgLnJlY2FwaXR1bGF0aWZfX2VuY2FydC1wcmltZSBoMiB7IG1hcmdpbjogMDsgfVxuICAgIC5yZWNhcGl0dWxhdGlmX19lbmNhcnQtcHJpbWUgcCB7IFxuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGNvbG9yOiAjQjFCMUIxO1xuICAgICAgICBsaW5lLWhlaWdodDogMS40OyBcbiAgICB9XG4gICAgLnByaW1lIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZvbnQtc2l6ZTogNC4yNWVtO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG4gICAgLnByaW1lIHNwYW4uc3RhciB7IFxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTsgXG4gICAgfVxuICAgIHRhYmxlLmNhcmFjdGVyaXN0aXF1ZXMge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIC5ibG9jay1pbmZvcm1hdGlvbnMge1xuICAgICAgICBwYWRkaW5nOiAxLjJyZW07XG4gICAgfVxuICAgIC5ibG9jay1pbmZvcm1hdGlvbnNfX2luZm9ybWF0aW9uIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICB3aWR0aDogMzMuMzMlO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgIH1cbiAgICAuYmxvY2staW5mb3JtYXRpb25zX19pbmZvcm1hdGlvbiBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgd2lkdGg6IDQwJTsgXG4gICAgfVxuXG4gICAgLmh5cG90aGVzZXMge1xuICAgICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyBcbiAgICAgICAgd2lkdGg6IDEwMCU7IFxuICAgIH1cbiAgICAuaHlwb3RoZXNlcyB0ZCB7IGJvcmRlcjogMXB4IHNvbGlkICNCMUIxQjE7IH1cbiAgICAuaHlwb3RoZXNlc19faGVhZGVyIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDEwcHg7XG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAtNXB4OyByaWdodDogLTVweDsgYm90dG9tOiAtNXB4OyBsZWZ0OiAtNXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjMDAwO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJ0NvdWxldXIgc2Vjb25kYWlyZSc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMDsgdG9wOiAtMTBweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gICAgICAgICAgICBwYWRkaW5nOiAuMjVyZW0gMXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRncmVlbjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuaHlwb3RoZXNlc19faGVhZGVyIC5jb2wtbW9udGFudCB7IFxuICAgICAgICB3aWR0aDogMjAlO1xuICAgIH1cbiAgICAuaHlwb3RoZXNlc19fcm93LFxuICAgIC5oeXBvdGhlc2VzX19ib2R5IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIC5oeXBvdGhlc2VzX19ib2R5IC5jb2wtZmljaGVzIHtcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG4gICAgLmh5cG90aGVzZXNfX2JvZHkgLmNvbC1tb250YW50IHtcbiAgICAgICAgd2lkdGg6IDIwJTtcbiAgICB9XG4gICAgLmh5cG90aGVzZXNfX2NvbCB7IHBhZGRpbmc6IDEwcHg7IH1cblxuICAgIC5ib3gge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cbiAgICAuYm94LXJlc3VsdGF0IHtcbiAgICAgICAgcGFkZGluZzogMTBweCAxMHB4IDhweDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGZvbnQtc2l6ZTogMTkuNXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAjQjFCRDM4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgYmFja2dyb3VuZDogIzEwMzA3MjtcbiAgICB9XG4gICAgLmJveC1yZXN1bHRhdCA+IGRpdiB7IG1hcmdpbi1ib3R0b206IDVweDsgfVxuICAgIC5jYXJhY3RlcmlzdGlxdWVzX190b3Age1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgICAuY2FyYWN0ZXJpc3RpcXVlc19fbGVmdCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgd2lkdGg6IDMwJTtcbiAgICB9XG4gICAgLmNhcmFjdGVyaXN0aXF1ZXNfX2xlZnQgLnJvdyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuICAgIC5jYXJhY3RlcmlzdGlxdWVzX19sZWZ0IC5yb3dfX3RpdGxlIHtcbiAgICAgICAgY29sb3I6ICM1QTdCMTk7XG4gICAgfVxuICAgIC5jYXJhY3RlcmlzdGlxdWVzX19sZWZ0IC5yb3dfX3ZhbHVlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuXG4gICAgLmNhcmFjdGVyaXN0aXF1ZXNfX3JpZ2h0IHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICB3aWR0aDogNzAlO1xuICAgIH1cbiAgICAuY2FyYWN0ZXJpc3RpcXVlc19fcmlnaHQgLnJvdyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICB9XG4gICAgLmNhcmFjdGVyaXN0aXF1ZXNfX3JpZ2h0IC5yb3dfX3RpdGxlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB3aWR0aDogNjAlO1xuICAgIH1cbiAgICAuY2FyYWN0ZXJpc3RpcXVlc19fcmlnaHQgLnJvd19fdmFsdWUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgICAudGV4dC1jZW50ZXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgIC5ib2xkIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICAgIC50aXRsZS1wcmltYXJ5IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJhY2tncm91bmQ6ICMxMDMwNzI7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gICAgLnRpdGxlLXNlY29uZGFyeSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICBjb2xvcjogIzVBN0IxOTtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgIH1cbiAgICAuc2hhZG93IHtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogN3B4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwMDAwMjk7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMjVweCA1MHB4ICMwMDAwMDAyOTtcbiAgICB9XG4gICAgLmJveC1jb250YWN0IHtcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMTAzMDcyO1xuICAgIH1cbiAgICAuYm94LWNvbnRhY3QgLnRlbCB7XG4gICAgICAgIGNvbG9yOiAjQjFCRDM4O1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgICAuYm94LWNvbnRhY3QgLnNtYWxsIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIH1cbiAgICAuYm94LWNvbnRhY3QgLmJpZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gICAgLmNvbGxlY3Rpb24tZ3JvdXAge1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgICAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgICB9XG4gICAgLmNvbGxlY3Rpb24tZ3JvdXBfX3RpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogN3B4O1xuICAgIH1cbiAgICAuY29sbGVjdGlvbi1ncm91cF9fdGl0bGUtLWZyb2lkIHtcbiAgICAgICAgY29sb3I6ICMzN2E4ZGI7XG4gICAgfVxuICAgIC5jb2xsZWN0aW9uLWdyb3VwX190aXRsZS0tY2hhbGV1ciB7XG4gICAgICAgIGNvbG9yOiAjZjE5MzAwO1xuICAgIH1cbiAgICAuY29sbGVjdGlvbi1pdGVtIHsgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxufSIsImRpdi5lbnRpdHkuYWN0aXZpdGUge1xuICAgICYudmlld0xpc3QsXG4gICAgJi5wcmV2aWV3TGlzdCB7XG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDcwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5wcmV2aWV3LFxuICAgICYubGlzdHZpZXcge1xuICAgICAgICBtYXJnaW46IDM1cHg7XG4gICAgICAgIHdpZHRoOiBjYWxjKDMxLjMzJSAtIDQwcHgpO1xuICAgICAgICBwYWRkaW5nOiAxLjhlbSAwO1xuICAgICAgICBib3gtc2hhZG93OiAwIDUwcHggNTBweCByZ2JhKCMwMDAsIC4yOSk7XG4gICAgICAgIHN2ZyBwYXRoLFxuICAgICAgICBzdmcgcmVjdCB7IGZpbGw6ICRibHVlOyB9XG4gICAgICAgIC5hY3Rpdml0ZV9fcGljdG8geyBcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgXG4gICAgICAgICAgICBzdmcgZyB7XG4gICAgICAgICAgICAgICAgY2xpcC1wYXRoOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5hY3Rpdml0ZV9fY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5hY3Rpdml0ZV9fdGl0bGUge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIC5hY3Rpdml0ZV9fZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEuNmVtO1xuICAgICAgICB9XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoMTEwMCl7XG4gICAgICAgICAgICB3aWR0aDogMzUwcHg7XG4gICAgICAgIH0gICBcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCg0NzApe1xuICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMzVweCAwO1xuICAgICAgICB9ICBcbiAgICB9XG4gICAgJi52aWV3IHtcbiAgICAgICAgcGFkZGluZzogNGVtIDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgICAgIC5pbGx1c3RyYXRpb24ge1xuICAgICAgICAgICAgaGVpZ2h0OiAzNDBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwczovL3BsYWNlaG9sZC5pdC8xOTIweDI0MD90ZXh0PUlsbHVzdHJhdGlvblwiKVxuICAgICAgICAgICAgICAgIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgfVxuICAgICAgICAuaW1nLXByaW5jaXBhbGUge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA0NjBweDtcbiAgICAgICAgfVxuICAgICAgICBkaXYuYm90dG9tIHtcbiAgICAgICAgICAgIGNsZWFyOiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgICAgICAgICBhICsgYSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgICYuYnRue1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDMwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuc2VhcmNoYmFyIHsgXG4gICAgICAgICAgICBtYXJnaW46IDE2cHggMDsgXG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC40ZW07IFxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBkaXYubGlzdHtcbiAgICAgICAgICAgIG1hcmdpbjogMmVtIDA7XG4gICAgICAgICAgICBoMnsgXG4gICAgICAgICAgICAgICAgY29sb3I6ICRkYXJrLWJsdWU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBoM3tcbiAgICAgICAgICAgICAgICBjb2xvcjogJGRhcmstYmx1ZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZGl2Lmxpc3RJdGVte1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDMwcHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAmOm50aC1vZi10eXBlKDJuKzEpe1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjJmMmYyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYyg2MCUgLSAxMHB4KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZGl2LnJpZ2h0e1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgICAgICAgICAgICAgICAgaW1neyB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxNTBtczt9XG4gICAgICAgICAgICAgICAgICAgICAgICAmLnBkZntcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0R3JleTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjAwbXM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1nIHsgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbWd7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTNweCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAmLnNpbXVsYXRpb257XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZGFyay1ibHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZ3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoMTE0MCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7IFxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBkaXYucmlnaHQgeyBcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7IFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoNjAwKSB7XG4gICAgICAgICAgICAgICAgICAgIGEgeyBcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyBcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogNXB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGF7IFxuICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JleS0yOyBcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAmOmhvdmVyeyBjb2xvcjogJGJsdWU7IH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsImRpdi5lbnRpdHkuYWN0dWFsaXRlIHtcbiAgICAmLnByZXZpZXdMaXN0IHtcbiAgICAgICAgLnNsaWNrLXByZXYge1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDIwO1xuICAgICAgICB9XG4gICAgICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgei1pbmRleDogMjA7XG4gICAgICAgIH1cbiAgICAgICAgLnNsaWNrLXByZXY6YmVmb3JlLFxuICAgICAgICAuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgICAgICAgICAgY29sb3I6ICMzMzM7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5wcmV2aWV3IHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbjogMCA1MHB4IDEwMHB4O1xuICAgICAgICAuY2F0ZWdvcmllIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNmVtIDEuMmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxLjZweDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xuICAgICAgICAgICAgJi5jYXRlZ29yaWUtMiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmFjdHVhbGl0ZV9fY29udGVudCB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDUwcHggNTBweCByZ2JhKCMwMDAsIDAuMjkpO1xuICAgICAgICB9XG4gICAgICAgIC5hY3R1YWxpdGVfX2RhdGUge1xuICAgICAgICAgICAgY29sb3I6ICRtYXV2ZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuNHB4O1xuICAgICAgICB9XG4gICAgICAgIC5hY3R1YWxpdGVfX3dyYXAge1xuICAgICAgICAgICAgcGFkZGluZzogMWVtO1xuICAgICAgICB9XG4gICAgICAgIC5hY3R1YWxpdGVfX3RpdGxlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuN2VtO1xuICAgICAgICAgICAgY29sb3I6ICRncmV5LTI7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB9XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCgxMzM1KSB7XG4gICAgICAgICAgICAuY2F0ZWdvcmllX19jb250ZW50IHtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA3NXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmFjdHVhbGl0ZV9fZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYWN0dWFsaXRlX193cmFwIHtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAxNjVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnZpZXdMaXN0IHtcbiAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIC5hY3R1YWxpdGVfX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgIC50YWcge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmFjdHVhbGl0ZV9fcmVhZG1vcmVfX3RpdGxlIHtcbiAgICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuN2VtO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyZXktMjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDIwMG1zO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmhvdmVyIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmVlbjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCg5MDApIHtcbiAgICAgICAgICAgID4gLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYubGlzdHZpZXcge1xuICAgICAgICBtYXJnaW46IDIwcHg7XG4gICAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDQwcHgpO1xuICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDNweCA2cHggcmdiYSgjMDAwLCAwLjI5KTtcbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIC5hY3R1YWxpdGVfX2NvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha1BvaW50KDEyMDApIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDMzLjMzJSAtIDQwcHgpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoOTAwKSB7XG4gICAgICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCg0NDUpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgICB9XG4gICAgfVxuICAgICYudmlldyB7XG4gICAgICAgIHBhZGRpbmc6IDRlbSAwO1xuICAgICAgICBoMSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC43NWVtO1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgc2VjdGlvbi5oZXJvIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBkaXYuZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGdhcDogNCU7XG4gICAgICAgIH1cbiAgICAgICAgZGl2LnBpY3R1cmUge1xuICAgICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgICAgICAgICB0b3A6IDJyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCg5MDApIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBkaXYudGV4dCB7XG4gICAgICAgICAgICB3aWR0aDogNjYlO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCg5MDApIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBkaXYueW91dHViZSB7XG4gICAgICAgICAgICBtYXJnaW46IDIwcHggMDtcbiAgICAgICAgfVxuICAgICAgICAvKiAgICAgICAgLmltZy1wcmluY2lwYWxlIHtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA0NjBweDtcbiAgICAgICAgICAgICAgICB9Ki9cbiAgICAgICAgZGl2LmJvdHRvbSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgICAgICAgYSArIGEge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoOTAwKSB7XG4gICAgICAgICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pbWctcHJpbmNpcGFsZSB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGZsb2F0OiB1bnNldDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkaXYuYm90dG9tIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiA1MHB4IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtQb2ludCg1NTApIHtcbiAgICAgICAgICAgIGRpdi5ib3R0b20ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmFjdHVhbGl0ZV9fcmVhZG1vcmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzMzMztcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGdyZWVuO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmVlbjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuYWN0dWFsaXRlX19yZWFkbW9yZV9faW1hZ2Uge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDIwMG1zO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciBpbWcge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjYpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC50YWcge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuNHB4O1xuICAgICAgICBjb2xvcjogJGdyZWVuO1xuICAgIH1cbn1cblxuZm9ybVtuYW1lPVwiYWN0dWFsaXRlXCJdIHtcbiAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDM2MHB4O1xuICAgIH1cbn1cblxuLnVucHVibGlzaGVkIHtcbiAgICBvcGFjaXR5OiAwLjQ7XG4gICAgLmJ0bi1hY3Rpb257XG4gICAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDEpO1xuICAgIH1cbn1cbiIsIi5hZG1pbi1wYW5lbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGgxe1xuICAgICAgICBjb2xvcjogJGRhcmstYmx1ZTtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIH1cbiAgICBwIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgICAubWIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgfVxuICAgIC5hY3Rpb25zIHtcbiAgICAgICAgbWFyZ2luOiAxZW0gMDtcbiAgICB9XG4gICAgLmFkbWluLWxlZnQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB3aWR0aDogMjQwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgfVxuICAgIC5hZG1pbi1yaWdodCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyNDBweDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDdweCBzb2xpZCAjZjVmNWY1O1xuICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDE1cHggODBweCAxNXB4O1xuICAgICAgICAgICAgbWluLWhlaWdodDogMTA0MHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5hZG1pbi1tZW51IHtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICBsaSBhIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogMTJweCAyMHB4O1xuICAgICAgICAgICAgbWFyZ2luOiAycHggMDtcbiAgICAgICAgICAgIGNvbG9yOiAjNmU3NjhlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNHM7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzQ1OGJjNDtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5icmVhZGNydW1iIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogZ3JleTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jYXJkLWJveCB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSg5OCwgMTAzLCAxMTUsIDAuMik7XG4gICAgICAgIC5jYXJkLWJveC10aXRsZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgICAgICBjb2xvcjogJGRhcmstYmx1ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuY2FyZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoOTgsIDEwMywgMTE1LCAwLjIpO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gICAgfVxuICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuICAgICAgICBib3JkZXItYm90dG9tOiAwIHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xMjUpO1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCkgY2FsYygwLjI1cmVtIC0gMXB4KSAwIDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnN1YnRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDk4LCAxMDMsIDExNSwgMC4yKTtcbiAgICB9XG4gICAgLmNhcmQtYm9keSB7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICB9XG4gICAgLnJvdyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgJi5nYXAge1xuICAgICAgICAgICAgZ2FwOiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5jb2wge1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEycHg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAuY29sLTYge1xuICAgICAgICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgICB9XG4gICAgICAgIC5jb2wtNCB7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gOHB4KTtcbiAgICAgICAgfVxuICAgICAgICAuY29sLWF1dG8ge1xuICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgfVxuICAgICAgICAud2lkZ2V0IHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoOTgsIDEwMywgMTE1LCAwLjIpO1xuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmJveC13aWRnZXQge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSg5OCwgMTAzLCAxMTUsIDAuMik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGl0bGUtYWRtaW4ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoOTgsIDEwMywgMTE1LCAwLjIpO1xuICAgIH1cbiAgICAuZXhjZWwge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgLnRyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgICAgICAgfVxuICAgICAgICAudGQge1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgfVxuICAgICAgICB0ZCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgICAgIGZvcm0uaW5saW5lIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIH1cbiAgICAgICAgLmlucHV0LWxpa2Uge1xuICAgICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICB9XG4gICAgICAgIFt0eXBlPVwidGV4dFwiXSxcbiAgICAgICAgW3R5cGU9XCJudW1iZXJcIl0ge1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzY2NjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAzcHggc29saWQgIzAwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuaGVhZGVyLWFkbWluIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDFlbTtcbiAgICAgICAgPiAqOm5vdCguYnRuKSB7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5oZWFkZXItYWRtaW4sXG4gICAgLmhlYWRlci1hZG1pbi1mb3JtIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG4gICAgLnRhYmxlIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgdGgge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgc2VjdGlvbjpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICAgIH1cbiAgICAjYWRtaW4tcGFuZWxfX2J1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmJ0bi1saXN0e1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAvL2ZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAuMzVlbTtcbiAgICB9XG5cbiAgICAuaGVhZGVyLWFkbWluIC5idG4tbGlzdCxcbiAgICB0ZCAuYnRuLWxpc3R7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgfVxuXG4gICAgLmNhcmQtbGlzdHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBnYXA6IDFlbTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLmNhcmR7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgcGFkZGluZzogMWVtO1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDhweCByZ2JhKCMwMDAsIDAuMTUpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuICAgIC5jYXJkLXRpdGxle1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgICB9XG4gICAgLmNhcmQtYm9keSxcbiAgICAuY2FyZC1ib3R0b217XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAuY2FyZC1ib2R5e1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgICAuY2FyZC1ib3R0b217XG4gICAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIH1cbiAgICAuY2FyZC1jdXN0b217XG4gICAgICAgIGZsZXg6IDI7XG4gICAgfVxuXG4gICAgLmZvcm0tZ3JvdXAgPiBbdHlwZT1cInN1Ym1pdFwiXXtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtQb2ludCgkYnJlYWtQb2ludE1lbnUpIHtcbiAgICAgICAgI2FkbWluLXBhbmVsX19idXR0b24ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMzMzM7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgLmFkbWluLWxlZnQge1xuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYygxMDAlIC0gNDVweCkpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDdweCByZ2JhKCMwMDAsIDAuMjkpO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICYuc2hvdyB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5hZG1pbi1yaWdodCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYnRuLWFjdGlvbntcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYnRuLWRlbGV0ZXtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGMzNTQ1O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkYzM1NDU7XG4gICAgJjpob3ZlcntcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCNkYzM1NDUsIDE1JSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCNkYzM1NDUsIDE1JSk7XG4gICAgfVxufVxuXG4uYnRuLWVkaXR7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzQzOWVmZjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNDM5ZWZmO1xuICAgICY6aG92ZXJ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigjNDM5ZWZmLCAxNSUpO1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigjNDM5ZWZmLCAxNSUpO1xuICAgIH1cbn1cblxuLmJ0bi1wdWJsaXNoe1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjZmQzZDc7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2NmZDNkNztcbiAgICAmOmhvdmVye1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oI2NmZDNkNywgMTUlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oI2NmZDNkNywgMTUlKTtcbiAgICB9XG59XG5cbi5wYWdlLXRvcCB7XG4gICAgbWFyZ2luOiAxZW0gMDtcbn1cblxuLnVzZXItdmFsbyB7XG4gICAgY29sb3I6IHJlZDtcbn1cblxuZm9ybS5uby1maWVsZHNldCB7XG4gICAgZmllbGRzZXQge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgID4gbGVnZW5kIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbnNlY3Rpb24ucGFsaWVyc3tcbiAgICAucGFsaWVyLWluZGV4e1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAuMzVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBjb2xvcjogJGRhcmstYmx1ZTtcbiAgICAgICAgZm9udC1zaXplOiAuODVlbTtcbiAgICB9XG59XG5cbnNlY3Rpb24uZmljaGVze1xuICAgIGgze1xuICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICBjb2xvcjogJGRhcmstYmx1ZTtcbiAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICB9XG4gICAgaDR7XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgfVxufVxuXG4uY3VzdG9tLWZpbGV7XG4gICAgaW5wdXR7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIGxhYmVse1xuICAgICAgICBwYWRkaW5nOiAuNWVtIDEuNWVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGRhcmstYmx1ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkZGFyay1ibHVlLCAuMDc1KTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuMnM7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogLjc1ZW07XG4gICAgICAgICY6OmJlZm9yZXtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoL2ltYWdlcy9zZWxlY3QtZmlsZS5zdmcpIGNlbnRlciAvIGNvbnRhaW4gbm8tcmVwZWF0O1xuICAgICAgICB9XG4gICAgICAgICY6OmFmdGVye1xuICAgICAgICAgICAgY29udGVudDogJ0ltcG9ydGVyIHVuZSBpbWFnZSc7XG4gICAgICAgICAgICBjb2xvcjogJGRhcmstYmx1ZTtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkZGFyay1ibHVlLCAuMTc1KTtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIjc2ltdWxhdGV1ciB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAucm93IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgICAgICAgPiAqIHtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDIwcHg7XG4gICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSA0MHB4KTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgM3B4IDZweCByZ2JhKCMwMDAsIDAuMjkpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5oaWRlIHsgZGlzcGxheTogbm9uZTsgfVxuICAgIC5ldGFwZXMge1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZWVlO1xuICAgIH1cbiAgICAvLyAuZG9tYWluZS1jaG9peCB7IEBleHRlbmQgLnJlYWRtb3JlIH1cbiAgICAucGxhY2Vob2xkZXIge1xuICAgICAgICBtYXJnaW46IDIwcHggMDtcbiAgICAgICAgcGFkZGluZzogODBweCAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxufVxuXG4uY2FsY3VsLXJlc3VsdCB7XG4gICAgbWFyZ2luOiA1MHB4IGF1dG87XG4gICAgcGFkZGluZzogNDBweDtcbiAgICB3aWR0aDogNjAwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMzMzM7XG4gICAgLnJlc3VsdCB7IGZvbnQtc2l6ZTogM3JlbTsgfVxufVxuXG4uY2FsY3VsYXRldXItY3JlYXRlIHtcbiAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgLmZvcm0tY29udGFpbmVyIHtcbiAgICAgICAgJjpub3QoLnNlbGVjdC1jb25zdGFudGUpIHtcbiAgICAgICAgICAgIGZvcm0jY29uc3RhbnRlIHsgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICB9XG4gICAgICAgICY6bm90KC5zZWxlY3QtdmFsZXVyVXRpbGlzYXRldXIpIHtcbiAgICAgICAgICAgIGZvcm0jdmFsZXVyVXRpbGlzYXRldXIgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgIH1cbiAgICAgICAgJjpub3QoLnNlbGVjdC1jaG9peFNpbXBsZSkge1xuICAgICAgICAgICAgZm9ybSNjaG9peFNpbXBsZSB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgfVxuICAgICAgICAmOm5vdCguc2VsZWN0LWNob2l4Q29tcGxleGUpIHtcbiAgICAgICAgICAgIGZvcm0jY2hvaXhDb21wbGV4ZSB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgfVxuICAgICAgICAmOm5vdCguc2VsZWN0LXF1ZXN0aW9uKSB7XG4gICAgICAgICAgICBmb3JtI3F1ZXN0aW9uIHsgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICB9XG4gICAgICAgICY6bm90KC5zZWxlY3QtYmxvYykge1xuICAgICAgICAgICAgZm9ybSNibG9jIHsgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5lbmNhcnQtZm9ybXVsZSB7XG4gICAgICAgIG1hcmdpbjogMS40ZW0gMDtcbiAgICAgICAgcGFkZGluZzogMmVtO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMzMzO1xuICAgICAgICBsYWJlbCB7IGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gICAgfVxuICAgIC5lbmNhcnQtYWlkZSB7XG4gICAgICAgIG1hcmdpbjogMS40ZW0gMDtcbiAgICAgICAgcGFkZGluZzogMC41ZW0gMmVtIDJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogI2RkZDtcbiAgICB9XG59XG5cbi5jYXMtY29uZGl0aW9ucyB7XG4gICAgbWFyZ2luOiAxcmVtIDA7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBiYWNrZ3JvdW5kOiAjZWVlO1xufVxuXG4uZm9ybS1hZGQtdmFsZXVyIHtcbiAgICBwYWRkaW5nOiAxZW07XG4gICAgYmFja2dyb3VuZDogI2RkZDtcbn1cblxuLmxpc3QtdmFsZXVycyA+IGxpIHtcbiAgICBtYXJnaW46IDFlbSAwO1xufVxuXG4uZW50ZXRlIHsgXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6ICNkZGQ7IFxufVxuXG4uc3VnZ2VzdGlvbnMtY29udGFpbmVyIHtcbiAgICBtYXJnaW4tdG9wOiAyNHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbi1sZWZ0OiAtMzBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0zMHB4O1xuICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoODIwKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgICB9XG59XG4uc2ltdWxhdGlvbl9fc3VnZ2VzdGlvbiB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgcGFkZGluZzogMWVtO1xuICAgIG1hcmdpbjogMCAzMHB4IDIwcHg7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gNjBweCk7XG4gICAgY29sb3I6ICRkYXJrLWJsdWUtMjtcbiAgICBmb250LXNpemU6IC45ZW07XG4gICAgYmFja2dyb3VuZDogI2VlZTtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgc3Ryb25nIHsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuICAgIC5zdWdnZXN0aW9uX190aXRsZSB7IGZsZXg6IDE7IH1cbiAgICAuc3VnZ2VzdGlvbl9fbGluayB7IFxuICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkZGFyay1ibHVlLTI7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBhIHsgY29sb3I6IGluaGVyaXQ7IH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtQb2ludCgxMzY4KSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDMzJSAtIDYwcHgpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha1BvaW50KDgyMCkge1xuICAgICAgICBtYXJnaW46IDAgMTBweCAyMHB4O1xuICAgICAgICB3aWR0aDogY2FsYygzMyUgLSAyMHB4KTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtQb2ludCg2NDApIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMjBweCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrUG9pbnQoNjQwKSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgICB9XG59Il0sInNvdXJjZVJvb3QiOiIifQ==*/