@charset "UTF-8";
/* Scss Document */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* VARIABLES */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* Couleurs */
/* ----------------------------------------------------- */
/* Specifiques au site */
/* ----------------------------------------------------- */
/* gris fonce */
/* bleu fonce */
/* rouge */
/* bleu fonce 2 */
/* bleu clair 2 */
/* gris */
/* gris bleu */
/* gris bleu tres clair */
/* Declinaisons claires et foncees */
/* Correspondances couleurs -> texte */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* FONTS */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* FONT-SIZES */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* TRANSITIONS */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* BASES PADDING & MARGIN */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* BORDER RADIUS */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* CONTAINERS */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* HEADER */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* SIDEBAR */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* FOOTER */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* BREAKPOINTS */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* HEXAGONE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ADMIN WP */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* EASING */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* MIXIN.SCSS */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* FONT FACE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* KEYFRAMES */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* CENTRE UNE IMAGE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* PREFIXES : Transition */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* PREFIXES : Transform */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* CENTRE UN ELEMENT */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* BASE GRADIENT */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* CENTRE UN BACKGROUND QUAND ON LE MET EN INLINE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* OBJECT FIT AVEC DETECTIZR */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* TRIANGLES */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* Display flex */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* Object Fit */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* Hexagones */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* FONCTIONS */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* CONVERSION PX -> EM */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* CONVERSION PX -> REM */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* CONVERSION PX -> % */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ANIMATIONS */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* SCROLLDISC */
/* ----------------------------------------------------- */
@-webkit-keyframes scrollDisc {
  0% {
    top: -30%;
    opacity: 0; }
  20% {
    opacity: 1; }
  80% {
    opacity: 1; }
  100% {
    top: 100%;
    opacity: 0; } }

@-moz-keyframes scrollDisc {
  0% {
    top: -30%;
    opacity: 0; }
  20% {
    opacity: 1; }
  80% {
    opacity: 1; }
  100% {
    top: 100%;
    opacity: 0; } }

@-o-keyframes scrollDisc {
  0% {
    top: -30%;
    opacity: 0; }
  20% {
    opacity: 1; }
  80% {
    opacity: 1; }
  100% {
    top: 100%;
    opacity: 0; } }

/* ----------------------------------------------------- */
/* ONDE */
/* ----------------------------------------------------- */
@-webkit-keyframes onde {
  0% {
    opacity: 0;
    transform: scale(0.9); }
  10% {
    opacity: 1; }
  80% {
    opacity: 0.5; }
  100% {
    opacity: 0;
    transform: scale(1.25); } }

/* ----------------------------------------------------- */
/* BOUNCE */
/* ----------------------------------------------------- */
@keyframes bounce {
  0% {
    opacity: 0;
    transform: scale(0.3) translate3d(0, 0, 0); }
  50% {
    opacity: 0.9;
    transform: scale(1.1); }
  80% {
    opacity: 1;
    transform: scale(0.89); }
  100% {
    opacity: 1;
    transform: scale(1) translate3d(0, 0, 0); } }

/* ----------------------------------------------------- */
/* BALANCE */
/* ----------------------------------------------------- */
@keyframes balance {
  0%, 100% {
    transform: translateX(0); }
  25% {
    transform: translateX(-20%); }
  75% {
    transform: translateX(20%); } }

/* ----------------------------------------------------- */
/* BALANCE VERTICALE */
/* ----------------------------------------------------- */
@keyframes balancev {
  0%, 100% {
    transform: translateY(0); }
  25% {
    transform: translateY(-20%); }
  75% {
    transform: translateY(20%); } }

/* ----------------------------------------------------- */
/* PULSE */
/* ----------------------------------------------------- */
@keyframes pulse {
  0%, 100% {
    transform: scale(1.2); }
  50% {
    transform: scale(1); } }

/* ----------------------------------------------------- */
/* WAVES */
/* ----------------------------------------------------- */
@keyframes waves {
  0% {
    transform: scale(1);
    transform-origin: 100% 100%;
    opacity: 0; }
  80% {
    transform: scale(1.1);
    transform-origin: 100% 100%;
    opacity: 1; }
  100% {
    transform: scale(1.1);
    transform-origin: 100% 100%;
    opacity: 0; } }

/* ----------------------------------------------------- */
/* RESSORT */
/* ----------------------------------------------------- */
@keyframes ressort {
  0%, 100% {
    transform: translate(-25%, -50%); }
  50% {
    transform: translate(0%, -50%); } }

/* ----------------------------------------------------- */
/* RESSORT VERTICAL */
/* ----------------------------------------------------- */
@keyframes ressortv {
  0%, 100% {
    transform: translateY(-25%); }
  50% {
    transform: translateY(0%); } }

/* ----------------------------------------------------- */
/* BOUNCE */
/* ----------------------------------------------------- */
@keyframes elastic {
  0% {
    transform: scale(1.1);
    opacity: 1; }
  50% {
    transform: scale(1.4);
    opacity: 0.7; }
  60% {
    transform: scale(0.6);
    opacity: 1; }
  80% {
    transform: scale(0.95); }
  100% {
    transform: scale(1); } }

/* ----------------------------------------------------- */
/* FLOAT */
/* ----------------------------------------------------- */
@keyframes float {
  0% {
    box-shadow: 0 5px 15px 0px rgba(0, 0, 0, 0.6);
    transform: translatey(0px); }
  50% {
    box-shadow: 0 25px 15px 0px rgba(0, 0, 0, 0.2);
    transform: translatey(-20px); }
  100% {
    box-shadow: 0 5px 15px 0px rgba(0, 0, 0, 0.6);
    transform: translatey(0px); } }

/* ----------------------------------------------------- */
/* LDS ROLLER */
/* ----------------------------------------------------- */
@keyframes lds-roller {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

.left {
  text-align: left; }

.right {
  text-align: right; }

.center {
  text-align: center;
  margin-left: auto;
  margin-right: auto; }

.justify {
  text-align: justify; }

.flex {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex; }

.grid {
  display: -webkit-grid;
  display: -moz-grid;
  display: -ms-grid;
  display: -o-grid;
  display: grid; }

.container {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  max-width: 1600px; }

.row {
  position: relative;
  width: 100%; }
  .row [class*="col-"] {
    float: left;
    min-height: 0; }
    .row [class*="col-"].col-no-margin {
      margin: 0; }
    .row [class*="col-"].no-padding {
      padding: 0 !important; }
    .row [class*="col-"].col-0 {
      width: 0;
      flex-basis: 0;
      padding: 0; }
    .row [class*="col-"].col-1 {
      width: 8.33333%;
      flex-basis: 8.33333%;
      padding: 0rem .5rem; }
      html.firefox .row [class*="col-"].col-1,
      html.safari .row [class*="col-"].col-1 {
        overflow: hidden; }
    .row [class*="col-"].col-2 {
      width: 16.66667%;
      flex-basis: 16.66667%;
      padding: 0rem .5rem; }
      html.firefox .row [class*="col-"].col-2,
      html.safari .row [class*="col-"].col-2 {
        overflow: hidden; }
    .row [class*="col-"].col-3 {
      width: 25%;
      flex-basis: 25%;
      padding: 0rem .5rem; }
      html.firefox .row [class*="col-"].col-3,
      html.safari .row [class*="col-"].col-3 {
        overflow: hidden; }
    .row [class*="col-"].col-4 {
      width: 33.33333%;
      flex-basis: 33.33333%;
      padding: 0rem .5rem; }
      html.firefox .row [class*="col-"].col-4,
      html.safari .row [class*="col-"].col-4 {
        overflow: hidden; }
    .row [class*="col-"].col-5 {
      width: 41.66667%;
      flex-basis: 41.66667%;
      padding: 0rem .5rem; }
      html.firefox .row [class*="col-"].col-5,
      html.safari .row [class*="col-"].col-5 {
        overflow: hidden; }
    .row [class*="col-"].col-6 {
      width: 50%;
      flex-basis: 50%;
      padding: 0rem .5rem; }
      html.firefox .row [class*="col-"].col-6,
      html.safari .row [class*="col-"].col-6 {
        overflow: hidden; }
    .row [class*="col-"].col-7 {
      width: 58.33333%;
      flex-basis: 58.33333%;
      padding: 0rem .5rem; }
      html.firefox .row [class*="col-"].col-7,
      html.safari .row [class*="col-"].col-7 {
        overflow: hidden; }
    .row [class*="col-"].col-8 {
      width: 66.66667%;
      flex-basis: 66.66667%;
      padding: 0rem .5rem; }
      html.firefox .row [class*="col-"].col-8,
      html.safari .row [class*="col-"].col-8 {
        overflow: hidden; }
    .row [class*="col-"].col-9 {
      width: 75%;
      flex-basis: 75%;
      padding: 0rem .5rem; }
      html.firefox .row [class*="col-"].col-9,
      html.safari .row [class*="col-"].col-9 {
        overflow: hidden; }
    .row [class*="col-"].col-10 {
      width: 83.33333%;
      flex-basis: 83.33333%;
      padding: 0rem .5rem; }
      html.firefox .row [class*="col-"].col-10,
      html.safari .row [class*="col-"].col-10 {
        overflow: hidden; }
    .row [class*="col-"].col-11 {
      width: 91.66667%;
      flex-basis: 91.66667%;
      padding: 0rem .5rem; }
      html.firefox .row [class*="col-"].col-11,
      html.safari .row [class*="col-"].col-11 {
        overflow: hidden; }
    .row [class*="col-"].col-12 {
      width: 100%;
      flex-basis: 100%;
      padding: 0rem .5rem; }
      html.firefox .row [class*="col-"].col-12,
      html.safari .row [class*="col-"].col-12 {
        overflow: hidden; }
  .row:after {
    content: "";
    display: table;
    clear: both; }
  .row.flex {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: stretch; }
    .row.flex [class*="col-"] {
      float: none !important; }

.hidden {
  display: none; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* RESPONSIVE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* XXS */
/* ----------------------------------------------------- */
@media only screen and (min-width: 480px) {
  .hidden-xxs {
    display: none; }
  .container {
    width: 100%;
    padding: 0; }
  .row [class*="col-"].col-0-xxs {
    width: 0;
    flex-basis: 0;
    padding: 0; }
  .row [class*="col-"].col-1-xxs {
    display: block;
    width: 8.33333%;
    flex-basis: 8.33333%;
    padding: 0rem .5rem; }
  .row [class*="col-"].col-2-xxs {
    display: block;
    width: 16.66667%;
    flex-basis: 16.66667%;
    padding: 0rem .5rem; }
  .row [class*="col-"].col-3-xxs {
    display: block;
    width: 25%;
    flex-basis: 25%;
    padding: 0rem .5rem; }
  .row [class*="col-"].col-4-xxs {
    display: block;
    width: 33.33333%;
    flex-basis: 33.33333%;
    padding: 0rem .5rem; }
  .row [class*="col-"].col-5-xxs {
    display: block;
    width: 41.66667%;
    flex-basis: 41.66667%;
    padding: 0rem .5rem; }
  .row [class*="col-"].col-6-xxs {
    display: block;
    width: 50%;
    flex-basis: 50%;
    padding: 0rem .5rem; }
  .row [class*="col-"].col-7-xxs {
    display: block;
    width: 58.33333%;
    flex-basis: 58.33333%;
    padding: 0rem .5rem; }
  .row [class*="col-"].col-8-xxs {
    display: block;
    width: 66.66667%;
    flex-basis: 66.66667%;
    padding: 0rem .5rem; }
  .row [class*="col-"].col-9-xxs {
    display: block;
    width: 75%;
    flex-basis: 75%;
    padding: 0rem .5rem; }
  .row [class*="col-"].col-10-xxs {
    display: block;
    width: 83.33333%;
    flex-basis: 83.33333%;
    padding: 0rem .5rem; }
  .row [class*="col-"].col-11-xxs {
    display: block;
    width: 91.66667%;
    flex-basis: 91.66667%;
    padding: 0rem .5rem; }
  .row [class*="col-"].col-12-xxs {
    display: block;
    width: 100%;
    flex-basis: 100%;
    padding: 0rem .5rem; } }

/* ----------------------------------------------------- */
/* XS */
/* ----------------------------------------------------- */
@media only screen and (min-width: 640px) {
  .row [class*="col-"].col-0-xs {
    width: 0;
    flex-basis: 0;
    padding: 0; }
  .row [class*="col-"].col-1-xs {
    display: block;
    width: 8.33333%;
    flex-basis: 8.33333%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-2-xs {
    display: block;
    width: 16.66667%;
    flex-basis: 16.66667%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-3-xs {
    display: block;
    width: 25%;
    flex-basis: 25%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-4-xs {
    display: block;
    width: 33.33333%;
    flex-basis: 33.33333%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-5-xs {
    display: block;
    width: 41.66667%;
    flex-basis: 41.66667%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-6-xs {
    display: block;
    width: 50%;
    flex-basis: 50%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-7-xs {
    display: block;
    width: 58.33333%;
    flex-basis: 58.33333%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-8-xs {
    display: block;
    width: 66.66667%;
    flex-basis: 66.66667%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-9-xs {
    display: block;
    width: 75%;
    flex-basis: 75%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-10-xs {
    display: block;
    width: 83.33333%;
    flex-basis: 83.33333%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-11-xs {
    display: block;
    width: 91.66667%;
    flex-basis: 91.66667%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-12-xs {
    display: block;
    width: 100%;
    flex-basis: 100%;
    padding: 0rem 1rem; }
  .hidden-xs {
    display: none; }
  .container {
    width: 100%;
    padding: 0; } }

/* ----------------------------------------------------- */
/* SM */
/* ----------------------------------------------------- */
@media only screen and (min-width: 769px) {
  .row [class*="col-"].col-0-sm {
    width: 0;
    flex-basis: 0;
    padding: 0; }
  .row [class*="col-"].col-1-sm {
    display: block;
    width: 8.33333%;
    flex-basis: 8.33333%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-2-sm {
    display: block;
    width: 16.66667%;
    flex-basis: 16.66667%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-3-sm {
    display: block;
    width: 25%;
    flex-basis: 25%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-4-sm {
    display: block;
    width: 33.33333%;
    flex-basis: 33.33333%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-5-sm {
    display: block;
    width: 41.66667%;
    flex-basis: 41.66667%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-6-sm {
    display: block;
    width: 50%;
    flex-basis: 50%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-7-sm {
    display: block;
    width: 58.33333%;
    flex-basis: 58.33333%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-8-sm {
    display: block;
    width: 66.66667%;
    flex-basis: 66.66667%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-9-sm {
    display: block;
    width: 75%;
    flex-basis: 75%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-10-sm {
    display: block;
    width: 83.33333%;
    flex-basis: 83.33333%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-11-sm {
    display: block;
    width: 91.66667%;
    flex-basis: 91.66667%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-12-sm {
    display: block;
    width: 100%;
    flex-basis: 100%;
    padding: 0rem 1rem; }
  .hidden-sm {
    display: none; }
  .container {
    width: 100%;
    padding: 0; } }

/* ----------------------------------------------------- */
/* MD */
/* ----------------------------------------------------- */
@media only screen and (min-width: 990px) {
  .row [class*="col-"] {
    padding: 0rem 1%; }
    .row [class*="col-"].col-0-md {
      width: 0;
      flex-basis: 0;
      padding: 0; }
    .row [class*="col-"].col-1-md {
      display: block;
      width: 8.33333%;
      flex-basis: 8.33333%;
      padding: 0rem 1rem; }
    .row [class*="col-"].col-2-md {
      display: block;
      width: 16.66667%;
      flex-basis: 16.66667%;
      padding: 0rem 1rem; }
    .row [class*="col-"].col-3-md {
      display: block;
      width: 25%;
      flex-basis: 25%;
      padding: 0rem 1rem; }
    .row [class*="col-"].col-4-md {
      display: block;
      width: 33.33333%;
      flex-basis: 33.33333%;
      padding: 0rem 1rem; }
    .row [class*="col-"].col-5-md {
      display: block;
      width: 41.66667%;
      flex-basis: 41.66667%;
      padding: 0rem 1rem; }
    .row [class*="col-"].col-6-md {
      display: block;
      width: 50%;
      flex-basis: 50%;
      padding: 0rem 1rem; }
    .row [class*="col-"].col-7-md {
      display: block;
      width: 58.33333%;
      flex-basis: 58.33333%;
      padding: 0rem 1rem; }
    .row [class*="col-"].col-8-md {
      display: block;
      width: 66.66667%;
      flex-basis: 66.66667%;
      padding: 0rem 1rem; }
    .row [class*="col-"].col-9-md {
      display: block;
      width: 75%;
      flex-basis: 75%;
      padding: 0rem 1rem; }
    .row [class*="col-"].col-10-md {
      display: block;
      width: 83.33333%;
      flex-basis: 83.33333%;
      padding: 0rem 1rem; }
    .row [class*="col-"].col-11-md {
      display: block;
      width: 91.66667%;
      flex-basis: 91.66667%;
      padding: 0rem 1rem; }
    .row [class*="col-"].col-12-md {
      display: block;
      width: 100%;
      flex-basis: 100%;
      padding: 0rem 1rem; }
  .row.flex {
    flex-wrap: wrap;
    align-items: stretch; }
  .hidden-md {
    display: none; }
  .container {
    width: 100%; } }

/* ----------------------------------------------------- */
/* LG */
/* ----------------------------------------------------- */
@media only screen and (min-width: 1200px) {
  .row [class*="col-"].col-0-lg {
    width: 0;
    flex-basis: 0;
    padding: 0; }
  .row [class*="col-"].col-1-lg {
    display: block;
    width: 8.33333%;
    flex-basis: 8.33333%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-2-lg {
    display: block;
    width: 16.66667%;
    flex-basis: 16.66667%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-3-lg {
    display: block;
    width: 25%;
    flex-basis: 25%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-4-lg {
    display: block;
    width: 33.33333%;
    flex-basis: 33.33333%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-5-lg {
    display: block;
    width: 41.66667%;
    flex-basis: 41.66667%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-6-lg {
    display: block;
    width: 50%;
    flex-basis: 50%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-7-lg {
    display: block;
    width: 58.33333%;
    flex-basis: 58.33333%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-8-lg {
    display: block;
    width: 66.66667%;
    flex-basis: 66.66667%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-9-lg {
    display: block;
    width: 75%;
    flex-basis: 75%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-10-lg {
    display: block;
    width: 83.33333%;
    flex-basis: 83.33333%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-11-lg {
    display: block;
    width: 91.66667%;
    flex-basis: 91.66667%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-12-lg {
    display: block;
    width: 100%;
    flex-basis: 100%;
    padding: 0rem 1rem; }
  .hidden-lg {
    display: none; }
  .container {
    width: 100%;
    max-width: 1600px; } }

/* ----------------------------------------------------- */
/* XL */
/* ----------------------------------------------------- */
@media only screen and (min-width: 1650px) {
  .row [class*="col-"].col-0-xl {
    width: 0;
    flex-basis: 0;
    padding: 0; }
  .row [class*="col-"].col-1-xl {
    display: block;
    width: 8.33333%;
    flex-basis: 8.33333%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-2-xl {
    display: block;
    width: 16.66667%;
    flex-basis: 16.66667%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-3-xl {
    display: block;
    width: 25%;
    flex-basis: 25%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-4-xl {
    display: block;
    width: 33.33333%;
    flex-basis: 33.33333%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-5-xl {
    display: block;
    width: 41.66667%;
    flex-basis: 41.66667%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-6-xl {
    display: block;
    width: 50%;
    flex-basis: 50%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-7-xl {
    display: block;
    width: 58.33333%;
    flex-basis: 58.33333%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-8-xl {
    display: block;
    width: 66.66667%;
    flex-basis: 66.66667%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-9-xl {
    display: block;
    width: 75%;
    flex-basis: 75%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-10-xl {
    display: block;
    width: 83.33333%;
    flex-basis: 83.33333%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-11-xl {
    display: block;
    width: 91.66667%;
    flex-basis: 91.66667%;
    padding: 0rem 1rem; }
  .row [class*="col-"].col-12-xl {
    display: block;
    width: 100%;
    flex-basis: 100%;
    padding: 0rem 1rem; }
  .hidden-xl {
    display: none; }
  .container {
    max-width: 1600px;
    width: 100%; } }

.loader {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.65);
  opacity: 0;
  visibility: hidden;
  transition: all 0.4s ease-out;
  z-index: 1001; }
  .loader-container {
    position: relative; }
  .loader.display {
    opacity: 1;
    visibility: visible; }

.lds-roller {
  display: inline-block;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 64px;
  height: 64px; }
  .lds-roller div {
    animation: lds-roller 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
    transform-origin: 32px 32px; }
    .lds-roller div:after {
      content: " ";
      display: block;
      position: absolute;
      width: 6px;
      height: 6px;
      border-radius: 50%;
      background: #000000;
      margin: -3px 0 0 -3px; }
    .lds-roller div:nth-child(1) {
      animation-delay: -0.036s; }
      .lds-roller div:nth-child(1):after {
        top: 50px;
        left: 50px; }
    .lds-roller div:nth-child(2) {
      animation-delay: -0.072s; }
      .lds-roller div:nth-child(2):after {
        top: 54px;
        left: 45px; }
    .lds-roller div:nth-child(3) {
      animation-delay: -0.108s; }
      .lds-roller div:nth-child(3):after {
        top: 57px;
        left: 39px; }
    .lds-roller div:nth-child(4) {
      animation-delay: -0.144s; }
      .lds-roller div:nth-child(4):after {
        top: 58px;
        left: 32px; }
    .lds-roller div:nth-child(5) {
      animation-delay: -0.18s; }
      .lds-roller div:nth-child(5):after {
        top: 57px;
        left: 25px; }
    .lds-roller div:nth-child(6) {
      animation-delay: -0.216s; }
      .lds-roller div:nth-child(6):after {
        top: 54px;
        left: 19px; }
    .lds-roller div:nth-child(7) {
      animation-delay: -0.252s; }
      .lds-roller div:nth-child(7):after {
        top: 50px;
        left: 14px; }
    .lds-roller div:nth-child(8) {
      animation-delay: -0.288s; }
      .lds-roller div:nth-child(8):after {
        top: 45px;
        left: 10px; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* LEAFLET */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* RESPONSIVE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* DESKTOP : 1200px px */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* TABLETP : 990px px */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* TABLET : 769px px */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* TABLE : 640px px */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* MOBILEP : 480px px */
/* ----------------------------------------------------- */
.btn, input[type="submit"],
input[type="button"], div.wpforms-container-full .wpforms-form button[type=submit], body.category .category__filters__filters ul li .btn-filter-cat {
  display: inline-block;
  position: relative;
  padding: 0.6875rem 1.375rem;
  transition: all 0.4s ease-out;
  -webkit-appearance: none;
  border: none;
  border-radius: 2px;
  overflow: hidden;
  font-family: Montserrat, Arial, sans-serif;
  font-size: 1rem;
  font-weight: 500;
  text-align: center;
  line-height: 1rem;
  text-transform: uppercase; }
  .btn > i, input[type="submit"] > i, input[type="button"] > i, div.wpforms-container-full .wpforms-form button[type=submit] > i, body.category .category__filters__filters ul li .btn-filter-cat > i {
    display: inline-block;
    vertical-align: middle;
    font-size: 1.0rem;
    position: relative;
    z-index: 2;
    margin-right: 0rem; }
    .btn > i.icon-before, input[type="submit"] > i.icon-before, input[type="button"] > i.icon-before, div.wpforms-container-full .wpforms-form button[type=submit] > i.icon-before, body.category .category__filters__filters ul li .btn-filter-cat > i.icon-before {
      margin-right: 0.5rem; }
    .btn > i.icon-after, input[type="submit"] > i.icon-after, input[type="button"] > i.icon-after, div.wpforms-container-full .wpforms-form button[type=submit] > i.icon-after, body.category .category__filters__filters ul li .btn-filter-cat > i.icon-after {
      margin-left: 0.5rem; }
  .btn span, input[type="submit"] span, input[type="button"] span, div.wpforms-container-full .wpforms-form button[type=submit] span, body.category .category__filters__filters ul li .btn-filter-cat span {
    display: inline-block;
    vertical-align: middle;
    position: relative;
    z-index: 3; }

.btn, input[type="submit"],
input[type="button"], div.wpforms-container-full .wpforms-form button[type=submit] {
  /* ----------------------------------------------------- */
  /* FULL LARGEUR */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* BOUTONS RONDS */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* DEFAULT */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* DEFAULT OUTLINED */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* DARK */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* DARK OUTLINED */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* LIGHT */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* LIGHT OUTLINED */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* PRIMARY */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* PRIMARY OUTLINED */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* SECONDARY */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* ENTOURE SECONDAIRE */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* SOULIGNE */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* ANIMATIONS */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* BTN LINK */
  /* ----------------------------------------------------- */ }
  .btn.full-width, input.full-width[type="submit"],
  input.full-width[type="button"], div.wpforms-container-full .wpforms-form button.full-width[type=submit] {
    width: 100%; }
  .btn.btn-round, input.btn-round[type="submit"],
  input.btn-round[type="button"], div.wpforms-container-full .wpforms-form button.btn-round[type=submit] {
    border-radius: 100rem;
    margin: 0; }
  .btn.btn-default, input[type="submit"],
  input[type="button"], div.wpforms-container-full .wpforms-form button[type=submit], body.category .category__filters__filters ul li .btn.btn-filter-cat.active, body.category .category__filters__filters ul li input.btn-filter-cat.active[type="submit"],
  body.category .category__filters__filters ul li input.btn-filter-cat.active[type="button"], body.category .category__filters__filters ul li div.wpforms-container-full .wpforms-form button.btn-filter-cat.active[type=submit], div.wpforms-container-full .wpforms-form body.category .category__filters__filters ul li button.btn-filter-cat.active[type=submit] {
    color: #ffffff;
    border: none;
    background-color: #E5114D; }
    .btn.btn-default:hover, input:hover[type="submit"],
    input:hover[type="button"], div.wpforms-container-full .wpforms-form button:hover[type=submit], body.category .category__filters__filters ul li .btn.btn-filter-cat.active:hover, body.category .category__filters__filters ul li input.btn-filter-cat.active:hover[type="submit"],
    body.category .category__filters__filters ul li input.btn-filter-cat.active:hover[type="button"], body.category .category__filters__filters ul li div.wpforms-container-full .wpforms-form button.btn-filter-cat.active:hover[type=submit], div.wpforms-container-full .wpforms-form body.category .category__filters__filters ul li button.btn-filter-cat.active:hover[type=submit] {
      background-color: #cd0f45; }
  .btn.btn-default-outlined, input.btn-default-outlined[type="submit"],
  input.btn-default-outlined[type="button"], div.wpforms-container-full .wpforms-form button.btn-default-outlined[type=submit] {
    color: #3F3F3F;
    border: 2px solid #E5114D;
    background-color: #ffffff;
    border-radius: 0;
    text-transform: uppercase;
    font-weight: bold; }
    .btn.btn-default-outlined:hover, input.btn-default-outlined:hover[type="submit"],
    input.btn-default-outlined:hover[type="button"], div.wpforms-container-full .wpforms-form button.btn-default-outlined:hover[type=submit], .btn.btn-default-outlined.active, input.btn-default-outlined.active[type="submit"],
    input.btn-default-outlined.active[type="button"], div.wpforms-container-full .wpforms-form button.btn-default-outlined.active[type=submit] {
      color: #ffffff;
      border-color: #cd0f45;
      background-color: #ffffff; }
  .btn.btn-dark, input.btn-dark[type="submit"],
  input.btn-dark[type="button"], div.wpforms-container-full .wpforms-form button.btn-dark[type=submit] {
    color: #ffffff;
    border: none;
    background-color: #000000; }
    .btn.btn-dark:hover, input.btn-dark:hover[type="submit"],
    input.btn-dark:hover[type="button"], div.wpforms-container-full .wpforms-form button.btn-dark:hover[type=submit] {
      color: #ffffff;
      background-color: #000000; }
  .btn.btn-dark-outlined, input.btn-dark-outlined[type="submit"],
  input.btn-dark-outlined[type="button"], div.wpforms-container-full .wpforms-form button.btn-dark-outlined[type=submit] {
    color: #000000;
    border: 1px solid #000000;
    background-color: transparent; }
    .btn.btn-dark-outlined:hover, input.btn-dark-outlined:hover[type="submit"],
    input.btn-dark-outlined:hover[type="button"], div.wpforms-container-full .wpforms-form button.btn-dark-outlined:hover[type=submit] {
      color: #183B68;
      border-color: #183B68;
      background-color: transparent; }
  .btn.btn-light, input.btn-light[type="submit"],
  input.btn-light[type="button"], div.wpforms-container-full .wpforms-form button.btn-light[type=submit] {
    color: #3F3F3F;
    border: none;
    background-color: #ffffff; }
    .btn.btn-light:hover, input.btn-light:hover[type="submit"],
    input.btn-light:hover[type="button"], div.wpforms-container-full .wpforms-form button.btn-light:hover[type=submit] {
      color: #E5114D; }
  .btn.btn-light-outlined, input.btn-light-outlined[type="submit"],
  input.btn-light-outlined[type="button"], div.wpforms-container-full .wpforms-form button.btn-light-outlined[type=submit] {
    color: #ffffff;
    border: 1px solid #ffffff;
    background-color: transparent; }
    .btn.btn-light-outlined:hover, input.btn-light-outlined:hover[type="submit"],
    input.btn-light-outlined:hover[type="button"], div.wpforms-container-full .wpforms-form button.btn-light-outlined:hover[type=submit] {
      color: #183B68;
      border-color: #183B68;
      background-color: transparent; }
  .btn.btn-primary, input.btn-primary[type="submit"],
  input.btn-primary[type="button"], div.wpforms-container-full .wpforms-form button.btn-primary[type=submit] {
    color: #ffffff;
    border: none;
    background-color: #E5114D;
    outline: none; }
    .btn.btn-primary:hover, input.btn-primary:hover[type="submit"],
    input.btn-primary:hover[type="button"], div.wpforms-container-full .wpforms-form button.btn-primary:hover[type=submit] {
      color: #ffffff;
      background-color: #cd0f45; }
  .btn.btn-primary-outlined, input.btn-primary-outlined[type="submit"],
  input.btn-primary-outlined[type="button"], div.wpforms-container-full .wpforms-form button.btn-primary-outlined[type=submit] {
    color: #183B68;
    border: 1px solid #E5114D;
    background-color: transparent; }
    .btn.btn-primary-outlined:hover, input.btn-primary-outlined:hover[type="submit"],
    input.btn-primary-outlined:hover[type="button"], div.wpforms-container-full .wpforms-form button.btn-primary-outlined:hover[type=submit] {
      color: #ffffff;
      border-color: #cd0f45;
      background-color: transparent; }
  .btn.btn-secondary, input.btn-secondary[type="submit"], body.category .category__filters__filters ul li input.btn-filter-cat[type="submit"],
  input.btn-secondary[type="button"], body.category .category__filters__filters ul li input.btn-filter-cat[type="button"], div.wpforms-container-full .wpforms-form button.btn-secondary[type=submit], div.wpforms-container-full .wpforms-form body.category .category__filters__filters ul li button.btn-filter-cat[type=submit], body.category .category__filters__filters ul li div.wpforms-container-full .wpforms-form button.btn-filter-cat[type=submit], body.category .category__filters__filters ul li .btn.btn-filter-cat {
    color: #183B68;
    border: none;
    background-color: #EBEBEB; }
    .btn.btn-secondary:hover, input.btn-secondary:hover[type="submit"], body.category .category__filters__filters ul li input.btn-filter-cat:hover[type="submit"],
    input.btn-secondary:hover[type="button"], body.category .category__filters__filters ul li input.btn-filter-cat:hover[type="button"], div.wpforms-container-full .wpforms-form button.btn-secondary:hover[type=submit], div.wpforms-container-full .wpforms-form body.category .category__filters__filters ul li button.btn-filter-cat:hover[type=submit], body.category .category__filters__filters ul li div.wpforms-container-full .wpforms-form button.btn-filter-cat:hover[type=submit], body.category .category__filters__filters ul li .btn.btn-filter-cat:hover {
      color: #183B68;
      background-color: #dedede; }
  .btn.btn-secondary-outlined, input.btn-secondary-outlined[type="submit"],
  input.btn-secondary-outlined[type="button"], div.wpforms-container-full .wpforms-form button.btn-secondary-outlined[type=submit] {
    color: #00A8E7;
    font-weight: normal;
    background-color: transparent;
    border: 1px solid #00A8E7; }
    .btn.btn-secondary-outlined:hover, input.btn-secondary-outlined:hover[type="submit"],
    input.btn-secondary-outlined:hover[type="button"], div.wpforms-container-full .wpforms-form button.btn-secondary-outlined:hover[type=submit] {
      color: #0083b4;
      background-color: transparent;
      border-color: #0083b4; }
  .btn.btn-underlined, input.btn-underlined[type="submit"],
  input.btn-underlined[type="button"], div.wpforms-container-full .wpforms-form button.btn-underlined[type=submit] {
    color: #3F3F3F;
    border-bottom: 2px solid #3F3F3F; }
    .btn.btn-underlined:hover, input.btn-underlined:hover[type="submit"],
    input.btn-underlined:hover[type="button"], div.wpforms-container-full .wpforms-form button.btn-underlined:hover[type=submit] {
      color: #262626;
      background-color: transparent;
      border-bottom: 3px solid #262626; }
  .btn.btn-balance:hover > i, input.btn-balance:hover[type="submit"] > i, input.btn-balance:hover[type="button"] > i, div.wpforms-container-full .wpforms-form button.btn-balance:hover[type=submit] > i {
    animation: balance 1s infinite ease-in-out; }
  .btn.btn-balance-vertical:hover > i, input.btn-balance-vertical:hover[type="submit"] > i, input.btn-balance-vertical:hover[type="button"] > i, div.wpforms-container-full .wpforms-form button.btn-balance-vertical:hover[type=submit] > i {
    animation: ressortv 1s infinite both ease-in-out; }
  .btn.btn-link, input.btn-link[type="submit"],
  input.btn-link[type="button"], div.wpforms-container-full .wpforms-form button.btn-link[type=submit] {
    text-transform: none;
    color: #3F3F3F;
    padding: 0;
    background-color: transparent; }
    .btn.btn-link:after, input.btn-link[type="submit"]:after,
    input.btn-link[type="button"]:after, div.wpforms-container-full .wpforms-form button.btn-link[type=submit]:after {
      display: none; }
    .btn.btn-link:hover, input.btn-link:hover[type="submit"],
    input.btn-link:hover[type="button"], div.wpforms-container-full .wpforms-form button.btn-link:hover[type=submit] {
      color: #000000; }

/* ----------------------------------------------------- */
/* BOUTON AVEC UNE BARRE EN BAS A GAUCHE */
/* ----------------------------------------------------- */
.btn_bar {
  position: relative;
  color: #E5114D;
  text-transform: none;
  overflow: visible;
  font-family: Arial, Verdana, serif;
  font-size: 1.25rem; }
  .btn_bar:before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0.5625rem;
    width: 1.875rem;
    height: 2px;
    right: 100%;
    margin: 0 0.5625rem;
    background-color: #E5114D; }
  .btn_bar:hover {
    color: #183B68; }
    .btn_bar:hover:before {
      background-color: #183B68; }

button {
  cursor: pointer; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* RESPONSIVE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* XXS */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* XS */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* SM */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* MD */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* LG */
/* ----------------------------------------------------- */
@media (min-width: 1200px) {
  .btn, input[type="submit"],
  input[type="button"], div.wpforms-container-full .wpforms-form button[type=submit] {
    padding: 1rem 2rem; } }

/* ----------------------------------------------------- */
/* XL */
/* ----------------------------------------------------- */
.breadcrumbs {
  text-align: left;
  position: relative;
  padding: 1rem;
  margin: 0;
  color: #9C9C9C; }
  .breadcrumbs .breadcrumb-nav {
    list-style: none;
    padding: 0;
    margin: 0; }
    .breadcrumbs .breadcrumb-nav li {
      display: inline-block;
      vertical-align: top;
      color: #9C9C9C;
      padding-right: 1.5em; }
      .breadcrumbs .breadcrumb-nav li:last-child {
        padding-right: 0; }
  .breadcrumbs > span {
    display: inline-block;
    white-space: nowrap;
    text-transform: none;
    color: #9C9C9C;
    font-family: Montserrat, Arial, sans-serif;
    font-style: italic;
    font-size: 0.875em; }
    .breadcrumbs > span.separator {
      margin: 0 0.5em;
      color: #183B68; }
  .breadcrumbs a {
    display: inline-block;
    color: #3F3F3F;
    font-family: Montserrat, Arial, sans-serif;
    font-style: italic; }
    .breadcrumbs a:hover {
      color: #000000 !important; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* RESPONSIVE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* MOBILE : -xxs px */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* MOBILE : -xs px */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* TABLET : -sm px */
/* ----------------------------------------------------- */
@media (min-width: 769px) {
  .breadcrumbs {
    text-align: left; } }

/* ----------------------------------------------------- */
/* TABLET PORTRAIT : -md px */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* DESKTOP : -lg px */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* DESKTOP : -xl px */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* STYLES GENERAUX */
/* ----------------------------------------------------- */
input[type="submit"],
input[type="button"] {
  cursor: pointer; }

textarea,
input[type="text"],
input[type="tel"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="date"] {
  display: inline-block;
  width: 100%;
  color: #3F3F3F;
  background-color: #ffffff;
  font-family: Montserrat, Arial, sans-serif;
  font-size: 1em;
  font-weight: normal;
  text-transform: none;
  -webkit-appearance: none;
  border: 1px solid #3F3F3F;
  border-radius: 8px;
  padding: 0.75em;
  margin: 0 0 0.8125em 0; }

select {
  display: inline-block;
  width: 100%;
  color: #000000;
  background-color: #ffffff;
  font-family: Montserrat, Arial, sans-serif;
  font-size: 1em;
  font-weight: normal;
  text-transform: none;
  border: 1px solid #3F3F3F;
  border-radius: 8px;
  padding: 0.75em;
  margin: 0 0 0.8125em 0;
  -webkit-appearance: none; }
  select option {
    color: #000000; }
  select:after {
    content: "\e91d";
    display: block;
    position: absolute;
    top: 50%;
    right: 1rem;
    z-index: 200; }

.select_container {
  position: relative;
  font-family: "icomoon";
  margin-bottom: 1rem; }
  .select_container:after {
    content: "\e91d";
    display: block;
    position: absolute;
    font-size: 0.375rem;
    top: 50%;
    right: 1rem;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -o-transform: translate(0, -50%);
    transform: translate(0, -50%); }
  .select_container select {
    margin: 0; }

input[type="radio"] {
  width: 1.5em !important;
  height: 1.5em !important;
  margin: 0 0.625em 0 0; }

select option {
  color: #E5114D; }

label {
  color: #3F3F3F;
  font-family: Montserrat, Arial, sans-serif;
  font-size: 1em;
  line-height: 1.1875em;
  font-weight: 600;
  text-align: center;
  text-transform: none; }

input::-webkit-input-placeholder, input:-moz-placeholder, input:-ms-input-placeholder {
  color: #E5114D;
  font-family: Montserrat, Arial, sans-serif;
  font-size: 1em;
  line-height: 1.1875em;
  font-weight: 600;
  text-align: center;
  text-transform: none; }

textarea {
  resize: vertical; }

/* ----------------------------------------------------- */
/* MOTEURS DE RECHERCHE DE POSTS */
/* ----------------------------------------------------- */
.form-container {
  text-align: center;
  margin-bottom: 40px; }
  .form-container form {
    display: inline-block;
    text-align: center;
    padding: 15px 40px;
    background-color: #ffffff;
    border-radius: 58px; }
    .form-container form p {
      display: inline-block;
      vertical-align: baseline; }
    .form-container form select {
      line-height: 58px;
      height: 58px;
      background: white;
      padding: 10px;
      font-size: 1em; }
    .form-container form input[type='text'] {
      line-height: 58px;
      height: 58px;
      background: white;
      padding: 10px;
      font-size: 1em;
      border-radius: 6px; }

.acf-form-submit {
  text-align: right; }

/* ----------------------------------------------------- */
/* MOTEURS DE RECHERCHE SIT / AUTRES */
/* ----------------------------------------------------- */
.moteur-recherche {
  display: block;
  position: relative;
  z-index: 5; }
  .moteur-recherche .form-field-row {
    display: block;
    margin: 0 0 0.25em 0; }
    .moteur-recherche .form-field-row .form-field:last-child {
      margin-right: 0; }
  .moteur-recherche .form-field {
    display: inline-block;
    vertical-align: top; }
    .moteur-recherche .form-field label {
      font-size: 0.75em;
      color: #ffffff; }
    .moteur-recherche .form-field input[type="text"] {
      background-color: rgba(255, 255, 255, 0.6); }
    .moteur-recherche .form-field.form-field-submit {
      display: block;
      text-align: center;
      margin: 1em 0; }
  .moteur-recherche.moteur-hebergements {
    text-align: center; }

/* ----------------------------------------------------- */
/* SURCHARGE WPFORMS */
/* ----------------------------------------------------- */
div.wpforms-container-full .wpforms-form .wpforms-field-label {
  color: #3F3F3F !important;
  font-size: 1em !important; }

div.wpforms-container-full .wpforms-form .wpforms-field {
  overflow: hidden; }

.wpforms-container .wpforms-field-label {
  font-weight: normal; }

.wpforms-container .wpforms-field-label-inline {
  font-size: 1em; }

.wpforms-label-hide,
.wpforms-sublabel-hide {
  display: none; }

.wpforms-field-container {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start; }

.wpforms-field {
  flex-basis: 100%;
  flex-shrink: 0;
  flex-grow: 0; }
  .wpforms-field.half {
    flex-basis: 48%; }
    .wpforms-field.half:last-child {
      margin-left: 4%; }

/* ----------------------------------------------------- */
/* Contact Form 7 */
/* ----------------------------------------------------- */
.form-group {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start; }

.form-field {
  flex-basis: 100%;
  margin-bottom: 1rem; }
  .form-field label {
    color: #183B68;
    padding-bottom: .5rem; }
  .form-field.form-half {
    flex-basis: 50%; }
    .form-field.form-half:first-child {
      padding-right: .5rem; }
    .form-field.form-half:last-child {
      padding-left: .5rem; }
  .form-field.form-two-thirds {
    flex-basis: calc(100% / 1.5);
    padding-right: .5rem; }
  .form-field.form-one-third {
    flex-basis: calc(100% / 3);
    padding-left: .5rem; }
  .form-field.form-submit {
    text-align: center; }

/* ----------------------------------------------------- */
/* CONTACT FORM 7 */
/* ----------------------------------------------------- */
.wpcf7-form.sent:after {
  content: "";
  display: block;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9998;
  background-color: rgba(255, 255, 255, 0.85); }

.wpcf7-response-output {
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 9999;
  padding: 1rem; }
  .wpcf7-response-output.wpcf7-mail-sent-ok {
    background-color: #398f14;
    color: #ffffff;
    border-radius: 2px; }

/* ----------------------------------------------------- */
/* RECAPTCHA */
/* ----------------------------------------------------- */
.grecaptcha-badge {
  visibility: hidden !important; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* RESPONSIVE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* DESKTOP : 1200px px */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* TABLETP : 990px px */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* TABLET : 769px px */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* TABLE : 640px px */
/* ----------------------------------------------------- */
@media (max-width: 640px) {
  .moteur-recherche.moteur-hebergements form {
    padding: 0 1em; }
    .moteur-recherche.moteur-hebergements form .form-label {
      font-size: 1.325em; }
  input[type="text"],
  input[type="tel"],
  input[type="email"],
  input[type="password"],
  input[type="search"],
  input[type="date"],
  select {
    min-height: 3em; } }

/* ----------------------------------------------------- */
/* MOBILEP : 480px px */
/* ----------------------------------------------------- */
@media (max-width: 480px) {
  input[type="text"],
  input[type="tel"],
  input[type="email"],
  input[type="password"],
  input[type="search"],
  input[type="date"],
  select {
    width: 100%; }
  input[type="submit"] {
    width: 100%; }
  .form-field {
    width: 100%; } }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* CARTE INTERACTIVE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ACCUEIL */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* PAGE CARTE */
/* ----------------------------------------------------- */
#map {
  height: 50vh; }

/* Conteneur Map */
/* ----------------------------------------------------- */
.content-map {
  position: relative;
  /* On cache la barre de partage */
  /* ----------------------------------------------------- */
  /* Conteneur Map */
  /* ----------------------------------------------------- */
  /* Filtres */
  /* ----------------------------------------------------- */ }
  .content-map .sharedaddy {
    display: none; }
  .content-map #map {
    height: 80vh; }
  .content-map .map-filtres {
    position: absolute;
    top: 0px;
    right: 0;
    width: 25%;
    background: #183B68;
    max-width: 350px;
    padding: 30px 50px;
    border-radius: 0px 0 0px 45px;
    color: #ffffff;
    font-size: 2rem;
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.3);
    text-align: center;
    z-index: 29; }
    .content-map .map-filtres p {
      border-bottom: 1px solid white;
      padding-bottom: 20px;
      margin-top: 0; }
    .content-map .map-filtres .form-group {
      display: block;
      margin-bottom: 16px; }
      .content-map .map-filtres .form-group label {
        font-size: 0.875em; }
      .content-map .map-filtres .form-group select {
        display: block;
        width: 100%;
        height: 58px;
        line-height: 58px;
        background-color: rgba(255, 255, 255, 0.25);
        color: #ffffff;
        font-size: 0.875em;
        border: none; }
        .content-map .map-filtres .form-group select option {
          font-size: 0.875em;
          color: #ffffff; }

/* ----------------------------------------------------- */
/* INFOWINDOW / POPUP */
/* ----------------------------------------------------- */
/* GOOGLE */
/* ----------------------------------------------------- */
.gm-style-iw {
  padding: 16px; }
  .gm-style-iw .title {
    padding: 16px 0;
    background-color: #ffffff;
    color: #3F3F3F;
    font-size: 1.75rem;
    font-weight: bold;
    text-align: center; }
  .gm-style-iw .image {
    display: inline-block;
    vertical-align: top;
    width: 100%;
    min-height: 140px;
    position: relative;
    overflow: hidden; }
    .gm-style-iw .image img {
      position: absolute;
      width: 100%;
      height: auto;
      position: absolute;
      left: 50%;
      top: 50%;
      width: 100%;
      height: auto;
      transform: translate(-50%, -50%); }
  .gm-style-iw .content {
    display: inline-block;
    vertical-align: top;
    width: 100%;
    padding-top: 16px;
    font-size: 1.25rem !important;
    color: #3F3F3F; }
  .gm-style-iw .link {
    text-align: right; }
    .gm-style-iw .link .btn, .gm-style-iw .link input[type="submit"],
    .gm-style-iw .link input[type="button"], .gm-style-iw .link div.wpforms-container-full .wpforms-form button[type=submit], div.wpforms-container-full .wpforms-form .gm-style-iw .link button[type=submit] {
      padding: 10px 20px; }

/* OSM / IGN / LEAFLET */
/* ----------------------------------------------------- */
.leaflet-popup-content {
  margin: 16px; }
  .leaflet-popup-content .map_popup_content_titre {
    font-family: Arial, Verdana, serif;
    color: #000000;
    font-size: 1.125em;
    font-weight: bold;
    text-align: left;
    margin: 0;
    padding: 16px 0; }
  .leaflet-popup-content .map_popup_content_image {
    display: inline-block;
    vertical-align: top;
    width: 100%;
    min-height: 20vh;
    position: relative;
    overflow: hidden; }
    .leaflet-popup-content .map_popup_content_image img {
      position: absolute;
      width: 100%;
      height: auto;
      position: absolute;
      left: 50%;
      top: 50%;
      width: 100%;
      height: auto;
      transform: translate(-50%, -50%); }
  .leaflet-popup-content .map_popup_content_type {
    position: absolute;
    top: 0;
    left: 0;
    text-transform: uppercase; }
    .leaflet-popup-content .map_popup_content_type .btn, .leaflet-popup-content .map_popup_content_type input[type="submit"],
    .leaflet-popup-content .map_popup_content_type input[type="button"], .leaflet-popup-content .map_popup_content_type div.wpforms-container-full .wpforms-form button[type=submit], div.wpforms-container-full .wpforms-form .leaflet-popup-content .map_popup_content_type button[type=submit] {
      color: #ffffff;
      text-transform: uppercase; }
  .leaflet-popup-content .map_popup_content_texte {
    display: inline-block;
    vertical-align: top;
    width: 100%;
    font-size: 1rem;
    color: #3F3F3F;
    padding: 0; }
    .leaflet-popup-content .map_popup_content_texte p {
      padding: 0;
      margin: 0;
      font-size: 0.875em; }
  .leaflet-popup-content .map_popup_content .poi-links .btn + .leaflet-popup-content .map_popup_content .poi-links .btn, .leaflet-popup-content .map_popup_content .poi-links input[type="submit"] + .leaflet-popup-content .map_popup_content .poi-links .btn, .leaflet-popup-content .map_popup_content .poi-links input[type="button"] + .leaflet-popup-content .map_popup_content .poi-links .btn, .leaflet-popup-content .map_popup_content .poi-links div.wpforms-container-full .wpforms-form button[type=submit] + .leaflet-popup-content .map_popup_content .poi-links .btn, div.wpforms-container-full .wpforms-form .leaflet-popup-content .map_popup_content .poi-links button[type=submit] + .leaflet-popup-content .map_popup_content .poi-links .btn, .leaflet-popup-content .map_popup_content .poi-links .btn + .leaflet-popup-content .map_popup_content .poi-links input[type="submit"], .leaflet-popup-content .map_popup_content .poi-links input[type="submit"] + .leaflet-popup-content .map_popup_content .poi-links input[type="submit"], .leaflet-popup-content .map_popup_content .poi-links input[type="button"] + .leaflet-popup-content .map_popup_content .poi-links input[type="submit"], .leaflet-popup-content .map_popup_content .poi-links div.wpforms-container-full .wpforms-form button[type=submit] + .leaflet-popup-content .map_popup_content .poi-links input[type="submit"], div.wpforms-container-full .wpforms-form .leaflet-popup-content .map_popup_content .poi-links button[type=submit] + .leaflet-popup-content .map_popup_content .poi-links input[type="submit"],
  .leaflet-popup-content .map_popup_content .poi-links .btn + .leaflet-popup-content .map_popup_content .poi-links input[type="button"],
  .leaflet-popup-content .map_popup_content .poi-links input[type="submit"] + .leaflet-popup-content .map_popup_content .poi-links input[type="button"],
  .leaflet-popup-content .map_popup_content .poi-links input[type="button"] + .leaflet-popup-content .map_popup_content .poi-links input[type="button"],
  .leaflet-popup-content .map_popup_content .poi-links div.wpforms-container-full .wpforms-form button[type=submit] + .leaflet-popup-content .map_popup_content .poi-links input[type="button"], div.wpforms-container-full .wpforms-form .leaflet-popup-content .map_popup_content .poi-links button[type=submit] + .leaflet-popup-content .map_popup_content .poi-links input[type="button"], .leaflet-popup-content .map_popup_content .poi-links .btn + .leaflet-popup-content .map_popup_content .poi-links div.wpforms-container-full .wpforms-form button[type=submit], div.wpforms-container-full .wpforms-form .leaflet-popup-content .map_popup_content .poi-links .btn + .leaflet-popup-content .map_popup_content .poi-links button[type=submit], .leaflet-popup-content .map_popup_content .poi-links input[type="submit"] + .leaflet-popup-content .map_popup_content .poi-links div.wpforms-container-full .wpforms-form button[type=submit], div.wpforms-container-full .wpforms-form .leaflet-popup-content .map_popup_content .poi-links input[type="submit"] + .leaflet-popup-content .map_popup_content .poi-links button[type=submit], .leaflet-popup-content .map_popup_content .poi-links input[type="button"] + .leaflet-popup-content .map_popup_content .poi-links div.wpforms-container-full .wpforms-form button[type=submit], div.wpforms-container-full .wpforms-form .leaflet-popup-content .map_popup_content .poi-links input[type="button"] + .leaflet-popup-content .map_popup_content .poi-links button[type=submit], .leaflet-popup-content .map_popup_content .poi-links div.wpforms-container-full .wpforms-form button[type=submit] + .leaflet-popup-content .map_popup_content .poi-links button[type=submit], div.wpforms-container-full .wpforms-form .leaflet-popup-content .map_popup_content .poi-links button[type=submit] + .leaflet-popup-content .map_popup_content .poi-links button[type=submit] {
    margin-bottom: 0; }
  .leaflet-popup-content .map_popup_content .poi-horaires-titre {
    font-weight: bold; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* CONTROLS */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
.leaflet-top {
  top: 50px !important; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* RESPONSIVE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* XXS */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* XS */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* SM */
/* ----------------------------------------------------- */
@media (min-width: 769px) {
  .leaflet-top {
    top: 0 !important; } }

/* ----------------------------------------------------- */
/* MD */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* LG */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* XL */
/* ----------------------------------------------------- */
.search-content article > a {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 16px;
  border-bottom: 1px solid #3F3F3F;
  margin-bottom: 20px; }
  .search-content article > a .post-image {
    flex-basis: 20%; }
  .search-content article > a .post-title {
    flex-basis: 80%;
    padding-left: 16px; }

.wsp-pages-list > li > .children {
  margin-left: 2em; }
  .wsp-pages-list > li > .children > li > a {
    color: #3F3F3F; }
    .wsp-pages-list > li > .children > li > a:hover {
      color: #183B68; }
  .wsp-pages-list > li > .children > li > .children {
    margin-left: 2em; }

.wsp-posts-list > li .wsp-posts-list {
  margin-left: 2em; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* SOMMAIRE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
.sommaire {
  position: relative;
  margin: 1em 0;
  text-align: center; }
  .sommaire .sommaire-page {
    display: inline-block;
    vertical-align: top;
    width: calc(100% / 4);
    height: 100px;
    padding: 1em; }
    .sommaire .sommaire-page .sommaire-inner {
      width: 100%;
      height: 100%;
      position: relative; }
    .sommaire .sommaire-page .sommaire-image {
      width: 100%;
      height: 100%;
      overflow: hidden;
      position: relative; }
      .sommaire .sommaire-page .sommaire-image img {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 100%;
        height: auto; }
    .sommaire .sommaire-page .sommaire-title {
      position: absolute;
      top: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(63, 63, 63, 0.75);
      text-align: center; }
      .sommaire .sommaire-page .sommaire-title h2 {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        margin: 0;
        padding: 0;
        width: auto;
        height: auto;
        opacity: 0.75;
        transition: all 0.4s ease-out;
        color: #ffffff;
        font-size: 3em; }
        .sommaire .sommaire-page .sommaire-title h2 a {
          color: #ffffff; }
    .sommaire .sommaire-page:hover .sommaire-title h2 {
      opacity: 1; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* SURCHARGE DES STYLES DE CAROUSEL */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* SLICK CAROUSEL */
/* ----------------------------------------------------- */
/* BULLETS */
/* ----------------------------------------------------- */
.slick-dots {
  bottom: -1.375rem;
  padding: 0; }
  .slick-dots li {
    width: auto;
    height: auto; }
    .slick-dots li button {
      width: 0.75rem;
      height: 0.75rem;
      border-radius: 0.75rem;
      background-color: #DBE4ED; }
      .slick-dots li button:before {
        display: none; }
    .slick-dots li.slick-active button {
      background-color: #E5114D; }

/* FLECHES */
/* ----------------------------------------------------- */
.slider-arrows {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 4; }

.slick-arrow {
  -webkit-appearance: none;
  display: block;
  width: 2.5rem;
  height: 2.5rem;
  line-height: 40px;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  font-size: 1rem;
  text-align: center;
  z-index: 10;
  color: #3F3F3F; }
  .slick-arrow i {
    font-size: 1.5rem; }
  .slick-arrow:before {
    display: none; }
  .slick-arrow:hover {
    color: #E5114D; }

.slick-prev {
  left: 0px; }

.slick-next {
  right: 0px; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* RESPONSIVE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* XXS */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* XS */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* SM */
/* ----------------------------------------------------- */
@media (min-width: 769px) {
  .slider-arrows {
    top: calc(50% + 64px / 2); } }

/* ----------------------------------------------------- */
/* MD */
/* ----------------------------------------------------- */
@media (min-width: 990px) {
  .slider-arrows {
    top: calc(50%); } }

/* ----------------------------------------------------- */
/* LG */
/* ----------------------------------------------------- */
@media (min-width: 1200px) {
  .slick-arrow {
    width: 3.75rem;
    height: 3.75rem; }
    .slick-arrow i {
      font-size: 2rem; }
  .slick-prev {
    left: -1rem; }
  .slick-next {
    right: -1rem; } }

/* ----------------------------------------------------- */
/* XL */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* MUR SOCIAL */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* Variables */
/* ----------------------------------------------------- */
.socialwall {
  /* ----------------------------------------------------- */
  /* TEMPLATES */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* GRID */
  /* ----------------------------------------------------- */ }
  .socialwall__list {
    display: none;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%; }
    .socialwall__list.active {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex; }
    .socialwall__list .socialwall-item {
      flex-basis: calc(100% / 4);
      height: calc(100vw / 4 - 16px);
      padding: 8px;
      position: relative; }
      .socialwall__list .socialwall-item > a {
        display: block;
        position: relative;
        overflow: hidden;
        width: 100%;
        height: 100%;
        background-repeat: no-repeat;
        background-position: center center;
        -webkit-background-size: cover;
        -moz-background-size: cover;
        background-size: cover;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.5); }
      .socialwall__list .socialwall-item .bar {
        display: block;
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 5px; }
      .socialwall__list .socialwall-item .over {
        position: absolute;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-content: center;
        top: 100%;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(63, 63, 63, 0.75);
        padding: 1em;
        -webkit-transition: all 0.2s cubic-bezier(0.14, 0.66, 0.28, 0.93);
        -moz-transition: all 0.2s cubic-bezier(0.14, 0.66, 0.28, 0.93);
        -ms-transition: all 0.2s cubic-bezier(0.14, 0.66, 0.28, 0.93);
        -o-transition: all 0.2s cubic-bezier(0.14, 0.66, 0.28, 0.93);
        transition: all 0.2s cubic-bezier(0.14, 0.66, 0.28, 0.93);
        text-align: center;
        color: #ffffff;
        font-size: 1em;
        font-family: Montserrat, Arial, sans-serif;
        font-weight: normal;
        overflow: hidden;
        text-overflow: ellipsis; }
        .socialwall__list .socialwall-item .over .content {
          opacity: 0;
          visibility: hidden;
          transition: all 0.4s ease-out;
          transition-delay: 0.4s;
          overflow: hidden;
          text-overflow: ellipsis; }
        .socialwall__list .socialwall-item .over .picto_mur {
          display: block;
          font-size: 1.5em;
          margin-bottom: 1em;
          transition: all 0.4s ease-in-out;
          transition-delay: 0.4s; }
      .socialwall__list .socialwall-item.socialwall-item-facebook .over {
        background-color: #365899; }
      .socialwall__list .socialwall-item.socialwall-item-facebook .bar {
        background-color: #365899; }
      .socialwall__list .socialwall-item.socialwall-item-twitter .over {
        background-color: #3F3F3F; }
      .socialwall__list .socialwall-item.socialwall-item-twitter .bar {
        background-color: #3F3F3F; }
      .socialwall__list .socialwall-item.socialwall-item-youtube .over {
        background-color: #FF0000; }
      .socialwall__list .socialwall-item.socialwall-item-youtube .bar {
        background-color: #FF0000; }
      .socialwall__list .socialwall-item.socialwall-item-instagram .over {
        background: rgba(0, 0, 0, 0.9); }
      .socialwall__list .socialwall-item.socialwall-item-instagram .bar {
        background: #f8c418;
        background: -moz-linear-gradient(90deg, #f8c418 0%, #ec224d 25%, red 50%, #b42f97 75%, #413cd5 100%);
        background: -webkit-linear-gradient(90deg, #f8c418 0%, #ec224d 25%, red 50%, #b42f97 75%, #413cd5 100%);
        background: linear-gradient(90deg, #f8c418 0%, #ec224d 25%, red 50%, #b42f97 75%, #413cd5 100%);
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#f8c418",endColorstr="#413cd5",GradientType=1); }
      .socialwall__list .socialwall-item:hover .over, .socialwall__list .socialwall-item.noimg .over {
        top: 0; }
        .socialwall__list .socialwall-item:hover .over .content, .socialwall__list .socialwall-item.noimg .over .content {
          opacity: 1;
          visibility: visible; }
        .socialwall__list .socialwall-item:hover .over .picto_mur, .socialwall__list .socialwall-item.noimg .over .picto_mur {
          font-size: 2em; }
  .socialwall__grid {
    /* ONGLETS */
    /* ----------------------------------------------------- */
    /* Par reseau */
    /* ----------------------------------------------------- */ }
    .socialwall__grid .tabs {
      margin: 1.875em 0;
      padding: 0;
      list-style: none;
      text-align: center; }
      .socialwall__grid .tabs .tab {
        display: inline-block;
        width: 2.5rem;
        height: 2.5rem;
        vertical-align: top;
        color: #ffffff;
        background-color: #00A8E7;
        margin-right: 0.5em;
        cursor: pointer;
        background-color: #00A8E7;
        border-radius: 100em; }
        .socialwall__grid .tabs .tab > i {
          font-size: 1rem;
          line-height: 2.5rem; }
        .socialwall__grid .tabs .tab:last-child {
          margin-right: 0; }
        .socialwall__grid .tabs .tab.active, .socialwall__grid .tabs .tab:hover {
          background-color: #183B68; }
    .socialwall__grid .socialwall-list {
      display: none; }
      .socialwall__grid .socialwall-list .socialwall-item {
        margin: 0 1rem 1rem 1rem; }
        .socialwall__grid .socialwall-list .socialwall-item__inner {
          display: block;
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2); }
        .socialwall__grid .socialwall-list .socialwall-item__image {
          height: 56.25vw;
          overflow: hidden; }
          .socialwall__grid .socialwall-list .socialwall-item__image img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center; }
        .socialwall__grid .socialwall-list .socialwall-item__content {
          position: relative;
          padding: 2.5rem 1rem 1rem 1rem;
          border-bottom: 5px solid #00A8E7; }
          .socialwall__grid .socialwall-list .socialwall-item__content__picto {
            position: absolute;
            top: 0;
            left: 50%;
            -webkit-transform: translate(-50%, -50%);
            -moz-transform: translate(-50%, -50%);
            -ms-transform: translate(-50%, -50%);
            -o-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
            background-color: #ffffff;
            width: 2.5rem;
            height: 2.5rem;
            box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
            text-align: center;
            border-radius: 2.5rem; }
            .socialwall__grid .socialwall-list .socialwall-item__content__picto i {
              font-size: 1rem;
              line-height: 2.5rem; }
          .socialwall__grid .socialwall-list .socialwall-item__content__title {
            font-size: 1rem;
            color: #3F3F3F; }
            .socialwall__grid .socialwall-list .socialwall-item__content__title strong {
              color: #183B68;
              text-transform: uppercase;
              font-weight: bold; }
          .socialwall__grid .socialwall-list .socialwall-item__content__text {
            font-size: 1rem;
            color: #3F3F3F; }
      .socialwall__grid .socialwall-list.active {
        display: block; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* RESPONSIVE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* XXS */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* XS */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* SM */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* MD */
/* ----------------------------------------------------- */
@media (min-width: 990px) {
  .socialwall__grid .socialwall-list .socialwall-item__image {
    height: calc(56.25vw / 2); } }

/* ----------------------------------------------------- */
/* LG */
/* ----------------------------------------------------- */
@media (min-width: 1200px) {
  .socialwall__grid .socialwall-list .socialwall-item__image {
    height: calc(56.25vw / 4); } }

/* ----------------------------------------------------- */
/* XL */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* GALLERIES, MOSAIQUES, ETC */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
section {
  /* ----------------------------------------------------- */
  /* MOSAIQUE */
  /* ----------------------------------------------------- */ }
  section.mosaique {
    position: relative; }
    section.mosaique .mosaique__container {
      position: relative;
      z-index: 2;
      display: grid; }
    section.mosaique .mosaique__bg {
      background-color: #183B68;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      z-index: 1; }
      section.mosaique .mosaique__bg img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        opacity: .15; }
    section.mosaique .mosaique__title_container {
      padding: 0 1rem;
      grid-area: 1/1/1/3; }
      section.mosaique .mosaique__title_container h2 {
        text-align: center;
        color: #ffffff;
        font-weight: 500;
        margin-bottom: 1rem; }
      section.mosaique .mosaique__title_container p {
        color: #ffffff; }
    section.mosaique .mosaique__image img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
      display: block;
      padding: .25rem; }
    section.mosaique .mosaique__image.image-1 {
      grid-area: 2/1/2/3; }
    section.mosaique .mosaique__image.image-2 {
      grid-area: 3/1/3/2; }
    section.mosaique .mosaique__image.image-3 {
      grid-area: 3/2/3/3; }
    section.mosaique .mosaique__image.image-4 {
      grid-area: 4/1/4/2; }
    section.mosaique .mosaique__image.image-5 {
      grid-area: 4/2/4/3; }
    section.mosaique .mosaique__more {
      grid-area: 5/1/5/3;
      background-color: #E5114D;
      margin: .25rem;
      padding: .5rem 0;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      flex-direction: column;
      flex-wrap: wrap;
      justify-content: center;
      align-items: center; }
      section.mosaique .mosaique__more p {
        color: #ffffff;
        margin: 0;
        text-align: center; }
        section.mosaique .mosaique__more p i {
          display: block;
          font-size: 2rem; }
        section.mosaique .mosaique__more p span {
          font-size: 1rem;
          font-family: Arial, Verdana, serif; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* RESPONSIVE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* XXS */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* XS */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* SM */
/* ----------------------------------------------------- */
@media (min-width: 769px) {
  section.mosaique .mosaique__container {
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(3, 1fr); }
  section.mosaique .mosaique__title_container {
    grid-area: 1/1/2/3;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center; }
  section.mosaique .mosaique__image.image-1 {
    grid-area: 1/3/3/5; }
  section.mosaique .mosaique__image.image-2 {
    grid-area: 2/1/3/2; }
  section.mosaique .mosaique__image.image-3 {
    grid-area: 3/1/4/2; }
  section.mosaique .mosaique__image.image-4 {
    grid-area: 2/2/4/3; }
  section.mosaique .mosaique__image.image-5 {
    grid-area: 3/4/4/5; }
  section.mosaique .mosaique__more {
    grid-area: 3/3/4/4; } }

/* ----------------------------------------------------- */
/* MD */
/* ----------------------------------------------------- */
@media (min-width: 990px) {
  section.mosaique .mosaique__more p i {
    font-size: 4rem; }
  section.mosaique .mosaique__more p span {
    font-size: 2rem; } }

/* ----------------------------------------------------- */
/* LG */
/* ----------------------------------------------------- */
@media (min-width: 1200px) {
  section.mosaique {
    padding: 9.375rem 0; } }

/* ----------------------------------------------------- */
/* XL */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* SECTIONS FLEXIBLES */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
section {
  padding: 2rem 0;
  /* ----------------------------------------------------- */
  /* PATTERNS */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* TITLE SUR LE BANDEAU */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* BANDEAU */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* SINGLE POST THUMBNAIL */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* TEXTE IMAGE TEXTE */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* TEXTE LARGE */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* IMAGE SEULE SUR TOUTE LA LARGEUR */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* SECTIONS D'UN ARTICLE */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* BRANCHEMENT DE PAGE */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* GMAP */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* COLONNES FLEXIBLES */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* BOX */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* KEY FIGURES */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* Keyfigures */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* TIMELINE */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* Branchepage */
  /* ----------------------------------------------------- */ }
  section .section_title {
    font-size: 2.5em;
    margin-bottom: 4vh;
    font-weight: bold;
    text-align: left; }
    section .section_title:after {
      content: "";
      display: block;
      margin-top: 1rem;
      width: 40px;
      height: 3px;
      background-color: #E5114D; }
    section .section_title.col1 {
      color: #3F3F3F; }
    section .section_title.col2 {
      color: #183B68; }
    section .section_title.col3 {
      color: #E5114D; }
    section .section_title.col4 {
      color: #EBEBEB; }
    section .section_title.col5 {
      color: #00A8E7; }
  section .section_subtitle {
    color: #3F3F3F;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 1em;
    text-transform: uppercase;
    line-height: 1.5; }
  section.col1 {
    background-color: #3F3F3F; }
    section.col1 .section_title {
      color: #ffffff; }
      section.col1 .section_title:after {
        display: none; }
  section.col2 {
    background-color: #183B68; }
  section.col3 {
    background-color: #E5114D; }
  section.col4 {
    background-color: #EBEBEB; }
  section.col5 {
    background-color: #00A8E7; }
  section.pattern-left {
    position: relative;
    overflow: visible; }
    section.pattern-left:before {
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 16.625rem;
      height: 29.6875rem;
      -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
      -o-transform: translate(0, -50%);
      transform: translate(0, -50%);
      z-index: 0;
      opacity: .25; }
  section.pattern-right {
    position: relative;
    overflow: visible; }
    section.pattern-right:before {
      display: block;
      position: absolute;
      bottom: 0;
      right: 0;
      width: 10.5rem;
      height: 24.1875rem;
      -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
      -o-transform: translate(0, 0);
      transform: translate(0, 0);
      z-index: 0;
      opacity: 1; }
  section.title {
    padding: 0; }
    section.title .col_title {
      background-color: #ffffff;
      box-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
      -webkit-transform: translate(0, -2rem);
      -ms-transform: translate(0, -2rem);
      -o-transform: translate(0, -2rem);
      transform: translate(0, -2rem); }
      section.title .col_title .title {
        padding: 0.75rem; }
  section.bandeau {
    position: relative;
    height: 20vh;
    padding: 0;
    overflow: hidden; }
    section.bandeau .container {
      position: relative;
      z-index: 10; }
    section.bandeau .bandeau__image {
      width: 100%;
      height: 100%;
      overflow: hidden; }
      section.bandeau .bandeau__image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center; }
    section.bandeau .bandeau__title {
      display: block;
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      -moz-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      -o-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      z-index: 1000; }
      section.bandeau .bandeau__title .page-title {
        color: #ffffff; }
    section.bandeau .bandeau__tabs {
      position: absolute;
      bottom: 0;
      width: 100%;
      z-index: 1021; }
    section.bandeau .bandeau__slider img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center; }
  section.post_thumbnail {
    margin-top: -16vh;
    position: relative;
    z-index: 3; }
    section.post_thumbnail .post_thumbnail_image {
      max-height: 28vh;
      overflow: hidden; }
      section.post_thumbnail .post_thumbnail_image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center; }
      section.post_thumbnail .post_thumbnail_image .slider-container {
        height: 100%;
        padding-bottom: 30px; }
  section.txt-img, section.img-txt {
    padding: 4vh 0; }
    section.txt-img .txt, section.img-txt .txt {
      position: relative; }
      section.txt-img .txt .text, section.img-txt .txt .text {
        text-align: justify; }
      section.txt-img .txt .pattern, section.img-txt .txt .pattern {
        width: 60%;
        height: auto;
        overflow: visible; }
        section.txt-img .txt .pattern svg, section.img-txt .txt .pattern svg {
          overflow: visible;
          -webkit-transform: translate(0, 15%);
          -ms-transform: translate(0, 15%);
          -o-transform: translate(0, 15%);
          transform: translate(0, 15%); }
          section.txt-img .txt .pattern svg path, section.img-txt .txt .pattern svg path {
            fill: rgba(229, 17, 77, 0.5); }
    section.txt-img .img img, section.img-txt .img img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center; }
    section.txt-img .img .pattern, section.img-txt .img .pattern {
      width: 60%;
      height: auto; }
  section.txt-large {
    padding: 4vh 0; }
  section.image_only {
    -webkit-background-size: cover;
    -moz-background-size: cover;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    min-height: 50vh;
    max-height: 60vh;
    position: relative; }
    section.image_only .image {
      display: none; }
      html.objectfit section.image_only .image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center center; }
      html:not(.objectfit) section.image_only .image img {
        width: 100%;
        height: auto; }
    section.image_only .content {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      flex-direction: column;
      flex-wrap: nowrap;
      justify-content: center;
      align-items: flex-start;
      padding: 10vh 1rem;
      background: linear-gradient(136.84deg, rgba(0, 0, 0, 0.47) 0%, rgba(21, 21, 21, 0) 100%); }
      section.image_only .content .section_title {
        color: #ffffff; }
      section.image_only .content .text p {
        color: #ffffff;
        font-style: italic; }
    html.ios section.image_only {
      background: none; }
      html.ios section.image_only .image img {
        display: inline-block;
        width: 100%;
        height: auto; }
  section.post_sections {
    position: relative;
    margin: 4vh 0;
    /* (seminaires) */
    /* (contact) */ }
    body.page-template-seminaires section.post_sections .capacites {
      order: 2; }
    section.post_sections h2 {
      margin-bottom: 1em;
      text-align: center; }
    section.post_sections p {
      text-align: justify; }
    section.post_sections .pattern.tomate-oignon {
      height: 100%;
      background-image: url("/wp-content/themes/notices/assets/images/tomate-oignon.jpg");
      -webkit-background-size: contain;
      -moz-background-size: contain;
      background-size: contain;
      background-repeat: no-repeat;
      background-position: left center; }
    section.post_sections .single_title h2 {
      margin-bottom: 1em; }
    section.post_sections .capacite_title,
    section.post_sections .disponibilites_title {
      color: #183B68;
      font-family: Arial, Verdana, serif; }
    section.post_sections .capacite_texte,
    section.post_sections .disponibilites_texte {
      color: #000000;
      font-family: Montserrat, Arial, sans-serif;
      font-size: 1em; }
    section.post_sections .coordonnees .designation,
    section.post_sections .coordonnees .horaires_title {
      font-family: Arial, Verdana, serif;
      font-size: 1.5em;
      color: #183B68;
      margin-bottom: 2rem; }
    section.post_sections .coordonnees .designation {
      font-size: 2em; }
    section.post_sections .coordonnees .horaires_title {
      margin-top: 2rem; }
    section.post_sections .coordonnees .tel {
      color: #3F3F3F;
      font-weight: bold;
      font-family: Montserrat, Arial, sans-serif;
      margin-bottom: 1rem;
      display: inline-block; }
      section.post_sections .coordonnees .tel a {
        color: #000000; }
  section.branchepage {
    padding: 4vh 4vw; }
    section.branchepage .pages {
      /* Template ICONS */
      /* ----------------------------------------------------- */ }
      section.branchepage .pages.icons {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: stretch;
        margin: 4vh 4vw; }
        section.branchepage .pages.icons .page {
          flex-basis: 100%;
          margin: 1vh 0;
          padding: 1rem 0;
          border-bottom: 1px solid #D8D8D8; }
          section.branchepage .pages.icons .page:last-child {
            border-right: none; }
          section.branchepage .pages.icons .page > a {
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            flex-direction: column;
            flex-wrap: nowrap;
            justify-content: space-between;
            align-items: center;
            color: #EBEBEB;
            padding: 0 1rem; }
            section.branchepage .pages.icons .page > a i {
              font-size: 4em;
              margin-bottom: 2rem; }
            section.branchepage .pages.icons .page > a span {
              font-size: 0.875rem;
              text-align: center;
              text-transform: uppercase; }
            section.branchepage .pages.icons .page > a:hover {
              color: #000000; }
  section.gmap .filters_col {
    padding: 0 !important; }
  section.gmap .filters_container {
    padding: 2rem 1rem;
    background-color: #E5114D;
    position: fixed;
    top: 0;
    bottom: 0;
    height: auto;
    width: 100%;
    z-index: 1404;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s linear, transform 0.4s cubic-bezier(0.12, 0.9, 0.79, 1);
    -webkit-transform: scale(0.9);
    -moz-transform: scale(0.9);
    -ms-transform: scale(0.9);
    -o-transform: scale(0.9);
    transform: scale(0.9); }
    section.gmap .filters_container select {
      border: 1px solid #ffffff;
      border-radius: 2px;
      background-color: rgba(255, 255, 255, 0.52); }
      section.gmap .filters_container select option {
        color: #000000; }
      section.gmap .filters_container select::placeholder {
        color: #000000; }
    body.map-search-open section.gmap .filters_container {
      opacity: 1;
      visibility: visible;
      -webkit-transform: scale(1);
      -moz-transform: scale(1);
      -ms-transform: scale(1);
      -o-transform: scale(1);
      transform: scale(1); }
    section.gmap .filters_container__close {
      position: absolute;
      top: 0;
      right: 0;
      padding: 1rem; }
      section.gmap .filters_container__close a {
        color: #ffffff; }
  section.gmap .list_modes {
    display: none; }
  section.gmap .list_modes_mobile {
    position: absolute;
    top: 0;
    bottom: auto;
    width: 100%;
    background-color: rgba(255, 255, 255, 0.8);
    padding: .5rem;
    z-index: 402;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: stretch; }
    section.gmap .list_modes_mobile ul {
      list-style: none;
      padding: 0;
      margin: 0;
      text-align: center; }
      section.gmap .list_modes_mobile ul li {
        list-style: none;
        padding: 0;
        margin: 0;
        display: inline-block;
        vertical-align: top;
        line-height: 1; }
    section.gmap .list_modes_mobile .btn, section.gmap .list_modes_mobile input[type="submit"],
    section.gmap .list_modes_mobile input[type="button"], section.gmap .list_modes_mobile div.wpforms-container-full .wpforms-form button[type=submit], div.wpforms-container-full .wpforms-form section.gmap .list_modes_mobile button[type=submit] {
      border-radius: 0;
      padding: .4rem;
      margin: 0; }
      section.gmap .list_modes_mobile .btn + section.gmap .list_modes_mobile .btn, section.gmap .list_modes_mobile input[type="submit"] + section.gmap .list_modes_mobile .btn, section.gmap .list_modes_mobile input[type="button"] + section.gmap .list_modes_mobile .btn, section.gmap .list_modes_mobile div.wpforms-container-full .wpforms-form button[type=submit] + section.gmap .list_modes_mobile .btn, div.wpforms-container-full .wpforms-form section.gmap .list_modes_mobile button[type=submit] + section.gmap .list_modes_mobile .btn, section.gmap .list_modes_mobile .btn + section.gmap .list_modes_mobile input[type="submit"], section.gmap .list_modes_mobile input[type="submit"] + section.gmap .list_modes_mobile input[type="submit"], section.gmap .list_modes_mobile input[type="button"] + section.gmap .list_modes_mobile input[type="submit"], section.gmap .list_modes_mobile div.wpforms-container-full .wpforms-form button[type=submit] + section.gmap .list_modes_mobile input[type="submit"], div.wpforms-container-full .wpforms-form section.gmap .list_modes_mobile button[type=submit] + section.gmap .list_modes_mobile input[type="submit"],
      section.gmap .list_modes_mobile .btn + section.gmap .list_modes_mobile input[type="button"],
      section.gmap .list_modes_mobile input[type="submit"] + section.gmap .list_modes_mobile input[type="button"],
      section.gmap .list_modes_mobile input[type="button"] + section.gmap .list_modes_mobile input[type="button"],
      section.gmap .list_modes_mobile div.wpforms-container-full .wpforms-form button[type=submit] + section.gmap .list_modes_mobile input[type="button"], div.wpforms-container-full .wpforms-form section.gmap .list_modes_mobile button[type=submit] + section.gmap .list_modes_mobile input[type="button"], section.gmap .list_modes_mobile .btn + section.gmap .list_modes_mobile div.wpforms-container-full .wpforms-form button[type=submit], div.wpforms-container-full .wpforms-form section.gmap .list_modes_mobile .btn + section.gmap .list_modes_mobile button[type=submit], section.gmap .list_modes_mobile input[type="submit"] + section.gmap .list_modes_mobile div.wpforms-container-full .wpforms-form button[type=submit], div.wpforms-container-full .wpforms-form section.gmap .list_modes_mobile input[type="submit"] + section.gmap .list_modes_mobile button[type=submit], section.gmap .list_modes_mobile input[type="button"] + section.gmap .list_modes_mobile div.wpforms-container-full .wpforms-form button[type=submit], div.wpforms-container-full .wpforms-form section.gmap .list_modes_mobile input[type="button"] + section.gmap .list_modes_mobile button[type=submit], section.gmap .list_modes_mobile div.wpforms-container-full .wpforms-form button[type=submit] + section.gmap .list_modes_mobile button[type=submit], div.wpforms-container-full .wpforms-form section.gmap .list_modes_mobile button[type=submit] + section.gmap .list_modes_mobile button[type=submit] {
        margin: 0; }
  section.gmap .section_title {
    color: #ffffff;
    font-family: Arial, Verdana, serif;
    font-weight: bold;
    font-size: 2rem;
    position: relative; }
    section.gmap .section_title:after {
      content: "";
      display: block;
      width: 40px;
      height: 3px;
      background-color: #ffffff;
      margin-top: 1rem; }
  section.gmap .section_subtitle {
    color: #000000;
    text-transform: none;
    font-weight: normal;
    font-family: Montserrat, Arial, sans-serif;
    margin-bottom: 1rem; }
  section.gmap .search-map {
    text-align: center; }
  section.gmap #map {
    height: 100vh !important; }
  section.colonnes_flexibles {
    /* ----------------------------------------------------- */
    /* Map */
    /* ----------------------------------------------------- */
    /* ----------------------------------------------------- */
    /* AVANTAGES */
    /* ----------------------------------------------------- */ }
    section.colonnes_flexibles .column {
      padding: .5rem 0; }
      section.colonnes_flexibles .column-title {
        padding: 2rem 0; }
      section.colonnes_flexibles .column_title {
        font-weight: 600;
        text-align: left;
        color: #3F3F3F; }
        section.colonnes_flexibles .column_title.underlined {
          position: relative;
          padding-bottom: .5rem;
          display: inline-block; }
          section.colonnes_flexibles .column_title.underlined:after {
            content: "";
            display: block;
            position: absolute;
            bottom: 0;
            height: 2px;
            width: 80%;
            max-width: 13.75rem;
            margin: 0 auto;
            background-color: #183B68; }
          section.colonnes_flexibles .column_title.underlined.col1:after {
            background-color: #3F3F3F; }
        section.colonnes_flexibles .column_title.centered {
          text-align: center;
          font-weight: 600;
          display: block; }
          section.colonnes_flexibles .column_title.centered.underlined:after {
            left: 50%;
            -webkit-transform: translate(-50%, 0);
            -ms-transform: translate(-50%, 0);
            -o-transform: translate(-50%, 0);
            transform: translate(-50%, 0); }
        section.colonnes_flexibles .column_title.flex {
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          flex-direction: column;
          flex-wrap: nowrap;
          justify-content: flex-start;
          align-items: center; }
        section.colonnes_flexibles .column_title b {
          color: #183B68; }
        section.colonnes_flexibles .column_title i {
          font-size: 1.5em;
          flex-basis: 30%;
          text-align: center; }
        section.colonnes_flexibles .column_title.col1 {
          color: #3F3F3F; }
        section.colonnes_flexibles .column_title.col2 {
          color: #183B68; }
        section.colonnes_flexibles .column_title.col3 {
          color: #E5114D; }
        section.colonnes_flexibles .column_title.col4 {
          color: #EBEBEB; }
        section.colonnes_flexibles .column_title.col5 {
          color: #00A8E7; }
      section.colonnes_flexibles .column-text p {
        color: #3F3F3F; }
        section.colonnes_flexibles .column-text p em {
          color: #3F3F3F; }
      section.colonnes_flexibles .column-text strong {
        color: #183B68; }
      section.col2 section.colonnes_flexibles .column-text p, section.col2 section.colonnes_flexibles .column-text strong {
        color: #ffffff; }
      section.colonnes_flexibles .column.col1 .column-text p {
        color: #3F3F3F; }
      section.colonnes_flexibles .column.quote .column-text {
        padding: 2rem 0; }
      section.colonnes_flexibles .column_subtitle {
        color: #3F3F3F;
        font-family: Montserrat, Arial, sans-serif;
        font-size: 2.25em;
        text-transform: none;
        line-height: 1.5; }
        section.col2 section.colonnes_flexibles .column_subtitle {
          color: #ffffff; }
      section.colonnes_flexibles .column-image {
        height: 100%; }
        section.colonnes_flexibles .column-image img {
          padding-bottom: 1rem; }
          html.objectfit section.colonnes_flexibles .column-image img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center center; }
          html:not(.objectfit) section.colonnes_flexibles .column-image img {
            width: 100%;
            height: auto; }
      section.colonnes_flexibles .column.novtek .column-image img {
        object-fit: contain; }
      section.colonnes_flexibles .column-video iframe {
        width: 100%; }
      section.colonnes_flexibles .column-link {
        margin-top: 1rem; }
      section.colonnes_flexibles .column-keyfigures .column_title {
        font-size: 2.25rem; }
      section.colonnes_flexibles .column-keyfigures .keyfigure {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: center; }
        section.colonnes_flexibles .column-keyfigures .keyfigure__icon {
          flex-basis: 20%;
          font-size: 3rem;
          color: #3F3F3F;
          text-align: center; }
        section.colonnes_flexibles .column-keyfigures .keyfigure__number {
          flex-basis: 30%;
          font-size: 4rem;
          color: #183B68;
          font-weight: 700;
          margin: 0;
          text-align: center; }
        section.colonnes_flexibles .column-keyfigures .keyfigure__desc {
          flex-basis: 50%;
          padding: 0 1rem; }
          section.colonnes_flexibles .column-keyfigures .keyfigure__desc p {
            font-size: 1rem;
            color: #3F3F3F;
            margin: 0; }
      section.colonnes_flexibles .column-icons .column_title {
        font-size: 2.25rem; }
      section.colonnes_flexibles .column-icons .icon {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: center;
        margin: 1rem 0;
        cursor: pointer; }
        section.colonnes_flexibles .column-icons .icon__icon {
          background-image: url("/wp-content/themes/notices/assets/images/clip.svg");
          background-repeat: no-repeat;
          background-position: center center;
          background-size: contain;
          margin-bottom: 1rem;
          font-size: 3rem;
          color: #ffffff;
          text-align: center;
          -webkit-transition: all 0.4s ease-out;
          -moz-transition: all 0.4s ease-out;
          -ms-transition: all 0.4s ease-out;
          -o-transition: all 0.4s ease-out;
          transition: all 0.4s ease-out; }
          section.colonnes_flexibles .column-icons .icon__icon i {
            display: inline-block;
            padding: 2rem; }
          section.colonnes_flexibles .column-icons .icon__icon:hover {
            background-image: url("/wp-content/themes/notices/assets/images/clip2.svg");
            background-repeat: no-repeat;
            background-position: center center;
            background-size: contain; }
        section.colonnes_flexibles .column-icons .icon__desc {
          padding: 0 1rem; }
          section.colonnes_flexibles .column-icons .icon__desc p {
            font-size: 1rem;
            color: #3F3F3F;
            margin: 0;
            text-align: center; }
        section.colonnes_flexibles .column-icons .icon:hover .icon__icon, section.colonnes_flexibles .column-icons .icon.tab-active .icon__icon {
          background-image: url("/wp-content/themes/notices/assets/images/clip2.svg");
          background-repeat: no-repeat;
          background-position: center center;
          background-size: contain; }
        section.colonnes_flexibles .column-icons .icon:hover .icon__desc p, section.colonnes_flexibles .column-icons .icon.tab-active .icon__desc p {
          color: #183B68;
          font-weight: bold; }
      section.colonnes_flexibles .column-images:not(.carousel) {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: stretch; }
      section.colonnes_flexibles .column-images.carousel .column-images-slider {
        height: 50vh; }
        section.colonnes_flexibles .column-images.carousel .column-images-slider .image__image {
          height: 100%; }
          section.colonnes_flexibles .column-images.carousel .column-images-slider .image__image figure {
            height: 100%; }
            section.colonnes_flexibles .column-images.carousel .column-images-slider .image__image figure img {
              width: 100%;
              height: 100%;
              object-fit: contain;
              object-position: center; }
      section.colonnes_flexibles .column-images.carousel .column-images-mini-slider {
        height: 9.375rem; }
      section.colonnes_flexibles .column-images .image {
        flex-basis: 100%;
        margin-bottom: 2rem;
        padding: .5rem; }
        section.colonnes_flexibles .column-images .image__desc {
          text-align: center;
          font-weight: bold;
          margin: 1rem 0; }
        section.colonnes_flexibles .column-images .image img {
          width: 100%; }
    section.colonnes_flexibles.col2 .column_title, section.colonnes_flexibles.col2 .column_subtitle {
      color: #ffffff; }
    section.colonnes_flexibles.col2 .column_title.underlined:after {
      background-color: #ffffff; }
    section.colonnes_flexibles.col2 .column-text p,
    section.colonnes_flexibles.col2 .column-text strong,
    section.colonnes_flexibles.col2 .column-text li {
      color: #ffffff; }
      section.colonnes_flexibles.col2 .column-text p em,
      section.colonnes_flexibles.col2 .column-text strong em,
      section.colonnes_flexibles.col2 .column-text li em {
        color: #3F3F3F; }
    section.colonnes_flexibles.edito .frise .column-text {
      position: relative; }
      section.colonnes_flexibles.edito .frise .column-text:before {
        content: "";
        display: block;
        position: absolute;
        top: 50%;
        left: .5rem;
        right: .5rem;
        width: auto;
        height: 3px;
        -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
        -o-transform: translate(0, -50%);
        transform: translate(0, -50%);
        background-color: #183B68; }
      section.colonnes_flexibles.edito .frise .column-text:after {
        content: "";
        display: block;
        position: absolute;
        top: 50%;
        right: 0;
        width: 1.5rem;
        height: 1.5rem;
        background-image: url("/wp-content/themes/notices/assets/images/clip2.svg");
        background-repeat: no-repeat;
        background-position: center center;
        background-size: contain;
        -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
        -o-transform: translate(0, -50%);
        transform: translate(0, -50%); }
      section.colonnes_flexibles.edito .frise .column-text i {
        display: block;
        width: 5.625rem;
        height: 5.625rem;
        background-image: url("/wp-content/themes/notices/assets/images/clip2.svg");
        background-repeat: no-repeat;
        background-position: center center;
        background-size: contain;
        position: relative;
        z-index: 2;
        text-align: center;
        line-height: 5.625rem;
        font-size: 2rem;
        color: #ffffff; }
    section.colonnes_flexibles.edito .news .column_inner {
      position: relative;
      background-image: url("/wp-content/themes/notices/assets/images/clip.svg");
      background-repeat: no-repeat;
      background-position: center center;
      background-size: contain;
      padding: 25% 18%;
      min-height: calc(100vw * 1.1258); }
    section.colonnes_flexibles.edito .news .column-title {
      padding-top: 0; }
      section.colonnes_flexibles.edito .news .column-title .column_title {
        text-transform: uppercase;
        color: #ffffff;
        text-align: center;
        font-size: 1.75rem; }
    section.colonnes_flexibles.edito .news .news-item .title {
      color: #183B68;
      font-weight: bold;
      margin-bottom: 1rem; }
    section.colonnes_flexibles.edito .news .news-item .excerpt {
      color: #ffffff; }
    section.colonnes_flexibles.edito .news .news-item:not(:first-child) {
      display: none; }
    section.colonnes_flexibles.edito .news .item__none {
      text-align: center;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%); }
      section.colonnes_flexibles.edito .news .item__none p {
        color: #ffffff; }
        section.colonnes_flexibles.edito .news .item__none p i {
          font-size: 4rem; }
        section.colonnes_flexibles.edito .news .item__none p span {
          display: block;
          opacity: .65; }
    section.colonnes_flexibles.edito .news .column-link {
      position: absolute;
      bottom: 0;
      left: 0;
      margin: 0;
      -webkit-transform: translate(40%, 0);
      -ms-transform: translate(40%, 0);
      -o-transform: translate(40%, 0);
      transform: translate(40%, 0); }
      section.colonnes_flexibles.edito .news .column-link .hex2 {
        color: #ffffff;
        width: 5.625rem;
        height: 5.625rem;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        text-transform: uppercase;
        font-size: 11px;
        font-weight: bold;
        -webkit-transition: all 0.4s ease-out;
        -moz-transition: all 0.4s ease-out;
        -ms-transition: all 0.4s ease-out;
        -o-transition: all 0.4s ease-out;
        transition: all 0.4s ease-out; }
        section.colonnes_flexibles.edito .news .column-link .hex2:hover {
          background-image: url("/wp-content/themes/notices/assets/images/clip.svg");
          filter: drop-shadow(2px 4px 6px rgba(0, 0, 0, 0.4)); }
    section.colonnes_flexibles.avantages .column.icon {
      text-align: center; }
      section.colonnes_flexibles.avantages .column.icon i {
        color: #183B68;
        font-size: 10rem; }
    section.colonnes_flexibles.avantages .column_title {
      color: #183B68; }
    section.colonnes_flexibles.avantages.col2 .column.icon i {
      color: #ffffff; }
    section.colonnes_flexibles.avantages.col2 .column_title {
      color: #ffffff; }
  section.txt-txt .section_title {
    font-family: Arial, Verdana, serif;
    color: #00A8E7;
    font-size: 2em;
    font-weight: bold;
    text-align: center;
    text-shadow: 0 0 4px white; }
  section.txt-txt .region_box,
  section.txt-txt .thematic_box {
    background-color: #183B68;
    box-shadow: 0 4px 3px 0 rgba(0, 0, 0, 0.2);
    padding: 1.5em;
    margin: 0 0 2rem 0; }
    section.txt-txt .region_box__title p,
    section.txt-txt .thematic_box__title p {
      font-family: Arial, Verdana, serif;
      font-weight: bold;
      color: #ffffff;
      font-size: 2rem; }
      section.txt-txt .region_box__title p:after,
      section.txt-txt .thematic_box__title p:after {
        content: "";
        display: block;
        width: 40px;
        height: 3px;
        background-color: #E5114D; }
    section.txt-txt .region_box__content select,
    section.txt-txt .thematic_box__content select {
      border: 1px solid #ffffff;
      border-radius: 2px;
      background-color: rgba(255, 255, 255, 0.52);
      margin: 0; }
    section.txt-txt .region_box .select_container,
    section.txt-txt .thematic_box .select_container {
      position: relative;
      font-family: "icomoon";
      margin-bottom: 1rem; }
      section.txt-txt .region_box .select_container:after,
      section.txt-txt .thematic_box .select_container:after {
        content: "\e91d";
        display: block;
        position: absolute;
        font-size: 0.375rem;
        top: 50%;
        right: 1rem;
        -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
        -o-transform: translate(0, -50%);
        transform: translate(0, -50%); }
  section.keyfigures .column-keyfigures {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center; }
    section.keyfigures .column-keyfigures .keyfigure {
      flex-direction: column;
      margin: 0 0 2rem 0;
      flex-basis: 100%; }
      section.keyfigures .column-keyfigures .keyfigure__icon {
        order: 1;
        background-image: url("/wp-content/themes/notices/assets/images/clip.svg");
        background-repeat: no-repeat;
        background-position: center center;
        background-size: contain;
        -webkit-transition: all 0.4s ease-out;
        -moz-transition: all 0.4s ease-out;
        -ms-transition: all 0.4s ease-out;
        -o-transition: all 0.4s ease-out;
        transition: all 0.4s ease-out;
        filter: drop-shadow(3px 9px 2px #dddddd); }
        section.keyfigures .column-keyfigures .keyfigure__icon i {
          display: block;
          font-size: 4rem;
          padding: 4rem;
          color: #ffffff; }
        section.keyfigures .column-keyfigures .keyfigure__icon:hover {
          background-image: url("/wp-content/themes/notices/assets/images/clip2.svg");
          background-repeat: no-repeat;
          background-position: center center;
          background-size: contain; }
      section.keyfigures .column-keyfigures .keyfigure__number {
        order: 2; }
      section.keyfigures .column-keyfigures .keyfigure__desc {
        order: 3;
        color: #183B68;
        font-weight: bold;
        font-size: 2rem; }
  section.keyfigures-section .title {
    background-color: #E5114D;
    position: relative; }
    section.keyfigures-section .title__container {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      flex-direction: column;
      flex-wrap: wrap;
      justify-content: flex-start;
      align-items: flex-start;
      padding: 1rem 0; }
    section.keyfigures-section .title__icon {
      font-size: 110px;
      opacity: .3; }
    section.keyfigures-section .title h2 {
      color: #ffffff; }
      section.keyfigures-section .title h2 span {
        text-transform: uppercase;
        font-weight: bold; }
      section.keyfigures-section .title h2 em {
        display: block;
        font-weight: normal;
        font-style: italic; }
  section.keyfigures-section .figures {
    background-color: rgba(229, 17, 77, 0.57); }
    section.keyfigures-section .figures__container {
      padding: 1rem;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      flex-direction: column;
      flex-wrap: nowrap;
      justify-content: flex-start;
      align-items: center; }
    section.keyfigures-section .figures .figure {
      text-align: center;
      padding: 2rem 1rem; }
      section.keyfigures-section .figures .figure__icon {
        display: -webkit-inline-flex;
        display: -moz-inline-flex;
        display: -ms-inline-flex;
        display: -o-inline-flex;
        display: inline-flex;
        flex-direction: row;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        width: 7.8125rem;
        height: 7.8125rem;
        text-align: center;
        border-radius: 7.8125rem;
        overflow: hidden;
        background: rgba(255, 255, 255, 0.27);
        border: 12px solid rgba(255, 255, 255, 0.27);
        align-items: center; }
        section.keyfigures-section .figures .figure__icon i {
          font-size: 3rem;
          text-align: center;
          color: #A38600; }
      section.keyfigures-section .figures .figure__number {
        color: #A38600;
        font-family: Arial, Verdana, serif;
        font-size: 3.75rem;
        font-weight: bold;
        text-align: center; }
      section.keyfigures-section .figures .figure__description {
        color: #A38600;
        font-family: Montserrat, Arial, sans-serif;
        font-size: 1.875rem;
        font-style: italic;
        text-align: center;
        font-weight: lighter; }
  section.keyfigures-section .contact {
    background-color: rgba(229, 17, 77, 0.21); }
    section.keyfigures-section .contact__container {
      padding: 1rem; }
    section.keyfigures-section .contact__title {
      font-family: Arial, Verdana, serif;
      color: #A38600;
      font-weight: bold;
      font-size: 2.125rem; }
      section.keyfigures-section .contact__title:after {
        content: "";
        display: block;
        margin-top: 1rem;
        margin-bottom: 2rem;
        width: 40px;
        height: 3px;
        background-color: #E5114D; }
    section.keyfigures-section .contact p {
      margin: 0; }
      section.keyfigures-section .contact p b {
        color: #000000;
        font-family: Montserrat, Arial, sans-serif;
        font-size: 1.125rem;
        font-weight: bold; }
      section.keyfigures-section .contact p a {
        color: #000000; }
        section.keyfigures-section .contact p a:hover {
          color: #b60d3d; }
      section.keyfigures-section .contact p .tel {
        display: inline-block;
        margin-top: .5rem; }
    section.keyfigures-section .contact .btn, section.keyfigures-section .contact input[type="submit"],
    section.keyfigures-section .contact input[type="button"], section.keyfigures-section .contact div.wpforms-container-full .wpforms-form button[type=submit], div.wpforms-container-full .wpforms-form section.keyfigures-section .contact button[type=submit] {
      margin-top: 2rem; }
  section.timeline {
    position: relative;
    /* Barre */
    /* ----------------------------------------------------- */
    /* Item date */
    /* ----------------------------------------------------- */ }
    section.timeline:after {
      content: "";
      display: block;
      position: absolute;
      top: 1rem;
      bottom: 1rem;
      left: 50%;
      -webkit-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
      -o-transform: translate(-50%, 0);
      transform: translate(-50%, 0);
      width: 3px;
      height: auto;
      background-color: #183B68;
      z-index: 1; }
    section.timeline .timeline__date {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      flex-direction: column;
      flex-wrap: wrap;
      justify-content: flex-start;
      align-items: center;
      position: relative;
      z-index: 5;
      margin: 0 0 3rem 0;
      /* hexagone */
      /* ----------------------------------------------------- */
      /* TPL sans hexagone */
      /* ----------------------------------------------------- */
      /* Couleurs */
      /* ----------------------------------------------------- */ }
      section.timeline .timeline__date-left {
        flex-basis: 100%;
        width: 100%; }
      section.timeline .timeline__date-right {
        flex-basis: 100%;
        width: 100%; }
      section.timeline .timeline__date-year {
        font-size: 2.25rem;
        color: #3F3F3F;
        font-weight: 800;
        display: none; }
      section.timeline .timeline__date-image {
        display: none; }
        section.timeline .timeline__date-image img {
          width: 100%;
          height: auto; }
      section.timeline .timeline__date-hex {
        background-image: url("/wp-content/themes/notices/assets/images/clip_border.svg");
        background-repeat: no-repeat;
        background-position: center center;
        background-size: contain;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: auto;
        background-color: #ffffff;
        text-align: center;
        min-height: calc(100vw * 1.1258);
        cursor: pointer; }
        section.timeline .timeline__date-hex-title {
          font-size: 1.5rem;
          font-weight: 800;
          color: #3F3F3F;
          text-align: center;
          text-transform: uppercase; }
        section.timeline .timeline__date-hex-icon {
          font-size: 2.25rem;
          color: #3F3F3F;
          text-align: center; }
        section.timeline .timeline__date-hex-year {
          font-size: 2.25rem;
          color: #3F3F3F;
          font-weight: 600; }
        section.timeline .timeline__date-hex-text {
          opacity: 0;
          visibility: hidden;
          display: none; }
          section.timeline .timeline__date-hex-text p {
            color: #3F3F3F;
            font-weight: 500; }
      section.timeline .timeline__date-no_hex {
        align-items: flex-start;
        background-color: #ffffff;
        padding: 1rem 0; }
        section.timeline .timeline__date-no_hex .timeline__date-year {
          display: none; }
        section.timeline .timeline__date-no_hex .timeline__date-image {
          display: block; }
        section.timeline .timeline__date-no_hex .timeline__date-hex-year {
          position: relative; }
          section.timeline .timeline__date-no_hex .timeline__date-hex-year:after {
            content: "";
            display: block;
            position: absolute;
            top: 50%;
            left: 0;
            right: 0;
            z-index: 1;
            width: auto;
            height: 1px;
            background-color: #183B68; }
          section.timeline .timeline__date-no_hex .timeline__date-hex-year span {
            position: relative;
            z-index: 2;
            background-color: #ffffff;
            padding-right: 1rem; }
        section.timeline .timeline__date-no_hex .timeline__date-hex-title {
          text-align: left; }
        section.timeline .timeline__date-no_hex .timeline__date-hex-text {
          opacity: 1;
          visibility: visible;
          display: block; }
        section.timeline .timeline__date-no_hex.timeline__date-even .timeline__date-left {
          order: 2; }
        section.timeline .timeline__date-no_hex.timeline__date-even .timeline__date-right {
          order: 1; }
        section.timeline .timeline__date-no_hex.timeline__date-odd .timeline__date-left {
          order: 1; }
        section.timeline .timeline__date-no_hex.timeline__date-odd .timeline__date-right {
          order: 2; }
      section.timeline .timeline__date-bleu .timeline__date-hex {
        background-image: url("/wp-content/themes/notices/assets/images/clip.svg"); }
        section.timeline .timeline__date-bleu .timeline__date-hex-title, section.timeline .timeline__date-bleu .timeline__date-hex-icon, section.timeline .timeline__date-bleu .timeline__date-hex-year {
          color: #ffffff; }
        section.timeline .timeline__date-bleu .timeline__date-hex-text p {
          color: #ffffff; }
  section.branchepage .pages.grid {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center; }
    section.branchepage .pages.grid .grid-item {
      flex-basis: 100%; }
      section.branchepage .pages.grid .grid-item-title {
        display: inline-block;
        text-align: left;
        font-weight: 500;
        color: #3F3F3F;
        width: 75%;
        text-transform: uppercase;
        -webkit-transform: translate(0, -1.5rem);
        -ms-transform: translate(0, -1.5rem);
        -o-transform: translate(0, -1.5rem);
        transform: translate(0, -1.5rem);
        -webkit-transition: all 0.4s ease-out;
        -moz-transition: all 0.4s ease-out;
        -ms-transition: all 0.4s ease-out;
        -o-transition: all 0.4s ease-out;
        transition: all 0.4s ease-out;
        padding: 1rem;
        background-color: #ffffff; }
      section.branchepage .pages.grid .grid-item:hover .grid-item-title {
        color: #183B68; }
  section.slider + section {
    padding-top: 4rem; }
  section:nth-child(2) .section_title:after {
    display: none; }

/* ---------------------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
/* RESPONSIVE */
/* ---------------------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------- */
/* MOBILE : 480px px */
/* ----------------------------------------------------- */
@media (min-width: 480px) {
  section.colonnes_flexibles .column-images:not(.carousel) {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: stretch; }
  section.colonnes_flexibles .column-images .image {
    flex-basis: 25%; }
  section.colonnes_flexibles.edito .news .column_inner {
    padding: 5rem; }
  section.colonnes_flexibles.edito .news .news-item {
    margin-bottom: 2rem; }
    section.colonnes_flexibles.edito .news .news-item:nth-child(2) {
      display: block; }
    section.colonnes_flexibles.edito .news .news-item:nth-child(3) {
      display: block; }
  section.timeline .timeline__date .timeline__date-hex-text {
    opacity: 1;
    visibility: visible;
    display: block; } }

/* ----------------------------------------------------- */
/* MOBILE : 640px px */
/* ----------------------------------------------------- */
@media (min-width: 640px) {
  section {
    /* Text Image */
    /* ----------------------------------------------------- */
    /* txt txt */
    /* ----------------------------------------------------- */
    /* BRANCHEMENT DE PAGE */
    /* ----------------------------------------------------- */
    /* Map */
    /* ----------------------------------------------------- */
    /* Edito */
    /* ----------------------------------------------------- */
    /* Section chiffres cles */
    /* ----------------------------------------------------- */ }
    section.title .col_title .title {
      padding: 1rem; }
    section.txt-img, section.img-txt {
      overflow: visible; }
      section.txt-img .txt, section.img-txt .txt {
        padding-right: calc(100% / 12); }
      section.txt-img .img, section.img-txt .img {
        position: relative; }
        section.txt-img .img img, section.img-txt .img img {
          position: absolute;
          width: 92%;
          height: auto;
          top: 0%;
          display: inline-block;
          box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.5); }
    section.txt-txt .section_title {
      width: 60%;
      margin: 0 auto 3em auto; }
    section.branchepage .pages {
      /* Template GRID */
      /* ----------------------------------------------------- */
      /* Template ICONS */
      /* ----------------------------------------------------- */ }
      section.branchepage .pages.grid {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: stretch; }
        section.branchepage .pages.grid .grid-item {
          flex-basis: 50%; }
          section.branchepage .pages.grid .grid-item > a {
            padding: 1rem;
            display: block; }
          section.branchepage .pages.grid .grid-item .image-container {
            height: 20vh; }
            section.branchepage .pages.grid .grid-item .image-container .img {
              width: 100%;
              height: 100%; }
            section.branchepage .pages.grid .grid-item .image-container img {
              width: 100%;
              height: 100%;
              object-fit: cover;
              object-position: center; }
      section.branchepage .pages.icons .page {
        flex-basis: 50%; }
        section.branchepage .pages.icons .page:nth-child(2n + 1) {
          border-right: 1px solid #D8D8D8; }
        section.branchepage .pages.icons .page:last-child {
          border-right: none; }
    section.gmap {
      position: relative; }
      section.gmap .filters_absolute {
        position: absolute;
        left: 0;
        top: 0;
        z-index: 1001;
        height: 100%; }
        section.gmap .filters_absolute .row.flex {
          height: 100%; }
        section.gmap .filters_absolute .filters_col {
          background-color: #3F3F3F;
          height: 100%; }
    section.colonnes_flexibles .column_inner {
      height: 100%; }
    section.colonnes_flexibles .column_title.flex {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      flex-direction: row;
      flex-wrap: nowrap;
      justify-content: flex-start;
      align-items: center; }
    section.colonnes_flexibles .column_title i {
      font-size: 3em;
      flex-basis: calc(100% / 6); }
    section.colonnes_flexibles .column-icons {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      justify-content: center;
      align-items: stretch; }
      section.colonnes_flexibles .column-icons .icon {
        flex-basis: 50%; }
    section.colonnes_flexibles .column-images {
      margin: 0 auto; }
      section.colonnes_flexibles .column-images:not(.carousel) {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center; }
      section.colonnes_flexibles .column-images .image {
        flex-basis: 25%; }
    section.colonnes_flexibles.certifications .column-images {
      width: 48rem;
      margin: 2rem auto; }
    section.colonnes_flexibles.edito .news .column_inner {
      padding: 8rem; }
    section.colonnes_flexibles.edito .news .news-item:nth-child(3) {
      display: block; }
    section.colonnes_flexibles.edito .news .column-link .hex2 {
      font-size: 1rem;
      width: 9.375rem;
      height: 9.375rem;
      padding: 1rem; }
    section.colonnes_flexibles.avantages {
      padding: 5.625rem 0; }
      section.colonnes_flexibles.avantages .column-image {
        margin: 1rem 0;
        max-height: 17.5rem;
        overflow: hidden; }
    section.keyfigures .column-keyfigures {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      justify-content: flex-start;
      align-items: stretch;
      margin: 2rem 0; }
      section.keyfigures .column-keyfigures .keyfigure {
        flex-basis: 50%; } }

/* ----------------------------------------------------- */
/* TABLET : 769px px */
/* ----------------------------------------------------- */
@media (min-width: 769px) {
  section {
    /*  */
    /* ----------------------------------------------------- */
    /*  */
    /* ----------------------------------------------------- */
    /* Txt - txt */
    /* ----------------------------------------------------- */
    /*  */
    /* ----------------------------------------------------- */
    /* BRANCHEMENT DE PAGE */
    /* ----------------------------------------------------- */
    /*  */
    /* ----------------------------------------------------- */
    /*  */
    /* ----------------------------------------------------- */
    /* Gmap */
    /* ----------------------------------------------------- */
    /* Colonnes */
    /* ----------------------------------------------------- */
    /* Timeline */
    /* ----------------------------------------------------- */ }
    section.title .col_title .title {
      padding: 1.5rem; }
    section.bandeau .logo {
      display: block;
      margin-top: 6.25em; }
    section.bandeau .title {
      padding-top: 0; }
      section.bandeau .title .page-title {
        font-size: 3.125rem; }
    section.bandeau .pattern.bottom-left, section.bandeau .pattern.top-right, section.bandeau .pattern.bottom-right {
      width: 60%; }
    section.image_only {
      min-height: 80vh;
      max-height: 85vh; }
    section.txt-txt .region_box .select_container,
    section.txt-txt .thematic_box .select_container {
      margin-bottom: 2rem; }
    section.txt-img .txt .text, section.img-txt .txt .text {
      text-align: left; }
    section.txt-img .img img, section.img-txt .img img {
      top: auto;
      bottom: -20vh; }
    section.branchepage .pages {
      /* Template ICONS */
      /* ----------------------------------------------------- */ }
      section.branchepage .pages.icons .page {
        flex-basis: calc(100% / 3);
        border-right: none;
        border-bottom: none; }
        section.branchepage .pages.icons .page:nth-child(2n + 2) {
          border-right: 1px solid #d8d8d8; }
    section.post_thumbnail .post_thumbnail_image {
      max-height: 33vh; }
    body.page-template-seminaires section.post_sections .capacites {
      order: 0; }
    section.post_sections h2,
    section.post_sections p,
    section.post_sections ul li,
    section.post_sections ol li {
      text-align: left; }
    section.gmap .filters_container {
      position: relative;
      opacity: 1;
      visibility: visible;
      padding: 2rem 2rem 5rem 2rem;
      transform: none;
      height: 100%; }
      section.gmap .filters_container__close {
        display: none; }
    section.gmap .list_modes_mobile {
      display: none; }
    section.gmap .list_modes {
      display: block;
      position: absolute;
      bottom: 2rem;
      left: 2rem;
      right: 2rem; }
      section.gmap .list_modes ul {
        list-style: none;
        padding: 0;
        margin: 0;
        text-align: center; }
        section.gmap .list_modes ul li {
          display: inline-block;
          vertical-align: top;
          list-style: none;
          padding: 0;
          margin: 0; }
          section.gmap .list_modes ul li .btn, section.gmap .list_modes ul li input[type="submit"],
          section.gmap .list_modes ul li input[type="button"], section.gmap .list_modes ul li div.wpforms-container-full .wpforms-form button[type=submit], div.wpforms-container-full .wpforms-form section.gmap .list_modes ul li button[type=submit] {
            font-size: 0.9375em;
            padding: .5rem; }
    section.gmap #map {
      height: 100% !important;
      min-height: 100vh; }
    section.colonnes_flexibles.edito .column .news .column-title .column_title {
      font-size: 1.75rem; }
    section.colonnes_flexibles.edito .column .news .news-item .title {
      font-size: 1.5rem; }
    section.colonnes_flexibles .column-icons .icon {
      flex-basis: calc(100% / 3); }
    section.timeline .timeline__date {
      flex-direction: row;
      flex-wrap: nowrap; }
      section.timeline .timeline__date-left {
        flex-basis: 50%;
        width: auto;
        padding-right: 3.75rem; }
      section.timeline .timeline__date-right {
        flex-basis: 50%;
        width: auto;
        padding-left: 3.75rem; }
      section.timeline .timeline__date-even .timeline__date-year {
        text-align: right; }
      section.timeline .timeline__date-even .timeline__date-right {
        position: relative;
        padding-left: 3.75rem; }
        section.timeline .timeline__date-even .timeline__date-right:before {
          content: "";
          display: block;
          position: absolute;
          top: 50%;
          left: 0;
          -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
          -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
          width: 3.75rem;
          height: 3.75rem;
          -webkit-transition: all 0.4s ease-out;
          -moz-transition: all 0.4s ease-out;
          -ms-transition: all 0.4s ease-out;
          -o-transition: all 0.4s ease-out;
          transition: all 0.4s ease-out;
          background-image: url("/wp-content/themes/notices/assets/images/clip_border2.svg");
          background-repeat: no-repeat;
          background-position: center center;
          background-size: contain; }
        section.timeline .timeline__date-even .timeline__date-right:after {
          content: "";
          display: block;
          position: absolute;
          top: 50%;
          left: 2.5rem;
          -webkit-transform: translate(0, -50%);
          -ms-transform: translate(0, -50%);
          -o-transform: translate(0, -50%);
          transform: translate(0, -50%);
          width: 1rem;
          height: 3px;
          background-color: #183B68; }
      section.timeline .timeline__date-even.timeline__date-no_hex .timeline__date-right:after {
        display: none; }
      section.timeline .timeline__date-even .timeline__date-left {
        -webkit-transition: all 0.4s ease-out;
        -moz-transition: all 0.4s ease-out;
        -ms-transition: all 0.4s ease-out;
        -o-transition: all 0.4s ease-out;
        transition: all 0.4s ease-out; }
      section.timeline .timeline__date-even:hover .timeline__date-left {
        opacity: 1;
        visibility: visible; }
      section.timeline .timeline__date-even:hover .timeline__date-right:before {
        background-image: url("/wp-content/themes/notices/assets/images/clip2.svg");
        background-repeat: no-repeat;
        background-position: center center;
        background-size: contain; }
      section.timeline .timeline__date-odd .timeline__date-year {
        text-align: left; }
      section.timeline .timeline__date-odd .timeline__date-left {
        position: relative; }
        section.timeline .timeline__date-odd .timeline__date-left:before {
          content: "";
          display: block;
          position: absolute;
          top: 50%;
          right: 0;
          -webkit-transform: translate(50%, -50%);
          -ms-transform: translate(50%, -50%);
          -o-transform: translate(50%, -50%);
          transform: translate(50%, -50%);
          width: 3.75rem;
          height: 3.75rem;
          transition: all 0.4s ease-out;
          background-image: url("/wp-content/themes/notices/assets/images/clip_border2.svg");
          background-repeat: no-repeat;
          background-position: center center;
          background-size: contain; }
        section.timeline .timeline__date-odd .timeline__date-left:after {
          content: "";
          display: block;
          position: absolute;
          top: 50%;
          right: 2.5rem;
          -webkit-transform: translate(0, -50%);
          -ms-transform: translate(0, -50%);
          -o-transform: translate(0, -50%);
          transform: translate(0, -50%);
          width: 1rem;
          height: 3px;
          background-color: #183B68; }
      section.timeline .timeline__date-odd.timeline__date-no_hex .timeline__date-left:after {
        display: none; }
      section.timeline .timeline__date-odd .timeline__date-right {
        -webkit-transition: all 0.4s ease-out;
        -moz-transition: all 0.4s ease-out;
        -ms-transition: all 0.4s ease-out;
        -o-transition: all 0.4s ease-out;
        transition: all 0.4s ease-out; }
      section.timeline .timeline__date-odd:hover .timeline__date-left:before {
        background-image: url("/wp-content/themes/notices/assets/images/clip2.svg");
        background-repeat: no-repeat;
        background-position: center center;
        background-size: contain; }
      section.timeline .timeline__date-odd:hover .timeline__date-right {
        opacity: 1;
        visibility: visible; }
      section.timeline .timeline__date-hex {
        min-height: calc(50vw * 1.1258);
        background-color: transparent;
        padding: 1.5rem; }
      section.timeline .timeline__date-no_hex {
        background-color: transparent;
        padding: 0; }
        section.timeline .timeline__date-no_hex.timeline__date-even .timeline__date-left {
          order: 1; }
        section.timeline .timeline__date-no_hex.timeline__date-even .timeline__date-right {
          order: 2; }
        section.timeline .timeline__date-no_hex.timeline__date-odd .timeline__date-left {
          order: 1; }
        section.timeline .timeline__date-no_hex.timeline__date-odd .timeline__date-right {
          order: 2; }
      section.timeline .timeline__date-year {
        display: block; }
      section.timeline .timeline__date-image {
        display: block; }
      section.timeline .timeline__date:not(.timeline__date-no_hex) .timeline__date-hex-text {
        opacity: 0;
        visibility: hidden;
        display: none; }
      section.timeline .timeline__date:not(.timeline__date-no_hex):hover .timeline__date-hex-year,
      section.timeline .timeline__date:not(.timeline__date-no_hex):hover .timeline__date-hex-icon {
        display: none; }
      section.timeline .timeline__date:not(.timeline__date-no_hex):hover .timeline__date-hex-text {
        opacity: 1;
        visibility: visible;
        display: block; } }

/* ----------------------------------------------------- */
/* TABLET PORTRAIT : 990px px */
/* ----------------------------------------------------- */
@media (min-width: 990px) {
  section {
    /* Branchement de page */
    /* ----------------------------------------------------- */
    /* bandeau */
    /* ----------------------------------------------------- */
    /* Txt-img / Img-txt */
    /* ----------------------------------------------------- */
    /* Post thumbnail */
    /* ----------------------------------------------------- */
    /* Post sections */
    /* ----------------------------------------------------- */
    /* Colonnes flexibles */
    /* ----------------------------------------------------- */
    /* Section chiffres cles */
    /* ----------------------------------------------------- */ }
    section .section_title {
      margin-bottom: 2rem; }
    section.title .col_title .title {
      padding: 2rem; }
    section.branchepage .pages {
      /* Template ICONS */
      /* ----------------------------------------------------- */ }
      section.branchepage .pages.icons {
        margin: 4vh 0;
        justify-content: center; }
        section.branchepage .pages.icons .page {
          flex-basis: 18%;
          border-bottom: none;
          border-right: 1px solid #d8d8d8; }
          section.branchepage .pages.icons .page:last-child {
            border-right: none; }
    section.bandeau {
      min-height: 22.5rem; }
      body.page-template-seminaires section.bandeau .pattern.top-right svg {
        height: 100%; }
      section.bandeau .title .page-title {
        font-size: 3.75rem; }
      section.bandeau .page-excerpt {
        font-size: 1.5em; }
    section.txt-img .img img, section.img-txt .img img {
      max-height: calc(100% + 8vh); }
    section.post_thumbnail .post_thumbnail_image {
      max-height: 50vh; }
    section.post_sections {
      margin: 8vh 0; }
      section.post_sections .coordonnees .tel {
        font-size: 1.75em; }
    section.colonnes_flexibles {
      /* ----------------------------------------------------- */
      /* AVANTAGES */
      /* ----------------------------------------------------- */ }
      section.colonnes_flexibles .column-icons .icon {
        flex-basis: calc(100% / 4); }
      section.colonnes_flexibles.edito .frise .column_inner {
        height: 100%; }
      section.colonnes_flexibles.edito .frise .column-text {
        height: 100%; }
        section.colonnes_flexibles.edito .frise .column-text:before {
          top: 2rem;
          bottom: .5rem;
          left: 50%;
          right: auto;
          -webkit-transform: translate(-50%, 0);
          -ms-transform: translate(-50%, 0);
          -o-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
          width: 3px;
          height: auto; }
        section.colonnes_flexibles.edito .frise .column-text:after {
          top: auto;
          bottom: 0;
          left: 50%;
          right: auto;
          -webkit-transform: translate(-50%, 0);
          -ms-transform: translate(-50%, 0);
          -o-transform: translate(-50%, 0);
          transform: translate(-50%, 0); }
        section.colonnes_flexibles.edito .frise .column-text i {
          width: 100%;
          height: auto;
          line-height: 1;
          padding: .5rem; }
      section.colonnes_flexibles.edito .news .column-title .column_title {
        margin-bottom: 0; }
      section.colonnes_flexibles.edito .news .column_inner {
        background-position: top center;
        padding: 8rem 5rem;
        min-height: 0; }
      section.colonnes_flexibles.edito .news .news-item:nth-child(3) {
        display: none; }
      section.colonnes_flexibles.avantages .row.flex {
        align-items: center; }
      section.colonnes_flexibles.avantages .column.icon {
        text-align: center; }
        section.colonnes_flexibles.avantages .column.icon .column_immer {
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          flex-direction: column;
          flex-wrap: nowrap;
          justify-content: center;
          align-items: center; }
        section.colonnes_flexibles.avantages .column.icon i {
          color: #183B68;
          font-size: 10rem; }
      section.colonnes_flexibles.avantages .column_title {
        text-align: left; }
    section.timeline .timeline__date-hex {
      min-height: calc(32vw * 1.1258);
      padding: 3rem; }
    section.keyfigures .column-keyfigures .keyfigure {
      flex-basis: calc(100% / 4); }
    section.branchepage .pages.grid .grid-item {
      flex-basis: calc(100% / 3); } }

/* ----------------------------------------------------- */
/* DESKTOP : 1200px px */
/* ----------------------------------------------------- */
@media (min-width: 1200px) {
  section {
    padding: 3rem 0;
    /* Colonnes flexibles */
    /* ----------------------------------------------------- */
    /*  */
    /* ----------------------------------------------------- */
    /* Branchepage */
    /* ----------------------------------------------------- */
    /* Gmap */
    /* ----------------------------------------------------- */
    /* txt txt */
    /* ----------------------------------------------------- */ }
    section.title .col_title .title {
      padding: 3rem 2rem; }
    section .section_title {
      font-size: 2.8125rem;
      margin-bottom: 3rem; }
    section.colonnes_flexibles .column-title {
      padding: 0; }
    section.colonnes_flexibles .column_title {
      margin-bottom: 3rem; }
    section.colonnes_flexibles .column-images.carousel .column-images-slider {
      height: 40vh; }
      section.colonnes_flexibles .column-images.carousel .column-images-slider .slick-prev {
        left: -1rem; }
      section.colonnes_flexibles .column-images.carousel .column-images-slider .slick-next {
        right: -1rem; }
    section.colonnes_flexibles.edito .news .column-link {
      left: 22%;
      -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
      -o-transform: translate(0, 0);
      transform: translate(0, 0); }
    section.colonnes_flexibles.edito .frise .column-text i {
      padding: 1rem; }
    section.bandeau {
      height: 68vh;
      max-height: 22.5rem; }
      section.bandeau .title .page-title {
        font-size: 4.375rem; }
    section.post_sections {
      margin: 12vh 0; }
    .page-content section.txt-large, .page-content section.txt-img, .page-content section.img-txt {
      padding: 1.5em 1rem; }
    section.branchepage {
      padding: 10vh 4vw; }
    section.gmap {
      padding: 0; }
      section.gmap .filters_container {
        padding: 10vh 4.375em; }
      section.gmap .list_modes {
        left: 4.375em;
        right: 4.375em; }
      section.gmap .categories ul li {
        display: block; }
        section.gmap .categories ul li .category_filter {
          font-size: 1rem; }
    section.txt-txt .section_title {
      width: 60%;
      margin: 0 auto 3em auto;
      font-size: 2.8125rem; }
    section.txt-txt .region_box {
      margin-left: 16%;
      padding: 3rem 4.25rem 4.25rem 4.25rem; }
      section.txt-txt .region_box__content select {
        margin-bottom: 2rem; }
    section.txt-txt .thematic_box {
      margin-right: 16%;
      padding: 3rem 4.25rem 4.25rem 4.25rem; }
      section.txt-txt .thematic_box__content select {
        margin-bottom: 2rem; }
    section.colonnes_flexibles.edito .news {
      -webkit-transform: translate(0, -10%);
      -ms-transform: translate(0, -10%);
      -o-transform: translate(0, -10%);
      transform: translate(0, -10%); }
      section.colonnes_flexibles.edito .news .news-item:nth-child(3) {
        display: block; }
      section.colonnes_flexibles.edito .news .column-text {
        width: 50%;
        margin: 0 auto; }
    section.colonnes_flexibles .column-images .image {
      padding: 1.5rem; }
    section.timeline .timeline__date-hex {
      min-height: calc(25vw * 1.1258); } }

/* ----------------------------------------------------- */
/* DESKTOP : 1650px px */
/* ----------------------------------------------------- */
@media (min-width: 1650px) {
  section {
    /* txt txt */
    /* ----------------------------------------------------- */ }
    section.colonnes_flexibles .column-title {
      padding: 0; }
    section.colonnes_flexibles .column_title {
      margin-bottom: 3rem; }
    section.colonnes_flexibles.edito .frise .column-text i {
      padding: 1.5rem; }
    section.colonnes_flexibles.map-clients .column-text {
      padding-left: calc(100% / 6); }
    section.txt-txt .section_title {
      width: 50%; } }

@media (min-height: 795px) {
  section.gmap #map {
    max-height: 100%;
    min-height: 0; } }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* MODULES */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
.module {
  /* ----------------------------------------------------- */
  /* BRANCHEMENT DE PAGES */
  /* ----------------------------------------------------- */ }
  .module.branchepage {
    /* GRILLE */
    /* ----------------------------------------------------- */
    /* Liste */
    /* ----------------------------------------------------- */
    /* EN CARTOUCHES */
    /* ----------------------------------------------------- */ }
    .module.branchepage .module-branchepage-grid {
      padding: 7.625em 0 9.875em 0; }
      .module.branchepage .module-branchepage-grid .section_title {
        text-align: left; }
      .module.branchepage .module-branchepage-grid .text {
        margin-top: 8.875em; }
        .module.branchepage .module-branchepage-grid .text p {
          font-size: 1.25em; }
      .module.branchepage .module-branchepage-grid .grid-item {
        margin-top: 2.375em;
        position: relative;
        cursor: pointer;
        background-repeat: no-repeat;
        background-position: center center;
        background-size: cover; }
        .module.branchepage .module-branchepage-grid .grid-item .image-container {
          width: 28vh;
          height: 28vh;
          border-radius: 100%;
          border: 1vh solid #3F3F3F;
          border-radius: 100%;
          position: relative;
          z-index: 2;
          margin: 0 auto; }
          .module.branchepage .module-branchepage-grid .grid-item .image-container .img {
            overflow: hidden;
            position: relative;
            z-index: 2;
            width: 100%;
            height: 100%;
            border-radius: 100%; }
          .module.branchepage .module-branchepage-grid .grid-item .image-container img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
            filter: grayscale(1);
            transform: scale(1);
            transition: all 0.4s ease-out, transform 4s ease-out; }
          .module.branchepage .module-branchepage-grid .grid-item .image-container:before {
            content: "";
            display: block;
            position: absolute;
            z-index: 1;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            border-radius: 100%;
            background-color: #3F3F3F;
            opacity: 0;
            transition: all 0.4s ease-out;
            transform: scale(0.9); }
        .module.branchepage .module-branchepage-grid .grid-item .grid-item-title {
          display: block;
          font-family: Arial, Verdana, serif;
          font-size: 1.5em;
          margin-top: 1.58333em;
          color: #000000;
          text-align: center;
          transition: all 0.4s ease-out; }
        .module.branchepage .module-branchepage-grid .grid-item:hover .image-container img {
          filter: grayscale(0);
          transform: scale(1.25); }
        .module.branchepage .module-branchepage-grid .grid-item:hover .image-container:before {
          animation: onde 2s ease-out infinite; }
        .module.branchepage .module-branchepage-grid .grid-item:hover .grid-item-title {
          color: #3F3F3F; }
    .module.branchepage .module-branchepage-list {
      padding: 4.75em 0; }
      .module.branchepage .module-branchepage-list .section_title {
        position: relative; }
        .module.branchepage .module-branchepage-list .section_title .btn, .module.branchepage .module-branchepage-list .section_title input[type="submit"],
        .module.branchepage .module-branchepage-list .section_title input[type="button"], .module.branchepage .module-branchepage-list .section_title div.wpforms-container-full .wpforms-form button[type=submit], div.wpforms-container-full .wpforms-form .module.branchepage .module-branchepage-list .section_title button[type=submit] {
          position: absolute;
          top: 0;
          right: 0; }
      .module.branchepage .module-branchepage-list .items .item {
        cursor: pointer;
        margin: 4.125em 0 0 0; }
        .module.branchepage .module-branchepage-list .items .item a {
          color: inherit; }
      .module.branchepage .module-branchepage-list .items .item .date,
      .module.branchepage .module-branchepage-list .items .item a .date {
        font-family: Montserrat, Arial, sans-serif;
        font-weight: 600;
        color: #E5114D;
        font-size: 1.625em;
        text-align: left;
        position: relative;
        padding: 0 0.26923em 0.38462em 0; }
        .module.branchepage .module-branchepage-list .items .item .date span,
        .module.branchepage .module-branchepage-list .items .item a .date span {
          position: relative; }
          .module.branchepage .module-branchepage-list .items .item .date span:after,
          .module.branchepage .module-branchepage-list .items .item a .date span:after {
            content: "";
            display: inline-block;
            transform-origin: 0 0;
            width: 1.69231em;
            height: 2px;
            background-color: #E5114D;
            margin-left: 0.23077em;
            -webkit-transition: transform all 1.4s cubic-bezier(0.12, 0.9, 0.79, 1);
            -moz-transition: transform all 1.4s cubic-bezier(0.12, 0.9, 0.79, 1);
            -ms-transition: transform all 1.4s cubic-bezier(0.12, 0.9, 0.79, 1);
            -o-transition: transform all 1.4s cubic-bezier(0.12, 0.9, 0.79, 1);
            transition: transform all 1.4s cubic-bezier(0.12, 0.9, 0.79, 1); }
      .module.branchepage .module-branchepage-list .items .item .extrait p,
      .module.branchepage .module-branchepage-list .items .item a .extrait p {
        font-family: Montserrat, Arial, sans-serif;
        font-weight: normal;
        text-transform: none;
        font-style: normal;
        font-size: 1em;
        color: #3F3F3F;
        -webkit-transition: all 0.4s ease-out;
        -moz-transition: all 0.4s ease-out;
        -ms-transition: all 0.4s ease-out;
        -o-transition: all 0.4s ease-out;
        transition: all 0.4s ease-out; }
      .module.branchepage .module-branchepage-list .items .item:hover .date,
      .module.branchepage .module-branchepage-list .items .item a:hover .date {
        color: #183B68; }
        .module.branchepage .module-branchepage-list .items .item:hover .date span:after,
        .module.branchepage .module-branchepage-list .items .item a:hover .date span:after {
          -webkit-transform: scaleX(2);
          -moz-transform: scaleX(2);
          -ms-transform: scaleX(2);
          -o-transform: scaleX(2);
          transform: scaleX(2); }
      .module.branchepage .module-branchepage-list .items .item:hover .extrait p,
      .module.branchepage .module-branchepage-list .items .item a:hover .extrait p {
        color: #000000; }
    .module.branchepage .module-branchepage-cartouches {
      position: relative;
      padding: 0 0 4.75em 0;
      /* (pattern) */ }
      .module.branchepage .module-branchepage-cartouches .row.flex {
        flex-wrap: wrap;
        justify-content: center; }
      .module.branchepage .module-branchepage-cartouches .page-container {
        display: flex;
        flex-wrap: wrap;
        justify-content: center; }
      .module.branchepage .module-branchepage-cartouches .page {
        position: relative;
        z-index: 2;
        flex-basis: calc(100% / 3);
        text-align: center; }
      .module.branchepage .module-branchepage-cartouches .pattern-left {
        position: absolute;
        top: -40%;
        left: 0;
        width: auto;
        height: 30vh;
        max-height: 25em;
        text-align: left;
        overflow: hidden; }
        .module.branchepage .module-branchepage-cartouches .pattern-left #pattern-left {
          width: auto;
          height: 100%; }
          .module.branchepage .module-branchepage-cartouches .pattern-left #pattern-left path {
            fill: rgba(63, 63, 63, 0.5); }
        .module.branchepage .module-branchepage-cartouches .pattern-left #pattern-left-strokes {
          width: auto;
          height: 100%; }
          .module.branchepage .module-branchepage-cartouches .pattern-left #pattern-left-strokes line {
            stroke: rgba(229, 17, 77, 0.3);
            stroke-width: 2px;
            stroke-dasharray: 60px;
            stroke-dashoffset: 60px;
            transition: all 1.4s cubic-bezier(0.12, 0.9, 0.79, 1); }
            html:not(.parallax) .module.branchepage .module-branchepage-cartouches .pattern-left #pattern-left-strokes line {
              stroke-dashoffset: 0px; }
      .module.branchepage .module-branchepage-cartouches .pattern-right {
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        width: auto;
        height: 30vh;
        max-height: 25em;
        text-align: right;
        overflow: hidden; }
        .module.branchepage .module-branchepage-cartouches .pattern-right #pattern-right {
          width: auto;
          height: 100%; }
          .module.branchepage .module-branchepage-cartouches .pattern-right #pattern-right path {
            fill: rgba(24, 59, 104, 0.5); }
        .module.branchepage .module-branchepage-cartouches .pattern-right #pattern-right-strokes {
          width: auto;
          height: 100%; }
          .module.branchepage .module-branchepage-cartouches .pattern-right #pattern-right-strokes line {
            stroke: rgba(24, 59, 104, 0.3);
            stroke-width: 2px;
            stroke-dasharray: 60px;
            stroke-dashoffset: 60px;
            transition: all 1.4s cubic-bezier(0.12, 0.9, 0.79, 1); }
            html:not(.parallax) .module.branchepage .module-branchepage-cartouches .pattern-right #pattern-right-strokes line {
              stroke-dashoffset: 0px; }
      .module.branchepage .module-branchepage-cartouches .cartouches-item {
        overflow: hidden;
        display: inline-block;
        width: 18vw;
        height: 18vw;
        border-radius: 18vw;
        background: #000000;
        border: 1vh solid #E5114D;
        position: relative;
        margin: 0 1.5em; }
        .module.branchepage .module-branchepage-cartouches .cartouches-item .content {
          display: flex;
          width: 100%;
          height: 100%;
          flex-direction: column;
          justify-content: center;
          align-items: center;
          padding: 5em 0; }
          .module.branchepage .module-branchepage-cartouches .cartouches-item .content > a {
            position: relative;
            z-index: 3; }
        .module.branchepage .module-branchepage-cartouches .cartouches-item .icon {
          text-align: center;
          height: 60px;
          margin-bottom: 1em; }
          .module.branchepage .module-branchepage-cartouches .cartouches-item .icon img {
            width: auto;
            height: 100%;
            margin: 0 auto; }
        .module.branchepage .module-branchepage-cartouches .cartouches-item .title {
          margin-bottom: 0; }
          .module.branchepage .module-branchepage-cartouches .cartouches-item .title h2 {
            color: #ffffff;
            font-family: Arial, Verdana, serif;
            font-size: 1.75em;
            text-align: center;
            margin-bottom: 0; }
        .module.branchepage .module-branchepage-cartouches .cartouches-item:before {
          content: "";
          display: block;
          position: absolute;
          z-index: 1;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          border-radius: 100%;
          background-color: #E5114D;
          opacity: 0;
          transition: all 0.4s ease-out;
          transform: scale(0.9); }
        .module.branchepage .module-branchepage-cartouches .cartouches-item:hover:before {
          animation: onde 2s ease-out infinite; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* RESPONSIVE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* DESKTOP : 1200px px */
/* ----------------------------------------------------- */
@media (max-width: 1200px) {
  .module.branchepage .module-branchepage-cartouches .cartouches-item .title h2 {
    font-size: 1.75vw; } }

/* ----------------------------------------------------- */
/* TABLETP : 990px px */
/* ----------------------------------------------------- */
@media (max-width: 990px) {
  .module.branchepage .module-branchepage-grid {
    padding: 4vh 0; }
    .module.branchepage .module-branchepage-grid .grid-item .image-container {
      width: 18vw;
      height: 18vw; }
    .module.branchepage .module-branchepage-grid .text {
      margin-top: 2vh; }
  .module.branchepage .module-branchepage-cartouches .page {
    width: 50%; }
  .module.branchepage .module-branchepage-cartouches .cartouches-item {
    width: 28vw;
    height: 28vw;
    border-radius: 28vw; }
    .module.branchepage .module-branchepage-cartouches .cartouches-item .title h2 {
      font-size: 3vw; } }

/* ----------------------------------------------------- */
/* TABLET : 769px px */
/* ----------------------------------------------------- */
@media (max-width: 769px) {
  .module.branchepage .module-branchepage-grid .grid-item .image-container {
    width: 40vw;
    height: 40vw; }
  .module.branchepage .module-branchepage-cartouches .cartouches-item {
    width: 28vw;
    height: 28vw;
    border-radius: 28vw; } }

/* ----------------------------------------------------- */
/* TABLE : 640px px */
/* ----------------------------------------------------- */
@media (max-width: 640px) {
  .module.branchepage .module-branchepage-grid .section_title {
    padding: 0; }
  .module.branchepage .module-branchepage-grid .text p {
    font-size: 1em; }
  .module.branchepage .module-branchepage-cartouches .page {
    flex-basis: 100%; }
  .module.branchepage .module-branchepage-cartouches .cartouches-item {
    width: 60vw;
    height: 60vw;
    border-radius: 100%; }
    .module.branchepage .module-branchepage-cartouches .cartouches-item .icon {
      height: 100px; }
    .module.branchepage .module-branchepage-cartouches .cartouches-item .title h2 {
      font-size: 6vw;
      padding: 0 1em; } }

/* ----------------------------------------------------- */
/* MOBILEP : 480px px */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* FOOTER */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
.site-footer {
  position: relative;
  background-color: #183B68;
  padding: 1.375em 0 0 0;
  /* ----------------------------------------------------- */
  /* TITRE DES COLONNES */
  /* ----------------------------------------------------- */ }
  .site-footer .title {
    position: relative;
    font-family: Arial, Verdana, serif;
    font-weight: bold;
    font-size: 1.625em;
    text-align: center;
    text-transform: uppercase;
    color: #ffffff;
    margin-bottom: 1rem; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* Organisation */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
.logo {
  order: 1; }

.qualihlm {
  order: 3; }

.menu {
  order: 4; }

.contact {
  order: 2; }

.koredge {
  order: 2; }

.mentions {
  order: 1; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* "MODULES" */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
.footer {
  /* ----------------------------------------------------- */
  /* LOGO */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* QUALIHLM + MENU */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* Mentions / Koredge */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* Menu */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* Contact */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* Koredge */
  /* ----------------------------------------------------- */ }
  .footer-top {
    padding-bottom: 2rem; }
  .footer-bottom {
    padding: 0.4375rem;
    background-color: #0e233f; }
  .footer-logo {
    text-align: center; }
    .footer-logo img {
      width: 100%;
      max-width: 16.25rem;
      margin-bottom: 1.25rem; }
  .footer-qualihlm .accordion, .footer-menu .accordion {
    padding: 0 0.5rem; }
    .footer-qualihlm .accordion .header, .footer-menu .accordion .header {
      padding: 0.5rem 0;
      border-top: 1px solid rgba(255, 255, 255, 0.3);
      border-bottom: 1px solid rgba(255, 255, 255, 0.3);
      color: #ffffff;
      position: relative; }
      .footer-qualihlm .accordion .header button, .footer-menu .accordion .header button {
        -webkit-appearance: none;
        border: none;
        background: none;
        color: #ffffff;
        font-family: Montserrat, Arial, sans-serif;
        font-size: 1rem; }
      .footer-qualihlm .accordion .header:after, .footer-menu .accordion .header:after {
        content: "\e900";
        font-family: "icomoon";
        display: block;
        position: absolute;
        top: 50%;
        right: 0.5rem;
        font-size: 0.75rem;
        color: #ffffff;
        -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
        -o-transform: translate(0, -50%);
        transform: translate(0, -50%); }
    .footer-qualihlm .accordion .body, .footer-menu .accordion .body {
      display: none;
      text-align: center;
      padding: 1rem 0; }
      .footer-qualihlm .accordion .body .footer-title, .footer-menu .accordion .body .footer-title {
        display: none; }
  .footer-qualihlm {
    margin-top: 2rem; }
  .footer-mentions {
    text-align: center; }
    .footer-mentions ul {
      display: block;
      padding: 0;
      margin: 0;
      list-style: none;
      font-size: 0.5625rem; }
      .footer-mentions ul li {
        display: inline-block;
        vertical-align: middle;
        color: #ffffff;
        font-size: 0.5625rem;
        padding: 0 0.0625rem; }
        .footer-mentions ul li a {
          color: inherit; }
  .footer-menu {
    margin: -1px 0 0 0; }
    .footer-menu .nav {
      display: block;
      padding: 0;
      margin: 0;
      list-style: none;
      text-align: center; }
      .footer-menu .nav .menu-item,
      .footer-menu .nav .page_item {
        list-style: none;
        color: #ffffff;
        font-size: 1rem;
        font-weight: normal;
        text-align: left; }
        .footer-menu .nav .menu-item a,
        .footer-menu .nav .page_item a {
          color: inherit; }
    .footer-menu .btn, .footer-menu input[type="submit"],
    .footer-menu input[type="button"], .footer-menu div.wpforms-container-full .wpforms-form button[type=submit], div.wpforms-container-full .wpforms-form .footer-menu button[type=submit] {
      margin-top: 1rem; }
  .footer-contact {
    text-align: center; }
  .footer-koredge {
    text-align: center; }
    .footer-koredge ul {
      list-style: none;
      padding: 0;
      margin: 0;
      font-size: 0.5625rem; }
      .footer-koredge ul li {
        list-style: none;
        padding: 0;
        margin: 0;
        color: #ffffff;
        font-size: 0.5625rem; }
    .footer-koredge a {
      color: #ffffff; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* Scroll to Top */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
.scrolltotop {
  position: absolute;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.4s ease-out;
  -moz-transition: all 0.4s ease-out;
  -ms-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
  top: -2rem;
  right: -2rem;
  transform: translate(0, -50%);
  z-index: 6789; }
  .scrolltotop.visible {
    opacity: 1;
    visibility: visible; }
  .scrolltotop button {
    -webkit-appearance: none;
    width: 60px;
    height: 60px;
    cursor: pointer;
    padding: 0;
    background-color: #E5114D;
    border-radius: 100em; }
    .scrolltotop button i {
      font-size: 1.5rem; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* MailChimp Messages */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
.mc4wp-alert p {
  font-family: Montserrat, Arial, sans-serif;
  font-weight: normal;
  font-size: 1em;
  color: #ffffff; }
  .mc4wp-alert p a {
    color: inherit;
    text-decoration: underline; }

.mc4wp-alert.mc4wp-error p {
  color: #FF0000; }

/* ---------------------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
/* RESPONSIVE                                                                                                 */
/* ---------------------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------- */
/* MOBILEP : 480px px */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* TABLE : 640px px */
/* ----------------------------------------------------- */
@media (min-width: 640px) {
  .koredge {
    order: 1; }
  .mentions {
    order: 2; }
  .footer-koredge {
    text-align: left; }
  .footer-mentions {
    text-align: right; } }

/* ----------------------------------------------------- */
/* TABLET : 769px px */
/* ----------------------------------------------------- */
@media (min-width: 769px) {
  .site-footer .logo {
    display: block; }
  .site-footer .menu .footer-menu, .site-footer .menu .footer-menu2 {
    margin: 0;
    flex-basis: 50%; }
  .logo {
    order: 1; }
  .qualihlm {
    order: 2; }
  .menu {
    order: 3; }
  .contact {
    order: 4; }
  .footer-top .row.flex {
    align-items: center; }
  .footer-koredge {
    text-align: left; }
  .footer-mentions {
    text-align: right; }
  .footer-logo img {
    margin-bottom: 0; }
  .footer-qualihlm, .footer-menu {
    margin-top: 0; }
    .footer-qualihlm .accordion .header, .footer-menu .accordion .header {
      display: none; }
    .footer-qualihlm .accordion .body, .footer-menu .accordion .body {
      display: block;
      padding: 0; }
      .footer-qualihlm .accordion .body .footer-title, .footer-menu .accordion .body .footer-title {
        display: block;
        font-weight: bold;
        color: #ffffff;
        font-weight: 1.125rem;
        margin-bottom: 1rem;
        text-align: left; }
      .footer-qualihlm .accordion .body img, .footer-menu .accordion .body img {
        max-width: 4.8125rem; }
  .scrolltotop {
    right: -1rem; } }

/* ----------------------------------------------------- */
/* TABLETP : 990px px */
/* ----------------------------------------------------- */
@media (min-width: 990px) {
  .site-footer {
    margin: 0; }
    .site-footer .title {
      text-align: center;
      line-height: 1; }
  .footer-top {
    padding: 3rem 0; }
  .footer-networks ul {
    text-align: center; }
  .footer-newsletter {
    margin-top: 0;
    padding-top: .5rem; }
    .footer-newsletter .mc4wp-form-fields input[type="email"],
    .footer-newsletter .mc4wp-form-fields input[type="text"] {
      padding-left: 0; }
  .footer-logo {
    text-align: left;
    margin-bottom: 0; }
  .footer-address {
    margin: 0; }
  .footer-mentions {
    margin: 0; }
    .footer-mentions ul li {
      text-align: right; }
  .footer-menu {
    margin: 0; }
    .footer-menu .nav {
      text-align: left; }
  .scrolltotop {
    top: -3rem;
    right: 1rem; } }

/* ----------------------------------------------------- */
/* DESKTOP : 1200px px */
/* ----------------------------------------------------- */
@media (min-width: 1200px) {
  section.trouver_un_club {
    height: 50vh; }
    section.trouver_un_club .image p i {
      font-size: 4rem; }
    section.trouver_un_club .image p span {
      font-size: 3rem; }
  section.partenaires {
    padding: 4rem 0; }
    section.partenaires .partenaires__link .btn_bar {
      font-size: 2rem; } }

/* ----------------------------------------------------- */
/* DESKTOP : 1200px px */
/* ----------------------------------------------------- */
@media (min-width: 1720px) {
  .scrolltotop {
    top: -3rem;
    right: -3rem; }
  section.partenaires {
    padding: 6rem 0; } }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* MAIN */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
.site-main {
  padding: 0;
  min-height: 70vh; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* RESPONSIVE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* MOBILE : 640px px */
/* ----------------------------------------------------- */
@media (min-width: 640px) {
  .site-main {
    margin-top: 0; } }

/* ----------------------------------------------------- */
/* TABLET : 769px px */
/* ----------------------------------------------------- */
@media (min-width: 769px) {
  .site-main {
    padding: 0;
    background-repeat: no-repeat;
    background-position: top right;
    background-image: url("/wp-content/themes/notices/assets/images/motif.png");
    background-size: auto 150px; } }

/* ----------------------------------------------------- */
/* TABLET PORTRAIT : 990px px */
/* ----------------------------------------------------- */
@media (min-width: 990px) {
  .site-main {
    padding: 0; } }

/* ----------------------------------------------------- */
/* DESKTOP : 1200px px */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* HOMEPAGE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
body.home .bandeau_pied {
  background: url("/wp-content/themes/notices/assets/images/filters.png") no-repeat left bottom #F6F6F6;
  padding-top: 0.625rem;
  padding-bottom: 2.5rem;
  height: 22vh; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* PAGE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
.page {
  /* ----------------------------------------------------- */
  /* TITLE */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* EXCERPT */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* PARTAGE */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* CONTENU */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* ONGLETS DE SOUS-CONTENU */
  /* ----------------------------------------------------- */ }
  .page-title {
    color: #E5114D;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 1.375em;
    font-weight: bold;
    line-height: 2;
    text-align: center; }
  .page-excerpt {
    color: #183B68;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 1em;
    text-align: center;
    max-width: 90%;
    margin: 1em auto; }
    .page-excerpt p {
      font-size: 0.875rem;
      color: #183B68; }
      .page-excerpt p i {
        color: #3F3F3F;
        font-size: 2rem;
        margin: 0 1rem; }
  .page-share {
    padding: 0 1rem 2rem 1rem; }
    .page-share_title {
      color: #000000;
      font-family: Arial;
      font-size: 1.375em;
      letter-spacing: 1.47px;
      font-weight: bold;
      text-transform: uppercase; }
    .page-share_list {
      list-style: none;
      padding: 0;
      margin: 0; }
      .page-share_list-item {
        display: inline-block;
        vertical-align: top;
        margin-right: 0.5rem; }
        .page-share_list-item:last-child {
          margin-right: 0; }
        .page-share_list-item > a {
          display: block;
          width: 2.75em;
          height: 2.75em;
          line-height: 2.75em;
          text-align: center;
          border: 1px solid #E5114D;
          background-color: #ffffff;
          border-radius: 10em;
          color: #E5114D; }
          .page-share_list-item > a:hover {
            color: #183B68;
            border-color: #183B68; }
  .page-content {
    padding: 0 0 2.5em; }
  .page-tabs .tabs {
    padding: 0;
    margin: 0;
    list-style: none;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: flex-end; }
    .page-tabs .tabs.tabs-count-1 .tab {
      flex-basis: calc(100% / 1); }
    .page-tabs .tabs.tabs-count-2 .tab {
      flex-basis: calc(100% / 2); }
    .page-tabs .tabs.tabs-count-3 .tab {
      flex-basis: calc(100% / 3); }
    .page-tabs .tabs.tabs-count-4 .tab {
      flex-basis: calc(100% / 4); }
    .page-tabs .tabs.tabs-count-5 .tab {
      flex-basis: calc(100% / 5); }
    .page-tabs .tabs.tabs-count-6 .tab {
      flex-basis: calc(100% / 6); }
    .page-tabs .tabs.tabs-count-7 .tab {
      flex-basis: calc(100% / 7); }
    .page-tabs .tabs.tabs-count-8 .tab {
      flex-basis: calc(100% / 8); }
    .page-tabs .tabs.tabs-count-9 .tab {
      flex-basis: calc(100% / 9); }
    .page-tabs .tabs.tabs-count-10 .tab {
      flex-basis: calc(100% / 10); }
    .page-tabs .tabs .tab {
      list-style: none;
      background-color: #3F3F3F;
      transition: all 1.4s cubic-bezier(0.12, 0.9, 0.79, 1);
      position: relative;
      padding: 1.25rem 1rem; }
      .page-tabs .tabs .tab:not(:first-child) {
        border-left: 1px solid #000000; }
      .page-tabs .tabs .tab:before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 0;
        -webkit-transition: all 1.4s cubic-bezier(0.12, 0.9, 0.79, 1);
        -moz-transition: all 1.4s cubic-bezier(0.12, 0.9, 0.79, 1);
        -ms-transition: all 1.4s cubic-bezier(0.12, 0.9, 0.79, 1);
        -o-transition: all 1.4s cubic-bezier(0.12, 0.9, 0.79, 1);
        transition: all 1.4s cubic-bezier(0.12, 0.9, 0.79, 1);
        background-color: rgba(0, 0, 0, 0.35); }
      .page-tabs .tabs .tab:hover {
        background-color: #323232; }
      .page-tabs .tabs .tab.tab-profile {
        background-color: #00A8E7; }
        .page-tabs .tabs .tab.tab-profile:hover {
          background-color: #0095ce; }
      .page-tabs .tabs .tab.tab-indicators {
        background-color: #183B68; }
        .page-tabs .tabs .tab.tab-indicators:hover {
          background-color: #132f53; }
      .page-tabs .tabs .tab.tab-stakeholders {
        background-color: #EBEBEB; }
        .page-tabs .tabs .tab.tab-stakeholders:hover {
          background-color: #dedede; }
      .page-tabs .tabs .tab a {
        display: block;
        color: #ffffff;
        width: 100%;
        text-align: center; }
        .page-tabs .tabs .tab a i {
          font-size: 1.5rem;
          vertical-align: middle; }
        .page-tabs .tabs .tab a span {
          text-transform: uppercase;
          display: none; }
      .page-tabs .tabs .tab.tab-active {
        padding: 1.875rem 1rem; }
        .page-tabs .tabs .tab.tab-active:before {
          height: 0.5em; }
  .page-tabs.page-anchors .tabs {
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: stretch; }
    .page-tabs.page-anchors .tabs .tab a i {
      display: none; }
    .page-tabs.page-anchors .tabs .tab a span {
      display: block; }

/* ----------------------------------------------------- */
/* CONTENU DES TABS */
/* ----------------------------------------------------- */
.tab-content {
  display: none;
  padding: 0 0.625rem;
  position: relative; }
  .tab-content.tab-content-active {
    display: block; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* RESPONSIVE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* XXS */
/* ----------------------------------------------------- */
@media (min-width: 480px) {
  .page-title {
    font-size: 2em; }
  .page-excerpt {
    font-size: 1em; } }

/* ----------------------------------------------------- */
/* XS */
/* ----------------------------------------------------- */
@media (min-width: 640px) {
  .page-title {
    font-size: 2.5em; }
  .page-excerpt {
    font-size: 1em; }
    .page-excerpt p i {
      font-size: 3.0rem; }
  .page-share {
    padding: 0; } }

/* ----------------------------------------------------- */
/* SM */
/* ----------------------------------------------------- */
@media (min-width: 769px) {
  .page-title {
    font-size: 2.5em;
    margin-bottom: 1.5rem; }
  .page-excerpt {
    font-size: 1.125em;
    max-width: 66%; }
  .page-tabs .tabs .tab {
    padding: 1.25rem 1rem; }
    .page-tabs .tabs .tab a i {
      font-size: 2.0rem;
      margin-bottom: 1.375rem;
      display: block; }
    .page-tabs .tabs .tab a span {
      display: inline; }
    .page-tabs .tabs .tab.tab-active, .page-tabs .tabs .tab:hover {
      padding: 1.875rem 1rem; } }

/* ----------------------------------------------------- */
/* MD */
/* ----------------------------------------------------- */
@media (min-width: 990px) {
  .page-title {
    text-align: center;
    font-size: 2.625em;
    margin-bottom: 1.5rem;
    /* Titre avec icon */
    /* ----------------------------------------------------- */ }
    .page-title-icon {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      flex-direction: row;
      flex-wrap: nowrap;
      justify-content: center;
      align-items: center; }
      .page-title-icon .icon-container {
        margin-bottom: 0;
        margin-right: 1rem; }
  .page-excerpt {
    font-size: 1.125em;
    max-width: 66%; }
  .page-tabs .tabs .tab a i {
    font-size: 2.5rem; }
  .page-tabs.page-anchors .tabs {
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: flex-end; }
  .page-content p {
    padding-bottom: 1rem; } }

/* ----------------------------------------------------- */
/* LG */
/* ----------------------------------------------------- */
@media (min-width: 1200px) {
  .page-title {
    font-size: 2.875em;
    margin-bottom: 1.5rem; }
  .page-excerpt {
    font-size: 1.125em; }
  .tab-content {
    padding: 4rem 0; } }

/* ----------------------------------------------------- */
/* 1313px exactement ( cas ou les 6 onglets sont visibles) */
/* ----------------------------------------------------- */
@media screen and (min-width: 1313px) {
  .page-tabs .tabs .tab a i {
    display: inline-block;
    margin-bottom: 0;
    margin-right: 1.375rem; } }

/* ----------------------------------------------------- */
/* XL */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* SINGLES */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
.single {
  /* ----------------------------------------------------- */
  /* IMAGE */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* TITLE */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* REGION / TYPOLOGIES / ... */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* TAGS */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* NAMES */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* SHARE (partage sur les reseaux sociaux) */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* DESCRIPTION */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* CONTACT */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* TABS */
  /* ----------------------------------------------------- */ }
  .single .details {
    position: relative; }
    .single .details:before {
      content: url("/wp-content/themes/notices/assets/images/illustration_1.svg");
      display: block;
      position: absolute;
      bottom: 4rem;
      right: 0;
      width: 30%;
      max-width: 433px;
      -webkit-transform: translate(50%, 0);
      -ms-transform: translate(50%, 0);
      -o-transform: translate(50%, 0);
      transform: translate(50%, 0);
      z-index: 0;
      opacity: .5; }
  .single__image {
    height: 100%; }
    .single__image img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center; }
  .single__title {
    padding: 1rem 0; }
    .single__title .page-title {
      color: #00A8E7;
      font-family: Arial, Verdana, serif;
      font-size: 45px;
      font-weight: bold; }
  .single__region-type {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: flex-start; }
  .single__region p, .single__typology p {
    color: #3F3F3F; }
    .single__region p i,
    .single__region p img, .single__typology p i,
    .single__typology p img {
      display: inline-block;
      vertical-align: middle;
      width: 1.5rem;
      height: 1.5rem;
      margin-right: 0.5rem;
      text-align: center; }
  .single__tags {
    margin: 0 0 1rem 0; }
    .single__tags .tag {
      display: inline-block;
      vertical-align: middle;
      margin: 0 10px 0 0;
      border-radius: 4px;
      padding: 6px;
      background: #183B68;
      color: #ffffff; }
  .single__names {
    margin: 1rem 0; }
    .single__names > div {
      color: #183B68;
      font-family: Arial, Verdana, serif;
      font-size: 1.125rem; }
      .single__names > div:not(:last-child) {
        border-right: 1px solid #183B68;
        padding-right: 2rem; }
      .single__names > div:not(:first-child) {
        padding-left: 2rem; }
  .single__share {
    color: #8F8F8F;
    font-family: Arial, Verdana, serif;
    font-size: 1rem;
    text-transform: uppercase;
    padding-bottom: 1rem;
    border-bottom: 1px solid #8F8F8F;
    margin: 1rem 0; }
    .single__share a {
      color: #8F8F8F; }
    .single__share > div {
      display: inline-block;
      vertical-align: middle; }
      .single__share > div:not(:last-child) {
        margin-right: 2.5rem; }
    .single__share .share {
      position: relative; }
      .single__share .share__platforms {
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        text-align: center;
        background: #ffffff;
        padding: 1rem;
        list-style: none;
        box-shadow: 0 0 12px rgba(0, 0, 0, 0.2);
        opacity: 0;
        visibility: hidden;
        -webkit-transition: all 0.4s ease-out;
        -moz-transition: all 0.4s ease-out;
        -ms-transition: all 0.4s ease-out;
        -o-transition: all 0.4s ease-out;
        transition: all 0.4s ease-out;
        margin: 0; }
        .single__share .share__platforms li {
          list-style: none; }
          .single__share .share__platforms li a {
            font-size: 2rem; }
      .single__share .share-toggle:hover ~ .share__platforms, .single__share .share-toggle:focus ~ .share__platforms, .single__share .share-toggle:active ~ .share__platforms {
        opacity: 1;
        visibility: visible; }
  .single__description {
    margin-bottom: 3rem; }
  .single__contact .section_title {
    font-size: 2.25rem;
    margin-bottom: 1.125rem; }
  .single__contact_name {
    font-weight: bold; }
  .single__contact_website {
    margin-top: 3rem; }
  .single__contact_socials {
    text-align: center; }
    .single__contact_socials .btn, .single__contact_socials input[type="submit"],
    .single__contact_socials input[type="button"], .single__contact_socials div.wpforms-container-full .wpforms-form button[type=submit], div.wpforms-container-full .wpforms-form .single__contact_socials button[type=submit] {
      width: 2.75rem;
      height: 2.75rem;
      border: 2px solid #404E55;
      color: #404E55;
      padding: 0;
      line-height: 2.5rem; }
      .single__contact_socials .btn > i, .single__contact_socials input[type="submit"] > i, .single__contact_socials input[type="button"] > i, .single__contact_socials div.wpforms-container-full .wpforms-form button[type=submit] > i, div.wpforms-container-full .wpforms-form .single__contact_socials button[type=submit] > i {
        margin-right: 0; }
  .single__tabs .tabs {
    list-style: none;
    padding: 0;
    margin: 0; }
    .single__tabs .tabs .tab {
      list-style: none; }
      .single__tabs .tabs .tab-button {
        background-color: #ffffff;
        color: #404E55;
        text-transform: uppercase;
        font-family: Arial, Verdana, serif;
        font-weight: bold;
        padding: 2rem;
        text-align: center;
        display: block;
        border: 1px solid #D8D8D8; }
      .single__tabs .tabs .tab.tab-active .tab-button {
        background-color: #404E55;
        color: #ffffff; }
    .single__tabs .tabs .tab-content-mobile {
      max-height: 0rem;
      padding: 0rem 1rem;
      -webkit-transition: all 0.4s ease-out;
      -moz-transition: all 0.4s ease-out;
      -ms-transition: all 0.4s ease-out;
      -o-transition: all 0.4s ease-out;
      transition: all 0.4s ease-out;
      overflow: hidden; }
      .single__tabs .tabs .tab-content-mobile.tab-content-active {
        max-height: 100rem;
        padding: 2rem 1rem; }
  .single__tabs .tab-contents {
    display: none;
    padding: 2rem 0; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* RESPONSIVE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* XXS */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* XS */
/* ----------------------------------------------------- */
@media (min-width: 640px) {
  .single {
    /* CONTACT */
    /* ----------------------------------------------------- */ }
    .single__contact_website-networks {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      flex-direction: row;
      flex-wrap: nowrap;
      justify-content: space-between;
      align-items: flex-end; }
    .single__title .page-title {
      text-align: left; } }

/* ----------------------------------------------------- */
/* SM */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* MD */
/* ----------------------------------------------------- */
@media (min-width: 990px) {
  .single__tabs .tabs {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center; }
    .single__tabs .tabs .tab-content-mobile {
      display: none; }
  .single__tabs .tab-contents {
    display: block; } }

/* ----------------------------------------------------- */
/* LG */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* XL */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* CARTE INTERACTIVE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* Conteneur de map */
/* ----------------------------------------------------- */
#map {
  width: 100%; }

/* ----------------------------------------------------- */
/* Surcharge du style Leaflet */
/* ----------------------------------------------------- */
.leaflet-left .leaflet-control {
  margin-top: 10px !important; }

.leaflet-bar a {
  background-color: #3F3F3F !important;
  color: #ffffff !important; }
  .leaflet-bar a:hover {
    background-color: #183B68 !important; }

/* ----------------------------------------------------- */
/* Page map */
/* ----------------------------------------------------- */
.page-map {
  margin: 2em 0 2.5em 0; }
  .page-map .categories-title {
    font-size: 2em;
    background-color: #183B68;
    color: #ffffff;
    font-family: Arial, Verdana, serif;
    text-align: left;
    padding: 1rem; }
  .page-map .categories-list {
    list-style: none;
    padding: 1em;
    background-color: rgba(54, 55, 89, 0.15);
    margin: 0; }
    .page-map .categories-list-item {
      list-style: none;
      display: block; }
  .page-map .categories .category_filter > i {
    display: inline-block;
    text-align: center;
    line-height: 2.5em;
    color: #ffffff;
    margin-bottom: 1rem;
    width: 2.5em;
    height: 2.5em;
    border-radius: 2.5em;
    margin-right: 1rem;
    transition: all 0.2s cubic-bezier(0.14, 0.66, 0.28, 0.93); }
  .page-map .categories .category_filter.active > i {
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
    transform: scale(1.1); }

/* ----------------------------------------------------- */
/* GRILLE */
/* ----------------------------------------------------- */
.poi-grid {
  margin: 2rem 0;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: stretch; }
  .poi-grid .item-poi {
    flex-basis: 100%;
    margin-bottom: 1rem; }
    .poi-grid .item-poi > a {
      box-shadow: 0 0 6px rgba(0, 0, 0, 0.1);
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      flex-direction: row;
      flex-wrap: nowrap;
      justify-content: flex-start;
      align-items: stretch; }
    .poi-grid .item-poi-image {
      flex-basis: 25%; }
      html.objectfit .poi-grid .item-poi-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center center; }
      html:not(.objectfit) .poi-grid .item-poi-image img {
        width: 100%;
        height: auto; }
    .poi-grid .item-poi-content {
      flex-basis: 75%;
      padding: 1rem; }
    .poi-grid .item-poi-title p {
      font-family: Arial, Verdana, serif;
      font-size: 1.125em;
      color: #3F3F3F;
      margin: 0; }
    .poi-grid .item-poi-categories ul {
      list-style: none;
      color: #000000;
      font-family: Montserrat, Arial, sans-serif;
      font-size: 0.875em;
      font-weight: bold;
      padding: 0;
      margin: 0; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* RESPONSIVE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* XXS */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* XS */
/* ----------------------------------------------------- */
@media (min-width: 640px) {
  .col_filters {
    margin: 2rem 0; }
  body.single-association .post-image img {
    max-width: 100%;
    flex-basis: 100%; } }

/* ----------------------------------------------------- */
/* SM */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* MD */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* LG */
/* ----------------------------------------------------- */
@media (min-width: 1200px) {
  .page-map .categories-list {
    padding: 2rem 1rem; }
  /* GRILLE */
  /* ----------------------------------------------------- */
  .poi-grid .item-poi {
    flex-basis: 50%;
    padding-right: 1rem; }
    .poi-grid .item-poi > a {
      box-shadow: none; }
      .poi-grid .item-poi > a:hover {
        box-shadow: 0 0 6px rgba(0, 0, 0, 0.1); } }

/* ----------------------------------------------------- */
/* XL */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* CONTACT */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
section.form-map {
  position: relative;
  /* (pattern) */ }
  section.form-map > div.container {
    position: relative;
    z-index: 2; }
  section.form-map .pattern-left {
    position: absolute;
    z-index: 1;
    bottom: 10vh;
    left: 0;
    width: auto;
    height: 30vh;
    text-align: left;
    overflow: hidden; }
    section.form-map .pattern-left #pattern-right-strokes {
      width: auto;
      height: 100%;
      -webkit-transform: rotate(180deg);
      -moz-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
      -o-transform: rotate(180deg);
      transform: rotate(180deg); }
      section.form-map .pattern-left #pattern-right-strokes line {
        stroke: rgba(229, 17, 77, 0.5);
        stroke-width: 2px;
        stroke-dasharray: 60px;
        stroke-dashoffset: 60px;
        transition: all 1.4s cubic-bezier(0.12, 0.9, 0.79, 1); }
  section.form-map.visible .pattern-left #pattern-left-strokes line {
    stroke-dashoffset: 0px; }
  section.form-map .wpforms-submit-container {
    text-align: center; }

/* ----------------------------------------------------- */
/* PAGE CONTACT */
/* ----------------------------------------------------- */
.page-contact-us .contact {
  position: relative; }
  .page-contact-us .contact:before {
    content: url("/wp-content/themes/notices/assets/images/illustration_1.svg");
    display: block;
    position: absolute;
    bottom: 0px;
    right: 0;
    width: 30%;
    max-width: 433px;
    -webkit-transform: translate(50%, 0);
    -ms-transform: translate(50%, 0);
    -o-transform: translate(50%, 0);
    transform: translate(50%, 0);
    z-index: 0;
    opacity: .5; }
  .page-contact-us .contact .coordonnees-container {
    padding: 1rem 0; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* RESPONSIVE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* DESKTOP : 1200px px */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* TABLETP : 990px px */
/* ----------------------------------------------------- */
@media (max-width: 990px) {
  section.form-map .pattern-left {
    height: 50vh; }
  section.form-map .module {
    margin: 0; }
  section.form-map .left,
  section.form-map .right {
    padding: 0; } }

/* ----------------------------------------------------- */
/* TABLET : 769px px */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* TABLE : 640px px */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* MOBILEP : 480px px */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* SECTION GRILLE DE LIENS VERS LES PAGES */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
.pages_grid {
  /* ----------------------------------------------------- */
  /* Titre */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* Texte */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* BACKGROUND */
  /* ----------------------------------------------------- */ }
  .pages_grid__title_container {
    grid-area: 1/1/1/3; }
  .pages_grid__title h2 {
    text-transform: uppercase;
    font-weight: 600;
    text-align: center; }
  .pages_grid__text {
    display: none; }
  .pages_grid__page {
    position: relative;
    margin: .25rem; }
    .pages_grid__page:nth-child(2) {
      grid-area: 2/1/2/3; }
      .pages_grid__page:nth-child(2) .pages_grid__page__image:after {
        background-color: rgba(229, 17, 77, 0.5); }
    .pages_grid__page:nth-child(3) {
      grid-area: 3/1/3/2; }
    .pages_grid__page:nth-child(4) {
      grid-area: 3/2/3/3; }
    .pages_grid__page__image {
      width: 100%;
      height: 100%;
      position: relative; }
      .pages_grid__page__image:after {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: rgba(14, 32, 70, 0.5); }
      .pages_grid__page__image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        display: block; }
    .pages_grid__page__content {
      position: absolute;
      display: block;
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      -moz-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      -o-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      font-family: Arial, Verdana, serif;
      text-transform: uppercase;
      color: #ffffff;
      text-align: center;
      font-size: 2rem;
      line-height: 1; }
  .pages_grid.textured_gradient {
    background-image: url("/wp-content/themes/notices/assets/images/fond-texture-bleublancrouge.jpg");
    background-repeat: repeat-y;
    background-position: top center;
    background-size: cover; }
    .pages_grid.textured_gradient .pages_grid__title h2 {
      color: #ffffff; }
    .pages_grid.textured_gradient .pages_grid__text {
      color: #ffffff; }
  .pages_grid.textured_gradient_inverse {
    background-image: url("/wp-content/themes/notices/assets/images/fond-texture-bleublancrouge_inverse.jpg");
    background-repeat: repeat-y;
    background-position: top center;
    background-size: cover; }
    .pages_grid.textured_gradient_inverse .pages_grid__title h2 {
      color: #ffffff; }
    .pages_grid.textured_gradient_inverse .pages_grid__text {
      color: #ffffff; }
  .pages_grid.white {
    background-color: #ffffff; }
    .pages_grid.white .pages_grid__page__image:after {
      background-color: rgba(24, 59, 104, 0.5); }
    .pages_grid.white .pages_grid__title h2 {
      color: #3F3F3F; }
    .pages_grid.white .pages_grid__text p {
      color: #3F3F3F; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* RESPONSIVE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* XXS */
/* ----------------------------------------------------- */
@media (min-width: 480px) {
  .pages_grid__title_container {
    grid-area: 1/1/1/4;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center; }
  .pages_grid__text {
    display: block;
    margin: 1rem 0;
    text-align: center; }
    .pages_grid__text p {
      color: #ffffff; }
  .pages_grid__page {
    position: relative;
    margin: .25rem;
    background-color: rgba(255, 255, 255, 0.5); }
    .pages_grid__page:nth-child(2) {
      grid-area: 2/1/2/2; }
    .pages_grid__page:nth-child(3) {
      grid-area: 2/2/2/3; }
    .pages_grid__page:nth-child(4) {
      grid-area: 2/3/2/4; } }

/* ----------------------------------------------------- */
/* XS */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* SM */
/* ----------------------------------------------------- */
@media (min-width: 769px) {
  .pages_grid {
    padding: 2rem 1rem; }
    .pages_grid .grid {
      grid-template-rows: repeat(3, 1fr);
      grid-template-columns: repeat(3, 1fr); }
    .pages_grid__title_container {
      padding: .75rem;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      flex-direction: column;
      flex-wrap: nowrap;
      justify-content: center;
      align-items: flex-start; }
    .pages_grid__title  h2 {
      text-align: left; }
    .pages_grid__text p {
      text-align: left; }
    .pages_grid.left .pages_grid__title_container {
      grid-area: 1/1/1/2; }
    .pages_grid.left .pages_grid__page:nth-child(2) {
      grid-area: 2/1/4/3; }
    .pages_grid.left .pages_grid__page:nth-child(3) {
      grid-area: 1/2/1/3; }
    .pages_grid.left .pages_grid__page:nth-child(4) {
      grid-area: 1/3/3/4; }
    .pages_grid.left .pages_grid__page__content {
      font-size: 2.1875rem;
      font-weight: 600; }
    .pages_grid.right .pages_grid__title_container {
      grid-area: 1/3/1/4; }
    .pages_grid.right .pages_grid__page:nth-child(2) {
      grid-area: 2/2/4/4; }
    .pages_grid.right .pages_grid__page:nth-child(3) {
      grid-area: 1/1/3/2; }
    .pages_grid.right .pages_grid__page:nth-child(4) {
      grid-area: 3/1/4/2; }
    .pages_grid.right .pages_grid__page__content {
      font-size: 2.1875rem;
      font-weight: 600; } }

/* ----------------------------------------------------- */
/* MD */
/* ----------------------------------------------------- */
@media (min-width: 990px) {
  .pages_grid {
    padding: 4rem 1rem; }
    .pages_grid.textured_gradient_inverse, .pages_grid.textured_gradient {
      background-size: auto 100%; } }

/* ----------------------------------------------------- */
/* LG */
/* ----------------------------------------------------- */
@media (min-width: 1200px) {
  .pages_grid .grid {
    grid-template-rows: minmax(200px, 300px); }
  .pages_grid__page {
    margin: .5rem; } }

/* ----------------------------------------------------- */
/* XL */
/* ----------------------------------------------------- */
@media (min-width: 1650px) {
  .pages_grid__page {
    margin: .75rem; } }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* itemS */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
.items {
  /* ----------------------------------------------------- */
  /* GRID */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* SLIDER */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* LIST */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* MOTEUR DE RECHERCHE */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* PAGINATION */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* LIEN DE RETOUR */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* TOOGLE DE LA VUE MAP \ CONTAINER FLEX POUR AFFICHAGE LIST + MAP */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* ZONE DE RAFRAICHISSEMENT AJAX */
  /* ----------------------------------------------------- */ }
  .items-grid {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    margin-top: 2rem; }
    .items-grid .item {
      position: relative;
      padding: .5rem 0;
      flex-basis: 100%;
      flex-grow: 0;
      flex-shrink: 0;
      /* Effets au hover */
      /* ----------------------------------------------------- */ }
      .items-grid .item__inner {
        position: relative; }
      .items-grid .item__image {
        height: 50vh;
        position: relative; }
        .items-grid .item__image:after {
          content: "";
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          background-color: rgba(0, 0, 0, 0.5);
          -webkit-transition: all 0.4s ease-out;
          -moz-transition: all 0.4s ease-out;
          -ms-transition: all 0.4s ease-out;
          -o-transition: all 0.4s ease-out;
          transition: all 0.4s ease-out;
          opacity: 0; }
        .items-grid .item__image img {
          display: block;
          width: 100%;
          height: 100%;
          object-fit: cover;
          object-position: center; }
      .items-grid .item__content {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        padding: 1rem;
        color: #ffffff;
        background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.52) 100%);
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        justify-content: flex-end;
        align-items: flex-start; }
      .items-grid .item__title {
        display: inline-block;
        text-align: left;
        font-weight: 500;
        color: #3F3F3F;
        text-transform: uppercase;
        -webkit-transform: translate(0, -1.5rem);
        -ms-transform: translate(0, -1.5rem);
        -o-transform: translate(0, -1.5rem);
        transform: translate(0, -1.5rem);
        -webkit-transition: all 0.4s ease-out;
        -moz-transition: all 0.4s ease-out;
        -ms-transition: all 0.4s ease-out;
        -o-transition: all 0.4s ease-out;
        transition: all 0.4s ease-out;
        padding: 1rem;
        background-color: #ffffff; }
        .items-grid .item__title h2 {
          font-family: Arial, Verdana, serif;
          font-weight: bold;
          color: #ffffff;
          font-size: 1.25em;
          margin-bottom: 1rem; }
      .items-grid .item__excerpt {
        display: none; }
        .items-grid .item__excerpt p {
          font-family: Arial, Verdana, serif;
          font-weight: normal;
          color: #ffffff;
          font-size: 1rem;
          margin: 0; }
      .items-grid .item__media video,
      .items-grid .item__media iframe {
        width: 100%;
        height: auto; }
      .items-grid .item__permalink {
        width: 100%;
        margin-top: 1rem;
        text-align: right; }
        .items-grid .item__permalink button {
          cursor: pointer; }
      .items-grid .item__date {
        position: absolute;
        bottom: .5rem; }
        .items-grid .item__date p {
          font-family: Montserrat, Arial, sans-serif;
          color: #A0A0A0;
          font-style: italic; }
      .items-grid .item:hover .item__image:after {
        opacity: 1; }
      .items-grid .item:hover .item__title {
        -webkit-transform: translate(0, -3rem);
        -ms-transform: translate(0, -3rem);
        -o-transform: translate(0, -3rem);
        transform: translate(0, -3rem);
        color: #183B68; }
  .items-slider {
    width: 100%; }
    .items-slider .item {
      position: relative;
      flex-basis: 100%;
      flex-grow: 0;
      flex-shrink: 0; }
      .items-slider .item__inner {
        margin: .5rem;
        position: relative; }
      .items-slider .item__image {
        height: 34vh; }
        .items-slider .item__image img {
          display: block;
          width: 100%;
          height: 100%;
          object-fit: cover;
          object-position: center; }
      .items-slider .item__media video,
      .items-slider .item__media iframe {
        width: 100%;
        height: auto; }
      .items-slider .item__content {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        padding: 1rem;
        color: #ffffff;
        background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.52) 100%);
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        justify-content: flex-end;
        align-items: flex-start; }
      .items-slider .item__title h2 {
        font-family: Arial, Verdana, serif;
        font-weight: bold;
        color: #ffffff;
        font-size: 1.25em;
        margin-bottom: 1rem; }
      .items-slider .item__excerpt {
        display: none; }
        .items-slider .item__excerpt p {
          font-family: Arial, Verdana, serif;
          font-weight: normal;
          color: #ffffff;
          font-size: 1rem;
          margin: 0; }
      .items-slider .item__permalink {
        width: 100%;
        margin-top: 1rem;
        text-align: right; }
        .items-slider .item__permalink button {
          cursor: pointer; }
  .items-list {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: flex-start;
    padding: 0; }
    .items-list .item {
      height: 100%; }
      .items-list .item__column {
        margin-bottom: .5rem; }
      .items-list .item__inner {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        justify-content: space-between;
        align-items: stretch;
        height: 100%;
        padding: 0.625rem;
        border: 1px solid #D5D5D5;
        background-color: #ffffff;
        box-shadow: 0 2px 14px 0 rgba(195, 195, 195, 0.5); }
      .items-list .item__title h2 {
        color: #000000;
        font-family: Arial, Verdana, serif;
        font-size: 1.25rem;
        font-weight: bold; }
      .items-list .item__image {
        position: relative;
        height: 50vh;
        overflow: hidden; }
        .items-list .item__image img {
          display: block; }
          html.objectfit .items-list .item__image img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center center; }
          html:not(.objectfit) .items-list .item__image img {
            width: 100%;
            height: auto; }
      .items-list .item__categories-date {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: center;
        position: absolute;
        bottom: 0;
        left: 1rem;
        right: auto;
        background-color: #183B68;
        padding: 0.1875rem 0.3125rem; }
        .items-list .item__categories-date.stakeholder {
          background-color: #EBEBEB; }
        .items-list .item__categories-date.project {
          background-color: #3F3F3F; }
      .items-list .item__categories, .items-list .item__date {
        position: static;
        bottom: auto;
        font-family: Arial, Verdana, serif;
        font-size: 0.875rem;
        color: #ffffff;
        text-transform: uppercase; }
      .items-list .item__media video,
      .items-list .item__media iframe {
        width: 100%;
        height: auto; }
      .items-list .item__date p {
        color: #A0A0A0;
        font-family: Montserrat, Arial, sans-serif;
        font-size: 0.75rem;
        font-style: italic;
        font-weight: lighter;
        margin: 0; }
      .items-list .item__thematics, .items-list .item__regions {
        margin-bottom: 1rem; }
        .items-list .item__thematics p, .items-list .item__regions p {
          color: #3F3F3F; }
          .items-list .item__thematics p img,
          .items-list .item__thematics p i, .items-list .item__regions p img,
          .items-list .item__regions p i {
            display: inline-block;
            vertical-align: middle;
            font-size: 1.125rem;
            text-align: center;
            width: 1.125rem;
            margin-right: 0.5rem; }
      .items-list .item__thematic:not(:last-child) {
        margin-right: .5rem; }
      .items-list .item__link {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        justify-content: space-between;
        align-items: flex-end; }
        .items-list .item__link.text-right {
          justify-content: flex-end; }
      .items-list .item__content {
        padding: 1rem;
        color: #000000; }
      .items-list .item__permalink button {
        cursor: pointer; }
  .items-search {
    padding: 1.5rem;
    background-color: #EFEFEF;
    margin-bottom: 2.5rem; }
    .items-search .tags-container {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      justify-content: flex-start;
      align-items: flex-start;
      margin: 0 0 0.8125em 0; }
      .items-search .tags-container .btn-tag-filter {
        line-height: 2.75rem;
        height: 3rem;
        padding-top: 0;
        padding-bottom: 0;
        display: block; }
    .items-search select {
      height: 100%; }
    .items-search .toggle-map {
      width: 100%; }
    .items-search .map-mode {
      display: inline-block; }
    .items-search .list-mode {
      display: none; }
    body.map-toggled .items-search .map-mode {
      display: none; }
    body.map-toggled .items-search .list-mode {
      display: inline-block; }
  .items-pagination {
    margin: 2rem 0;
    text-align: center; }
    .items-pagination > ul {
      list-style: none;
      padding: 0;
      margin: 0; }
      .items-pagination > ul > li {
        display: inline-block;
        vertical-align: top;
        list-style: none;
        padding: 0;
        margin: 0.25rem; }
        .items-pagination > ul > li > a,
        .items-pagination > ul > li > span {
          display: block;
          width: 2rem;
          height: 2rem;
          line-height: 2rem;
          text-align: center;
          border: 1px solid #0E2046;
          border-radius: 10em; }
        .items-pagination > ul > li > a {
          background-color: #ffffff;
          color: #0E2046; }
          .items-pagination > ul > li > a.prev {
            border-color: transparent;
            margin-right: 1rem; }
          .items-pagination > ul > li > a.next {
            border-color: transparent;
            margin-left: 1rem; }
        .items-pagination > ul > li > span {
          background-color: #0E2046;
          color: #ffffff; }
  .items-back {
    margin: 2rem 0 0 0; }
  .items__container {
    position: relative; }
    .items__container .items-list {
      display: block; }
    .items__container .items-map {
      display: none; }
    body.map-toggled .items__container .items-list {
      display: none; }
    body.map-toggled .items__container .items-map {
      display: block; }
  .items .ajax-items-refresh {
    position: relative; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* RESPONSIVE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* XXS */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* XS */
/* ----------------------------------------------------- */
@media (min-width: 640px) {
  .items-list .item__column {
    margin-bottom: 1rem; }
  .items-list .item__image {
    height: 22vh; } }

/* ----------------------------------------------------- */
/* SM */
/* ----------------------------------------------------- */
@media (min-width: 769px) {
  .items-grid {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: stretch; }
    .items-grid .item {
      flex-basis: 50%; }
      .items-grid .item__image {
        height: 34vh; }
  .items-search form {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: stretch; }
  .items-search .tags-container {
    flex-basis: 100%;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: stretch; }
  .items-search .select_container {
    margin: 0 1rem 0 0; }
    .items-search .select_container select {
      margin: 0;
      width: auto;
      min-width: 18.75rem; }
  .items-search .toggle-map {
    width: auto;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center; }
  .items-list .item__column {
    margin-bottom: 2rem; } }

/* ----------------------------------------------------- */
/* MD */
/* ----------------------------------------------------- */
@media (min-width: 990px) {
  .items {
    margin: 2rem 0; }
    .items-grid {
      margin-top: 3.625rem; }
      .items-grid .item {
        padding: 1rem 0; }
        .items-grid .item__excerpt {
          display: block; }
    .items-list {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      justify-content: flex-start;
      align-items: stretch; }
      .items-list .item {
        padding: 1rem 0; } }

/* ----------------------------------------------------- */
/* LG */
/* ----------------------------------------------------- */
@media (min-width: 1200px) {
  .items {
    /* ----------------------------------------------------- */
    /* GRID */
    /* ----------------------------------------------------- */
    /* ----------------------------------------------------- */
    /* LIST */
    /* ----------------------------------------------------- */
    /* ----------------------------------------------------- */
    /* RECHERCHE */
    /* ----------------------------------------------------- */ }
    .items-grid {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      justify-content: flex-start;
      align-items: stretch; }
      .items-grid .item {
        flex-basis: calc(100% / 3); }
    .items-list .item {
      flex-basis: calc(100% / 3); }
    .items-search form {
      justify-content: center;
      align-items: center; }
    .items-search .tags-container {
      flex-basis: auto;
      margin-right: 1rem;
      margin-bottom: 0; } }

/* ----------------------------------------------------- */
/* XL */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* SINGLE CAT */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
body.category .category {
  /* ----------------------------------------------------- */
  /* LOADER */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* FILTERS */
  /* ----------------------------------------------------- */
  /* ----------------------------------------------------- */
  /* RESULTS */
  /* ----------------------------------------------------- */ }
  body.category .category__loader {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    border: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.8);
    z-index: 999; }
    body.category .category__loader.display {
      display: flex; }
  body.category .category__filters {
    background: url("/wp-content/themes/notices/assets/images/filters.png") no-repeat left bottom #F6F6F6;
    padding-top: 0.625rem;
    padding-bottom: 2.5rem;
    margin-bottom: 1rem; }
    body.category .category__filters__title h2 {
      text-transform: uppercase;
      font-weight: 600;
      font-size: 1.375rem;
      color: #183B68;
      text-align: left;
      margin-bottom: 2.75rem; }
    body.category .category__filters__filters ul {
      list-style: none;
      padding: 0;
      margin: 0; }
      body.category .category__filters__filters ul li {
        list-style: none;
        padding: 0;
        margin: 0 1% 0 0;
        display: inline-block;
        width: 48%; }
        body.category .category__filters__filters ul li .btn-filter-cat {
          width: 100%;
          position: relative;
          font-size: 0.625rem; }
          body.category .category__filters__filters ul li .btn-filter-cat.active:after {
            content: "\e902";
            font-family: "icomoon";
            display: block;
            position: absolute;
            top: 4px;
            right: 4px;
            color: #ffffff;
            font-size: 0.625rem; }
          body.category .category__filters__filters ul li .btn-filter-cat:hover {
            color: #ffffff !important; }
  body.category .category__results {
    background-image: url("/wp-content/themes/notices/assets/images/hexa.svg");
    background-repeat: no-repeat;
    background-position: right center;
    /* Pagination */
    /* ----------------------------------------------------- */ }
    body.category .category__results__count p {
      font-size: 0.75rem; }
      body.category .category__results__count p .count,
      body.category .category__results__count p .results {
        font-weight: bold; }
    body.category .category__results__items {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      justify-content: flex-start;
      align-items: stretch; }
      body.category .category__results__items .category__item {
        flex-basis: 100%;
        margin-bottom: 1rem;
        background-color: #183B68; }
        body.category .category__results__items .category__item__type {
          background-color: #E5114D;
          color: #ffffff;
          padding: 0 1rem;
          text-transform: uppercase;
          font-weight: 600;
          line-height: 2.25rem; }
        body.category .category__results__items .category__item__content {
          background-color: #183B68;
          padding: 1rem;
          color: #ffffff; }
          body.category .category__results__items .category__item__content__icon {
            text-align: center;
            font-size: 3rem;
            margin-bottom: 1rem; }
          body.category .category__results__items .category__item__content__title h3 {
            color: #ffffff;
            font-size: 1.25rem;
            font-weight: bold;
            text-align: center;
            line-height: 1.25;
            margin-bottom: 1rem; }
          body.category .category__results__items .category__item__content__text p {
            font-size: 0.75rem;
            color: #ffffff; }
          body.category .category__results__items .category__item__content__links {
            text-align: center; }
            body.category .category__results__items .category__item__content__links .btn, body.category .category__results__items .category__item__content__links input[type="submit"],
            body.category .category__results__items .category__item__content__links input[type="button"], body.category .category__results__items .category__item__content__links div.wpforms-container-full .wpforms-form button[type=submit], div.wpforms-container-full .wpforms-form body.category .category__results__items .category__item__content__links button[type=submit] {
              width: 100%; }
              body.category .category__results__items .category__item__content__links .btn + .btn, body.category .category__results__items .category__item__content__links input[type="submit"] + .btn, body.category .category__results__items .category__item__content__links input[type="button"] + .btn, body.category .category__results__items .category__item__content__links div.wpforms-container-full .wpforms-form button[type=submit] + .btn, div.wpforms-container-full .wpforms-form body.category .category__results__items .category__item__content__links button[type=submit] + .btn, body.category .category__results__items .category__item__content__links .btn + input[type="submit"], body.category .category__results__items .category__item__content__links input[type="submit"] + input[type="submit"], body.category .category__results__items .category__item__content__links input[type="button"] + input[type="submit"], body.category .category__results__items .category__item__content__links div.wpforms-container-full .wpforms-form button[type=submit] + input[type="submit"], div.wpforms-container-full .wpforms-form body.category .category__results__items .category__item__content__links button[type=submit] + input[type="submit"],
              body.category .category__results__items .category__item__content__links .btn + input[type="button"],
              body.category .category__results__items .category__item__content__links input[type="submit"] + input[type="button"],
              body.category .category__results__items .category__item__content__links input[type="button"] + input[type="button"],
              body.category .category__results__items .category__item__content__links div.wpforms-container-full .wpforms-form button[type=submit] + input[type="button"], div.wpforms-container-full .wpforms-form body.category .category__results__items .category__item__content__links button[type=submit] + input[type="button"], body.category .category__results__items .category__item__content__links div.wpforms-container-full .wpforms-form .btn + button[type=submit], div.wpforms-container-full .wpforms-form body.category .category__results__items .category__item__content__links .btn + button[type=submit], body.category .category__results__items .category__item__content__links div.wpforms-container-full .wpforms-form input[type="submit"] + button[type=submit], div.wpforms-container-full .wpforms-form body.category .category__results__items .category__item__content__links input[type="submit"] + button[type=submit], body.category .category__results__items .category__item__content__links div.wpforms-container-full .wpforms-form input[type="button"] + button[type=submit], div.wpforms-container-full .wpforms-form body.category .category__results__items .category__item__content__links input[type="button"] + button[type=submit], body.category .category__results__items .category__item__content__links div.wpforms-container-full .wpforms-form button[type=submit] + button[type=submit], div.wpforms-container-full .wpforms-form body.category .category__results__items .category__item__content__links button[type=submit] + button[type=submit] {
                margin-top: .5rem; }
    body.category .category__results__pagination {
      margin: .5rem 0;
      text-align: center; }
      body.category .category__results__pagination .page-numbers {
        display: inline-block;
        vertical-align: top;
        width: 2.5rem;
        height: 2.5rem;
        line-height: 2.5rem;
        color: #E5114D;
        border-radius: 2.5rem;
        border: 1px solid #E5114D; }
        body.category .category__results__pagination .page-numbers:hover, body.category .category__results__pagination .page-numbers.current {
          background-color: #E5114D;
          color: #ffffff; }

/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* RESPONSIVE */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* XXS */
/* ----------------------------------------------------- */
@media (min-width: 480px) {
  body.category .category__filters__filters ul li .btn-filter-cat {
    font-size: 0.75rem; }
  body.category .category__results__items .category__item {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: stretch; }
    body.category .category__results__items .category__item__content {
      flex-basis: auto;
      height: 100%;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      flex-direction: column;
      flex-wrap: nowrap;
      justify-content: space-between;
      align-items: stretch; } }

/* ----------------------------------------------------- */
/* XS */
/* ----------------------------------------------------- */
@media (min-width: 640px) {
  body.category .category__filters__filters ul li .btn-filter-cat {
    font-size: 0.875rem; }
  body.category .category__results__items .category__item {
    flex-basis: 48%;
    margin: 1%; } }

/* ----------------------------------------------------- */
/* SM */
/* ----------------------------------------------------- */
@media (min-width: 769px) {
  body.category .category__filters__filters ul li {
    width: auto; } }

/* ----------------------------------------------------- */
/* MD */
/* ----------------------------------------------------- */
@media (min-width: 990px) {
  body.category .category__filters__filters ul li .btn-filter-cat {
    font-size: 1rem; }
  body.category .category__results__items .category__item {
    flex-basis: 31%; }
    body.category .category__results__items .category__item:nth-child(3n) {
      margin-left: 1%; }
    body.category .category__results__items .category__item:nth-child(3n + 1) {
      margin-right: 1%; } }

/* ----------------------------------------------------- */
/* LG */
/* ----------------------------------------------------- */
/* ----------------------------------------------------- */
/* XL */
/* ----------------------------------------------------- */
@media print {
  header,
  footer {
    display: none; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwiYmFzZS9fdmFyaWFibGVzLnNjc3MiLCJiYXNlL19taXhpbi5zY3NzIiwiYmFzZS9fYW5pbWF0aW9ucy5zY3NzIiwiYmFzZS9fZ3JpZC5zY3NzIiwiYmFzZS9fbG9hZGVyLnNjc3MiLCJsaWJzL2xlYWZsZXQvX2xlYWZsZXQuc2NzcyIsImNvbXBvbmVudC9fYnV0dG9ucy5zY3NzIiwiY29tcG9uZW50L19icmVhZGNydW1icy5zY3NzIiwiY29tcG9uZW50L19mb3JtLnNjc3MiLCJjb21wb25lbnQvX21hcC5zY3NzIiwiY29tcG9uZW50L19zZWFyY2guc2NzcyIsImNvbXBvbmVudC9fc2l0ZW1hcC5zY3NzIiwiY29tcG9uZW50L19zb21tYWlyZS5zY3NzIiwiY29tcG9uZW50L19zbGlkZXJzLnNjc3MiLCJjb21wb25lbnQvX3NvY2lhbHdhbGwuc2NzcyIsImNvbXBvbmVudC9fZ2FsbGVyeS5zY3NzIiwiY29tbW9uL19zZWN0aW9ucy5zY3NzIiwiY29tbW9uL19tb2R1bGVzLnNjc3MiLCJjb21tb24vX2Zvb3Rlci5zY3NzIiwiY29tbW9uL19jb250ZW50LnNjc3MiLCJwYWdlcy9faG9tZS5zY3NzIiwicGFnZXMvX3BhZ2Uuc2NzcyIsInBhZ2VzL19zaW5nbGUuc2NzcyIsInBhZ2VzL19tYXAuc2NzcyIsInBhZ2VzL19jb250YWN0LnNjc3MiLCJwYWdlcy9fZ3JpZC5zY3NzIiwicG9zdHMvX2l0ZW1zLnNjc3MiLCJwb3N0cy9fY2F0ZWdvcnkuc2NzcyIsIl9wcmludC5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIFNjc3MgRG9jdW1lbnQgKi9cbkBjaGFyc2V0IFwidXRmLThcIjtcblxuQGltcG9ydCBcImJhc2UvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiYmFzZS9taXhpblwiO1xuLy8gQGltcG9ydCBcImNyaXRpYy9pY29tb29uXCI7XG5cbkBpbXBvcnQgXCJiYXNlL2FuaW1hdGlvbnNcIjtcbkBpbXBvcnQgXCJiYXNlL2dyaWRcIjtcbkBpbXBvcnQgXCJiYXNlL2xvYWRlclwiO1xuXG5AaW1wb3J0IFwibGlicy9sZWFmbGV0L2xlYWZsZXRcIjtcbi8vIEBpbXBvcnQgXCJsaWJzL2NoZWNrYnJvd3NlclwiO1xuXG5AaW1wb3J0IFwiY29tcG9uZW50L2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnQvYnJlYWRjcnVtYnNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnQvZm9ybVwiO1xuQGltcG9ydCBcImNvbXBvbmVudC9tYXBcIjtcbkBpbXBvcnQgXCJjb21wb25lbnQvc2VhcmNoXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50L3NpdGVtYXBcIjtcbkBpbXBvcnQgXCJjb21wb25lbnQvc29tbWFpcmVcIjtcbkBpbXBvcnQgXCJjb21wb25lbnQvc2xpZGVyc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudC9zb2NpYWx3YWxsXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50L2dhbGxlcnlcIjtcblxuQGltcG9ydCBcImNvbW1vbi9zZWN0aW9uc1wiO1xuQGltcG9ydCBcImNvbW1vbi9tb2R1bGVzXCI7XG5AaW1wb3J0IFwiY29tbW9uL2Zvb3RlclwiO1xuQGltcG9ydCBcImNvbW1vbi9jb250ZW50XCI7XG5cbkBpbXBvcnQgXCJwYWdlcy9ob21lXCI7XG5AaW1wb3J0IFwicGFnZXMvcGFnZVwiO1xuQGltcG9ydCBcInBhZ2VzL3NpbmdsZVwiO1xuQGltcG9ydCBcInBhZ2VzL21hcFwiO1xuQGltcG9ydCBcInBhZ2VzL2NvbnRhY3RcIjtcbkBpbXBvcnQgXCJwYWdlcy9ncmlkXCI7XG5cbi8vIEBpbXBvcnQgXCJwb3N0cy9kb2N1bWVudFwiO1xuLy8gQGltcG9ydCBcInBvc3RzL21hcFwiO1xuXG5cbi8vIEl0ZW1zIGdlbmVyaXF1ZXNcbkBpbXBvcnQgXCJwb3N0cy9pdGVtc1wiO1xuXG4vLyBJdGVtcyBzcGVjaWZpcXVlc1xuQGltcG9ydCBcInBvc3RzL2NhdGVnb3J5XCI7XG4vLyBAaW1wb3J0IFwicG9zdHMvbm90aWNlXCI7XG5cbi8vIFByaW50XG5AaW1wb3J0IFwicHJpbnRcIjtcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogVkFSSUFCTEVTICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBjaGFyc2V0IFwidXRmLThcIjtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIENvdWxldXJzICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuJGxpZ2h0OiAjZmZmZmZmO1xuJGRhcms6ICMwMDAwMDA7XG5cbi8qIFNwZWNpZmlxdWVzIGF1IHNpdGUgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4kY29sMTogIzNGM0YzRjsgLyogZ3JpcyBmb25jZSAqL1xuJGNvbDI6ICMxODNCNjg7IC8qIGJsZXUgZm9uY2UgKi9cbiRjb2wzOiAjRTUxMTREOyAvKiByb3VnZSAqL1xuJGNvbDQ6ICNFQkVCRUI7IC8qIGJsZXUgZm9uY2UgMiAqL1xuJGNvbDU6ICMwMEE4RTc7IC8qIGJsZXUgY2xhaXIgMiAqL1xuJGNvbDY6ICM0MDRFNTU7IC8qIGdyaXMgKi9cbiRjb2w3OiAjMEUyMDQ2OyAvKiBncmlzIGJsZXUgKi9cbiRjb2w4OiAjREJFNEVEOyAvKiBncmlzIGJsZXUgdHJlcyBjbGFpciAqL1xuXG4vKiBEZWNsaW5haXNvbnMgY2xhaXJlcyBldCBmb25jZWVzICovXG4kY29sMS1kYXJrZXI6IGRhcmtlbigkY29sMSwgMTAlKTtcbiRjb2wxLWRhcms6IGRhcmtlbigkY29sMSwgNSUpO1xuJGNvbDEtbGlnaHQ6IGxpZ2h0ZW4oJGNvbDEsIDUlKTtcbiRjb2wxLWxpZ2h0ZXI6IGxpZ2h0ZW4oJGNvbDEsIDEwJSk7XG5cbiRjb2wyLWRhcmtlcjogZGFya2VuKCRjb2wyLCAxMCUpO1xuJGNvbDItZGFyazogZGFya2VuKCRjb2wyLCA1JSk7XG4kY29sMi1saWdodDogbGlnaHRlbigkY29sMiwgNSUpO1xuJGNvbDItbGlnaHRlcjogbGlnaHRlbigkY29sMiwgMTAlKTtcblxuJGNvbDMtZGFya2VyOiBkYXJrZW4oJGNvbDMsIDEwJSk7XG4kY29sMy1kYXJrOiBkYXJrZW4oJGNvbDMsIDUlKTtcbiRjb2wzLWxpZ2h0OiBsaWdodGVuKCRjb2wzLCA1JSk7XG4kY29sMy1saWdodGVyOiBsaWdodGVuKCRjb2wzLCAxMCUpO1xuXG4kY29sNC1kYXJrZXI6IGRhcmtlbigkY29sNCwgMTAlKTtcbiRjb2w0LWRhcms6IGRhcmtlbigkY29sNCwgNSUpO1xuJGNvbDQtbGlnaHQ6IGxpZ2h0ZW4oJGNvbDQsIDUlKTtcbiRjb2w0LWxpZ2h0ZXI6IGxpZ2h0ZW4oJGNvbDQsIDEwJSk7XG5cbi8qIENvcnJlc3BvbmRhbmNlcyBjb3VsZXVycyAtPiB0ZXh0ZSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiRjb2xoMTogJGNvbDE7XG4kY29saDI6ICRjb2wxO1xuJGNvbGgzOiAkY29sMTtcbiRjb2xoNDogJGNvbDE7XG4kY29saDU6ICRjb2wxO1xuJGNvbGg2OiAkY29sMTtcblxuJGNvbHRleHQ6ICRjb2wxO1xuJGNvbGxpc3Q6ICRjb2wxO1xuXG4kY29sbGluazogJGNvbDE7XG4kY29sbGlua19oOiAkY29sMjtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIEZPTlRTICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuJGZmMTogTW9udHNlcnJhdCwgQXJpYWwsIHNhbnMtc2VyaWY7XG4kZmYyOiBBcmlhbCwgVmVyZGFuYSwgc2VyaWY7XG5cbiRmZmljb246IFwiaWNvbW9vblwiO1xuJGZmYTogXCJGb250QXdlc29tZVwiO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogRk9OVC1TSVpFUyAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiRmejogMTZweDtcbiRmel94eHM6IDE2cHg7XG4kZnpfeHM6IDE2cHg7XG4kZnpfc206IDE2cHg7XG4kZnpfbWQ6IDE2cHg7XG4kZnpfbGc6IDE2cHg7XG4kZnpfeGw6IDE2cHg7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBUUkFOU0lUSU9OUyAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiR0cmFuczogYWxsIDAuNHMgZWFzZS1vdXQ7XG4kY3ViaWN0cmFuczogY3ViaWMtYmV6aWVyKDAuMTIsIDAuOSwgMC43OSwgMSk7XG4kY3ViaWM6IGFsbCAxLjRzICRjdWJpY3RyYW5zO1xuXG4kY3ViaWMydHJhbnM6IGN1YmljLWJlemllcigwLjE0LCAwLjY2LCAwLjI4LCAwLjkzKTtcbiRjdWJpYzI6IGFsbCAwLjJzICRjdWJpYzJ0cmFucztcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIEJBU0VTIFBBRERJTkcgJiBNQVJHSU4gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4kYmFzZS1wYWRkaW5nOiAxNnB4O1xuJGJhc2UtbWFyZ2luOiAyMHB4O1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogQk9SREVSIFJBRElVUyAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiRiZHJzOiAycHg7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBDT05UQUlORVJTICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuJGNvbnRhaW5lci13aWR0aDogMTYwMHB4O1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogSEVBREVSICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4kaGRyLWg6IDY0cHg7XG4kaGRyLWhfeHhzOiA2NHB4O1xuJGhkci1oX3hzOiA2NHB4O1xuJGhkci1oX3NtOiA2NHB4O1xuJGhkci1oX21kOiAxMjhweDtcbiRoZHItaF9sZzogMTI4cHg7XG4kaGRyLWhfeGw6IDEyOHB4O1xuJGhkci1yZWR1Y2VkLWg6IDEyOHB4O1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogU0lERUJBUiAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuJGFzZF9oOiA2MHB4O1xuJGFzZF9oX3hsOiA4NXB4O1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogRk9PVEVSICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4kZnRyX2JnOiAkY29sMjtcbiRmdHJfYmctZGFyazogZGFya2VuKCRmdHJfYmcsIDEwJSk7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBCUkVBS1BPSU5UUyAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiRzY3JlZW4teHhzOiA0ODBweDtcbiRzY3JlZW4teHM6IDY0MHB4O1xuJHNjcmVlbi1zbTogNzY5cHg7XG4kc2NyZWVuLW1kOiA5OTBweDtcbiRzY3JlZW4tbGc6IDEyMDBweDtcbiRzY3JlZW4teGw6IDE2NTBweDtcblxuJHRoZW1lUGF0aDogXCIvd3AtY29udGVudC90aGVtZXMvbm90aWNlcy9cIjtcbiRpbWFnZVBhdGg6ICR0aGVtZVBhdGggKyBcImFzc2V0cy9pbWFnZXMvXCI7XG4kZm9udFBhdGg6ICR0aGVtZVBhdGggKyBcImFzc2V0cy9mb250cy9cIjtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIEhFWEFHT05FICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuJHJhdGlvOiAxLjEyNTg7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBBRE1JTiBXUCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiR0b3BiYXJfYmc6ICRjb2wyO1xuJG1lbnVfdzogMjYwcHg7XG4kbWVudV9iZzogJGNvbDE7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBFQVNJTkcgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4kZWFzZUluU2luZTogY3ViaWMtYmV6aWVyKDAuNDcsIDAsIDAuNzQ1LCAwLjcxNSk7XG4kZWFzZU91dFNpbmU6IGN1YmljLWJlemllcigwLjM5LCAwLjU3NSwgMC41NjUsIDEpO1xuJGVhc2VJbk91dFNpbmU6IGN1YmljLWJlemllcigwLjQ0NSwgMC4wNSwgMC41NSwgMC45NSk7XG4kZWFzZUluUXVhZDogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDg1LCAwLjY4LCAwLjUzKTtcbiRlYXNlT3V0UXVhZDogY3ViaWMtYmV6aWVyKDAuMjUsIDAuNDYsIDAuNDUsIDAuOTQpO1xuJGVhc2VJbk91dFF1YWQ6IGN1YmljLWJlemllcigwLjQ1NSwgMC4wMywgMC41MTUsIDAuOTU1KTtcbiRlYXNlSW5DdWJpYzogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4kZWFzZU91dEN1YmljOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiRlYXNlSW5PdXRDdWJpYzogY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuJGVhc2VJblF1YXJ0OiBjdWJpYy1iZXppZXIoMC44OTUsIDAuMDMsIDAuNjg1LCAwLjIyKTtcbiRlYXNlT3V0UXVhcnQ6IGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG4kZWFzZUluT3V0UXVhcnQ6IGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7XG4kZWFzZUluUXVpbnQ6IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpO1xuJGVhc2VPdXRRdWludDogY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpO1xuJGVhc2VJbk91dFF1aW50OiBjdWJpYy1iZXppZXIoMC44NiwgMCwgMC4wNywgMSk7XG4kZWFzZUluRXhwbzogY3ViaWMtYmV6aWVyKDAuOTUsIDAuMDUsIDAuNzk1LCAwLjAzNSk7XG4kZWFzZU91dEV4cG86IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcbiRlYXNlSW5PdXRFeHBvOiBjdWJpYy1iZXppZXIoMSwgMCwgMCwgMSk7XG4kZWFzZUluQ2lyYzogY3ViaWMtYmV6aWVyKDAuNiwgMC4wNCwgMC45OCwgMC4zMzUpO1xuJGVhc2VPdXRDaXJjOiBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTtcbiRlYXNlSW5PdXRDaXJjOiBjdWJpYy1iZXppZXIoMC43ODUsIDAuMTM1LCAwLjE1LCAwLjg2KTtcbiRlYXNlSW5CYWNrOiBjdWJpYy1iZXppZXIoMC42LCAtMC4yOCwgMC43MzUsIDAuMDQ1KTtcbiRlYXNlT3V0QmFjazogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMS4yNzUpO1xuJGVhc2VJbk91dEJhY2s6IGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpO1xuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBNSVhJTi5TQ1NTICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIEZPTlQgRkFDRSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtaXhpbiBmb250LWZhY2UoJG5hbWUsICRmaWxlLCAkd2VpZ2h0LCAkc3R5bGUpIHtcbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICRuYW1lO1xuICAgIHNyYzogdXJsKFwiI3skZmlsZX0uZW90XCIpO1xuICAgIHNyYzogdXJsKFwiI3skZmlsZX0uZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiI3skZmlsZX0ud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIjeyRmaWxlfS50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIiN7JGZpbGV9LnN2Z1wiKSBmb3JtYXQoXCJzdmdcIik7XG4gICAgZm9udC13ZWlnaHQ6ICR3ZWlnaHQ7XG4gICAgZm9udC1zdHlsZTogJHN0eWxlO1xuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBLRVlGUkFNRVMgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWl4aW4ga2V5ZnJhbWVzKCRuYW1lKSB7XG4gIEAtd2Via2l0LWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgQGNvbnRlbnQ7O1xuICB9XG5cbiAgQC1tb3ota2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICBAY29udGVudDs7XG4gIH1cblxuICBAa2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICBAY29udGVudDs7XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIENFTlRSRSBVTkUgSU1BR0UgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWl4aW4gaW1nQ2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFBSRUZJWEVTIDogVHJhbnNpdGlvbiAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFucykge1xuICAtbXMtdHJhbnNpdGlvbjogJHRyYW5zO1xuICAtby10cmFuc2l0aW9uOiAkdHJhbnM7XG4gIC1tb3otdHJhbnNpdGlvbjogJHRyYW5zO1xuICAtd2Via2l0LXRyYW5zaXRpb246ICR0cmFucztcbiAgdHJhbnNpdGlvbjogJHRyYW5zO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogUFJFRklYRVMgOiBUcmFuc2Zvcm0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWl4aW4gdHJhbnNmb3JtKCR0cmFuc2YpIHtcbiAgLW1zLXRyYW5zZm9ybTogJHRyYW5zZjtcbiAgLW8tdHJhbnNmb3JtOiAkdHJhbnNmO1xuICAtbW96LXRyYW5zZm9ybTogJHRyYW5zZjtcbiAgLXdlYmtpdC10cmFuc2Zvcm06ICR0cmFuc2Y7XG4gIHRyYW5zZm9ybTogJHRyYW5zZjtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIENFTlRSRSBVTiBFTEVNRU5UICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1peGluIGNlbnRlckVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBCQVNFIEdSQURJRU5UICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1peGluIGRlZ3JhZGUge1xuICBiYWNrZ3JvdW5kOiByZ2IoMjE5LCAyMzYsIDI0NSk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyMjJkZWcsIHJnYmEoMjE5LCAyMzYsIDI0NSwgMSkgMCUsIHJnYmEoMTUyLCAxODQsIDIwMCwgMSkgMTAwJSk7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBDRU5UUkUgVU4gQkFDS0dST1VORCBRVUFORCBPTiBMRSBNRVQgRU4gSU5MSU5FICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1peGluIGNlbnRlckJHIHtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAtbW96LWJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBPQkpFQ1QgRklUIEFWRUMgREVURUNUSVpSICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1peGluIG9iakZpdCB7XG4gIGh0bWwub2JqZWN0Zml0ICYge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIH1cblxuICBodG1sOm5vdCgub2JqZWN0Zml0KSAmIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFRSSUFOR0xFUyAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtaXhpbiB0cmlhbmdsZSgkb3JpZW50YXRpb24sICRjb2xvciwgJHdpZHRoLCAkaGVpZ2h0KSB7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgQGlmICRvcmllbnRhdGlvbiA9PSBcInRvcFwiIHtcbiAgICB0b3A6IDFweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTAwJSwgLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMDAlLCAtNTAlKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTAwJSwgLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEwMCUsIC01MCUpO1xuICAgIGJvcmRlci10b3A6ICRoZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJGhlaWdodCBzb2xpZCAkY29sb3I7XG4gICAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIEBpZiAkb3JpZW50YXRpb24gPT0gXCJyaWdodFwiIHtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMXB4O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTAwJSwgLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMCUsIC01MCUpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMCUsIC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMCUsIC01MCUpO1xuICAgIGJvcmRlci10b3A6ICRoZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJGhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItbGVmdDogJHdpZHRoIHNvbGlkICRjb2xvcjtcbiAgfVxuXG4gIEBpZiAkb3JpZW50YXRpb24gPT0gXCJib3R0b21cIiB7XG4gICAgYm90dG9tOiAxcHg7XG4gICAgbGVmdDogNTAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwJSk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDAlKTtcbiAgICBib3JkZXItdG9wOiAkaGVpZ2h0IHNvbGlkICRjb2xvcjtcbiAgICBib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAkaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cblxuICBAaWYgJG9yaWVudGF0aW9uID09IFwibGVmdFwiIHtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAxcHg7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTAwJSwgLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMDAlLCAtNTAlKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTAwJSwgLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEwMCUsIC01MCUpO1xuICAgIGJvcmRlci10b3A6ICRoZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgJGNvbG9yO1xuICAgIGJvcmRlci1ib3R0b206ICRoZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogRGlzcGxheSBmbGV4ICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1peGluIGZsZXgoJGZsZXg6IGZsZXgsICRkaXJlY3Rpb246IHJvdywgJHdyYXA6IG5vd3JhcCwgJGpjOiBmbGV4LXN0YXJ0LCAkYWk6IGZsZXgtc3RhcnQpIHtcbiAgZGlzcGxheTogLXdlYmtpdC0jeyRmbGV4fTtcbiAgZGlzcGxheTogLW1vei0jeyRmbGV4fTtcbiAgZGlzcGxheTogLW1zLSN7JGZsZXh9O1xuICBkaXNwbGF5OiAtby0jeyRmbGV4fTtcbiAgZGlzcGxheTogI3skZmxleH07XG4gIGZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICBmbGV4LXdyYXA6ICR3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6ICRqYztcbiAgYWxpZ24taXRlbXM6ICRhaTtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIE9iamVjdCBGaXQgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWl4aW4gb2JqZml0KCRmaXQ6IGNvdmVyLCAkcG9zOiBjZW50ZXIpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogJGZpdDtcbiAgb2JqZWN0LXBvc2l0aW9uOiAkcG9zO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogSGV4YWdvbmVzICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1peGluIGhleCgkc3ZnKSB7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRpbWFnZVBhdGggKyAkc3ZnKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuXG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogRk9OQ1RJT05TICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIENPTlZFUlNJT04gUFggLT4gRU0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AZnVuY3Rpb24gcHRlKCRweCwgJGZ6KSB7XG4gIEByZXR1cm4gJHB4IC8gJGZ6ICogMWVtO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogQ09OVkVSU0lPTiBQWCAtPiBSRU0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AZnVuY3Rpb24gcHRyKCRweCwgJGZ6KSB7XG4gIEByZXR1cm4gJHB4IC8gJGZ6ICogMXJlbTtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIENPTlZFUlNJT04gUFggLT4gJSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBmdW5jdGlvbiBwdHAoJGxnLCAkY3QpIHtcbiAgQHJldHVybiAkY3QgLyAxMDAlICogJGxnO1xufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBBTklNQVRJT05TICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFNDUk9MTERJU0MgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2Nyb2xsRGlzYyB7XG4gIDAlIHtcbiAgICB0b3A6IC0zMCU7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDIwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRvcDogMTAwJTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkAtbW96LWtleWZyYW1lcyBzY3JvbGxEaXNjIHtcbiAgMCUge1xuICAgIHRvcDogLTMwJTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgODAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQC1vLWtleWZyYW1lcyBzY3JvbGxEaXNjIHtcbiAgMCUge1xuICAgIHRvcDogLTMwJTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgODAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIE9OREUgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgb25kZSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbiAgfVxuXG4gIDEwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgb3BhY2l0eTogMC41O1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMjUpO1xuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBCT1VOQ0UgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5Aa2V5ZnJhbWVzIGJvdW5jZSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4zKSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMC45O1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuODkpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBCQUxBTkNFICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGtleWZyYW1lcyBiYWxhbmNlIHtcbiAgMCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDI1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMCUpO1xuICB9XG5cbiAgNzUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAlKTtcbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogQkFMQU5DRSBWRVJUSUNBTEUgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5Aa2V5ZnJhbWVzIGJhbGFuY2V2IHtcbiAgMCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuXG4gIDI1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMCUpO1xuICB9XG5cbiAgNzUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAlKTtcbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogUFVMU0UgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5Aa2V5ZnJhbWVzIHB1bHNlIHtcbiAgMCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogV0FWRVMgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5Aa2V5ZnJhbWVzIHdhdmVzIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDEwMCU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDEwMCU7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogUkVTU09SVCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBrZXlmcmFtZXMgcmVzc29ydCB7XG4gIDAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMjUlLCAtNTAlKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIC01MCUpO1xuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBSRVNTT1JUIFZFUlRJQ0FMICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGtleWZyYW1lcyByZXNzb3J0diB7XG4gIDAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1JSk7XG4gIH1cblxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIEJPVU5DRSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBrZXlmcmFtZXMgZWxhc3RpYyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjQpO1xuICAgIG9wYWNpdHk6IDAuNztcbiAgfVxuXG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjYpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBGTE9BVCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBrZXlmcmFtZXMgZmxvYXQge1xuICAwJSB7XG4gICAgYm94LXNoYWRvdzogMCA1cHggMTVweCAwcHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRleSgwcHgpO1xuICB9XG5cbiAgNTAlIHtcbiAgICBib3gtc2hhZG93OiAwIDI1cHggMTVweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRleSgtMjBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBib3gtc2hhZG93OiAwIDVweCAxNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuNik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGV5KDBweCk7XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIExEUyBST0xMRVIgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5Aa2V5ZnJhbWVzIGxkcy1yb2xsZXIge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG4iLCIvLyBTSU1QTEUgR1JJRCAtIFNBU1MvU0NTU1xuXG4vLyB1dGlsaXR5XG5cbi5sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi5qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTtcbn1cblxuLmZsZXgge1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tb3otZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXg7XG4gIGRpc3BsYXk6IC1vLWZsZXg7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5ncmlkIHtcbiAgZGlzcGxheTogLXdlYmtpdC1ncmlkO1xuICBkaXNwbGF5OiAtbW96LWdyaWQ7XG4gIGRpc3BsYXk6IC1tcy1ncmlkO1xuICBkaXNwbGF5OiAtby1ncmlkO1xuICBkaXNwbGF5OiBncmlkO1xufVxuXG4vLyBncmlkXG5cbiR3aWR0aDogMTAwJTtcbiRndXR0ZXI6IDAlO1xuJG5iY29sczogMTI7XG5cbi5jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiAkY29udGFpbmVyLXdpZHRoO1xufVxuXG4ucm93IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcblxuICBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWluLWhlaWdodDogMDtcblxuICAgICYuY29sLW5vLW1hcmdpbiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgJi5uby1wYWRkaW5nIHtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmLmNvbC0wIHtcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbmJjb2xzIHtcbiAgICAgICYuY29sLSN7JGl9IHtcbiAgICAgICAgd2lkdGg6ICR3aWR0aCAvICRuYmNvbHMgKiAkaSAtICRndXR0ZXIgKiAoJG5iY29scyAtICRpKSAvICRuYmNvbHM7XG4gICAgICAgIGZsZXgtYmFzaXM6ICR3aWR0aCAvICRuYmNvbHMgKiAkaSAtICRndXR0ZXIgKiAoJG5iY29scyAtICRpKSAvICRuYmNvbHM7XG4gICAgICAgIHBhZGRpbmc6IDByZW0gLjVyZW07XG5cbiAgICAgICAgaHRtbC5maXJlZm94ICYsXG4gICAgICAgIGh0bWwuc2FmYXJpICYge1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG5cbiAgJi5mbGV4IHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogLW1vei1mbGV4O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4O1xuICAgIGRpc3BsYXk6IC1vLWZsZXg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG5cbiAgICBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBSRVNQT05TSVZFICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFhYUyAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNjcmVlbi14eHMpIHtcblxuICAuaGlkZGVuLXh4cyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAucm93IHtcbiAgICBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICAmLmNvbC0wLXh4cyB7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRuYmNvbHMge1xuICAgICAgICAmLmNvbC0jeyRpfS14eHMge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAkd2lkdGggLyAkbmJjb2xzICogJGkgLSAkZ3V0dGVyICogKCRuYmNvbHMgLSAkaSkgLyAkbmJjb2xzO1xuICAgICAgICAgIGZsZXgtYmFzaXM6ICR3aWR0aCAvICRuYmNvbHMgKiAkaSAtICRndXR0ZXIgKiAoJG5iY29scyAtICRpKSAvICRuYmNvbHM7XG4gICAgICAgICAgcGFkZGluZzogMHJlbSAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogWFMgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzY3JlZW4teHMpIHtcblxuICAucm93IHtcbiAgICBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICAmLmNvbC0wLXhzIHtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJG5iY29scyB7XG4gICAgICAgICYuY29sLSN7JGl9LXhzIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogJHdpZHRoIC8gJG5iY29scyAqICRpIC0gJGd1dHRlciAqICgkbmJjb2xzIC0gJGkpIC8gJG5iY29scztcbiAgICAgICAgICBmbGV4LWJhc2lzOiAkd2lkdGggLyAkbmJjb2xzICogJGkgLSAkZ3V0dGVyICogKCRuYmNvbHMgLSAkaSkgLyAkbmJjb2xzO1xuICAgICAgICAgIHBhZGRpbmc6IDByZW0gMXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5oaWRkZW4teHMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBTTSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAucm93IHtcbiAgICBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICAmLmNvbC0wLXNtIHtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJG5iY29scyB7XG4gICAgICAgICYuY29sLSN7JGl9LXNtIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogJHdpZHRoIC8gJG5iY29scyAqICRpIC0gJGd1dHRlciAqICgkbmJjb2xzIC0gJGkpIC8gJG5iY29scztcbiAgICAgICAgICBmbGV4LWJhc2lzOiAkd2lkdGggLyAkbmJjb2xzICogJGkgLSAkZ3V0dGVyICogKCRuYmNvbHMgLSAkaSkgLyAkbmJjb2xzO1xuICAgICAgICAgIHBhZGRpbmc6IDByZW0gMXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5oaWRkZW4tc20ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBNRCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xuICAucm93IHtcbiAgICBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICBwYWRkaW5nOiAwcmVtIDElO1xuXG4gICAgICAmLmNvbC0wLW1kIHtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJG5iY29scyB7XG4gICAgICAgICYuY29sLSN7JGl9LW1kIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogJHdpZHRoIC8gJG5iY29scyAqICRpIC0gJGd1dHRlciAqICgkbmJjb2xzIC0gJGkpIC8gJG5iY29scztcbiAgICAgICAgICBmbGV4LWJhc2lzOiAkd2lkdGggLyAkbmJjb2xzICogJGkgLSAkZ3V0dGVyICogKCRuYmNvbHMgLSAkaSkgLyAkbmJjb2xzO1xuICAgICAgICAgIHBhZGRpbmc6IDByZW0gMXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuZmxleCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB9XG4gIH1cblxuICAuaGlkZGVuLW1kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIExHICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkc2NyZWVuLWxnKSB7XG4gIC5yb3cge1xuICAgIFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgICYuY29sLTAtbGcge1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbmJjb2xzIHtcbiAgICAgICAgJi5jb2wtI3skaX0tbGcge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAkd2lkdGggLyAkbmJjb2xzICogJGkgLSAkZ3V0dGVyICogKCRuYmNvbHMgLSAkaSkgLyAkbmJjb2xzO1xuICAgICAgICAgIGZsZXgtYmFzaXM6ICR3aWR0aCAvICRuYmNvbHMgKiAkaSAtICRndXR0ZXIgKiAoJG5iY29scyAtICRpKSAvICRuYmNvbHM7XG4gICAgICAgICAgcGFkZGluZzogMHJlbSAxcmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmhpZGRlbi1sZyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogJGNvbnRhaW5lci13aWR0aDtcbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogWEwgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzY3JlZW4teGwpIHtcbiAgLnJvdyB7XG4gICAgW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgICAgJi5jb2wtMC14bCB7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRuYmNvbHMge1xuICAgICAgICAmLmNvbC0jeyRpfS14bCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6ICR3aWR0aCAvICRuYmNvbHMgKiAkaSAtICRndXR0ZXIgKiAoJG5iY29scyAtICRpKSAvICRuYmNvbHM7XG4gICAgICAgICAgZmxleC1iYXNpczogJHdpZHRoIC8gJG5iY29scyAqICRpIC0gJGd1dHRlciAqICgkbmJjb2xzIC0gJGkpIC8gJG5iY29scztcbiAgICAgICAgICBwYWRkaW5nOiAwcmVtIDFyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaGlkZGVuLXhsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLXdpZHRoO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIubG9hZGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGxpZ2h0LCAwLjY1KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOiAkdHJhbnM7XG4gICAgei1pbmRleDogMTAwMTtcbiAgICBcbiAgICAmLWNvbnRhaW5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAmLmRpc3BsYXkge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cbn1cblxuLmxkcy1yb2xsZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgIEBpbmNsdWRlIGNlbnRlckVsO1xuXG4gICAgd2lkdGg6IDY0cHg7XG4gICAgaGVpZ2h0OiA2NHB4O1xuXG4gICAgZGl2IHtcbiAgICAgICAgYW5pbWF0aW9uOiBsZHMtcm9sbGVyIDEuMnMgY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC41LCAxKSBpbmZpbml0ZTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMzJweCAzMnB4O1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHdpZHRoOiA2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDZweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRkYXJrO1xuICAgICAgICAgICAgbWFyZ2luOiAoLTNweCkgMCAwIC0zcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0wLjAzNnM7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHRvcDogNTBweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAtMC4wNzJzO1xuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICB0b3A6IDU0cHg7XG4gICAgICAgICAgICAgICAgbGVmdDogNDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTAuMTA4cztcblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgdG9wOiA1N3B4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDM5cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1jaGlsZCg0KSB7XG4gICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0wLjE0NHM7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHRvcDogNThweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAzMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoNSkge1xuICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAtMC4xOHM7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHRvcDogNTdweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAyNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoNikge1xuICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAtMC4yMTZzO1xuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICB0b3A6IDU0cHg7XG4gICAgICAgICAgICAgICAgbGVmdDogMTlweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bnRoLWNoaWxkKDcpIHtcbiAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTAuMjUycztcblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgdG9wOiA1MHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDE0cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1jaGlsZCg4KSB7XG4gICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0wLjI4OHM7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHRvcDogNDVweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBMRUFGTEVUICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8vIC5sZWFmbGV0LXRvcC5sZWFmbGV0LXJpZ2h0XG4vLyBcdHBvc2l0aW9uOiBhYnNvbHV0ZVxuLy8gXHRib3JkZXI6IDBcbi8vIFx0Ym9yZGVyLXJhZGl1czogMFxuLy8gXHRyaWdodDogMFxuLy8gXHR0b3A6IDBcbi8vIFx0bWFyZ2luOiAwXG4vLyBcdHBhZGRpbmc6IDYwcHggNTBweFxuLy8gXHRoZWlnaHQ6IDEwMCVcbi8vIFx0d2lkdGg6IDIwJVxuLy8gXHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHRcblxuLy8gLmxlYWZsZXQtY29udHJvbC1sYXllcnNcbi8vIFx0bGFiZWxcbi8vIFx0XHRkaXNwbGF5OiBibG9ja1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFJFU1BPTlNJVkUgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogREVTS1RPUCA6ICN7JHNjcmVlbi1sZ30gcHggKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1sZykge31cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFRBQkxFVFAgOiAjeyRzY3JlZW4tbWR9IHB4ICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQpIHt9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBUQUJMRVQgOiAjeyRzY3JlZW4tc219IHB4ICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgLy8gLmxlYWZsZXQtdG9wXG4gIC8vIFx0Ji5sZWFmbGV0LXJpZ2h0XG4gIC8vIFx0XHR0b3A6IGF1dG9cbiAgLy8gXHRcdGJvdHRvbTogMFxuICAvLyBcdFx0bGVmdDogMFxuICAvLyBcdFx0cmlnaHQ6IDBcbiAgLy8gXHRcdHdpZHRoOiBhdXRvXG4gIC8vIFx0XHRoZWlnaHQ6IGF1dG9cbiAgLy8gXHRcdHBhZGRpbmc6IDFlbVxuXG4gIC8vIC5sZWFmbGV0LWNvbnRyb2wtbGF5ZXJzXG4gIC8vIFx0bGFiZWxcbiAgLy8gXHRcdGRpc3BsYXk6IGlubGluZS1ibG9ja1xuICAvLyBcdFx0dmVydGljYWwtYWxpZ246IHRvcFxuICAvLyBcdFx0cGFkZGluZy1yaWdodDogMWVtXG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBUQUJMRSA6ICN7JHNjcmVlbi14c30gcHggKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cykge31cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIE1PQklMRVAgOiAjeyRzY3JlZW4teHhzfSBweCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXh4cykge31cbiIsIiVidG4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogcHRyKDExcHgsICRmeikgcHRyKDIycHgsICRmeik7XG4gICAgdHJhbnNpdGlvbjogJHRyYW5zO1xuIFxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogJGJkcnM7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIGZvbnQtZmFtaWx5OiAkZmYxO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgPiBpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBmb250LXNpemU6IDEuMHJlbTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDByZW07XG5cbiAgICAgICAgJi5pY29uLWJlZm9yZSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuaWNvbi1hZnRlciB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAzO1xuICAgIH1cbn1cblxuLmJ0biB7XG4gICAgQGV4dGVuZCAlYnRuO1xuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAvKiBGVUxMIExBUkdFVVIgKi9cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICYuZnVsbC13aWR0aCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgLyogQk9VVE9OUyBST05EUyAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgJi5idG4tcm91bmQge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDByZW07XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgIC8qIERFRkFVTFQgKi9cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICYuYnRuLWRlZmF1bHQge1xuICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2wzO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbDMtZGFyaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgLyogREVGQVVMVCBPVVRMSU5FRCAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgJi5idG4tZGVmYXVsdC1vdXRsaW5lZCB7XG4gICAgICAgIGNvbG9yOiAkY29sMTtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGNvbDM7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbDMtZGFyaztcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgLyogREFSSyAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgJi5idG4tZGFyayB7XG4gICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcms7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcms7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgIC8qIERBUksgT1VUTElORUQgKi9cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICYuYnRuLWRhcmstb3V0bGluZWQge1xuICAgICAgICBjb2xvcjogJGRhcms7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRkYXJrO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sMjtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbDI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgLyogTElHSFQgKi9cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICYuYnRuLWxpZ2h0IHtcbiAgICAgICAgY29sb3I6ICRjb2x0ZXh0O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sMztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgLyogTElHSFQgT1VUTElORUQgKi9cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICYuYnRuLWxpZ2h0LW91dGxpbmVkIHtcbiAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sMjtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbDI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgLyogUFJJTUFSWSAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgJi5idG4tcHJpbWFyeSB7XG4gICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbDM7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbDMtZGFyaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgLyogUFJJTUFSWSBPVVRMSU5FRCAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgJi5idG4tcHJpbWFyeS1vdXRsaW5lZCB7XG4gICAgICAgIGNvbG9yOiAkY29sMjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbDM7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbDMtZGFyaztcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAvKiBTRUNPTkRBUlkgKi9cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICYuYnRuLXNlY29uZGFyeSB7XG4gICAgICAgIGNvbG9yOiAkY29sMjtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sNDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sMjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2w0LWRhcms7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgIC8qIEVOVE9VUkUgU0VDT05EQUlSRSAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgJi5idG4tc2Vjb25kYXJ5LW91dGxpbmVkIHtcbiAgICAgICAgY29sb3I6ICRjb2w1O1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbDU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogZGFya2VuKCRjb2w1LCAxMCUpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkY29sNSwgMTAlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgLyogU09VTElHTkUgKi9cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICYuYnRuLXVuZGVybGluZWQge1xuICAgICAgICBjb2xvcjogJGNvbDE7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkY29sMTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbDEsIDEwJSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCBkYXJrZW4oJGNvbDEsIDEwJSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgIC8qIEFOSU1BVElPTlMgKi9cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICYuYnRuLWJhbGFuY2Uge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgID4gaSB7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBiYWxhbmNlIDFzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5idG4tYmFsYW5jZS12ZXJ0aWNhbCB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgPiBpIHtcbiAgICAgICAgICAgICAgICBhbmltYXRpb246IHJlc3NvcnR2IDFzIGluZmluaXRlIGJvdGggZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgIC8qIEJUTiBMSU5LICovXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAmLmJ0bi1saW5rIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGNvbG9yOiAkY29sdGV4dDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGRhcms7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIEJPVVRPTiBBVkVDIFVORSBCQVJSRSBFTiBCQVMgQSBHQVVDSEUgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uYnRuX2JhciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNvbG9yOiAkY29sMztcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBmb250LWZhbWlseTogJGZmMjtcbiAgICBmb250LXNpemU6IHB0cigyMHB4LCAkZnopO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IHB0cig5cHgsICRmeik7XG4gICAgICAgIHdpZHRoOiBwdHIoMzBweCwgJGZ6KTtcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgICBtYXJnaW46IDAgcHRyKDlweCwgJGZ6KTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbDM7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkY29sMjtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sMjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuYnV0dG9uIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogUkVTUE9OU0lWRSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBYWFMgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14eHMpIHtcblxuICAgIFxuXG59XG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFhTICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHMpIHtcblxuICAgIFxuXG59XG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFNNICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcblxuICAgIFxuXG59XG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIE1EICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcblxuICAgIFxuXG59XG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIExHICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGcpIHtcblxuICAgIC5idG4ge1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDJyZW07XG4gICAgfVxuXG59XG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFhMICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teGwpIHtcblxuICAgIFxuXG59XG5cbiIsIi5icmVhZGNydW1icyB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgY29sb3I6ICM5QzlDOUM7XG5cbiAgICAuYnJlYWRjcnVtYi1uYXYge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgICAgIGNvbG9yOiAjOUM5QzlDO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMS41ZW07XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgID4gc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGNvbG9yOiAjOUM5QzlDO1xuICAgICAgICBmb250LWZhbWlseTogJGZmMTtcbiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICBmb250LXNpemU6IHB0ZSgxNHB4LCAkZnopO1xuXG4gICAgICAgICYuc2VwYXJhdG9yIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwLjVlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sMjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGNvbG9yOiAkY29sMTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmZjE7XG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZGFyayAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFJFU1BPTlNJVkUgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogTU9CSUxFIDogI3steHhzfSBweCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXh4cykge31cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIE1PQklMRSA6ICN7LXhzfSBweCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXhzKSB7fVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogVEFCTEVUIDogI3stc219IHB4ICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAuYnJlYWRjcnVtYnMge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFRBQkxFVCBQT1JUUkFJVCA6ICN7LW1kfSBweCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XG4gICAgLmJyZWFkY3J1bWJzIHtcbiAgICAgICAgLy8gcGFkZGluZzogMnJlbSAwIDJyZW0gMXJlbTtcbiAgICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBERVNLVE9QIDogI3stbGd9IHB4ICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGcpIHt9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBERVNLVE9QIDogI3steGx9IHB4ICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teGwpIHt9XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogU1RZTEVTIEdFTkVSQVVYICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbmlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xuICAgIEBleHRlbmQgLmJ0bjtcblxuICAgIEBleHRlbmQgLmJ0bi1kZWZhdWx0O1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG50ZXh0YXJlYSxcbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cInRlbFwiXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGNvbG9yOiAkY29sMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQ7XG4gICAgZm9udC1mYW1pbHk6ICRmZjE7XG4gICAgZm9udC1zaXplOiAxZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbDE7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIHBhZGRpbmc6IDAuNzVlbTtcbiAgICBtYXJnaW46IDAgMCAwLjgxMjVlbSAwO1xufVxuXG5zZWxlY3Qge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBjb2xvcjogJGRhcms7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0O1xuICAgIGZvbnQtZmFtaWx5OiAkZmYxO1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbDE7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIHBhZGRpbmc6IDAuNzVlbTtcbiAgICBtYXJnaW46IDAgMCAwLjgxMjVlbSAwO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblxuICAgIG9wdGlvbiB7XG4gICAgICAgIGNvbG9yOiAkZGFyaztcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcXGU5MWRcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHJpZ2h0OiAxcmVtO1xuICAgICAgICB6LWluZGV4OiAyMDA7XG4gICAgfVxufVxuXG4uc2VsZWN0X2NvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtZmFtaWx5OiAkZmZpY29uO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTFkXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGZvbnQtc2l6ZTogcHRyKDZweCwgJGZ6KTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHJpZ2h0OiAxcmVtO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICB9XG5cbiAgICBzZWxlY3Qge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIHdpZHRoOiBwdGUoMjRweCwgJGZ6KSAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogcHRlKDI0cHgsICRmeikgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgcHRlKDEwcHgsICRmeikgMCAwO1xuXG4gICAgLy8gLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lXG59XG5cbnNlbGVjdCB7XG4gICAgb3B0aW9uIHtcbiAgICAgICAgY29sb3I6ICRjb2wzO1xuICAgIH1cbn1cblxubGFiZWwge1xuICAgIGNvbG9yOiAkY29sMTtcbiAgICBmb250LWZhbWlseTogJGZmMTtcbiAgICBmb250LXNpemU6IHB0ZSgxNnB4LCAkZnopO1xuICAgIGxpbmUtaGVpZ2h0OiBwdGUoMTlweCwgJGZ6KTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuaW5wdXQge1xuICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXG4gICAgJjotbW96LXBsYWNlaG9sZGVyLFxuICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICRjb2wzO1xuICAgICAgICBmb250LWZhbWlseTogJGZmMTtcbiAgICAgICAgZm9udC1zaXplOiBwdGUoMTZweCwgJGZ6KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHB0ZSgxOXB4LCAkZnopO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbn1cblxudGV4dGFyZWEge1xuICAgIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBNT1RFVVJTIERFIFJFQ0hFUkNIRSBERSBQT1NUUyAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5mb3JtLWNvbnRhaW5lciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG5cbiAgICBmb3JtIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggNDBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1OHB4O1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgICAgICB9XG5cbiAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1OHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA1OHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dFt0eXBlPSd0ZXh0J10ge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDU4cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDU4cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmFjZi1mb3JtLXN1Ym1pdCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBNT1RFVVJTIERFIFJFQ0hFUkNIRSBTSVQgLyBBVVRSRVMgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ubW90ZXVyLXJlY2hlcmNoZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDU7XG5cbiAgICAuZm9ybS1maWVsZC1yb3cge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIDAgMC4yNWVtIDA7XG5cbiAgICAgICAgLmZvcm0tZmllbGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9ybS1maWVsZCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNzVlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRsaWdodCwgMC42KTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZm9ybS1maWVsZC1zdWJtaXQge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDFlbSAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5tb3RldXItaGViZXJnZW1lbnRzIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFNVUkNIQVJHRSBXUEZPUk1TICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5kaXYud3Bmb3Jtcy1jb250YWluZXItZnVsbCB7XG4gICAgLndwZm9ybXMtZm9ybSB7XG4gICAgICAgIC53cGZvcm1zLWZpZWxkLWxhYmVsIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sMSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxZW0gIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC53cGZvcm1zLWZpZWxkIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cblxuICAgICAgICBidXR0b25bdHlwZT1zdWJtaXRdIHtcbiAgICAgICAgICAgIEBleHRlbmQgLmJ0bjtcblxuICAgICAgICAgICAgQGV4dGVuZCAuYnRuLWRlZmF1bHQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi53cGZvcm1zLWNvbnRhaW5lciB7XG4gICAgLndwZm9ybXMtZmllbGQtbGFiZWwge1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIH1cblxuICAgIC53cGZvcm1zLWZpZWxkLWxhYmVsLWlubGluZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIH1cbn1cblxuLndwZm9ybXMtbGFiZWwtaGlkZSxcbi53cGZvcm1zLXN1YmxhYmVsLWhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi53cGZvcm1zLWZpZWxkLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IC1tb3otZmxleDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgICBkaXNwbGF5OiAtby1mbGV4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4ud3Bmb3Jtcy1maWVsZCB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWdyb3c6IDA7XG5cbiAgICAmLmhhbGYge1xuICAgICAgICBmbGV4LWJhc2lzOiA0OCU7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0JTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIENvbnRhY3QgRm9ybSA3ICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmZvcm0ge1xuXG4gICAgJi1ncm91cCB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgoZmxleCwgcm93LCB3cmFwLCBzcGFjZS1iZXR3ZWVuLCBmbGV4LXN0YXJ0KTtcbiAgICB9XG5cbiAgICAmLWZpZWxkIHtcbiAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbDI7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogLjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmLmZvcm0taGFsZiB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgICAgICAgICAvLyBmbGV4LWJhc2lzOiAxMDAlO1xuXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAuNXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IC41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5mb3JtLXR3by10aGlyZHMge1xuICAgICAgICAgICAgZmxleC1iYXNpczogY2FsYygxMDAlIC8gMS41KTtcbiAgICAgICAgICAgIC8vIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZm9ybS1vbmUtdGhpcmQge1xuICAgICAgICAgICAgZmxleC1iYXNpczogY2FsYygxMDAlIC8gMyk7XG4gICAgICAgICAgICAvLyBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZm9ybS1zdWJtaXQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIENPTlRBQ1QgRk9STSA3ICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLndwY2Y3LWZvcm0ge1xuICAgICYuc2VudCB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgei1pbmRleDogOTk5ODtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGxpZ2h0LCAuODUpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ud3BjZjctcmVzcG9uc2Utb3V0cHV0IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XG4gICAgei1pbmRleDogOTk5OTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuXG4gICAgJi53cGNmNy1tYWlsLXNlbnQtb2sge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzk4ZjE0O1xuICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkYmRycztcbiAgICB9XG5cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFJFQ0FQVENIQSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5ncmVjYXB0Y2hhLWJhZGdlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBSRVNQT05TSVZFICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIERFU0tUT1AgOiAjeyRzY3JlZW4tbGd9IHB4ICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tbGcpIHt9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBUQUJMRVRQIDogI3skc2NyZWVuLW1kfSBweCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLW1kKSB7fVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogVEFCTEVUIDogI3skc2NyZWVuLXNtfSBweCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtKSB7fVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogVEFCTEUgOiAjeyRzY3JlZW4teHN9IHB4ICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMpIHtcbiAgICAubW90ZXVyLXJlY2hlcmNoZSB7XG4gICAgICAgICYubW90ZXVyLWhlYmVyZ2VtZW50cyB7XG4gICAgICAgICAgICBmb3JtIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDFlbTtcblxuICAgICAgICAgICAgICAgIC5mb3JtLWxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjMyNWVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4gICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICAgIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuICAgIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuICAgIHNlbGVjdCB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDNlbTtcbiAgICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBNT0JJTEVQIDogI3skc2NyZWVuLXh4c30gcHggKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14eHMpIHtcbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgICBpbnB1dFt0eXBlPVwidGVsXCJdLFxuICAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4gICAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbiAgICBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbiAgICBzZWxlY3Qge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLmZvcm0tZmllbGQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIENBUlRFIElOVEVSQUNUSVZFICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIEFDQ1VFSUwgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBQQUdFIENBUlRFICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI21hcCB7XG4gICAgaGVpZ2h0OiA1MHZoO1xufVxuXG4vKiBDb250ZW5ldXIgTWFwICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmNvbnRlbnQtbWFwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAvKiBPbiBjYWNoZSBsYSBiYXJyZSBkZSBwYXJ0YWdlICovXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAuc2hhcmVkYWRkeSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLyogQ29udGVuZXVyIE1hcCAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgI21hcCB7XG4gICAgICAgIGhlaWdodDogODB2aDtcbiAgICB9XG5cbiAgICAvKiBGaWx0cmVzICovXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAubWFwLWZpbHRyZXMge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMHB4O1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbDI7XG4gICAgICAgIG1heC13aWR0aDogMzUwcHg7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggNTBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMHB4IDAgMHB4IDQ1cHg7XG4gICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDMwcHggcmdiYSgkZGFyaywgMC4zKTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB6LWluZGV4OiAyOTtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB3aGl0ZTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJGJhc2UtcGFkZGluZztcblxuICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDU4cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDU4cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkbGlnaHQsIDAuMjUpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NWVtO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICAgICAgICAgIG9wdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBJTkZPV0lORE9XIC8gUE9QVVAgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIEdPT0dMRSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5nbS1zdHlsZS1pdyB7XG4gICAgcGFkZGluZzogJGJhc2UtcGFkZGluZztcblxuICAgIC50aXRsZSB7XG4gICAgICAgIHBhZGRpbmc6ICRiYXNlLXBhZGRpbmcgMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0O1xuICAgICAgICBjb2xvcjogJGNvbDE7XG4gICAgICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAvLyBib3JkZXItcmFkaXVzOiAwIDAgMjBweCAyMHB4XG4gXG4gICAgfVxuXG4gICAgLmltYWdlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWluLWhlaWdodDogMTQwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGltZ0NlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZy10b3A6ICRiYXNlLXBhZGRpbmc7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogJGNvbDE7XG4gICAgfVxuXG4gICAgLmxpbmsge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogT1NNIC8gSUdOIC8gTEVBRkxFVCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5sZWFmbGV0LXBvcHVwLWNvbnRlbnQge1xuICAgIG1hcmdpbjogJGJhc2UtcGFkZGluZztcblxuICAgIC5tYXBfcG9wdXBfY29udGVudCB7XG4gICAgICAgICZfdGl0cmUge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmZjI7XG4gICAgICAgICAgICBjb2xvcjogJGRhcms7XG4gICAgICAgICAgICBmb250LXNpemU6IHB0ZSgxOHB4LCAkZnopO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogJGJhc2UtcGFkZGluZyAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9pbWFnZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAyMHZoO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaW1nQ2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl90eXBlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX3RleHRlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sMTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcHRlKDE0cHgsICRmeik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucG9pIHtcbiAgICAgICAgICAgICYtYWRyZXNzZSB7fVxuXG4gICAgICAgICAgICAmLWxpbmtzIHtcbiAgICAgICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICAgICAgJiArICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1ob3JhaXJlcyB7XG4gICAgICAgICAgICAgICAgJi10aXRyZSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBDT05UUk9MUyAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ubGVhZmxldCB7XG4gICAgJi10b3Age1xuICAgICAgICB0b3A6IDUwcHggIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogUkVTUE9OU0lWRSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBYWFMgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14eHMpIHt9XG5cbiAgICBcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFhTICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHMpIHt9XG5cbiAgICBcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFNNICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcblxuICAgIC5sZWFmbGV0LXRvcCB7XG4gICAgICAgIHRvcDogMCAhaW1wb3J0YW50O1xuICAgIH1cblxufVxuXG4gICAgXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBNRCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7fVxuXG4gICAgXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBMRyAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnKSB7fVxuXG4gICAgXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBYTCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXhsKSB7fVxuXG4gICAgXG4iLCIuc2VhcmNoLWNvbnRlbnQge1xuICBhcnRpY2xlIHtcbiAgICA+IGEge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJGJhc2UtcGFkZGluZztcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sMTtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRiYXNlLW1hcmdpbjtcblxuICAgICAgLnBvc3QtaW1hZ2Uge1xuICAgICAgICBmbGV4LWJhc2lzOiAyMCU7XG4gICAgICB9XG5cbiAgICAgIC5wb3N0LXRpdGxlIHtcbiAgICAgICAgZmxleC1iYXNpczogODAlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRiYXNlLXBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIud3NwLXBhZ2VzLWxpc3Qge1xuICA+IGxpIHtcbiAgICA+IC5jaGlsZHJlbiB7XG4gICAgICBtYXJnaW4tbGVmdDogMmVtO1xuXG4gICAgICA+IGxpIHtcbiAgICAgICAgPiBhIHtcbiAgICAgICAgICBjb2xvcjogJGNvbDE7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sMjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA+IC5jaGlsZHJlbiB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ud3NwLXBvc3RzLWxpc3Qge1xuICA+IGxpIHtcbiAgICAud3NwLXBvc3RzLWxpc3Qge1xuICAgICAgbWFyZ2luLWxlZnQ6IDJlbTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogU09NTUFJUkUgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNvbW1haXJlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDFlbSAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgLnNvbW1haXJlLXBhZ2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLyA0KTtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIHBhZGRpbmc6IDFlbTtcblxuICAgIC5zb21tYWlyZS1pbm5lciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAuc29tbWFpcmUtaW1hZ2Uge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICBpbWcge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zb21tYWlyZS10aXRsZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbDEsIDAuNzUpO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICBoMiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgb3BhY2l0eTogMC43NTtcbiAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zO1xuICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgICBmb250LXNpemU6IDNlbTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAuc29tbWFpcmUtdGl0bGUge1xuICAgICAgICBoMiB7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBTVVJDSEFSR0UgREVTIFNUWUxFUyBERSBDQVJPVVNFTCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBTTElDSyBDQVJPVVNFTCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogQlVMTEVUUyAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zbGljay1kb3RzIHtcblx0Ym90dG9tOiBwdHIoLTIycHgsICRmeik7XG5cdHBhZGRpbmc6IDA7XG5cblx0bGkge1xuXHRcdHdpZHRoOiBhdXRvO1xuXHRcdGhlaWdodDogYXV0bztcblxuXHRcdGJ1dHRvbiB7XG5cdFx0XHR3aWR0aDogcHRyKDEycHgsICRmeik7XG5cdFx0XHRoZWlnaHQ6IHB0cigxMnB4LCAkZnopO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogcHRyKDEycHgsICRmeik7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sODtcblxuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCYuc2xpY2stYWN0aXZlIHtcblx0XHRcdGJ1dHRvbiB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2wzO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4vKiBGTEVDSEVTICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNsaWRlci1hcnJvd3Mge1xuXHRAaW5jbHVkZSBjZW50ZXJFbCgpO1xuXHR6LWluZGV4OiA0O1xufVxuXG4uc2xpY2stYXJyb3cge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR3aWR0aDogcHRyKDQwcHgsICRmel9sZyk7XG5cdGhlaWdodDogcHRyKDQwcHgsICRmel9sZyk7XG5cdGxpbmUtaGVpZ2h0OiA0MHB4O1xuXG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcblxuXHRmb250LXNpemU6IDFyZW07XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0ei1pbmRleDogMTA7XG5cblx0Y29sb3I6ICRjb2x0ZXh0O1xuXG5cdGkge1xuXHRcdGZvbnQtc2l6ZTogcHRyKDI0cHgsICRmeik7XG5cdH1cblxuXHQmOmJlZm9yZSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdCY6aG92ZXIge1xuXHRcdGNvbG9yOiAkY29sMztcblx0fVxufVxuXG4uc2xpY2stcHJldiB7XG5cdGxlZnQ6IDBweDtcbn1cblxuLnNsaWNrLW5leHQge1xuXHRyaWdodDogMHB4O1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFJFU1BPTlNJVkUgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogWFhTICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHhzKSB7XG5cblx0XG5cbn1cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogWFMgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14cykge1xuXG5cdFxuXG59XG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFNNICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcblxuXHQuc2xpZGVyLWFycm93cyB7XG5cdFx0dG9wOiBjYWxjKDUwJSArICN7JGhkcl9ofSAvIDIpO1xuXHR9XG5cbn1cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogTUQgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xuXG5cdC5zbGlkZXItYXJyb3dzIHtcblx0XHR0b3A6IGNhbGMoNTAlKTtcblx0fVxuXG59XG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIExHICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGcpIHtcblxuXHQuc2xpY2stYXJyb3cge1xuXHRcdHdpZHRoOiBwdHIoNjBweCwgJGZ6X2xnKTtcblx0XHRoZWlnaHQ6IHB0cig2MHB4LCAkZnpfbGcpO1xuXG5cdFx0aSB7XG5cdFx0XHRmb250LXNpemU6IHB0cigzMnB4LCAkZnopO1xuXHRcdH1cblx0fVxuXG5cdC5zbGljay1wcmV2IHtcblx0XHRsZWZ0OiAtMXJlbTtcblx0fVxuXG5cdC5zbGljay1uZXh0IHtcblx0XHRyaWdodDogLTFyZW07XG5cdH1cbn1cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogWEwgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14bCkge1xuXG5cdFxuXG59XG5cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogTVVSIFNPQ0lBTCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBWYXJpYWJsZXMgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4kbmJQZXJSb3c6IDQ7XG4kbmJDb2xzOiAyO1xuJHNwYWNlOiAxNnB4O1xuXG4uc29jaWFsd2FsbCB7XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgIC8qIFRFTVBMQVRFUyAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgJl9fbGlzdCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgICAgICAgZGlzcGxheTogLW1vei1mbGV4O1xuICAgICAgICAgICAgZGlzcGxheTogLW1zLWZsZXg7XG4gICAgICAgICAgICBkaXNwbGF5OiAtby1mbGV4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zb2NpYWx3YWxsLWl0ZW0ge1xuICAgICAgICAgICAgZmxleC1iYXNpczogY2FsYygxMDAlIC8gI3skbmJQZXJSb3d9KTtcbiAgICAgICAgICAgIGhlaWdodDogY2FsYygxMDB2dyAvICN7JG5iUGVyUm93fSAtIDE2cHgpO1xuICAgICAgICAgICAgcGFkZGluZzogJHNwYWNlIC8gMjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgICAgICAtbW96LWJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgkZGFyaywgMC41KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJhciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAub3ZlciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiAtbW96LWZsZXg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogLW1zLWZsZXg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogLW8tZmxleDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2wxLCAwLjc1KTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxZW07XG5cbiAgICAgICAgICAgICAgICAvLyBvcGFjaXR5OiAwXG4gICAgICAgICAgICAgICAgLy8gdmlzaWJpbGl0eTogaGlkZGVuXG4gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAkY3ViaWMyO1xuICAgICAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogJGN1YmljMjtcbiAgICAgICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogJGN1YmljMjtcbiAgICAgICAgICAgICAgICAtby10cmFuc2l0aW9uOiAkY3ViaWMyO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246ICRjdWJpYzI7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmZjE7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXG4gICAgICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFucztcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC40cztcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnBpY3RvX211ciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjRzO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5zb2NpYWx3YWxsLWl0ZW0tZmFjZWJvb2sge1xuICAgICAgICAgICAgICAgIC5vdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzM2NTg5OTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYmFyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzM2NTg5OTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc29jaWFsd2FsbC1pdGVtLXR3aXR0ZXIge1xuICAgICAgICAgICAgICAgIC5vdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbDE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmJhciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2wxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5zb2NpYWx3YWxsLWl0ZW0teW91dHViZSB7XG4gICAgICAgICAgICAgICAgLm92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkYwMDAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5iYXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkYwMDAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5zb2NpYWx3YWxsLWl0ZW0taW5zdGFncmFtIHtcbiAgICAgICAgICAgICAgICAub3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGJhY2tncm91bmQ6IHJnYigyNDgsMTk2LDI0KVxuICAgICAgICAgICAgICAgICAgICAvLyBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgyNDgsMTk2LDI0LDEpIDAlLCByZ2JhKDIzNiwzNCw3NywxKSAyNSUsIHJnYmEoMjU1LDAsMCwxKSA1MCUsIHJnYmEoMTgwLDQ3LDE1MSwxKSA3NSUsIHJnYmEoNjUsNjAsMjEzLDEpIDEwMCUpXG4gICAgICAgICAgICAgICAgICAgIC8vIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDI0OCwxOTYsMjQsMSkgMCUsIHJnYmEoMjM2LDM0LDc3LDEpIDI1JSwgcmdiYSgyNTUsMCwwLDEpIDUwJSwgcmdiYSgxODAsNDcsMTUxLDEpIDc1JSwgcmdiYSg2NSw2MCwyMTMsMSkgMTAwJSlcbiAgICAgICAgICAgICAgICAgICAgLy8gYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDI0OCwxOTYsMjQsMSkgMCUsIHJnYmEoMjM2LDM0LDc3LDEpIDI1JSwgcmdiYSgyNTUsMCwwLDEpIDUwJSwgcmdiYSgxODAsNDcsMTUxLDEpIDc1JSwgcmdiYSg2NSw2MCwyMTMsMSkgMTAwJSlcbiAgICAgICAgICAgICAgICAgICAgLy8gZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj1cIiNmOGM0MThcIixlbmRDb2xvcnN0cj1cIiM0MTNjZDVcIixHcmFkaWVudFR5cGU9MSlcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkZGFyaywgMC45KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYmFyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiKDI0OCwgMTk2LCAyNCk7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDI0OCwgMTk2LCAyNCwgMSkgMCUsIHJnYmEoMjM2LCAzNCwgNzcsIDEpIDI1JSwgcmdiYSgyNTUsIDAsIDAsIDEpIDUwJSwgcmdiYSgxODAsIDQ3LCAxNTEsIDEpIDc1JSwgcmdiYSg2NSwgNjAsIDIxMywgMSkgMTAwJSk7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDI0OCwgMTk2LCAyNCwgMSkgMCUsIHJnYmEoMjM2LCAzNCwgNzcsIDEpIDI1JSwgcmdiYSgyNTUsIDAsIDAsIDEpIDUwJSwgcmdiYSgxODAsIDQ3LCAxNTEsIDEpIDc1JSwgcmdiYSg2NSwgNjAsIDIxMywgMSkgMTAwJSk7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgyNDgsIDE5NiwgMjQsIDEpIDAlLCByZ2JhKDIzNiwgMzQsIDc3LCAxKSAyNSUsIHJnYmEoMjU1LCAwLCAwLCAxKSA1MCUsIHJnYmEoMTgwLCA0NywgMTUxLCAxKSA3NSUsIHJnYmEoNjUsIDYwLCAyMTMsIDEpIDEwMCUpO1xuICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPVwiI2Y4YzQxOFwiLGVuZENvbG9yc3RyPVwiIzQxM2NkNVwiLEdyYWRpZW50VHlwZT0xKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmLm5vaW1nIHtcbiAgICAgICAgICAgICAgICAub3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIC8vIG9wYWNpdHk6IDFcbiAgICAgICAgICAgICAgICAgICAgLy8gdmlzaWJpbGl0eTogdmlzaWJsZVxuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAucGljdG9fbXVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAvKiBHUklEICovXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAmX19ncmlkIHtcblxuICAgICAgICAvKiBPTkdMRVRTICovXG4gICAgICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgICAgIC50YWJzIHtcbiAgICAgICAgICAgIG1hcmdpbjogcHRlKDMwcHgsICRmeikgMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAudGFiIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHB0cig0MHB4LCAkZnopO1xuICAgICAgICAgICAgICAgIGhlaWdodDogcHRyKDQwcHgsICRmeik7XG5cbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbDU7XG5cbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHB0ZSg4cHgsICRmeik7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2w1O1xuXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwZW07XG5cbiAgICAgICAgICAgICAgICA+IGkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBwdHIoNDBweCwgJGZ6KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUsXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2wyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8qIFBhciByZXNlYXUgKi9cbiAgICAgICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAgICAgLnNvY2lhbHdhbGwtbGlzdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAuc29jaWFsd2FsbC1pdGVtIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMXJlbSAxcmVtIDFyZW07XG5cbiAgICAgICAgICAgICAgICAmX19pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDNweCA2cHggcmdiYSgkZGFyaywgLjIpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX2ltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1Ni4yNXZ3O1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG9iamZpdCgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogcHRyKDQwcHgsICRmeikgMXJlbSAxcmVtIDFyZW07XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCAkY29sNTtcblxuICAgICAgICAgICAgICAgICAgICAmX19waWN0byB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogcHRyKDQwcHgsICRmeik7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHB0cig0MHB4LCAkZnopO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAzcHggNnB4IHJnYmEoJGRhcmssIC4yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHB0cig0MHB4LCAkZnopO1xuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHB0cig0MHB4LCAkZnopO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBwdHIoMTZweCwgJGZ6KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sMTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbDI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICZfX3RleHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBwdHIoMTZweCwgJGZ6KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFJFU1BPTlNJVkUgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogWFhTICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHhzKSB7XG5cbiAgICBcblxufVxuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBYUyAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXhzKSB7XG5cbiAgICBcblxufVxuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBTTSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG5cbiAgICBcblxufVxuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBNRCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XG5cbiAgICAuc29jaWFsd2FsbCB7XG4gICAgICAgICZfX2dyaWQge1xuICAgICAgICAgICAgLnNvY2lhbHdhbGwtbGlzdCB7XG4gICAgICAgICAgICAgICAgLnNvY2lhbHdhbGwtaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgICZfX2ltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYyg1Ni4yNXZ3IC8gMik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogTEcgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZykge1xuXG4gICAgLnNvY2lhbHdhbGwge1xuICAgICAgICAmX19ncmlkIHtcbiAgICAgICAgICAgIC5zb2NpYWx3YWxsLWxpc3Qge1xuICAgICAgICAgICAgICAgIC5zb2NpYWx3YWxsLWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICAmX19pbWFnZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoNTYuMjV2dyAvIDQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFhMICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teGwpIHtcblxuICAgIFxuXG59XG5cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogR0FMTEVSSUVTLCBNT1NBSVFVRVMsIEVUQyAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5zZWN0aW9uIHtcblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgLyogTU9TQUlRVUUgKi9cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICYubW9zYWlxdWUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLm1vc2FpcXVlIHtcblxuICAgICAgICAgICAgJl9fY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19iZyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbDI7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgb2JqZml0KCk7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IC4xNTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX3RpdGxlX2NvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAxcmVtO1xuICAgICAgICAgICAgICAgIGdyaWQtYXJlYTogMS8xLzEvMztcblxuICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9faW1hZ2Uge1xuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG9iamZpdCgpO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogLjI1cmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuaW1hZ2UtMSB7XG4gICAgICAgICAgICAgICAgICAgIGdyaWQtYXJlYTogMi8xLzIvMztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmltYWdlLTIge1xuICAgICAgICAgICAgICAgICAgICBncmlkLWFyZWE6IDMvMS8zLzI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5pbWFnZS0zIHtcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC1hcmVhOiAzLzIvMy8zO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuaW1hZ2UtNCB7XG4gICAgICAgICAgICAgICAgICAgIGdyaWQtYXJlYTogNC8xLzQvMjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmltYWdlLTUge1xuICAgICAgICAgICAgICAgICAgICBncmlkLWFyZWE6IDQvMi80LzM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19tb3JlIHtcbiAgICAgICAgICAgICAgICBncmlkLWFyZWE6IDUvMS81LzM7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbDM7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAuMjVyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZzogLjVyZW0gMDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgoZmxleCwgY29sdW1uLCB3cmFwLCBjZW50ZXIsIGNlbnRlcik7XG5cbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmZjI7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBSRVNQT05TSVZFICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFhYUyAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXh4cykge1xuXG4gICAgXG5cbn1cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogWFMgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14cykge1xuXG4gICAgXG5cbn1cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogU00gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuXG4gICAgc2VjdGlvbi5tb3NhaXF1ZSB7XG4gICAgICAgIC5tb3NhaXF1ZSB7XG4gICAgICAgICAgICAmX19jb250YWluZXIge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoMywgMWZyKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fdGl0bGVfY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBncmlkLWFyZWE6IDEvMS8yLzM7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleChmbGV4LCBjb2x1bW4sIG5vd3JhcCwgY2VudGVyLCBjZW50ZXIpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19pbWFnZSB7XG4gICAgICAgICAgICAgICAgJi5pbWFnZS0xIHtcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC1hcmVhOiAxLzMvMy81O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLmltYWdlLTIge1xuICAgICAgICAgICAgICAgICAgICBncmlkLWFyZWE6IDIvMS8zLzI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYuaW1hZ2UtMyB7XG4gICAgICAgICAgICAgICAgICAgIGdyaWQtYXJlYTogMy8xLzQvMjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5pbWFnZS00IHtcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC1hcmVhOiAyLzIvNC8zO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLmltYWdlLTUge1xuICAgICAgICAgICAgICAgICAgICBncmlkLWFyZWE6IDMvNC80LzU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19tb3JlIHtcbiAgICAgICAgICAgICAgICBncmlkLWFyZWE6IDMvMy80LzQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogTUQgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xuXG4gICAgc2VjdGlvbi5tb3NhaXF1ZSB7XG4gICAgICAgIC5tb3NhaXF1ZSB7XG4gICAgICAgICAgICAmX19tb3JlIHtcbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDRyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxufVxuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBMRyAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnKSB7XG5cbiAgICBzZWN0aW9uLm1vc2FpcXVlIHtcbiAgICAgICAgcGFkZGluZzogcHRyKDE1MHB4LCAkZnpfbGcpIDA7XG4gICAgfVxufVxuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBYTCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXhsKSB7XG5cbiAgICBcblxufVxuXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFNFQ1RJT05TIEZMRVhJQkxFUyAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAycmVtIDA7XG5cbiAgICAuc2VjdGlvbl90aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcHRlKDQwcHgsICRmel94eHMpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0dmg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sMztcbiAgICAgICAgfVxuXG4gICAgICAgICYuY29sMSB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbDE7XG4gICAgICAgIH1cblxuICAgICAgICAmLmNvbDIge1xuICAgICAgICAgICAgY29sb3I6ICRjb2wyO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jb2wzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sMztcbiAgICAgICAgfVxuXG4gICAgICAgICYuY29sNCB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbDQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLmNvbDUge1xuICAgICAgICAgICAgY29sb3I6ICRjb2w1O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNlY3Rpb25fc3VidGl0bGUge1xuICAgICAgICBjb2xvcjogJGNvbDE7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZmYxO1xuICAgICAgICBmb250LXNpemU6IHB0ZSgxNnB4LCAkZnopO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIH1cblxuICAgICYuY29sMSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2wxO1xuXG4gICAgICAgIC5zZWN0aW9uX3RpdGxlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgIFxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgJi5jb2wyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbDI7XG4gICAgfVxuXG4gICAgJi5jb2wzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbDM7XG4gICAgfVxuXG4gICAgJi5jb2w0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbDQ7XG4gICAgfVxuXG4gICAgJi5jb2w1IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbDU7XG4gICAgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAvKiBQQVRURVJOUyAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgJi5wYXR0ZXJuIHtcbiAgICB9XG5cbiAgICAmLnBhdHRlcm4tbGVmdCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IHB0cigyNjZweCwgJGZ6KTtcbiAgICAgICAgICAgIGhlaWdodDogcHRyKDQ3NXB4LCAkZnopO1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICAgICAgb3BhY2l0eTogLjI1O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5wYXR0ZXJuLXJpZ2h0IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IHB0cigxNjhweCwgJGZ6KTtcbiAgICAgICAgICAgIGhlaWdodDogcHRyKDM4N3B4LCAkZnopO1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgLyogVElUTEUgU1VSIExFIEJBTkRFQVUgKi9cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICYudGl0bGUge1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC5jb2xfdGl0bGUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoJGRhcmssIC40KTtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTJyZW0pO1xuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0ycmVtKTtcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0ycmVtKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0ycmVtKTtcblxuICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiBwdHIoMTJweCwgJGZ6KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgLyogQkFOREVBVSAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgJi5iYW5kZWF1IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBoZWlnaHQ6IDIwdmg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5iYW5kZWF1IHtcbiAgICAgICAgICAgICZfX2ltYWdlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBvYmpmaXQoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyRWwoKTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxMDAwO1xuXG4gICAgICAgICAgICAgICAgLnBhZ2UtdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fdGFicyB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxMDIxO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19zbGlkZXIge1xuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgICAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgIC8qIFNJTkdMRSBQT1NUIFRIVU1CTkFJTCAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgJi5wb3N0X3RodW1ibmFpbCB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xNnZoO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDM7XG5cbiAgICAgICAgLnBvc3RfdGh1bWJuYWlsX2ltYWdlIHtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDI4dmg7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG9iamZpdDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNsaWRlci1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgLyogVEVYVEUgSU1BR0UgVEVYVEUgKi9cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICYudHh0LWltZyxcbiAgICAmLmltZy10eHQge1xuICAgICAgICBwYWRkaW5nOiA0dmggMDtcblxuICAgICAgICAudHh0IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgLy8gcGFkZGluZy1yaWdodDogY2FsYygxMDAlIC8gMTIpXG5cbiAgICAgICAgICAgIC50ZXh0IHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucGF0dGVybiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxNSUpO1xuICAgICAgICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTUlKTtcbiAgICAgICAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTUlKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTUlKTtcblxuICAgICAgICAgICAgICAgICAgICBwYXRoIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHJnYmEoJGNvbDMsIDAuNSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaW1nIHtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgb2JqZml0O1xuXG4gICAgICAgICAgICAgICAgLy8gbWF4LWhlaWdodDogY2FsYyg3NSUgKyAxMXZoKVxuICAgICAgICAgXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wYXR0ZXJuIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgLyogVEVYVEUgTEFSR0UgKi9cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICYudHh0LWxhcmdlIHtcbiAgICAgICAgcGFkZGluZzogNHZoIDA7XG4gICAgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAvKiBJTUFHRSBTRVVMRSBTVVIgVE9VVEUgTEEgTEFSR0VVUiAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgJi5pbWFnZV9vbmx5IHtcbiAgICAgICAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAtbW96LWJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICAgICAgbWluLWhlaWdodDogNTB2aDtcbiAgICAgICAgbWF4LWhlaWdodDogNjB2aDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG9iakZpdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgZmxleChmbGV4LCBjb2x1bW4sIG5vd3JhcCwgY2VudGVyLCBmbGV4LXN0YXJ0KTtcblxuICAgICAgICAgICAgcGFkZGluZzogMTB2aCAxcmVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNi44NGRlZywgcmdiYSgkZGFyaywgMC40NykgMCUsIHJnYmEoMjEsIDIxLCAyMSwgMCkgMTAwJSk7XG5cbiAgICAgICAgICAgIC5zZWN0aW9uX3RpdGxlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBodG1sLmlvcyAmIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG5cbiAgICAgICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgLyogU0VDVElPTlMgRCdVTiBBUlRJQ0xFICovXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAmLnBvc3Rfc2VjdGlvbnMge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbjogNHZoIDA7XG5cbiAgICAgICAgYm9keS5wYWdlLXRlbXBsYXRlLXNlbWluYWlyZXMgJiB7XG4gICAgICAgICAgICAuY2FwYWNpdGVzIHtcbiAgICAgICAgICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wYXR0ZXJuIHtcbiAgICAgICAgICAgICYudG9tYXRlLW9pZ25vbiB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkaW1hZ2VQYXRoICsgXCJ0b21hdGUtb2lnbm9uLmpwZ1wiKTtcbiAgICAgICAgICAgICAgICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgICAgICAtbW96LWJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zaW5nbGVfdGl0bGUge1xuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8qIChzZW1pbmFpcmVzKSAqL1xuICAgICAgICAuY2FwYWNpdGUsXG4gICAgICAgIC5kaXNwb25pYmlsaXRlcyB7XG4gICAgICAgICAgICAmX3RpdGxlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbDI7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmZjI7XG4gICAgICAgICAgICAgICAgLy8gZm9udC1zaXplOiAxLjVlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl90ZXh0ZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRkYXJrO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZmYxO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLyogKGNvbnRhY3QpICovXG4gICAgICAgIC5jb29yZG9ubmVlcyB7XG4gICAgICAgICAgICAuZGVzaWduYXRpb24sXG4gICAgICAgICAgICAuaG9yYWlyZXNfdGl0bGUge1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZmYyO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2wyO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5kZXNpZ25hdGlvbiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5ob3JhaXJlc190aXRsZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRlbCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2wxO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZmYxO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZGFyaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgIC8qIEJSQU5DSEVNRU5UIERFIFBBR0UgKi9cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICYuYnJhbmNoZXBhZ2Uge1xuICAgICAgICBwYWRkaW5nOiA0dmggNHZ3O1xuXG4gICAgICAgIC5wYWdlcyB7XG4gICAgICAgICAgICAvKiBUZW1wbGF0ZSBJQ09OUyAqL1xuICAgICAgICAgICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAgICAgICAgICYuaWNvbnMge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgoZmxleCwgcm93LCB3cmFwLCBmbGV4LXN0YXJ0LCBzdHJldGNoKTtcblxuICAgICAgICAgICAgICAgIG1hcmdpbjogNHZoIDR2dztcblxuICAgICAgICAgICAgICAgIC5wYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxdmggMDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbSAwO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0Q4RDhEODtcblxuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgoZmxleCwgY29sdW1uLCBub3dyYXAsIHNwYWNlLWJldHdlZW4sIGNlbnRlcik7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sNDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA0ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRkYXJrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAvKiBHTUFQICovXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAmLmdtYXAge1xuICAgICAgICAuZmlsdGVyc19jb2wge1xuICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLmZpbHRlcnNfY29udGFpbmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDJyZW0gMXJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2wzO1xuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB6LWluZGV4OiAxNDA0O1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGxpbmVhciwgdHJhbnNmb3JtIC40cyAkY3ViaWN0cmFucztcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSguOSk7XG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoLjkpO1xuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoLjkpO1xuICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSguOSk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC45KTtcblxuICAgICAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGxpZ2h0LDAuNTIpO1xuXG4gICAgICAgICAgICAgICAgb3B0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRkYXJrO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRkYXJrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYm9keS5tYXAtc2VhcmNoLW9wZW4gJiB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19jbG9zZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmxpc3RfbW9kZXMge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5saXN0X21vZGVzX21vYmlsZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGxpZ2h0LCAuOCk7XG4gICAgICAgICAgICBwYWRkaW5nOiAuNXJlbTtcbiAgICAgICAgICAgIHotaW5kZXg6IDQwMjtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgoZmxleCwgcm93LCBub3dyYXAsIGNlbnRlciwgc3RyZXRjaCk7XG5cbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IC40cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgICAgICYgKyAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zZWN0aW9uX3RpdGxlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZmMjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNlY3Rpb25fc3VidGl0bGUge1xuICAgICAgICAgICAgY29sb3I6ICRkYXJrO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmZjE7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNlYXJjaC1tYXAge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgI21hcCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgLyogQ09MT05ORVMgRkxFWElCTEVTICovXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAmLmNvbG9ubmVzX2ZsZXhpYmxlcyB7XG4gICAgICAgIC5jb2x1bW4ge1xuICAgICAgICAgICAgcGFkZGluZzogLjVyZW0gMDtcblxuICAgICAgICAgICAgJi10aXRsZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMnJlbSAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX3RpdGxlIHtcbiAgICAgICAgICAgICAgICAvLyBmb250LXNpemU6IHB0ZSgzNnB4LCAkZnpfeHhzKTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2wxO1xuXG4gICAgICAgICAgICAgICAgJi51bmRlcmxpbmVkIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogLjVyZW07XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBwdHIoMjIwcHgsICRmeik7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2wyO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5jb2wxIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2wxO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG5cbiAgICAgICAgICAgICAgICAmLmNlbnRlcmVkIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgXG5cbiAgICAgICAgICAgICAgICAgICAgJi51bmRlcmxpbmVkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLDApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5mbGV4IHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleChmbGV4LCBjb2x1bW4sIG5vd3JhcCwgZmxleC1zdGFydCwgY2VudGVyKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBiIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2wyXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDMwJTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuY29sMSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sMTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmNvbDIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbDI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5jb2wzIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2wzO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuY29sNCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sNDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmNvbDUge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbDU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLXRleHQge1xuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbHRleHQ7XG5cbiAgICAgICAgICAgICAgICAgICAgZW0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2wxO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2wyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNlY3Rpb24uY29sMiAmIHtcbiAgICAgICAgICAgICAgICAgICAgcCwgc3Ryb25nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuY29sMSB7XG4gICAgICAgICAgICAgICAgLmNvbHVtbi10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbDE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYucXVvdGUge1xuICAgICAgICAgICAgICAgIC5jb2x1bW4tdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDJyZW0gMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfc3VidGl0bGUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sMTtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZmMTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHB0ZSgzNnB4LCAkZnopO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG5cbiAgICAgICAgICAgICAgICBzZWN0aW9uLmNvbDIgJiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLWltYWdlIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBvYmpGaXQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYubm92dGVrIHtcbiAgICAgICAgICAgICAgICAuY29sdW1uLWltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtdmlkZW8ge1xuICAgICAgICAgICAgICAgIGlmcmFtZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1saW5rIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLWtleWZpZ3VyZXMge1xuXG4gICAgICAgICAgICAgICAgLmNvbHVtbl90aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcHRyKDM2cHgsICRmeik7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmtleWZpZ3VyZSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgoZmxleCwgcm93LCBub3dyYXAsIGZsZXgtc3RhcnQsIGNlbnRlcik7XG5cbiAgICAgICAgICAgICAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAyMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbDE7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmX19udW1iZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1iYXNpczogMzAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA0cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2wyO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICZfX2Rlc2Mge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1iYXNpczogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAxcmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2x0ZXh0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJi1pY29ucyB7XG5cbiAgICAgICAgICAgICAgICAuY29sdW1uX3RpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBwdHIoMzZweCwgJGZ6KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgoZmxleCwgY29sdW1uLCBub3dyYXAsIGZsZXgtc3RhcnQsIGNlbnRlcik7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMXJlbSAwO1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIFxuXG4gICAgICAgICAgICAgICAgICAgICZfX2ljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgaGV4KCdjbGlwLnN2ZycpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICR0cmFucztcbiAgICAgICAgICAgICAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogJHRyYW5zO1xuICAgICAgICAgICAgICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246ICR0cmFucztcbiAgICAgICAgICAgICAgICAgICAgICAgIC1vLXRyYW5zaXRpb246ICR0cmFucztcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFucztcblxuICAgICAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAycmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBoZXgoJ2NsaXAyLnN2ZycpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJl9fZGVzYyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDFyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICYudGFiLWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGhleCgnY2xpcDIuc3ZnJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICZfX2Rlc2Mge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sMjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLWltYWdlcyB7XG4gICAgICAgICAgICAgICAgJjpub3QoLmNhcm91c2VsKSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgoZmxleCwgY29sdW1uLCBub3dyYXAsIGZsZXgtc3RhcnQsIHN0cmV0Y2gpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuY2Fyb3VzZWwge1xuICAgICAgICAgICAgICAgICAgICAuY29sdW1uLWltYWdlcy1zbGlkZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1MHZoO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICZfX2ltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpZ3VyZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgb2JqZml0KGNvbnRhaW4sIGNlbnRlcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAuY29sdW1uLWltYWdlcy1taW5pLXNsaWRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHB0cigxNTBweCwgJGZ6KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IC41cmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICZfX2Rlc2Mge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDFyZW0gMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJi5jb2wyIHtcbiAgICAgICAgICAgIC5jb2x1bW4ge1xuICAgICAgICAgICAgICAgICZfdGl0bGUsXG4gICAgICAgICAgICAgICAgJl9zdWJ0aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl90aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICYudW5kZXJsaW5lZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLXRleHQge1xuICAgICAgICAgICAgICAgICAgICBwLFxuICAgICAgICAgICAgICAgICAgICBzdHJvbmcsXG4gICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQ7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGVtIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbDE7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEVkaXRvXG4gICAgICAgICYuZWRpdG8ge1xuICAgICAgICAgICAgLmZyaXNlIHtcbiAgICAgICAgICAgICAgICAuY29sdW1uLXRleHQge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IC41cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC41cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLC01MCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sMjtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxLjVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGhleCgnY2xpcDIuc3ZnJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogcHRyKDkwcHgsICRmeik7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHB0cig5MHB4LCAkZnopO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgaGV4KCdjbGlwMi5zdmcnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogcHRyKDkwcHgsICRmeik7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubmV3cyB7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLmNvbHVtbl9pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgaGV4KCdjbGlwLnN2ZycpO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyNSUgMTglO1xuICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZ3ICogI3skcmF0aW99KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuY29sdW1uLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgLmNvbHVtbl90aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcHRyKDI4cHgsICRmeik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAubmV3cy1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sMjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5leGNlcnB0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaXRlbV9fbm9uZSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA0cmVtXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IC42NTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmNvbHVtbi1saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg0MCUsMCk7XG4gICAgICAgICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSg0MCUsMCk7XG4gICAgICAgICAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDQwJSwwKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNDAlLDApO1xuXG4gICAgICAgICAgICAgICAgICAgIC5oZXgyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogcHRyKDkwcHgsICRmeik7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHB0cig5MHB4LCAkZnopO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogJHRyYW5zO1xuICAgICAgICAgICAgICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiAkdHJhbnM7XG4gICAgICAgICAgICAgICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogJHRyYW5zO1xuICAgICAgICAgICAgICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogJHRyYW5zO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zO1xuICAgICAgICAgICAgICAgICAgICAgICAgXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkaW1hZ2VQYXRoICsgJ2NsaXAuc3ZnJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBkcm9wLXNoYWRvdygycHggNHB4IDZweCByZ2JhKDAsMCwwLDAuNCkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAgICAgLyogTWFwICovXG4gICAgICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgICAgICYubWFwLWNsaWVudHMge1xuXG4gICAgICAgIH1cblxuICAgICAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICAgICAvKiBBVkFOVEFHRVMgKi9cbiAgICAgICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAgICAgJi5hdmFudGFnZXMge1xuICAgICAgICAgICAgLmNvbHVtbiB7XG5cbiAgICAgICAgICAgICAgICAmLmljb24ge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbDI7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwcmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl90aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sMjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5jb2wyIHtcbiAgICAgICAgICAgICAgICAuY29sdW1uIHtcbiAgICAgICAgICAgICAgICAgICAgJi5pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmX3RpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgIC8qIEJPWCAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgJi50eHQtdHh0IHtcblxuICAgICAgICAuc2VjdGlvbl90aXRsZSB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZmMjtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sNTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcHRlKDMycHgsICRmeik7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHRleHQtc2hhZG93OiAwIDAgNHB4IHJnYmEoJGxpZ2h0LCA4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5yZWdpb25fYm94LFxuICAgICAgICAudGhlbWF0aWNfYm94IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2wyO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCA0cHggM3B4IDAgcmdiYSgkZGFyaywgMC4yKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IHB0ZSgyNHB4LCAkZnopO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMnJlbSAwO1xuXG4gICAgICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZmYyO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2wzO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkbGlnaHQsIDAuNTIpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2VsZWN0X2NvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZmZpY29uO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTFkXCI7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcHRyKDZweCwgJGZ6KTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgICAgICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAvKiBLRVkgRklHVVJFUyAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgJi5rZXlmaWd1cmVzIHtcbiAgICAgICAgLmNvbHVtbi1rZXlmaWd1cmVzIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgoZmxleCwgY29sdW1uLCBub3dyYXAsIGZsZXgtc3RhcnQsIGNlbnRlcik7XG5cbiAgICAgICAgICAgIC5rZXlmaWd1cmUge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMnJlbSAwO1xuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAmX19pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGhleCgnY2xpcC5zdmcnKTtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAkdHJhbnM7XG4gICAgICAgICAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogJHRyYW5zO1xuICAgICAgICAgICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogJHRyYW5zO1xuICAgICAgICAgICAgICAgICAgICAtby10cmFuc2l0aW9uOiAkdHJhbnM7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFucztcbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBkcm9wLXNoYWRvdygzcHggOXB4IDJweCAjZGRkZGRkKTtcblxuICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA0cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgaGV4KCdjbGlwMi5zdmcnKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX251bWJlciB7XG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX2Rlc2Mge1xuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMztcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2wyO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBwdHIoMzJweCwgJGZ6KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgIC8qIEtleWZpZ3VyZXMgKi9cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICYua2V5ZmlndXJlcy1zZWN0aW9uIHtcbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2wzO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAmX19jb250YWluZXIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgoZmxleCwgY29sdW1uLCB3cmFwLCBmbGV4LXN0YXJ0LCBmbGV4LXN0YXJ0KTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX2ljb24ge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTEwcHg7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0O1xuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGVtIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5maWd1cmVzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbDMsIC41Nyk7XG5cbiAgICAgICAgICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4KGZsZXgsIGNvbHVtbiwgbm93cmFwLCBmbGV4LXN0YXJ0LCBjZW50ZXIpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZmlndXJlIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMnJlbSAxcmVtO1xuXG4gICAgICAgICAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgoaW5saW5lLWZsZXgsIHJvdywgbm93cmFwLCBjZW50ZXIsIGNlbnRlcik7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBwdHIoMTI1cHgsICRmeik7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogcHRyKDEyNXB4LCAkZnopO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHB0cigxMjVweCwgJGZ6KTtcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkbGlnaHQsIDAuMjcpO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDEycHggc29saWQgcmdiYSgkbGlnaHQsIDAuMjcpO1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNBMzg2MDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX19udW1iZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0EzODYwMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmZjI7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcHRyKDYwcHgsICRmeik7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl9fZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0EzODYwMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmZjE7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcHRyKDMwcHgsICRmeik7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbGlnaHRlcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250YWN0IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbDMsMC4yMSk7XG5cbiAgICAgICAgICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZmYyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjQTM4NjAwO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcHRyKDM0cHgsICRmeik7XG5cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbDM7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgICAgIGIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGRhcms7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZmYxO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHB0cigxOHB4LCAkZnopO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRkYXJrO1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGRhcmtlbigkY29sMywgMTAlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC50ZWwge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC41cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAvKiBUSU1FTElORSAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgJi50aW1lbGluZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgXG4gICAgICAgIC8qIEJhcnJlICovXG4gICAgICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAxcmVtO1xuICAgICAgICAgICAgYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLDApO1xuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsMCk7XG4gICAgICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLDApO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwwKTtcbiAgICAgICAgICAgIHdpZHRoOiAzcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sMjtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAvKiBJdGVtIGRhdGUgKi9cbiAgICAgICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAgICAgLnRpbWVsaW5lIHtcbiAgICAgICAgICAgICZfX2RhdGUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgoZmxleCwgY29sdW1uLCB3cmFwLCBmbGV4LXN0YXJ0LCBjZW50ZXIpO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDNyZW0gMDtcblxuICAgICAgICAgICAgICAgICYtbGVmdCB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi1yaWdodCB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYteWVhciB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcHRyKDM2cHgsICRmeik7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sMTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLWltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvKiBoZXhhZ29uZSAqL1xuICAgICAgICAgICAgICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgICAgICAgICAgICAgJi1oZXgge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBoZXgoJ2NsaXBfYm9yZGVyLnN2ZycpO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4KGZsZXgsIGNvbHVtbiwgbm93cmFwLCBjZW50ZXIsIGNlbnRlcik7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZ3ICogI3skcmF0aW99KTtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgICAgICAgICAgICYtdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBwdHIoMjRweCwgJGZ6KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbDE7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcHRyKDM2cHgsICRmeik7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbDE7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLXllYXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBwdHIoMzZweCwgJGZ6KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLXRleHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sdGV4dDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvKiBUUEwgc2FucyBoZXhhZ29uZSAqL1xuICAgICAgICAgICAgICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgICAgICAgICAgICAgJi1ub19oZXgge1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDA7XG5cbiAgICAgICAgICAgICAgICAgICAgLnRpbWVsaW5lX19kYXRlIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJi15ZWFyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLWltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJi1oZXgge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYteWVhciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sMjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLXRleHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYudGltZWxpbmVfX2RhdGUtZXZlbiB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC50aW1lbGluZV9fZGF0ZS1sZWZ0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gXG4gICAgICAgICAgICAgICAgICAgICAgICAudGltZWxpbmVfX2RhdGUtcmlnaHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSBcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYudGltZWxpbmVfX2RhdGUtb2RkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC50aW1lbGluZV9fZGF0ZS1sZWZ0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gXG4gICAgICAgICAgICAgICAgICAgICAgICAudGltZWxpbmVfX2RhdGUtcmlnaHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSBcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8qIENvdWxldXJzICovXG4gICAgICAgICAgICAgICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAgICAgICAgICAgICAmLWJsZXUge1xuICAgICAgICAgICAgICAgICAgICAudGltZWxpbmVfX2RhdGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgJi1oZXgge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkaW1hZ2VQYXRoICsgJ2NsaXAuc3ZnJyk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLXRpdGxlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYtaWNvbixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLXllYXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYtdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAvKiBCcmFuY2hlcGFnZSAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgJi5icmFuY2hlcGFnZSB7XG4gICAgICAgIC5wYWdlcyB7XG4gICAgICAgICAgICAmLmdyaWQge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgoZmxleCwgY29sdW1uLCBub3dyYXAsIGZsZXgtc3RhcnQsIGNlbnRlcik7XG5cbiAgICAgICAgICAgICAgICAuZ3JpZC1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcblxuICAgICAgICAgICAgICAgICAgICAmLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2wxO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xLjVyZW0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xLjVyZW0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTEuNXJlbSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMS41cmVtKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogJHRyYW5zO1xuICAgICAgICAgICAgICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiAkdHJhbnM7XG4gICAgICAgICAgICAgICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogJHRyYW5zO1xuICAgICAgICAgICAgICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogJHRyYW5zO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmdyaWQtaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sMjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuXG4gICAgLy8gUGFkZGluZyBkZSBsYSBzZWNvbmRlIHNlY3Rpb24gYXByZXMgbGUgc2xpZGVyXG4gICAgJi5zbGlkZXIgKyAmIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDRyZW07XG4gICAgfVxuXG4gICAgLy8gb24gZW5sZXZlIGxhIGJhcnJlIHNvdXMgbGUgdGl0cmUgZGUgbGEgMWVyZSBzZWN0aW9uXG4gICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAuc2VjdGlvbl90aXRsZSB7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBSRVNQT05TSVZFICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBNT0JJTEUgOiAjeyRzY3JlZW4teHhzfSBweCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXh4cykge1xuICAgIHNlY3Rpb24ge1xuXG4gICAgICAgICYuY29sb25uZXNfZmxleGlibGVzIHtcblxuICAgICAgICAgICAgLmNvbHVtbiB7XG4gICAgICAgICAgICAgICAgJi1pbWFnZXMge1xuICAgICAgICAgICAgICAgICAgICAmOm5vdCguY2Fyb3VzZWwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgoZmxleCwgcm93LCB3cmFwLCBjZW50ZXIsIHN0cmV0Y2gpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDI1JTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5lZGl0byB7XG4gICAgICAgICAgICAgICAgLm5ld3Mge1xuICAgICAgICAgICAgICAgICAgICAuY29sdW1uX2lubmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAubmV3cy1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi50aW1lbGluZSB7XG4gICAgICAgICAgICAudGltZWxpbmUge1xuICAgICAgICAgICAgICAgICZfX2RhdGUge1xuICAgICAgICAgICAgICAgICAgICAudGltZWxpbmVfX2RhdGUtaGV4IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICYtdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBNT0JJTEUgOiAjeyRzY3JlZW4teHN9IHB4ICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHMpIHtcbiAgICBzZWN0aW9uIHtcblxuICAgICAgICAmLnRpdGxlIHtcbiAgICAgICAgICAgIC5jb2xfdGl0bGUge1xuICAgICAgICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLyogVGV4dCBJbWFnZSAqL1xuICAgICAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICAgICAmLnR4dC1pbWcsXG4gICAgICAgICYuaW1nLXR4dCB7XG4gICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgICAgICAgICAgLnR4dCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygxMDAlIC8gMTIpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaW1nIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA5MiU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwJTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA0cHggMCByZ2JhKCRkYXJrLCAwLjUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8qIHR4dCB0eHQgKi9cbiAgICAgICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAgICAgJi50eHQtdHh0IHtcbiAgICAgICAgICAgIC5zZWN0aW9uX3RpdGxlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDNlbSBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLyogQlJBTkNIRU1FTlQgREUgUEFHRSAqL1xuICAgICAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICAgICAmLmJyYW5jaGVwYWdlIHtcbiAgICAgICAgICAgIC5wYWdlcyB7XG5cbiAgICAgICAgICAgICAgICAvKiBUZW1wbGF0ZSBHUklEICovXG4gICAgICAgICAgICAgICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAgICAgICAgICAgICAmLmdyaWQge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4KGZsZXgsIHJvdywgd3JhcCwgZmxleC1zdGFydCwgc3RyZXRjaCk7XG5cbiAgICAgICAgICAgICAgICAgICAgLmdyaWQtaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLmltYWdlLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHZoO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgb2JqZml0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLyogVGVtcGxhdGUgSUNPTlMgKi9cbiAgICAgICAgICAgICAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICAgICAgICAgICAgICYuaWNvbnMge1xuICAgICAgICAgICAgICAgICAgICAucGFnZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDJuICsgMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNEOEQ4RDg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLyogTWFwICovXG4gICAgICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgICAgICYuZ21hcCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIC5maWx0ZXJzX2Fic29sdXRlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTAwMTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAucm93LmZsZXgge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmZpbHRlcnNfY29sIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbDE7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvKiBFZGl0byAqL1xuICAgICAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICAgICAmLmNvbG9ubmVzX2ZsZXhpYmxlcyB7XG4gICAgICAgICAgICAuY29sdW1uIHtcbiAgICAgICAgICAgICAgICAmX2lubmVyIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAmLmZsZXgge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleChmbGV4LCByb3csIG5vd3JhcCwgZmxleC1zdGFydCwgY2VudGVyKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAzZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKDEwMCUgLyA2KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYtaWNvbnMge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4KGZsZXgsIHJvdywgd3JhcCwgY2VudGVyLCBzdHJldGNoKTtcblxuICAgICAgICAgICAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLWltYWdlcyB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuXG4gICAgICAgICAgICAgICAgICAgICY6bm90KC5jYXJvdXNlbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleChmbGV4LCByb3csIHdyYXAsIGNlbnRlciwgY2VudGVyKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAyNSU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuY2VydGlmaWNhdGlvbnMge1xuICAgICAgICAgICAgICAgIC5jb2x1bW4ge1xuICAgICAgICAgICAgICAgICAgICAmLWltYWdlcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogcHRyKDc2OHB4LCAkZnpfbWQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAycmVtIGF1dG87XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuZWRpdG8ge1xuICAgICAgICAgICAgICAgIC5uZXdzIHtcbiAgICAgICAgICAgICAgICAgICAgLmNvbHVtbl9pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLm5ld3MtaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuY29sdW1uLWxpbmsge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmhleDIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogcHRyKDE1MHB4LCAkZnpfeHMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogcHRyKDE1MHB4LCAkZnpfeHMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuYXZhbnRhZ2VzIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiBwdHIoOTBweCwgJGZ6KSAwO1xuXG4gICAgICAgICAgICAgICAgLmNvbHVtbiB7XG4gICAgICAgICAgICAgICAgICAgICYtaW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxcmVtIDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiBwdHIoMjgwcHgsICRmel94cyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLyogU2VjdGlvbiBjaGlmZnJlcyBjbGVzICovXG4gICAgICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgICAgICYua2V5ZmlndXJlcyB7XG4gICAgICAgICAgICAuY29sdW1uLWtleWZpZ3VyZXMge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgoZmxleCwgcm93LCB3cmFwLCBmbGV4LXN0YXJ0LCBzdHJldGNoKTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDJyZW0gMDtcblxuICAgICAgICAgICAgICAgIC5rZXlmaWd1cmUge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBUQUJMRVQgOiAjeyRzY3JlZW4tc219IHB4ICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICBzZWN0aW9uIHtcblxuICAgICAgICAmLnRpdGxlIHtcbiAgICAgICAgICAgIC5jb2xfdGl0bGUge1xuICAgICAgICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvKiAgKi9cbiAgICAgICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAgICAgJi5iYW5kZWF1IHtcbiAgICAgICAgICAgIC5sb2dvIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA2LjI1ZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG5cbiAgICAgICAgICAgICAgICAucGFnZS10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcHRyKDUwcHgsICRmel9sZyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucGF0dGVybiB7XG4gICAgICAgICAgICAgICAgJi5ib3R0b20tbGVmdCxcbiAgICAgICAgICAgICAgICAmLnRvcC1yaWdodCxcbiAgICAgICAgICAgICAgICAmLmJvdHRvbS1yaWdodCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLyogICovXG4gICAgICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgICAgICYuaW1hZ2Vfb25seSB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA4MHZoO1xuICAgICAgICAgICAgbWF4LWhlaWdodDogODV2aDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8qIFR4dCAtIHR4dCAqL1xuICAgICAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICAgICAmLnR4dC10eHQge1xuICAgICAgICAgICAgLnJlZ2lvbl9ib3gsXG4gICAgICAgICAgICAudGhlbWF0aWNfYm94IHtcbiAgICAgICAgICAgICAgICAuc2VsZWN0X2NvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLyogICovXG4gICAgICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgICAgICYudHh0LWltZyxcbiAgICAgICAgJi5pbWctdHh0IHtcbiAgICAgICAgICAgIC8vIG1hcmdpbi1ib3R0b206IDE4dmg7XG5cbiAgICAgICAgICAgIC50eHQge1xuICAgICAgICAgICAgICAgIC50ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pbWcge1xuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAtMjB2aDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vICYgKyBzZWN0aW9uIHtcbiAgICAgICAgICAgIC8vICAgICBtYXJnaW4tdG9wOiAtMTJ2aDtcbiAgICAgICAgICAgIC8vIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8qIEJSQU5DSEVNRU5UIERFIFBBR0UgKi9cbiAgICAgICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAgICAgJi5icmFuY2hlcGFnZSB7XG4gICAgICAgICAgICAucGFnZXMge1xuICAgICAgICAgICAgICAgIC8qIFRlbXBsYXRlIElDT05TICovXG4gICAgICAgICAgICAgICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAgICAgICAgICAgICAmLmljb25zIHtcbiAgICAgICAgICAgICAgICAgICAgLnBhZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1iYXNpczogY2FsYygxMDAlIC8gMyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgybiArIDIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZDhkOGQ4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLyogICovXG4gICAgICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgICAgICYucG9zdF90aHVtYm5haWwge1xuICAgICAgICAgICAgLnBvc3RfdGh1bWJuYWlsX2ltYWdlIHtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAzM3ZoO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLyogICovXG4gICAgICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgICAgICYucG9zdF9zZWN0aW9ucyB7XG4gICAgICAgICAgICBib2R5LnBhZ2UtdGVtcGxhdGUtc2VtaW5haXJlcyAmIHtcbiAgICAgICAgICAgICAgICAuY2FwYWNpdGVzIHtcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMixcbiAgICAgICAgICAgIHAsXG4gICAgICAgICAgICB1bCBsaSxcbiAgICAgICAgICAgIG9sIGxpIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLyogR21hcCAqL1xuICAgICAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICAgICAmLmdtYXAge1xuICAgICAgICAgICAgLy8gLmNhdGVnb3JpZXMge1xuICAgICAgICAgICAgLy8gICAgIHVsIHtcbiAgICAgICAgICAgIC8vICAgICAgICAgbGkge1xuICAgICAgICAgICAgLy8gICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgIC8vICAgICAgICAgICAgIC5jYXRlZ29yeV9maWx0ZXIge1xuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgICAgICAvLyAgICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyAgICAgICAgIH1cbiAgICAgICAgICAgIC8vICAgICB9XG4gICAgICAgICAgICAvLyB9XG4gICAgICAgICAgICAuZmlsdGVyc19jb250YWluZXIge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMnJlbSAycmVtIDVyZW0gMnJlbTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgJl9fY2xvc2Uge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgLy8gICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICAgICAgLy8gfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5saXN0X21vZGVzX21vYmlsZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxpc3RfbW9kZXMge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBib3R0b206IDJyZW07XG4gICAgICAgICAgICAgICAgbGVmdDogMnJlbTtcbiAgICAgICAgICAgICAgICByaWdodDogMnJlbTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBcblxuICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBwdGUoMTVweCwgJGZ6X21kKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI21hcCB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvKiBDb2xvbm5lcyAqL1xuICAgICAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICAgICAmLmNvbG9ubmVzX2ZsZXhpYmxlcyB7XG4gICAgICAgICAgICAmLmVkaXRvIHtcbiAgICAgICAgICAgICAgICAuY29sdW1uIHtcbiAgICAgICAgICAgICAgICAgICAgLm5ld3Mge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmNvbHVtbi10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNvbHVtbl90aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5uZXdzLWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcHRyKDI0cHgsICRmeik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY29sdW1uIHtcbiAgICAgICAgICAgICAgICAmLWljb25zIHtcbiAgICAgICAgICAgICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1iYXNpczogY2FsYygxMDAlIC8gMyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvKiBUaW1lbGluZSAqL1xuICAgICAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICAgICAmLnRpbWVsaW5lIHtcblxuICAgICAgICAgICAgLnRpbWVsaW5lIHtcbiAgICAgICAgICAgICAgICAmX19kYXRlIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG5cbiAgICAgICAgICAgICAgICAgICAgJi1sZWZ0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogcHRyKDYwcHgsICRmel9tZCk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLXJpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBwdHIoNjBweCwgJGZ6X21kKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYtZXZlbiB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC50aW1lbGluZV9fZGF0ZS15ZWFyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLnRpbWVsaW5lX19kYXRlLXJpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBwdHIoNjBweCwgJGZ6X21kKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogcHRyKDYwcHgsICRmel9tZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogcHRyKDYwcHgsICRmel9tZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogJHRyYW5zO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtbW96LXRyYW5zaXRpb246ICR0cmFucztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246ICR0cmFucztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogJHRyYW5zO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBoZXgoJ2NsaXBfYm9yZGVyMi5zdmcnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDIuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLC01MCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHB0cigxNnB4LCAkZnpfbWQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbDI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYudGltZWxpbmVfX2RhdGUtbm9faGV4IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGltZWxpbmVfX2RhdGUtcmlnaHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC50aW1lbGluZV9fZGF0ZS1sZWZ0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICR0cmFucztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtbW96LXRyYW5zaXRpb246ICR0cmFucztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogJHRyYW5zO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC1vLXRyYW5zaXRpb246ICR0cmFucztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC50aW1lbGluZV9fZGF0ZS1sZWZ0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGltZWxpbmVfX2RhdGUtcmlnaHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBoZXgoJ2NsaXAyLnN2ZycpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi1vZGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgLnRpbWVsaW5lX19kYXRlLXllYXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC50aW1lbGluZV9fZGF0ZS1sZWZ0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIC01MCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHB0cig2MHB4LCAkZnpfbWQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHB0cig2MHB4LCAkZnpfbWQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGhleCgnY2xpcF9ib3JkZXIyLnN2ZycpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDIuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLC01MCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHB0cigxNnB4LCAkZnpfbWQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbDI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLnRpbWVsaW5lX19kYXRlLW5vX2hleCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnRpbWVsaW5lX19kYXRlLWxlZnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC50aW1lbGluZV9fZGF0ZS1yaWdodCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAkdHJhbnM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiAkdHJhbnM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246ICR0cmFucztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtby10cmFuc2l0aW9uOiAkdHJhbnM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGltZWxpbmVfX2RhdGUtbGVmdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGhleCgnY2xpcDIuc3ZnJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGltZWxpbmVfX2RhdGUtcmlnaHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYtaGV4IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IGNhbGMoNTB2dyAqICN7JHJhdGlvfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYtbm9faGV4IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJi50aW1lbGluZV9fZGF0ZS1ldmVuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGltZWxpbmVfX2RhdGUtbGVmdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnRpbWVsaW5lX19kYXRlLXJpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJi50aW1lbGluZV9fZGF0ZS1vZGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC50aW1lbGluZV9fZGF0ZS1sZWZ0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGltZWxpbmVfX2RhdGUtcmlnaHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLXllYXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLWltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpub3QoLnRpbWVsaW5lX19kYXRlLW5vX2hleCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgLnRpbWVsaW5lX19kYXRlLWhleC10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGltZWxpbmVfX2RhdGUtaGV4LXllYXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnRpbWVsaW5lX19kYXRlLWhleC1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGltZWxpbmVfX2RhdGUtaGV4LXRleHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogVEFCTEVUIFBPUlRSQUlUIDogI3skc2NyZWVuLW1kfSBweCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XG5cbiAgICBzZWN0aW9uIHtcblxuICAgICAgICAuc2VjdGlvbl90aXRsZSB7XG4gICAgICAgICAgICAvLyBmb250LXNpemU6IHB0ZSg2NHB4LCAkZnpfbWQpXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi50aXRsZSB7XG4gICAgICAgICAgICAuY29sX3RpdGxlIHtcbiAgICAgICAgICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAycmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8qIEJyYW5jaGVtZW50IGRlIHBhZ2UgKi9cbiAgICAgICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAgICAgJi5icmFuY2hlcGFnZSB7XG4gICAgICAgICAgICAucGFnZXMge1xuICAgICAgICAgICAgICAgIC8qIFRlbXBsYXRlIElDT05TICovXG4gICAgICAgICAgICAgICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAgICAgICAgICAgICAmLmljb25zIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA0dmggMDtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgLnBhZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1iYXNpczogMTglO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNkOGQ4ZDg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cblxuICAgICAgICAvKiBiYW5kZWF1ICovXG4gICAgICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgICAgICYuYmFuZGVhdSB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiBwdHIoMzYwcHgsICRmeik7XG5cbiAgICAgICAgICAgIGJvZHkucGFnZS10ZW1wbGF0ZS1zZW1pbmFpcmVzICYge1xuICAgICAgICAgICAgICAgIC5wYXR0ZXJuLnRvcC1yaWdodCB7XG4gICAgICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICAgICAgLnBhZ2UtdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHB0cig2MHB4LCAkZnpfbGcpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnBhZ2UtZXhjZXJwdCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBwdGUoMjRweCwgJGZ6X21kKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8qIFR4dC1pbWcgLyBJbWctdHh0ICovXG4gICAgICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgICAgICYudHh0LWltZyxcbiAgICAgICAgJi5pbWctdHh0IHtcbiAgICAgICAgICAgIC5pbWcge1xuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSArIDh2aCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLyogUG9zdCB0aHVtYm5haWwgKi9cbiAgICAgICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAgICAgJi5wb3N0X3RodW1ibmFpbCB7XG4gICAgICAgICAgICAucG9zdF90aHVtYm5haWxfaW1hZ2Uge1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDUwdmg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvKiBQb3N0IHNlY3Rpb25zICovXG4gICAgICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgICAgICYucG9zdF9zZWN0aW9ucyB7XG4gICAgICAgICAgICBtYXJnaW46IDh2aCAwO1xuXG4gICAgICAgICAgICAuY29vcmRvbm5lZXMge1xuICAgICAgICAgICAgICAgIC50ZWwge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHB0ZSgyOHB4LCAkZnpfbWQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8qIENvbG9ubmVzIGZsZXhpYmxlcyAqL1xuICAgICAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICAgICAmLmNvbG9ubmVzX2ZsZXhpYmxlcyB7XG5cbiAgICAgICAgICAgIC5jb2x1bW4ge1xuICAgICAgICAgICAgICAgICYtaWNvbnMge1xuICAgICAgICAgICAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKDEwMCUgLyA0KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAvLyBmb250LXNpemU6IHB0cigyNHB4LCAkZnopO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5jZXJ0aWZpY2F0aW9ucyB7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5lZGl0byB7XG4gICAgICAgICAgICAgICAgLmZyaXNlIHtcbiAgICAgICAgICAgICAgICAgICAgLmNvbHVtbl9pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuXG4gICAgICAgICAgICAgICAgICAgIC5jb2x1bW4tdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDJyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLDApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLDApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLDApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLDApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IC41cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm5ld3Mge1xuXG4gICAgICAgICAgICAgICAgICAgIC5jb2x1bW4tdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmNvbHVtbl90aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5jb2x1bW5faW5uZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhyZW0gNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgKiAjeyRyYXRpb30pO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLm5ld3MtaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAgICAgICAgIC8qIEFWQU5UQUdFUyAqL1xuICAgICAgICAgICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAgICAgICAgICYuYXZhbnRhZ2VzIHtcblxuICAgICAgICAgICAgICAgIC5yb3cuZmxleCB7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmNvbHVtbiB7XG5cbiAgICAgICAgICAgICAgICAgICAgJi5pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLmNvbHVtbl9pbW1lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleChmbGV4LCBjb2x1bW4sIG5vd3JhcCwgY2VudGVyLCBjZW50ZXIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbDI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMHJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICZfdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi50aW1lbGluZSB7XG4gICAgICAgICAgICAudGltZWxpbmUge1xuICAgICAgICAgICAgICAgICZfX2RhdGUge1xuICAgICAgICAgICAgICAgICAgICAmLWhleCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiBjYWxjKDMydncgKiAjeyRyYXRpb30pO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogM3JlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8qIFNlY3Rpb24gY2hpZmZyZXMgY2xlcyAqL1xuICAgICAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICAgICAmLmtleWZpZ3VyZXMge1xuICAgICAgICAgICAgLmNvbHVtbi1rZXlmaWd1cmVzIHtcbiAgICAgICAgICAgICAgICAua2V5ZmlndXJlIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1iYXNpczogY2FsYygxMDAlIC8gNCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5icmFuY2hlcGFnZSB7XG4gICAgICAgICAgICAucGFnZXMuZ3JpZCB7XG4gICAgICAgICAgICAgICAgLmdyaWQtaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IGNhbGMoMTAwJSAvIDMpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogREVTS1RPUCA6ICN7JHNjcmVlbi1sZ30gcHggKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZykge1xuICAgIHNlY3Rpb24ge1xuICAgICAgICBwYWRkaW5nOiAzcmVtIDA7XG5cbiAgICAgICAgLy8gJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIC8vICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgLy8gfVxuXG4gICAgICAgICYudGl0bGUge1xuICAgICAgICAgICAgLmNvbF90aXRsZSB7XG4gICAgICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogM3JlbSAycmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zZWN0aW9uX3RpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcHRyKDQ1cHgsICRmeik7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLyogQ29sb25uZXMgZmxleGlibGVzICovXG4gICAgICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgICAgICYuY29sb25uZXNfZmxleGlibGVzIHtcbiAgICAgICAgICAgIC5jb2x1bW4ge1xuICAgICAgICAgICAgICAgICYtdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAvLyBmb250LXNpemU6IHB0cigzMnB4LCAkZnopO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYtaW1hZ2VzIHtcbiAgICAgICAgICAgICAgICAgICAgJi5jYXJvdXNlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuY29sdW1uLWltYWdlcy1zbGlkZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDB2aDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zbGljay1wcmV2IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTFyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnNsaWNrLW5leHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogLTFyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmVkaXRvIHtcbiAgICAgICAgICAgICAgICAubmV3cyB7XG4gICAgICAgICAgICAgICAgICAgIC5jb2x1bW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgJi1saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAyMiU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLDApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLDApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5mcmlzZSB7XG4gICAgICAgICAgICAgICAgICAgIC5jb2x1bW4tdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5iYW5kZWF1IHtcbiAgICAgICAgICAgIGhlaWdodDogNjh2aDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IHB0cigzNjBweCwgJGZ6X2xnKTtcblxuICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgICAucGFnZS10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcHRyKDcwcHgsICRmel9sZyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5wb3N0X3NlY3Rpb25zIHtcbiAgICAgICAgICAgIG1hcmdpbjogMTJ2aCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLyogICovXG4gICAgICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgICAgICYudHh0LWxhcmdlLFxuICAgICAgICAmLnR4dC1pbWcsXG4gICAgICAgICYuaW1nLXR4dCB7XG4gICAgICAgICAgICAvLyBwYWRkaW5nOiAxMHZoIDR2dyAydmg7XG5cbiAgICAgICAgICAgIC5wYWdlLWNvbnRlbnQgJiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogcHRlKDI0cHgsICRmeikgMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8qIEJyYW5jaGVwYWdlICovXG4gICAgICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgICAgICYuYnJhbmNoZXBhZ2Uge1xuICAgICAgICAgICAgcGFkZGluZzogMTB2aCA0dnc7XG4gICAgICAgIH1cblxuICAgICAgICAvKiBHbWFwICovXG4gICAgICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgICAgICYuZ21hcCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAuZmlsdGVyc19jb250YWluZXIge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwdmggNC4zNzVlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxpc3RfbW9kZXMge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDQuMzc1ZW07XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDQuMzc1ZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jYXRlZ29yaWVzIHtcbiAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2F0ZWdvcnlfZmlsdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvKiB0eHQgdHh0ICovXG4gICAgICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgICAgICYudHh0LXR4dCB7XG4gICAgICAgICAgICAuc2VjdGlvbl90aXRsZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0byAzZW0gYXV0bztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHB0cig0NXB4LCAkZnopO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucmVnaW9uX2JveCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE2JTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiBwdHIoNDhweCwgJGZ6KSBwdHIoNjhweCwgJGZ6KSBwdHIoNjhweCwgJGZ6KSBwdHIoNjhweCwgJGZ6KTtcblxuICAgICAgICAgICAgICAgICZfX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRoZW1hdGljX2JveCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNiU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogcHRyKDQ4cHgsICRmeikgcHRyKDY4cHgsICRmeikgcHRyKDY4cHgsICRmeikgcHRyKDY4cHgsICRmeik7XG5cbiAgICAgICAgICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgICYuY29sb25uZXNfZmxleGlibGVzIHtcbiAgICAgICAgICAgICYuZWRpdG8ge1xuICAgICAgICAgICAgICAgIC5uZXdzIHtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMTAlKTtcbiAgICAgICAgICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xMCUpO1xuICAgICAgICAgICAgICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMTAlKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTEwJSk7XG5cbiAgICAgICAgICAgICAgICAgICAgLm5ld3MtaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuY29sdW1uLXRleHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY29sdW1uLWltYWdlcyB7XG4gICAgICAgICAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMS41cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYudGltZWxpbmUge1xuICAgICAgICAgICAgLnRpbWVsaW5lIHtcbiAgICAgICAgICAgICAgICAmX19kYXRlIHtcbiAgICAgICAgICAgICAgICAgICAgJi1oZXgge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogY2FsYygyNXZ3ICogI3skcmF0aW99KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogREVTS1RPUCA6ICN7JHNjcmVlbi14bH0gcHggKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14bCkge1xuICAgIHNlY3Rpb24ge1xuXG5cbiAgICAgICAgJi5jb2xvbm5lc19mbGV4aWJsZXMge1xuICAgICAgICAgICAgLmNvbHVtbiB7XG4gICAgICAgICAgICAgICAgJi10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl90aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGZvbnQtc2l6ZTogcHRyKDM2cHgsICRmeik7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmVkaXRvIHtcbiAgICAgICAgICAgICAgICAuZnJpc2Uge1xuICAgICAgICAgICAgICAgICAgICAuY29sdW1uLXRleHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMS41cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLm1hcC1jbGllbnRzIHtcbiAgICAgICAgICAgICAgICAuY29sdW1uLXRleHQge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoMTAwJSAvIDYpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cbiAgICAgICAgLyogdHh0IHR4dCAqL1xuICAgICAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICAgICAmLnR4dC10eHQge1xuICAgICAgICAgICAgLnNlY3Rpb25fdGl0bGUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgIH1cbn1cblxuQG1lZGlhIChtaW4taGVpZ2h0OiA3OTVweCkge1xuXG4gICAgc2VjdGlvbiB7XG4gICAgICAgICYuZ21hcCB7XG4gICAgICAgICAgICAjbWFwIHtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogTU9EVUxFUyAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ubW9kdWxlIHtcbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogQlJBTkNIRU1FTlQgREUgUEFHRVMgKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuICAmLmJyYW5jaGVwYWdlIHtcbiAgICAvKiBHUklMTEUgKi9cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgIC5tb2R1bGUtYnJhbmNoZXBhZ2UtZ3JpZCB7XG4gICAgICBwYWRkaW5nOiBwdGUoMTIycHgsICRmeikgMCBwdGUoMTU4cHgsICRmeikgMDtcblxuICAgICAgLnNlY3Rpb25fdGl0bGUge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgfVxuXG4gICAgICAudGV4dCB7XG4gICAgICAgIG1hcmdpbi10b3A6IHB0ZSgxNDJweCwgJGZ6KTtcblxuICAgICAgICBwIHtcbiAgICAgICAgICBmb250LXNpemU6IHB0ZSgyMHB4LCAkZnopO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5ncmlkLWl0ZW0ge1xuICAgICAgICBtYXJnaW4tdG9wOiBwdGUoMzhweCwgJGZ6KTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cbiAgICAgICAgLmltYWdlLWNvbnRhaW5lciB7XG4gICAgICAgICAgd2lkdGg6IDI4dmg7XG4gICAgICAgICAgaGVpZ2h0OiAyOHZoO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgICAgYm9yZGVyOiAxdmggc29saWQgJGNvbDE7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcblxuICAgICAgICAgIC5pbWcge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG9iamZpdDtcblxuICAgICAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMSk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zLCB0cmFuc2Zvcm0gNHMgZWFzZS1vdXQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sMTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnM7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmdyaWQtaXRlbS10aXRsZSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmZjI7XG4gICAgICAgICAgZm9udC1zaXplOiBwdGUoMjRweCwgJGZ6KTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiBwdGUoMzhweCwgMjRweCk7XG4gICAgICAgICAgY29sb3I6ICRkYXJrO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnM7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAuaW1hZ2UtY29udGFpbmVyIHtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDApO1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMjUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgIGFuaW1hdGlvbjogb25kZSAycyBlYXNlLW91dCBpbmZpbml0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuZ3JpZC1pdGVtLXRpdGxlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sMTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBMaXN0ZSAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgLm1vZHVsZS1icmFuY2hlcGFnZS1saXN0IHtcbiAgICAgIHBhZGRpbmc6IHB0ZSg3NnB4LCAkZnopIDA7XG5cbiAgICAgIC5zZWN0aW9uX3RpdGxlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC5idG4ge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLml0ZW1zIHtcbiAgICAgICAgLml0ZW0ge1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBtYXJnaW46IHB0ZSg2NnB4LCAkZnopIDAgMCAwO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaXRlbSxcbiAgICAgICAgLml0ZW0gYSB7XG4gICAgICAgICAgLmRhdGUge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmZjE7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgY29sb3I6ICRjb2wzO1xuICAgICAgICAgICAgZm9udC1zaXplOiBwdGUoMjZweCwgJGZ6KTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIHB0ZSg3cHgsIDI2cHgpIHB0ZSgxMHB4LCAyNnB4KSAwO1xuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogcHRlKDQ0cHgsIDI2cHgpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2wzO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBwdGUoNnB4LCAyNnB4KTtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSAkY3ViaWM7XG4gICAgICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJGN1YmljO1xuICAgICAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJGN1YmljO1xuICAgICAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSAkY3ViaWM7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRjdWJpYztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5leHRyYWl0IHtcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZmMTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgICAgIGNvbG9yOiAkY29sdGV4dDtcbiAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAkdHJhbnM7XG4gICAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogJHRyYW5zO1xuICAgICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogJHRyYW5zO1xuICAgICAgICAgICAgICAtby10cmFuc2l0aW9uOiAkdHJhbnM7XG4gICAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFucztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC5kYXRlIHtcbiAgICAgICAgICAgICAgY29sb3I6ICRjb2wyO1xuXG4gICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgyKTtcbiAgICAgICAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZVgoMik7XG4gICAgICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVgoMik7XG4gICAgICAgICAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWCgyKTtcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZXh0cmFpdCB7XG4gICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZGFyaztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8qIEVOIENBUlRPVUNIRVMgKi9cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgIC5tb2R1bGUtYnJhbmNoZXBhZ2UtY2FydG91Y2hlcyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiAwIDAgcHRlKDc2cHgsICRmeikgMDtcblxuICAgICAgLnJvdy5mbGV4IHtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgLnBhZ2UtY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgLnBhZ2Uge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIGZsZXgtYmFzaXM6IGNhbGMoMTAwJSAvIDMpO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIC8qIChwYXR0ZXJuKSAqL1xuICAgICAgLnBhdHRlcm4tbGVmdCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtNDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiAzMHZoO1xuICAgICAgICBtYXgtaGVpZ2h0OiBwdGUoNDAwcHgsICRmeik7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgI3BhdHRlcm4tbGVmdCB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICBmaWxsOiByZ2JhKCRjb2wxLCAwLjUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICNwYXR0ZXJuLWxlZnQtc3Ryb2tlcyB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICAgbGluZSB7XG4gICAgICAgICAgICBzdHJva2U6IHJnYmEoJGNvbDMsIDAuMyk7XG4gICAgICAgICAgICBzdHJva2Utd2lkdGg6IDJweDtcbiAgICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDYwcHg7XG4gICAgICAgICAgICBzdHJva2UtZGFzaG9mZnNldDogNjBweDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246ICRjdWJpYztcblxuICAgICAgICAgICAgaHRtbDpub3QoLnBhcmFsbGF4KSAmIHtcbiAgICAgICAgICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnBhdHRlcm4tcmlnaHQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiAzMHZoO1xuICAgICAgICBtYXgtaGVpZ2h0OiBwdGUoNDAwcHgsICRmeik7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICNwYXR0ZXJuLXJpZ2h0IHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICBwYXRoIHtcbiAgICAgICAgICAgIGZpbGw6IHJnYmEoJGNvbDIsIDAuNSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgI3BhdHRlcm4tcmlnaHQtc3Ryb2tlcyB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICAgbGluZSB7XG4gICAgICAgICAgICBzdHJva2U6IHJnYmEoJGNvbDIsIDAuMyk7XG4gICAgICAgICAgICBzdHJva2Utd2lkdGg6IDJweDtcbiAgICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDYwcHg7XG4gICAgICAgICAgICBzdHJva2UtZGFzaG9mZnNldDogNjBweDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246ICRjdWJpYztcblxuICAgICAgICAgICAgaHRtbDpub3QoLnBhcmFsbGF4KSAmIHtcbiAgICAgICAgICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNhcnRvdWNoZXMtaXRlbSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDE4dnc7XG4gICAgICAgIGhlaWdodDogMTh2dztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTh2dztcbiAgICAgICAgYmFja2dyb3VuZDogJGRhcms7XG4gICAgICAgIGJvcmRlcjogMXZoIHNvbGlkICRjb2wzO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbjogMCBwdGUoMjRweCwgJGZ6KTtcblxuICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIHBhZGRpbmc6IHB0ZSg4MHB4LCAkZnopIDA7XG5cbiAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxZW07XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudGl0bGUge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICBoMiB7XG4gICAgICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmZjI7XG4gICAgICAgICAgICBmb250LXNpemU6IHB0ZSgyOHB4LCAkZnopO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sMztcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFucztcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBhbmltYXRpb246IG9uZGUgMnMgZWFzZS1vdXQgaW5maW5pdGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogUkVTUE9OU0lWRSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBERVNLVE9QIDogI3skc2NyZWVuLWxnfSBweCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLWxnKSB7XG4gIC5tb2R1bGUge1xuICAgICYuYnJhbmNoZXBhZ2Uge1xuICAgICAgLm1vZHVsZS1icmFuY2hlcGFnZSB7XG4gICAgICAgICYtY2FydG91Y2hlcyB7XG4gICAgICAgICAgLmNhcnRvdWNoZXMtaXRlbSB7XG4gICAgICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjc1dnc7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFRBQkxFVFAgOiAjeyRzY3JlZW4tbWR9IHB4ICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQpIHtcbiAgLm1vZHVsZSB7XG4gICAgJi5icmFuY2hlcGFnZSB7XG4gICAgICAubW9kdWxlLWJyYW5jaGVwYWdlIHtcbiAgICAgICAgJi1ncmlkIHtcbiAgICAgICAgICBwYWRkaW5nOiA0dmggMDtcblxuICAgICAgICAgIC5ncmlkLWl0ZW0ge1xuICAgICAgICAgICAgLmltYWdlLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxOHZ3O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDE4dnc7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMnZoO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtY2FydG91Y2hlcyB7XG4gICAgICAgICAgLnBhZ2Uge1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuY2FydG91Y2hlcy1pdGVtIHtcbiAgICAgICAgICAgIHdpZHRoOiAyOHZ3O1xuICAgICAgICAgICAgaGVpZ2h0OiAyOHZ3O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjh2dztcblxuICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogM3Z3O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBUQUJMRVQgOiAjeyRzY3JlZW4tc219IHB4ICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgLm1vZHVsZSB7XG4gICAgJi5icmFuY2hlcGFnZSB7XG4gICAgICAubW9kdWxlLWJyYW5jaGVwYWdlIHtcbiAgICAgICAgJi1ncmlkIHtcbiAgICAgICAgICAuZ3JpZC1pdGVtIHtcbiAgICAgICAgICAgIC5pbWFnZS1jb250YWluZXIge1xuICAgICAgICAgICAgICB3aWR0aDogNDB2dztcbiAgICAgICAgICAgICAgaGVpZ2h0OiA0MHZ3O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtY2FydG91Y2hlcyB7XG4gICAgICAgICAgLmNhcnRvdWNoZXMtaXRlbSB7XG4gICAgICAgICAgICB3aWR0aDogMjh2dztcbiAgICAgICAgICAgIGhlaWdodDogMjh2dztcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDI4dnc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBUQUJMRSA6ICN7JHNjcmVlbi14c30gcHggKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cykge1xuICAubW9kdWxlIHtcbiAgICAmLmJyYW5jaGVwYWdlIHtcbiAgICAgIC5tb2R1bGUtYnJhbmNoZXBhZ2Uge1xuICAgICAgICAmLWdyaWQge1xuICAgICAgICAgIC5zZWN0aW9uX3RpdGxlIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtY2FydG91Y2hlcyB7XG4gICAgICAgICAgLnBhZ2Uge1xuICAgICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuY2FydG91Y2hlcy1pdGVtIHtcbiAgICAgICAgICAgIHdpZHRoOiA2MHZ3O1xuICAgICAgICAgICAgaGVpZ2h0OiA2MHZ3O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcblxuICAgICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA2dnc7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAxZW07XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIE1PQklMRVAgOiAjeyRzY3JlZW4teHhzfSBweCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXh4cykge31cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogRk9PVEVSICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zaXRlLWZvb3RlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmdHJfYmc7XG4gICAgcGFkZGluZzogcHRlKDIycHgsICRmeikgMCAwIDA7XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgIC8qIFRJVFJFIERFUyBDT0xPTk5FUyAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgLnRpdGxlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmb250LWZhbWlseTogJGZmMjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcHRlKDI2cHgsICRmeik7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cblxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIE9yZ2FuaXNhdGlvbiAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ubG9nbyB7XG4gICAgb3JkZXI6IDE7XG59XG4ucXVhbGlobG0ge1xuICAgIG9yZGVyOiAzO1xufVxuLm1lbnUge1xuICAgIG9yZGVyOiA0O1xufVxuLmNvbnRhY3Qge1xuICAgIG9yZGVyOiAyO1xufVxuXG4ua29yZWRnZSB7XG4gICAgb3JkZXI6IDI7XG59XG5cbi5tZW50aW9ucyB7XG4gICAgb3JkZXI6IDE7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogXCJNT0RVTEVTXCIgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uZm9vdGVyIHtcblxuICAgICYtdG9wIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gICAgfVxuXG4gICAgJi1ib3R0b20ge1xuICAgICAgICBwYWRkaW5nOiBwdHIoN3B4LCAkZnopO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGZ0cl9iZywgMTAlKTtcbiAgICB9XG4gICAgXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAvKiBMT0dPICovXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAmLWxvZ28ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBwdHIoMjYwcHgsICRmeik7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBwdHIoMjBweCwgJGZ6KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgLyogUVVBTElITE0gKyBNRU5VICovXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAmLXF1YWxpaGxtLFxuICAgICYtbWVudSB7XG4gICAgICAgIC5hY2NvcmRpb24ge1xuICAgICAgICAgICAgcGFkZGluZzogMCAwLjVyZW07XG5cbiAgICAgICAgICAgIC5oZWFkZXIge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwO1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKCRsaWdodCwgLjMpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCRsaWdodCwgLjMpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZmYxO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHB0cigxNnB4LCAkZnopO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5MDBcIjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmZmljb247XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogcHRyKDhweCwgJGZ6KTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBwdHIoMTJweCwgJGZ6KTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLC01MCUpO1xuICAgICAgICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwtNTAlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5ib2R5IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDA7XG5cbiAgICAgICAgICAgICAgICAuZm9vdGVyLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLXF1YWxpaGxtIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgIC8qIE1lbnRpb25zIC8gS29yZWRnZSAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgJi1tZW50aW9ucyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgZm9udC1zaXplOiBwdHIoOXB4LCAkZnopO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHB0cig5cHgsICRmeik7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCBwdHIoMXB4LCAkZnopO1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgLyogTWVudSAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgJi1tZW51IHtcbiAgICAgICAgbWFyZ2luOiAtMXB4IDAgMCAwO1xuXG4gICAgICAgIC5uYXYge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgLm1lbnUtaXRlbSxcbiAgICAgICAgICAgIC5wYWdlX2l0ZW0ge1xuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5idG4ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgLyogQ29udGFjdCAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgJi1jb250YWN0IHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgLyogS29yZWRnZSAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgJi1rb3JlZGdlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiBwdHIoOXB4LCAkZnopO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcHRyKDlweCwgJGZ6KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBTY3JvbGwgdG8gVG9wICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnNjcm9sbHRvdG9wIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAkdHJhbnM7XG4gICAgLW1vei10cmFuc2l0aW9uOiAkdHJhbnM7XG4gICAgLW1zLXRyYW5zaXRpb246ICR0cmFucztcbiAgICAtby10cmFuc2l0aW9uOiAkdHJhbnM7XG4gICAgdHJhbnNpdGlvbjogJHRyYW5zO1xuICAgIHRvcDogLTJyZW07XG4gICAgcmlnaHQ6IC0ycmVtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpOyBcbiAgICB6LWluZGV4OiA2Nzg5O1xuXG4gICAgJi52aXNpYmxlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG5cbiAgICBidXR0b24ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAkYXNkX2g7XG4gICAgICAgIGhlaWdodDogJGFzZF9oO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2wzO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBlbTtcblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcHRyKDI0cHgsICRmeik7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogTWFpbENoaW1wIE1lc3NhZ2VzICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLm1jNHdwLWFsZXJ0IHtcbiAgICBwIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmZjE7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICBjb2xvcjogJGxpZ2h0O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubWM0d3AtZXJyb3Ige1xuICAgICAgICBwIHtcbiAgICAgICAgICAgIGNvbG9yOiAjRkYwMDAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBSRVNQT05TSVZFICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBNT0JJTEVQIDogI3skc2NyZWVuLXh4c30gcHggKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14eHMpIHtcblxuICAgIFxuXG4gICAgLmZvb3RlciB7XG5cbiAgICB9XG5cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFRBQkxFIDogI3skc2NyZWVuLXhzfSBweCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXhzKSB7XG5cbiAgICBcbiAgICAua29yZWRnZSB7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgIH1cblxuICAgIC5tZW50aW9ucyB7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgIH1cblxuICAgIC5mb290ZXIge1xuICAgICAgICAmLWtvcmVkZ2Uge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtbWVudGlvbnMge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFRBQkxFVCA6ICN7JHNjcmVlbi1zbX0gcHggKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuXG4gICAgLnNpdGUtZm9vdGVyIHtcbiAgICAgICAgLmxvZ28ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAubWVudSB7XG4gICAgICAgICAgICAuZm9vdGVyIHtcbiAgICAgICAgICAgICAgICAmLW1lbnUsXG4gICAgICAgICAgICAgICAgJi1tZW51MiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1iYXNpczogNTAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sb2dvIHtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgfVxuXG4gICAgLnF1YWxpaGxtIHtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgfVxuXG4gICAgLm1lbnUge1xuICAgICAgICBvcmRlcjogMztcbiAgICB9XG5cbiAgICAuY29udGFjdCB7XG4gICAgICAgIG9yZGVyOiA0O1xuICAgIH1cblxuICAgIC5mb290ZXIge1xuICAgICAgICAmLXRvcCB7XG4gICAgICAgICAgICAucm93LmZsZXgge1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLWtvcmVkZ2Uge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtbWVudGlvbnMge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLWxvZ28ge1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmLXF1YWxpaGxtLFxuICAgICAgICAmLW1lbnUge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcblxuICAgICAgICAgICAgLmFjY29yZGlvbiB7XG4gICAgICAgICAgICAgICAgLmhlYWRlciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmJvZHkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAgICAgICAuZm9vdGVyLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHB0cigxOHB4LCAkZnopO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBwdHIoNzdweCwgJGZ6X3NtKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLnNjcm9sbHRvdG9wIHtcbiAgICAgICAgcmlnaHQ6IC0xcmVtO1xuICAgIH1cblxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogVEFCTEVUUCA6ICN7JHNjcmVlbi1tZH0gcHggKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xuICAgIC5zaXRlLWZvb3RlciB7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9vdGVyIHtcblxuICAgICAgICAmLXRvcCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcmVtIDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLW5ldHdvcmtzIHtcbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLW5ld3NsZXR0ZXIge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAuNXJlbTtcblxuICAgICAgICAgICAgLm1jNHdwLWZvcm0tZmllbGRzIHtcbiAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi1sb2dvIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1hZGRyZXNzIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtbWVudGlvbnMge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi1tZW51IHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgLm5hdiB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zY3JvbGx0b3RvcCB7XG4gICAgICAgIHRvcDogLTNyZW07XG4gICAgICAgIHJpZ2h0OiAxcmVtO1xuICAgIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIERFU0tUT1AgOiAjeyRzY3JlZW4tbGd9IHB4ICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGcpIHtcblxuICAgIHNlY3Rpb24udHJvdXZlcl91bl9jbHViIHtcbiAgICAgICAgaGVpZ2h0OiA1MHZoO1xuXG4gICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA0cmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2VjdGlvbi5wYXJ0ZW5haXJlcyB7XG4gICAgICAgIHBhZGRpbmc6IDRyZW0gMDtcblxuICAgICAgICAucGFydGVuYWlyZXMge1xuICAgICAgICAgICAgJl9fbGluayB7XG4gICAgICAgICAgICAgICAgLmJ0bl9iYXIge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBERVNLVE9QIDogI3skc2NyZWVuLWxnfSBweCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxNzIwcHgpIHtcblxuICAgIC5zY3JvbGx0b3RvcCB7XG4gICAgICAgIHRvcDogLTNyZW07XG4gICAgICAgIHJpZ2h0OiAtM3JlbTtcbiAgICB9XG5cbiAgICBzZWN0aW9uLnBhcnRlbmFpcmVzIHtcbiAgICAgICAgcGFkZGluZzogNnJlbSAwO1xuICAgIH1cblxufSIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogTUFJTiAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc2l0ZS1tYWluIHtcbiAgLy8gbWFyZ2luLXRvcDogcHRlKDQwcHgsICRmeik7XG4gIHBhZGRpbmc6IDA7XG4gIG1pbi1oZWlnaHQ6IDcwdmg7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogUkVTUE9OU0lWRSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBNT0JJTEUgOiAjeyRzY3JlZW4teHN9IHB4ICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHMpIHtcbiAgLnNpdGUtbWFpbiB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogVEFCTEVUIDogI3skc2NyZWVuLXNtfSBweCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gIC5zaXRlLW1haW4ge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgcmlnaHQ7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRpbWFnZVBhdGggKyAnbW90aWYucG5nJyk7XG4gICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDE1MHB4O1xuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBUQUJMRVQgUE9SVFJBSVQgOiAjeyRzY3JlZW4tbWR9IHB4ICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcbiAgLnNpdGUtbWFpbiB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogREVTS1RPUCA6ICN7JHNjcmVlbi1sZ30gcHggKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1sZykge31cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogSE9NRVBBR0UgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5ob21lIHtcblx0LmJhbmRlYXVfcGllZCB7XG5cdFx0YmFja2dyb3VuZDogdXJsKCRpbWFnZVBhdGggKyAnZmlsdGVycy5wbmcnKSBuby1yZXBlYXQgbGVmdCBib3R0b20gI0Y2RjZGNjtcblx0XHRwYWRkaW5nLXRvcDogcHRyKDEwcHgsICRmeik7XG5cdFx0cGFkZGluZy1ib3R0b206IHB0cig0MHB4LCAkZnopO1xuXHRcdGhlaWdodDogMjJ2aDtcblx0fVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBQQUdFICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnBhZ2Uge1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgLyogVElUTEUgKi9cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICYtdGl0bGUge1xuICAgICAgICBjb2xvcjogJGNvbDM7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZmYxO1xuICAgICAgICBmb250LXNpemU6IHB0ZSgyMnB4LCAkZnopO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgIC8qIEVYQ0VSUFQgKi9cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICYtZXhjZXJwdCB7XG4gICAgICAgIGNvbG9yOiAkY29sMjtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmZjE7XG4gICAgICAgIGZvbnQtc2l6ZTogcHRlKDE2cHgsICRmeik7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWF4LXdpZHRoOiA5MCU7XG4gICAgICAgIG1hcmdpbjogMWVtIGF1dG87XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IHB0cigxNHB4LCAkZnopO1xuICAgICAgICAgICAgY29sb3I6ICRjb2wyO1xuXG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbDE7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAvKiBQQVJUQUdFICovXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAmLXNoYXJlIHtcbiAgICAgICAgcGFkZGluZzogMCAxcmVtIDJyZW0gMXJlbTtcblxuICAgICAgICAmX3RpdGxlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZGFyaztcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBBcmlhbDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcHRlKDIycHgsICRmeik7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMS40N3B4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9saXN0IHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAmLWl0ZW0ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMC41cmVtO1xuXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogcHRlKDQ0cHgsICRmeik7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogcHRlKDQ0cHgsICRmeik7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBwdGUoNDRweCwgJGZ6KTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sMztcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMGVtO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbDM7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbDI7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2wyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAvKiBDT05URU5VICovXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAmLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAwIDAgcHRlKDQwcHgsICRmeik7XG4gICAgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAvKiBPTkdMRVRTIERFIFNPVVMtQ09OVEVOVSAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgJi10YWJzIHtcbiAgICAgICAgLnRhYnMge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4KGZsZXgsIHJvdywgbm93cmFwLCBjZW50ZXIsIGZsZXgtZW5kKTtcblxuICAgICAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAxMCB7XG4gICAgICAgICAgICAgICAgJi50YWJzLWNvdW50LSN7JGl9IHtcbiAgICAgICAgICAgICAgICAgICAgLnRhYiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKDEwMCUgLyAjeyRpfSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50YWIge1xuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbDE7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogJGN1YmljO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiBwdHIoMjBweCwgJGZ6KSBwdHIoMTZweCwgJGZ6KTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkZGFyaztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAkY3ViaWM7XG4gICAgICAgICAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogJGN1YmljO1xuICAgICAgICAgICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogJGN1YmljO1xuICAgICAgICAgICAgICAgICAgICAtby10cmFuc2l0aW9uOiAkY3ViaWM7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246ICRjdWJpYztcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkZGFyaywgMC4zNSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sMSwgNSUpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIENvdWxldXJzIHNwZWNpZmlxdWVzXG4gICAgICAgICAgICAgICAgJi50YWItcHJvZmlsZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2w1O1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2w1LCA1JSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLnRhYi1pbmRpY2F0b3JzIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbDI7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbDIsIDUlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYudGFiLXN0YWtlaG9sZGVycyB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2w0O1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2w0LCA1JSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyB0YWIgYWN0aWZcbiAgICAgICAgICAgICAgICAmLnRhYi1hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiBwdHIoMzBweCwgJGZ6KSBwdHIoMTZweCwgJGZ6KTtcblxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHB0ZSg4cHgsICRmeik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnBhZ2UtYW5jaG9ycyB7XG4gICAgICAgICAgICAudGFicyB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuXG4gICAgICAgICAgICAgICAgLnRhYiB7XG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgIH1cbn1cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogQ09OVEVOVSBERVMgVEFCUyAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi50YWItY29udGVudCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwYWRkaW5nOiAwIHB0cigxMHB4LCAkZnopO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBcbiAgICBcbiAgICAmLnRhYi1jb250ZW50LWFjdGl2ZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFJFU1BPTlNJVkUgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogWFhTICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHhzKSB7XG4gICAgLnBhZ2Uge1xuICAgICAgICAmLXRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcHRlKDMycHgsICRmel94eHMpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1leGNlcnB0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcHRlKDE2cHgsICRmel94eHMpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogWFMgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14cykge1xuICAgIC5wYWdlIHtcbiAgICAgICAgJi10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHB0ZSg0MHB4LCAkZnpfeHMpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1leGNlcnB0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcHRlKDE2cHgsICRmel94cyk7XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDMuMHJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLXNoYXJlIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBTTSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgLnBhZ2Uge1xuICAgICAgICAmLXRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcHRlKDQwcHgsICRmel9zbSk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmLWV4Y2VycHQge1xuICAgICAgICAgICAgZm9udC1zaXplOiBwdGUoMThweCwgJGZ6X3NtKTtcbiAgICAgICAgICAgIG1heC13aWR0aDogNjYlO1xuICAgICAgICB9XG5cbiAgICAgICAgJi10YWJzIHtcblxuICAgICAgICAgICAgLnRhYnMge1xuICAgICAgICAgICAgICAgIC50YWIge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiBwdHIoMjBweCwgJGZ6KSAxcmVtO1xuXG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjByZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcHRyKDIycHgsICRmeik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLnRhYi1hY3RpdmUsXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogcHRyKDMwcHgsICRmeikgMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIE1EICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIHtcbiAgICAucGFnZSB7XG4gICAgICAgICYtdGl0bGUge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBmb250LXNpemU6IHB0ZSg0MnB4LCAkZnpfbWQpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuXG4gICAgICAgICAgICAvKiBUaXRyZSBhdmVjIGljb24gKi9cbiAgICAgICAgICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgICAgICAgICAmLWljb24ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgoZmxleCwgcm93LCBub3dyYXAsIGNlbnRlciwgY2VudGVyKTtcblxuICAgICAgICAgICAgICAgIC5pY29uLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLWV4Y2VycHQge1xuICAgICAgICAgICAgZm9udC1zaXplOiBwdGUoMThweCwgJGZ6X21kKTtcbiAgICAgICAgICAgIG1heC13aWR0aDogNjYlO1xuICAgICAgICB9XG5cbiAgICAgICAgJi10YWJzIHtcbiAgICAgICAgICAgIC50YWJzIHtcbiAgICAgICAgICAgICAgICAudGFiIHtcbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgXG4gICAgICAgICAgICAmLnBhZ2UtYW5jaG9ycyB7XG4gICAgICAgICAgICAgICAgLnRhYnMge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtY29udGVudCB7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIExHICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGcpIHtcbiAgICAucGFnZSB7XG4gICAgICAgICYtdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiBwdGUoNDZweCwgJGZ6X2xnKTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcblxuICAgICAgICB9XG5cbiAgICAgICAgJi1leGNlcnB0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcHRlKDE4cHgsICRmel9sZyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGFiLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiA0cmVtIDA7XG4gICAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogMTMxM3B4IGV4YWN0ZW1lbnQgKCBjYXMgb3UgbGVzIDYgb25nbGV0cyBzb250IHZpc2libGVzKSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzMTNweCkge1xuICAgIFxuICAgIC5wYWdlIHtcbiAgICAgICAgJi10YWJzIHtcbiAgICAgICAgICAgIC50YWJzIHtcbiAgICAgICAgICAgICAgICAudGFiIHtcbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHB0cigyMnB4LCAkZnopO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cblxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogWEwgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14bCkge31cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogU0lOR0xFUyAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5zaW5nbGUge1xuXG5cdC5kZXRhaWxzIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiB1cmwoJGltYWdlUGF0aCArICdpbGx1c3RyYXRpb25fMS5zdmcnKTtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0Ym90dG9tOiA0cmVtO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHR3aWR0aDogMzAlO1xuXHRcdFx0bWF4LXdpZHRoOiA0MzNweDtcblx0XHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAwKTtcblx0XHRcdC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIDApO1xuXHRcdFx0LW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAwKTtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgMCk7XG5cdFx0XHR6LWluZGV4OiAwO1xuXHRcdFx0b3BhY2l0eTogLjU7XG5cdFx0fVxuXHR9XG5cblxuXHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHQvKiBJTUFHRSAqL1xuXHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHQmX19pbWFnZSB7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXG5cdFx0aW1nIHtcblx0XHRcdEBpbmNsdWRlIG9iamZpdCgpO1xuXHRcdH1cblx0fVxuXG5cdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdC8qIFRJVExFICovXG5cdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdCZfX3RpdGxlIHtcblx0XHRwYWRkaW5nOiAxcmVtIDA7XG5cblx0XHQucGFnZS10aXRsZSB7XG5cdFx0XHRjb2xvcjogJGNvbDU7XG5cdFx0XHRmb250LWZhbWlseTogJGZmMjtcblx0XHRcdGZvbnQtc2l6ZTogNDVweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdH1cblx0fVxuXG5cdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdC8qIFJFR0lPTiAvIFRZUE9MT0dJRVMgLyAuLi4gKi9cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0Jl9fcmVnaW9uLXR5cGUge1xuXHRcdEBpbmNsdWRlIGZsZXgoZmxleCwgcm93LCBub3dyYXAsIGZsZXgtc3RhcnQsIGZsZXgtc3RhcnQpO1xuXHR9XG5cblx0Jl9fcmVnaW9uLFxuXHQmX190eXBvbG9neSB7XG5cdFx0cCB7XG5cdFx0XHRjb2xvcjogJGNvbDE7XG5cblx0XHRcdGksXG5cdFx0XHRpbWcge1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0XHRcdHdpZHRoOiBwdHIoMjRweCwgJGZ6KTtcblx0XHRcdFx0aGVpZ2h0OiBwdHIoMjRweCwgJGZ6KTtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiBwdHIoOHB4LCAkZnopO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0LyogVEFHUyAqL1xuXHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHQmX190YWdzIHtcblx0XHRtYXJnaW46IDAgMCAxcmVtIDA7XG5cblx0XHQudGFnIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0XHRtYXJnaW46IDAgMTBweCAwIDA7XG5cdFx0XHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdFx0XHRwYWRkaW5nOiA2cHg7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkY29sMjtcblx0XHRcdGNvbG9yOiAkbGlnaHQ7XG5cdFx0fVxuXHR9XG5cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0LyogTkFNRVMgKi9cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0Jl9fbmFtZXMge1xuXHRcdG1hcmdpbjogMXJlbSAwO1xuXG5cdFx0PiBkaXYge1xuXHRcdFx0Y29sb3I6ICRjb2wyO1xuXHRcdFx0Zm9udC1mYW1pbHk6ICRmZjI7XG5cdFx0XHRmb250LXNpemU6IHB0cigxOHB4LCAkZnopO1xuXG5cdFx0XHQmOm5vdCg6bGFzdC1jaGlsZCkge1xuXHRcdFx0XHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkY29sMjtcblx0XHRcdFx0cGFkZGluZy1yaWdodDogMnJlbTtcblx0XHRcdH1cblxuXHRcdFx0Jjpub3QoOmZpcnN0LWNoaWxkKSB7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogMnJlbTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHQvKiBTSEFSRSAocGFydGFnZSBzdXIgbGVzIHJlc2VhdXggc29jaWF1eCkgKi9cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0Jl9fc2hhcmUge1xuXHRcdGNvbG9yOiAjOEY4RjhGO1xuXHRcdGZvbnQtZmFtaWx5OiAkZmYyO1xuXHRcdGZvbnQtc2l6ZTogMXJlbTtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG5cdFx0cGFkZGluZy1ib3R0b206IDFyZW07XG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM4RjhGOEY7XG5cdFx0bWFyZ2luOiAxcmVtIDA7XG5cblx0XHRhIHtcblx0XHRcdGNvbG9yOiAjOEY4RjhGO1xuXHRcdH1cblx0XHRcblx0XHQ+IGRpdiB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG5cdFx0XHQmOm5vdCg6bGFzdC1jaGlsZCkge1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IHB0cig0MHB4LCAkZnopO1xuXHRcdFx0fVxuXG5cdFx0fVxuXG5cblx0XHQuc2hhcmUge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0XHQmX19wbGF0Zm9ybXMge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogMTAwJTtcblx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0YmFja2dyb3VuZDogJGxpZ2h0O1xuXHRcdFx0XHRwYWRkaW5nOiAxcmVtO1xuXHRcdFx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdFx0XHRib3gtc2hhZG93OiAwIDAgMTJweCByZ2JhKDAsMCwwLDAuMik7XG5cdFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHRcdFx0LXdlYmtpdC10cmFuc2l0aW9uOiAkdHJhbnM7XG5cdFx0XHRcdC1tb3otdHJhbnNpdGlvbjogJHRyYW5zO1xuXHRcdFx0XHQtbXMtdHJhbnNpdGlvbjogJHRyYW5zO1xuXHRcdFx0XHQtby10cmFuc2l0aW9uOiAkdHJhbnM7XG5cdFx0XHRcdHRyYW5zaXRpb246ICR0cmFucztcblx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHRcblx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDJyZW07XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCYtdG9nZ2xlIHtcblx0XHRcdFx0Jjpob3Zlcixcblx0XHRcdFx0Jjpmb2N1cyxcblx0XHRcdFx0JjphY3RpdmUge1xuXHRcdFx0XHRcdCYgfiAuc2hhcmVfX3BsYXRmb3JtcyB7XG5cdFx0XHRcdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0XHRcdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0fVxuXHRcdH1cblxuXHR9XG5cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0LyogREVTQ1JJUFRJT04gKi9cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0Jl9fZGVzY3JpcHRpb24ge1xuXHRcdG1hcmdpbi1ib3R0b206IHB0cig0OHB4LCAkZnopO1xuXHR9XG5cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0LyogQ09OVEFDVCAqL1xuXHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHQmX19jb250YWN0IHtcblxuXHRcdC5zZWN0aW9uX3RpdGxlIHtcblx0XHRcdGZvbnQtc2l6ZTogcHRyKDM2cHgsICRmeik7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiBwdHIoMThweCwgJGZ6KTtcblx0XHR9XG5cblx0XHQmX25hbWUge1xuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0fVxuXG5cdFx0Jl93ZWJzaXRlIHtcblx0XHRcdG1hcmdpbi10b3A6IHB0cig0OHB4LCAkZnopO1xuXHRcdH1cblxuXHRcdCZfc29jaWFscyB7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHRcdC5idG4ge1xuXHRcdFx0XHR3aWR0aDogcHRyKDQ0cHgsICRmeik7XG5cdFx0XHRcdGhlaWdodDogcHRyKDQ0cHgsICRmeik7XG5cdFx0XHRcdGJvcmRlcjogMnB4IHNvbGlkICRjb2w2O1xuXHRcdFx0XHRjb2xvcjogJGNvbDY7XG5cdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiBwdHIoNDBweCwgJGZ6KTtcblxuXHRcdFx0XHQ+IGkge1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdC8qIFRBQlMgKi9cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0Jl9fdGFicyB7XG5cblx0XHQudGFicyB7XG5cdFx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHRcdG1hcmdpbjogMDtcblxuXHRcdFx0LnRhYiB7XG5cdFx0XHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0XHRcdFxuXHRcdFx0XHQmLWJ1dHRvbiB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0O1xuXHRcdFx0XHRcdGNvbG9yOiAkY29sNjtcblx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRcdGZvbnQtZmFtaWx5OiAkZmYyO1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0XHRcdHBhZGRpbmc6IDJyZW07XG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICNEOEQ4RDg7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmLnRhYi1hY3RpdmUge1xuXHRcdFx0XHRcdC50YWItYnV0dG9uIHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2w2O1xuXHRcdFx0XHRcdFx0Y29sb3I6ICRsaWdodDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LnRhYi1jb250ZW50LW1vYmlsZSB7XG5cdFx0XHRcdC8vIHRhYi1jb250ZW50LWFjdGl2ZVxuXHRcdFx0XHRtYXgtaGVpZ2h0OiAwcmVtO1xuXHRcdFx0XHRwYWRkaW5nOiAwcmVtIDFyZW07XG5cdFx0XHRcdC13ZWJraXQtdHJhbnNpdGlvbjogJHRyYW5zO1xuXHRcdFx0XHQtbW96LXRyYW5zaXRpb246ICR0cmFucztcblx0XHRcdFx0LW1zLXRyYW5zaXRpb246ICR0cmFucztcblx0XHRcdFx0LW8tdHJhbnNpdGlvbjogJHRyYW5zO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiAkdHJhbnM7XG5cdFx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cblx0XHRcdFx0Ji50YWItY29udGVudC1hY3RpdmUge1xuXHRcdFx0XHRcdG1heC1oZWlnaHQ6IDEwMHJlbTtcblx0XHRcdFx0XHRwYWRkaW5nOiAycmVtIDFyZW07XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQudGFiLWNvbnRlbnRzIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRwYWRkaW5nOiAycmVtIDA7XG5cdFx0fVxuXG5cdH1cblxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFJFU1BPTlNJVkUgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogWFhTICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHhzKSB7XG5cblx0XG5cbn1cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogWFMgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14cykge1xuXG5cdC5zaW5nbGUge1xuXHRcdC8qIENPTlRBQ1QgKi9cblx0XHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHRcdCZfX2NvbnRhY3Qge1xuXG5cdFx0XHQmX3dlYnNpdGUtbmV0d29ya3Mge1xuXHRcdFx0XHRAaW5jbHVkZSBmbGV4KGZsZXgsIHJvdywgbm93cmFwLCBzcGFjZS1iZXR3ZWVuLCBmbGV4LWVuZCk7XG5cdFx0XHR9XG5cblx0XHR9XG5cblx0XHQmX190aXRsZSB7XG5cdFx0XHQucGFnZS10aXRsZSB7XG5cdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdH1cblxufVxuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBTTSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG5cblx0XG5cbn1cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogTUQgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge1xuXG5cdC5zaW5nbGUge1xuXG5cdFx0Jl9fdGFicyB7XG5cblx0XHRcdC50YWJzIHtcblx0XHRcdFx0QGluY2x1ZGUgZmxleChmbGV4LCByb3csIG5vd3JhcCwgZmxleC1zdGFydCwgY2VudGVyKTtcblxuXHRcdFx0XHQudGFiLWNvbnRlbnQtbW9iaWxlIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC50YWItY29udGVudHMge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdH1cblx0XHR9XG5cblx0fVxuXG59XG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIExHICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGcpIHtcblxuXHRcblxufVxuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBYTCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXhsKSB7XG5cblx0XG5cbn1cblxuXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIENBUlRFIElOVEVSQUNUSVZFICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIENvbnRlbmV1ciBkZSBtYXAgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jbWFwIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBTdXJjaGFyZ2UgZHUgc3R5bGUgTGVhZmxldCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5sZWFmbGV0LWxlZnQge1xuICAubGVhZmxldC1jb250cm9sIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmxlYWZsZXQtYmFyIHtcbiAgYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbDEgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJGxpZ2h0ICFpbXBvcnRhbnQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2wyICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBQYWdlIG1hcCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5wYWdlLW1hcCB7XG4gIG1hcmdpbjogcHRlKDMycHgsICRmeikgMCBwdGUoNDBweCwgJGZ6KSAwO1xuXG4gIC5jYXRlZ29yaWVzIHtcbiAgICAmLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbDI7XG4gICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgZm9udC1mYW1pbHk6ICRmZjI7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICB9XG5cbiAgICAmLWxpc3Qge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDFlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNTQsIDU1LCA4OSwgMC4xNSk7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICAgICYtaXRlbSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jYXRlZ29yeV9maWx0ZXIge1xuICAgICAgPiBpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBwdGUoNDBweCwgJGZ6KTtcbiAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgd2lkdGg6IHB0ZSg0MHB4LCAkZnopO1xuICAgICAgICBoZWlnaHQ6IHB0ZSg0MHB4LCAkZnopO1xuICAgICAgICBib3JkZXItcmFkaXVzOiBwdGUoNDBweCwgJGZ6KTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgICAgICB0cmFuc2l0aW9uOiAkY3ViaWMyO1xuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgID4gaSB7XG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBHUklMTEUgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ucG9pLWdyaWQge1xuICBtYXJnaW46IDJyZW0gMDtcblxuICBAaW5jbHVkZSBmbGV4KGZsZXgsIHJvdywgd3JhcCwgZmxleC1zdGFydCwgc3RyZXRjaCk7XG5cbiAgLml0ZW0tcG9pIHtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgICA+IGEge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDZweCByZ2JhKCRkYXJrLCAwLjEpO1xuXG4gICAgICBAaW5jbHVkZSBmbGV4KGZsZXgsIHJvdywgbm93cmFwLCBmbGV4LXN0YXJ0LCBzdHJldGNoKTtcbiAgICB9XG5cbiAgICAmLWltYWdlIHtcbiAgICAgIGZsZXgtYmFzaXM6IDI1JTtcblxuICAgICAgaW1nIHtcbiAgICAgICAgQGluY2x1ZGUgb2JqRml0O1xuICAgICAgfVxuICAgIH1cblxuICAgICYtY29udGVudCB7XG4gICAgICBmbGV4LWJhc2lzOiA3NSU7XG4gICAgICBwYWRkaW5nOiAxcmVtO1xuICAgIH1cblxuICAgICYtdGl0bGUge1xuICAgICAgcCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZmYyO1xuICAgICAgICBmb250LXNpemU6IHB0ZSgxOHB4LCAkZnopO1xuICAgICAgICBjb2xvcjogJGNvbDE7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLWNhdGVnb3JpZXMge1xuICAgICAgdWwge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBjb2xvcjogJGRhcms7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZmYxO1xuICAgICAgICBmb250LXNpemU6IHB0ZSgxNHB4LCAkZnopO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFJFU1BPTlNJVkUgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogWFhTICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHhzKSB7fVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogWFMgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14cykge1xuICAuY29sX2ZpbHRlcnMge1xuICAgIG1hcmdpbjogMnJlbSAwO1xuICB9XG5cbiAgYm9keS5zaW5nbGUtYXNzb2NpYXRpb24ge1xuICAgIC5wb3N0IHtcbiAgICAgICYtaW1hZ2Uge1xuICAgICAgICBpbWcge1xuICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBTTSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7fVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogTUQgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkge31cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIExHICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGcpIHtcbiAgLnBhZ2UtbWFwIHtcbiAgICAuY2F0ZWdvcmllcyB7XG4gICAgICAmLWxpc3Qge1xuICAgICAgICBwYWRkaW5nOiAycmVtIDFyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyogR1JJTExFICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC5wb2ktZ3JpZCB7XG4gICAgLml0ZW0tcG9pIHtcbiAgICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG5cbiAgICAgID4gYSB7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDZweCByZ2JhKCRkYXJrLCAwLjEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBYTCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXhsKSB7fVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBDT05UQUNUICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuc2VjdGlvbiB7XG4gICAgJi5mb3JtLW1hcCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICA+IGRpdi5jb250YWluZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8qIChwYXR0ZXJuKSAqL1xuICAgICAgICAucGF0dGVybi1sZWZ0IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBib3R0b206IDEwdmg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBoZWlnaHQ6IDMwdmg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgI3BhdHRlcm4tcmlnaHQtc3Ryb2tlcyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuXG4gICAgICAgICAgICAgICAgbGluZSB7XG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZTogcmdiYSgkY29sMywgMC41KTtcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAycHg7XG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDYwcHg7XG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiA2MHB4O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAkY3ViaWM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi52aXNpYmxlIHtcbiAgICAgICAgICAgIC5wYXR0ZXJuLWxlZnQge1xuICAgICAgICAgICAgICAgICNwYXR0ZXJuLWxlZnQtc3Ryb2tlcyB7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC53cGZvcm1zLXN1Ym1pdC1jb250YWluZXIge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBQQUdFIENPTlRBQ1QgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ucGFnZS1jb250YWN0LXVzIHtcbiAgICAuY29udGFjdCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiB1cmwoJGltYWdlUGF0aCArICdpbGx1c3RyYXRpb25fMS5zdmcnKTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAwcHg7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDQzM3B4O1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIDApO1xuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgMCk7XG4gICAgICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIDApO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAwKTtcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgICAgICBvcGFjaXR5OiAuNTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb29yZG9ubmVlcy1jb250YWluZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbSAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFJFU1BPTlNJVkUgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogREVTS1RPUCA6ICN7JHNjcmVlbi1sZ30gcHggKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1sZykge31cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFRBQkxFVFAgOiAjeyRzY3JlZW4tbWR9IHB4ICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQpIHtcbiAgICBzZWN0aW9uIHtcbiAgICAgICAgJi5mb3JtLW1hcCB7XG4gICAgICAgICAgICAucGF0dGVybi1sZWZ0IHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwdmg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tb2R1bGUge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxlZnQsXG4gICAgICAgICAgICAucmlnaHQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBUQUJMRVQgOiAjeyRzY3JlZW4tc219IHB4ICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20pIHt9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBUQUJMRSA6ICN7JHNjcmVlbi14c30gcHggKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cykge31cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIE1PQklMRVAgOiAjeyRzY3JlZW4teHhzfSBweCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXh4cykge31cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogU0VDVElPTiBHUklMTEUgREUgTElFTlMgVkVSUyBMRVMgUEFHRVMgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnBhZ2VzX2dyaWQge1xuXG5cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0LyogVGl0cmUgKi9cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0Jl9fdGl0bGVfY29udGFpbmVyIHtcblx0XHRncmlkLWFyZWE6IDEvMS8xLzM7XG5cdH1cblxuXHQmX190aXRsZSB7XG5cdFx0aDIge1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcblx0XHR9XG5cdH1cblxuXHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHQvKiBUZXh0ZSAqL1xuXHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHQmX190ZXh0IHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0Jl9fcGFnZSB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdG1hcmdpbjogLjI1cmVtO1xuXG5cdFx0JjpudGgtY2hpbGQoMikge1xuXHRcdFx0Z3JpZC1hcmVhOiAyLzEvMi8zO1xuXG5cdFx0XHQucGFnZXNfZ3JpZF9fcGFnZV9faW1hZ2Uge1xuXHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2wzLCAuNSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQmOm50aC1jaGlsZCgzKSB7XG5cdFx0XHRncmlkLWFyZWE6IDMvMS8zLzI7XG5cdFx0fVxuXG5cdFx0JjpudGgtY2hpbGQoNCkge1xuXHRcdFx0Z3JpZC1hcmVhOiAzLzIvMy8zO1xuXHRcdH1cblx0XHRcblx0XHQmX19pbWFnZSB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFxuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdGJvdHRvbTogMDtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sNywgLjUpO1xuXHRcdFx0fVxuXG5cdFx0XHRpbWcge1xuXHRcdFx0XHRAaW5jbHVkZSBvYmpmaXQoKTtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX2NvbnRlbnQge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0QGluY2x1ZGUgY2VudGVyRWwoKTtcblxuXHRcdFx0Zm9udC1mYW1pbHk6ICRmZjI7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0Y29sb3I6ICRsaWdodDtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdGZvbnQtc2l6ZTogcHRyKDMycHgsICRmeik7XG5cdFx0XHRsaW5lLWhlaWdodDogMTtcblxuXHRcdH1cblx0fVxuXG5cdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdC8qIEJBQ0tHUk9VTkQgKi9cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0Ji50ZXh0dXJlZF9ncmFkaWVudCB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCRpbWFnZVBhdGggKyAnZm9uZC10ZXh0dXJlLWJsZXVibGFuY3JvdWdlLmpwZycpO1xuXHRcdGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteTtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuXHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cblx0XHQucGFnZXNfZ3JpZCB7XG5cdFx0XHQmX190aXRsZSB7XG5cdFx0XHRcdGgyIHtcblx0XHRcdFx0XHRjb2xvcjogJGxpZ2h0O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCZfX3RleHQge1xuXHRcdFx0XHRjb2xvcjogJGxpZ2h0O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCYudGV4dHVyZWRfZ3JhZGllbnRfaW52ZXJzZSB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCRpbWFnZVBhdGggKyAnZm9uZC10ZXh0dXJlLWJsZXVibGFuY3JvdWdlX2ludmVyc2UuanBnJyk7XG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC15O1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG5cdFx0YmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcblxuXHRcdC5wYWdlc19ncmlkIHtcblx0XHRcdCZfX3RpdGxlIHtcblx0XHRcdFx0aDIge1xuXHRcdFx0XHRcdGNvbG9yOiAkbGlnaHQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Jl9fdGV4dCB7XG5cdFx0XHRcdGNvbG9yOiAkbGlnaHQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblxuXHQmLndoaXRlIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQ7XG5cblxuXHRcdC5wYWdlc19ncmlkIHtcblx0XHRcdCZfX3BhZ2VfX2ltYWdlOmFmdGVyIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sMiwgLjUpO1xuXHRcdFx0fVxuXG5cdFx0XHQmX190aXRsZSB7XG5cdFx0XHRcdGgyIHtcblx0XHRcdFx0XHRjb2xvcjogJGNvbDE7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Jl9fdGV4dCB7XG5cdFx0XHRcdHAge1xuXHRcdFx0XHRcdGNvbG9yOiAkY29sMTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG59XG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBSRVNQT05TSVZFICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFhYUyAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXh4cykge1xuXG5cdC5wYWdlc19ncmlkIHtcblx0XHQuZ3JpZCB7XG5cdFx0XHQvLyBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgyLCAxZnIpO1xuXHRcdFx0Ly8gZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcblx0XHR9XG5cblx0XHQmX190aXRsZV9jb250YWluZXIge1xuXHRcdFx0Z3JpZC1hcmVhOiAxLzEvMS80O1xuXHRcdFx0QGluY2x1ZGUgZmxleChmbGV4LCBjb2x1bW4sIG5vd3JhcCwgY2VudGVyLCBjZW50ZXIpO1xuXHRcdH1cblxuXHRcdCZfX3RleHQge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXJnaW46IDFyZW0gMDtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFxuXHRcdFx0cCB7XG5cdFx0XHRcdGNvbG9yOiAkbGlnaHQ7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Jl9fcGFnZSB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRtYXJnaW46IC4yNXJlbTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGxpZ2h0LCAuNSk7XG5cblx0XHRcdCY6bnRoLWNoaWxkKDIpIHtcblx0XHRcdFx0Z3JpZC1hcmVhOiAyLzEvMi8yO1xuXHRcdFx0fVxuXG5cdFx0XHQmOm50aC1jaGlsZCgzKSB7XG5cdFx0XHRcdGdyaWQtYXJlYTogMi8yLzIvMztcblx0XHRcdH1cblxuXHRcdFx0JjpudGgtY2hpbGQoNCkge1xuXHRcdFx0XHRncmlkLWFyZWE6IDIvMy8yLzQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cbn1cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogWFMgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14cykge1xuXG5cdFxuXG59XG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFNNICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcblxuXHQucGFnZXNfZ3JpZCB7XG5cdFx0cGFkZGluZzogMnJlbSAxcmVtO1xuXG5cdFx0LmdyaWQge1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoMywgMWZyKTtcblx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG5cdFx0fVxuXG5cdFx0Jl9fdGl0bGVfY29udGFpbmVyIHtcblx0XHRcdHBhZGRpbmc6IC43NXJlbTtcblx0XHRcdEBpbmNsdWRlIGZsZXgoZmxleCwgY29sdW1uLCBub3dyYXAsIGNlbnRlciwgZmxleC1zdGFydCk7XG5cdFx0fVxuXG5cdFx0Jl9fdGl0bGXCoHtcblx0XHRcdGgyIHtcblx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmX190ZXh0IHtcblx0XHRcdHAge1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIE9SSUVOVEFUSU9OIExFRlRcblx0XHQmLmxlZnQge1xuXG5cdFx0XHQucGFnZXNfZ3JpZCB7XG5cblx0XHRcdFx0Jl9fdGl0bGVfY29udGFpbmVyIHtcblx0XHRcdFx0XHRncmlkLWFyZWE6IDEvMS8xLzI7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmX19wYWdlIHtcblx0XHRcdFx0XHQmOm50aC1jaGlsZCgyKSB7XG5cdFx0XHRcdFx0XHRncmlkLWFyZWE6IDIvMS80LzM7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0JjpudGgtY2hpbGQoMykge1xuXHRcdFx0XHRcdFx0Z3JpZC1hcmVhOiAxLzIvMS8zO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCY6bnRoLWNoaWxkKDQpIHtcblx0XHRcdFx0XHRcdGdyaWQtYXJlYTogMS8zLzMvNDtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmX19jb250ZW50IHtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogcHRyKDM1cHgsICRmel9zbSk7XG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIFJJR0hUXG5cdFx0Ji5yaWdodCB7XG5cdFx0XHQucGFnZXNfZ3JpZCB7XG5cdFx0XHRcdCZfX3RpdGxlX2NvbnRhaW5lciB7XG5cdFx0XHRcdFx0Z3JpZC1hcmVhOiAxLzMvMS80O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Jl9fcGFnZSB7XG5cdFx0XHRcdFx0JjpudGgtY2hpbGQoMikge1xuXHRcdFx0XHRcdFx0Z3JpZC1hcmVhOiAyLzIvNC80O1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCY6bnRoLWNoaWxkKDMpIHtcblx0XHRcdFx0XHRcdGdyaWQtYXJlYTogMS8xLzMvMjtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmOm50aC1jaGlsZCg0KSB7XG5cdFx0XHRcdFx0XHRncmlkLWFyZWE6IDMvMS80LzI7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Jl9fY29udGVudCB7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IHB0cigzNXB4LCAkZnpfc20pO1xuXHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxufVxuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBNRCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XG5cblx0LnBhZ2VzX2dyaWQge1xuXHRcdHBhZGRpbmc6IDRyZW0gMXJlbTtcblxuXHRcdCYudGV4dHVyZWRfZ3JhZGllbnRfaW52ZXJzZSxcblx0XHQmLnRleHR1cmVkX2dyYWRpZW50IHtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlO1xuXHRcdH1cblx0fVxuXG59XG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIExHICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGcpIHtcblxuXHQucGFnZXNfZ3JpZCB7XG5cdFx0LmdyaWQge1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiBtaW5tYXgoMjAwcHgsIDMwMHB4KTsgXG5cdFx0fVxuXG5cdFx0Jl9fcGFnZSB7XG5cdFx0XHRtYXJnaW46IC41cmVtO1xuXHRcdH1cblx0fVxuXG59XG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFhMICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teGwpIHtcblxuXHQucGFnZXNfZ3JpZCB7XG5cdFx0Jl9fcGFnZSB7XG5cdFx0XHRtYXJnaW46IC43NXJlbTtcblx0XHR9XG5cdH1cblxufVxuXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIGl0ZW1TICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5pdGVtcyB7XG5cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0LyogR1JJRCAqL1xuXHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHQmLWdyaWQge1xuXHRcdEBpbmNsdWRlIGZsZXgoZmxleCwgcm93LCB3cmFwLCBjZW50ZXIsIGZsZXgtc3RhcnQpO1xuXHRcdG1hcmdpbi10b3A6IDJyZW07XG5cblx0XHQuaXRlbSB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRwYWRkaW5nOiAuNXJlbSAwO1xuXHRcdFx0ZmxleC1iYXNpczogMTAwJTtcblx0XHRcdGZsZXgtZ3JvdzogMDtcblx0XHRcdGZsZXgtc2hyaW5rOiAwO1xuXG5cdFx0XHQvLyBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG5cdFx0XHQmX19pbm5lciB7XG5cdFx0XHRcdC8vIG1hcmdpbjogLjVyZW07XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdH1cblxuXHRcdFx0Jl9faW1hZ2Uge1xuXHRcdFx0XHRoZWlnaHQ6IDUwdmg7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XG5cdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0XHRcdGJvdHRvbTogMDtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRkYXJrLDAuNSk7XG5cdFx0XHRcdFx0LXdlYmtpdC10cmFuc2l0aW9uOiAkdHJhbnM7XG5cdFx0XHRcdFx0LW1vei10cmFuc2l0aW9uOiAkdHJhbnM7XG5cdFx0XHRcdFx0LW1zLXRyYW5zaXRpb246ICR0cmFucztcblx0XHRcdFx0XHQtby10cmFuc2l0aW9uOiAkdHJhbnM7XG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogJHRyYW5zO1xuXHRcdFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdEBpbmNsdWRlIG9iamZpdCgpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCZfX2NvbnRlbnQge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHRyaWdodDogMDtcblx0XHRcdFx0cGFkZGluZzogMXJlbTtcblx0XHRcdFx0Y29sb3I6ICRsaWdodDtcblx0XHRcdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgwLDAsMCwwKSAwJSwgcmdiYSgwLDAsMCwwLjUyKSAxMDAlKTtcblx0XHRcdFx0QGluY2x1ZGUgZmxleChmbGV4LCBjb2x1bW4sIG5vd3JhcCwgZmxleC1lbmQsIGZsZXgtc3RhcnQpO1xuXHRcdFx0fVxuXG5cdFx0XHQmX190aXRsZSB7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0XHRcdFx0Y29sb3I6ICRjb2wxO1xuXHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xLjVyZW0pO1xuXHRcdFx0XHQtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTEuNXJlbSk7XG5cdFx0XHRcdC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xLjVyZW0pO1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMS41cmVtKTtcblx0XHRcdFx0LXdlYmtpdC10cmFuc2l0aW9uOiAkdHJhbnM7XG5cdFx0XHRcdC1tb3otdHJhbnNpdGlvbjogJHRyYW5zO1xuXHRcdFx0XHQtbXMtdHJhbnNpdGlvbjogJHRyYW5zO1xuXHRcdFx0XHQtby10cmFuc2l0aW9uOiAkdHJhbnM7XG5cdFx0XHRcdHRyYW5zaXRpb246ICR0cmFucztcblx0XHRcdFx0cGFkZGluZzogMXJlbTtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0O1xuXG5cdFx0XHRcdGgyIHtcblx0XHRcdFx0XHRmb250LWZhbWlseTogJGZmMjtcblx0XHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdFx0XHRjb2xvcjogJGxpZ2h0O1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogcHRlKDIwcHgsICRmeik7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMXJlbTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmX19leGNlcnB0IHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0cCB7XG5cdFx0XHRcdFx0Zm9udC1mYW1pbHk6ICRmZjI7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0XHRcdFx0XHRjb2xvcjogJGxpZ2h0O1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMXJlbTtcblx0XHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Jl9fbWVkaWEge1xuXHRcdFx0XHR2aWRlbyxcblx0XHRcdFx0aWZyYW1lIHtcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Jl9fcGVybWFsaW5rIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDFyZW07XG5cdFx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXG5cdFx0XHRcdGJ1dHRvbiB7XG5cdFx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0XHR9XG5cdFx0XHRcdFx0XG5cdFx0XHR9XG5cblx0XHRcdCZfX2RhdGUge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdGJvdHRvbTogLjVyZW07XG5cblx0XHRcdFx0cCB7XG5cdFx0XHRcdFx0Zm9udC1mYW1pbHk6ICRmZjE7XG5cdFx0XHRcdFx0Y29sb3I6ICNBMEEwQTA7XG5cdFx0XHRcdFx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC8qIEVmZmV0cyBhdSBob3ZlciAqL1xuXHRcdFx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHQuaXRlbSB7XG5cblx0XHRcdFx0XHQmX19pbWFnZSB7XG5cdFx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmX190aXRsZSB7XG5cdFx0XHRcdFx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0zcmVtKTtcblx0XHRcdFx0XHRcdC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtM3JlbSk7XG5cdFx0XHRcdFx0XHQtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtM3JlbSk7XG5cdFx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtM3JlbSk7XG5cdFx0XHRcdFx0XHRjb2xvcjogJGNvbDI7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHR9XG5cblx0fVxuXG5cdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdC8qIFNMSURFUiAqL1xuXHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHQmLXNsaWRlciB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cblx0XHQuaXRlbSB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcblx0XHRcdGZsZXgtYmFzaXM6IDEwMCU7XG5cdFx0XHRmbGV4LWdyb3c6IDA7XG5cdFx0XHRmbGV4LXNocmluazogMDtcblxuXHRcdFx0Ly8gbWFyZ2luLWJvdHRvbTogMXJlbTtcblx0XHRcdCZfX2lubmVyIHtcblx0XHRcdFx0bWFyZ2luOiAuNXJlbTtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0fVxuXG5cdFx0XHQmX19pbWFnZSB7XG5cdFx0XHRcdGhlaWdodDogMzR2aDtcblxuXHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdEBpbmNsdWRlIG9iamZpdCgpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCZfX21lZGlhIHtcblx0XHRcdFx0dmlkZW8sXG5cdFx0XHRcdGlmcmFtZSB7XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCZfX2NvbnRlbnQge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHRyaWdodDogMDtcblx0XHRcdFx0cGFkZGluZzogMXJlbTtcblx0XHRcdFx0Y29sb3I6ICRsaWdodDtcblx0XHRcdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgwLDAsMCwwKSAwJSwgcmdiYSgwLDAsMCwwLjUyKSAxMDAlKTtcblx0XHRcdFx0QGluY2x1ZGUgZmxleChmbGV4LCBjb2x1bW4sIG5vd3JhcCwgZmxleC1lbmQsIGZsZXgtc3RhcnQpO1xuXHRcdFx0fVxuXG5cdFx0XHQmX190aXRsZSB7XG5cdFx0XHRcdGgyIHtcblx0XHRcdFx0XHRmb250LWZhbWlseTogJGZmMjtcblx0XHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdFx0XHRjb2xvcjogJGxpZ2h0O1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogcHRlKDIwcHgsICRmeik7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMXJlbTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmX19leGNlcnB0IHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0cCB7XG5cdFx0XHRcdFx0Zm9udC1mYW1pbHk6ICRmZjI7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0XHRcdFx0XHRjb2xvcjogJGxpZ2h0O1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMXJlbTtcblx0XHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Jl9fcGVybWFsaW5rIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDFyZW07XG5cdFx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXG5cdFx0XHRcdGJ1dHRvbiB7XG5cdFx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHR9XG5cdH1cblxuXHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHQvKiBMSVNUICovXG5cdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdCYtbGlzdCB7XG5cdFx0QGluY2x1ZGUgZmxleChmbGV4LCBjb2x1bW4sIG5vd3JhcCwgZmxleC1zdGFydCwgZmxleC1zdGFydCk7XG5cdFx0cGFkZGluZzogMDtcblxuXHRcdC5pdGVtIHtcblx0XHRcdGhlaWdodDogMTAwJTtcblxuXHRcdFx0Jl9fY29sdW1uIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogLjVyZW07XG5cdFx0XHR9XG5cblx0XHRcdCZfX2lubmVyIHtcblx0XHRcdFx0QGluY2x1ZGUgZmxleChmbGV4LCBjb2x1bW4sIG5vd3JhcCwgc3BhY2UtYmV0d2Vlbiwgc3RyZXRjaCk7XG5cdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0cGFkZGluZzogcHRyKDEwcHgsICRmeik7XG5cdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICNENUQ1RDU7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRsaWdodDtcblx0XHRcdFx0Ym94LXNoYWRvdzogMCAycHggMTRweCAwIHJnYmEoMTk1LDE5NSwxOTUsMC41KTtcblx0XHRcdH1cblxuXHRcdFx0Jl9fdGl0bGUge1xuXHRcdFx0XHRoMiB7XG5cdFx0XHRcdFx0Y29sb3I6ICRkYXJrO1xuXHRcdFx0XHRcdGZvbnQtZmFtaWx5OiAkZmYyO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogcHRyKDIwcHgsICRmeik7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Jl9faW1hZ2Uge1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdGhlaWdodDogNTB2aDtcblx0XHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdEBpbmNsdWRlIG9iakZpdCgpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCZfX2NhdGVnb3JpZXMtZGF0ZSB7XG5cdCAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgoZmxleCwgcm93LCB3cmFwLCBmbGV4LXN0YXJ0LCBjZW50ZXIpO1xuXHQgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cdCAgICAgICAgICAgIGJvdHRvbTogMDtcblx0ICAgICAgICAgICAgbGVmdDogMXJlbTtcblx0ICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG5cdCAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2wyO1xuXHQgICAgICAgICAgICBwYWRkaW5nOiBwdHIoM3B4LCAkZnopIHB0cig1cHgsICRmeik7XG5cblx0ICAgICAgICAgICAgJi5zdGFrZWhvbGRlciB7XG5cdCAgICAgICAgICAgIFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbDQ7XG5cdCAgICAgICAgICAgIH1cblx0ICAgICAgICAgICAgJi5wcm9qZWN0IHtcblx0ICAgICAgICAgICAgXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sMTtcblx0ICAgICAgICAgICAgfVxuXHQgICAgICAgIH1cblxuXHQgICAgICAgICZfX2NhdGVnb3JpZXMsXG5cdCAgICAgICAgJl9fZGF0ZSB7XG5cdCAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG5cdCAgICAgICAgICAgIGJvdHRvbTogYXV0bztcblx0ICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmZjI7XG5cdCAgICAgICAgICAgIGZvbnQtc2l6ZTogcHRyKDE0cHgsICRmeik7XG5cdCAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQ7XG5cdCAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdCAgICAgICAgfVxuXG5cdFx0XHQmX19tZWRpYSB7XG5cdFx0XHRcdHZpZGVvLFxuXHRcdFx0XHRpZnJhbWUge1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdGhlaWdodDogYXV0bztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmX19kYXRlIHtcblx0XHRcdFx0cCB7XG5cdFx0XHRcdFx0Y29sb3I6ICNBMEEwQTA7XG5cdFx0XHRcdFx0Zm9udC1mYW1pbHk6ICRmZjE7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiBwdHIoMTJweCwgJGZ6KTtcblx0XHRcdFx0XHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IGxpZ2h0ZXI7XG5cdFx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCZfX3RoZW1hdGljcyxcblx0XHRcdCZfX3JlZ2lvbnMge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG5cdFx0XHRcdHAge1xuXHRcdFx0XHRcdGNvbG9yOiAkY29sMTtcblxuXHRcdFx0XHRcdGltZyxcblx0XHRcdFx0XHRpIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IHB0cigxOHB4LCAkZnopO1xuXHRcdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRcdFx0d2lkdGg6IHB0cigxOHB4LCAkZnopO1xuXHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiBwdHIoOHB4LCAkZnopO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmX190aGVtYXRpYyB7XG5cdFx0XHRcdCY6bm90KDpsYXN0LWNoaWxkKSB7XG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAuNXJlbTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmX19saW5rIHtcblx0XHRcdFx0QGluY2x1ZGUgZmxleChmbGV4LCByb3csIG5vd3JhcCwgc3BhY2UtYmV0d2VlbiwgZmxleC1lbmQpO1xuXG5cdFx0XHRcdCYudGV4dC1yaWdodCB7XG5cdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmX19jb250ZW50IHtcblx0XHRcdFx0cGFkZGluZzogMXJlbTtcblx0XHRcdFx0Y29sb3I6ICRkYXJrO1xuXHRcdFx0fVxuXG5cdFx0XHQmX19wZXJtYWxpbmsge1xuXHRcdFx0XHRidXR0b24ge1xuXHRcdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0fVxuXHR9XG5cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0LyogTU9URVVSIERFIFJFQ0hFUkNIRSAqL1xuXHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHQmLXNlYXJjaCB7XG5cdFx0Ly8gQGluY2x1ZGUgZmxleChmbGV4LCBjb2x1bW4sIG5vd3JhcCwgY2VudGVyLCBzdHJldGNoKTtcblx0XHRwYWRkaW5nOiBwdHIoMjRweCwgJGZ6KTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRUZFRkVGO1xuXHRcdG1hcmdpbi1ib3R0b206IHB0cig0MHB4LCAkZnopO1xuXG5cdFx0Ly8gRmlsdHJlcyBwYXIgdGFnc1xuXHRcdC50YWdzLWNvbnRhaW5lciB7XG5cdFx0XHRAaW5jbHVkZSBmbGV4KGZsZXgsIHJvdywgd3JhcCwgZmxleC1zdGFydCwgZmxleC1zdGFydCk7XG5cdFx0XHRtYXJnaW46IDAgMCAwLjgxMjVlbSAwO1xuXG5cdFx0XHQuYnRuLXRhZy1maWx0ZXIge1xuXHRcdFx0XHRsaW5lLWhlaWdodDogcHRyKDQ0cHgsICRmeik7XG5cdFx0XHRcdGhlaWdodDogcHRyKDQ4cHgsICRmeik7XG5cdFx0XHRcdHBhZGRpbmctdG9wOiAwO1xuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMDtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gRmlsdHJlcyBzZWxlY3Rcblx0XHRzZWxlY3Qge1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdH1cblxuXHRcdC8vIEJvdXRvbnMgZGUgdnVlXG5cdFx0LnRvZ2dsZS1tYXAge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0fVxuXG5cdFx0Lm1hcC1tb2RlIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR9XG5cblx0XHQubGlzdC1tb2RlIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXG5cdFx0Ym9keS5tYXAtdG9nZ2xlZCAmIHtcblxuXHRcdFx0Lm1hcC1tb2RlIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblxuXHRcdFx0Lmxpc3QtbW9kZSB7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdH1cblxuXHRcdH1cblxuXHR9XG5cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0LyogUEFHSU5BVElPTiAqL1xuXHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHQmLXBhZ2luYXRpb24ge1xuXHRcdG1hcmdpbjogMnJlbSAwO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHRcdD4gdWwge1xuXHRcdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRtYXJnaW46IDA7XG5cblx0XHRcdD4gbGkge1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cblx0XHRcdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdFx0bWFyZ2luOiBwdHIoNHB4LCAkZnopO1xuXG5cdFx0XHRcdD4gYSxcblx0XHRcdFx0PiBzcGFuIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHR3aWR0aDogcHRyKDMycHgsICRmeik7XG5cdFx0XHRcdFx0aGVpZ2h0OiBwdHIoMzJweCwgJGZ6KTtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogcHRyKDMycHgsICRmeik7XG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICRjb2w3O1xuXHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IDEwZW07XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQ+IGEge1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRsaWdodDtcblx0XHRcdFx0XHRjb2xvcjogJGNvbDc7XG5cblx0XHRcdFx0XHQmLnByZXYge1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMXJlbTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmLm5leHQge1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAxcmVtO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHR9XG5cblx0XHRcdFx0PiBzcGFuIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sNztcblx0XHRcdFx0XHRjb2xvcjogJGxpZ2h0O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0LyogTElFTiBERSBSRVRPVVIgKi9cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0Ji1iYWNrIHtcblx0XHRtYXJnaW46IDJyZW0gMCAwIDA7XG5cdH1cblxuXHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHQvKiBUT09HTEUgREUgTEEgVlVFIE1BUCBcXCBDT05UQUlORVIgRkxFWCBQT1VSIEFGRklDSEFHRSBMSVNUICsgTUFQICovXG5cdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdCZfX2NvbnRhaW5lciB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0Lml0ZW1zLWxpc3Qge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0fVxuXG5cdFx0Lml0ZW1zLW1hcCB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblxuXHRcdGJvZHkubWFwLXRvZ2dsZWQgJiB7XG5cdFx0XHQuaXRlbXMtbGlzdCB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHR9XG5cblx0XHRcdC5pdGVtcy1tYXAge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHQvKiBaT05FIERFIFJBRlJBSUNISVNTRU1FTlQgQUpBWCAqL1xuXHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHQuYWpheC1pdGVtcy1yZWZyZXNoIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdH1cblxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFJFU1BPTlNJVkUgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogWFhTICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHhzKSB7XG5cblx0XG5cbn1cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogWFMgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14cykge1xuXG5cdC5pdGVtcyB7XG5cdFx0Ji1saXN0IHtcblx0XHRcdC5pdGVtIHtcblx0XHRcdFx0Jl9fY29sdW1uIHtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxcmVtO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Jl9faW1hZ2Uge1xuXHRcdFx0XHRcdGhlaWdodDogMjJ2aDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG59XG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFNNICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcblxuXHQuaXRlbXMge1xuXHRcdCYtZ3JpZCB7XG5cdFx0XHRAaW5jbHVkZSBmbGV4KGZsZXgsIHJvdywgd3JhcCwgZmxleC1zdGFydCwgc3RyZXRjaCk7XG5cblx0XHRcdC5pdGVtIHtcblx0XHRcdFx0Ly8gbWFyZ2luLWJvdHRvbTogMnJlbTtcblx0XHRcdFx0ZmxleC1iYXNpczogNTAlO1xuXG5cdFx0XHRcdCZfX2ltYWdlIHtcblx0XHRcdFx0XHRoZWlnaHQ6IDM0dmg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLXNlYXJjaCB7XG5cdFx0XHRmb3JtIHtcblx0XHRcdFx0QGluY2x1ZGUgZmxleChmbGV4LCByb3csIHdyYXAsIGNlbnRlciwgc3RyZXRjaCk7XG5cdFx0XHR9XG5cblx0XHRcdC50YWdzLWNvbnRhaW5lciB7XG5cdFx0XHRcdGZsZXgtYmFzaXM6IDEwMCU7XG5cdFx0XHRcdEBpbmNsdWRlIGZsZXgoZmxleCwgcm93LCB3cmFwLCBjZW50ZXIsIHN0cmV0Y2gpO1xuXHRcdFx0fVxuXG5cdFx0XHQuc2VsZWN0X2NvbnRhaW5lciB7XG5cdFx0XHRcdG1hcmdpbjogMCAxcmVtIDAgMDtcblxuXHRcdFx0XHRzZWxlY3Qge1xuXHRcdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdFx0XHRtaW4td2lkdGg6IHB0cigzMDBweCwgJGZ6KTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQudG9nZ2xlLW1hcCB7XG5cdFx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0XHRAaW5jbHVkZSBmbGV4KGZsZXgsIHJvdywgbm93cmFwLCBjZW50ZXIsIGNlbnRlcik7XG5cdFx0XHR9XG5cblx0XHRcdC8vIC5idG4ge1xuXHRcdFx0Ly8gfVxuXHRcdH1cblxuXG5cdFx0Ji1saXN0IHtcblx0XHRcdC5pdGVtIHtcblx0XHRcdFx0Jl9fY29sdW1uIHtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAycmVtO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdH1cblxufVxuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBNRCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XG5cblx0Lml0ZW1zIHtcblx0XHRtYXJnaW46IDJyZW0gMDtcblxuXHRcdCYtZ3JpZCB7XG5cdFx0XHRtYXJnaW4tdG9wOiBwdHIoNThweCwgJGZ6X21kKTtcblxuXHRcdFx0Lml0ZW0ge1xuXHRcdFx0XHRwYWRkaW5nOiAxcmVtIDA7XG5cblx0XHRcdFx0Jl9fZXhjZXJwdCB7XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLWxpc3Qge1xuXHRcdFx0QGluY2x1ZGUgZmxleChmbGV4LCByb3csIHdyYXAsIGZsZXgtc3RhcnQsIHN0cmV0Y2gpO1xuXG5cdFx0XHQuaXRlbSB7XG5cdFx0XHRcdHBhZGRpbmc6IDFyZW0gMDtcblx0XHRcdH1cblx0XHR9XG5cblxuXHR9XG5cblxufVxuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBMRyAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnKSB7XG5cblx0Lml0ZW1zIHtcblxuXHRcdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFx0LyogR1JJRCAqL1xuXHRcdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFx0Ji1ncmlkIHtcblx0XHRcdEBpbmNsdWRlIGZsZXgoZmxleCwgcm93LCB3cmFwLCBmbGV4LXN0YXJ0LCBzdHJldGNoKTtcblxuXHRcdFx0Lml0ZW0ge1xuXHRcdFx0XHRmbGV4LWJhc2lzOiBjYWxjKDEwMCUgLyAzKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHRcdC8qIExJU1QgKi9cblx0XHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHRcdCYtbGlzdCB7XG5cdFx0XHQuaXRlbSB7XG5cdFx0XHRcdGZsZXgtYmFzaXM6IGNhbGMoMTAwJSAvIDMpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFx0LyogUkVDSEVSQ0hFICovXG5cdFx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0XHQmLXNlYXJjaCB7XG5cdFx0XHRmb3JtIHtcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7IFxuXHRcdFx0fVxuXG5cdFx0XHQudGFncy1jb250YWluZXIge1xuXHRcdFx0XHRmbGV4LWJhc2lzOiBhdXRvO1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDFyZW07XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdH1cblxufVxuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBYTCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXhsKSB7XG5cblx0XG5cbn1cblxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBTSU5HTEUgQ0FUICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkuY2F0ZWdvcnkge1xuXG5cdC5jYXRlZ29yeSB7XG5cblx0XHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHRcdC8qIExPQURFUiAqL1xuXHRcdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFx0Jl9fbG9hZGVyIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRib3JkZXI6IDA7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0XHRiYWNrZ3JvdW5kOiByZ2JhKCRsaWdodCwwLjgpO1xuXHRcdFx0ei1pbmRleDogOTk5O1xuXG5cdFx0XHQmLmRpc3BsYXkge1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFx0LyogRklMVEVSUyAqL1xuXHRcdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFx0Jl9fZmlsdGVycyB7XG5cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJGltYWdlUGF0aCArICdmaWx0ZXJzLnBuZycpIG5vLXJlcGVhdCBsZWZ0IGJvdHRvbSAjRjZGNkY2O1xuXHRcdFx0cGFkZGluZy10b3A6IHB0cigxMHB4LCAkZnopO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IHB0cig0MHB4LCAkZnopO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMXJlbTtcblxuXHRcdFx0Jl9fdGl0bGUge1xuXHRcdFx0XHRoMiB7XG5cdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogcHRyKDIycHgsICRmeik7XG5cdFx0XHRcdFx0Y29sb3I6ICRjb2wyO1xuXHRcdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogcHRyKDQ0cHgsICRmeik7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Jl9fZmlsdGVycyB7XG5cblx0XHRcdFx0dWwge1xuXHRcdFx0XHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdFx0XHRtYXJnaW46IDA7XG5cblx0XHRcdFx0XHRsaSB7XG5cdFx0XHRcdFx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdFx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdFx0XHRcdG1hcmdpbjogMCAxJSAwIDA7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0XHR3aWR0aDogNDglO1xuXG5cdFx0XHRcdFx0XHQuYnRuLWZpbHRlci1jYXQge1xuXHRcdFx0XHRcdFx0XHRAZXh0ZW5kICVidG47XG5cdFx0XHRcdFx0XHRcdEBleHRlbmQgLmJ0bi1zZWNvbmRhcnk7XG5cblx0XHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiBwdHIoMTBweCwgJGZ6KTtcblxuXHRcdFx0XHRcdFx0XHQmLmFjdGl2ZSB7XG5cdFx0XHRcdFx0XHRcdFx0QGV4dGVuZCAuYnRuLWRlZmF1bHQ7XG5cblx0XHRcdFx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXFxlOTAyXCI7XG5cdFx0XHRcdFx0XHRcdFx0XHRmb250LWZhbWlseTogJGZmaWNvbjtcblx0XHRcdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0XHRcdFx0dG9wOiA0cHg7XG5cdFx0XHRcdFx0XHRcdFx0XHRyaWdodDogNHB4O1xuXHRcdFx0XHRcdFx0XHRcdFx0Y29sb3I6ICRsaWdodDtcblx0XHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogcHRyKDEwcHgsICRmeik7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHRcdFx0Y29sb3I6ICRsaWdodCAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0fVxuXG5cdFx0fVxuXG5cblx0XHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHRcdC8qIFJFU1VMVFMgKi9cblx0XHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cdFx0Jl9fcmVzdWx0cyB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGltYWdlUGF0aCArICdoZXhhLnN2ZycpO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcblx0XHRcdFxuXG5cdFx0XHQmX19jb3VudCB7XG5cdFx0XHRcdHAge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogcHRyKDEycHgsICRmeik7XG5cblx0XHRcdFx0XHQuY291bnQsXG5cdFx0XHRcdFx0LnJlc3VsdHMge1xuXHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCZfX2l0ZW1zIHtcblx0XHRcdFx0QGluY2x1ZGUgZmxleChmbGV4LCByb3csIHdyYXAsIGZsZXgtc3RhcnQsIHN0cmV0Y2gpO1xuXG5cdFx0XHRcdC5jYXRlZ29yeV9faXRlbSB7XG5cdFx0XHRcdFx0ZmxleC1iYXNpczogMTAwJTtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxcmVtO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2wyO1xuXG5cdFx0XHRcdFx0Jl9fdHlwZSB7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sMztcblx0XHRcdFx0XHRcdGNvbG9yOiAkbGlnaHQ7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOiAwIDFyZW07XG5cdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiBwdHIoMzZweCwgJGZ6KTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmX19jb250ZW50IHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2wyO1xuXHRcdFx0XHRcdFx0cGFkZGluZzogMXJlbTtcblx0XHRcdFx0XHRcdGNvbG9yOiAkbGlnaHQ7XG5cblx0XHRcdFx0XHRcdCZfX2ljb24ge1xuXHRcdFx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogM3JlbTtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMXJlbTtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0Jl9fdGl0bGUge1xuXHRcdFx0XHRcdFx0XHRoMyB7XG5cdFx0XHRcdFx0XHRcdFx0Y29sb3I6ICRsaWdodDtcblx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6IHB0cigyMHB4LCAkZnopO1xuXHRcdFx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHRcdFx0XHRsaW5lLWhlaWdodDogMS4yNTtcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxcmVtO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdCZfX3RleHQge1xuXHRcdFx0XHRcdFx0XHRwIHtcblx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6IHB0cigxMnB4LCAkZnopO1xuXHRcdFx0XHRcdFx0XHRcdGNvbG9yOiAkbGlnaHQ7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0Jl9fbGlua3Mge1xuXHRcdFx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0XHQuYnRuIHtcblx0XHRcdFx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblxuXHRcdFx0XHRcdFx0XHRcdCYgKyAuYnRuIHtcblx0XHRcdFx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IC41cmVtO1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHR9XG5cblx0XHRcdC8qIFBhZ2luYXRpb24gKi9cblx0XHRcdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFx0XHQmX19wYWdpbmF0aW9uIHtcblx0XHRcdFx0bWFyZ2luOiAuNXJlbSAwO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHRcdFx0LnBhZ2UtbnVtYmVycyB7XG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cdFx0XHRcdFx0d2lkdGg6IHB0cig0MHB4LCAkZnopO1xuXHRcdFx0XHRcdGhlaWdodDogcHRyKDQwcHgsICRmeik7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IHB0cig0MHB4LCAkZnopO1xuXHRcdFx0XHRcdGNvbG9yOiAkY29sMztcblx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiBwdHIoNDBweCwgJGZ6KTtcblx0XHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkY29sMztcblxuXHRcdFx0XHRcdCY6aG92ZXIsXG5cdFx0XHRcdFx0Ji5jdXJyZW50IHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2wzO1xuXHRcdFx0XHRcdFx0Y29sb3I6ICRsaWdodDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXG5cblx0XHR9XG5cdH1cblxuXG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogUkVTUE9OU0lWRSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBYWFMgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14eHMpIHtcblxuXHRib2R5LmNhdGVnb3J5IHtcblx0XHQuY2F0ZWdvcnkge1xuXHRcdFx0Jl9fZmlsdGVycyB7XG5cdFx0XHRcdCZfX2ZpbHRlcnMge1xuXHRcdFx0XHRcdHVsIHtcblx0XHRcdFx0XHRcdGxpIHtcblx0XHRcdFx0XHRcdFx0LmJ0bi1maWx0ZXItY2F0IHtcblx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6IHB0cigxMnB4LCAkZnopO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCZfX3Jlc3VsdHMge1xuXHRcdFx0XHQmX19pdGVtcyB7XG5cdFx0XHRcdFx0LmNhdGVnb3J5IHtcblx0XHRcdFx0XHRcdCZfX2l0ZW0ge1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBmbGV4KGZsZXgsIGNvbHVtbiwgbm93cmFwLCBmbGV4LXN0YXJ0LCBzdHJldGNoKTtcblxuXHRcdFx0XHRcdFx0XHQmX19jb250ZW50IHtcblx0XHRcdFx0XHRcdFx0XHRmbGV4LWJhc2lzOiBhdXRvO1xuXHRcdFx0XHRcdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBmbGV4KGZsZXgsIGNvbHVtbiwgbm93cmFwLCBzcGFjZS1iZXR3ZWVuLCBzdHJldGNoKTtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0fVxuXHR9XG5cbn1cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogWFMgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14cykge1xuXG5cdGJvZHkuY2F0ZWdvcnkge1xuXHRcdC5jYXRlZ29yeSB7XG5cdFx0XHQmX19maWx0ZXJzIHtcblx0XHRcdFx0Jl9fZmlsdGVycyB7XG5cdFx0XHRcdFx0dWwge1xuXHRcdFx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdFx0XHQuYnRuLWZpbHRlci1jYXQge1xuXHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogcHRyKDE0cHgsICRmeik7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Jl9fcmVzdWx0c19faXRlbXMge1xuXHRcdFx0XHQuY2F0ZWdvcnlfX2l0ZW0ge1xuXHRcdFx0XHRcdGZsZXgtYmFzaXM6IDQ4JTtcblx0XHRcdFx0XHRtYXJnaW46IDElO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cbn1cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogU00gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuXG5cdGJvZHkuY2F0ZWdvcnkge1xuXHRcdC5jYXRlZ29yeSB7XG5cdFx0XHQmX19maWx0ZXJzIHtcblx0XHRcdFx0Jl9fZmlsdGVycyB7XG5cdFx0XHRcdFx0dWwge1xuXHRcdFx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxufVxuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBNRCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSB7XG5cblx0Ym9keS5jYXRlZ29yeSB7XG5cdFx0LmNhdGVnb3J5IHtcblx0XHRcdCZfX2ZpbHRlcnMge1xuXHRcdFx0XHQmX19maWx0ZXJzIHtcblx0XHRcdFx0XHR1bCB7XG5cdFx0XHRcdFx0XHRsaSB7XG5cdFx0XHRcdFx0XHRcdC5idG4tZmlsdGVyLWNhdCB7XG5cdFx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiBwdHIoMTZweCwgJGZ6KTtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmX19yZXN1bHRzX19pdGVtcyB7XG5cdFx0XHRcdC5jYXRlZ29yeV9faXRlbSB7XG5cdFx0XHRcdFx0ZmxleC1iYXNpczogMzElO1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdCY6bnRoLWNoaWxkKDNuKSB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMSU7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0JjpudGgtY2hpbGQoM24gKyAxKSB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDElO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG59XG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIExHICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGcpIHtcblxuXHRcblxufVxuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBYTCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXhsKSB7XG5cblx0XG5cbn1cblxuIiwiQG1lZGlhIHByaW50IHtcblx0aGVhZGVyLFxuXHRmb290ZXIge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn0iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLG1CQUFtQjtBQ0FuQiwyREFBMkQ7QUFDM0QsMkRBQTJEO0FBQzNELGVBQWU7QUFDZiwyREFBMkQ7QUFDM0QsMkRBQTJEO0FBRzNELDJEQUEyRDtBQUMzRCxjQUFjO0FBQ2QsMkRBQTJEO0FBSTNELHlCQUF5QjtBQUN6QiwyREFBMkQ7QUFDM0MsZ0JBQWdCO0FBQ2hCLGdCQUFnQjtBQUNoQixXQUFXO0FBQ1gsa0JBQWtCO0FBQ2xCLGtCQUFrQjtBQUNsQixVQUFVO0FBQ1YsZUFBZTtBQUNmLDBCQUEwQjtBQUUxQyxxQ0FBcUM7QUFxQnJDLHVDQUF1QztBQUN2QywyREFBMkQ7QUFjM0QsMkRBQTJEO0FBQzNELFdBQVc7QUFDWCwyREFBMkQ7QUFPM0QsMkRBQTJEO0FBQzNELGdCQUFnQjtBQUNoQiwyREFBMkQ7QUFTM0QsMkRBQTJEO0FBQzNELGlC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QUFBLEtBQUMsRUFBTyxNQUFNLEFBQWIsQ0FRSSxVQUFVLENBQUs7SUFDZCxPQUFPLEVBQUUsS0FBSztJQUNkLEtBQUssRUFBRSxTQUEwRDtJQUNqRSxVQUFVLEVBQUUsU0FBMEQ7SUFDdEUsT0FBTyxFQUFFLFVBQVUsR0FDcEI7RUFkUCxBQVNNLElBVEYsRUFDRixBQUFBLEtBQUMsRUFBTyxNQUFNLEFBQWIsQ0FRSSxVQUFVLENBQUs7SUFDZCxPQUFPLEVBQUUsS0FBSztJQUNkLEtBQUssRUFBRSxHQUEwRDtJQUNqRSxVQUFVLEVBQUUsR0FBMEQ7SUFDdEUsT0FBTyxFQUFFLFVBQVUsR0FDcEI7RUFkUCxBQVNNLElBVEYsRUFDRixBQUFBLEtBQUMsRUFBTyxNQUFNLEFBQWIsQ0FRSSxVQUFVLENBQUs7SUFDZCxPQUFPLEVBQUUsS0FBSztJQUNkLEtBQUssRUFBRSxTQUEwRDtJQUNqRSxVQUFVLEVBQUUsU0FBMEQ7SUFDdEUsT0FBTyxFQUFFLFVBQVUsR0FDcEI7RUFkUCxBQVNNLElBVEYsRUFDRixBQUFBLEtBQUMsRUFBTyxNQUFNLEFBQWIsQ0FRSSxVQUFVLENBQUs7SUFDZCxPQUFPLEVBQUUsS0FBSztJQUNkLEtBQUssRUFBRSxTQUEwRDtJQUNqRSxVQUFVLEVBQUUsU0FBMEQ7SUFDdEUsT0FBTyxFQUFFLFVBQVUsR0FDcEI7RUFkUCxBQVNNLElBVEYsRUFDRixBQUFBLEtBQUMsRUFBTyxNQUFNLEFBQWIsQ0FRSSxVQUFVLENBQUs7SUFDZCxPQUFPLEVBQUUsS0FBSztJQUNkLEtBQUssRUFBRSxHQUEwRDtJQUNqRSxVQUFVLEVBQUUsR0FBMEQ7SUFDdEUsT0FBTyxFQUFFLFVBQVUsR0FDcEI7RUFkUCxBQVNNLElBVEYsRUFDRixBQUFBLEtBQUMsRUFBTyxNQUFNLEFBQWIsQ0FRSSxVQUFVLENBQUs7SUFDZCxPQUFPLEVBQUUsS0FBSztJQUNkLEtBQUssRUFBRSxTQUEwRDtJQUNqRSxVQUFVLEVBQUUsU0FBMEQ7SUFDdEUsT0FBTyxFQUFFLFVBQVUsR0FDcEI7RUFkUCxBQVNNLElBVEYsRUFDRixBQUFBLEtBQUMsRUFBTyxNQUFNLEFBQWIsQ0FRSSxVQUFVLENBQUs7SUFDZCxPQUFPLEVBQUUsS0FBSztJQUNkLEtBQUssRUFBRSxTQUEwRDtJQUNqRSxVQUFVLEVBQUUsU0FBMEQ7SUFDdEUsT0FBTyxFQUFFLFVBQVUsR0FDcEI7RUFkUCxBQVNNLElBVEYsRUFDRixBQUFBLEtBQUMsRUFBTyxNQUFNLEFBQWIsQ0FRSSxVQUFVLENBQUs7SUFDZCxPQUFPLEVBQUUsS0FBSztJQUNkLEtBQUssRUFBRSxHQUEwRDtJQUNqRSxVQUFVLEVBQUUsR0FBMEQ7SUFDdEUsT0FBTyxFQUFFLFVBQVUsR0FDcEI7RUFkUCxBQVNNLElBVEYsRUFDRixBQUFBLEtBQUMsRUFBTyxNQUFNLEFBQWIsQ0FRSSxXQUFXLENBQUk7SUFDZCxPQUFPLEVBQUUsS0FBSztJQUNkLEtBQUssRUFBRSxTQUEwRDtJQUNqRSxVQUFVLEVBQUUsU0FBMEQ7SUFDdEUsT0FBTyxFQUFFLFVBQVUsR0FDcEI7RUFkUCxBQVNNLElBVEYsRUFDRixBQUFBLEtBQUMsRUFBTyxNQUFNLEFBQWIsQ0FRSSxXQUFXLENBQUk7SUFDZCxPQUFPLEVBQUUsS0FBSztJQUNkLEtBQUssRUFBRSxTQUEwRDtJQUNqRSxVQUFVLEVBQUUsU0FBMEQ7SUFDdEUsT0FBTyxFQUFFLFVBQVUsR0FDcEI7RUFkUCxBQVNNLElBVEYsRUFDRixBQUFBLEtBQUMsRUFBTyxNQUFNLEFBQWIsQ0FRSSxXQUFXLENBQUk7SUFDZCxPQUFPLEVBQUUsS0FBSztJQUNkLEtBQUssRUFBRSxJQUEwRDtJQUNqRSxVQUFVLEVBQUUsSUFBMEQ7SUFDdEUsT0FBTyxFQUFFLFVBQVUsR0FDcEI7O0FBTVQsMkRBQTJEO0FBQzNELFFBQVE7QUFDUiwyREFBMkQ7QUFDM0QsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQUV0QyxBQUVJLElBRkEsRUFDRixBQUFBLEtBQUMsRUFBTyxNQUFNLEFBQWIsQ0FDRSxTQUFTLENBQUM7SUFDVCxLQUFLLEVBQUUsQ0FBQztJQUNSLFVBQVUsRUFBRSxDQUFDO0lBQ2IsT0FBTyxFQUFFLENBQUMsR0FDWDtFQU5MLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFFBQTBEO0lBQ2pFLFVBQVUsRUFBRSxRQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFNBQTBEO0lBQ2pFLFVBQVUsRUFBRSxTQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLEdBQTBEO0lBQ2pFLFVBQVUsRUFBRSxHQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFNBQTBEO0lBQ2pFLFVBQVUsRUFBRSxTQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFNBQTBEO0lBQ2pFLFVBQVUsRUFBRSxTQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLEdBQTBEO0lBQ2pFLFVBQVUsRUFBRSxHQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFNBQTBEO0lBQ2pFLFVBQVUsRUFBRSxTQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFNBQTBEO0lBQ2pFLFVBQVUsRUFBRSxTQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLEdBQTBEO0lBQ2pFLFVBQVUsRUFBRSxHQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFVBQVUsQ0FBSTtJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFNBQTBEO0lBQ2pFLFVBQVUsRUFBRSxTQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFVBQVUsQ0FBSTtJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFNBQTBEO0lBQ2pFLFVBQVUsRUFBRSxTQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFVBQVUsQ0FBSTtJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLElBQTBEO0lBQ2pFLFVBQVUsRUFBRSxJQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQUtQLEFBQUEsVUFBVSxDQUFDO0lBQ1QsT0FBTyxFQUFFLElBQUksR0FDZDtFQXhJSCxBQUFBLFVBQVUsQ0EwSUc7SUFDVCxLQUFLLEVBQUUsSUFBSTtJQUNYLE9BQU8sRUFBRSxDQUFDLEdBQ1g7O0FBR0gsMkRBQTJEO0FBQzNELFFBQVE7QUFDUiwyREFBMkQ7QUFDM0QsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQUN0QyxBQUVJLElBRkEsRUFDRixBQUFBLEtBQUMsRUFBTyxNQUFNLEFBQWIsQ0FDRSxTQUFTLENBQUM7SUFDVCxLQUFLLEVBQUUsQ0FBQztJQUNSLFVBQVUsRUFBRSxDQUFDO0lBQ2IsT0FBTyxFQUFFLENBQUMsR0FDWDtFQU5MLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFFBQTBEO0lBQ2pFLFVBQVUsRUFBRSxRQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFNBQTBEO0lBQ2pFLFVBQVUsRUFBRSxTQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLEdBQTBEO0lBQ2pFLFVBQVUsRUFBRSxHQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFNBQTBEO0lBQ2pFLFVBQVUsRUFBRSxTQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFNBQTBEO0lBQ2pFLFVBQVUsRUFBRSxTQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLEdBQTBEO0lBQ2pFLFVBQVUsRUFBRSxHQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFNBQTBEO0lBQ2pFLFVBQVUsRUFBRSxTQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFNBQTBEO0lBQ2pFLFVBQVUsRUFBRSxTQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLEdBQTBEO0lBQ2pFLFVBQVUsRUFBRSxHQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFVBQVUsQ0FBSTtJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFNBQTBEO0lB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RUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFNBQTBEO0lBQ2pFLFVBQVUsRUFBRSxTQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLEdBQTBEO0lBQ2pFLFVBQVUsRUFBRSxHQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFNBQTBEO0lBQ2pFLFVBQVUsRUFBRSxTQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFNBQTBEO0lBQ2pFLFVBQVUsRUFBRSxTQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLEdBQTBEO0lBQ2pFLFVBQVUsRUFBRSxHQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFVBQVUsQ0FBSTtJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFNBQTBEO0lBQ2pFLFVBQVUsRUFBRSxTQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFVBQVUsQ0FBSTtJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFNBQTBEO0lBQ2pFLFVBQVUsRUFBRSxTQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFVBQVUsQ0FBSTtJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLElBQTBEO0lBQ2pFLFVBQVUsRUFBRSxJQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQUtQLEFBQUEsVUFBVSxDQUFDO0lBQ1QsT0FBTyxFQUFFLElBQUksR0FDZDtFQWpQSCxBQUFBLFVBQVUsQ0FtUEc7SUFDVCxLQUFLLEVBQUUsSUFBSTtJQUNYLFNBQVMsRUh6TEssTUFBTSxHRzBMckI7O0FBR0gsMkRBQTJEO0FBQzNELFFBQVE7QUFDUiwyREFBMkQ7QUFDM0QsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtFQUN2QyxBQUVJLElBRkEsRUFDRixBQUFBLEtBQUMsRUFBTyxNQUFNLEFBQWIsQ0FDRSxTQUFTLENBQUM7SUFDVCxLQUFLLEVBQUUsQ0FBQztJQUNSLFVBQVUsRUFBRSxDQUFDO0lBQ2IsT0FBTyxFQUFFLENBQUMsR0FDWDtFQU5MLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFFBQTBEO0lBQ2pFLFVBQVUsRUFBRSxRQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFNBQTBEO0lBQ2pFLFVBQVUsRUFBRSxTQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLEdBQTBEO0lBQ2pFLFVBQVUsRUFBRSxHQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFNBQTBEO0lBQ2pFLFVBQVUsRUFBRSxTQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFNBQTBEO0lBQ2pFLFVBQVUsRUFBRSxTQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLEdBQTBEO0lBQ2pFLFVBQVUsRUFBRSxHQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFNBQTBEO0lBQ2pFLFVBQVUsRUFBRSxTQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNBQVMsQ0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLFNBQTBEO0lBQ2pFLFVBQVUsRUFBRSxTQUEwRDtJQUN0RSxPQUFPLEVBQUUsU0FBUyxHQUNuQjtFQWRQLEFBU00sSUFURixFQUNGLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixDQVFJLFNB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 */
