/* Template (Standard) Well Aqua CSS */
/* Schrift Open Sans */
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../../fonts/OpenSans-Regular.ttf") format("truetype");
}
/* Template */
/* GENERAL */
html, body {
  font-family: "Open Sans", sans-serif;
  text-align: left;
  color: #666;
  height: 100%;
  background: #f4f6f7;
}

body {
  border-top: 3px solid rgb(0, 131, 200);
}

/* S C H R I F T E N */
h1, .contentheading, .componentheading {
  font-weight: 400;
  margin-bottom: 30px;
  color: rgb(0, 131, 200);
}

h1, h2, h3, h4, h5, h6 {
  line-height: 1.42857143;
}

/*h2{
	font-weight:400;
	font-size:18px;
	color:rgb(0,131,200);
	line-height:normal;
	margin:0 0 10px 0;}

h3{ font-weight:700;
	font-size:16px;
	margin-bottom:10px;}

p{	margin-bottom:20px;
	font-size:16px;
	line-height:170%;}

br{	line-height:100%;}*/
/* Listen */
article ul, article li {
  margin: 0 0 0 0px;
  line-height: 180%;
  list-style-type: circle;
}

article ul {
  margin-bottom: 15px;
}

/* LINKS */
/*a:link, a:active, a:visited{text-decoration:none;color:#0090e3;}
a:hover{text-decoration:none;color:#666;}*/
/* P O S I T I O N E N   U N D   B O X E N */
header {
  height: auto;
  width: 100%;
  margin: 0 auto;
}

.video_container {
  width: 100%;
  height: 350px;
  position: relative;
  z-index: 0;
}

.video_header {
  width: 100% !important;
}

/* header Bilder */
.header_img {
  width: 100%;
  height: 350px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.logo_kasten {
  height: 147px;
  width: 300px;
  float: left;
}

.logo {
  position: absolute;
  z-index: 999;
  float: left;
  width: 240px;
  margin: 52px 0 0 20px;
}

/* Sprache */
#topmenue {
  float: left;
  width: auto;
}

.sprache {
  float: right !important;
  width: auto;
}

.sprache li {
  float: left;
}

div.mod-languages li {
  margin: 0px;
}

/* Ab J4 bringt mod_languages eigene Regeln mit (div.mod-languages a, ul li.lang-active, img), die spezifischer sind
   als die bisherigen Selektoren .sprache a und .lang-active. Die Template-Regeln für den Sprachumschalter nennen deshalb
   zusätzlich div.mod-languages, und die Flaggen bleiben wie unter J3 inline. */
.sprache div.mod-languages img {
  display: inline;
}

/* Ab J4 geben Joomla-Module Hilfstexte für Screenreader mit der Bootstrap-5-Klasse visually-hidden aus
   (z. B. "Sprache auswählen" im Sprachumschalter). Bootstrap 3 kennt nur sr-only, deshalb dieselbe Regel hier. */
.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* TOPMENÜ */
#nav_kasten {
  width: 100%;
  height: 147px;
  position: relative;
  z-index: 999;
  margin: 0 auto;
}

nav {
  padding: 0 20px;
  width: 100%;
}

/* 1. EBENE */
#topmenue ul, .sprache {
  list-style-type: none;
  padding: 0;
  height: 147px;
  margin: 0;
}

#topmenue li, .sprache {
  list-style-type: none;
  display: block;
  float: left;
  position: static;
}

/* Die Links */
#topmenue a, .sprache div.mod-languages a {
  display: table-cell;
  text-decoration: none;
  color: #707070;
  font-size: 18px;
  height: 147px;
  padding: 99px 20px 0 20px;
  text-transform: uppercase;
  transition: all 0.3s ease;
}

#topmenue a:hover, .sprache div.mod-languages a:hover {
  background: #d9e1f1;
  background: rgba(0, 131, 200, 0.3);
}

#topmenue li.current > a, #topmenue .active > a {
  background: rgba(0, 131, 200, 0.7);
  color: #fff;
}

.lang-active, .sprache div.mod-languages ul li.lang-active {
  background: rgba(0, 131, 200, 0.1);
}

.mega-menu {
  width: 100% !important;
  margin: 0 auto !important;
  padding: 0;
}

/* 2. EBENE */
#topmenue ul li ul {
  display: none;
  background: #fff;
  box-shadow: 0 10px 10px -10px #B0B0B0;
  position: absolute;
  margin: 0 auto;
  height: auto;
  width: 100%;
  left: 0;
  right: 0;
  border-top: 2px solid rgb(0, 131, 200);
}

#topmenue li li {
  width: 25%;
  float: left;
  display: block !important;
  text-align: center;
}

#topmenue li li a {
  display: block;
  height: auto;
  padding: 20px;
  font-size: 15px;
}

#topmenue li li a:hover {
  background: rgba(0, 131, 200, 0.3) !important;
}

#topmenue li li.current > a, #topmenue li li.active > a {
  background: #fff;
  color: #707070 !important;
}

/* Bilder im Mega-Menü. Bis J3 über .moduletable_menu, ab J4 gibt das Chrome html5 "moduletable _menu" aus. */
#topmenue img {
  width: 100%;
}

/* Dropdown */
#topmenue ul li:hover > ul {
  display: block;
}

.container {
  padding: 0;
}

.arena {
  margin: 20px auto 0;
  border: 1px solid #ccc;
  background: #fff;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.05);
  border-radius: 5px;
}

#arena {
  width: 100%;
  margin: 0 auto;
  height: auto;
}

#content {
  position: relative;
  z-index: 0;
  width: 80%;
  float: left;
  padding: 20px 20px 60px 20px;
}

#content_full {
  position: relative;
  z-index: 0;
  width: 100%;
  padding: 20px 20px 60px 20px;
}

#right {
  width: 20%;
  float: right;
  padding: 20px 20px 60px 20px;
}

/* Liegeposition Bilder */
.img_content {
  /*	border:1px solid #ccc;*/
  width: 100%;
  height: 150px;
  float: left;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.beschriftung {
  text-align: center;
  font-size: 14px;
  color: #666;
}

/* Bettensystembilder */
.img_system {
  padding: 10px;
}

/* Größentabelle */
.table {
  margin-bottom: 0;
}

td, th {
  text-align: right;
}

.links td, .links th {
  text-align: left;
}

/* Buttons */
.btn-success {
  background-color: rgb(129, 179, 39);
  border-color: rgb(105, 146, 28);
}

.btn-success:hover {
  background-color: rgb(105, 146, 28);
  border-color: rgb(105, 146, 28);
}

/* Footer */
footer {
  padding: 0 20px;
  width: 100%;
  margin: 0 auto;
  height: 50px;
}

footer ul {
  width: 100%;
}

.separator {
  font-size: 10px;
  margin: 0 20px 0 0;
  line-height: 50px;
}

/* Impressum */
footer li {
  display: inline;
  list-style-type: none;
  text-decoration: none;
  color: #666;
  margin-right: 20px;
  float: right;
}

footer li:last-child {
  margin-right: 0;
}

footer li a:link, footer li a:active, footer li a:visited {
  color: #666;
  font-size: 10px;
  line-height: 50px;
}

footer a:hover, footer li.current > a, footer li.active > a {
  color: rgb(32, 117, 185);
}

/* STARTSEITE */
#bereiche {
  margin: -50px 0 20px 0;
}

.box-1, .box-2, .box-3 {
  text-align: center;
  padding: 20px;
  color: #fff;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.25);
}

.box-1 {
  background: rgb(246, 158, 0);
}

.box-2 {
  background: rgb(129, 179, 39);
}

.box-3 {
  background: rgb(0, 131, 200);
}

/* SLIDESHOW - header: siehe _slideshow.scss (seit Oktober 2026 ohne ResponsiveSlides) */
.separator {
  display: none;
}

.item-115 .separator, .item-116 .separator {
  display: inline-block !important;
}

.rechts {
  display: none !important;
}

/* -------------------- SMARTPHONE ----------------- */
@media only screen and (max-width: 768px) {
  body {
    font-size: 16px !important;
  }
  .aktiv-rechts body {
    overflow: auto;
  } /* Muss auf hidden stehen, damit der "normale" Bereich nicht mitscrollt */
  /* OFF e! */
  .normal, .rechts {
    transition: all 0.5s ease;
    width: 100%;
  }
  .rechts {
    display: block !important;
    width: 0;
    height: auto;
    overflow: hidden;
  }
  .js .rechts {
    margin-right: -100%;
    float: left;
  }
  .js .normal {
    margin-right: 0;
    float: left;
  }
  .aktiv-rechts .rechts {
    margin-right: 0;
    width: 80%;
    padding: 0;
  }
  .aktiv-rechts .normal {
    margin-left: -80%;
  }
  /* Menü im Off-Canvas */
  .btn-default {
    margin: 10px 10px 0 0;
  }
  .btn-block {
    margin: 10px 10px 0 0;
  }
  .einklappen {
    margin-bottom: 20px;
  }
  #off_canvas ul {
    padding: 0;
    width: 100%;
    list-style-type: none;
  }
  #off_canvas li {
    text-align: center;
  }
  #off_canvas li:hover {
    background: rgba(0, 131, 200, 0.3) !important;
  }
  #off_canvas li a {
    color: rgb(0, 131, 200);
    text-transform: uppercase;
    text-decoration: none;
  }
  #off_canvas .separator {
    display: block;
    width: 100%;
    height: 1px;
    margin: 0;
    font-size: 0;
    /* IE9 SVG, needs conditional override of 'filter' to 'none' */
    background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAwODNjOCIgc3RvcC1vcGFjaXR5PSIwIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjU1JSIgc3RvcC1jb2xvcj0iIzAwODNjOCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDgzYzgiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+); /* FF3.6+ */ /* Chrome,Safari4+ */ /* Chrome10+,Safari5.1+ */ /* Opera 11.10+ */ /* IE10+ */
    background: linear-gradient(to right, rgba(0, 131, 200, 0) 0%, rgb(0, 131, 200) 55%, rgb(0, 131, 200) 100%); /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000083c8', endColorstr='#0083c8',GradientType=1 ); /* IE6-8 */
  }
  #off_canvas img {
    width: 100%;
    max-width: 250px;
  }
  #off_canvas .image-title {
    width: 100%;
    display: block;
    text-align: center;
    margin-top: -30px !important;
  }
  #off_canvas li.current > a, #off_canvas li.active > a {
    background: transparent;
    color: #707070 !important;
  }
  #off_canvas li.active {
    background: rgba(0, 131, 200, 0.3) !important;
  }
  /* S C H R I F T E N */
  h1 {
    font-size: 8vw !important;
  }
  .container {
    margin: 10px;
  }
  .logo_kasten {
    height: 110px;
    width: 110px;
    float: left;
  }
  .logo {
    position: absolute;
    z-index: 999;
    float: left;
    width: 100px;
    margin: 42px 0 0 10px;
  }
  .mobile_menu {
    float: right;
    margin: 38px 10px 0 0;
  }
  ul.menu {
    margin: 0;
  }
  /* Sprache */
  #topmenue {
    float: none;
    width: 100%;
  }
  .sprache {
    float: left !important;
    width: auto !important;
    margin: 0 0 0 10px;
  }
  .sprache li {
    float: left;
    height: 100% !important;
  }
  div.mod-languages li {
    margin: 0px;
    height: 110px !important;
  }
  /* TOPMENÜ */
  #nav_kasten {
    width: 100%;
    height: auto;
    position: relative;
    z-index: 999;
    margin: 0 auto;
  }
  nav {
    padding: 0;
    width: 100%;
  }
  /* 1. EBENE */
  #topmenue ul, .sprache {
    list-style-type: none;
    padding: 0;
    height: auto;
  }
  #topmenue li {
    list-style-type: none;
    display: block;
    float: left;
    clear: both;
    width: 100%;
    position: static;
    border-bottom: 1px solid #ccc;
  }
  #topmenue li:last-child {
    border-bottom: none;
  }
  /* Die Links */
  #topmenue a, .sprache div.mod-languages a {
    display: block;
    color: #707070;
    font-size: 18px;
    height: auto;
    padding: 20px 10px;
    margin: 0;
    text-transform: uppercase;
    transition: all 0.3s ease;
  }
  .sprache div.mod-languages a {
    line-height: 110px;
    padding: 0 10px;
  }
  #topmenue a:hover, .sprache div.mod-languages a:hover {
    background: #d9e1f1;
    background: rgba(0, 131, 200, 0.3);
  }
  #topmenue li.current > a, #topmenue .active > a {
    background: rgba(0, 131, 200, 0.7);
    color: #fff;
  }
  .mega-menu {
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0;
  }
  /* 2. EBENE */
  #topmenue ul li ul {
    display: none !important;
  }
  /* BEREICHE */
  #bereiche .row {
    margin: 0;
  }
  #bereiche .col {
    margin-bottom: 10px;
  }
}
/* -------------------- TABLETS -------------------- */
@media only screen and (min-width: 769px) and (max-width: 992px) {
  .logo_kasten {
    height: 130px;
    width: 230px;
    float: left;
  }
  .logo {
    position: absolute;
    z-index: 999;
    float: left;
    width: 170px;
    margin: 55px 0 0 20px;
  }
  /* TOPMENÜ */
  #nav_kasten {
    width: 100%;
    height: 130px;
    position: relative;
    z-index: 999;
    margin: 0 auto;
  }
  nav {
    padding: 0 20px;
    width: 100%;
  }
  /* 1. EBENE */
  #topmenue ul, .sprache {
    list-style-type: none;
    padding: 0;
    height: 130px;
  }
  #topmenue li {
    list-style-type: none;
    display: block;
    float: left;
    position: static;
  }
  /* Die Links */
  #topmenue a, sprache a {
    display: table-cell;
    color: #707070;
    font-size: 16px;
    height: 130px;
    padding: 85px 10px 0 10px;
    text-transform: uppercase;
    transition: all 0.3s ease;
  }
  .sprache div.mod-languages a {
    margin: 0;
    height: 130px;
    padding: 82px 10px 0 10px;
  }
  #topmenue a:hover {
    background: #d9e1f1;
    background: rgba(0, 131, 200, 0.3);
  }
  #topmenue li.current > a, #topmenue .active > a {
    background: rgba(0, 131, 200, 0.7);
    color: #fff;
  }
  .mega-menu {
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0;
  }
  /* 2. EBENE */
  #topmenue ul li ul {
    display: none;
    background: #fff;
    box-shadow: 0 10px 10px -10px #B0B0B0;
    position: absolute;
    margin: 0 auto;
    height: auto;
    width: 100%;
    left: 0;
    right: 0;
    border-top: 2px solid rgb(0, 131, 200);
  }
  #topmenue li li {
    width: 25%;
    float: left;
    display: block !important;
    text-align: center;
  }
  #topmenue li li a {
    display: block;
    height: auto;
    padding: 20px;
    font-size: 15px;
  }
  #topmenue li li a:hover {
    background: rgba(0, 131, 200, 0.3) !important;
  }
  #topmenue li li.current > a, #topmenue li li.active > a {
    background: #fff;
    color: #707070 !important;
  }
  /* Bilder im Mega-Menü. Bis J3 über .moduletable_menu, ab J4 gibt das Chrome html5 "moduletable _menu" aus. */
  #topmenue img {
    width: 100%;
  }
  /* Dropdown */
  #topmenue ul li:hover > ul {
    display: block;
  }
}
/* -------------------- LAPTOP -------------------- */
/* -------------------- DESKTOP -------------------- */
/* Slideshow */
.rslides {
  position: relative;
  z-index: 0;
  list-style: none;
  overflow: hidden;
  width: 100%;
  padding: 0;
  margin: 0;
}
.rslides li {
  backface-visibility: hidden;
  position: absolute;
  width: 100%;
  left: 0;
  top: 0;
  opacity: 0;
  z-index: 1;
  transition: opacity 2s ease-in-out;
}
.rslides li:first-child {
  position: relative;
  opacity: 1;
}
.rslides.laeuft li {
  position: absolute;
  opacity: 0;
  z-index: 1;
}
.rslides.laeuft li.aktiv {
  position: relative;
  opacity: 1;
  z-index: 2;
}
.rslides img {
  display: block;
  height: auto;
  float: left;
  width: 100%;
  border: 0;
}

