/*!*******************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/sass/pages/home.scss ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************/
.card {
  --bs-card-spacer-y: 1rem;
  --bs-card-spacer-x: 1rem;
  --bs-card-title-spacer-y: 0.5rem;
  --bs-card-title-color: ;
  --bs-card-subtitle-color: ;
  --bs-card-border-width: var(--bs-border-width);
  --bs-card-border-color: var(--bs-border-color-translucent);
  --bs-card-border-radius: var(--bs-border-radius);
  --bs-card-box-shadow: ;
  --bs-card-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));
  --bs-card-cap-padding-y: 0.5rem;
  --bs-card-cap-padding-x: 1rem;
  --bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);
  --bs-card-cap-color: ;
  --bs-card-height: ;
  --bs-card-color: ;
  --bs-card-bg: var(--bs-body-bg);
  --bs-card-img-overlay-padding: 1rem;
  --bs-card-group-margin: 0.75rem;
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: var(--bs-card-height);
  color: var(--bs-body-color);
  word-wrap: break-word;
  background-color: var(--bs-card-bg);
  background-clip: border-box;
  border: var(--bs-card-border-width) solid var(--bs-card-border-color);
  border-radius: var(--bs-card-border-radius); }
  .card > hr {
    margin-right: 0;
    margin-left: 0; }
  .card > .list-group {
    border-top: inherit;
    border-bottom: inherit; }
    .card > .list-group:first-child {
      border-top-width: 0;
      border-top-left-radius: var(--bs-card-inner-border-radius);
      border-top-right-radius: var(--bs-card-inner-border-radius); }
    .card > .list-group:last-child {
      border-bottom-width: 0;
      border-bottom-right-radius: var(--bs-card-inner-border-radius);
      border-bottom-left-radius: var(--bs-card-inner-border-radius); }
  .card > .card-header + .list-group,
  .card > .list-group + .card-footer {
    border-top: 0; }

.card-body {
  flex: 1 1 auto;
  padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x);
  color: var(--bs-card-color); }

.card-title {
  margin-bottom: var(--bs-card-title-spacer-y);
  color: var(--bs-card-title-color); }

.card-subtitle {
  margin-top: calc(var(--bs-card-title-spacer-y)*-0.5);
  margin-bottom: 0;
  color: var(--bs-card-subtitle-color); }

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

.card-link + .card-link {
  margin-left: var(--bs-card-spacer-x); }

.card-header {
  padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);
  margin-bottom: 0;
  color: var(--bs-card-cap-color);
  background-color: var(--bs-card-cap-bg);
  border-bottom: var(--bs-card-border-width) solid var(--bs-card-border-color); }
  .card-header:first-child {
    border-radius: var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0; }

.card-footer {
  padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);
  color: var(--bs-card-cap-color);
  background-color: var(--bs-card-cap-bg);
  border-top: var(--bs-card-border-width) solid var(--bs-card-border-color); }
  .card-footer:last-child {
    border-radius: 0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius); }

.card-header-tabs {
  margin-right: calc(var(--bs-card-cap-padding-x)*-0.5);
  margin-bottom: calc(var(--bs-card-cap-padding-y)*-1);
  margin-left: calc(var(--bs-card-cap-padding-x)*-0.5);
  border-bottom: 0; }
  .card-header-tabs .nav-link.active {
    background-color: var(--bs-card-bg);
    border-bottom-color: var(--bs-card-bg); }

.card-header-pills {
  margin-right: calc(var(--bs-card-cap-padding-x)*-0.5);
  margin-left: calc(var(--bs-card-cap-padding-x)*-0.5); }

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: var(--bs-card-img-overlay-padding);
  border-radius: var(--bs-card-inner-border-radius); }

.card-img,
.card-img-top,
.card-img-bottom {
  width: 100%; }

.card-img,
.card-img-top {
  border-top-left-radius: var(--bs-card-inner-border-radius);
  border-top-right-radius: var(--bs-card-inner-border-radius); }

.card-img,
.card-img-bottom {
  border-bottom-right-radius: var(--bs-card-inner-border-radius);
  border-bottom-left-radius: var(--bs-card-inner-border-radius); }

.card-group > .card {
  margin-bottom: var(--bs-card-group-margin); }

.tease-grid picture {
  z-index: 1; }

.tease-grid .badge-wrapper {
  z-index: 2;
  pointer-events: none; }

.tease-grid .badge a,
.tease-grid .card-title a {
  text-decoration: none;
  pointer-events: all; }
  .tease-grid .badge a:hover, .tease-grid .badge a:focus,
  .tease-grid .card-title a:hover,
  .tease-grid .card-title a:focus {
    text-decoration: underline; }

.tease-simple a {
  z-index: 1; }

.tease-simple-realisations:hover .card-overlay {
  transform: rotateX(0); }

.tease-simple-realisations .card-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  text-decoration: none;
  text-shadow: 0 0 0.25rem #000;
  background: rgba(98, 50, 50, 0.5);
  transition: transform ease .3s;
  transform: rotateX(90deg);
  transform-origin: bottom; }

.tease {
  width: 100%; }

h1, .h1 {
  font-size: calc(1.425rem + 2.1vw); }

h2, .h2 {
  font-size: calc(1.4063rem + 1.8756vw); }

h3, .h3 {
  font-size: calc(1.3rem + 0.6vw); }

h4, .h4 {
  font-size: calc(1.2813rem + 0.3756vw); }

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

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

.home .featured-image .content-above {
  opacity: 0;
  transition: opacity .3s ease;
  animation: 1.5s linear 0.25s alpha-featured-text-opacity; }

.home.page-scrolled .featured-image .content-above {
  opacity: 1; }

:root {
  --asp-overlay-bg-color-rgb: rgba(98, 50, 50, 0);
  --asp-background-position: center center; }

.alpha-simple-parallax {
  position: relative;
  min-height: var(--asp-min-height, 400px); }
  .alpha-simple-parallax.lazyloaded {
    background-image: var(--asp-background-image, none);
    background-repeat: no-repeat;
    background-position: var(--asp-background-position, center center);
    background-size: cover; }
    .alpha-simple-parallax.lazyloaded:not([data-gsap-preset="pinned"]) {
      background-attachment: fixed; }
    @supports (-webkit-overflow-scrolling: touch) {
      .alpha-simple-parallax.lazyloaded {
        background-attachment: initial !important; } }
  .alpha-simple-parallax::before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    pointer-events: none;
    content: "";
    background-color: var(--asp-overlay-bg-color-rgb); }
  .alpha-simple-parallax > * {
    position: relative;
    z-index: 0; }

.watermark {
  position: absolute; }
  .watermark.watermark-right {
    right: 0;
    bottom: -15%;
    opacity: .1; }
    .watermark.watermark-right svg {
      width: 100%; }
  .watermark.watermark-parallax {
    right: 23%;
    bottom: -2%;
    opacity: .32; }
    .watermark.watermark-parallax svg {
      width: 35%; }

.featured-image picture::before {
  background: linear-gradient(270deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 50%); }

.featured-image .content-above {
  top: inherit;
  bottom: 2%;
  transform: translateX(-50%); }

.parallax-visit-us .alpha-simple-parallax::before {
  background: linear-gradient(270deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 50%); }

.slick-track .slick-slide {
  transition: all .3s ease; }

.slick-track .slick-slide:not(.slick-current) {
  opacity: .5;
  transform: scale(0.9); }

.reinsurance-content > div {
  margin-left: 0 !important; }

@media (min-width: 576px) {
  .card-group {
    display: flex;
    flex-flow: row wrap; }
    .card-group > .card {
      flex: 1 0;
      margin-bottom: 0; }
      .card-group > .card + .card {
        margin-left: 0;
        border-left: 0; }
      .card-group > .card:not(:last-child) {
        border-top-right-radius: 0;
        border-bottom-right-radius: 0; }
        .card-group > .card:not(:last-child) .card-img-top,
        .card-group > .card:not(:last-child) .card-header {
          border-top-right-radius: 0; }
        .card-group > .card:not(:last-child) .card-img-bottom,
        .card-group > .card:not(:last-child) .card-footer {
          border-bottom-right-radius: 0; }
      .card-group > .card:not(:first-child) {
        border-top-left-radius: 0;
        border-bottom-left-radius: 0; }
        .card-group > .card:not(:first-child) .card-img-top,
        .card-group > .card:not(:first-child) .card-header {
          border-top-left-radius: 0; }
        .card-group > .card:not(:first-child) .card-img-bottom,
        .card-group > .card:not(:first-child) .card-footer {
          border-bottom-left-radius: 0; } }

@media (min-width: 992px) {
      .watermark.watermark-right {
        bottom: -25%; }
      .watermark.watermark-parallax {
        right: 18%;
        bottom: -7%; }
        .watermark.watermark-parallax svg {
          width: 50%; }
    .featured-image picture::before {
      background: linear-gradient(270deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 60%, rgba(0, 0, 0, 0.65) 100%); }
    .parallax-visit-us .alpha-simple-parallax::before {
      background: linear-gradient(270deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 60%, rgba(0, 0, 0, 0.65) 100%); } }

@media (min-width: 992px) and (max-width: 1399.98px) {
  .ratio {
    height: 100%; }
    .ratio iframe {
      left: 50%;
      width: calc(var(--featured-image-height)/0.5225);
      margin-left: calc(var(--featured-image-height)*-1/0.5225/2); } }

@media (min-width: 1200px) {
    h1, .h1 {
      font-size: 3rem; }
    h2, .h2 {
      font-size: 2.813rem; }
    h3, .h3 {
      font-size: 1.75rem; }
    h4, .h4 {
      font-size: 1.563rem; }
  .logo svg {
    transition: transform .3s ease;
    transform: scale(2.5) translateY(10%);
    transform-origin: 0; }
  .page-scrolled .logo svg {
    transform: none; } }

@media (orientation: landscape) and (max-width: 992px) {
    .featured-image .content-above h1 {
      font-size: 2.5rem; } }

@media (orientation: portrait) {
  .ratio {
    height: 100%; }
    .ratio iframe {
      left: 50%;
      width: calc(var(--featured-image-height)/0.5225);
      margin-left: calc(var(--featured-image-height)*-1/0.5225/2); } }


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9tZS5jc3MiLCJtYXBwaW5ncyI6Ijs7O0FBSUE7RUFFRSx3QkFBeUM7RUFDekMsd0JBQXlDO0VBQ3pDLGdDQUFxRDtFQUNyRCx1QkFBK0M7RUFDL0MsMEJBQXFEO0VBQ3JELDhDQUFpRDtFQUNqRCwwREFBaUQ7RUFDakQsZ0RBQW1EO0VBQ25ELHNCQUE2QztFQUM3QyxxRkFBK0Q7RUFDL0QsK0JBQW1EO0VBQ25ELDZCQUFtRDtFQUNuRCxzREFBcUM7RUFDckMscUJBQTJDO0VBQzNDLGtCQUFxQztFQUNyQyxpQkFBbUM7RUFDbkMsK0JBQTZCO0VBQzdCLG1DQUErRDtFQUMvRCwrQkFBaUQ7RUFHakQsa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsWUFBWTtFQUNaLDZCQUFpRDtFQUNqRCwyQkFBOEM7RUFDOUMscUJBQXFCO0VBQ3JCLG1DQUFtRDtFQUNuRCwyQkFBMkI7RUFDM0IscUVBQXlIO0VDakJ2SCwyQ0RrQjRFO0VBakNoRjtJQXFDSSxlQUFlO0lBQ2YsY0FBYztFQXRDbEI7SUEwQ0ksbUJBQW1CO0lBQ25CLHNCQUFzQjtJQTNDMUI7TUE4Q00sbUJBQW1CO01DdEJyQiwwRER1QmdHO01DdEJoRywyRERzQmdHO0lBL0NwRztNQW1ETSxzQkFBc0I7TUNieEIsOEREY21HO01DYm5HLDZERGFtRztFQXBEdkc7O0lBNERJLGFBQWE7O0FBSWpCO0VBR0UsY0FBYztFQUNkLHdEQUFvRztFQUNwRywyQkFBOEM7O0FBR2hEO0VBQ0UsNENBQXdFO0VBQ3hFLGlDQUEwRDs7QUFHNUQ7RUFDRSxvREFBaUY7RUFDakYsZ0JBQWdCO0VBQ2hCLG9DQUFnRTs7QUFHbEU7RUFDRSxnQkFBZ0I7O0FBR2xCO0VBTUksb0NBQTBEOztBQVE5RDtFQUNFLGtFQUF3SDtFQUN4SCxnQkFBZ0I7RUFDaEIsK0JBQXNEO0VBQ3RELHVDQUEyRDtFQUMzRCw0RUFBZ0k7RUFMbEk7SUN0Rkksd0ZEOEZrSzs7QUFJdEs7RUFDRSxrRUFBd0g7RUFDeEgsK0JBQXNEO0VBQ3RELHVDQUEyRDtFQUMzRCx5RUFBNkg7RUFKL0g7SUNsR0ksd0ZEeUdrSzs7QUFTdEs7RUFDRSxxREFBaUY7RUFDakYsb0RBQWlGO0VBQ2pGLG9EQUFnRjtFQUNoRixnQkFBZ0I7RUFKbEI7SUFPSSxtQ0FBbUQ7SUFDbkQsc0NBQXNEOztBQUkxRDtFQUNFLHFEQUFpRjtFQUNqRixvREFBZ0Y7O0FBSWxGO0VBQ0Usa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixRQUFRO0VBQ1IsU0FBUztFQUNULE9BQU87RUFDUCwyQ0FBNEU7RUMxSTFFLGlERDJJd0Y7O0FBRzVGOzs7RUFHRSxXQUFXOztBQUdiOztFQzNJSSwwREQ2STRGO0VDNUk1RiwyREQ0STRGOztBQUdoRzs7RUNsSUksOEREb0krRjtFQ25JL0YsNkREbUkrRjs7QUFRbkc7RUFJSSwwQ0FBb0U7O0FFbEx0RTtFQ05FLFVBQVU7O0FETVo7RUNGRSxVQUFVO0VBQ1Ysb0JBQW9COztBREN0Qjs7RUNLSSxxQkFBcUI7RUFDckIsbUJBQW1CO0VETnZCOzs7SUNVTSwwQkFBMEI7O0FEVmhDO0VFTkUsVUFBVTs7QUZNWjtFR0xJLHFCQUFxQjs7QUhLekI7RUdERSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQVE7RUFDUixTQUFTO0VBQ1QsT0FBTztFQUNQLFVBQVU7RUFDVixhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLHVCQUF1QjtFQUN2QixXQ0FRO0VEQ1IscUJBQXFCO0VBQ3JCLDZCRThYdUM7RUY3WHZDLGlDR25CdUQ7RUhvQnZELDhCQUE4QjtFQUM5Qix5QkFBeUI7RUFDekIsd0JBQXdCOztBSFQ1QjtFQUNFLFdBQVc7O0FPUFQ7RUM0UkksaUNBZjZCOztBRDdRakM7RUM0UkkscUNBZjZCOztBRDdRakM7RUM0UkksK0JBZjZCOztBRDdRakM7RUM0UkkscUNBZjZCOztBRDdRakM7RUN3UkUsa0JBbkUrQjs7QURyTmpDO0VDd1JFLGVBbkUrQjs7QURoTW5DO0VBR00sVUFBVTtFQUNWLDRCQUE0QjtFQUcxQix3REFBK0Y7O0FBUHZHO0VBZVEsVUFBVTs7QUVuQ3BCO0VBRUUsK0NBQTJCO0VBQzNCLHdDQUEwQjs7QUFLNUI7RUFDRSxrQkFBa0I7RUFDbEIsd0NBQXdDO0VBRjFDO0lBS0ksbURBQW1EO0lBQ25ELDRCQUE0QjtJQUM1QixrRUFBa0U7SUFDbEUsc0JBQXNCO0lBUjFCO01BV00sNEJBQTRCO0lDcEJhO01EUy9DO1FBZ0JNLHlDQUF5QyxJQUU1QztFQWxCSDtJQXNCSSxrQkFBa0I7SUFDbEIsTUFBTTtJQUNOLFFBQVE7SUFDUixTQUFTO0lBQ1QsT0FBTztJQUNQLGNBQWM7SUFDZCxvQkFBb0I7SUFDcEIsV0FBVztJQUNYLGlEQUFpRDtFQTlCckQ7SUFrQ0ksa0JBQWtCO0lBQ2xCLFVBQVU7O0FFbkRkO0VBQ0Usa0JBQWtCO0VBRHBCO0lBSUksUUFBUTtJQUNSLFlBQVk7SUFDWixXQUFXO0lBTmY7TUFRTSxXQUFXO0VBUmpCO0lBZ0JJLFVBQVU7SUFDVixXQUFXO0lBQ1gsWUFBWTtJQWxCaEI7TUFvQk0sVUFBVTs7QUNwQmhCO0VBRUksOEVBQThFOztBQUZsRjtFQWFJLFlBQVk7RUFDWixVQUFVO0VBQ1YsMkJBQTJCOztBQ2YvQjtFQUVJLDhFQUE4RTs7QUNGbEY7RUFFSSx3QkFBd0I7O0FBRjVCO0VBS0ksV0FBVztFQUNYLHFCQUFvQjs7QUNheEI7RUFHSSx5QkFBeUI7O0FDeUN6QjtFbEJ1SEo7SUFRSSxhQUFhO0lBQ2IsbUJBQW1CO0lBVHZCO01BY00sU0FBWTtNQUNaLGdCQUFnQjtNQWZ0QjtRQWtCUSxjQUFjO1FBQ2QsY0FBYztNQW5CdEI7UUNuSkksMEJENEtrQztRQzNLbEMsNkJEMktrQztRQXpCdEM7O1VBOEJZLDBCQUEwQjtRQTlCdEM7O1VBbUNZLDZCQUE2QjtNQW5DekM7UUNySUkseUJENktvQztRQzVLcEMsNEJENEtvQztRQXhDeEM7O1VBNkNZLHlCQUF5QjtRQTdDckM7O1VBa0RZLDRCQUE0QixJQUM3Qjs7QWtCMUtQO01ML0RKO1FBV00sWUFBWTtNQVhsQjtRQXVCTSxVQUFVO1FBQ1YsV0FBVztRQXhCakI7VUEwQlEsVUFBVTtJQzFCbEI7TUFJTSx3R0FBdUc7SUNKN0c7TUFJTSx3R0FBdUcsSUZTMUc7O0FLOEVDO0VKdEVGO0lBYUUsWUFBWTtJQWJkO01BZ0JJLFNBQVM7TUFDVCxnREFBaUQ7TUFDakQsMkRBQWdFLElBQ2pFOztBSitGRDtJRGhJQTtNQ21TSSxlQTlFNkI7SURyTmpDO01DbVNJLG1CQTlFNkI7SURyTmpDO01DbVNJLGtCQTlFNkI7SURyTmpDO01DbVNJLG1CQTlFNkI7RVMzTm5DO0lBRUksOEJBQThCO0lBQzlCLHFDQUFxQztJQUNyQyxtQkFBbUI7RUFJdkI7SUFHTSxlQUFlLElWSGxCOztBS0REO0lBUko7TUFVUSxpQkFBaUIsSUFDbEI7O0FBU1A7RUFDRTtJQUNFLFlBQVk7SUFEZDtNQUlJLFNBQVM7TUFDVCxnREFBaUQ7TUFDakQsMkRBQWdFLElBQ2pFIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vdG9ycmlzaS10aGVtZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2FyZC5zY3NzIiwid2VicGFjazovL3RvcnJpc2ktdGhlbWUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCJ3ZWJwYWNrOi8vdG9ycmlzaS10aGVtZS8uL25vZGVfbW9kdWxlcy9AbmVtYXRpcy93cC1hbHBoYS9hc3NldHMvc2Fzcy90ZWFzZXMvX3RlYXNlLnNjc3MiLCJ3ZWJwYWNrOi8vdG9ycmlzaS10aGVtZS8uL25vZGVfbW9kdWxlcy9AbmVtYXRpcy93cC1hbHBoYS9hc3NldHMvc2Fzcy90ZWFzZXMvbW9kZXMvX2dyaWQuc2NzcyIsIndlYnBhY2s6Ly90b3JyaXNpLXRoZW1lLy4vbm9kZV9tb2R1bGVzL0BuZW1hdGlzL3dwLWFscGhhL2Fzc2V0cy9zYXNzL3RlYXNlcy9tb2Rlcy9fc2ltcGxlLnNjc3MiLCJ3ZWJwYWNrOi8vdG9ycmlzaS10aGVtZS8uL25vZGVfbW9kdWxlcy9AbmVtYXRpcy93cC1hbHBoYS9hc3NldHMvc2Fzcy90ZWFzZXMvbW9kZXMvX3JlYWxpc2F0aW9ucy5zY3NzIiwid2VicGFjazovL3RvcnJpc2ktdGhlbWUvLi9hc3NldHMvc2Fzcy9hYnN0cmFjdHMvdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vdG9ycmlzaS10aGVtZS8uL25vZGVfbW9kdWxlcy9AbmVtYXRpcy93cC1hbHBoYS9hc3NldHMvc2Fzcy9hYnN0cmFjdHMvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovL3RvcnJpc2ktdGhlbWUvLi9jb25maWcvdGhlbWUueWFtbCIsIndlYnBhY2s6Ly90b3JyaXNpLXRoZW1lLy4vbm9kZV9tb2R1bGVzL0BuZW1hdGlzL3dwLWFscGhhL2Fzc2V0cy9zYXNzL3BhZ2VzL19ob21lLnNjc3MiLCJ3ZWJwYWNrOi8vdG9ycmlzaS10aGVtZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy92ZW5kb3IvX3Jmcy5zY3NzIiwid2VicGFjazovL3RvcnJpc2ktdGhlbWUvLi9ub2RlX21vZHVsZXMvQG5lbWF0aXMvd3AtYWxwaGEvYXNzZXRzL3Nhc3MvY29tcG9uZW50cy9fcGFyYWxsYXguc2NzcyIsIndlYnBhY2s6Ly90b3JyaXNpLXRoZW1lLy4vbm9kZV9tb2R1bGVzL0BuZW1hdGlzL3dwLWFscGhhL2Fzc2V0cy9zYXNzL3ZlbmRvcnMvbmVtYXRpcy9taXhpbnMvX21lZGlhLXF1ZXJ5LnNjc3MiLCJ3ZWJwYWNrOi8vdG9ycmlzaS10aGVtZS8uL2Fzc2V0cy9zYXNzL2NvbXBvbmVudHMvdmVjdG9yLWJnLnNjc3MiLCJ3ZWJwYWNrOi8vdG9ycmlzaS10aGVtZS8uL2Fzc2V0cy9zYXNzL2NvbXBvbmVudHMvZmVhdHVyZWQtaW1hZ2Uuc2NzcyIsIndlYnBhY2s6Ly90b3JyaXNpLXRoZW1lLy4vYXNzZXRzL3Nhc3MvY29tcG9uZW50cy9wYXJhbGxheC5zY3NzIiwid2VicGFjazovL3RvcnJpc2ktdGhlbWUvLi9hc3NldHMvc2Fzcy9jb21wb25lbnRzL3NsaWNrLWNhcm91c2VsLnNjc3MiLCJ3ZWJwYWNrOi8vdG9ycmlzaS10aGVtZS8uL2Fzc2V0cy9zYXNzL3BhZ2VzL2hvbWUuc2NzcyIsIndlYnBhY2s6Ly90b3JyaXNpLXRoZW1lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIndlYnBhY2s6Ly90b3JyaXNpLXRoZW1lLy4vYXNzZXRzL3Nhc3MvY29tcG9uZW50cy9sb2dvLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uY2FyZCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBjYXJkLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWNhcmQtc3BhY2VyLXk6ICN7JGNhcmQtc3BhY2VyLXl9O1xuICAtLSN7JHByZWZpeH1jYXJkLXNwYWNlci14OiAjeyRjYXJkLXNwYWNlci14fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC10aXRsZS1zcGFjZXIteTogI3skY2FyZC10aXRsZS1zcGFjZXIteX07XG4gIC0tI3skcHJlZml4fWNhcmQtdGl0bGUtY29sb3I6ICN7JGNhcmQtdGl0bGUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1jYXJkLXN1YnRpdGxlLWNvbG9yOiAjeyRjYXJkLXN1YnRpdGxlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItd2lkdGg6ICN7JGNhcmQtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItY29sb3I6ICN7JGNhcmQtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItcmFkaXVzOiAjeyRjYXJkLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1jYXJkLWJveC1zaGFkb3c6ICN7JGNhcmQtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogI3skY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy15OiAjeyRjYXJkLWNhcC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXg6ICN7JGNhcmQtY2FwLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWNhcmQtY2FwLWJnOiAjeyRjYXJkLWNhcC1iZ307XG4gIC0tI3skcHJlZml4fWNhcmQtY2FwLWNvbG9yOiAjeyRjYXJkLWNhcC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWNhcmQtaGVpZ2h0OiAjeyRjYXJkLWhlaWdodH07XG4gIC0tI3skcHJlZml4fWNhcmQtY29sb3I6ICN7JGNhcmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1jYXJkLWJnOiAjeyRjYXJkLWJnfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAjeyRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmd9O1xuICAtLSN7JHByZWZpeH1jYXJkLWdyb3VwLW1hcmdpbjogI3skY2FyZC1ncm91cC1tYXJnaW59O1xuICAvLyBzY3NzLWRvY3MtZW5kIGNhcmQtY3NzLXZhcnNcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi13aWR0aDogMDsgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzIyNzQwI2lzc3VlY29tbWVudC0zMDU4NjgxMDZcbiAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1oZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWJnKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBib3JkZXItYm94O1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fWNhcmQtYm94LXNoYWRvdykpO1xuXG4gID4gaHIge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gID4gLmxpc3QtZ3JvdXAge1xuICAgIGJvcmRlci10b3A6IGluaGVyaXQ7XG4gICAgYm9yZGVyLWJvdHRvbTogaW5oZXJpdDtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQgIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gRHVlIHRvIHNwZWNpZmljaXR5IG9mIHRoZSBhYm92ZSBzZWxlY3RvciAoYC5jYXJkID4gLmxpc3QtZ3JvdXBgKSwgd2UgbXVzdFxuICAvLyB1c2UgYSBjaGlsZCBzZWxlY3RvciBoZXJlIHRvIHByZXZlbnQgZG91YmxlIGJvcmRlcnMuXG4gID4gLmNhcmQtaGVhZGVyICsgLmxpc3QtZ3JvdXAsXG4gID4gLmxpc3QtZ3JvdXAgKyAuY2FyZC1mb290ZXIge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuLmNhcmQtYm9keSB7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBmb3IgZGVja3MgYW5kIGdyb3VwcyBzbyB0aGF0IGNhcmQgYmxvY2tzIHRha2UgdXBcbiAgLy8gYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZSwgZW5zdXJpbmcgZm9vdGVycyBhcmUgYWxpZ25lZCB0byB0aGUgYm90dG9tLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWNhcmQtc3BhY2VyLXkpIHZhcigtLSN7JHByZWZpeH1jYXJkLXNwYWNlci14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNvbG9yKTtcbn1cblxuLmNhcmQtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC10aXRsZS1zcGFjZXIteSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC10aXRsZS1jb2xvcik7XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC10aXRsZS1zcGFjZXIteSkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtc3VidGl0bGUtY29sb3IpO1xufVxuXG4uY2FyZC10ZXh0Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC1saW5rIHtcbiAgJjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gIH1cblxuICArIC5jYXJkLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1zcGFjZXIteCk7XG4gIH1cbn1cblxuLy9cbi8vIE9wdGlvbmFsIHRleHR1YWwgY2Fwc1xuLy9cblxuLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteCk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlbW92ZXMgdGhlIGRlZmF1bHQgbWFyZ2luLWJvdHRvbSBvZiA8aE4+XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtYmcpO1xuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1jb2xvcik7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSAwIDApO1xuICB9XG59XG5cbi5jYXJkLWZvb3RlciB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLWJnKTtcbiAgYm9yZGVyLXRvcDogdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItY29sb3IpO1xuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwIDAgdmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykgdmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICB9XG59XG5cblxuLy9cbi8vIEhlYWRlciBuYXZzXG4vL1xuXG4uY2FyZC1oZWFkZXItdGFicyB7XG4gIG1hcmdpbi1yaWdodDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy15KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLWJvdHRvbTogMDtcblxuICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1iZyk7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtYmcpO1xuICB9XG59XG5cbi5jYXJkLWhlYWRlci1waWxscyB7XG4gIG1hcmdpbi1yaWdodDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbn1cblxuLy8gQ2FyZCBpbWFnZVxuLmNhcmQtaW1nLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWNhcmQtaW1nLW92ZXJsYXktcGFkZGluZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3Age1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy1ib3R0b20ge1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG59XG5cblxuLy9cbi8vIENhcmQgZ3JvdXBzXG4vL1xuXG4uY2FyZC1ncm91cCB7XG4gIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcbiAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgPiAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fWNhcmQtZ3JvdXAtbWFyZ2luKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAgIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gICAgPiAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICsgLmNhcmQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgIC8vIEhhbmRsZSByb3VuZGVkIGNvcm5lcnNcbiAgICAgIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4vLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byByZXBsYWNlIG5lZ2F0aXZlIHZhbHVlcyB3aXRoIDBcbkBmdW5jdGlvbiB2YWxpZC1yYWRpdXMoJHJhZGl1cykge1xuICAkcmV0dXJuOiAoKTtcbiAgQGVhY2ggJHZhbHVlIGluICRyYWRpdXMge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCBtYXgoJHZhbHVlLCAwKSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgJHZhbHVlKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkcmV0dXJuO1xufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXJhZGl1cy1taXhpbnNcbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzLCAkZmFsbGJhY2stYm9yZGVyLXJhZGl1czogZmFsc2UpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG4gIEBlbHNlIGlmICRmYWxsYmFjay1ib3JkZXItcmFkaXVzICE9IGZhbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLWVuZC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tc3RhcnQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItcmFkaXVzLW1peGluc1xuIiwiQGltcG9ydCBcIn5ib290c3RyYXAvc2Nzcy9jYXJkXCI7XG5cbkBpbXBvcnQgXCJtb2Rlcy9ncmlkXCI7XG5AaW1wb3J0IFwibW9kZXMvbGlzdFwiO1xuQGltcG9ydCBcIm1vZGVzL3NpbXBsZVwiO1xuQGltcG9ydCBcIm1vZGVzL3JlYWxpc2F0aW9uc1wiO1xuXG5AZWFjaCAkdGVhc2UgaW4gJHRlYXNlcyB7XG4gIC50ZWFzZS0jeyR0ZWFzZX0ge1xuICAgIEBleHRlbmQgJXRlYXNlLSN7JHRlYXNlfSAhb3B0aW9uYWw7XG4gIH1cbn1cblxuLnRlYXNlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4iLCJAbWl4aW4gbWFrZS10ZWFzZS1ncmlkIHtcbiAgcGljdHVyZSB7XG4gICAgei1pbmRleDogMTtcbiAgfVxuXG4gIC5iYWRnZS13cmFwcGVyIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgLmJhZGdlLFxuICAuY2FyZC10aXRsZSB7XG4gICAgYSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ldGVhc2UtZ3JpZCB7XG4gIEBpbmNsdWRlIG1ha2UtdGVhc2UtZ3JpZCgpO1xufVxuIiwiQG1peGluIG1ha2UtdGVhc2Utc2ltcGxlIHtcbiAgYSB7XG4gICAgei1pbmRleDogMTtcbiAgfVxufVxuXG4ldGVhc2Utc2ltcGxlIHtcbiAgQGluY2x1ZGUgbWFrZS10ZWFzZS1zaW1wbGUoKTtcbn1cbiIsIkBtaXhpbiBtYWtlLXRlYXNlLXNpbXBsZS1yZWFsaXNhdGlvbnMge1xuICAmOmhvdmVye1xuICAgIC5jYXJkLW92ZXJsYXkge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKDApO1xuICAgIH1cbiAgfVxuICAuY2FyZC1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGNvbG9yOiAkdGVhc2Utb3ZlcmxheS10ZXh0LWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LXNoYWRvdzogJHRlYXNlLW92ZXJsYXktdGV4dC1zaGFkb3c7XG4gICAgYmFja2dyb3VuZDogcmdiYSgkdGVhc2Utb3ZlcmxheS1iZy1jb2xvciwgJHRlYXNlLW92ZXJsYXktYmctb3BhY2l0eSk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIGVhc2UgLjNzO1xuICAgIHRyYW5zZm9ybTogcm90YXRlWCg5MGRlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tO1xuICB9XG59XG5cbiV0ZWFzZS1zaW1wbGUtcmVhbGlzYXRpb25zIHtcbiAgQGluY2x1ZGUgbWFrZS10ZWFzZS1zaW1wbGUtcmVhbGlzYXRpb25zKCk7XG59XG4iLCJAaW1wb3J0IFwifmJvb3RzdHJhcC9zY3NzL2Z1bmN0aW9uc1wiO1xuQGltcG9ydCBcIn5AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtcHJvL3Njc3MvZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwifkBmb3J0YXdlc29tZS9mb250YXdlc29tZS1wcm8vc2Nzcy92YXJpYWJsZXNcIjtcblxuLy8gPT09IFdlYnNpdGUgY29sb3JzXG4kdGhpcmRseTogI2ZiODUwMTtcbiRmb3VydGhseTogI2ZiNTUwNztcblxuJHRoZW1lLWNvbG9yczogKFxuICBcInRoaXJkbHlcIjogJHRoaXJkbHksXG4gIFwiZm91cnRobHlcIjogJGZvdXJ0aGx5LFxuKTtcblxuXG4vLyA9PT0gQm9vdHN0cmFwXG4vLyA9PSBDb2xvcnNcbiR3aGl0ZTogI2ZmZjtcbiRibGFjazogIzAwMDtcbiRib2R5LWNvbG9yOiAkc2Vjb25kYXJ5O1xuJGJvZHktYmc6ICR3aGl0ZTtcblxuLy8gPT0gQWNjZXNzaWJpbGl0eVxuJG1pbi1jb250cmFzdC1yYXRpbzogMS41O1xuXG4vLyA9PSBCdXR0b25zXG4kaW5wdXQtYnRuLXBhZGRpbmcteTogLjc1cmVtO1xuJGlucHV0LWJ0bi1wYWRkaW5nLXg6IDEuNXJlbTtcblxuLy8gPT0gTGlua3Ncbi8vJGxpbmstaG92ZXItY29sb3I6ICRzZWNvbmRhcnk7XG5cbi8vID09IE5hdnNcbiRuYXZiYXItaXRlbS1tYXJnaW4teDogLjc1cmVtO1xuXG4vLyA9PT0gQWxwaGFcbi8vID09IENvbmZpZ3VyYXRpb25cblxuLy8gPT0gRmVhdHVyZWQgaW1hZ2VcbiRob21lLWZlYXR1cmVkLWltYWdlLWhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLWFkbWluYmFyLWhlaWdodCkpO1xuJGZlYXR1cmVkLWltYWdlLW92ZXJsYXktb3BhY2l0eTogMDtcbiRmZWF0dXJlZC1pbWFnZS1vdmVybGF5LWNvbG9yOiAkc2Vjb25kYXJ5O1xuXG4vLyA9PSBIZWFkZXJcblxuLy8gPT0gTG9nb1xuLy8kbG9nby1oZWlnaHQ6IDVyZW07IC8vIDgwcHhcblxuLy8gPT0gTmF2c1xuJG5hdmJhci1wYWRkaW5nLXk6IDEuMjVyZW07XG5cbi8vID09IFBhcmFsbGF4XG4kYXNwLW92ZXJsYXktYmctb3BhY2l0eTogMDtcbiRhc3Atb3ZlcmxheS1iZy1jb2xvcjogJHNlY29uZGFyeTtcblxuLy8gPT0gU2lkZWJhclxuJHNpZGViYXI6IHRydWU7XG5cbi8vID09IFRvcCBiYXJcbiR0b3AtYmFyOiB0cnVlO1xuJHRvcC1iYXItZGVmYXVsdC1iZy1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbi8vID09IFN1cnRpdGxlXG4kYWxwaGEtc3VydGl0bGUtZm9udC1zaXplOiAkaDQtZm9udC1zaXplO1xuJGFscGhhLXN1cnRpdGxlLXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4kYWxwaGEtc3VydGl0bGUtY29sb3I6ICRwcmltYXJ5O1xuXG4vLyA9PSBaLWluZGV4XG4kYWxwaGEtei1pbmRleGVzOiAoMSwgMik7XG4kZW5hYmxlLW5lZ2F0aXZlLXppbmRleDogdHJ1ZTtcblxuLy8gPT09IEFscGhhIG1vZHVsZXNcblxuLy8gPT09IEZvbnRzIG9wdGltaXphdGlvblxuLy8gPT0gRm9udEF3ZXNvbWUgSWNvbnNcbiRjdXN0b20tdXNlZC1mYS1pY29uczogKFxuICAvLyA9PSBDb21tdW5pY2F0aW9uXG4gIGZpbGUtY2VydGlmaWNhdGU6ICRmYS12YXItZmlsZS1jZXJ0aWZpY2F0ZSxcbiAgYnJpZWZjYXNlLWJsYW5rOiAkZmEtdmFyLWJyaWVmY2FzZS1ibGFuayxcbiAgYm9sdDogJGZhLXZhci1ib2x0LFxuICBiYWxsb3QtY2hlY2s6ICRmYS12YXItYmFsbG90LWNoZWNrLFxuICBtYXAtcGluOiAkZmEtdmFyLW1hcC1waW4sXG4gIHNxdWFyZS1mdWxsOiAkZmEtdmFyLXNxdWFyZS1mdWxsLFxuKTtcblxuLy8tLS0tLSBUb3AgYmFyIGljb25zXG4kdG9wLWJhci1pY29uczogKHBob25lLXNxdWFyZTogJGZhLXZhci1waG9uZS1zcXVhcmUsIGltYWdlOiAkZmEtdmFyLWltYWdlLCBiYWRnZS1jaGVjazogJGZhLXZhci1iYWRnZS1jaGVjaywgcGVuLXNxdWFyZTogJGZhLXZhci1wZW4tc3F1YXJlLCk7XG4kdG9wLWJhci1pY29ucy1tYXJnaW46IC4yNXJlbTtcbiR0b3AtYmFyLWljb25zLWZhLXZhcmlhbnQ6IFwic29saWRcIjtcbiIsIkBpbXBvcnQgXCJ+Ym9vdHN0cmFwL3Njc3MvZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwifkBmb3J0YXdlc29tZS9mb250YXdlc29tZS1wcm8vc2Nzcy9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJ+QGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLXByby9zY3NzL3ZhcmlhYmxlc1wiO1xuXG4kdGhlbWUtYXNzZXQtcGF0aDogXCIuLi9pbWFnZXNcIiAhZGVmYXVsdDtcbiRmb250cy1wYXRoOiBcImZvbnRzXCIgIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIENvbG9yIHN5c3RlbVxuJGJsYWNrOiAjMDAwICFkZWZhdWx0O1xuJHdoaXRlOiAjZmZmICFkZWZhdWx0O1xuJGdyYXktMTAwOiAjZjdmN2Y3ICFkZWZhdWx0O1xuJGdyYXktMjAwOiAjZTllY2VmICFkZWZhdWx0O1xuJGdyYXktMzAwOiAjZGVlMmU2ICFkZWZhdWx0O1xuJGdyYXktNTAwOiAjOWQ5ZDlkICFkZWZhdWx0O1xuJGdyYXktNjAwOiAjNmM3NTdkICFkZWZhdWx0O1xuJGdyYXktNzAwOiAjNDk1MDU3ICFkZWZhdWx0O1xuJGdyYXktOTAwOiAjMGEwYTBhICFkZWZhdWx0O1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3ItdmFyaWFibGVzXG4kYmx1ZTogIzAwNWRhYSAhZGVmYXVsdDtcbiRwdXJwbGU6ICM3MDFlNmUgIWRlZmF1bHQ7XG4kZ3JlZW46ICMwMWFlM2MgIWRlZmF1bHQ7XG4kcmVkOiAjZGMzNTQ1ICFkZWZhdWx0O1xuJHllbGxvdzogI2ZmYzEwNyAhZGVmYXVsdDtcbiRjeWFuOiAjMGRjYWYwICFkZWZhdWx0O1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3JzLW1hcFxuJGNvbG9yczogKFxuICBcImJsdWVcIjogJGJsdWUsXG4gIFwicHVycGxlXCI6ICRwdXJwbGUsXG4gIFwiZ3JlZW5cIjogJGdyZWVuLFxuICBcIndoaXRlXCI6ICR3aGl0ZSxcbiAgXCJncmF5LTEwMFwiOiAkZ3JheS0xMDAsXG4gIFwiZ3JheS01MDBcIjogJGdyYXktNTAwLFxuICBcImdyYXktOTAwXCI6ICRncmF5LTkwMFxuKSAhZGVmYXVsdDtcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWNvbG9yLXZhcmlhYmxlc1xuJHN1Y2Nlc3M6ICRncmVlbiAhZGVmYXVsdDtcbiRpbmZvOiAkY3lhbiAhZGVmYXVsdDtcbiR3YXJuaW5nOiAkeWVsbG93ICFkZWZhdWx0O1xuJGRhbmdlcjogJHJlZCAhZGVmYXVsdDtcbiRsaWdodDogJGdyYXktMTAwICFkZWZhdWx0O1xuJGRhcms6ICRncmF5LTkwMCAhZGVmYXVsdDtcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWNvbG9ycy1tYXBcbiRkZWZhdWx0LXRoZW1lLWNvbG9yczogKFxuICBcInByaW1hcnlcIjogJHByaW1hcnksXG4gIFwic2Vjb25kYXJ5XCI6ICRzZWNvbmRhcnksXG4gIFwic3VjY2Vzc1wiOiAkc3VjY2VzcyxcbiAgXCJpbmZvXCI6ICRpbmZvLFxuICBcIndhcm5pbmdcIjogJHdhcm5pbmcsXG4gIFwiZGFuZ2VyXCI6ICRkYW5nZXIsXG4gIFwibGlnaHRcIjogJGxpZ2h0LFxuICBcImRhcmtcIjogJGRhcmssXG4gIFwid2hpdGVcIjogJHdoaXRlXG4pICFkZWZhdWx0O1xuJHRoZW1lLWNvbG9yczogKCkgIWRlZmF1bHQ7XG4kdGhlbWUtY29sb3JzOiBtYXAtbWVyZ2UoJGRlZmF1bHQtdGhlbWUtY29sb3JzLCAkdGhlbWUtY29sb3JzKTtcblxuLy8gVGhlIGNvbnRyYXN0IHJhdGlvIHRvIHJlYWNoIGFnYWluc3Qgd2hpdGUsIHRvIGRldGVybWluZSBpZiBjb2xvciBjaGFuZ2VzIGZyb20gXCJsaWdodFwiIHRvIFwiZGFya1wiLiBBY2NlcHRhYmxlIHZhbHVlcyBmb3IgV0NBRyAyLjAgYXJlIDMsIDQuNSBhbmQgNy5cbiRtaW4tY29udHJhc3QtcmF0aW86IDQuNSAhZGVmYXVsdDtcblxuLy8gQ3VzdG9taXplIHRoZSBsaWdodCBhbmQgZGFyayB0ZXh0IGNvbG9ycyBmb3IgdXNlIGluIG91ciBjb2xvciBjb250cmFzdCBmdW5jdGlvbi5cbiRjb2xvci1jb250cmFzdC1kYXJrOiAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kY29sb3ItY29udHJhc3QtbGlnaHQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8tLS0tLS0gQ29tcG9uZW50c1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJvcmRlci1yYWRpdXMtdmFyaWFibGVzXG4kYm9yZGVyLXJhZGl1czogLjVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sZzogLjYyNXJlbSAhZGVmYXVsdDtcblxuLy8tLS0tLS0gT3B0aW9uc1xuJGVuYWJsZS1uZWdhdGl2ZS1tYXJnaW5zOiB0cnVlICFkZWZhdWx0O1xuXG4vLy0tLS0tLSBTcGFjaW5nXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xuJHNwYWNlcnM6IChcbiAgMDogMCxcbiAgMTogJHNwYWNlciAqIC4yNSwgLy8gNHB4XG4gIDI6ICRzcGFjZXIgKiAuNSwgLy8gOHB4XG4gIDM6ICRzcGFjZXIgKiAuNzUsIC8vIDEycHhcbiAgNDogJHNwYWNlciwgLy8gMTZweFxuICA1OiAkc3BhY2VyICogMS4yNSwgLy8gMjBweFxuICA2OiAkc3BhY2VyICogMS41LCAvLyAyNHB4XG4gIDc6ICRzcGFjZXIgKiAxLjc1LCAvLyAyOHB4XG4gIDg6ICRzcGFjZXIgKiAyLCAvLyAzMnB4XG4gIDk6ICRzcGFjZXIgKiAzLCAvLyA0OHB4XG4gIDEwOiAkc3BhY2VyICogNCwgLy8gNjRweFxuICAxMTogJHNwYWNlciAqIDUgLy8gODBweFxuKSAhZGVmYXVsdDtcblxuLy8tLS0tLS0gRGFyayBTdHlsZVxuJGRhcmstYmctY29sb3I6IHZhcigtLWJzLWJvZHktYmctZGFyaykgIWRlZmF1bHQ7XG4kZGFyay10eHQtY29sb3I6IHZhcigtLWJzLWJvZHktY29sb3ItZGFyaykgIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIExpZ2h0IFN0eWxlXG4kbGlnaHQtYmctY29sb3I6ICRib2R5LWJnICFkZWZhdWx0O1xuJGxpZ2h0LXR4dC1jb2xvcjogJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIEhlYWRlclxuJGhlYWRlci1iZzogdmFyKC0tYnMtYm9keS1iZykgIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIEZvb3RlclxuJGZvb3Rlci1iZzogcmdiYSgkcHJpbWFyeSwgLjEpICFkZWZhdWx0O1xuJGNvcHlyaWdodC1iZzogJGZvb3Rlci1iZyAhZGVmYXVsdDtcblxuLy8tLS0tLS0gTGlua3NcbiRsaW5rLWNvbG9yOiAkcHJpbWFyeSAhZGVmYXVsdDtcbiRsaW5rLXNoYWRlLXBlcmNlbnRhZ2U6IDIwJSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiBzaGlmdC1jb2xvcigkbGluay1jb2xvciwgJGxpbmstc2hhZGUtcGVyY2VudGFnZSkgIWRlZmF1bHQ7XG5cbi8vIEdyaWQgY29sdW1uc1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIENvbnRhaW5lciBwYWRkaW5nXG4kY29udGFpbmVyLXBhZGRpbmcteDogJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMiAhZGVmYXVsdDtcblxuLy8tLS0tLS0gQ29tcG9uZW50c1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJvcmRlci12YXJpYWJsZXNcbiRib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3I6IHJnYmEoJGdyYXktOTAwLCAuMTUpICFkZWZhdWx0O1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYXNwZWN0LXJhdGlvc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaGVhZGluZ3MtdmFyaWFibGVzXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogJHNwYWNlciAqIDIgIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIEJ1dHRvbnMgKyBGb3Jtc1xuJGJ0bi1jb2xvcnM6IChcbiAgXCJwcmltYXJ5XCI6IG51bGwsXG4gIFwic2Vjb25kYXJ5XCIgOiBudWxsXG4pICFkZWZhdWx0O1xuXG4kaW5wdXQtZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteTogLjM3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLXdpZHRoOiAuMTI1cmVtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteTogJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14OiAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodDogMS41ICFkZWZhdWx0O1xuXG4vLy0tLS0tLSBOYXZzXG4vLy0tLS0tIFNoYXJlZCB2YXJpYWJsZXNcbiRuYXYtY29sb3ItYWNjZW50OiAkcHJpbWFyeSAhZGVmYXVsdDtcblxuLy8tLS0tLSBCb290c3RyYXAgdmFyaWFibGVzXG4kbmF2LWxpbmstZm9udC1zaXplOiBudWxsICFkZWZhdWx0O1xuJG5hdi1saW5rLWNvbG9yOiB2YXIoLS10aGVtZS1za2luLXRleHQtY29sb3IpICFkZWZhdWx0O1xuJG5hdi1saW5rLWhvdmVyLWNvbG9yOiB0aW50LWNvbG9yKCRwcmltYXJ5LCAzMCUpICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbi8vLS0tLS0gQWxwaGEgdmFyaWFibGVzXG4kbmF2LWNvbG9yLWhvdmVyLWZpcnN0LWxldmVsOiAkbmF2LWxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LWNvbG9yLWN1cnJlbnQ6ICRuYXYtY29sb3ItYWNjZW50ICFkZWZhdWx0O1xuJG5hdi1jb2xvci1jdXJyZW50LWZpcnN0LWxldmVsOiAkbmF2LWNvbG9yLWN1cnJlbnQgIWRlZmF1bHQ7XG4kbmF2LWNvbG9yLWFuY2VzdG9yOiBzaGFkZS1jb2xvcigkbmF2LWNvbG9yLWFjY2VudCwgMjAlKSAhZGVmYXVsdDtcbiRuYXYtY29sb3ItYW5jZXN0b3ItZmlyc3QtbGV2ZWw6ICRuYXYtY29sb3ItYW5jZXN0b3IgIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIE5hdmJhclxuJHN1Ym1lbnUtYmctY29sb3I6IHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXk6IDMgKiAkc3BhY2VyIC8gNCAhZGVmYXVsdDtcbiRuYXZiYXItaXRlbS1tYXJnaW4teDogbnVsbCAhZGVmYXVsdDtcbiRuYXZiYXItaXRlbS1tYXJnaW4teTogbnVsbCAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtY29sb3I6ICRuYXYtbGluay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I6ICRuYXYtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yOiAkbmF2LWxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIERyb3Bkb3duc1xuXG4vLy0tLS0tLSBQYWdpbmF0aW9uXG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogcmdiYSgkcHJpbWFyeSwgLjEpICFkZWZhdWx0O1xuXG4vLy0tLS0tLSBNb2RhbHNcbiRtb2RhbC1iYWNrZHJvcC1iZzogYmxhY2sgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogLjUgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6IDAgIWRlZmF1bHQ7XG5cbi8vIE1vZGFsIFZpZGVvXG4kbW9kYWwtdmlkZW8tYnRuLWNsb3NlLWJnLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KSAhZGVmYXVsdDtcbiRtb2RhbC12aWRlby1idG4tY2xvc2UtY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIEltYWdlIHRodW1ibmFpbHMgJiBQaWN0dXJlXG5cbi8vLS0tLS0tIEJyZWFkY3J1bWJzXG4kYnJlYWRjcnVtYi1mb250LXNpemU6IC43NXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogdmFyKC0tYnMtYm9keS1jb2xvcikgIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIE9mZmNhbnZhc1xuJG9mZmNhbnZhcy1ib2R5LWJhY2tkcm9wLWNvbG9yOiByZ2JhKCRtb2RhbC1iYWNrZHJvcC1iZywgJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHkpICFkZWZhdWx0O1xuJG9mZmNhbnZhcy13aWRlLXNjcmVlbi1icmVha3BvaW50OiB4eGwgIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIE9mZmNhbnZhcyBkZXNrdG9wXG4kb2ZmY2FudmFzLWRhcmstbW9kZS1sb2dvLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWRlc2t0b3Atd2lkdGg6IDQwMHB4ICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1sb2dvLXdpZHRoOiA2Ni42NiUgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWhlYWRlci1hbGlnbmVtZW50OiBjZW50ZXIgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWdyaWQtYm9yZGVyLWNvbG9yOiAkc2Vjb25kYXJ5ICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ncmlkLWJvcmRlci1vcGFjaXR5OiAuNSAhZGVmYXVsdDtcbiRvZmZjYW52YXMtZ3JpZC1ib3JkZXItYmc6IHJnYmEoJG9mZmNhbnZhcy1ncmlkLWJvcmRlci1jb2xvciwgJG9mZmNhbnZhcy1ncmlkLWJvcmRlci1vcGFjaXR5KSAhZGVmYXVsdDtcbiRvZmZjYW52YXMtZ3JpZC1maXJzdC1sdmwtYm9yZGVyLXNpemU6IDFweCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtZ3JpZC1maXJzdC1sdmwtYm9yZGVyLXR5cGU6IHNvbGlkICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ncmlkLWZpcnN0LWx2bC1ib3JkZXItb3BhY2l0eTogLjEgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWdyaWQtZmlyc3QtbHZsLWJvcmRlci1jb2xvcjogJHNlY29uZGFyeSAhZGVmYXVsdDtcbiRvZmZjYW52YXMtZ3JpZC1maXJzdC1sdmwtYm9yZGVyLWNvbG9yLWJnOiByZ2JhKCRvZmZjYW52YXMtZ3JpZC1maXJzdC1sdmwtYm9yZGVyLWNvbG9yLCAkb2ZmY2FudmFzLWdyaWQtZmlyc3QtbHZsLWJvcmRlci1vcGFjaXR5KTtcbiRvZmZjYW52YXMtZ3JpZC1maXJzdC1sdmwtYm9yZGVyLXN0eWxlOiAkb2ZmY2FudmFzLWdyaWQtZmlyc3QtbHZsLWJvcmRlci1zaXplICRvZmZjYW52YXMtZ3JpZC1maXJzdC1sdmwtYm9yZGVyLXR5cGUgJG9mZmNhbnZhcy1ncmlkLWZpcnN0LWx2bC1ib3JkZXItY29sb3ItYmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWdyaWQtZmlyc3QtbHZsLWZvbnQtc2l6ZTogMS41cmVtICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ncmlkLWZpcnN0LXRodW1iLXdpZHRoOiA3NSUgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWdyaWQtc3VibWVudS1mb250LXNpemU6IDEuMTI1cmVtICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ncmlkLXN1Ym1lbnUtaXRlbS1wYWRkaW5nLXk6IDAgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWdyaWQtc3VibWVudS1pdGVtLWxpbmUtaGVpZ2h0OiAxLjI1ICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ncmlkLXN1Ym1lbnUtaXRlbS1pY29uLXNpemU6IC44cmVtICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ncmlkLXN1Ym1lbnUtaXRlbS1pbWFnZS1ib3gtc2hhZG93OiAwIDAgMS41cmVtIC43NXJlbSByZ2JhKCRzZWNvbmRhcnksIC4yNSkgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWdyaWQtc3VibWVudS1pdGVtLWhvdmVyLWltYWdlLWJveC1zaGFkb3c6IHZhcigtLWJzLWJveC1zaGFkb3cpO1xuJG9mZmNhbnZhcy1maXJzdC1sdmwtbWVudS1pdGVtLWJvcmRlci1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1maXJzdC1sdmwtbWVudS1pdGVtLWJvcmRlci1vcGFjaXR5OiAuMTUgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWZpcnN0LWx2bC1tZW51LWl0ZW0tYm9yZGVyLXN0eWxlOiAxcHggc29saWQgcmdiYSgkb2ZmY2FudmFzLWZpcnN0LWx2bC1tZW51LWl0ZW0tYm9yZGVyLWNvbG9yLCAkb2ZmY2FudmFzLWZpcnN0LWx2bC1tZW51LWl0ZW0tYm9yZGVyLW9wYWNpdHkpO1xuXG4vLy0tLS0tLS0gT2ZmY2FudmFzIGRlc2t0b3AgTWVnYSBTdWJtZW51XG4kb2ZmY2FudmFzLXN1Ym1lbnUtaXRlbS1mb250LXNpemU6IDEuNXJlbSAhZGVmYXVsdDtcbiRvZmZjYW52YXMtc3VibWVudS1pdGVtLWJvcmRlci1jb2xvcjogdmFyKC0tdGhlbWUtc2tpbi10ZXh0LWNvbG9yKSAhZGVmYXVsdDtcbiRvZmZjYW52YXMtc3VibWVudS1pdGVtLWJvcmRlci1zdHlsZTogMXB4IHNvbGlkICRvZmZjYW52YXMtc3VibWVudS1pdGVtLWJvcmRlci1jb2xvcjtcblxuXG4vLy0tLS0tLSBNZWdhIE1lbnVcbiRtZWdhbWVudS1iZy1jb2xvcjogdmFyKC0tdGhlbWUtc2tpbi1iZy1jb2xvcik7XG4kbWVnYW1lbnUtcGFkZGluZy15OiAxcmVtICFkZWZhdWx0O1xuJG1lZ2FtZW51LXBhZGRpbmcteDogMXJlbSAhZGVmYXVsdDtcbiRtZWdhbWVudS10aXRsZS1wYWRkaW5nLXk6IC41cmVtICFkZWZhdWx0O1xuJG1lZ2FtZW51LXRpdGxlLXBhZGRpbmcteDogMXJlbSAhZGVmYXVsdDtcbiRtZWdhbWVudS10aXRsZS1jb2xvcjogdmFyKC0tdGhlbWUtc2tpbi10ZXh0LWNvbG9yKSAhZGVmYXVsdDtcbiRtZWdhbWVudS10aXRsZS10ZXh0LWRlY29yYXRpb246IG5vbmUgIWRlZmF1bHQ7XG4kbWVnYW1lbnUtdGl0bGUtaG92ZXItY29sb3I6ICRuYXYtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRtZWdhbWVudS10aXRsZS1ob3Zlci10ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAhZGVmYXVsdDtcbiRtZWdhbWVudS1waWN0dXJlLWhhcy1vdmVybGF5OiB0cnVlICFkZWZhdWx0O1xuJG1lZ2FtZW51LW92ZXJsYXktYmctY29sb3I6ICRwcmltYXJ5ICFkZWZhdWx0O1xuJG1lZ2FtZW51LW92ZXJsYXktYmctb3BhY2l0eTogLjUgIWRlZmF1bHQ7XG4kbWVnYW1lbnUtb3ZlcmxheS1iZy1jb2xvci1yYmc6IHJnYmEoJG1lZ2FtZW51LW92ZXJsYXktYmctY29sb3IsICRtZWdhbWVudS1vdmVybGF5LWJnLW9wYWNpdHkpICFkZWZhdWx0O1xuJG1lZ2FtZW51LXBpY3R1cmUtYm9yZGVyLXJhZGl1czogLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIEFuY2hvciBvZmZzZXRcbiRhbmNob3Itb2Zmc2V0OiAxcmVtICFkZWZhdWx0O1xuXG4vLy0tLS0tLSBXcCBBbHBoYVxuLy8gbG9nb1xuJGxvZ28tcGFkZGluZy15OiAkbmF2YmFyLXBhZGRpbmcteSAhZGVmYXVsdDtcblxuLy8tLS0tLSBCb290c3RyYXAgY29sb3JzIGNsZWFudXBcbiRicy1ncmF5cy10by1rZWVwOiAoKSAhZGVmYXVsdDtcbiRicy1ncmF5cy10by1yZW1vdmU6IChcIjIwMFwiLCBcIjMwMFwiLCBcIjQwMFwiLCBcIjUwMFwiLCBcIjcwMFwiKSAhZGVmYXVsdDtcbiRicy1jb2xvcnMtdG8ta2VlcDogKCkgIWRlZmF1bHQ7XG4kYnMtY29sb3JzLXRvLXJlbW92ZTogKFwiaW5kaWdvXCIsIFwicGlua1wiLCBcInJlZFwiLCBcInllbGxvd1wiLCBcImdyZWVuXCIsIFwidGVhbFwiLCBcImN5YW5cIiwgXCJsaWdodFwiLCBcImRhcmtcIikgIWRlZmF1bHQ7XG5cbi8vLS0tLS0gQm9vdHN0cmFwIHV0aWxpdGllcyBjbGVhbnVwXG4kYnMtdXRpbGl0aWVzLXRvLXJlbW92ZTogKFwiYmctb3BhY2l0eVwiKSAhZGVmYXVsdDtcblxuLy8tLS0tLSBIZWxwZXJzXG4vLy0tLS0gU2VwYXJhdGUgdGl0bGVcbiRzZXBhcmF0ZS10aXRsZS13aWR0aDogODBweCAhZGVmYXVsdDtcbiRzZXBhcmF0ZS10aXRsZS1iZzogdmFyKC0tYnMtcHJpbWFyeSkgIWRlZmF1bHQ7XG5cbi8vLS0tLSBUcmFuc3BhcmVudCBiYWNrZ3JvdW5kc1xuJHRyYW5zcGFyZW50LWJnLW9wYWNpdGllcy1vdmVycmlkZXM6ICgpICFkZWZhdWx0O1xuJHRyYW5zcGFyZW50LWJnLW9wYWNpdGllczogKFxuICAxMDogLjEsXG4gIDI1OiAuMjUsXG4gIGxpZ2h0OiAuMjUsXG4gIDM1OiAuMzUsXG4gIDUwOiAuNSxcbiAgbWVkaXVtOiAuNSxcbiAgNjU6IC42NSxcbiAgNzU6IC43NSxcbiAgc3Ryb25nOiAuNzUsXG4gIDkwOiAuOVxuKSAhZGVmYXVsdDtcbiR0cmFuc3BhcmVudC1iZy1vcGFjaXRpZXM6IG1hcC1tZXJnZSgkdHJhbnNwYXJlbnQtYmctb3BhY2l0aWVzLCAkdHJhbnNwYXJlbnQtYmctb3BhY2l0aWVzLW92ZXJyaWRlcyk7XG4kdHJhbnNwYXJlbnQtYmctY29sb3JzOiAocHJpbWFyeTogJHRyYW5zcGFyZW50LWJnLW9wYWNpdGllcywgc2Vjb25kYXJ5OiAkdHJhbnNwYXJlbnQtYmctb3BhY2l0aWVzKSAhZGVmYXVsdDtcblxuLy8tLS0tLSBUb29sc1xuLy8gQ29uZmlndXJhdGlvbiAoYWN0aXZhdGUgb25seSB0aG9zZSBuZWVkZWQpXG4kdGVhc2VzOiAoXCJncmlkXCIsIFwibGlzdFwiLCBcInNpbXBsZVwiLCBcInNpbXBsZS1yZWFsaXNhdGlvbnNcIikgIWRlZmF1bHQ7XG4kZm9ybXM6ICgpICFkZWZhdWx0O1xuXG4vLy0tLS0tIFRvcCBCYXJcbiR0b3AtYmFyLWhpZGUtb24tbW9iaWxlOiB0cnVlICFkZWZhdWx0O1xuJHRvcC1iYXItaGlkZS1vbi1zY3JvbGwtbW9iaWxlOiB0cnVlICFkZWZhdWx0O1xuJHRvcC1iYXItaGlkZS1vbi1zY3JvbGwtZGVza3RvcDogJHRvcC1iYXItaGlkZS1vbi1zY3JvbGwtbW9iaWxlICFkZWZhdWx0O1xuJHRvcC1iYXItcGFkZGluZy14OiAkY29udGFpbmVyLXBhZGRpbmcteCAhZGVmYXVsdDtcbiR0b3AtYmFyLXBhZGRpbmcteTogLjVyZW0gIWRlZmF1bHQ7XG4kdG9wLWJhci1oZWlnaHQ6IGlmKG51bGwgIT0gaW5kZXgoJG1lbnVzLCBcInNlY29uZGFyeVwiKSwgMi41cmVtLCAxLjVyZW0pICFkZWZhdWx0O1xuJHRvcC1iYXItb3BhY2l0eTogMSAhZGVmYXVsdDtcbiR0b3AtYmFyLXNvY2lhbC1saW5rcy1tYXJnaW46IG1hcC1nZXQoJHNwYWNlcnMsIDQpICFkZWZhdWx0O1xuJHRvcC1iYXItZGVmYXVsdC1iZy1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJHRvcC1iYXItdHJhbnNwYXJlbnQtaGVhZGVyLWJnLWNvbG9yOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8tLS0tLSBIZWFkZXJcbiRoZWFkZXItYnRuLWljb246ICRmYS12YXItcGhvbmUgIWRlZmF1bHQ7XG4kaGVhZGVyLWJ0bi1mYS1zdHlsZTogXCJzb2xpZFwiICFkZWZhdWx0O1xuJGhlYWRlci1idG4tc2hvdy10ZXh0LWJyZWFrcG9pbnQ6ICRkZXNrdG9wLWJyZWFrcG9pbnQgIWRlZmF1bHQ7XG5cbi8vLS0tLS0gRmVhdHVyZWQgaW1hZ2VcbiRmZWF0dXJlZC1pbWFnZS1oZWlnaHQ6IDUwdmggIWRlZmF1bHQ7XG4kaG9tZS1mZWF0dXJlZC1pbWFnZS1oZWlnaHQ6IDUwdmggIWRlZmF1bHQ7XG4kZmVhdHVyZWQtaW1hZ2Utb3ZlcmxheS1jb2xvcjogYmxhY2sgIWRlZmF1bHQ7XG4kZmVhdHVyZWQtaW1hZ2Utb3ZlcmxheS1vcGFjaXR5OiAuMyAhZGVmYXVsdDtcbiRob21lLWZlYXR1cmVkLWltYWdlLXRleHQtdHJhbnNpdGlvbjogdHJ1ZSAhZGVmYXVsdDtcbiRob21lLWZlYXR1cmVkLWltYWdlLXRleHQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjVzICFkZWZhdWx0O1xuXG4vLy0tLS0tIENvbnRlbnQgQWJvdmVcbiRjb250ZW50LWFib3ZlLXRleHQtY29sb3I6IHdoaXRlICFkZWZhdWx0O1xuXG4vLy0tLS0tIFNoYXBlc1xuLy8gcG9zc2libGUgc2hhcGVzIGFyZTogKHNxdWFyZSwgY2lyY2xlLCB0cmlhbmdsZSwgbG96ZW5nZSlcbi8vIHBvc3NpYmxlIHVuaXRzIGFyZTogKHJlbTogMXJlbSwgZW06IDFlbSwgdnc6IDIuNXZ3KVxuJHNoYXBlczogKGNpcmNsZSkgIWRlZmF1bHQ7XG4kc2hhcGVzLXVuaXRzOiAocmVtOiAxcmVtKSAhZGVmYXVsdDtcbiRzaGFwZXMtZGVmYXVsdC11bml0OiBudGgobnRoKCRzaGFwZXMtdW5pdHMsIDEpLCAyKSAhZGVmYXVsdDtcbiRzaGFwZXMtbWF4LW11bHRpcGxpZXI6IDEwICFkZWZhdWx0O1xuXG4vLy0tLS0tIFRleHQgY29udHJhc3RcbiRhbHBoYS1lbmFibGUtYnRuLWNsb3NlLXRleHQtY29udHJhc3QtY29sb3JzOiBmYWxzZSAhZGVmYXVsdDtcbiRhbHBoYS1idG4tY2xvc2UtdGV4dC1jb250cmFzdC1jb2xvcnM6ICR0aGVtZS1jb2xvcnMgIWRlZmF1bHQ7XG5cbi8vLS0tLS0gVGV4dCBzaGFkb3dcbiRhbHBoYS10ZXh0LXNoYWRvdy1jb2xvcjogY29sb3ItY29udHJhc3Qod2hpdGUpICFkZWZhdWx0O1xuJGFscGhhLXRleHQtc2hhZG93LXJhZGl1czogLjVyZW0gIWRlZmF1bHQ7XG4kYWxwaGEtdGV4dC1zaGFkb3ctcmFkaXVzLXNtOiAuMjVyZW0gIWRlZmF1bHQ7XG4kYWxwaGEtdGV4dC1zaGFkb3ctcmFkaXVzLWxnOiAxcmVtICFkZWZhdWx0O1xuJGFscGhhLXRleHQtc2hhZG93LWNvbG9yczogKCkgIWRlZmF1bHQ7XG5cbi8vLS0tLS0gT3ZlcmxheVxuJGFscGhhLW92ZXJsYXktY29sb3I6ICRtb2RhbC1iYWNrZHJvcC1iZyAhZGVmYXVsdDtcbiRhbHBoYS1vdmVybGF5LW9wYWNpdHk6ICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5ICFkZWZhdWx0O1xuJGFscGhhLW92ZXJsYXktY29sb3JzOiAoKSAhZGVmYXVsdDtcblxuLy8tLS0tLSBaIGluZGV4XG4kYWxwaGEtei1pbmRleGVzOiAoMSwgMiwgMTApICFkZWZhdWx0O1xuXG4vLy0tLS0tIFNpZGViYXJcbiRzaWRlYmFyOiBmYWxzZSAhZGVmYXVsdDtcbiRzaWRlYmFyLWJnLWNvbG9yOiByZ2JhKCRwcmltYXJ5LCAuMSkgIWRlZmF1bHQ7XG4kc2lkZWJhci1wYWRkaW5nOiBtYXAtZ2V0KCRzcGFjZXJzLCAzKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWJvcmRlci1yYWRpdXM6IC4zNzVyZW0gIWRlZmF1bHQ7XG4kc2lkZWJhci13aWRnZXRzLXNwYWNlcjogbWFwLWdldCgkc3BhY2VycywgNikgIWRlZmF1bHQ7XG4kc2lkZWJhci13aWRnZXQtY29udGVudC1zcGFjZXI6IG1hcC1nZXQoJHNwYWNlcnMsIDIpICFkZWZhdWx0O1xuJHNpZGViYXItd2lkZ2V0LXRpdGxlLXNwYWNlcjogbWFwLWdldCgkc3BhY2VycywgMykgIWRlZmF1bHQ7XG4kc2lkZWJhci13aWRnZXQtdGl0bGUtZm9udC1zaXplOiAkaDMtZm9udC1zaXplICFkZWZhdWx0O1xuJHNpZGViYXItd2lkZ2V0LWxpc3QtZm9udC1zaXplOiAxcmVtICFkZWZhdWx0O1xuXG4vLy0tLS0tIFN1cnRpdGxlXG4kYWxwaGEtc3VydGl0bGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuJGFscGhhLXN1cnRpdGxlLWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGFscGhhLXN1cnRpdGxlLWZvbnQtc2l6ZS1kZXNrdG9wOiAkYWxwaGEtc3VydGl0bGUtZm9udC1zaXplICFkZWZhdWx0O1xuJGFscGhhLXN1cnRpdGxlLWZvbnQtd2VpZ2h0OiBub3JtYWwgIWRlZmF1bHQ7XG4kYWxwaGEtc3VydGl0bGUtY29sb3I6IHZhcigtLWJzLXByaW1hcnkpICFkZWZhdWx0O1xuJGFscGhhLXN1cnRpdGxlLW1hcmdpbi1ib3R0b206IG1hcC1nZXQoJHNwYWNlcnMsIDQpICFkZWZhdWx0O1xuJGFscGhhLXN1cnRpdGxlLXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWRlZmF1bHQ7XG5cbi8vLS0tLS0gQ29weXJpZ2h0XG4kYWxwaGEtY29weXJpZ2h0LWZvbnQtc2l6ZTogLjgyNXJlbSAhZGVmYXVsdDtcbiRhbHBoYS1jb3B5cmlnaHQtbGluay1ob3Zlci1jb2xvcjogdmFyKC0tdGhlbWUtc2tpbi10ZXh0LWNvbG9yKSAhZGVmYXVsdDtcbiRhbHBoYS1jb3B5cmlnaHQtbGluay10ZXh0LWRlY29yYXRpb246IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLS0tLS0gTmF2aWdhdGlvbnNcbi8vLS0tLSBDb21tb25cbiRuYXYtbGluay1hZnRlci1oZWlnaHQ6IDJweCAhZGVmYXVsdDtcblxuLy8tLS0tIENlbnRlclxuJG5hdi1jZW50ZXItbG9nby1wYWRkaW5nLXg6IDFyZW0gIWRlZmF1bHQ7XG4kbmF2LWNlbnRlci1sb2dvLXBhZGRpbmcteTogMCAhZGVmYXVsdDtcblxuLy8tLS0tIFN1Ym1lbnUgbW9ycGhcbiRzdWJtZW51LW1vcnBoLW1pbi13aWR0aDogMzUwcHggIWRlZmF1bHQ7XG4kc3VibWVudS1tb3JwaC1tYXgtd2lkdGg6IDM1dncgIWRlZmF1bHQ7XG4kc3VibWVudS1tb3JwaC1kcm9wZG93bi1saXN0LWJvcmRlci1yYWRpdXM6IC41cmVtICFkZWZhdWx0O1xuJHN1Ym1lbnUtbW9ycGgtZHJvcGRvd24tbGlzdC1wYWRkaW5nOiAuNXJlbSAhZGVmYXVsdDtcbiRzdWJtZW51LW1vcnBoLWRyb3Bkb3duLWxpc3QtYmctY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiRzdWJtZW51LW1vcnBoLWRyb3Bkb3duLWxpc3QtYm94LXNoYWRvdzogdmFyKC0tYnMtYm94LXNoYWRvdykgIWRlZmF1bHQ7XG4kc3VibWVudS1tb3JwaC1kcm9wZG93bi1saXN0LWFycm93LWhlaWdodDogLjc1cmVtICFkZWZhdWx0O1xuJHN1Ym1lbnUtbW9ycGgtZHJvcGRvd24tbGlzdC1hcnJvdy1sZWZ0OiA1cmVtICFkZWZhdWx0O1xuJHN1Ym1lbnUtbW9ycGgtYWN0aXZlLW1lbnUtYmctY29sb3I6ICRncmF5LTEwMCAhZGVmYXVsdDtcbiRzdWJtZW51LW1vcnBoLWFuY2VzdG9ycy1mb250LXdlaWdodDogNTAwICFkZWZhdWx0O1xuJHN1Ym1lbnUtbW9ycGgtbGluay1jb2xvcjogJG5hdi1saW5rLWNvbG9yICFkZWZhdWx0O1xuJHN1Ym1lbnUtbW9ycGgtbGluay1ob3Zlci1jb2xvcjogJG5hdi1saW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHN1Ym1lbnUtbW9ycGgtbGluay1jb2xvci1jdXJyZW50OiAkbmF2LWNvbG9yLWN1cnJlbnQgIWRlZmF1bHQ7XG4kc3VibWVudS1tb3JwaC1saW5rLWNvbG9yLWFuY2VzdG9yOiAkbmF2LWNvbG9yLWFuY2VzdG9yICFkZWZhdWx0O1xuJHN1Ym1lbnUtbW9ycGgtc2Nyb2xsYmFyLWNvbG9yOiAkcHJpbWFyeSAhZGVmYXVsdDtcbiRzdWJtZW51LW1vcnBoLXNjcm9sbGJhci1iZy1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy0tLS0tIEJyZWFkY3J1bWJzXG4kYnJlYWRjcnVtYi1tb2JpbGUtc2hhZG93LXNpemU6IDEuNXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLW1vYmlsZS1zaGFkb3ctY29sb3I6ICRib2R5LWJnICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItb24tZmVhdHVyZWQtbW9iaWxlLXNoYWRvdy1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy0tLS0tIFRlYXNlXG4kdGVhc2UtYmFkZ2UtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiR0ZWFzZS1iYWRnZS1iZzogdmFyKC0tYnMtcHJpbWFyeSkgIWRlZmF1bHQ7XG5cbiR0ZWFzZS1vdmVybGF5LXRleHQtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiR0ZWFzZS1vdmVybGF5LXRleHQtc2hhZG93OiAwIDAgLjI1cmVtICMwMDA7XG4kdGVhc2Utb3ZlcmxheS1iZy1jb2xvcjogJHNlY29uZGFyeSAhZGVmYXVsdDtcbiR0ZWFzZS1vdmVybGF5LWJnLW9wYWNpdHk6IC41ICFkZWZhdWx0O1xuXG4vLy0tLS0tLSBXb29Db21tZXJjZVxuXG4kd2MtcHJpbWFyeTogdmFyKC0tYnMtcHJpbWFyeSkgIWRlZmF1bHQ7XG4kd29vY29tbWVyY2U6IHZhcigtLWJzLXByaW1hcnkpICFkZWZhdWx0O1xuJHdjLWdyZWVuOiAkc3VjY2VzcyAhZGVmYXVsdDtcbiR3Yy1yZWQ6ICRkYW5nZXIgIWRlZmF1bHQ7XG4kd2Mtb3JhbmdlOiAkd2FybmluZyAhZGVmYXVsdDtcbiR3Yy1ibHVlOiAkaW5mbyAhZGVmYXVsdDtcbiR3Yy1wcmltYXJ5LXRleHQ6ICR3aGl0ZSAhZGVmYXVsdDtcbiR3Yy1zZWNvbmRhcnk6ICRzZWNvbmRhcnkgIWRlZmF1bHQ7XG4kd2Mtc2Vjb25kYXJ5LXRleHQ6ICR3aGl0ZSAhZGVmYXVsdDtcbiR3Yy1oaWdobGlnaHQ6ICNiM2FmNTQgIWRlZmF1bHQ7XG4kd2MtaGlnaGxpZ2h0LXRleHQ6ICR3aGl0ZSAhZGVmYXVsdDtcbiR3Yy1jb250ZW50LWJnOiAjZmZmICFkZWZhdWx0O1xuJHdjLXN1YnRleHQ6ICM3Njc2NzYgIWRlZmF1bHQ7XG5cbiR3Yy1zdG9jay1pbi1zdG9jay1jb2xvcjogJHdjLWdyZWVuICFkZWZhdWx0O1xuJHdjLXN0b2NrLWxvdy1zdG9jay1jb2xvcjogJHdjLW9yYW5nZSAhZGVmYXVsdDtcbiR3Yy1zdG9jay1hdmFpbGFibGUtb24tYmFja29yZGVyLWNvbG9yOiAkd2Mtb3JhbmdlICFkZWZhdWx0O1xuJHdjLXN0b2NrLW91dC1vZi1zdG9jay1jb2xvcjogJHdjLXJlZCAhZGVmYXVsdDtcblxuJHdjLXN0b2NrLWluLXN0b2NrLWljb246ICRmYS12YXItY2lyY2xlLWNoZWNrICFkZWZhdWx0O1xuJHdjLXN0b2NrLWxvdy1zdG9jay1pY29uOiAkZmEtdmFyLWNoYXJ0LWxpbmUtZG93biAhZGVmYXVsdDtcbiR3Yy1zdG9jay1hdmFpbGFibGUtb24tYmFja29yZGVyLWljb246ICRmYS12YXItY2xvY2stcm90YXRlLWxlZnQgIWRlZmF1bHQ7XG4kd2Mtc3RvY2stb3V0LW9mLXN0b2NrLWljb246ICRmYS12YXItY2lyY2xlLXhtYXJrICFkZWZhdWx0O1xuXG4vLyBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciBvbGQgJHdvb2NvbW1lcmNlICYgJHdvb2NvbW1lcmNlU2lkZWJhciB2YXJpYWJsZXNcbkBpZiB0eXBlLW9mKCR3b29jb21tZXJjZSkgPT0gXCJib29sXCIge1xuICBAd2FybiBcIlVzYWdlIG9mICR3b29jb21tZXJjZSB2YXJpYWJsZSBhcyBib29sIGlzIGRlcHJlY2F0ZWQsIHVzZSB3b29jb21tZXJjZS5lbmFibGVkIGluIHdvb2NvbW1lcmNlLnlhbWwgaW5zdGVhZC5cIjtcbiAgJHdvb2NvbW1lcmNlOiBtYXAtZXh0ZW5kKG1hcC1nZXQoJGNvbmZpZy1kZWZhdWx0cywgXCJ3b29jb21tZXJjZVwiKSwgKGVuYWJsZWQ6ICR3b29jb21tZXJjZSkpO1xuICAkd29vY29tbWVyY2UtZW5hYmxlZDogbWFwLWdldC1kZWVwKCR3b29jb21tZXJjZSwgXCJlbmFibGVkXCIpO1xufVxuXG5AaWYgdmFyaWFibGUtZXhpc3RzKHdvb2NvbW1lcmNlU2lkZWJhcikge1xuICBAd2FybiBcIlVzYWdlIG9mICR3b29jb21tZXJjZVNpZGViYXIgdmFyaWFibGUgZGVwcmVjYXRlZCwgdXNlICR3b29jb21tZXJjZS1zaWRlYmFyIGluc3RlYWQuXCI7XG4gICR3b29jb21tZXJjZS1zaWRlYmFyOiAkd29vY29tbWVyY2VTaWRlYmFyO1xufVxuXG4vLyBBY2NvdW50XG4kYWNjb3VudC1uYXZpZ2F0aW9uLWljb25zOiAoXG4gIGRhc2hib2FyZDogJGZhLXZhci1ob21lLFxuICBvcmRlcnM6ICRmYS12YXItZG9sbHksXG4gIHN1YnNjcmlwdGlvbnM6ICRmYS12YXItY2xvY2stcm90YXRlLWxlZnQsXG4gIG1lbWJlcnNoaXBzOiAkZmEtdmFyLXVzZXItY3Jvd24sXG4gIGRvd25sb2FkczogJGZhLXZhci1kb3dubG9hZCxcbiAgZWRpdC1hZGRyZXNzOiAkZmEtdmFyLW1hcC1tYXJrZXItZWRpdCxcbiAgcGF5bWVudC1tZXRob2RzOiAkZmEtdmFyLWNyZWRpdC1jYXJkLFxuICBlZGl0LWFjY291bnQ6ICRmYS12YXItdXNlci1lZGl0LFxuICBib29raW5nczogJGZhLXZhci1jYWxlbmRhci1hbHQsXG4gIGN1c3RvbWVyLWxvZ291dDogJGZhLXZhci1zaWduLW91dFxuKSAhZGVmYXVsdDtcblxuLy8gQXR0cmlidXRlc1xuJHdjLXByb2R1Y3QtYXR0cmlidXRlLWZvbnQtc2l6ZTogLjlyZW0gIWRlZmF1bHQ7XG4kd2MtcHJvZHVjdC1hdHRyaWJ1dGUtZXZlbi1iZzogcmdiYSgkcHJpbWFyeSwgLjEpICFkZWZhdWx0O1xuJHdjLXByb2R1Y3QtYXR0cmlidXRlLWxhYmVsLWNvbG9yOiAkZ3JheS03MDAgIWRlZmF1bHQ7XG5cbi8vIEF2YWlsYWJpbGl0eVxuJHdjLXN0b2NrLWZvbnQtc2l6ZTogLjhyZW0gIWRlZmF1bHQ7XG4kd2Mtc3RvY2staWNvbi13aWR0aDogJGZhLWZ3LXdpZHRoICFkZWZhdWx0O1xuJHdjLXN0b2NrLWljb24tZm9udC1zaXplOiAkZmEtc2l6ZS1zY2FsZS1iYXNlICFkZWZhdWx0O1xuJHdjLXN0b2NrLWluZm86IChcbiAgaW4tc3RvY2s6IChjb2xvcjogJHdjLXN0b2NrLWluLXN0b2NrLWNvbG9yLCBpY29uOiAkd2Mtc3RvY2staW4tc3RvY2staWNvbiksXG4gIGxvdy1zdG9jazogKGNvbG9yOiAkd2Mtc3RvY2stbG93LXN0b2NrLWNvbG9yLCBpY29uOiAkd2Mtc3RvY2stbG93LXN0b2NrLWljb24pLFxuICBhdmFpbGFibGUtb24tYmFja29yZGVyOiAoY29sb3I6ICR3Yy1zdG9jay1hdmFpbGFibGUtb24tYmFja29yZGVyLWNvbG9yLCBpY29uOiAkd2Mtc3RvY2stYXZhaWxhYmxlLW9uLWJhY2tvcmRlci1pY29uKSxcbiAgb3V0LW9mLXN0b2NrOiAoY29sb3I6ICR3Yy1zdG9jay1vdXQtb2Ytc3RvY2stY29sb3IsIGljb246ICR3Yy1zdG9jay1vdXQtb2Ytc3RvY2staWNvbiksXG4pICFkZWZhdWx0O1xuXG5cbi8vLS0tLS0gQWRkIHRvIENhcnQgYnV0dG9uXG4kYnRuLWFkZHRvY2FydC1iZzogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kYnRuLWFkZHRvY2FydC1jb2xvcjogJHNlY29uZGFyeSAhZGVmYXVsdDtcbiRidG4tYWRkdG9jYXJ0LWhvdmVyLWJnOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRidG4tYWRkdG9jYXJ0LWhvdmVyLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KSAhZGVmYXVsdDtcbiRidG4tYWRkdG9jYXJ0LWljb25zOiAoXG4gIHNpbXBsZTogJGZhLXZhci1zaG9wcGluZy1iYXNrZXQsXG4gIGdyb3VwZWQ6ICRmYS12YXItZXllLFxuICB2YXJpYWJsZTogJGZhLXZhci1jb2dzLFxuICBib29raW5nOiAkZmEtdmFyLWNhbGVuZGFyLWRheXMsXG4pICFkZWZhdWx0O1xuXG4vLy0tLS0tIEJvb2tpbmdcbiR3Yy1ib29raW5nLWRhdGVwaWNrZXItdWktYmc6ICRzZWNvbmRhcnkgIWRlZmF1bHQ7XG4kd2MtYm9va2luZy1kYXRlcGlja2VyLXVpLWNvbG9yOiBjb2xvci1jb250cmFzdCgkd2MtYm9va2luZy1kYXRlcGlja2VyLXVpLWJnKSAhZGVmYXVsdDtcbiR3Yy1ib29raW5nLWRhdGVwaWNrZXItYmxvY2stb2RkLWJnOiAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kd2MtYm9va2luZy1kYXRlcGlja2VyLWJsb2NrLW9kZC1ob3Zlci1iZzogc2hhZGUtY29sb3IoJHdjLWJvb2tpbmctZGF0ZXBpY2tlci1ibG9jay1vZGQtYmcsIDIwJSkgIWRlZmF1bHQ7XG4kd2MtYm9va2luZy1kYXRlcGlja2VyLWJsb2NrLW9kZC1jb2xvcjogY29sb3ItY29udHJhc3QoJHdjLWJvb2tpbmctZGF0ZXBpY2tlci1ibG9jay1vZGQtYmcpICFkZWZhdWx0O1xuJHdjLWJvb2tpbmctZGF0ZXBpY2tlci1ibG9jay1ldmVuLWJnOiAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kd2MtYm9va2luZy1kYXRlcGlja2VyLWJsb2NrLWV2ZW4taG92ZXItYmc6IHNoYWRlLWNvbG9yKCR3Yy1ib29raW5nLWRhdGVwaWNrZXItYmxvY2stZXZlbi1iZywgMjAlKSAhZGVmYXVsdDtcbiR3Yy1ib29raW5nLWRhdGVwaWNrZXItYmxvY2stZXZlbi1jb2xvcjogY29sb3ItY29udHJhc3QoJHdjLWJvb2tpbmctZGF0ZXBpY2tlci1ibG9jay1ldmVuLWJnKSAhZGVmYXVsdDtcbiR3Yy1ib29raW5nLWNvc3QtYmc6ICRncmF5LTEwMCAhZGVmYXVsdDtcbiR3Yy1ib29raW5nLWNvc3QtY29sb3I6IGNvbG9yLWNvbnRyYXN0KCR3Yy1ib29raW5nLWNvc3QtYmcpICFkZWZhdWx0O1xuXG4vLy0tLS0tIFByaWNlIENvbG9yXG4kd2MtcHJpY2UtY29sb3I6ICRzZWNvbmRhcnkgIWRlZmF1bHQ7XG4kd2MtZGVsLXByaWNlLWNvbG9yOiByZ2JhKCRncmF5LTUwMCwgLjYpICFkZWZhdWx0O1xuXG4vLy0tLS0tIERpc2NvdW50IGJhZGdlXG4kYmFkZ2Utb25zYWxlLWJnOiAkc2Vjb25kYXJ5ICFkZWZhdWx0O1xuJGJhZGdlLW9uc2FsZS1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy0tLS0tIE1pbmkgQ2FydFxuJG1pbmljYXJ0LWNvdW50ZXItYmc6ICRzZWNvbmRhcnkgIWRlZmF1bHQ7XG4kbWluaWNhcnQtY291bnRlci1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJG1pbmljYXJ0LXRvdGFsLWJnOiAkc2Vjb25kYXJ5ICFkZWZhdWx0O1xuJG1pbmljYXJ0LXRvdGFsLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kbWluaWNhcnQtaXRlbS1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSkgIWRlZmF1bHQ7XG4kbWluaWNhcnQtcXR5LWNvbG9yOiB2YXIoLS1icy1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcblxuLy8tLS0tLSBDYXJ0XG4kY2FydC1idG4tYWN0aW9ucy1iZzogJHByaW1hcnkgIWRlZmF1bHQ7XG4kY2FydC1idG4tY2hlY2tvdXQtYmc6ICRzZWNvbmRhcnkgIWRlZmF1bHQ7XG5cbi8vLS0tLS0gTWVzc2FnZVxuJHdjLW1lc3NhZ2UtYmctY29sb3I6ICRncmF5LTEwMCAhZGVmYXVsdDtcbiR3Yy1tZXNzYWdlLWNvbG9yOiB2YXIoLS1icy1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiR3Yy1tZXNzYWdlLWljb24tY29sb3I6ICRncmVlbiAhZGVmYXVsdDtcblxuJHdjLWluZm8tYmctY29sb3I6ICRncmF5LTEwMCAhZGVmYXVsdDtcbiR3Yy1pbmZvLWNvbG9yOiB2YXIoLS1icy1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiR3Yy1pbmZvLWljb24tY29sb3I6ICRibHVlICFkZWZhdWx0O1xuXG4kd2MtZXJyb3ItYmctY29sb3I6ICRncmF5LTEwMCAhZGVmYXVsdDtcbiR3Yy1lcnJvci1jb2xvcjogdmFyKC0tYnMtYm9keS1jb2xvcikgIWRlZmF1bHQ7XG4kd2MtZXJyb3ItaWNvbi1jb2xvcjogcmVkICFkZWZhdWx0O1xuXG4vLy0tLS0tIFNpZGViYXJcbiR3Yy1zaWRlYmFyLW1vYmlsZS1jb2xvcjogd2hpdGUgIWRlZmF1bHQ7XG4kd2Mtc2lkZWJhci1tb2JpbGUtYmFjay10b3Atb2Zmc2V0LXk6IDNyZW0gIWRlZmF1bHQ7XG4kd2Mtc2lkZWJhci1jb2xvcjogcmdiYSgkcHJpbWFyeSwgLjEpICFkZWZhdWx0O1xuJHdjLWZpbHRlci10b2dnbGVyLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kd2MtZmlsdGVyLXRvZ2dsZXItYmc6ICRwcmltYXJ5ICFkZWZhdWx0O1xuJHdjLWNhdC1saW5rLWJnOiAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kd2MtY2F0LWxpbmstaG92ZXItYmc6IHZhcigtLWJzLXByaW1hcnkpICFkZWZhdWx0O1xuJHdjLWNhdC1saW5rLWhvdmVyLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kd2Mtc2lkZWJhci1jdXJyZW50LXRlcm0tbGluay1jb2xvcjogJG5hdi1jb2xvci1jdXJyZW50ICFkZWZhdWx0O1xuJHdjLXNpZGViYXItY3VycmVudC10ZXJtLWxpbmstaG92ZXItY29sb3I6IHRpbnQtY29sb3IoJHdjLXNpZGViYXItY3VycmVudC10ZXJtLWxpbmstY29sb3IsIDEwJSkgIWRlZmF1bHQ7XG4kd2Mtc2lkZWJhci1jdXJyZW50LXRlcm0tcGFyZW50LWxpbmstY29sb3I6ICRuYXYtY29sb3ItYW5jZXN0b3IgIWRlZmF1bHQ7XG4kd2Mtc2lkZWJhci1jdXJyZW50LXRlcm0tcGFyZW50LWxpbmstaG92ZXItY29sb3I6IHRpbnQtY29sb3IoJHdjLXNpZGViYXItY3VycmVudC10ZXJtLXBhcmVudC1saW5rLWNvbG9yLCAxMCUpICFkZWZhdWx0O1xuXG4vLy0tLS0tIFRvcCBiYXIgaWNvbnNcbi8vLS0tLS0gVG9wIGJhciBpY29uc1xuJHRvcC1iYXItaWNvbnM6IChjb250YWN0OiAkZmEtdmFyLWVudmVsb3BlLCBwaG9uZTogJGZhLXZhci1waG9uZS1hbHQpICFkZWZhdWx0O1xuJHRvcC1iYXItaWNvbnMtbWFyZ2luOiAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9wLWJhci1pY29ucy1mYS12YXJpYW50OiBcInNvbGlkXCIgIWRlZmF1bHQ7XG4kd2MtdG9wLWJhci1pY29uczogJHRvcC1iYXItaWNvbnMgIWRlZmF1bHQ7XG4kd2MtdG9wLWJhci1pY29ucy1tYXJnaW46ICR0b3AtYmFyLWljb25zLW1hcmdpbiAhZGVmYXVsdDtcbiR3Yy10b3AtYmFyLWljb25zLWZhLXZhcmlhbnQ6ICR0b3AtYmFyLWljb25zLWZhLXZhcmlhbnQgIWRlZmF1bHQ7XG5cbi8vLS0tLS0gVGVhc2VcbiR3Yy10ZWFzZS1wcm9kdWN0LWJnLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kd2MtdGVhc2UtcHJvZHVjdC1ib3JkZXItcmFkaXVzOiBtYXAtZ2V0KCRzcGFjZXJzLCAyKSAhZGVmYXVsdDtcbiR3Yy10ZWFzZS1wcm9kdWN0LWxpbmstcGFkZGluZzogbWFwLWdldCgkc3BhY2VycywgMikgIWRlZmF1bHQ7XG4kd2MtdGVhc2UtcHJvZHVjdC1saW5rLWltYWdlLXBhZGRpbmc6ICR3Yy10ZWFzZS1wcm9kdWN0LWxpbmstcGFkZGluZyAqIC0xICFkZWZhdWx0O1xuJHdjLXRlYXNlLXByb2R1Y3QtaG92ZXItYm9yZGVyLWNvbG9yOiAkc2Vjb25kYXJ5ICFkZWZhdWx0O1xuXG4vLy0tLS0tLSBTb2NpYWwgc2hhcmUgaWNvbnNcbiRzb2NpYWwtc2hhcmUtaG92ZXItYm9yZGVyLWNvbG9yOiByZ2JhKCRwcmltYXJ5LCAuNSkgIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIFdQTUxcbiR3cG1sLWRldjogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIEFscGhhIGJsb2Nrc1xuLy8tLS0tLSBGYWNlYm9vayB2aWRlb1xuJGFscGhhLWZiLXZpZGVvLWxvYWRlci1iZy1jb2xvcjogJHByaW1hcnkgIWRlZmF1bHQ7XG4kYWxwaGEtZmItdmlkZW8tbG9hZGVyLWNvbG9yOiBjb2xvci1jb250cmFzdCgkYWxwaGEtZmItdmlkZW8tbG9hZGVyLWJnLWNvbG9yKSAhZGVmYXVsdDtcblxuLy8tLS0tLSBHb29nbGUgUmV2aWV3c1xuJGdvb2dsZS1yZXZpZXdzLWJvcmRlci10b3A6IDZweCBzb2xpZCAjNGZjZTZhICFkZWZhdWx0O1xuJGdvb2dsZS1yZXZpZXdzLWJvcmRlci1yYWRpdXM6IC4xNXJlbSAhZGVmYXVsdDtcbiRnb29nbGUtcmV2aWV3cy1sb2dvLXdpZHRoOiA1MHB4ICFkZWZhdWx0O1xuJGdvb2dsZS1yZXZpZXdzLXNjb3JlLWZvbnQtc2l6ZTogMS4yNXJlbSAhZGVmYXVsdDtcbiRnb29nbGUtcmV2aWV3cy1yYXRpbmctc3Rhci1jb2xvcjogI2U3NzExYiAhZGVmYXVsdDtcbiRnb29nbGUtcmV2aWV3cy1yYXRpbmctY291bnQtY29sb3I6ICM3YTdhN2EgIWRlZmF1bHQ7XG4kZ29vZ2xlLXJldmlld3Mtei1pbmRleDogMjAwMCAhZGVmYXVsdDtcbiRnb29nbGUtcmV2aWV3cy1vZmZzZXQ6IDJyZW0gIWRlZmF1bHQ7XG4kZ29vZ2xlLXJldmlld3Mtb2Zmc2V0LWJvdHRvbTogJGdvb2dsZS1yZXZpZXdzLW9mZnNldCAhZGVmYXVsdDtcbiRnb29nbGUtcmV2aWV3cy1vZmZzZXQtbGVmdDogJGdvb2dsZS1yZXZpZXdzLW9mZnNldCAhZGVmYXVsdDtcbiRnb29nbGUtcmV2aWV3cy1vZmZzZXQtcmlnaHQ6ICRnb29nbGUtcmV2aWV3cy1vZmZzZXQgIWRlZmF1bHQ7XG4kZ29vZ2xlLWJhZGdlLWRpc3BsYXk6IGJsb2NrICFkZWZhdWx0O1xuJGdvb2dsZS1yZXZpZXdzLWJhZGdlLWhpZGUtb24tbW9iaWxlOiB0cnVlICFkZWZhdWx0O1xuXG4vLy0tLS0tIEhlcm8gYmFubmVyXG4kYWxwaGEtaGVyby1iYW5uZXItb2Zmc2V0LXk6IDMuNXJlbSAhZGVmYXVsdDtcbiRhbHBoYS1oZXJvLWJhbm5lci1vZmZzZXQtdG9wOiAkYWxwaGEtaGVyby1iYW5uZXItb2Zmc2V0LXkgIWRlZmF1bHQ7XG4kYWxwaGEtaGVyby1iYW5uZXItb2Zmc2V0LWJvdHRvbTogJGFscGhhLWhlcm8tYmFubmVyLW9mZnNldC15ICFkZWZhdWx0O1xuXG4vLy0tLS0tIEljb25cbiRpY29uLWJsb2NrLWljb24tY29sb3I6IHZhcigtLWJzLXByaW1hcnkpICFkZWZhdWx0O1xuXG4vLy0tLS0tIE1hcFxuJGFscGhhLW1hcC1kZWZhdWx0LWhlaWdodDogMjUwcHggIWRlZmF1bHQ7XG4kYWxwaGEtbWFwLWRlZmF1bHQtaGVpZ2h0LWxnOiAkYWxwaGEtbWFwLWRlZmF1bHQtaGVpZ2h0ICogMiAhZGVmYXVsdDtcblxuLy8tLS0tLSBSYXRpbmdcbiRhbHBoYS1yYXRpbmctc3Rhci1vbi1jb2xvcjogJHllbGxvdyAhZGVmYXVsdDtcbiRhbHBoYS1yYXRpbmctc3Rhci1vZmYtY29sb3I6ICRncmF5LTEwMCAhZGVmYXVsdDtcblxuLy8tLS0tLSBSZWluc3VyYW5jZVxuLy8tLS0tIFNvdWJhIE1hZ2Fzc2Egc3R5bGVzXG4kc291YmEtcmVpbnN1cmFuY2UtY29sb3JzOiAocHJpbWFyeSwgc2Vjb25kYXJ5KSAhZGVmYXVsdDtcbiRzb3ViYS1yZWluc3VyYW5jZS10b3Atb2Zmc2V0OiAycmVtICFkZWZhdWx0O1xuXG4vLy0tLS0tIFNlcnZpY2VzXG4kc2VydmljZXMtYmctaG92ZXItY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiRzZXJ2aWNlcy1iZy1ob3Zlci1jb2xvci1saWdodDogJHNlcnZpY2VzLWJnLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHNlcnZpY2VzLWJnLWhvdmVyLWNvbG9yLWRhcms6ICRzZXJ2aWNlcy1iZy1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRzZXJ2aWNlcy1iZy1ob3Zlci1vcGFjaXR5OiAxICFkZWZhdWx0O1xuJHNlcnZpY2VzLWJnLWhvdmVyLW9wYWNpdHktbGlnaHQ6ICRzZXJ2aWNlcy1iZy1ob3Zlci1vcGFjaXR5ICFkZWZhdWx0O1xuJHNlcnZpY2VzLWJnLWhvdmVyLW9wYWNpdHktZGFyazogLjIgIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIEFscGhhIG1vZHVsZXNcbi8vLS0tLS0gQ29tbW9uXG4kbG9hZGluZy1tb2R1bGVzLWJnLWNvbG9yOiByZ2JhKCR3aGl0ZSwgLjc1KSAhZGVmYXVsdDtcbiRsb2FkaW5nLW1vZHVsZXMtbG9hZGVyLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KSAhZGVmYXVsdDtcbiRsb2FkaW5nLW1vZHVsZXMtbG9hZGVyLWZvbnQtc2l6ZTogMnJlbSAhZGVmYXVsdDtcbiRsb2FkaW5nLW1vZHVsZXMtei1pbmRleDogMTAgIWRlZmF1bHQ7XG5cbi8vLS0tLS0gRGVmYXVsdFxuLy8tLS0tIFBhZ2Ugc2Nyb2xsXG4kaG9tZS1wYWdlLXNjcm9sbC1saXN0ZW5lci1oZWlnaHQ6IDE1dmggIWRlZmF1bHQ7XG4kcGFnZS1zY3JvbGwtbGlzdGVuZXItaGVpZ2h0OiAkaG9tZS1wYWdlLXNjcm9sbC1saXN0ZW5lci1oZWlnaHQgLyAyICFkZWZhdWx0O1xuJHBhZ2Utc2Nyb2xsLWxpc3RlbmVyLWhlaWdodC1kZXNrdG9wOiAkaG9tZS1wYWdlLXNjcm9sbC1saXN0ZW5lci1oZWlnaHQgLyAzICFkZWZhdWx0O1xuXG4vLy0tLS0tIE9wdGlvbmFsXG4vLy0tLS0gQmFjayB0byB0b3BcbiRiYWNrLXRvLXRvcC1vZmZzZXQteDogMXJlbSAhZGVmYXVsdDtcbiRiYWNrLXRvLXRvcC1vZmZzZXQteTogMXJlbSAhZGVmYXVsdDtcbiRiYWNrLXRvLXRvcC13aGF0c2FwcC1idXR0b24tb2Zmc2V0LXk6IDRyZW0gIWRlZmF1bHQ7XG4kYmFjay10by10b3AtZGVmYXVsdC1idXR0b24tdHJhbnNsYXRlLXk6ICRiYWNrLXRvLXRvcC1vZmZzZXQteSAqIC0yICFkZWZhdWx0O1xuXG4vLy0tLS0gSGVhZGVyIHN0YXRlc1xuLy8tLS0gU2hydW5rIGxvZ29cbiRzaHJ1bmstbG9nby1oZWlnaHQtcmF0aW86IC44ICFkZWZhdWx0O1xuXG4vLy0tLS0gUmFuZ2Ugc2xpZGVyXG4kcmFuZ2Utc2xpZGVyLXdyYXBwZXItaGVpZ2h0OiAzcmVtICFkZWZhdWx0O1xuXG4vLy0tLS0gUm91c3F1aWxsZVxuJHJvdXNxdWlsbGUtYmFubmVyLWxvZ28tbWFyZ2luOiAwIGF1dG8gIWRlZmF1bHQ7XG4kcm91c3F1aWxsZS1iYW5uZXItbG9nby1tYXJnaW4tdGFibGV0OiAwIGF1dG8gbWFwLWdldCgkc3BhY2VycywgOCkgIWRlZmF1bHQ7XG4kcm91c3F1aWxsZS1iYW5uZXItbG9nby1tYXJnaW4tbW9iaWxlOiAwIGF1dG8gbWFwLWdldCgkc3BhY2VycywgNCkgIWRlZmF1bHQ7XG4kcm91c3F1aWxsZS1iYW5uZXItbG9nby1oZWlnaHQ6ICRsb2dvLWhlaWdodCAhZGVmYXVsdDtcbiRyb3VzcXVpbGxlLWJhbm5lci1sb2dvLW1heC1oZWlnaHQ6IDVyZW0gIWRlZmF1bHQ7XG5cbi8vLS0tLSBTZXJ2aWNlcyBCdXR0b25cbiRzZXJ2aWNlcy1idXR0b24tbW9iaWxlLW9mZnNldDogLjVyZW0gIWRlZmF1bHQ7XG4kc2VydmljZXMtYnV0dG9uLWRlc2t0b3Atb2Zmc2V0LWVuZDogMi41cmVtICFkZWZhdWx0O1xuJHNlcnZpY2VzLWJ1dHRvbi1mb290ZXItcGFkZGluZy1ib3R0b206IDQuNXJlbSAhZGVmYXVsdDtcbiRzZXJ2aWNlcy1idXR0b24tYmFjay10by10b3Atb2Zmc2V0LWJvdHRvbTogJHNlcnZpY2VzLWJ1dHRvbi1mb290ZXItcGFkZGluZy1ib3R0b20gKyAxcmVtICFkZWZhdWx0O1xuXG4vLy0tLS0gU3dpcGVyXG4kc3dpcGVyLXRoZW1lLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KSAhZGVmYXVsdDtcbiRzd2lwZXItbmF2aWdhdGlvbi1zaXplOiAxLjc1cmVtICFkZWZhdWx0O1xuXG4vLy0tLSBUcmFuc3BhcmVudCBIZWFkZXJcbiR0cmFuc3BhcmVudC1oZWFkZXItYmctY29sb3I6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICRncmF5LTcwMCwgdHJhbnNwYXJlbnQpICFkZWZhdWx0O1xuJHRyYW5zcGFyZW50LWhlYWRlci10ZXh0LWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJHRyYW5zcGFyZW50LWhlYWRlci1zaGFkb3ctY29sb3I6ICMwMDAgIWRlZmF1bHQ7XG4kdHJhbnNwYXJlbnQtaGVhZGVyLXNoYWRvdy1yYWRpdXM6IC4xMjVyZW0gIWRlZmF1bHQ7XG4kdHJhbnNwYXJlbnQtaGVhZGVyLWxvZ28tY29sb3I6ICR0cmFuc3BhcmVudC1oZWFkZXItdGV4dC1jb2xvciAhZGVmYXVsdDtcbiR0cmFuc3BhcmVudC1oZWFkZXItbG9nby1zaGFkb3ctY29sb3I6ICR0cmFuc3BhcmVudC1oZWFkZXItc2hhZG93LWNvbG9yICFkZWZhdWx0O1xuJHRyYW5zcGFyZW50LWhlYWRlci1sb2dvLXNoYWRvdy1yYWRpdXM6ICR0cmFuc3BhcmVudC1oZWFkZXItc2hhZG93LXJhZGl1cyAhZGVmYXVsdDtcblxuLy8tLS0tIFdoYXRzYXBwIEJ1dHRvblxuJHdoYXRzYXBwLWJ1dHRvbi1iZzogIzI1ZDM2NiAhZGVmYXVsdDtcbiR3aGF0c2FwcC1idXR0b24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiR3aGF0c2FwcC1idXR0b24tb2Zmc2V0LXg6IDFyZW0gIWRlZmF1bHQ7XG4kd2hhdHNhcHAtYnV0dG9uLW9mZnNldC15OiAxcmVtICFkZWZhdWx0O1xuJHdoYXRzYXBwLWJ1dHRvbi16LWluZGV4OiAxMCAhZGVmYXVsdDtcblxuLy8tLS0tIEltYWdlIEdhbGxlcnlcbi8vIFwib3ZlcmxheVwiLCBcImRlZmF1bHQtb3BhY2l0eVwiLCBcImhvdmVyLW9wYWNpdHlcIiwgXCJjdXN0b21cIlxuJGltYWdlLWdhbGxlcnktYW5pbWF0aW9uLXR5cGU6IFwib3ZlcmxheVwiICFkZWZhdWx0O1xuXG4vLy0tLSBPcGFjaXR5XG4kaW1hZ2UtZ2FsbGVyeS1pbWFnZS1vcGFjaXR5OiAuNyAhZGVmYXVsdDtcblxuLy8tLS0gT3ZlcmxheVxuJGltYWdlLWdhbGxlcnktb3ZlcmxheS1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiRpbWFnZS1nYWxsZXJ5LW92ZXJsYXktb3BhY2l0eTogLjE1ICFkZWZhdWx0O1xuJGltYWdlLWdhbGxlcnktb3ZlcmxheS1iYWNrZHJvcC1maWx0ZXI6IHNhdHVyYXRlKDEyNSUpIGNvbnRyYXN0KDEyNSUpICFkZWZhdWx0O1xuJGltYWdlLWdhbGxlcnktb3ZlcmxheS10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgc2NhbGUoLjUpICFkZWZhdWx0O1xuJGltYWdlLWdhbGxlcnktb3ZlcmxheS1pY29uOiAkZmEtdmFyLXNlYXJjaC1wbHVzICFkZWZhdWx0O1xuJGltYWdlLWdhbGxlcnktb3ZlcmxheS1pY29uLXN0eWxlOiBcInJlZ3VsYXJcIiAhZGVmYXVsdDtcbiRpbWFnZS1nYWxsZXJ5LW92ZXJsYXktaWNvbi1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiRpbWFnZS1nYWxsZXJ5LW92ZXJsYXktaWNvbi1vcGFjaXR5OiAuODUgIWRlZmF1bHQ7XG4kaW1hZ2UtZ2FsbGVyeS1vdmVybGF5LWljb24tZm9udC1zaXplOiAxLjVyZW0gIWRlZmF1bHQ7XG4kaW1hZ2UtZ2FsbGVyeS1vdmVybGF5LWljb24tdGV4dC1zaGFkb3c6IDAgMCAuMTI1cmVtIHJnYmEoYmxhY2ssIC43NSkgIWRlZmF1bHQ7XG4kaW1hZ2UtZ2FsbGVyeS1vdmVybGF5LWljb24tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xLjVyZW0pICFkZWZhdWx0O1xuJGltYWdlLWdhbGxlcnktb3ZlcmxheS1pbWFnZS1vZmZzZXQ6IC4xICFkZWZhdWx0O1xuJGltYWdlLWdhbGxlcnktb3ZlcmxheS1pbWFnZS1zY2FsZTogMSArICRpbWFnZS1nYWxsZXJ5LW92ZXJsYXktaW1hZ2Utb2Zmc2V0ICFkZWZhdWx0O1xuXG4vLy0tLS0gTGVhZmxldCBNYXBcbiRtYXAtbWFya2VyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWJzLXNlY29uZGFyeSkgIWRlZmF1bHQ7XG4kbWFwLW1hcmtlci1jb2xvci1sb2FkaW5nOiBncmF5ICFkZWZhdWx0O1xuJG1hcC1tYXJrZXItY29sb3ItYWN0aXZlOiB2YXIoLS1icy1wcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8tLS0tIE1hc29ucnlcbiRtYXNvbnJ5LWdhbGxlcnktZ2FwOiAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLS0tLSBXb29Db21tZXJjZSBTZWFyY2ggT3ZlcmxheVxuJHNlYXJjaC1vdmVybGF5LWJnLWNvbG9yOiBibGFjayAhZGVmYXVsdDtcbiRzZWFyY2gtb3ZlcmxheS1iZy1vcGFjaXR5OiAuMjUgIWRlZmF1bHQ7XG4kc2VhcmNoLW92ZXJsYXktYmFja2Ryb3AtZmlsdGVyOiBibHVyKC4xMjVyZW0pICFkZWZhdWx0O1xuJHNlYXJjaC1vdmVybGF5LWZvcm0tZm9udC1zaXplOiAuOXJlbSAhZGVmYXVsdDtcbiRzZWFyY2gtb3ZlcmxheS1mb3JtLWJvcmRlci1yYWRpdXM6IC4yNXJlbSAhZGVmYXVsdDtcblxuLy8tLS0tIFdvb0NvbW1lcmNlIFJldmlldyBmb3JtXG4kd29vY29tbWVyY2UtcmV2aWV3LWZvcm0tc3RhcnMtZm9udHNpemU6IDJyZW0gIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIEd1dGVuYmVyZyBibG9ja3Ncbi8vLS0tLS0gUmFuayBNYXRoXG4vLy0tLS0gRkFRXG4kcmFuay1tYXRoLWZhcS11c2UtbGVnYWN5LXN0eWxlczogdHJ1ZSAhZGVmYXVsdDtcbiRyYW5rLW1hdGgtZmFxLWJnLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kcmFuay1tYXRoLWZhcS1ib3gtc2hhZG93OiAwIC41cmVtIC41cmVtIC0uMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRyYW5rLW1hdGgtZmFxLWJvcmRlci1yYWRpdXM6IG1hcC1nZXQoJHNwYWNlcnMsIDEpICFkZWZhdWx0O1xuJHJhbmstbWF0aC1mYXEtYm9yZGVyLWNvbG9yOiAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcmFuay1tYXRoLWZhcS1ib3JkZXI6IDFweCBzb2xpZCAkcmFuay1tYXRoLWZhcS1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kcmFuay1tYXRoLWZhcS1pdGVtLXBhZGRpbmc6IG1hcC1nZXQoJHNwYWNlcnMsIDMpICFkZWZhdWx0O1xuJHJhbmstbWF0aC1mYXEtcXVlc3Rpb24tZm9udC1zaXplOiAxLjI1cmVtICFkZWZhdWx0O1xuJHJhbmstbWF0aC1mYXEtcXVlc3Rpb24tZ2FwOiBtYXAtZ2V0KCRzcGFjZXJzLCAyKSAhZGVmYXVsdDtcbiRyYW5rLW1hdGgtZmFxLXF1ZXN0aW9uLXBhZGRpbmctYm90dG9tOiAkcmFuay1tYXRoLWZhcS1xdWVzdGlvbi1nYXAgIWRlZmF1bHQ7XG4kcmFuay1tYXRoLWZhcS1xdWVzdGlvbi1ib3JkZXItY29sb3I6ICRyYW5rLW1hdGgtZmFxLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRyYW5rLW1hdGgtZmFxLXF1ZXN0aW9uLWJvcmRlci1ib3R0b206ICRyYW5rLW1hdGgtZmFxLWJvcmRlciAhZGVmYXVsdDtcbiRyYW5rLW1hdGgtZmFxLXF1ZXN0aW9uLWljb246ICRmYS12YXItcXVlc3Rpb24tY2lyY2xlICFkZWZhdWx0O1xuJHJhbmstbWF0aC1mYXEtcXVlc3Rpb24taWNvbi1jb2xvcjogJHNlY29uZGFyeSAhZGVmYXVsdDtcbiRyYW5rLW1hdGgtZmFxLXF1ZXN0aW9uLWljb24tZm9udC1zaXplOiAxcmVtICFkZWZhdWx0O1xuJHJhbmstbWF0aC1mYXEtcXVlc3Rpb24taWNvbi1vZmZzZXQtdG9wOiAuMnJlbSAhZGVmYXVsdDtcblxuLy8tLS0tIEltYWdlXG4kZ3V0ZW5iZXJnLWltYWdlLXJhdGlvczogKFwiMVwiLCBcIjQvM1wiLCBcIjMvNFwiLCBcIjMvMlwiLCBcIjIvM1wiLCBcIjE2LzlcIiwgXCI5LzE2XCIpICFkZWZhdWx0O1xuXG4vLy0tLS0tLSBGb250cyBvcHRpbWl6YXRpb25cbi8vLS0tLS0gRm9udEF3ZXNvbWUgaWNvbnNcbiRmb250LWZhLXBybzogXCJGb250IEF3ZXNvbWUgNiBQcm9cIjtcbiRmb250LWZhLWJyYW5kczogXCJGb250IEF3ZXNvbWUgNiBCcmFuZHNcIjtcbi8vIHNlZSAuLi92ZW5kb3JzL19mb250YXdlc29tZS5zY3NzIGZvciBpY29ucyBwcm9jZXNzaW5nXG4vLyBzZWUgLi4vdmVuZG9ycy9fZm9udGF3ZXNvbWUtaWNvbnMuc2NzcyBmb3IgYXZhaWxhYmxlIGljb25zICYgaWNvbnMgZ3JvdXBzXG4vLyAkY3VzdG9tLXVzZWQtZmEtaWNvbnM6IChmb250LWF3ZXNvbWUtZmxhZzogJGZhLXZhci1mb250LWF3ZXNvbWUtZmxhZywgcGx1czogJGZhLXZhci1wbHVzKTtcbiRjdXN0b20tdXNlZC1mYS1pY29uczogKCkgIWRlZmF1bHQ7XG4vLyAkdXNlZC1mYS1pY29ucy1ncm91cHM6IChhY2NvbW1vZGF0aW9ucywgd29vY29tbWVyY2UpO1xuJHVzZWQtZmEtaWNvbnMtZ3JvdXBzOiAoKSAhZGVmYXVsdDtcblxuLy8tLS0tLSBJY29ucyBsaXN0XG4kYWxwaGEtZmEtaWNvbnMtbGlzdDogKCkgIWRlZmF1bHQ7XG4kYWxwaGEtZmEtaWNvbnMtbGlzdC1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSkgIWRlZmF1bHQ7XG4kYWxwaGEtZmEtaWNvbnMtbGlzdC1zdHlsZTogc29saWQgIWRlZmF1bHQ7XG4kYWxwaGEtZmEtaWNvbnMtbGlzdC1jb2xvcnM6ICgpICFkZWZhdWx0O1xuXG4vLy0tLS0tLSBTbGlja1xuJHNsaWNrLWZvbnQtcGF0aDogXCJ+c2xpY2stY2Fyb3VzZWwvc2xpY2svZm9udHMvXCI7XG4kc2xpY2stZm9udC1mYW1pbHk6ICRmb250LWZhLXBybztcblxuLy8tLS0tLS0gQ0Y3IEVmZmVjdFxuJGNvbG9yLWZvcm0tdGV4dDogdmFyKC0tYnMtYm9keS1jb2xvcikgIWRlZmF1bHQ7XG4kY29sb3ItZm9ybS1maWxsZWQ6IHZhcigtLWJzLXByaW1hcnkpICFkZWZhdWx0O1xuJGNvbG9yLWZvcm0tZmllbGQtYm9yZGVyOiB2YXIoLS1icy1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJGZvcm0tZmllbGQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kZm9ybS1maWVsZC1tYXJnaW4tYm90dG9tOiAycmVtICFkZWZhdWx0O1xuJGZvcm0tZ3V0dGVyOiAuNzVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1ndXR0ZXItbGVmdDogMS41cmVtICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC1zaXplLWZpbGxlZDogLjdyZW0gIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtbm8tYW5pbS1tYXJnaW4tdG9wOiAuNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLW5vLWFuaW0tdHJhbnNsYXRlOiAtLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tZXJyb3ItZm9udC1zaXplOiAuOXJlbSAhZGVmYXVsdDtcblxuLy8tLS0tLS0gQm9vdHN0cmFwIFJlc3BvbnNpdmUgSW1hZ2UgUmF0aW9cbi8vIG11c3QgYmUgYSBsaXN0IG9mIHJhdGlvcyBmb3JtYXR0ZWQgbGlrZSB0aGlzOiAoMSAxKSwgKDQgMyksICgzIDIpLCAoMTYgOSksICgyMSA5KVxuJG1lZGlhLXJhdGlvczogKCkgIWRlZmF1bHQ7XG4iLCIkdGhlbWU6ICgnY29sb3JzJzogKCdwcmltYXJ5JzogI2ZmYjcwMywnc2Vjb25kYXJ5JzogIzYyMzIzMiwnYm9keSc6ICM2MjMyMzIsJ2JvZHlfYmcnOiAjZmZmLCksJ2xvZ28nOiAoJ2hlaWdodCc6IFwiMy43NXJlbVwiLCksJ3R5cG9ncmFwaHknOiAoJ2ZvbnQnOiAoJ2ZhbWlseV9zYW5zX3NlcmlmJzogS2FuaXQsJ3NpemUnOiBcIjFyZW1cIiwnd2VpZ2h0JzogNDAwLCksJ2hlYWRpbmdzJzogKCdjb2xvcic6IG51bGwsJ2ZvbnQnOiAoJ2ZhbWlseSc6IG51bGwsJ3dlaWdodCc6IDQwMCwpLCdzaXplcyc6ICgnaDEnOiBcIjQuMzc1cmVtXCIsJ2gyJzogXCIyLjgxM3JlbVwiLCdoMyc6IFwiMS43NXJlbVwiLCdoNCc6IFwiMS41NjNyZW1cIiwnaDUnOiBcIjEuMjVyZW1cIiwnaDYnOiBcIjFyZW1cIiwpLCdob21lX3NpemVzJzogKCdoMSc6IFwiM3JlbVwiLCdoMic6IFwiMi44MTNyZW1cIiwnaDMnOiBcIjEuNzVyZW1cIiwnaDQnOiBcIjEuNTYzcmVtXCIsJ2g1JzogXCIxLjI1cmVtXCIsJ2g2JzogXCIxcmVtXCIsKSwpLCksKTsiLCJAaW1wb3J0IFwiLi4vaW5pdFwiO1xuXG5AaW1wb3J0IFwiLi4vdGVhc2VzL3RlYXNlXCI7XG5cbi8vLS0tLS0tIFR5cG9cbkBlYWNoICRobiwgJHZhbHVlIGluICRob21lLWZvbnQtc2l6ZXMge1xuICBAaWYgJHZhbHVlICE9IG51bGwge1xuICAgICN7JGhufSwgLiN7JGhufSB7XG4gICAgICBAaW5jbHVkZSBmb250LXNpemUoJHZhbHVlKTtcbiAgICB9XG4gIH1cbn1cblxuLmhvbWUge1xuICBAaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAgIG1haW4uY29udGFpbmVyLFxuICAgIG1haW4gLmNvbnRhaW5lciB7XG4gICAgICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGhvbWUtY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgICAgIC0tY29udGFpbmVyLW1heC13aWR0aDogI3skY29udGFpbmVyLW1heC13aWR0aH07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG5AaWYgJGhvbWUtZmVhdHVyZWQtaW1hZ2UtdGV4dC10cmFuc2l0aW9uIHtcbiAgLmhvbWUge1xuICAgIC5mZWF0dXJlZC1pbWFnZSB7XG4gICAgICAuY29udGVudC1hYm92ZSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzIGVhc2U7XG5cbiAgICAgICAgQGlmICRob21lLWZlYXR1cmVkLWltYWdlLXRleHQtYW5pbWF0aW9uLWR1cmF0aW9uIHtcbiAgICAgICAgICBhbmltYXRpb246ICRob21lLWZlYXR1cmVkLWltYWdlLXRleHQtYW5pbWF0aW9uLWR1cmF0aW9uIGxpbmVhciAuMjVzIGFscGhhLWZlYXR1cmVkLXRleHQtb3BhY2l0eTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYucGFnZS1zY3JvbGxlZCB7XG4gICAgICAuZmVhdHVyZWQtaW1hZ2Uge1xuICAgICAgICAuY29udGVudC1hYm92ZSB7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2Nzcy9kaW1lbnNpb24tbm8tbm9uLW51bWVyaWMtdmFsdWVzXG5cbi8vIFNDU1MgUkZTIG1peGluXG4vL1xuLy8gQXV0b21hdGVkIHJlc3BvbnNpdmUgdmFsdWVzIGZvciBmb250IHNpemVzLCBwYWRkaW5ncywgbWFyZ2lucyBhbmQgbXVjaCBtb3JlXG4vL1xuLy8gTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvYmxvYi9tYWluL0xJQ0VOU0UpXG5cbi8vIENvbmZpZ3VyYXRpb25cblxuLy8gQmFzZSB2YWx1ZVxuJHJmcy1iYXNlLXZhbHVlOiAxLjI1cmVtICFkZWZhdWx0O1xuJHJmcy11bml0OiByZW0gIWRlZmF1bHQ7XG5cbkBpZiAkcmZzLXVuaXQgIT0gcmVtIGFuZCAkcmZzLXVuaXQgIT0gcHgge1xuICBAZXJyb3IgXCJgI3skcmZzLXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLXVuaXQuIFVzZSBgcHhgIG9yIGByZW1gLlwiO1xufVxuXG4vLyBCcmVha3BvaW50IGF0IHdoZXJlIHZhbHVlcyBzdGFydCBkZWNyZWFzaW5nIGlmIHNjcmVlbiB3aWR0aCBpcyBzbWFsbGVyXG4kcmZzLWJyZWFrcG9pbnQ6IDEyMDBweCAhZGVmYXVsdDtcbiRyZnMtYnJlYWtwb2ludC11bml0OiBweCAhZGVmYXVsdDtcblxuQGlmICRyZnMtYnJlYWtwb2ludC11bml0ICE9IHB4IGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSBlbSBhbmQgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcmVtIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1icmVha3BvaW50LXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC4gVXNlIGBweGAsIGBlbWAgb3IgYHJlbWAuXCI7XG59XG5cbi8vIFJlc2l6ZSB2YWx1ZXMgYmFzZWQgb24gc2NyZWVuIGhlaWdodCBhbmQgd2lkdGhcbiRyZnMtdHdvLWRpbWVuc2lvbmFsOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gRmFjdG9yIG9mIGRlY3JlYXNlXG4kcmZzLWZhY3RvcjogMTAgIWRlZmF1bHQ7XG5cbkBpZiB0eXBlLW9mKCRyZnMtZmFjdG9yKSAhPSBudW1iZXIgb3IgJHJmcy1mYWN0b3IgPD0gMSB7XG4gIEBlcnJvciBcImAjeyRyZnMtZmFjdG9yfWAgaXMgbm90IGEgdmFsaWQgICRyZnMtZmFjdG9yLCBpdCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAxLlwiO1xufVxuXG4vLyBNb2RlLiBQb3NzaWJpbGl0aWVzOiBcIm1pbi1tZWRpYS1xdWVyeVwiLCBcIm1heC1tZWRpYS1xdWVyeVwiXG4kcmZzLW1vZGU6IG1pbi1tZWRpYS1xdWVyeSAhZGVmYXVsdDtcblxuLy8gR2VuZXJhdGUgZW5hYmxlIG9yIGRpc2FibGUgY2xhc3Nlcy4gUG9zc2liaWxpdGllczogZmFsc2UsIFwiZW5hYmxlXCIgb3IgXCJkaXNhYmxlXCJcbiRyZnMtY2xhc3M6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyAxIHJlbSA9ICRyZnMtcmVtLXZhbHVlIHB4XG4kcmZzLXJlbS12YWx1ZTogMTYgIWRlZmF1bHQ7XG5cbi8vIFNhZmFyaSBpZnJhbWUgcmVzaXplIGJ1ZzogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzL2lzc3Vlcy8xNFxuJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4OiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gRGlzYWJsZSBSRlMgYnkgc2V0dGluZyAkZW5hYmxlLXJmcyB0byBmYWxzZVxuJGVuYWJsZS1yZnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIENhY2hlICRyZnMtYmFzZS12YWx1ZSB1bml0XG4kcmZzLWJhc2UtdmFsdWUtdW5pdDogdW5pdCgkcmZzLWJhc2UtdmFsdWUpO1xuXG5AZnVuY3Rpb24gZGl2aWRlKCRkaXZpZGVuZCwgJGRpdmlzb3IsICRwcmVjaXNpb246IDEwKSB7XG4gICRzaWduOiBpZigkZGl2aWRlbmQgPiAwIGFuZCAkZGl2aXNvciA+IDAgb3IgJGRpdmlkZW5kIDwgMCBhbmQgJGRpdmlzb3IgPCAwLCAxLCAtMSk7XG4gICRkaXZpZGVuZDogYWJzKCRkaXZpZGVuZCk7XG4gICRkaXZpc29yOiBhYnMoJGRpdmlzb3IpO1xuICBAaWYgJGRpdmlkZW5kID09IDAge1xuICAgIEByZXR1cm4gMDtcbiAgfVxuICBAaWYgJGRpdmlzb3IgPT0gMCB7XG4gICAgQGVycm9yIFwiQ2Fubm90IGRpdmlkZSBieSAwXCI7XG4gIH1cbiAgJHJlbWFpbmRlcjogJGRpdmlkZW5kO1xuICAkcmVzdWx0OiAwO1xuICAkZmFjdG9yOiAxMDtcbiAgQHdoaWxlICgkcmVtYWluZGVyID4gMCBhbmQgJHByZWNpc2lvbiA+PSAwKSB7XG4gICAgJHF1b3RpZW50OiAwO1xuICAgIEB3aGlsZSAoJHJlbWFpbmRlciA+PSAkZGl2aXNvcikge1xuICAgICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAtICRkaXZpc29yO1xuICAgICAgJHF1b3RpZW50OiAkcXVvdGllbnQgKyAxO1xuICAgIH1cbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogMTAgKyAkcXVvdGllbnQ7XG4gICAgJGZhY3RvcjogJGZhY3RvciAqIC4xO1xuICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgKiAxMDtcbiAgICAkcHJlY2lzaW9uOiAkcHJlY2lzaW9uIC0gMTtcbiAgICBAaWYgKCRwcmVjaXNpb24gPCAwIGFuZCAkcmVtYWluZGVyID49ICRkaXZpc29yICogNSkge1xuICAgICAgJHJlc3VsdDogJHJlc3VsdCArIDE7XG4gICAgfVxuICB9XG4gICRyZXN1bHQ6ICRyZXN1bHQgKiAkZmFjdG9yICogJHNpZ247XG4gICRkaXZpZGVuZC11bml0OiB1bml0KCRkaXZpZGVuZCk7XG4gICRkaXZpc29yLXVuaXQ6IHVuaXQoJGRpdmlzb3IpO1xuICAkdW5pdC1tYXA6IChcbiAgICBcInB4XCI6IDFweCxcbiAgICBcInJlbVwiOiAxcmVtLFxuICAgIFwiZW1cIjogMWVtLFxuICAgIFwiJVwiOiAxJVxuICApO1xuICBAaWYgKCRkaXZpZGVuZC11bml0ICE9ICRkaXZpc29yLXVuaXQgYW5kIG1hcC1oYXMta2V5KCR1bml0LW1hcCwgJGRpdmlkZW5kLXVuaXQpKSB7XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIG1hcC1nZXQoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCk7XG4gIH1cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLyBSZW1vdmUgcHgtdW5pdCBmcm9tICRyZnMtYmFzZS12YWx1ZSBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1iYXNlLXZhbHVlLXVuaXQgPT0gcHgge1xuICAkcmZzLWJhc2UtdmFsdWU6IGRpdmlkZSgkcmZzLWJhc2UtdmFsdWUsICRyZnMtYmFzZS12YWx1ZSAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYmFzZS12YWx1ZS11bml0ID09IHJlbSB7XG4gICRyZnMtYmFzZS12YWx1ZTogZGl2aWRlKCRyZnMtYmFzZS12YWx1ZSwgZGl2aWRlKCRyZnMtYmFzZS12YWx1ZSAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xufVxuXG4vLyBDYWNoZSAkcmZzLWJyZWFrcG9pbnQgdW5pdCB0byBwcmV2ZW50IG11bHRpcGxlIGNhbGxzXG4kcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZTogdW5pdCgkcmZzLWJyZWFrcG9pbnQpO1xuXG4vLyBSZW1vdmUgdW5pdCBmcm9tICRyZnMtYnJlYWtwb2ludCBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gcHgge1xuICAkcmZzLWJyZWFrcG9pbnQ6IGRpdmlkZSgkcmZzLWJyZWFrcG9pbnQsICRyZnMtYnJlYWtwb2ludCAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IHJlbSBvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcImVtXCIge1xuICAkcmZzLWJyZWFrcG9pbnQ6IGRpdmlkZSgkcmZzLWJyZWFrcG9pbnQsIGRpdmlkZSgkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSwgJHJmcy1yZW0tdmFsdWUpKTtcbn1cblxuLy8gQ2FsY3VsYXRlIHRoZSBtZWRpYSBxdWVyeSB2YWx1ZVxuJHJmcy1tcS12YWx1ZTogaWYoJHJmcy1icmVha3BvaW50LXVuaXQgPT0gcHgsICN7JHJmcy1icmVha3BvaW50fXB4LCAje2RpdmlkZSgkcmZzLWJyZWFrcG9pbnQsICRyZnMtcmVtLXZhbHVlKX0jeyRyZnMtYnJlYWtwb2ludC11bml0fSk7XG4kcmZzLW1xLXByb3BlcnR5LXdpZHRoOiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCBtYXgtd2lkdGgsIG1pbi13aWR0aCk7XG4kcmZzLW1xLXByb3BlcnR5LWhlaWdodDogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgbWF4LWhlaWdodCwgbWluLWhlaWdodCk7XG5cbi8vIEludGVybmFsIG1peGluIHVzZWQgdG8gZGV0ZXJtaW5lIHdoaWNoIG1lZGlhIHF1ZXJ5IG5lZWRzIHRvIGJlIHVzZWRcbkBtaXhpbiBfcmZzLW1lZGlhLXF1ZXJ5IHtcbiAgQGlmICRyZnMtdHdvLWRpbWVuc2lvbmFsIHtcbiAgICBAaWYgJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSB7XG4gICAgICBAbWVkaWEgKCN7JHJmcy1tcS1wcm9wZXJ0eS13aWR0aH06ICN7JHJmcy1tcS12YWx1ZX0pLCAoI3skcmZzLW1xLXByb3BlcnR5LWhlaWdodH06ICN7JHJmcy1tcS12YWx1ZX0pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSkgYW5kICgjeyRyZnMtbXEtcHJvcGVydHktaGVpZ2h0fTogI3skcmZzLW1xLXZhbHVlfSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBkaXNhYmxlIGNsYXNzZXMgdG8gdGhlIHNlbGVjdG9yIGlmIG5lZWRlZC5cbkBtaXhpbiBfcmZzLXJ1bGUge1xuICBAaWYgJHJmcy1jbGFzcyA9PSBkaXNhYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5IHtcbiAgICAvLyBBZGRpbmcgYW4gZXh0cmEgY2xhc3MgaW5jcmVhc2VzIHNwZWNpZmljaXR5LCB3aGljaCBwcmV2ZW50cyB0aGUgbWVkaWEgcXVlcnkgdG8gb3ZlcnJpZGUgdGhlIHByb3BlcnR5XG4gICAgJixcbiAgICAuZGlzYWJsZS1yZnMgJixcbiAgICAmLmRpc2FibGUtcmZzIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcmZzLWNsYXNzID09IGVuYWJsZSBhbmQgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XG4gICAgLmVuYWJsZS1yZnMgJixcbiAgICAmLmVuYWJsZS1yZnMge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBJbnRlcm5hbCBtaXhpbiB0aGF0IGFkZHMgZW5hYmxlIGNsYXNzZXMgdG8gdGhlIHNlbGVjdG9yIGlmIG5lZWRlZC5cbkBtaXhpbiBfcmZzLW1lZGlhLXF1ZXJ5LXJ1bGUge1xuXG4gIEBpZiAkcmZzLWNsYXNzID09IGVuYWJsZSB7XG4gICAgQGlmICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeSAoKSB7XG4gICAgICAuZW5hYmxlLXJmcyAmLFxuICAgICAgJi5lbmFibGUtcmZzIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAaWYgJHJmcy1jbGFzcyA9PSBkaXNhYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcbiAgICAgIC5kaXNhYmxlLXJmcyAmLFxuICAgICAgJi5kaXNhYmxlLXJmcyB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5ICgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gZ2V0IHRoZSBmb3JtYXR0ZWQgbm9uLXJlc3BvbnNpdmUgdmFsdWVcbkBmdW5jdGlvbiByZnMtdmFsdWUoJHZhbHVlcykge1xuICAvLyBDb252ZXJ0IHRvIGxpc3RcbiAgJHZhbHVlczogaWYodHlwZS1vZigkdmFsdWVzKSAhPSBsaXN0LCAoJHZhbHVlcywpLCAkdmFsdWVzKTtcblxuICAkdmFsOiBcIlwiO1xuXG4gIC8vIExvb3Agb3ZlciBlYWNoIHZhbHVlIGFuZCBjYWxjdWxhdGUgdmFsdWVcbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZXMge1xuICAgIEBpZiAkdmFsdWUgPT0gMCB7XG4gICAgICAkdmFsOiAkdmFsICsgXCIgMFwiO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBDYWNoZSAkdmFsdWUgdW5pdFxuICAgICAgJHVuaXQ6IGlmKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiLCB1bml0KCR2YWx1ZSksIGZhbHNlKTtcblxuICAgICAgQGlmICR1bml0ID09IHB4IHtcbiAgICAgICAgLy8gQ29udmVydCB0byByZW0gaWYgbmVlZGVkXG4gICAgICAgICR2YWw6ICR2YWwgKyBcIiBcIiArIGlmKCRyZnMtdW5pdCA9PSByZW0sICN7ZGl2aWRlKCR2YWx1ZSwgJHZhbHVlICogMCArICRyZnMtcmVtLXZhbHVlKX1yZW0sICR2YWx1ZSk7XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkdW5pdCA9PSByZW0ge1xuICAgICAgICAvLyBDb252ZXJ0IHRvIHB4IGlmIG5lZWRlZFxuICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyBpZigkcmZzLXVuaXQgPT0gcHgsICN7ZGl2aWRlKCR2YWx1ZSwgJHZhbHVlICogMCArIDEpICogJHJmcy1yZW0tdmFsdWV9cHgsICR2YWx1ZSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gSWYgJHZhbHVlIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICR2YWx1ZSBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gICAgICAgICR2YWw6ICR2YWwgKyBcIiBcIiArICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZW1vdmUgZmlyc3Qgc3BhY2VcbiAgQHJldHVybiB1bnF1b3RlKHN0ci1zbGljZSgkdmFsLCAyKSk7XG59XG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byBnZXQgdGhlIHJlc3BvbnNpdmUgdmFsdWUgY2FsY3VsYXRlZCBieSBSRlNcbkBmdW5jdGlvbiByZnMtZmx1aWQtdmFsdWUoJHZhbHVlcykge1xuICAvLyBDb252ZXJ0IHRvIGxpc3RcbiAgJHZhbHVlczogaWYodHlwZS1vZigkdmFsdWVzKSAhPSBsaXN0LCAoJHZhbHVlcywpLCAkdmFsdWVzKTtcblxuICAkdmFsOiBcIlwiO1xuXG4gIC8vIExvb3Agb3ZlciBlYWNoIHZhbHVlIGFuZCBjYWxjdWxhdGUgdmFsdWVcbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZXMge1xuICAgIEBpZiAkdmFsdWUgPT0gMCB7XG4gICAgICAkdmFsOiAkdmFsICsgXCIgMFwiO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQ2FjaGUgJHZhbHVlIHVuaXRcbiAgICAgICR1bml0OiBpZih0eXBlLW9mKCR2YWx1ZSkgPT0gXCJudW1iZXJcIiwgdW5pdCgkdmFsdWUpLCBmYWxzZSk7XG5cbiAgICAgIC8vIElmICR2YWx1ZSBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkdmFsdWUgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxuICAgICAgQGlmIG5vdCAkdW5pdCBvciAkdW5pdCAhPSBweCBhbmQgJHVuaXQgIT0gcmVtIHtcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgJHZhbHVlO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIFJlbW92ZSB1bml0IGZyb20gJHZhbHVlIGZvciBjYWxjdWxhdGlvbnNcbiAgICAgICAgJHZhbHVlOiBkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgaWYoJHVuaXQgPT0gcHgsIDEsIGRpdmlkZSgxLCAkcmZzLXJlbS12YWx1ZSkpKTtcblxuICAgICAgICAvLyBPbmx5IGFkZCB0aGUgbWVkaWEgcXVlcnkgaWYgdGhlIHZhbHVlIGlzIGdyZWF0ZXIgdGhhbiB0aGUgbWluaW11bSB2YWx1ZVxuICAgICAgICBAaWYgYWJzKCR2YWx1ZSkgPD0gJHJmcy1iYXNlLXZhbHVlIG9yIG5vdCAkZW5hYmxlLXJmcyB7XG4gICAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLCAkcmZzLXJlbS12YWx1ZSl9cmVtLCAjeyR2YWx1ZX1weCk7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIC8vIENhbGN1bGF0ZSB0aGUgbWluaW11bSB2YWx1ZVxuICAgICAgICAgICR2YWx1ZS1taW46ICRyZnMtYmFzZS12YWx1ZSArIGRpdmlkZShhYnMoJHZhbHVlKSAtICRyZnMtYmFzZS12YWx1ZSwgJHJmcy1mYWN0b3IpO1xuXG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIGRpZmZlcmVuY2UgYmV0d2VlbiAkdmFsdWUgYW5kIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgICAgJHZhbHVlLWRpZmY6IGFicygkdmFsdWUpIC0gJHZhbHVlLW1pbjtcblxuICAgICAgICAgIC8vIEJhc2UgdmFsdWUgZm9ybWF0dGluZ1xuICAgICAgICAgICRtaW4td2lkdGg6IGlmKCRyZnMtdW5pdCA9PSByZW0sICN7ZGl2aWRlKCR2YWx1ZS1taW4sICRyZnMtcmVtLXZhbHVlKX1yZW0sICN7JHZhbHVlLW1pbn1weCk7XG5cbiAgICAgICAgICAvLyBVc2UgbmVnYXRpdmUgdmFsdWUgaWYgbmVlZGVkXG4gICAgICAgICAgJG1pbi13aWR0aDogaWYoJHZhbHVlIDwgMCwgLSRtaW4td2lkdGgsICRtaW4td2lkdGgpO1xuXG4gICAgICAgICAgLy8gVXNlIGB2bWluYCBpZiB0d28tZGltZW5zaW9uYWwgaXMgZW5hYmxlZFxuICAgICAgICAgICR2YXJpYWJsZS11bml0OiBpZigkcmZzLXR3by1kaW1lbnNpb25hbCwgdm1pbiwgdncpO1xuXG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSB2YXJpYWJsZSB3aWR0aCBiZXR3ZWVuIDAgYW5kICRyZnMtYnJlYWtwb2ludFxuICAgICAgICAgICR2YXJpYWJsZS13aWR0aDogI3tkaXZpZGUoJHZhbHVlLWRpZmYgKiAxMDAsICRyZnMtYnJlYWtwb2ludCl9I3skdmFyaWFibGUtdW5pdH07XG5cbiAgICAgICAgICAvLyBSZXR1cm4gdGhlIGNhbGN1bGF0ZWQgdmFsdWVcbiAgICAgICAgICAkdmFsOiAkdmFsICsgXCIgY2FsYyhcIiArICRtaW4td2lkdGggKyBpZigkdmFsdWUgPCAwLCBcIiAtIFwiLCBcIiArIFwiKSArICR2YXJpYWJsZS13aWR0aCArIFwiKVwiO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVtb3ZlIGZpcnN0IHNwYWNlXG4gIEByZXR1cm4gdW5xdW90ZShzdHItc2xpY2UoJHZhbCwgMikpO1xufVxuXG4vLyBSRlMgbWl4aW5cbkBtaXhpbiByZnMoJHZhbHVlcywgJHByb3BlcnR5OiBmb250LXNpemUpIHtcbiAgQGlmICR2YWx1ZXMgIT0gbnVsbCB7XG4gICAgJHZhbDogcmZzLXZhbHVlKCR2YWx1ZXMpO1xuICAgICRmbHVpZC12YWw6IHJmcy1mbHVpZC12YWx1ZSgkdmFsdWVzKTtcblxuICAgIC8vIERvIG5vdCBwcmludCB0aGUgbWVkaWEgcXVlcnkgaWYgcmVzcG9uc2l2ZSAmIG5vbi1yZXNwb25zaXZlIHZhbHVlcyBhcmUgdGhlIHNhbWVcbiAgICBAaWYgJHZhbCA9PSAkZmx1aWQtdmFsIHtcbiAgICAgICN7JHByb3BlcnR5fTogJHZhbDtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgX3Jmcy1ydWxlICgpIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCAkdmFsLCAkZmx1aWQtdmFsKTtcblxuICAgICAgICAvLyBJbmNsdWRlIHNhZmFyaSBpZnJhbWUgcmVzaXplIGZpeCBpZiBuZWVkZWRcbiAgICAgICAgbWluLXdpZHRoOiBpZigkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgsICgwICogMXZ3KSwgbnVsbCk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnktcnVsZSAoKSB7XG4gICAgICAgICN7JHByb3BlcnR5fTogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgJGZsdWlkLXZhbCwgJHZhbCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFNob3J0aGFuZCBoZWxwZXIgbWl4aW5zXG5AbWl4aW4gZm9udC1zaXplKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlKTtcbn1cblxuQG1peGluIHBhZGRpbmcoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmcpO1xufVxuXG5AbWl4aW4gcGFkZGluZy10b3AoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmctdG9wKTtcbn1cblxuQG1peGluIHBhZGRpbmctcmlnaHQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmctcmlnaHQpO1xufVxuXG5AbWl4aW4gcGFkZGluZy1ib3R0b20oJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmctYm90dG9tKTtcbn1cblxuQG1peGluIHBhZGRpbmctbGVmdCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1sZWZ0KTtcbn1cblxuQG1peGluIG1hcmdpbigkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luKTtcbn1cblxuQG1peGluIG1hcmdpbi10b3AoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi10b3ApO1xufVxuXG5AbWl4aW4gbWFyZ2luLXJpZ2h0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tcmlnaHQpO1xufVxuXG5AbWl4aW4gbWFyZ2luLWJvdHRvbSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLWJvdHRvbSk7XG59XG5cbkBtaXhpbiBtYXJnaW4tbGVmdCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLWxlZnQpO1xufVxuIiwiLy8gPT09IEFic3RyYWN0c1xuLy8gPT0gU2ltcGxlXG4kYXNwLW92ZXJsYXktYmctY29sb3I6ICRwcmltYXJ5ICFkZWZhdWx0O1xuJGFzcC1vdmVybGF5LWJnLW9wYWNpdHk6IC4yNSAhZGVmYXVsdDtcbiRhc3Atb3ZlcmxheS1iZy1jb2xvci1yZ2I6IHJnYmEoJGFzcC1vdmVybGF5LWJnLWNvbG9yLCAkYXNwLW92ZXJsYXktYmctb3BhY2l0eSkgIWRlZmF1bHQ7XG4kYXNwLWJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXIgIWRlZmF1bHQ7XG5cbi8vID09PSBDU1MgY3VzdG9tIHByb3BlcnRpZXNcbjpyb290IHtcbiAgLy8gPT0gU2ltcGxlXG4gIC0tYXNwLW92ZXJsYXktYmctY29sb3ItcmdiOiAjeyRhc3Atb3ZlcmxheS1iZy1jb2xvci1yZ2J9O1xuICAtLWFzcC1iYWNrZ3JvdW5kLXBvc2l0aW9uOiAjeyRhc3AtYmFja2dyb3VuZC1wb3NpdGlvbn07XG59XG5cbi8vID09PSBQYXJhbGxheCBzdHlsZXNcbi8vID09PSBTaW1wbGVcbi5hbHBoYS1zaW1wbGUtcGFyYWxsYXgge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IHZhcigtLWFzcC1taW4taGVpZ2h0LCA0MDBweCk7XG5cbiAgJi5sYXp5bG9hZGVkIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1hc3AtYmFja2dyb3VuZC1pbWFnZSwgbm9uZSk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB2YXIoLS1hc3AtYmFja2dyb3VuZC1wb3NpdGlvbiwgY2VudGVyIGNlbnRlcik7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcblxuICAgICY6bm90KFtkYXRhLWdzYXAtcHJlc2V0PVwicGlubmVkXCJdKSB7XG4gICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICAgIH1cblxuICAgIC8vID09IGlPUyBzcGVjaWZpYyBydWxlc1xuICAgIEBpbmNsdWRlIG1lZGlhLWlvcyAoKSB7XG4gICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGluaXRpYWwgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBjb2xvciBvdmVybGF5XG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFzcC1vdmVybGF5LWJnLWNvbG9yLXJnYik7XG4gIH1cblxuICAmID4gKiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDA7XG4gIH1cbn1cbiIsIkBtaXhpbiBtZWRpYS1kZXNrdG9wKCkge1xuICBAbWVkaWEgKGhvdmVyOiBob3ZlcikgYW5kIChwb2ludGVyOiBmaW5lKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIG1lZGlhLWlvcygpIHtcbiAgQHN1cHBvcnRzICgtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2gpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLndhdGVybWFyayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAmLndhdGVybWFyay1yaWdodCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAtMTUlO1xuICAgIG9wYWNpdHk6IC4xO1xuICAgIHN2ZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgYm90dG9tOiAtMjUlO1xuICAgIH1cbiAgfVxuXG4gICYud2F0ZXJtYXJrLXBhcmFsbGF4IHtcbiAgICByaWdodDogMjMlO1xuICAgIGJvdHRvbTogLTIlO1xuICAgIG9wYWNpdHk6IC4zMjtcbiAgICBzdmcge1xuICAgICAgd2lkdGg6IDM1JTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgcmlnaHQ6IDE4JTtcbiAgICAgIGJvdHRvbTogLTclO1xuICAgICAgc3ZnIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuIiwiLmZlYXR1cmVkLWltYWdlIHtcbiAgcGljdHVyZTo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKDAsIDAsIDAsIDApIDAlLCByZ2JhKDAsIDAsIDAsIDApIDUwJSk7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgwLCAwLCAwLCAwKSAwJSwgcmdiYSgwLCAwLCAwLCAwKSA2MCUsIHJnYmEoMCwgMCwgMCwgLjY1KSAxMDAlKTtcbiAgICB9XG4gIH1cbiAgLmNvbnRlbnQtYWJvdmUge1xuICAgIEBtZWRpYSAob3JpZW50YXRpb246IGxhbmRzY2FwZSkgYW5kIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgICBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICB0b3A6IGluaGVyaXQ7XG4gICAgYm90dG9tOiAyJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cbn1cblxuLy9DbG91ZEZsYXJlIHZpZGVvXG5AbWVkaWEgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAucmF0aW8ge1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIGlmcmFtZSB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB3aWR0aDogY2FsYyh2YXIoLS1mZWF0dXJlZC1pbWFnZS1oZWlnaHQpIC8gLjUyMjUpO1xuICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiB2YXIoLS1mZWF0dXJlZC1pbWFnZS1oZWlnaHQpIC8gLjUyMjUgLyAyKTtcbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKGxnLCB4eGwpIHtcbiAgLnJhdGlvIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICBpZnJhbWUge1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgd2lkdGg6IGNhbGModmFyKC0tZmVhdHVyZWQtaW1hZ2UtaGVpZ2h0KSAvIC41MjI1KTtcbiAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogdmFyKC0tZmVhdHVyZWQtaW1hZ2UtaGVpZ2h0KSAvIC41MjI1IC8gMik7XG4gICAgfVxuICB9XG59XG5cbiIsIi5wYXJhbGxheC12aXNpdC11cyB7XG4gIC5hbHBoYS1zaW1wbGUtcGFyYWxsYXg6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgwLCAwLCAwLCAwKSAwJSwgcmdiYSgwLCAwLCAwLCAwKSA1MCUpO1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyNzBkZWcsIHJnYmEoMCwgMCwgMCwgMCkgMCUsIHJnYmEoMCwgMCwgMCwgMCkgNjAlLCByZ2JhKDAsIDAsIDAsIC42NSkgMTAwJSk7XG4gICAgfVxuICB9XG59XG5cbiIsIi5zbGljay10cmFjayB7XG4gIC5zbGljay1zbGlkZSB7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlO1xuICB9XG4gIC5zbGljay1zbGlkZTpub3QoLnNsaWNrLWN1cnJlbnQpIHtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKC45KTtcbiAgfVxufVxuIiwiQGltcG9ydCBcImNvbmZpZy9ncmlkLnlhbWxcIjtcclxuQGltcG9ydCBcImNvbmZpZy90ZW1wbGF0ZXMueWFtbFwiO1xyXG5AaW1wb3J0IFwiY29uZmlnL3RoZW1lLnlhbWxcIjtcclxuQGltcG9ydCBcImNvbmZpZy93b29jb21tZXJjZS55YW1sXCI7XHJcbkBpbXBvcnQgXCJ+QG5lbWF0aXMvd3AtYWxwaGEvYXNzZXRzL3Nhc3MvYWJzdHJhY3RzL3lhbWwtdmFyaWFibGVzXCI7XHJcbkBpbXBvcnQgXCJhc3NldHMvc2Fzcy9pbml0XCI7XG5AaW1wb3J0IFwiLi4vaW5pdFwiO1xuXG4vLyA9PT0gV1AgQUxQSEEgQVNTRVRTXG5AaW1wb3J0IFwifkBuZW1hdGlzL3dwLWFscGhhL2Fzc2V0cy9zYXNzL3BhZ2VzL2hvbWVcIjtcbkBpbXBvcnQgXCJ+QG5lbWF0aXMvd3AtYWxwaGEvYXNzZXRzL3Nhc3MvY29tcG9uZW50cy9wYXJhbGxheFwiO1xuXG4vLyA9PT0gQ09NUE9ORU5UU1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvdmVjdG9yLWJnXCI7XG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9mZWF0dXJlZC1pbWFnZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvbG9nb1wiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvcGFyYWxsYXhcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL3NsaWNrLWNhcm91c2VsXCI7XG5cbi5yZWluc3VyYW5jZS1jb250ZW50IHtcbiAgPiBkaXYge1xuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCB4eGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAaWYgbm90ICRuIHtcbiAgICBAZXJyb3IgXCJicmVha3BvaW50IGAjeyRuYW1lfWAgbm90IGZvdW5kIGluIGAjeyRicmVha3BvaW50c31gXCI7XG4gIH1cbiAgQHJldHVybiBpZigkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgcmVkdWNlZCBieSAwLjAycHggdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mXG4vLyBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KG1kLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIDc2Ny45OHB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWF4IGFuZCAkbWF4ID4gMCwgJG1heCAtIC4wMiwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW4gZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiAgYnJlYWtwb2ludC1tYXgoJG5leHQsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuZXh0LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkZGVza3RvcC1icmVha3BvaW50KSB7XG4gIC5sb2dvIHtcbiAgICBzdmcge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBlYXNlO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgyLjUpIHRyYW5zbGF0ZVkoMTAlKTtcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDA7XG4gICAgfVxuICB9XG5cbiAgLnBhZ2Utc2Nyb2xsZWQge1xuICAgIC5sb2dvIHtcbiAgICAgIHN2ZyB7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/