@media (prefers-reduced-motion: reduce) {
  .rslides li {
    transition: none;
  }
}
/* Lightbox */
.lightbox {
  margin: auto;
  padding: 0;
  border: 0;
  border-radius: 4px;
  background: #f9f9f9;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
  overflow: visible;
  max-width: none;
  max-height: none;
  cursor: pointer;
}
.lightbox::backdrop {
  background: rgba(238, 238, 238, 0.85);
}
.lightbox[open] {
  animation: lightbox-ein 0.2s ease-out;
}
.lightbox img {
  display: block;
  max-width: calc(100vw - 2 * 40px);
  max-height: calc(100vh - 2 * 40px);
  border-radius: 4px;
}

.lightbox-schliessen {
  position: absolute;
  top: -18px;
  right: -18px;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 3px solid #fff;
  border-radius: 50%;
  background: #222;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.5);
  cursor: pointer;
}
.lightbox-schliessen::before, .lightbox-schliessen::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  height: 2px;
  margin: -1px 0 0 -7px;
  background: #fff;
  transform: rotate(45deg);
}
.lightbox-schliessen::after {
  transform: rotate(-45deg);
}

html:has(.lightbox[open]) {
  overflow: hidden;
}

@keyframes lightbox-ein {
  from {
    opacity: 0;
    transform: scale(0.9);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
@media (prefers-reduced-motion: reduce) {
  .lightbox[open] {
    animation: none;
  }
}/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlbXBsYXRlLm1pbi5zY3NzIiwid2VsbC1hcXVhL19mb250cy5zY3NzIiwidGVtcGxhdGUubWluLmNzcyIsIndlbGwtYXF1YS9fdGVtcGxhdGUuc2NzcyIsIndlbGwtYXF1YS9fc2xpZGVzaG93LnNjc3MiLCJ3ZWxsLWFxdWEvX2xpZ2h0Ym94LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0Esc0NBQUE7QUFxQkEsc0JBQUE7QUNuQkE7RUFDQyx3QkFBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQkFBQTtFQUNBLCtEQUFBO0FDSkQ7QUZxQkEsYUFBQTtBR3BCQSxZQUFBO0FBQ0E7RUFDQyxvQ0FBQTtFQUNBLGdCQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxtQkFBQTtBREVEOztBQ0FBO0VBQUssc0NBQUE7QURJTDs7QUNGQSxzQkFBQTtBQUNBO0VBQ0MsZ0JBQUE7RUFDQSxtQkFBQTtFQUNBLHVCQUFBO0FES0Q7O0FDSEE7RUFBbUIsdUJBQUE7QURPbkI7O0FDTEE7Ozs7Ozs7Ozs7Ozs7Ozt1QkFBQTtBQW9CQSxXQUFBO0FBQ0E7RUFBdUIsaUJBQUE7RUFBaUIsaUJBQUE7RUFBaUIsdUJBQUE7QURPekQ7O0FDTkE7RUFBVyxtQkFBQTtBRFVYOztBQ1JBLFVBQUE7QUFDQTswQ0FBQTtBQUlBLDRDQUFBO0FBQ0E7RUFDQyxZQUFBO0VBQ0EsV0FBQTtFQUNBLGNBQUE7QURTRDs7QUNQQTtFQUFpQixXQUFBO0VBQWEsYUFBQTtFQUFlLGtCQUFBO0VBQW9CLFVBQUE7QURjakU7O0FDWkE7RUFDQyxzQkFBQTtBRGVEOztBQ1pBLGtCQUFBO0FBQ0E7RUFDQyxXQUFBO0VBQ0EsYUFBQTtFQUNBLGtDQUFBO0VBQ0EsNEJBQUE7RUFDQSxzQkFBQTtBRGVEOztBQ2JBO0VBQ0MsYUFBQTtFQUNBLFlBQUE7RUFDQSxXQUFBO0FEZ0JEOztBQ2RBO0VBQ0Msa0JBQUE7RUFDQSxZQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxxQkFBQTtB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RUFDRSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxVQUFBO0FGb3VCSjtBRWx1Qkk7RUFDRSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxVQUFBO0FGb3VCTjtBRWh1QkU7RUFDRSxjQUFBO0VBQ0EsWUFBQTtFQUNBLFdBQUE7RUFDQSxXQUFBO0VBQ0EsU0FBQTtBRmt1Qko7O0FFOXRCQTtFQUNFO0lBQ0UsZ0JBQUE7RUZpdUJGO0FBQ0Y7QUZ6dkJBLGFBQUE7QUt6QkE7RUFDRSxZQUFBO0VBQ0EsVUFBQTtFQUNBLFNBQUE7RUFDQSxrQkFBQTtFQUNBLG1CQUFBO0VBQ0EsMENBQUE7RUFDQSxpQkFBQTtFQUNBLGVBQUE7RUFDQSxnQkFBQTtFQUNBLGVBQUE7QUhxeEJGO0FHbnhCRTtFQUNFLHFDQUFBO0FIcXhCSjtBR2x4QkU7RUFDRSxxQ0FBQTtBSG94Qko7QUdqeEJFO0VBQ0UsY0FBQTtFQUNBLGlDQUFBO0VBQ0Esa0NBQUE7RUFDQSxrQkFBQTtBSG14Qko7O0FHOXdCQTtFQUNFLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFlBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RUFDQSxzQkFBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxzQ0FBQTtFQUNBLGVBQUE7QUhpeEJGO0FHL3dCRTtFQUVFLFdBQUE7RUFDQSxrQkFBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBQ0EsV0FBQTtFQUNBLFdBQUE7RUFDQSxxQkFBQTtFQUNBLGdCQUFBO0VBQ0Esd0JBQUE7QUhneEJKO0FHN3dCRTtFQUNFLHlCQUFBO0FIK3dCSjs7QUcxd0JBO0VBQ0UsZ0JBQUE7QUg2d0JGOztBRzF3QkE7RUFDRTtJQUNFLFVBQUE7SUFDQSxxQkFBQTtFSDZ3QkY7RUcxd0JBO0lBQ0UsVUFBQTtJQUNBLG1CQUFBO0VINHdCRjtBQUNGO0FHendCQTtFQUNFO0lBQ0UsZUFBQTtFSDJ3QkY7QUFDRiIsImZpbGUiOiJ0ZW1wbGF0ZS5taW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLy8gS29tbWVudGFyZSBtaXQgRG9wcGVsdGVuIFF1ZXJzdHJpY2ggd2VyZGVuIGluIGRlciBDU1MgbmljaHQgYXVzZ2VnZWJlblxuXG4vLyBQYXJ0aWFscyBiZWRldXRldCBkYXNzIGRpZSBEYXRlaWVuIGF1cyBhbmRlcmVuIERhdGVpZW4gaGllciBoZXJlaW4gZ2V6b2dlbiB1bmQgdmVyYXJiZWl0ZXQgd2VyZGVuLiBBY2h0dW5nLCBkaWUgRGF0ZWllbiBtw7xzc2VuIGJlaSBkZXIgQmVuZW5udW5nIG1pdCBlaW5lbSBVbnRlcnN0cmljaCBhbmZhbmdlbi5cblxuQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyogVGVtcGxhdGUgKFN0YW5kYXJkKSBXZWxsIEFxdWEgQ1NTICovXG5cblxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vL1x0XHRcdFx0QVVGQkFVXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLy8gRGllc2UgRGF0ZWkgYmluZGV0IG51ciBlaW4uIERlciBJbmhhbHQgc3RhbW10IGF1cyBkZXIgZnLDvGhlcmVuIHRlbXBsYXRlcy93ZWxsLWFxdWEvY3NzL3RlbXBsYXRlLmNzczpcbi8vICAgd2VsbC1hcXVhL19mb250cy5zY3NzICAgICBAZm9udC1mYWNlIE9wZW4gU2Fuc1xuLy8gICB3ZWxsLWFxdWEvX3RlbXBsYXRlLnNjc3MgIGFsbGUgw7xicmlnZW4gUmVnZWxuIChTdGFydHN0YW5kLCBub2NoIG5pY2h0IGF1ZmdldGVpbHQpXG4vLyAgIHdlbGwtYXF1YS9fc2xpZGVzaG93LnNjc3Mgw5xiZXJibGVuZHVuZyBkZXIgSGVhZGVyLUJpbGRlciAoc3RhdHQgUmVzcG9uc2l2ZVNsaWRlcylcbi8vICAgd2VsbC1hcXVhL19saWdodGJveC5zY3NzICBHcm/Dn2Fuc2ljaHQgZGVyIFByb2R1a3RiaWxkZXIgKHN0YXR0IEZhbmN5Ym94IDIpXG4vL1xuLy8gQHVzZSBlcnNldHp0IGRhcyB2ZXJhbHRldGUgQGltcG9ydC4gWndlaSBVbnRlcnNjaGllZGUgc2luZCB3aWNodGlnOlxuLy8gICAxLiBKZWRlIERhdGVpIHdpcmQgbnVyIEVJTk1BTCBnZWxhZGVuLCBhdWNoIHdlbm4gbWVocmVyZSBQYXJ0aWFscyBzaWVcbi8vICAgICAgYnJhdWNoZW4uIERlc2hhbGIgc3RlaHQgaW4gamVkZW0gUGFydGlhbCBvYmVuLCB3YXMgZXMgc2VsYnN0IGJlbsO2dGlndC5cbi8vICAgMi4gVmFyaWFibGVuIHVuZCBNaXhpbnMgZ2VsdGVuIG5pY2h0IG1laHIgZ2xvYmFsLiBFaW4gUGFydGlhbCwgZGFzXG4vLyAgICAgIGVpbmUgVmFyaWFibGUgYXVzIGVpbmVtIGFuZGVyZW4gUGFydGlhbCBudXR6dCwgbXVzcyBkaWVzZXMgb2JlbiBwZXIgXCJAdXNlXCIgZWluYmluZGVuLlxuLy9cbi8vIERpZSBSZWloZW5mb2xnZSBoaWVyIGJlc3RpbW10IGRpZSBSZWloZW5mb2xnZSBpbSBlcnpldWd0ZW4gQ1NTLlxuXG4vKiBTY2hyaWZ0IE9wZW4gU2FucyAqL1xuQHVzZSBcIndlbGwtYXF1YS9mb250c1wiO1xuXG4vKiBUZW1wbGF0ZSAqL1xuQHVzZSBcIndlbGwtYXF1YS90ZW1wbGF0ZVwiO1xuXG4vKiBTbGlkZXNob3cgKi9cbkB1c2UgXCJ3ZWxsLWFxdWEvc2xpZGVzaG93XCI7XG5cbi8qIExpZ2h0Ym94ICovXG5AdXNlIFwid2VsbC1hcXVhL2xpZ2h0Ym94XCI7XG4iLCIvL1xuLy8gU0NIUklGVEVOXG4vLyBAZm9udC1mYWNlIERlZmluaXRpb24gZsO8ciBPcGVuIFNhbnMuXG4vLyBEaWUgQ1NTLURhdGVpIGxpZWd0IGluIGFzc2V0cy9jc3MvLCBkaWUgU2NocmlmdCBpbiBmb250cy8gZGVzIFRlbXBsYXRlcywgZGFoZXIgXCIuLi8uLi9mb250cy9cIi5cbi8vIChJbiBkZXIgYmlzaGVyaWdlbiBjc3MvdGVtcGxhdGUuY3NzIHN0YW5kIFwiLi4vZm9udHMvXCIsIHdlaWwgZGllIERhdGVpIGVpbmUgRWJlbmUgaMO2aGVyIGxhZy4pXG4vL1xuXG5AZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCI7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0Zm9udC1kaXNwbGF5OiBzd2FwO1xuXHRzcmM6IHVybChcIi4uLy4uL2ZvbnRzL09wZW5TYW5zLVJlZ3VsYXIudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xufVxuIiwiLyogVGVtcGxhdGUgKFN0YW5kYXJkKSBXZWxsIEFxdWEgQ1NTICovXG4vKiBTY2hyaWZ0IE9wZW4gU2FucyAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi8uLi9mb250cy9PcGVuU2Fucy1SZWd1bGFyLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbn1cbi8qIFRlbXBsYXRlICovXG4vKiBHRU5FUkFMICovXG5odG1sLCBib2R5IHtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNvbG9yOiAjNjY2O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNmNGY2Zjc7XG59XG5cbmJvZHkge1xuICBib3JkZXItdG9wOiAzcHggc29saWQgcmdiKDAsIDEzMSwgMjAwKTtcbn1cblxuLyogUyBDIEggUiBJIEYgVCBFIE4gKi9cbmgxLCAuY29udGVudGhlYWRpbmcsIC5jb21wb25lbnRoZWFkaW5nIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgY29sb3I6IHJnYigwLCAxMzEsIDIwMCk7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBsaW5lLWhlaWdodDogMS40Mjg1NzE0Mztcbn1cblxuLypoMntcblx0Zm9udC13ZWlnaHQ6NDAwO1xuXHRmb250LXNpemU6MThweDtcblx0Y29sb3I6cmdiKDAsMTMxLDIwMCk7XG5cdGxpbmUtaGVpZ2h0Om5vcm1hbDtcblx0bWFyZ2luOjAgMCAxMHB4IDA7fVxuXG5oM3sgZm9udC13ZWlnaHQ6NzAwO1xuXHRmb250LXNpemU6MTZweDtcblx0bWFyZ2luLWJvdHRvbToxMHB4O31cblxucHtcdG1hcmdpbi1ib3R0b206MjBweDtcblx0Zm9udC1zaXplOjE2cHg7XG5cdGxpbmUtaGVpZ2h0OjE3MCU7fVxuXG5icntcdGxpbmUtaGVpZ2h0OjEwMCU7fSovXG4vKiBMaXN0ZW4gKi9cbmFydGljbGUgdWwsIGFydGljbGUgbGkge1xuICBtYXJnaW46IDAgMCAwIDBweDtcbiAgbGluZS1oZWlnaHQ6IDE4MCU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogY2lyY2xlO1xufVxuXG5hcnRpY2xlIHVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLyogTElOS1MgKi9cbi8qYTpsaW5rLCBhOmFjdGl2ZSwgYTp2aXNpdGVke3RleHQtZGVjb3JhdGlvbjpub25lO2NvbG9yOiMwMDkwZTM7fVxuYTpob3Zlcnt0ZXh0LWRlY29yYXRpb246bm9uZTtjb2xvcjojNjY2O30qL1xuLyogUCBPIFMgSSBUIEkgTyBOIEUgTiAgIFUgTiBEICAgQiBPIFggRSBOICovXG5oZWFkZXIge1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLnZpZGVvX2NvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDM1MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG59XG5cbi52aWRlb19oZWFkZXIge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4vKiBoZWFkZXIgQmlsZGVyICovXG4uaGVhZGVyX2ltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDM1MHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuXG4ubG9nb19rYXN0ZW4ge1xuICBoZWlnaHQ6IDE0N3B4O1xuICB3aWR0aDogMzAwcHg7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4ubG9nbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogOTk5O1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDI0MHB4O1xuICBtYXJnaW46IDUycHggMCAwIDIwcHg7XG59XG5cbi8qIFNwcmFjaGUgKi9cbiN0b3BtZW51ZSB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogYXV0bztcbn1cblxuLnNwcmFjaGUge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi5zcHJhY2hlIGxpIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbmRpdi5tb2QtbGFuZ3VhZ2VzIGxpIHtcbiAgbWFyZ2luOiAwcHg7XG59XG5cbi8qIEFiIEo0IGJyaW5ndCBtb2RfbGFuZ3VhZ2VzIGVpZ2VuZSBSZWdlbG4gbWl0IChkaXYubW9kLWxhbmd1YWdlcyBhLCB1bCBsaS5sYW5nLWFjdGl2ZSwgaW1nKSwgZGllIHNwZXppZmlzY2hlciBzaW5kXG4gICBhbHMgZGllIGJpc2hlcmlnZW4gU2VsZWt0b3JlbiAuc3ByYWNoZSBhIHVuZCAubGFuZy1hY3RpdmUuIERpZSBUZW1wbGF0ZS1SZWdlbG4gZsO8ciBkZW4gU3ByYWNodW1zY2hhbHRlciBuZW5uZW4gZGVzaGFsYlxuICAgenVzw6R0emxpY2ggZGl2Lm1vZC1sYW5ndWFnZXMsIHVuZCBkaWUgRmxhZ2dlbiBibGVpYmVuIHdpZSB1bnRlciBKMyBpbmxpbmUuICovXG4uc3ByYWNoZSBkaXYubW9kLWxhbmd1YWdlcyBpbWcge1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG5cbi8qIEFiIEo0IGdlYmVuIEpvb21sYS1Nb2R1bGUgSGlsZnN0ZXh0ZSBmw7xyIFNjcmVlbnJlYWRlciBtaXQgZGVyIEJvb3RzdHJhcC01LUtsYXNzZSB2aXN1YWxseS1oaWRkZW4gYXVzXG4gICAoei4gQi4gXCJTcHJhY2hlIGF1c3fDpGhsZW5cIiBpbSBTcHJhY2h1bXNjaGFsdGVyKS4gQm9vdHN0cmFwIDMga2VubnQgbnVyIHNyLW9ubHksIGRlc2hhbGIgZGllc2VsYmUgUmVnZWwgaGllci4gKi9cbi52aXN1YWxseS1oaWRkZW4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogLTFweCAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCkgIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbn1cblxuLyogVE9QTUVOw5wgKi9cbiNuYXZfa2FzdGVuIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTQ3cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogOTk5O1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxubmF2IHtcbiAgcGFkZGluZzogMCAyMHB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyogMS4gRUJFTkUgKi9cbiN0b3BtZW51ZSB1bCwgLnNwcmFjaGUge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIGhlaWdodDogMTQ3cHg7XG4gIG1hcmdpbjogMDtcbn1cblxuI3RvcG1lbnVlIGxpLCAuc3ByYWNoZSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBwb3NpdGlvbjogc3RhdGljO1xufVxuXG4vKiBEaWUgTGlua3MgKi9cbiN0b3BtZW51ZSBhLCAuc3ByYWNoZSBkaXYubW9kLWxhbmd1YWdlcyBhIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzcwNzA3MDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBoZWlnaHQ6IDE0N3B4O1xuICBwYWRkaW5nOiA5OXB4IDIwcHggMCAyMHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbn1cblxuI3RvcG1lbnVlIGE6aG92ZXIsIC5zcHJhY2hlIGRpdi5tb2QtbGFuZ3VhZ2VzIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZDllMWYxO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDEzMSwgMjAwLCAwLjMpO1xufVxuXG4jdG9wbWVudWUgbGkuY3VycmVudCA+IGEsICN0b3BtZW51ZSAuYWN0aXZlID4gYSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMTMxLCAyMDAsIDAuNyk7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4ubGFuZy1hY3RpdmUsIC5zcHJhY2hlIGRpdi5tb2QtbGFuZ3VhZ2VzIHVsIGxpLmxhbmctYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAxMzEsIDIwMCwgMC4xKTtcbn1cblxuLm1lZ2EtbWVudSB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qIDIuIEVCRU5FICovXG4jdG9wbWVudWUgdWwgbGkgdWwge1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMTBweCAxMHB4IC0xMHB4ICNCMEIwQjA7XG4gIGJveC1zaGFkb3c6IDAgMTBweCAxMHB4IC0xMHB4ICNCMEIwQjA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3JkZXItdG9wOiAycHggc29saWQgcmdiKDAsIDEzMSwgMjAwKTtcbn1cblxuI3RvcG1lbnVlIGxpIGxpIHtcbiAgd2lkdGg6IDI1JTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuI3RvcG1lbnVlIGxpIGxpIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiAyMHB4O1xuICBmb250LXNpemU6IDE1cHg7XG59XG5cbiN0b3BtZW51ZSBsaSBsaSBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAxMzEsIDIwMCwgMC4zKSAhaW1wb3J0YW50O1xufVxuXG4jdG9wbWVudWUgbGkgbGkuY3VycmVudCA+IGEsICN0b3BtZW51ZSBsaSBsaS5hY3RpdmUgPiBhIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICM3MDcwNzAgIWltcG9ydGFudDtcbn1cblxuLyogQmlsZGVyIGltIE1lZ2EtTWVuw7wuIEJpcyBKMyDDvGJlciAubW9kdWxldGFibGVfbWVudSwgYWIgSjQgZ2lidCBkYXMgQ2hyb21lIGh0bWw1IFwibW9kdWxldGFibGUgX21lbnVcIiBhdXMuICovXG4jdG9wbWVudWUgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIERyb3Bkb3duICovXG4jdG9wbWVudWUgdWwgbGk6aG92ZXIgPiB1bCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY29udGFpbmVyIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLmFyZW5hIHtcbiAgbWFyZ2luOiAyMHB4IGF1dG8gMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogMHB4IDBweCA2cHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA1cHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNXB4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG59XG5cbiNhcmVuYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4jY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgd2lkdGg6IDgwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6IDIwcHggMjBweCA2MHB4IDIwcHg7XG59XG5cbiNjb250ZW50X2Z1bGwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAyMHB4IDIwcHggNjBweCAyMHB4O1xufVxuXG4jcmlnaHQge1xuICB3aWR0aDogMjAlO1xuICBmbG9hdDogcmlnaHQ7XG4gIHBhZGRpbmc6IDIwcHggMjBweCA2MHB4IDIwcHg7XG59XG5cbi8qIExpZWdlcG9zaXRpb24gQmlsZGVyICovXG4uaW1nX2NvbnRlbnQge1xuICAvKlx0Ym9yZGVyOjFweCBzb2xpZCAjY2NjOyovXG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDE1MHB4O1xuICBmbG9hdDogbGVmdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cblxuLmJlc2NocmlmdHVuZyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBjb2xvcjogIzY2Njtcbn1cblxuLyogQmV0dGVuc3lzdGVtYmlsZGVyICovXG4uaW1nX3N5c3RlbSB7XG4gIHBhZGRpbmc6IDEwcHg7XG59XG5cbi8qIEdyw7bDn2VudGFiZWxsZSAqL1xuLnRhYmxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxudGQsIHRoIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5saW5rcyB0ZCwgLmxpbmtzIHRoIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLyogQnV0dG9ucyAqL1xuLmJ0bi1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEyOSwgMTc5LCAzOSk7XG4gIGJvcmRlci1jb2xvcjogcmdiKDEwNSwgMTQ2LCAyOCk7XG59XG5cbi5idG4tc3VjY2Vzczpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxMDUsIDE0NiwgMjgpO1xuICBib3JkZXItY29sb3I6IHJnYigxMDUsIDE0NiwgMjgpO1xufVxuXG4vKiBGb290ZXIgKi9cbmZvb3RlciB7XG4gIHBhZGRpbmc6IDAgMjBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBoZWlnaHQ6IDUwcHg7XG59XG5cbmZvb3RlciB1bCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc2VwYXJhdG9yIHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBtYXJnaW46IDAgMjBweCAwIDA7XG4gIGxpbmUtaGVpZ2h0OiA1MHB4O1xufVxuXG4vKiBJbXByZXNzdW0gKi9cbmZvb3RlciBsaSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjNjY2O1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuZm9vdGVyIGxpOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbmZvb3RlciBsaSBhOmxpbmssIGZvb3RlciBsaSBhOmFjdGl2ZSwgZm9vdGVyIGxpIGE6dmlzaXRlZCB7XG4gIGNvbG9yOiAjNjY2O1xuICBmb250LXNpemU6IDEwcHg7XG4gIGxpbmUtaGVpZ2h0OiA1MHB4O1xufVxuXG5mb290ZXIgYTpob3ZlciwgZm9vdGVyIGxpLmN1cnJlbnQgPiBhLCBmb290ZXIgbGkuYWN0aXZlID4gYSB7XG4gIGNvbG9yOiByZ2IoMzIsIDExNywgMTg1KTtcbn1cblxuLyogU1RBUlRTRUlURSAqL1xuI2JlcmVpY2hlIHtcbiAgbWFyZ2luOiAtNTBweCAwIDIwcHggMDtcbn1cblxuLmJveC0xLCAuYm94LTIsIC5ib3gtMyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMjBweDtcbiAgY29sb3I6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggNnB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG59XG5cbi5ib3gtMSB7XG4gIGJhY2tncm91bmQ6IHJnYigyNDYsIDE1OCwgMCk7XG59XG5cbi5ib3gtMiB7XG4gIGJhY2tncm91bmQ6IHJnYigxMjksIDE3OSwgMzkpO1xufVxuXG4uYm94LTMge1xuICBiYWNrZ3JvdW5kOiByZ2IoMCwgMTMxLCAyMDApO1xufVxuXG4vKiBTTElERVNIT1cgLSBoZWFkZXI6IHNpZWhlIF9zbGlkZXNob3cuc2NzcyAoc2VpdCBPa3RvYmVyIDIwMjYgb2huZSBSZXNwb25zaXZlU2xpZGVzKSAqL1xuLnNlcGFyYXRvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5pdGVtLTExNSAuc2VwYXJhdG9yLCAuaXRlbS0xMTYgLnNlcGFyYXRvciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xufVxuXG4ucmVjaHRzIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLSBTTUFSVFBIT05FIC0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIGJvZHkge1xuICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xuICB9XG4gIC5ha3Rpdi1yZWNodHMgYm9keSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH0gLyogTXVzcyBhdWYgaGlkZGVuIHN0ZWhlbiwgZGFtaXQgZGVyIFwibm9ybWFsZVwiIEJlcmVpY2ggbmljaHQgbWl0c2Nyb2xsdCAqL1xuICAvKiBPRkYgZSEgKi9cbiAgLm5vcm1hbCwgLnJlY2h0cyB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnJlY2h0cyB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICAuanMgLnJlY2h0cyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAuanMgLm5vcm1hbCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5ha3Rpdi1yZWNodHMgLnJlY2h0cyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHdpZHRoOiA4MCU7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAuYWt0aXYtcmVjaHRzIC5ub3JtYWwge1xuICAgIG1hcmdpbi1sZWZ0OiAtODAlO1xuICB9XG4gIC8qIE1lbsO8IGltIE9mZi1DYW52YXMgKi9cbiAgLmJ0bi1kZWZhdWx0IHtcbiAgICBtYXJnaW46IDEwcHggMTBweCAwIDA7XG4gIH1cbiAgLmJ0bi1ibG9jayB7XG4gICAgbWFyZ2luOiAxMHB4IDEwcHggMCAwO1xuICB9XG4gIC5laW5rbGFwcGVuIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG4gICNvZmZfY2FudmFzIHVsIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgfVxuICAjb2ZmX2NhbnZhcyBsaSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gICNvZmZfY2FudmFzIGxpOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDEzMSwgMjAwLCAwLjMpICFpbXBvcnRhbnQ7XG4gIH1cbiAgI29mZl9jYW52YXMgbGkgYSB7XG4gICAgY29sb3I6IHJnYigwLCAxMzEsIDIwMCk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbiAgI29mZl9jYW52YXMgLnNlcGFyYXRvciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICAvKiBJRTkgU1ZHLCBuZWVkcyBjb25kaXRpb25hbCBvdmVycmlkZSBvZiAnZmlsdGVyJyB0byAnbm9uZScgKi9cbiAgICBiYWNrZ3JvdW5kOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQRDk0Yld3Z2RtVnljMmx2YmowaU1TNHdJaUEvUGdvOGMzWm5JSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SWdkMmxrZEdnOUlqRXdNQ1VpSUdobGFXZG9kRDBpTVRBd0pTSWdkbWxsZDBKdmVEMGlNQ0F3SURFZ01TSWdjSEpsYzJWeWRtVkJjM0JsWTNSU1lYUnBiejBpYm05dVpTSStDaUFnUEd4cGJtVmhja2R5WVdScFpXNTBJR2xrUFNKbmNtRmtMWFZqWjJjdFoyVnVaWEpoZEdWa0lpQm5jbUZrYVdWdWRGVnVhWFJ6UFNKMWMyVnlVM0JoWTJWUGJsVnpaU0lnZURFOUlqQWxJaUI1TVQwaU1DVWlJSGd5UFNJeE1EQWxJaUI1TWowaU1DVWlQZ29nSUNBZ1BITjBiM0FnYjJabWMyVjBQU0l3SlNJZ2MzUnZjQzFqYjJ4dmNqMGlJekF3T0ROak9DSWdjM1J2Y0MxdmNHRmphWFI1UFNJd0lpOCtDaUFnSUNBOGMzUnZjQ0J2Wm1aelpYUTlJalUxSlNJZ2MzUnZjQzFqYjJ4dmNqMGlJekF3T0ROak9DSWdjM1J2Y0MxdmNHRmphWFI1UFNJeElpOCtDaUFnSUNBOGMzUnZjQ0J2Wm1aelpYUTlJakV3TUNVaUlITjBiM0F0WTI5c2IzSTlJaU13TURnell6Z2lJSE4wYjNBdGIzQmhZMmwwZVQwaU1TSXZQZ29nSUR3dmJHbHVaV0Z5UjNKaFpHbGxiblErQ2lBZ1BISmxZM1FnZUQwaU1DSWdlVDBpTUNJZ2QybGtkR2c5SWpFaUlHaGxhV2RvZEQwaU1TSWdabWxzYkQwaWRYSnNLQ05uY21Ga0xYVmpaMmN0WjJWdVpYSmhkR1ZrS1NJZ0x6NEtQQzl6ZG1jKyk7XG4gICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgwLCAxMzEsIDIwMCwgMCkgMCUsIHJnYigwLCAxMzEsIDIwMCkgNTUlLCByZ2IoMCwgMTMxLCAyMDApIDEwMCUpOyAvKiBGRjMuNisgKi9cbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCwgY29sb3Itc3RvcCgwJSwgcmdiYSgwLCAxMzEsIDIwMCwgMCkpLCBjb2xvci1zdG9wKDU1JSwgcmdiKDAsIDEzMSwgMjAwKSksIGNvbG9yLXN0b3AoMTAwJSwgcmdiKDAsIDEzMSwgMjAwKSkpOyAvKiBDaHJvbWUsU2FmYXJpNCsgKi9cbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsIDEzMSwgMjAwLCAwKSAwJSwgcmdiKDAsIDEzMSwgMjAwKSA1NSUsIHJnYigwLCAxMzEsIDIwMCkgMTAwJSk7IC8qIENocm9tZTEwKyxTYWZhcmk1LjErICovXG4gICAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMCwgMTMxLCAyMDAsIDApIDAlLCByZ2IoMCwgMTMxLCAyMDApIDU1JSwgcmdiKDAsIDEzMSwgMjAwKSAxMDAlKTsgLyogT3BlcmEgMTEuMTArICovXG4gICAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsIDEzMSwgMjAwLCAwKSAwJSwgcmdiKDAsIDEzMSwgMjAwKSA1NSUsIHJnYigwLCAxMzEsIDIwMCkgMTAwJSk7IC8qIElFMTArICovXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDEzMSwgMjAwLCAwKSAwJSwgcmdiKDAsIDEzMSwgMjAwKSA1NSUsIHJnYigwLCAxMzEsIDIwMCkgMTAwJSk7IC8qIFczQyAqL1xuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMDAwMDgzYzgnLCBlbmRDb2xvcnN0cj0nIzAwODNjOCcsR3JhZGllbnRUeXBlPTEgKTsgLyogSUU2LTggKi9cbiAgfVxuICAjb2ZmX2NhbnZhcyBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMjUwcHg7XG4gIH1cbiAgI29mZl9jYW52YXMgLmltYWdlLXRpdGxlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogLTMwcHggIWltcG9ydGFudDtcbiAgfVxuICAjb2ZmX2NhbnZhcyBsaS5jdXJyZW50ID4gYSwgI29mZl9jYW52YXMgbGkuYWN0aXZlID4gYSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICM3MDcwNzAgIWltcG9ydGFudDtcbiAgfVxuICAjb2ZmX2NhbnZhcyBsaS5hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMTMxLCAyMDAsIDAuMykgIWltcG9ydGFudDtcbiAgfVxuICAvKiBTIEMgSCBSIEkgRiBUIEUgTiAqL1xuICBoMSB7XG4gICAgZm9udC1zaXplOiA4dncgIWltcG9ydGFudDtcbiAgfVxuICAuY29udGFpbmVyIHtcbiAgICBtYXJnaW46IDEwcHg7XG4gIH1cbiAgLmxvZ29fa2FzdGVuIHtcbiAgICBoZWlnaHQ6IDExMHB4O1xuICAgIHdpZHRoOiAxMTBweDtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubG9nbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDk5OTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgbWFyZ2luOiA0MnB4IDAgMCAxMHB4O1xuICB9XG4gIC5tb2JpbGVfbWVudSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbjogMzhweCAxMHB4IDAgMDtcbiAgfVxuICB1bC5tZW51IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgLyogU3ByYWNoZSAqL1xuICAjdG9wbWVudWUge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5zcHJhY2hlIHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwIDAgMCAxMHB4O1xuICB9XG4gIC5zcHJhY2hlIGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICBkaXYubW9kLWxhbmd1YWdlcyBsaSB7XG4gICAgbWFyZ2luOiAwcHg7XG4gICAgaGVpZ2h0OiAxMTBweCAhaW1wb3J0YW50O1xuICB9XG4gIC8qIFRPUE1FTsOcICovXG4gICNuYXZfa2FzdGVuIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDk5OTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuICBuYXYge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLyogMS4gRUJFTkUgKi9cbiAgI3RvcG1lbnVlIHVsLCAuc3ByYWNoZSB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gICN0b3BtZW51ZSBsaSB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7XG4gIH1cbiAgI3RvcG1lbnVlIGxpOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIH1cbiAgLyogRGllIExpbmtzICovXG4gICN0b3BtZW51ZSBhLCAuc3ByYWNoZSBkaXYubW9kLWxhbmd1YWdlcyBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogIzcwNzA3MDtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDIwcHggMTBweDtcbiAgICBtYXJnaW46IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgfVxuICAuc3ByYWNoZSBkaXYubW9kLWxhbmd1YWdlcyBhIHtcbiAgICBsaW5lLWhlaWdodDogMTEwcHg7XG4gICAgcGFkZGluZzogMCAxMHB4O1xuICB9XG4gICN0b3BtZW51ZSBhOmhvdmVyLCAuc3ByYWNoZSBkaXYubW9kLWxhbmd1YWdlcyBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZDllMWYxO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMTMxLCAyMDAsIDAuMyk7XG4gIH1cbiAgI3RvcG1lbnVlIGxpLmN1cnJlbnQgPiBhLCAjdG9wbWVudWUgLmFjdGl2ZSA+IGEge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMTMxLCAyMDAsIDAuNyk7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbiAgLm1lZ2EtbWVudSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgLyogMi4gRUJFTkUgKi9cbiAgI3RvcG1lbnVlIHVsIGxpIHVsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyogQkVSRUlDSEUgKi9cbiAgI2JlcmVpY2hlIC5yb3cge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICAjYmVyZWljaGUgLmNvbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxufVxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0gVEFCTEVUUyAtLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkgYW5kIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gIC5sb2dvX2thc3RlbiB7XG4gICAgaGVpZ2h0OiAxMzBweDtcbiAgICB3aWR0aDogMjMwcHg7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxvZ28ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiA5OTk7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE3MHB4O1xuICAgIG1hcmdpbjogNTVweCAwIDAgMjBweDtcbiAgfVxuICAvKiBUT1BNRU7DnCAqL1xuICAjbmF2X2thc3RlbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMzBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogOTk5O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG4gIG5hdiB7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC8qIDEuIEVCRU5FICovXG4gICN0b3BtZW51ZSB1bCwgLnNwcmFjaGUge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGhlaWdodDogMTMwcHg7XG4gIH1cbiAgI3RvcG1lbnVlIGxpIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxuICAvKiBEaWUgTGlua3MgKi9cbiAgI3RvcG1lbnVlIGEsIHNwcmFjaGUgYSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICBjb2xvcjogIzcwNzA3MDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgaGVpZ2h0OiAxMzBweDtcbiAgICBwYWRkaW5nOiA4NXB4IDEwcHggMCAxMHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIH1cbiAgLnNwcmFjaGUgZGl2Lm1vZC1sYW5ndWFnZXMgYSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGhlaWdodDogMTMwcHg7XG4gICAgcGFkZGluZzogODJweCAxMHB4IDAgMTBweDtcbiAgfVxuICAjdG9wbWVudWUgYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogI2Q5ZTFmMTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDEzMSwgMjAwLCAwLjMpO1xuICB9XG4gICN0b3BtZW51ZSBsaS5jdXJyZW50ID4gYSwgI3RvcG1lbnVlIC5hY3RpdmUgPiBhIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDEzMSwgMjAwLCAwLjcpO1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG4gIC5tZWdhLW1lbnUge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC8qIDIuIEVCRU5FICovXG4gICN0b3BtZW51ZSB1bCBsaSB1bCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAxMHB4IDEwcHggLTEwcHggI0IwQjBCMDtcbiAgICBib3gtc2hhZG93OiAwIDEwcHggMTBweCAtMTBweCAjQjBCMEIwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgcmdiKDAsIDEzMSwgMjAwKTtcbiAgfVxuICAjdG9wbWVudWUgbGkgbGkge1xuICAgIHdpZHRoOiAyNSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgI3RvcG1lbnVlIGxpIGxpIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgfVxuICAjdG9wbWVudWUgbGkgbGkgYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAxMzEsIDIwMCwgMC4zKSAhaW1wb3J0YW50O1xuICB9XG4gICN0b3BtZW51ZSBsaSBsaS5jdXJyZW50ID4gYSwgI3RvcG1lbnVlIGxpIGxpLmFjdGl2ZSA+IGEge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgY29sb3I6ICM3MDcwNzAgIWltcG9ydGFudDtcbiAgfVxuICAvKiBCaWxkZXIgaW0gTWVnYS1NZW7DvC4gQmlzIEozIMO8YmVyIC5tb2R1bGV0YWJsZV9tZW51LCBhYiBKNCBnaWJ0IGRhcyBDaHJvbWUgaHRtbDUgXCJtb2R1bGV0YWJsZSBfbWVudVwiIGF1cy4gKi9cbiAgI3RvcG1lbnVlIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLyogRHJvcGRvd24gKi9cbiAgI3RvcG1lbnVlIHVsIGxpOmhvdmVyID4gdWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLSBMQVBUT1AgLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tIERFU0tUT1AgLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFNsaWRlc2hvdyAqL1xuLnJzbGlkZXMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG4ucnNsaWRlcyBsaSB7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiAxO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDJzIGVhc2UtaW4tb3V0O1xufVxuLnJzbGlkZXMgbGk6Zmlyc3QtY2hpbGQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG9wYWNpdHk6IDE7XG59XG4ucnNsaWRlcy5sYWV1ZnQgbGkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IDE7XG59XG4ucnNsaWRlcy5sYWV1ZnQgbGkuYWt0aXYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG9wYWNpdHk6IDE7XG4gIHotaW5kZXg6IDI7XG59XG4ucnNsaWRlcyBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiBhdXRvO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMDtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLnJzbGlkZXMgbGkge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi8qIExpZ2h0Ym94ICovXG4ubGlnaHRib3gge1xuICBtYXJnaW46IGF1dG87XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBiYWNrZ3JvdW5kOiAjZjlmOWY5O1xuICBib3gtc2hhZG93OiAwIDEwcHggMjVweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5saWdodGJveDo6YmFja2Ryb3Age1xuICBiYWNrZ3JvdW5kOiByZ2JhKDIzOCwgMjM4LCAyMzgsIDAuODUpO1xufVxuLmxpZ2h0Ym94W29wZW5dIHtcbiAgYW5pbWF0aW9uOiBsaWdodGJveC1laW4gMC4ycyBlYXNlLW91dDtcbn1cbi5saWdodGJveCBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMHZ3IC0gMiAqIDQwcHgpO1xuICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMiAqIDQwcHgpO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbi5saWdodGJveC1zY2hsaWVzc2VuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0xOHB4O1xuICByaWdodDogLTE4cHg7XG4gIHdpZHRoOiAzNnB4O1xuICBoZWlnaHQ6IDM2cHg7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogM3B4IHNvbGlkICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZDogIzIyMjtcbiAgYm94LXNoYWRvdzogMCAwIDZweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5saWdodGJveC1zY2hsaWVzc2VuOjpiZWZvcmUsIC5saWdodGJveC1zY2hsaWVzc2VuOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IDE0cHg7XG4gIGhlaWdodDogMnB4O1xuICBtYXJnaW46IC0xcHggMCAwIC03cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cbi5saWdodGJveC1zY2hsaWVzc2VuOjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG5cbmh0bWw6aGFzKC5saWdodGJveFtvcGVuXSkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5Aa2V5ZnJhbWVzIGxpZ2h0Ym94LWVpbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5saWdodGJveFtvcGVuXSB7XG4gICAgYW5pbWF0aW9uOiBub25lO1xuICB9XG59IiwiLy9cbi8vIFRFTVBMQVRFXG4vLyBTdGFydHN0YW5kOiBJbmhhbHQgZGVyIGJpc2hlcmlnZW4gdGVtcGxhdGVzL3dlbGwtYXF1YS9jc3MvdGVtcGxhdGUuY3NzIGFiIFwiR0VORVJBTFwiLCB1bnZlcsOkbmRlcnQgw7xiZXJub21tZW4uXG4vLyBEaWUgQGZvbnQtZmFjZSBSZWdlbCBzdGVodCBpbiBfZm9udHMuc2Nzcy5cbi8vIERhcyBBdWZ0ZWlsZW4gaW4gZWluemVsbmUgUGFydGlhbHMgKGFsbGdlbWVpbiwgdHlwbywgbmF2LCAuLi4pIHdpZSBiZWkgSHlkcm9tZWQgZm9sZ3Qgc3DDpHRlci5cbi8vIERpZSBBYnNjaG5pdHRlIGxhc3NlbiBzaWNoIG5pY2h0IGVpbmZhY2ggdHJlbm5lbiwgd2VpbCBkaWUgTWVkaWEgUXVlcmllcyAoU01BUlRQSE9ORSwgVEFCTEVUUywgLi4uKVxuLy8gbWVocmVyZSBCZXJlaWNoZSBnbGVpY2h6ZWl0aWcgZW50aGFsdGVuLlxuLy9cblxuLyogR0VORVJBTCAqL1xuaHRtbCwgYm9keXtcblx0Zm9udC1mYW1pbHk6J09wZW4gU2FucycsIHNhbnMtc2VyaWY7XG5cdHRleHQtYWxpZ246bGVmdDtcblx0Y29sb3I6IzY2Njtcblx0aGVpZ2h0OjEwMCU7XG5cdGJhY2tncm91bmQ6I2Y0ZjZmNzt9XG5cbmJvZHl7Ym9yZGVyLXRvcDozcHggc29saWQgcmdiKDAsMTMxLDIwMCk7fVxuXG4vKiBTIEMgSCBSIEkgRiBUIEUgTiAqL1xuaDEsIC5jb250ZW50aGVhZGluZywgLmNvbXBvbmVudGhlYWRpbmd7XG5cdGZvbnQtd2VpZ2h0OjQwMDtcblx0bWFyZ2luLWJvdHRvbTozMHB4O1xuXHRjb2xvcjpyZ2IoMCwxMzEsMjAwKTt9XG5cdFxuaDEsaDIsaDMsaDQsaDUsaDZ7XHRsaW5lLWhlaWdodDogMS40Mjg1NzE0Mzt9XG5cbi8qaDJ7XG5cdGZvbnQtd2VpZ2h0OjQwMDtcblx0Zm9udC1zaXplOjE4cHg7XG5cdGNvbG9yOnJnYigwLDEzMSwyMDApO1xuXHRsaW5lLWhlaWdodDpub3JtYWw7XG5cdG1hcmdpbjowIDAgMTBweCAwO31cblx0XG5oM3sgZm9udC13ZWlnaHQ6NzAwO1xuXHRmb250LXNpemU6MTZweDtcblx0bWFyZ2luLWJvdHRvbToxMHB4O31cblxucHtcdG1hcmdpbi1ib3R0b206MjBweDtcblx0Zm9udC1zaXplOjE2cHg7XG5cdGxpbmUtaGVpZ2h0OjE3MCU7fVxuXG5icntcdGxpbmUtaGVpZ2h0OjEwMCU7fSovXG5cblxuXG5cbi8qIExpc3RlbiAqL1xuYXJ0aWNsZSB1bCwgYXJ0aWNsZSBsaXttYXJnaW46MCAwIDAgMHB4O2xpbmUtaGVpZ2h0OjE4MCU7bGlzdC1zdHlsZS10eXBlOmNpcmNsZTt9XG5hcnRpY2xlIHVse21hcmdpbi1ib3R0b206MTVweDt9XG5cbi8qIExJTktTICovXG4vKmE6bGluaywgYTphY3RpdmUsIGE6dmlzaXRlZHt0ZXh0LWRlY29yYXRpb246bm9uZTtjb2xvcjojMDA5MGUzO31cbmE6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Y29sb3I6IzY2Njt9Ki9cblxuXG4vKiBQIE8gUyBJIFQgSSBPIE4gRSBOICAgVSBOIEQgICBCIE8gWCBFIE4gKi9cbmhlYWRlcntcblx0aGVpZ2h0OmF1dG87XG5cdHdpZHRoOjEwMCU7XG5cdG1hcmdpbjowIGF1dG87fVxuXG4udmlkZW9fY29udGFpbmVye3dpZHRoOiAxMDAlOyBoZWlnaHQ6IDM1MHB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IHotaW5kZXg6IDA7fVxuXG4udmlkZW9faGVhZGVye1xuXHR3aWR0aDogMTAwJSAhaW1wb3J0YW50O31cblxuXG4vKiBoZWFkZXIgQmlsZGVyICovXG4uaGVhZGVyX2ltZ3tcblx0d2lkdGg6MTAwJTtcblx0aGVpZ2h0OjM1MHB4O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlciBjZW50ZXI7XG5cdGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtcblx0YmFja2dyb3VuZC1zaXplOmNvdmVyO31cblxuLmxvZ29fa2FzdGVue1xuXHRoZWlnaHQ6MTQ3cHg7XG5cdHdpZHRoOjMwMHB4O1xuXHRmbG9hdDpsZWZ0O31cblxuLmxvZ297XG5cdHBvc2l0aW9uOmFic29sdXRlO1xuXHR6LWluZGV4Ojk5OTtcblx0ZmxvYXQ6bGVmdDtcblx0d2lkdGg6MjQwcHg7XG5cdG1hcmdpbjo1MnB4IDAgMCAyMHB4O31cblxuLyogU3ByYWNoZSAqL1x0XG4jdG9wbWVudWV7ZmxvYXQ6IGxlZnQ7IHdpZHRoOiBhdXRvO31cdFxuXG4uc3ByYWNoZXtmbG9hdDogcmlnaHQgIWltcG9ydGFudDt3aWR0aDogYXV0bzt9XG4uc3ByYWNoZSBsaXtmbG9hdDogbGVmdDt9XG5kaXYubW9kLWxhbmd1YWdlcyBsaXttYXJnaW46IDBweDt9XG5cbi8qIEFiIEo0IGJyaW5ndCBtb2RfbGFuZ3VhZ2VzIGVpZ2VuZSBSZWdlbG4gbWl0IChkaXYubW9kLWxhbmd1YWdlcyBhLCB1bCBsaS5sYW5nLWFjdGl2ZSwgaW1nKSwgZGllIHNwZXppZmlzY2hlciBzaW5kXG4gICBhbHMgZGllIGJpc2hlcmlnZW4gU2VsZWt0b3JlbiAuc3ByYWNoZSBhIHVuZCAubGFuZy1hY3RpdmUuIERpZSBUZW1wbGF0ZS1SZWdlbG4gZsO8ciBkZW4gU3ByYWNodW1zY2hhbHRlciBuZW5uZW4gZGVzaGFsYlxuICAgenVzw6R0emxpY2ggZGl2Lm1vZC1sYW5ndWFnZXMsIHVuZCBkaWUgRmxhZ2dlbiBibGVpYmVuIHdpZSB1bnRlciBKMyBpbmxpbmUuICovXG4uc3ByYWNoZSBkaXYubW9kLWxhbmd1YWdlcyBpbWd7ZGlzcGxheTogaW5saW5lO31cblxuLyogQWIgSjQgZ2ViZW4gSm9vbWxhLU1vZHVsZSBIaWxmc3RleHRlIGbDvHIgU2NyZWVucmVhZGVyIG1pdCBkZXIgQm9vdHN0cmFwLTUtS2xhc3NlIHZpc3VhbGx5LWhpZGRlbiBhdXNcbiAgICh6LiBCLiBcIlNwcmFjaGUgYXVzd8OkaGxlblwiIGltIFNwcmFjaHVtc2NoYWx0ZXIpLiBCb290c3RyYXAgMyBrZW5udCBudXIgc3Itb25seSwgZGVzaGFsYiBkaWVzZWxiZSBSZWdlbCBoaWVyLiAqL1xuLnZpc3VhbGx5LWhpZGRlbntcblx0cG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG5cdHdpZHRoOiAxcHggIWltcG9ydGFudDtcblx0aGVpZ2h0OiAxcHggIWltcG9ydGFudDtcblx0cGFkZGluZzogMCAhaW1wb3J0YW50O1xuXHRtYXJnaW46IC0xcHggIWltcG9ydGFudDtcblx0b3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuXHRjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcblx0Ym9yZGVyOiAwICFpbXBvcnRhbnQ7fVxuXG4vKiBUT1BNRU7DnCAqL1xuI25hdl9rYXN0ZW57XG5cdHdpZHRoOjEwMCU7XG5cdGhlaWdodDoxNDdweDtcblx0cG9zaXRpb246cmVsYXRpdmU7XG5cdHotaW5kZXg6OTk5O1xuXHRtYXJnaW46MCBhdXRvO31cblxubmF2e1xuXHRwYWRkaW5nOjAgMjBweDtcblx0d2lkdGg6IDEwMCU7fVxuXG5cdC8qIDEuIEVCRU5FICovXG5cdCN0b3BtZW51ZSB1bCwgLnNwcmFjaGV7XG5cdFx0bGlzdC1zdHlsZS10eXBlOm5vbmU7XG4gIFx0XHRwYWRkaW5nOjA7XG4gIFx0XHRoZWlnaHQ6MTQ3cHg7XG4gIFx0XHRtYXJnaW46IDA7fVxuXG5cdCN0b3BtZW51ZSBsaSwgLnNwcmFjaGV7XG5cdFx0bGlzdC1zdHlsZS10eXBlOm5vbmU7XG5cdFx0ZGlzcGxheTpibG9jaztcblx0XHRmbG9hdDpsZWZ0O1xuXHRcdHBvc2l0aW9uOnN0YXRpYzt9XG5cblx0LyogRGllIExpbmtzICovXG5cdCN0b3BtZW51ZSBhLCAuc3ByYWNoZSBkaXYubW9kLWxhbmd1YWdlcyBhe1xuXHRcdGRpc3BsYXk6dGFibGUtY2VsbDtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0Y29sb3I6IzcwNzA3MDtcblx0XHRmb250LXNpemU6MThweDtcblx0XHRoZWlnaHQ6MTQ3cHg7XG5cdFx0cGFkZGluZzo5OXB4IDIwcHggMCAyMHB4O1xuXHRcdHRleHQtdHJhbnNmb3JtOlx0dXBwZXJjYXNlO1xuXHRcdC13ZWJraXQtdHJhbnNpdGlvbjpcdGFsbCAuM3MgZWFzZTtcblx0XHQtbW96LXRyYW5zaXRpb246XHRhbGwgLjNzIGVhc2U7XG5cdFx0LW8tdHJhbnNpdGlvbjpcdFx0YWxsIC4zcyBlYXNlO1xuXHRcdHRyYW5zaXRpb246XHRcdFx0YWxsIC4zcyBlYXNlO31cblx0XHRcblx0I3RvcG1lbnVlIGE6aG92ZXIsIC5zcHJhY2hlIGRpdi5tb2QtbGFuZ3VhZ2VzIGE6aG92ZXJ7XG5cdFx0YmFja2dyb3VuZDojZDllMWYxO1xuXHRcdGJhY2tncm91bmQ6cmdiYSgwLDEzMSwyMDAsMC4zKTt9XG5cdCN0b3BtZW51ZSBsaS5jdXJyZW50PmEsICN0b3BtZW51ZSAuYWN0aXZlPmF7XG5cdFx0YmFja2dyb3VuZDpyZ2JhKDAsMTMxLDIwMCwwLjcpO1xuXHRcdGNvbG9yOiAjZmZmO31cblx0LmxhbmctYWN0aXZlLCAuc3ByYWNoZSBkaXYubW9kLWxhbmd1YWdlcyB1bCBsaS5sYW5nLWFjdGl2ZXsgYmFja2dyb3VuZDpyZ2JhKDAsIDEzMSwgMjAwLCAwLjEpO31cblxuXHRcdC5tZWdhLW1lbnV7XG5cdFx0XHR3aWR0aDoxMDAlICFpbXBvcnRhbnQ7XG5cdFx0XHRtYXJnaW46MCBhdXRvICFpbXBvcnRhbnQ7XG5cdFx0XHRwYWRkaW5nOjA7fVxuXHRcdFx0XG5cdC8qIDIuIEVCRU5FICovXG5cdCN0b3BtZW51ZSB1bCBsaSB1bHtcblx0XHRkaXNwbGF5Om5vbmU7XG5cdFx0YmFja2dyb3VuZDojZmZmO1xuXHRcdC13ZWJraXQtYm94LXNoYWRvdzowIDEwcHggMTBweCAtMTBweCAjQjBCMEIwO1xuXHRcdGJveC1zaGFkb3c6MCAxMHB4IDEwcHggLTEwcHggI0IwQjBCMDtcblx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRtYXJnaW46MCBhdXRvO1xuXHRcdGhlaWdodDphdXRvO1xuXHRcdHdpZHRoOjEwMCU7XG5cdFx0bGVmdDowO1xuXHRcdHJpZ2h0OjA7XG5cdFx0Ym9yZGVyLXRvcDoycHggc29saWQgcmdiKDAsMTMxLDIwMCk7fVxuXG5cdCN0b3BtZW51ZSBsaSBsaXtcblx0XHR3aWR0aDoyNSU7XG5cdFx0ZmxvYXQ6bGVmdDtcblx0XHRkaXNwbGF5OmJsb2NrICFpbXBvcnRhbnQ7XG5cdFx0dGV4dC1hbGlnbjpjZW50ZXI7fVxuXG5cdCN0b3BtZW51ZSBsaSBsaSBhe1xuXHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0aGVpZ2h0OmF1dG87XG5cdFx0cGFkZGluZzoyMHB4O1xuXHRcdGZvbnQtc2l6ZToxNXB4O31cdFxuXHRcdFxuXHQjdG9wbWVudWUgbGkgbGkgYTpob3ZlcntiYWNrZ3JvdW5kOnJnYmEoMCwxMzEsMjAwLDAuMykgIWltcG9ydGFudDt9XG5cdCN0b3BtZW51ZSBsaSBsaS5jdXJyZW50PmEsICN0b3BtZW51ZSBsaSBsaS5hY3RpdmU+YXtiYWNrZ3JvdW5kOiNmZmY7Y29sb3I6IzcwNzA3MCAhaW1wb3J0YW50O31cblxuXHQvKiBCaWxkZXIgaW0gTWVnYS1NZW7DvC4gQmlzIEozIMO8YmVyIC5tb2R1bGV0YWJsZV9tZW51LCBhYiBKNCBnaWJ0IGRhcyBDaHJvbWUgaHRtbDUgXCJtb2R1bGV0YWJsZSBfbWVudVwiIGF1cy4gKi9cblx0I3RvcG1lbnVlIGltZ3t3aWR0aDoxMDAlO31cblxuXHQvKiBEcm9wZG93biAqL1xuXHQjdG9wbWVudWUgdWwgbGk6aG92ZXIgPiB1bHtkaXNwbGF5OmJsb2NrO31cblxuLmNvbnRhaW5lcntcblx0cGFkZGluZzogMDt9XG5cdFxuLmFyZW5he1xuXHRtYXJnaW46IDIwcHggYXV0byAwO1xuXHRib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuXHRiYWNrZ3JvdW5kOiAjZmZmO1xuXHRib3gtc2hhZG93OiAwcHggMHB4IDZweCByZ2JhKDAsMCwwLDAuMDUpO1xuXHQtbW96LWJvcmRlci1yYWRpdXM6XHRcdDVweDtcblx0LXdlYmtpdC1ib3JkZXItcmFkaXVzOlx0NXB4O1xuXHRib3JkZXItcmFkaXVzOlx0XHRcdDVweDt9XG5cbiNhcmVuYXtcblx0d2lkdGg6MTAwJTtcblx0bWFyZ2luOjAgYXV0bztcblx0aGVpZ2h0OmF1dG87fVxuXG4jY29udGVudHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAwO1xuXHR3aWR0aDo4MCU7XG5cdGZsb2F0OiBsZWZ0O1xuXHRwYWRkaW5nOjIwcHggMjBweCA2MHB4IDIwcHg7fVxuI2NvbnRlbnRfZnVsbHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAwO1xuXHR3aWR0aDoxMDAlO1xuXHRwYWRkaW5nOjIwcHggMjBweCA2MHB4IDIwcHg7fVxuXHRcbiNyaWdodHtcblx0d2lkdGg6MjAlO1xuXHRmbG9hdDpyaWdodDtcblx0cGFkZGluZzoyMHB4IDIwcHggNjBweCAyMHB4O31cblxuLyogTGllZ2Vwb3NpdGlvbiBCaWxkZXIgKi9cbi5pbWdfY29udGVudHtcbi8qXHRib3JkZXI6MXB4IHNvbGlkICNjY2M7Ki9cblx0d2lkdGg6MTAwJTtcblx0aGVpZ2h0OjE1MHB4O1xuXHRmbG9hdDpsZWZ0O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlciBjZW50ZXI7XG5cdGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtcblx0YmFja2dyb3VuZC1zaXplOmNvdmVyO31cblxuLmJlc2NocmlmdHVuZ3tcblx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cdGZvbnQtc2l6ZToxNHB4O1xuXHRjb2xvcjojNjY2O31cblxuLyogQmV0dGVuc3lzdGVtYmlsZGVyICovXG4uaW1nX3N5c3RlbXtwYWRkaW5nOiAxMHB4O31cblxuLyogR3LDtsOfZW50YWJlbGxlICovXHRcbi50YWJsZXttYXJnaW4tYm90dG9tOiAwO31cbnRkLCB0aHt0ZXh0LWFsaWduOiByaWdodDt9XG4ubGlua3MgdGQsIC5saW5rcyB0aHt0ZXh0LWFsaWduOiBsZWZ0O31cblxuLyogQnV0dG9ucyAqL1xuLmJ0bi1zdWNjZXNze2JhY2tncm91bmQtY29sb3I6IHJnYigxMjksMTc5LDM5KTtib3JkZXItY29sb3I6cmdiKDEwNSwgMTQ2LCAyOCk7fVxuLmJ0bi1zdWNjZXNzOmhvdmVye2JhY2tncm91bmQtY29sb3I6IHJnYigxMDUsIDE0NiwgMjgpO2JvcmRlci1jb2xvcjpyZ2IoMTA1LCAxNDYsIDI4KTt9XG5cblxuLyogRm9vdGVyICovXG5mb290ZXJ7XG5cdHBhZGRpbmc6MCAyMHB4O1xuXHR3aWR0aDoxMDAlO1xuXHRtYXJnaW46MCBhdXRvO1xuXHRoZWlnaHQ6NTBweDt9XG5cblxuZm9vdGVyIHVse3dpZHRoOjEwMCU7fVxuLnNlcGFyYXRvcntmb250LXNpemU6MTBweDttYXJnaW46IDAgMjBweCAwIDA7bGluZS1oZWlnaHQ6NTBweDt9IFxuXG4vKiBJbXByZXNzdW0gKi9cbmZvb3RlciBsaXtcblx0ZGlzcGxheTppbmxpbmU7XG5cdGxpc3Qtc3R5bGUtdHlwZTpub25lO1xuXHR0ZXh0LWRlY29yYXRpb246bm9uZTtcblx0Y29sb3I6IzY2Njtcblx0bWFyZ2luLXJpZ2h0OjIwcHg7XG5cdGZsb2F0OiByaWdodDt9XG5cbmZvb3RlciBsaTpsYXN0LWNoaWxke21hcmdpbi1yaWdodDowO31cbmZvb3RlciBsaSBhOmxpbmssIGZvb3RlciBsaSBhOmFjdGl2ZSwgZm9vdGVyIGxpIGE6dmlzaXRlZHtjb2xvcjojNjY2O2ZvbnQtc2l6ZToxMHB4O2xpbmUtaGVpZ2h0OiA1MHB4O31cbmZvb3RlciBhOmhvdmVyLCBmb290ZXIgbGkuY3VycmVudD5hLCBmb290ZXIgbGkuYWN0aXZlPmF7Y29sb3I6cmdiKDMyLDExNywxODUpO31cblx0XG4vKiBTVEFSVFNFSVRFICovXG4jYmVyZWljaGV7bWFyZ2luOiAtNTBweCAwIDIwcHggMDt9XG5cbi5ib3gtMSwgLmJveC0yLCAuYm94LTN7XG5cdHRleHQtYWxpZ246IGNlbnRlcjsgXG5cdHBhZGRpbmc6IDIwcHg7XG5cdGNvbG9yOiAjZmZmO1xuXHRib3gtc2hhZG93OiAwcHggMHB4IDZweCByZ2JhKDAsMCwwLDAuMjUpO31cblxuLmJveC0xe2JhY2tncm91bmQ6IHJnYigyNDYsMTU4LDApO31cbi5ib3gtMntiYWNrZ3JvdW5kOiByZ2IoMTI5LDE3OSwzOSk7fVxuLmJveC0ze2JhY2tncm91bmQ6IHJnYigwLDEzMSwyMDApO31cblxuXG4vKiBTTElERVNIT1cgLSBoZWFkZXI6IHNpZWhlIF9zbGlkZXNob3cuc2NzcyAoc2VpdCBPa3RvYmVyIDIwMjYgb2huZSBSZXNwb25zaXZlU2xpZGVzKSAqL1xuIFxuLnNlcGFyYXRvcntkaXNwbGF5OiBub25lO30gXG4uaXRlbS0xMTUgLnNlcGFyYXRvciwgLml0ZW0tMTE2IC5zZXBhcmF0b3J7ZGlzcGxheTppbmxpbmUtYmxvY2sgIWltcG9ydGFudDt9XG4ucmVjaHRze2Rpc3BsYXk6IG5vbmUgIWltcG9ydGFudDt9IFxuIFxuIFxuIFxuIFxuIFxuIFxuIFxuIFxuIFxuIFxuIFxuIFxuIFxuIFxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0gU01BUlRQSE9ORSAtLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDo3NjhweCkge1x0XG5cbmJvZHl7Zm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7fVxuXG4uYWt0aXYtcmVjaHRzIGJvZHl7b3ZlcmZsb3c6IGF1dG87fSAvKiBNdXNzIGF1ZiBoaWRkZW4gc3RlaGVuLCBkYW1pdCBkZXIgXCJub3JtYWxlXCIgQmVyZWljaCBuaWNodCBtaXRzY3JvbGx0ICovXG5cbi8qIE9GRiBlISAqL1xuLm5vcm1hbCwgLnJlY2h0c3tcblx0LXdlYmtpdC10cmFuc2l0aW9uOlx0YWxsIC41cyBlYXNlO1xuXHQtbW96LXRyYW5zaXRpb246XHRhbGwgLjVzIGVhc2U7XG5cdC1vLXRyYW5zaXRpb246XHRcdGFsbCAuNXMgZWFzZTtcblx0dHJhbnNpdGlvbjpcdFx0XHRhbGwgLjVzIGVhc2U7XG5cdHdpZHRoOjEwMCU7fVxuXG4ucmVjaHRze1xuXHRkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXHR3aWR0aDogMDtcblx0aGVpZ2h0OiBhdXRvO1xuXHRvdmVyZmxvdzogaGlkZGVuO31cblxuLmpzIC5yZWNodHN7XG4gIG1hcmdpbi1yaWdodDotMTAwJTtcbiAgZmxvYXQ6bGVmdDt9XG4gIFxuLmpzIC5ub3JtYWx7XG4gIG1hcmdpbi1yaWdodDowO1xuICBmbG9hdDpsZWZ0O31cblxuLmFrdGl2LXJlY2h0cyAucmVjaHRze1xuICBtYXJnaW4tcmlnaHQ6MDtcbiAgd2lkdGg6ODAlO1xuICBwYWRkaW5nOjA7fVxuXG4uYWt0aXYtcmVjaHRzIC5ub3JtYWx7XG4gIG1hcmdpbi1sZWZ0Oi04MCU7fVxuXG5cbi8qIE1lbsO8IGltIE9mZi1DYW52YXMgKi9cbi5idG4tZGVmYXVsdHsgICAgXG5cdG1hcmdpbjogMTBweCAxMHB4IDAgMDt9XG5cbi5idG4tYmxvY2t7bWFyZ2luOiAxMHB4IDEwcHggMCAwO31cblxuLmVpbmtsYXBwZW57bWFyZ2luLWJvdHRvbTogMjBweDt9XG5cbiNvZmZfY2FudmFzIHVse1xuXHRwYWRkaW5nOiAwO1xuXHR3aWR0aDogMTAwJTsgXG5cdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTt9XG5cbiNvZmZfY2FudmFzIGxpe3RleHQtYWxpZ246Y2VudGVyO31cbiNvZmZfY2FudmFzIGxpOmhvdmVye2JhY2tncm91bmQ6cmdiYSgwLDEzMSwyMDAsMC4zKSAhaW1wb3J0YW50O31cbiNvZmZfY2FudmFzIGxpIGF7Y29sb3I6cmdiKDAsMTMxLDIwMCk7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO3RleHQtZGVjb3JhdGlvbjpub25lO31cdFxuXG4jb2ZmX2NhbnZhcyAuc2VwYXJhdG9ye1xuXHRkaXNwbGF5OmJsb2NrOyBcblx0d2lkdGg6MTAwJTsgXG5cdGhlaWdodDoxcHg7IFxuXHRtYXJnaW46MDsgXG5cdGZvbnQtc2l6ZTogMDtcblxuLyogSUU5IFNWRywgbmVlZHMgY29uZGl0aW9uYWwgb3ZlcnJpZGUgb2YgJ2ZpbHRlcicgdG8gJ25vbmUnICovXG5iYWNrZ3JvdW5kOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQRDk0Yld3Z2RtVnljMmx2YmowaU1TNHdJaUEvUGdvOGMzWm5JSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SWdkMmxrZEdnOUlqRXdNQ1VpSUdobGFXZG9kRDBpTVRBd0pTSWdkbWxsZDBKdmVEMGlNQ0F3SURFZ01TSWdjSEpsYzJWeWRtVkJjM0JsWTNSU1lYUnBiejBpYm05dVpTSStDaUFnUEd4cGJtVmhja2R5WVdScFpXNTBJR2xrUFNKbmNtRmtMWFZqWjJjdFoyVnVaWEpoZEdWa0lpQm5jbUZrYVdWdWRGVnVhWFJ6UFNKMWMyVnlVM0JoWTJWUGJsVnpaU0lnZURFOUlqQWxJaUI1TVQwaU1DVWlJSGd5UFNJeE1EQWxJaUI1TWowaU1DVWlQZ29nSUNBZ1BITjBiM0FnYjJabWMyVjBQU0l3SlNJZ2MzUnZjQzFqYjJ4dmNqMGlJekF3T0ROak9DSWdjM1J2Y0MxdmNHRmphWFI1UFNJd0lpOCtDaUFnSUNBOGMzUnZjQ0J2Wm1aelpYUTlJalUxSlNJZ2MzUnZjQzFqYjJ4dmNqMGlJekF3T0ROak9DSWdjM1J2Y0MxdmNHRmphWFI1UFNJeElpOCtDaUFnSUNBOGMzUnZjQ0J2Wm1aelpYUTlJakV3TUNVaUlITjBiM0F0WTI5c2IzSTlJaU13TURnell6Z2lJSE4wYjNBdGIzQmhZMmwwZVQwaU1TSXZQZ29nSUR3dmJHbHVaV0Z5UjNKaFpHbGxiblErQ2lBZ1BISmxZM1FnZUQwaU1DSWdlVDBpTUNJZ2QybGtkR2c5SWpFaUlHaGxhV2RvZEQwaU1TSWdabWxzYkQwaWRYSnNLQ05uY21Ga0xYVmpaMmN0WjJWdVpYSmhkR1ZrS1NJZ0x6NEtQQzl6ZG1jKyk7XG5iYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCAgcmdiYSgwLDEzMSwyMDAsMCkgMCUsIHJnYmEoMCwxMzEsMjAwLDEpIDU1JSwgcmdiYSgwLDEzMSwyMDAsMSkgMTAwJSk7IC8qIEZGMy42KyAqL1xuYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGNvbG9yLXN0b3AoMCUscmdiYSgwLDEzMSwyMDAsMCkpLCBjb2xvci1zdG9wKDU1JSxyZ2JhKDAsMTMxLDIwMCwxKSksIGNvbG9yLXN0b3AoMTAwJSxyZ2JhKDAsMTMxLDIwMCwxKSkpOyAvKiBDaHJvbWUsU2FmYXJpNCsgKi9cbmJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICByZ2JhKDAsMTMxLDIwMCwwKSAwJSxyZ2JhKDAsMTMxLDIwMCwxKSA1NSUscmdiYSgwLDEzMSwyMDAsMSkgMTAwJSk7IC8qIENocm9tZTEwKyxTYWZhcmk1LjErICovXG5iYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgIHJnYmEoMCwxMzEsMjAwLDApIDAlLHJnYmEoMCwxMzEsMjAwLDEpIDU1JSxyZ2JhKDAsMTMxLDIwMCwxKSAxMDAlKTsgLyogT3BlcmEgMTEuMTArICovXG5iYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KGxlZnQsICByZ2JhKDAsMTMxLDIwMCwwKSAwJSxyZ2JhKDAsMTMxLDIwMCwxKSA1NSUscmdiYSgwLDEzMSwyMDAsMSkgMTAwJSk7IC8qIElFMTArICovXG5iYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICByZ2JhKDAsMTMxLDIwMCwwKSAwJSxyZ2JhKDAsMTMxLDIwMCwxKSA1NSUscmdiYSgwLDEzMSwyMDAsMSkgMTAwJSk7IC8qIFczQyAqL1xuZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwMDAwODNjOCcsIGVuZENvbG9yc3RyPScjMDA4M2M4JyxHcmFkaWVudFR5cGU9MSApOyAvKiBJRTYtOCAqL31cblxuI29mZl9jYW52YXMgaW1ne3dpZHRoOjEwMCU7bWF4LXdpZHRoOjI1MHB4O31cbiNvZmZfY2FudmFzIC5pbWFnZS10aXRsZXt3aWR0aDoxMDAlO2Rpc3BsYXk6YmxvY2s7dGV4dC1hbGlnbjpjZW50ZXI7bWFyZ2luLXRvcDotMzBweCFpbXBvcnRhbnQ7fVxuI29mZl9jYW52YXMgbGkuY3VycmVudD5hLCAjb2ZmX2NhbnZhcyBsaS5hY3RpdmU+YXtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOiM3MDcwNzAgIWltcG9ydGFudDt9XG4jb2ZmX2NhbnZhcyBsaS5hY3RpdmV7YmFja2dyb3VuZDpyZ2JhKDAsMTMxLDIwMCwwLjMpICFpbXBvcnRhbnQ7fVxuXG5cbi8qIFMgQyBIIFIgSSBGIFQgRSBOICovXG5oMXtmb250LXNpemU6OHZ3ICFpbXBvcnRhbnQ7fVxuXG5cbi5jb250YWluZXJ7bWFyZ2luOiAxMHB4O31cblx0XG4ubG9nb19rYXN0ZW57XG5cdGhlaWdodDoxMTBweDtcblx0d2lkdGg6MTEwcHg7XG5cdGZsb2F0OmxlZnQ7fVxuXHRcbi5sb2dve1xuXHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0ei1pbmRleDo5OTk7XG5cdGZsb2F0OmxlZnQ7XG5cdHdpZHRoOjEwMHB4O1xuXHRtYXJnaW46NDJweCAwIDAgMTBweDt9XHRcdFxuXHRcbi5tb2JpbGVfbWVudXtmbG9hdDogcmlnaHQ7IG1hcmdpbjogMzhweCAxMHB4IDAgMDt9XG5cdFxudWwubWVudXttYXJnaW46IDA7fVx0XG5cdFxuLyogU3ByYWNoZSAqL1x0XG4jdG9wbWVudWUge2Zsb2F0OiBub25lOyB3aWR0aDogMTAwJTt9XG5cbi5zcHJhY2hle2Zsb2F0OmxlZnQgIWltcG9ydGFudDt3aWR0aDogYXV0byAhaW1wb3J0YW50OyBtYXJnaW46IDAgMCAwIDEwcHg7fVxuLnNwcmFjaGUgbGl7ZmxvYXQ6IGxlZnQ7IGhlaWdodDogMTAwJSAhaW1wb3J0YW50O31cbmRpdi5tb2QtbGFuZ3VhZ2VzIGxpe21hcmdpbjogMHB4OyBoZWlnaHQ6IDExMHB4ICFpbXBvcnRhbnQ7fVxuXHRcblx0XG5cdC8qIFRPUE1FTsOcICovXG4jbmF2X2thc3Rlbntcblx0d2lkdGg6MTAwJTtcblx0aGVpZ2h0OmF1dG87XG5cdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHR6LWluZGV4Ojk5OTtcblx0bWFyZ2luOjAgYXV0bzt9XG5cbm5hdntcblx0cGFkZGluZzowO1xuXHR3aWR0aDogMTAwJTt9XG5cblx0LyogMS4gRUJFTkUgKi9cblx0I3RvcG1lbnVlIHVsLCAuc3ByYWNoZXtcblx0XHRsaXN0LXN0eWxlLXR5cGU6bm9uZTtcbiAgXHRcdHBhZGRpbmc6MDtcbiAgXHRcdGhlaWdodDphdXRvO31cblxuXHQjdG9wbWVudWUgbGl7XG5cdFx0bGlzdC1zdHlsZS10eXBlOm5vbmU7XG5cdFx0ZGlzcGxheTpibG9jaztcblx0XHRmbG9hdDpsZWZ0O1xuXHRcdGNsZWFyOiBib3RoO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdHBvc2l0aW9uOnN0YXRpYztcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYzt9XHRcblx0XHRcblx0I3RvcG1lbnVlIGxpOmxhc3QtY2hpbGR7Ym9yZGVyLWJvdHRvbTogbm9uZTt9XG5cblx0LyogRGllIExpbmtzICovXG5cdCN0b3BtZW51ZSBhLCAuc3ByYWNoZSBkaXYubW9kLWxhbmd1YWdlcyBhe1xuXHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0Y29sb3I6IzcwNzA3MDtcblx0XHRmb250LXNpemU6MThweDtcblx0XHRoZWlnaHQ6YXV0bztcblx0XHRwYWRkaW5nOjIwcHggMTBweDtcblx0XHRtYXJnaW46IDA7XG5cdFx0dGV4dC10cmFuc2Zvcm06XHR1cHBlcmNhc2U7XG5cdFx0LXdlYmtpdC10cmFuc2l0aW9uOlx0YWxsIC4zcyBlYXNlO1xuXHRcdC1tb3otdHJhbnNpdGlvbjpcdGFsbCAuM3MgZWFzZTtcblx0XHQtby10cmFuc2l0aW9uOlx0XHRhbGwgLjNzIGVhc2U7XG5cdFx0dHJhbnNpdGlvbjpcdFx0XHRhbGwgLjNzIGVhc2U7fVxuXHRcblx0LnNwcmFjaGUgZGl2Lm1vZC1sYW5ndWFnZXMgYXtsaW5lLWhlaWdodDogMTEwcHg7IHBhZGRpbmc6IDAgMTBweDt9XHRcblx0XHRcblx0I3RvcG1lbnVlIGE6aG92ZXIgLCAuc3ByYWNoZSBkaXYubW9kLWxhbmd1YWdlcyBhOmhvdmVye1xuXHRcdGJhY2tncm91bmQ6I2Q5ZTFmMTtcblx0XHRiYWNrZ3JvdW5kOnJnYmEoMCwxMzEsMjAwLDAuMyk7fVxuXHQjdG9wbWVudWUgbGkuY3VycmVudD5hLCAjdG9wbWVudWUgLmFjdGl2ZT5he1xuXHRcdGJhY2tncm91bmQ6cmdiYSgwLDEzMSwyMDAsMC43KTtcblx0XHRjb2xvcjogI2ZmZjt9XG5cblx0XHQubWVnYS1tZW51e1xuXHRcdFx0d2lkdGg6MTAwJSAhaW1wb3J0YW50O1xuXHRcdFx0bWFyZ2luOjAgYXV0byAhaW1wb3J0YW50O1xuXHRcdFx0cGFkZGluZzowO31cblx0XHRcdFxuXHQvKiAyLiBFQkVORSAqL1xuXHQjdG9wbWVudWUgdWwgbGkgdWx7XG5cdFx0ZGlzcGxheTpub25lICFpbXBvcnRhbnQ7fVxuXG5cbi8qIEJFUkVJQ0hFICovXG4jYmVyZWljaGUgLnJvd3ttYXJnaW46MDt9XG4jYmVyZWljaGUgLmNvbHttYXJnaW4tYm90dG9tOiAxMHB4O31cblx0XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tIFRBQkxFVFMgLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IDc2OXB4KSBhbmQgKG1heC13aWR0aCA6OTkycHgpIHtcblx0XG4ubG9nb19rYXN0ZW57XG5cdGhlaWdodDoxMzBweDtcblx0d2lkdGg6MjMwcHg7XG5cdGZsb2F0OmxlZnQ7fVxuXHRcbi5sb2dve1xuXHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0ei1pbmRleDo5OTk7XG5cdGZsb2F0OmxlZnQ7XG5cdHdpZHRoOjE3MHB4O1xuXHRtYXJnaW46NTVweCAwIDAgMjBweDt9XHRcblx0XG5cbi8qIFRPUE1FTsOcICovXG4jbmF2X2thc3Rlbntcblx0d2lkdGg6MTAwJTtcblx0aGVpZ2h0OjEzMHB4O1xuXHRwb3NpdGlvbjpyZWxhdGl2ZTtcblx0ei1pbmRleDo5OTk7XG5cdG1hcmdpbjowIGF1dG87fVxuXG5uYXZ7XG5cdHBhZGRpbmc6MCAyMHB4O1xuXHR3aWR0aDogMTAwJTt9XG5cblx0LyogMS4gRUJFTkUgKi9cblx0I3RvcG1lbnVlIHVsLCAuc3ByYWNoZXtcblx0XHRsaXN0LXN0eWxlLXR5cGU6bm9uZTtcbiAgXHRcdHBhZGRpbmc6MDtcbiAgXHRcdGhlaWdodDoxMzBweDt9XG5cblx0I3RvcG1lbnVlIGxpe1xuXHRcdGxpc3Qtc3R5bGUtdHlwZTpub25lO1xuXHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0ZmxvYXQ6bGVmdDtcblx0XHRwb3NpdGlvbjpzdGF0aWM7fVxuXG5cdC8qIERpZSBMaW5rcyAqL1xuXHQjdG9wbWVudWUgYSwgc3ByYWNoZSBhe1xuXHRcdGRpc3BsYXk6dGFibGUtY2VsbDtcblx0XHRjb2xvcjojNzA3MDcwO1xuXHRcdGZvbnQtc2l6ZToxNnB4O1xuXHRcdGhlaWdodDoxMzBweDtcblx0XHRwYWRkaW5nOjg1cHggMTBweCAwIDEwcHg7XG5cdFx0dGV4dC10cmFuc2Zvcm06XHR1cHBlcmNhc2U7XG5cdFx0LXdlYmtpdC10cmFuc2l0aW9uOlx0YWxsIC4zcyBlYXNlO1xuXHRcdC1tb3otdHJhbnNpdGlvbjpcdGFsbCAuM3MgZWFzZTtcblx0XHQtby10cmFuc2l0aW9uOlx0XHRhbGwgLjNzIGVhc2U7XG5cdFx0dHJhbnNpdGlvbjpcdFx0XHRhbGwgLjNzIGVhc2U7fVxuXHRcdFxuXHQuc3ByYWNoZSBkaXYubW9kLWxhbmd1YWdlcyBhe21hcmdpbjogMDsgaGVpZ2h0OiAxMzBweDsgcGFkZGluZzogODJweCAxMHB4IDAgMTBweDt9XG5cdFx0XG5cdCN0b3BtZW51ZSBhOmhvdmVye1xuXHRcdGJhY2tncm91bmQ6I2Q5ZTFmMTtcblx0XHRiYWNrZ3JvdW5kOnJnYmEoMCwxMzEsMjAwLDAuMyk7fVxuXHQjdG9wbWVudWUgbGkuY3VycmVudD5hLCAjdG9wbWVudWUgLmFjdGl2ZT5he1xuXHRcdGJhY2tncm91bmQ6cmdiYSgwLDEzMSwyMDAsMC43KTtcblx0XHRjb2xvcjogI2ZmZjt9XG5cblx0XHQubWVnYS1tZW51e1xuXHRcdFx0d2lkdGg6MTAwJSAhaW1wb3J0YW50O1xuXHRcdFx0bWFyZ2luOjAgYXV0byAhaW1wb3J0YW50O1xuXHRcdFx0cGFkZGluZzowO31cblx0XHRcdFxuXHQvKiAyLiBFQkVORSAqL1xuXHQjdG9wbWVudWUgdWwgbGkgdWx7XG5cdFx0ZGlzcGxheTpub25lO1xuXHRcdGJhY2tncm91bmQ6I2ZmZjtcblx0XHQtd2Via2l0LWJveC1zaGFkb3c6MCAxMHB4IDEwcHggLTEwcHggI0IwQjBCMDtcblx0XHRib3gtc2hhZG93OjAgMTBweCAxMHB4IC0xMHB4ICNCMEIwQjA7XG5cdFx0cG9zaXRpb246YWJzb2x1dGU7XG5cdFx0bWFyZ2luOjAgYXV0bztcblx0XHRoZWlnaHQ6YXV0bztcblx0XHR3aWR0aDoxMDAlO1xuXHRcdGxlZnQ6MDtcblx0XHRyaWdodDowO1xuXHRcdGJvcmRlci10b3A6MnB4IHNvbGlkIHJnYigwLDEzMSwyMDApO31cblxuXHQjdG9wbWVudWUgbGkgbGl7XG5cdFx0d2lkdGg6MjUlO1xuXHRcdGZsb2F0OmxlZnQ7XG5cdFx0ZGlzcGxheTpibG9jayAhaW1wb3J0YW50O1xuXHRcdHRleHQtYWxpZ246Y2VudGVyO31cblxuXHQjdG9wbWVudWUgbGkgbGkgYXtcblx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdGhlaWdodDphdXRvO1xuXHRcdHBhZGRpbmc6MjBweDtcblx0XHRmb250LXNpemU6MTVweDt9XHRcblx0XHRcblx0I3RvcG1lbnVlIGxpIGxpIGE6aG92ZXJ7YmFja2dyb3VuZDpyZ2JhKDAsMTMxLDIwMCwwLjMpICFpbXBvcnRhbnQ7fVxuXHQjdG9wbWVudWUgbGkgbGkuY3VycmVudD5hLCAjdG9wbWVudWUgbGkgbGkuYWN0aXZlPmF7YmFja2dyb3VuZDojZmZmO2NvbG9yOiM3MDcwNzAgIWltcG9ydGFudDt9XG5cblx0LyogQmlsZGVyIGltIE1lZ2EtTWVuw7wuIEJpcyBKMyDDvGJlciAubW9kdWxldGFibGVfbWVudSwgYWIgSjQgZ2lidCBkYXMgQ2hyb21lIGh0bWw1IFwibW9kdWxldGFibGUgX21lbnVcIiBhdXMuICovXG5cdCN0b3BtZW51ZSBpbWd7d2lkdGg6MTAwJTt9XG5cblx0LyogRHJvcGRvd24gKi9cblx0I3RvcG1lbnVlIHVsIGxpOmhvdmVyID4gdWx7ZGlzcGxheTpibG9jazt9XG5cblx0XG5cdFxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLSBMQVBUT1AgLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6OTkzcHgpIGFuZCAobWF4LXdpZHRoIDoxMjAwcHgpe31cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0gREVTS1RPUCAtLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDoxMjAxcHgpe31cbiIsIi8vXG4vLyBTTElERVNIT1cgLSBIZWFkZXIgKMOcYmVyYmxlbmR1bmcgcGVyIENTUywgZ2VzdGV1ZXJ0IHZvbiBoZWFkZXJTbGlkZXNob3coKSBpbiBjb21wb25lbnRzL3NjcmlwdHMvbWFpbi5qcylcbi8vXG4vLyBPaG5lIEphdmFTY3JpcHQgaXN0IGRhcyBlcnN0ZSBCaWxkIHNpY2h0YmFyLiBTb2JhbGQgZGFzIFNjcmlwdCBsw6R1ZnQsIGhhdCBkaWUgTGlzdGUgZGllIEtsYXNzZVxuLy8gXCJsYWV1ZnRcIiB1bmQgZGFzIHNpY2h0YmFyZSBCaWxkIGRpZSBLbGFzc2UgXCJha3RpdlwiLiBCaXMgT2t0b2JlciAyMDI2IGVybGVkaWd0ZSBkYXMgUmVzcG9uc2l2ZVNsaWRlcy5cbi8vIERpZSBMaXN0ZW5laW50csOkZ2UgZW50aGFsdGVuIGplIGVpbiBkaXYuaGVhZGVyX2ltZyBtaXQgSGludGVyZ3J1bmRiaWxkIChIw7ZoZSBpbiBfdGVtcGxhdGUuc2NzcykuXG4vL1xuXG4ucnNsaWRlcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcblxuICBsaSB7XG4gICAgLy8gSW4gZGVyIHRlbXBsYXRlLmNzcyBzdGFuZCBudXIgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5LCBkZW4gUHLDpGZpeCBlcmfDpG56dCBkZXIgQXV0b3ByZWZpeGVyIGJlaSBCZWRhcmYuXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAycyBlYXNlLWluLW91dDsgLy8gZW50c3ByaWNodCBzcGVlZDogMjAwMCBiZWkgUmVzcG9uc2l2ZVNsaWRlc1xuXG4gICAgLy8gRGFzIHNpY2h0YmFyZSBCaWxkIGJlc3RpbW10IGRpZSBIw7ZoZSBkZXIgTGlzdGVcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG5cbiAgJi5sYWV1ZnQgbGkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICAmLmFrdGl2IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgfVxuXG4gIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAucnNsaWRlcyBsaSB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuIiwiLy9cbi8vIExJR0hUQk9YIC0gR3Jvw59hbnNpY2h0IGRlciBQcm9kdWt0YmlsZGVyICg8ZGlhbG9nIGNsYXNzPVwibGlnaHRib3hcIj4sIGVyemV1Z3Qgdm9uIGxpZ2h0Ym94KCkgaW4gY29tcG9uZW50cy9zY3JpcHRzL21haW4uanMpXG4vL1xuLy8gT3B0aWsgd2llIGJpc2hlciBtaXQgRmFuY3lib3ggMiAoT3B0aW9uIGZhbmN5Ym94LWVmZmVjdHMtZCk6IGhlbGxlciBIaW50ZXJncnVuZCwgQmlsZCBvaG5lIFJhbmQsXG4vLyBTY2hhdHRlbiwgcnVuZGVyIFNjaGxpZcOfZW4tS25vcGYgb2JlbiByZWNodHMuIFN0YXR0IFwiZWxhc3RpY1wiIGVpbmUga3VyemUgRWluYmxlbmR1bmcuXG4vLyDDnGJlcm5vbW1lbiBhdXMgZGVtIFRlbXBsYXRlIGh5ZHJvbWVkIChPa3RvYmVyIDIwMjYpLlxuLy9cblxuJGxpZ2h0Ym94UmFuZDogNDBweDsgLy8gTWluZGVzdGFic3RhbmQgZGVzIEJpbGRlcyB6dW0gRmVuc3RlcnJhbmRcblxuLmxpZ2h0Ym94IHtcbiAgbWFyZ2luOiBhdXRvOyAvLyB6ZW50cmllcnQsIGF1Y2ggZmFsbHMgZWluIFJlc2V0IG1hcmdpbjogMCBzZXR6dFxuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYmFja2dyb3VuZDogI2Y5ZjlmOTtcbiAgYm94LXNoYWRvdzogMCAxMHB4IDI1cHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gZGVyIFNjaGxpZcOfZW4tS25vcGYgcmFndCDDvGJlciBkZW4gUmFuZFxuICBtYXgtd2lkdGg6IG5vbmU7XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOjpiYWNrZHJvcCB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyMzgsIDIzOCwgMjM4LCAwLjg1KTtcbiAgfVxuXG4gICZbb3Blbl0ge1xuICAgIGFuaW1hdGlvbjogbGlnaHRib3gtZWluIDAuMnMgZWFzZS1vdXQ7XG4gIH1cblxuICBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC13aWR0aDogY2FsYygxMDB2dyAtIDIgKiAjeyRsaWdodGJveFJhbmR9KTtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMiAqICN7JGxpZ2h0Ym94UmFuZH0pO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgfVxufVxuXG4vLyBTY2h3YXJ6ZXIgS3JlaXMgbWl0IHdlacOfZW0gUmFuZCB1bmQgd2Vpw59lbSBLcmV1eiwgd2llIGRhcyBTcHJpdGUgdm9uIEZhbmN5Ym94XG4ubGlnaHRib3gtc2NobGllc3NlbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMThweDtcbiAgcmlnaHQ6IC0xOHB4O1xuICB3aWR0aDogMzZweDtcbiAgaGVpZ2h0OiAzNnB4O1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDNweCBzb2xpZCAjZmZmO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6ICMyMjI7XG4gIGJveC1zaGFkb3c6IDAgMCA2cHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiAxNHB4O1xuICAgIGhlaWdodDogMnB4O1xuICAgIG1hcmdpbjogLTFweCAwIDAgLTdweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICB9XG59XG5cbi8vIEhpbnRlcmdydW5kIG5pY2h0IHNjcm9sbGVuLCBzb2xhbmdlIGRpZSBMaWdodGJveCBvZmZlbiBpc3Rcbmh0bWw6aGFzKC5saWdodGJveFtvcGVuXSkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5Aa2V5ZnJhbWVzIGxpZ2h0Ym94LWVpbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAubGlnaHRib3hbb3Blbl0ge1xuICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgfVxufVxuIl19 */
